react-generate-comp
Version:
Generate React components in current execute directory by typing with CLI.
48 lines (47 loc) • 1.86 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
const commander_1 = require("commander");
const useStateGenUtilis_1 = require("./utilis/useStateGenUtilis");
const utili_1 = require("./utilis/utili");
const promptSelect_1 = require("./utilis/promptGen/promptSelect");
const initTemplate_1 = require("./utilis/initTemplate/initTemplate");
const program = new commander_1.Command();
program
.name('react-generate-comp')
.description('CLI to create react related items with best practices.')
.version('2.0.0');
program
.option('-j, --javascript', 'Output with javascript format')
.option('-n, --native', 'Output with React Native format')
.option('-c, --components [name...]', 'Generate components')
.option('-u, --useState <name>', 'Generate useState')
.option('-i, --init', 'Init pages or folders for react projects');
(() => {
program.parse(process.argv);
const options = program.opts();
const isJavascript = options.hasOwnProperty('javascript') && options.javascript;
const isNative = options.native;
const compNameList = options.components;
const useStateName = options.useState;
const init = options.initTemplate;
if (!!compNameList && !!useStateName) {
return;
}
if (!!init) {
(0, initTemplate_1.initTemplate)();
return;
}
if (!!compNameList && Array.isArray(compNameList)) {
for (let compName of compNameList) {
const newCompName = compName.trim();
(0, utili_1.generateFunctionComp)(!isJavascript, "Comp", newCompName, isNative);
}
return;
}
if (!!useStateName) {
(0, useStateGenUtilis_1.useStateGen)(useStateName);
return;
}
(0, promptSelect_1.activePromptOptions)();
})();
;