Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 1fa92ea

Browse files
feat: 리드미 파일명 변경 및 api 프로퍼티 추가
1 parent 435580f commit 1fa92ea

File tree

2 files changed

+15
-23
lines changed

2 files changed

+15
-23
lines changed

‎utils/api.js

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import fs from 'fs';
22
import { splitCodeToSolutions } from './format.js';
33

4-
export const getSolutions = () => {
4+
export const generateAPI = () => {
55
try {
66
const api = [1, 2, 3, 4, 5].flatMap(level =>
77
fs
@@ -10,7 +10,14 @@ export const getSolutions = () => {
1010
.map(file => {
1111
const [name, id, extension] = file.split('&');
1212
const code = splitCodeToSolutions(fs.readFileSync(`level-${level}/${file}`, 'utf-8'));
13-
return { id, name: name.replaceAll('-', ' '), level, code: code[0] + code[1] };
13+
return {
14+
id,
15+
name: name.replaceAll('-', ' '),
16+
fileName: file,
17+
level,
18+
code: code[0] + code[1],
19+
link: `https://school.programmers.co.kr/learn/courses/30/lessons/${id}`,
20+
};
1421
})
1522
);
1623
fs.writeFileSync('api.json', JSON.stringify(api));

‎utils/string.js

Lines changed: 6 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import * as fs from 'fs';
22
import path from 'path';
3-
import { getSolutions } from './api.js';
3+
import { generateAPI } from './api.js';
44
import fetchTitleLink from './fetch.js';
55

66
const __dirname = path.resolve();
@@ -39,31 +39,16 @@ function getTitle(fileName) {
3939
}
4040

4141
export function getInfoList(levelNumber) {
42-
const files = getSolutions();
43-
return files
44-
.filter(v => v.level === levelNumber)
45-
.map(({ name, level, id }) => ({
46-
title: name,
47-
link: `https://school.programmers.co.kr/learn/courses/30/lessons/${id}`,
48-
fileName: name,
49-
levelNumber: level,
50-
}));
51-
const levelDir = path.resolve(__dirname, `./level-${levelNumber}`);
52-
const fileNameList = getFileNameList(levelDir);
53-
const infoList = fileNameList.map(fileName => {
54-
const title = getTitle(fileName);
55-
const link = 'https://school.programmers.co.kr/' + titleLinkObject[title];
56-
return { title, link, fileName, levelNumber };
57-
});
58-
return infoList;
42+
const files = generateAPI();
43+
return files.filter(v => v.level === levelNumber);
5944
}
6045

6146
function makeReadmeStr(infoItem, index) {
62-
const { title, link, fileName, levelNumber } = infoItem;
63-
const codeLink = `https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-${levelNumber}/${fileName
47+
const { name, link, fileName, level } = infoItem;
48+
const codeLink = `https://github.com/codeisneverodd/programmers-coding-test/blob/main/level-${level}/${fileName
6449
.split(' ')
6550
.join('-')}`;
66-
return `| ${index + 1} | [${title}](${link}) | [${fileName}](${codeLink}) |`;
51+
return `| ${index + 1} | [${name}](${link}) | [${name}.js](${codeLink}) |`;
6752
}
6853

6954
export function getTableStr(levelNumber) {

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /