@cuba-platform/front-generator
Version:
CUBA Platform front-end clients generator
47 lines • 1.67 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
function extractAvailableOptions(optionsConfig) {
if (!optionsConfig) {
return [];
}
return Object.keys(optionsConfig).map(optionFullName => {
const { type, alias, description } = optionsConfig[optionFullName];
const pattern = `-${alias}, --${optionFullName}${type === String ? ` [${optionFullName}]` : ''}`;
return { pattern, description };
});
}
exports.extractAvailableOptions = extractAvailableOptions;
function pickOptions(cmd, availableOptions) {
const passedOptions = {};
if (availableOptions) {
Object.keys(availableOptions).forEach(optionFullName => {
if (cmd.hasOwnProperty(optionFullName)) {
passedOptions[optionFullName] = cmd[optionFullName];
}
});
}
return passedOptions;
}
exports.pickOptions = pickOptions;
exports.commonGenerationOptionsConfig = {
dest: {
alias: 'd',
description: 'destination directory',
type: String
},
model: {
alias: 'm',
description: 'specify path to project model, if given no interactive prompt will be invoked',
type: String
}
};
exports.polymerElementOptionsConfig = Object.assign({}, exports.commonGenerationOptionsConfig, { dirShift: {
alias: 'ds',
description: 'directory shift for html imports e.g ../../',
type: String
}, answers: {
alias: 'a',
description: 'fulfilled params for generator to avoid interactive input in serialized JSON string',
type: String
} });
//# sourceMappingURL=cli-options.js.map