UNPKG

@uvarovag/argv-parser

Version:

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

25 lines (24 loc) 631 B
export 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); } } }; export const parseArgv = (argv) => { const [node, script, ...rest] = argv; const args = Object.fromEntries(rest.map((arg) => { const [key, ...rest] = arg.split('='); return [key.replace(/^-+/, ''), getArgVal(rest.join('='))]; })); return { node, script, ...args }; };