conventional-changelog-action/node_modules/dargs
Conventional Changelog Action bf7e9cbfcd chore(release): v3.1.1 2020-07-13 17:58:28 +00:00
..
index.js chore(release): v3.1.1 2020-07-13 17:58:28 +00:00
license chore(release): v3.1.1 2020-07-13 17:58:28 +00:00
package.json chore(release): v3.1.1 2020-07-13 17:58:28 +00:00
readme.md chore(release): v3.1.1 2020-07-13 17:58:28 +00:00

readme.md

dargs Build Status

Reverse minimist. Convert an object of options into an array of command-line arguments.

Useful when spawning command-line tools.

Install

$ npm install --save dargs

Usage

const dargs = require('dargs');

const input = {
	_: ['some', 'option'],          // values in '_' will be appended to the end of the generated argument list
	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(input, {excludes: excludes}));
/*
[
	'--foo=bar',
	'--hello',
	'--no-cake',
	'--camel-case=5',
	'--multiple=value',
	'--multiple=value2',
	'some',
	'option'
]
*/

console.log(dargs(input, {
	excludes: excludes,
	includes: includes
}));
/*
[
	'--camel-case=5',
	'--multiple=value',
	'--multiple=value2'
]
*/


console.log(dargs(input, {includes: includes}));
/*
[
	'--camel-case=5',
	'--multiple=value',
	'--multiple=value2',
	'--pie-kind=cherry',
	'--sad=:('
]
*/


console.log(dargs({
	foo: 'bar',
	hello: true,
	file: 'baz'
}, {
	aliases: aliases
}));
/*
[
	'--foo=bar',
	'--hello',
	'-f baz'
]
*/

API

dargs(input, [options])

input

Type: object

Object to convert to command-line arguments.

options

Type: object

excludes

Type: array

Keys or regex of keys to exclude. Takes precedence over includes.

includes

Type: array

Keys or regex of keys to include.

aliases

Type: object

Maps keys in input to an aliased name. Matching keys are converted to options with a single dash ("-") in front of the aliased name and a space separating the aliased name from the value. Keys are still affected by includes and excludes.

useEquals

Type: boolean
Default: true

Setting to false switches the separator in generated commands from an equals sign = to a single space . For example:

console.log(dargs({foo: 'bar'}, {useEquals: false}));
/*
[
    '--foo bar'
]
*/
ignoreFalse

Type: boolean
Default: false

Don't include false values. This is mostly useful when dealing with strict argument parsers that would throw on unknown arguments like --no-foo.

License

MIT © Sindre Sorhus