Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- (async function(){
- const prompt = require('prompt');
- const fs = require('fs');
- const path = require('path');
- const { promisify } = require('util');
- const write = promisify(fs.writeFile);
- const mkdir = promisify(fs.mkdir);
- function setup(){
- const schema = {
- properties: {
- module_name: {
- default: 'newModule'
- },
- }
- }
- const SRC_PATH = path.join(__dirname, './../../src');
- console.log('Veuillez renseigner le nom du module :');
- prompt.start();
- prompt.get(schema, async (err, result) => {
- let name = result.module_name;
- const validationSchema = {
- properties: {
- confirm: {
- pattern: /^[On]/,
- description: "Êtes vous sure ? (O/n)",
- default: "O",
- message: "Désolé, je n'ai pas compris. Êtes vous sure ? (O/n)",
- }
- }
- }
- prompt.start();
- prompt.get(validationSchema, async (arr, result) => {
- if (result.confirm === "O"){
- await mkdir(path.join(SRC_PATH, `${name}`));
- await mkdir(path.join(SRC_PATH, `${name}/js`));
- await write(path.join(SRC_PATH, `${name}/js/index.js`), '// Script JS');
- await mkdir(path.join(SRC_PATH, `${name}/sass`));
- await write(path.join(SRC_PATH, `${name}/sass/index.sass`), '// Imports des fichiers sass');
- await write(path.join(SRC_PATH, `${name}.js`), '// Entry Point Webpack');
- console.log(`
- Le module ${name} à était généré avec succés avec :\n
- - Un fichier ${name}.js à sa racine qui est l'entry point pour webpack,\n
- - Un dossier sass avec un index.sass pour les imports des feuilles de style,\n
- - Un dossier js avec un index.js pour éditer votre premier script (vous pouvez renommer ce fichier)
- `);
- } else {
- setup();
- }
- })
- });
- }
- setup();
- })()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement