UNPKG

ray-flags

Version:

An easy command line flags handeling library for ray-userland software.

1 lines 480 B
const flagRegex=/^-[a-z]/i;let oargv=Object.assign([],process.argv);oargv.shift(),oargv.shift(),oargv.push(null);let iargv=oargv;iargv.forEach((a,g,e)=>{flagRegex.test(a)&&flagRegex.test(e[g+1])&&iargv.splice(g+1,0,!0)}),iargv=iargv.map(a=>null===a||a);const argv={flags:{},keys:iargv.filter(a=>flagRegex.test(a)),values:iargv.filter(a=>!flagRegex.test(a))};argv.keys=argv.keys.map(a=>a.slice(1)),argv.keys.forEach((a,g)=>{argv.flags[a]=argv.values[g]}),module.exports=argv.flags;