@cuba-platform/front-generator
Version:
CUBA Platform front-end clients generator
32 lines • 1.34 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const init_1 = require("./init");
const list_1 = require("./list");
const cli_options_1 = require("./common/cli-options");
const program = require('commander');
program.version(require('../package').version, '-v, --version')
.usage('[command] [options]');
const clients = init_1.collectClients();
program
.command('list')
.description('List all available clients and their clients')
.option('-s, --save [saveTo]', 'Save information about clients ')
.action((cmd) => list_1.exportList(clients, cmd));
clients.forEach(client => {
client.generators.forEach(function (generator) {
const generationCommand = program
.command(`${client.name}:${generator.name}`)
.description(`Generates ${client.name} ${generator.name}`);
cli_options_1.extractAvailableOptions(generator.options).forEach(({ pattern, description }) => {
generationCommand.option(pattern, description);
});
generationCommand.action(function (cmd) {
return init_1.generate(client.name, generator.name, cli_options_1.pickOptions(cmd, generator.options));
});
});
});
program.parse(process.argv);
if (!process.argv.slice(2).length) {
program.outputHelp();
}
//# sourceMappingURL=cli.js.map