Replace generator-exercise with plop generator

This commit is contained in:
Eric Olkowski
2024-02-18 12:44:48 -05:00
parent 461c852f98
commit d063f5403e
22 changed files with 1906 additions and 5850 deletions
+30
View File
@@ -0,0 +1,30 @@
const { readdir } = require("fs/promises");
function splitDirectoryName(directoryName) {
return {
exerciseNumber: directoryName.match(/\d+/),
exerciseName: directoryName.match(/[a-z]+/i),
};
}
async function getLatestExerciseDirectory() {
try {
const files = await readdir("./");
return files.findLast((file) => /^\d+_\w+$/.test(file));
} catch (err) {
console.error(err);
}
}
async function createExerciseDirectoryName(directoryName) {
const latestExerciseDirectory = await getLatestExerciseDirectory();
const latestExerciseNumber = parseInt(latestExerciseDirectory.match(/^\d+/));
if (latestExerciseDirectory === `${latestExerciseNumber}_${directoryName}`) {
throw new Error(`Exercise already exists with name "${directoryName}"`);
}
return `${latestExerciseNumber + 1}_${directoryName}`;
}
module.exports = { createExerciseDirectoryName, splitDirectoryName };