Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

file-gen-demo

upendrivio9ISC1.0.0

Generate predefined module’s files with the help of command line. Same as yoman generator. (generating Modules, generating Controller, generating Routes, Generating Views etc).

readme

README

File Generator

Objective: Generate predefined module’s files with the help of command line. Same as yoman generator. (generating Modules, generating Controller, generating Routes, Generating Views etc).

Workflow:

  1. Prepare self executable file.
  2. Get command line parameters to proceed with that.
  3. Copy predefined Template
  4. Replace custom tags with user’s provided params and some predefined tags.
    1. Get the files in a array
    2. Open each file
    3. Read each file
    4. Find and replace the custom tags
    5. Save each file

Node modules used

  • Fsnode
  • Fs-extra
  • Path
  • Glob-all
  • Async
  • Readline (To get user inputs)

Commands to be executed

  1. $ node gen <module_name> <options_if_any>

Options

========================================================================

Project Documentation

Filegen.js - shouldCopy()

FileGen.prototype.shouldCopy = function(cb) {
     if(fs.existsSync(this.moduleName)){
         console.log(this.moduleName+' is already exists.');
         readline.question('Do you want to overwrite it ?? (Y / N):', function(answer){
             readline.close();
             answer = answer.toLowerCase();
             var yes = ['y','yes'];
             if(yes.indexOf(answer)!== -1){
                 return cb(true);
             } else {
                 return cb(false);
             }
         });
     } else{
         readline.close();
         return cb(true);
     }
};

This function search for the existence of given Module name. then :

  • If module is not exists then it returns true as callback
  • If module exists then it informs to the user and ask for overwrite
    • if user replies with yes then it returns true as callback
    • if user replies with no (any thing else, except - 'y', 'yes', 'Y', 'YES') then it returns false as callback

fs.existsSync() - fs.existsSync() does not use a callback.

Readline -

readline.question(question, function(answer){
    console.log(`Thank you for your valuable feedback: ${answer}`);
    rl.close(); 
})

It prints a question to console to reply from user.

============================================================

copy

*