forked from codeisneverodd/programmers-coding-test
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathrename.js
22 lines (20 loc) · 789 Bytes
/
rename.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
import fetchTitleLink from './fetch.js';
import fs from 'fs';
const renameFileNamesWithID = lessons => {
const possibleLevels = [1, 2, 3, 4, 5];
possibleLevels.forEach(level => {
const files = fs.readdirSync(`level-${level}`);
Object.entries(lessons).forEach(([title, link]) => {
const id = link.split('/').at(-1);
const oldFileName = title.split(' ').join('-') + '.js';
const newFileName = `${title.split(' ').join('-')}&${id}&.js`;
if (files.includes(oldFileName) && !files.includes(newFileName)) {
fs.renameSync(`level-${level}/${oldFileName}`, `level-${level}/${newFileName}`, err => {
console.log(err);
});
}
});
});
};
const titleLinkObject = await fetchTitleLink();
renameFileNamesWithID(titleLinkObject);