-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathforge
More file actions
executable file
·31 lines (28 loc) · 1.19 KB
/
forge
File metadata and controls
executable file
·31 lines (28 loc) · 1.19 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#! /usr/bin/env node
const { program } = require('commander')
var fs = require("fs");
program
.command('controleur')
.description('Génère un nouveau controleur')
.requiredOption('-n, --name <value>', 'nom du controleur')
.option('-v, --vue', 'bool, génère la vue si présent')
.action(controleur)
program.parse();
function controleur(options) {
console.log(options)
if (!fs.existsSync(`./src/views/${options.name}.pug`) && !fs.existsSync(`./src/controller/routes/${options.name}Controller.ts`)) {
if(options.vue) {
fs.writeFile(`./src/views/${options.name}.pug`, `p ${options.name}`, function (err) {
if (err) throw err;
});
}
fs.readFile('./forge_templ/controllerTemplate', function(err, data) {
fs.writeFile(`./src/controller/routes/${options.name}Controller.ts`, data.toString().replace("%%controllerName%%", `${options.name}Controller`).replace("%%viewName%%", options.name), function (err) {
if (err) throw err;
});
});
console.log("\t\t\tInfo : \tContoleur créer")
}else{
console.log("\t\t\tInfo : \tErreur les fichiers existe déjà.")
}
}