UNPKG

@gmjs/cli-wrapper

Version:
44 lines (43 loc) 1.3 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.processCli = void 0; const parse_1 = require("../parse"); const merge_cli_options_1 = require("./merge-cli-options"); function processCli(description, config, args) { const parseResult = (0, parse_1.parse)(args, config); if (!parseResult.success) { return { type: 'error', message: parseResult.message, options: {}, }; } if (parseResult.options.some((o) => o.name === 'version')) { return { type: 'completed', message: `Version ${config.meta.version}`, options: {}, }; } if (parseResult.options.some((o) => o.name === 'help')) { return { type: 'completed', message: description, options: {}, }; } const mergeResult = (0, merge_cli_options_1.mergeCliOptions)(config.options, parseResult.options); if (!mergeResult.success) { return { type: 'error', message: mergeResult.message, options: {}, }; } return { type: 'execute', message: undefined, options: Object.fromEntries(mergeResult.nameOptionPairs), }; } exports.processCli = processCli;