Repository URL to install this package:
|
Version:
0.6.0 ▾
|
| .. |
| index.d.ts |
| index.js |
| license |
| package.json |
| readme.md |
Reverse
minimist. Convert an object of options into an array of command-line arguments.
Useful when spawning command-line tools.
$ npm install dargs
const dargs = require('dargs'); const object = { _: ['some', 'option'], // Values in '_' will be appended to the end of the generated argument list '--': ['separated', 'option'], // Values in '--' will be put at the very end of the argument list after the escape option (`--`) foo: 'bar', hello: true, // Results in only the key being used cake: false, // Prepends `no-` before the key camelCase: 5, // CamelCase is slugged to `camel-case` multiple: ['value', 'value2'], // Converted to multiple arguments pieKind: 'cherry', sad: ':(' }; const excludes = ['sad', /.*Kind$/]; // Excludes and includes accept regular expressions const includes = ['camelCase', 'multiple', 'sad', /^pie.*/]; const aliases = {file: 'f'}; console.log(dargs(object, {excludes})); /* [ '--foo=bar', '--hello', '--no-cake', '--camel-case=5', '--multiple=value', '--multiple=value2', 'some', 'option', '--', 'separated', 'option' ] */ console.log(dargs(object, {excludes, includes})); /* [ '--camel-case=5', '--multiple=value', '--multiple=value2' ] */ console.log(dargs(object, {includes})); /* [ '--camel-case=5', '--multiple=value', '--multiple=value2', '--pie-kind=cherry', '--sad=:(' ] */ console.log(dargs({ foo: 'bar', hello: true, file: 'baz' }, {aliases})); /* [ '--foo=bar', '--hello', '-f', 'baz' ] */
Type: object
Object to convert to command-line arguments.
Type: object
Type: Array<string | RegExp>
Keys or regex of keys to exclude. Takes precedence over includes.
Type: Array<string | RegExp>
Keys or regex of keys to include.
Type: object
Maps keys in object to an aliased name. Matching keys are converted to arguments with a single dash (-) in front of the aliased key and the value in a separate array item. Keys are still affected by includes and excludes.
Type: boolean
Default: true
Setting this to false makes it return the key and value as separate array items instead of using a = separator in one item. This can be useful for tools that doesn't support --foo=bar style flags.
const dargs = require('dargs'); console.log(dargs({foo: 'bar'}, {useEquals: false})); /* [ '--foo', 'bar' ] */
Type: boolean
Default: true
Make a single character option key {a: true} become a short flag -a instead of --a.
const dargs = require('dargs'); console.log(dargs({a: true})); //=> ['-a'] console.log(dargs({a: true}, {shortFlag: false})); //=> ['--a']
Type: boolean
Default: false
Exclude false values. Can be useful when dealing with strict argument parsers that throw on unknown arguments like --no-foo.
Type: boolean
Default: false
By default, camel-cased keys will be hyphenated. Enabling this will bypass the conversion process.
const dargs = require('dargs'); console.log(dargs({fooBar: 'baz'})); //=> ['--foo-bar', 'baz'] console.log(dargs({fooBar: 'baz'}, {allowCamelCase: true})); //=> ['--fooBar', 'baz']