UNPKG

baset-cli

Version:

CLI for BaseT project.

51 lines 2.07 kB
"use strict"; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; const baset_core_1 = require("baset-core"); const glob_promise_1 = __importDefault(require("glob-promise")); function complementArray(arrayA, arrayB) { arrayA.forEach(match => { const index = arrayB.indexOf(match); if (index > -1) { arrayB.splice(index, 1); } }); } const scaffoldCommand = { command: ['scaffold'], aliases: ['s'], describe: 'Scaffolding new spec', builder: { files: { alias: 'f', type: 'string', describe: 'Glob pattern for project files', default: '**/*.js', }, specs: { alias: 's', type: 'string', describe: 'Glob pattern for spec files', default: '**/*.spec.js', }, }, handler: (argv) => __awaiter(this, void 0, void 0, function* () { const files = yield glob_promise_1.default(argv.files); const specs = yield glob_promise_1.default(argv.specs); complementArray(specs, files); const scaffolder = new baset_core_1.Scaffolder(); const results = yield Promise.all(scaffolder.scaffold(files)); results.forEach(result => result && console.log(`Spec "${result}" is scaffolded`)); }), }; module.exports = scaffoldCommand; //# sourceMappingURL=scaffold.js.map