dargs-fork
v1.0.0
Published
Patch for the [dargs][] package, that adds support for single flags. Convert an object of options into an array of command-line arguments.
Downloads
23
Readme
dargs-fork
Patch for the dargs package, that adds support for single flags. Convert an object of options into an array of command-line arguments.
See readme of dargs!
That's just a fork with patch for single flag support, sindresorhus/dargs#32 - PRs there are welcome, so if you want create one and please ping me. :)
Install
Install with npm
$ npm i dargs-fork --save
Usage
For more use-cases see the tests
const dargs = require('dargs-fork')
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}))
/*
[
'--foo=bar',
'--hello',
'--no-cake',
'--camel-case=5',
'--multiple=value',
'--multiple=value2',
'some',
'option'
]
*/
console.log(dargs(input, {excludes, includes}))
/*
[
'--camel-case=5',
'--multiple=value',
'--multiple=value2'
]
*/
console.log(dargs(input, {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'
]
*/
Related
- dargs: Reverse minimist. Convert an object of options into an array of command-line… more | homepage
- gitclone-cli: Simple command line interface for the
git clone
command, using gitclone and… more | homepage - gitclone: Powerful and flexible programmatic interface for the
git clone
command, using [gitclone-defaults… more | homepage - minibase: MiniBase is minimalist approach to Base - @node-base, the awesome framework. Foundation… more | homepage
- unzy: Minimalist, extremely pluggable, programmatic Git interface for node.js, built on MiniBase. | homepage
Contributing
Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.
But before doing anything, please read the CONTRIBUTING.md guidelines.