UNPKG

a2r

Version:
45 lines (44 loc) 1.63 kB
#!/usr/bin/env node "use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const command_line_args_1 = __importDefault(require("command-line-args")); const command_line_commands_1 = __importDefault(require("command-line-commands")); const getVersion_1 = __importDefault(require("./getVersion")); const commandLine_1 = require("./commandLine"); const commands_1 = require("./commands"); const run = async () => { const helpCommand = commands_1.commandsMap.get('help'); let parsedArgs; try { parsedArgs = (0, command_line_commands_1.default)(Array.from(commands_1.commandsMap.keys()), process.argv.slice(2)); } catch (error) { if (error.name === 'INVALID_COMMAND') { await helpCommand.run({ commandName: error.command, options: {}, argv: [], }); return; } throw error; } const commandName = parsedArgs.command; const { argv } = parsedArgs; const command = commands_1.commandsMap.get(commandName); const commandDefinitions = (0, commandLine_1.mergeArguments)([command.args, commandLine_1.globalArguments]); const options = (0, command_line_args_1.default)(commandDefinitions, { argv, partial: true }); const info = { commandName, argv, options, }; if (command.name !== 'update') { await (0, getVersion_1.default)(true); } await command.run(info); }; run();