diff --git a/lib/node_modules/@stdlib/cli/parse-args/lib/index.js b/lib/node_modules/@stdlib/cli/parse-args/lib/index.js new file mode 100644 index 000000000000..b8e32a56af1c --- /dev/null +++ b/lib/node_modules/@stdlib/cli/parse-args/lib/index.js @@ -0,0 +1 @@ +// trigger skipped CI checks diff --git a/lib/node_modules/@stdlib/cli/parse-args/lib/main.js b/lib/node_modules/@stdlib/cli/parse-args/lib/main.js new file mode 100644 index 000000000000..a379b1658bb1 --- /dev/null +++ b/lib/node_modules/@stdlib/cli/parse-args/lib/main.js @@ -0,0 +1,44 @@ +'use strict'; + +function parseArgs(args, opts) { + var result = { + _: [] + }; + + var i = 0; + + while (i < args.length) { + var arg = args[i]; + + if (arg.startsWith('--') && arg.includes('=')) { + var parts = arg.slice(2).split('='); + result[parts[0]] = parts[1]; + + } else if (arg.startsWith('--')) { + var key = arg.slice(2); + var next = args[i + 1]; + + if (next && !next.startsWith('-')) { + result[key] = next; + i++; + } else { + result[key] = true; + } + + } else if (arg.startsWith('-')) { + var flags = arg.slice(1).split(''); + for (var j = 0; j < flags.length; j++) { + result[flags[j]] = true; + } + + } else { + result._.push(arg); + } + + i++; + } + + return result; +} + +module.exports = parseArgs; \ No newline at end of file diff --git a/lib/node_modules/@stdlib/cli/parse-args/package.json b/lib/node_modules/@stdlib/cli/parse-args/package.json new file mode 100644 index 000000000000..650fffe05d1a --- /dev/null +++ b/lib/node_modules/@stdlib/cli/parse-args/package.json @@ -0,0 +1 @@ +{"name":"@stdlib/cli/parse-args","version":"0.0.1","main":"lib/main.js"}