UNPKG

@uvarovag/argv-parser

Version:

Node.js arguments parser with full support for TypeScript, CommonJS, and ES Modules

30 lines (29 loc) 817 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.parseArgv = exports.getArgVal = void 0; const getArgVal = (val) => { switch (val) { case '': { return true; } case 'true': { return true; } case 'false': { return false; } default: { return Number.isNaN(Number(val)) ? val : Number(val); } } }; exports.getArgVal = getArgVal; const parseArgv = (argv) => { const [node, script, ...rest] = argv; const args = Object.fromEntries(rest.map((arg) => { const [key, ...rest] = arg.split('='); return [key.replace(/^-+/, ''), (0, exports.getArgVal)(rest.join('='))]; })); return { node, script, ...args }; }; exports.parseArgv = parseArgv;