{"_id":"argv-tools","_rev":"67515","name":"argv-tools","description":"Some useful tools for working with process.argv","dist-tags":{"latest":"0.1.2","next":"0.2.0-1"},"maintainers":[{"name":"75lb","email":"75pound@gmail.com"}],"time":{"modified":"2021-08-04T02:15:53.000Z","created":"2018-01-17T14:29:37.379Z","0.2.0-1":"2021-07-12T17:33:08.631Z","0.2.0-0":"2021-07-09T19:19:04.128Z","0.1.2":"2019-09-25T19:48:37.246Z","0.1.1":"2018-01-17T14:32:33.015Z","0.1.0":"2018-01-17T14:29:37.379Z"},"users":{},"author":{"name":"Lloyd Brookes","email":"75pound@gmail.com"},"repository":{"type":"git","url":"git+https://github.com/75lb/argv-tools.git"},"versions":{"0.2.0-1":{"name":"argv-tools","version":"0.2.0-1","description":"Some useful tools for working with process.argv","repository":{"type":"git","url":"git+https://github.com/75lb/argv-tools.git"},"author":{"name":"Lloyd Brookes","email":"75pound@gmail.com"},"license":"MIT","engines":{"node":">=14"},"exports":"./index.mjs","keywords":["argv","parse","argument","args","option","options","parser","parsing","cli","command","line"],"scripts":{"test":"test-runner test/*.mjs","docs":"jsdoc2md -c jsdoc.conf --template README.hbs index.mjs > README.md"},"devDependencies":{"jsdoc-to-markdown":"^7.0.1","test-runner":"^0.9.6"},"dependencies":{"array-back":"^6.1.2","find-replace":"^5.0.0"},"gitHead":"683ae4e153c6a766f17d8ff4d58bd3a587319c00","bugs":{"url":"https://github.com/75lb/argv-tools/issues"},"homepage":"https://github.com/75lb/argv-tools#readme","_id":"argv-tools@0.2.0-1","_nodeVersion":"16.4.1","_npmVersion":"7.19.1","dist":{"shasum":"4c3e4d9f084673cf06bcf758de597670d90bb08b","size":3649,"noattachment":false,"key":"/argv-tools/-/argv-tools-0.2.0-1.tgz","tarball":"http://registry.cnpm.dingdandao.com/argv-tools/download/argv-tools-0.2.0-1.tgz"},"_npmUser":{"name":"75lb","email":"75pound@gmail.com"},"directories":{},"maintainers":[{"name":"75lb","email":"75pound@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/argv-tools_0.2.0-1_1626111188476_0.3890775091102201"},"_hasShrinkwrap":false,"publish_time":1626111188631,"_cnpm_publish_time":1626111188631},"0.2.0-0":{"name":"argv-tools","version":"0.2.0-0","description":"Some useful tools for working with process.argv","repository":{"type":"git","url":"git+https://github.com/75lb/argv-tools.git"},"author":{"name":"Lloyd Brookes","email":"75pound@gmail.com"},"license":"MIT","engines":{"node":">=14"},"exports":"./index.mjs","keywords":["argv","parse","argument","args","option","options","parser","parsing","cli","command","line"],"scripts":{"test":"test-runner test/*.mjs","docs":"jsdoc2md -c jsdoc.conf --template README.hbs index.mjs > README.md"},"devDependencies":{"jsdoc-to-markdown":"^7.0.1","test-runner":"^0.9.6"},"dependencies":{"array-back":"^6.1.2","find-replace":"^5.0.0"},"readmeFilename":"README.md","gitHead":"9da6f23b1170fd7b3edf0dc9ce7b97bc7d07af6c","bugs":{"url":"https://github.com/75lb/argv-tools/issues"},"homepage":"https://github.com/75lb/argv-tools#readme","_id":"argv-tools@0.2.0-0","_nodeVersion":"16.4.1","_npmVersion":"7.19.1","dist":{"shasum":"439cdf559b4d189b617005ae5d1c19d9c1286018","size":3496,"noattachment":false,"key":"/argv-tools/-/argv-tools-0.2.0-0.tgz","tarball":"http://registry.cnpm.dingdandao.com/argv-tools/download/argv-tools-0.2.0-0.tgz"},"_npmUser":{"name":"75lb","email":"75pound@gmail.com"},"directories":{},"maintainers":[{"name":"75lb","email":"75pound@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/argv-tools_0.2.0-0_1625858343980_0.651246493317273"},"_hasShrinkwrap":false,"publish_time":1625858344128,"_cnpm_publish_time":1625858344128},"0.1.2":{"name":"argv-tools","version":"0.1.2","description":"Some useful tools for working with process.argv","repository":{"type":"git","url":"git+https://github.com/75lb/argv-tools.git"},"scripts":{"test":"test-runner test.js","docs":"jsdoc2md --template README.hbs index.js > README.md"},"keywords":["argv","parse","argument","args","option","options","parser","parsing","cli","command","line"],"author":{"name":"Lloyd Brookes","email":"75pound@gmail.com"},"license":"MIT","engines":{"node":">=4.0.0"},"devDependencies":{"jsdoc-to-markdown":"^5.0.1","test-runner":"^0.5.0-1"},"dependencies":{"array-back":"^2.0.0","find-replace":"^2.0.1"},"gitHead":"fff851d9cffaabc634c2add537797e9787d8214f","bugs":{"url":"https://github.com/75lb/argv-tools/issues"},"homepage":"https://github.com/75lb/argv-tools#readme","_id":"argv-tools@0.1.2","_nodeVersion":"12.10.0","_npmVersion":"6.11.3","dist":{"shasum":"fc4918a70775b8cc5f8296fa0cfea137bd8a8229","size":3303,"noattachment":false,"key":"/argv-tools/-/argv-tools-0.1.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/argv-tools/download/argv-tools-0.1.2.tgz"},"maintainers":[{"name":"75lb","email":"75pound@gmail.com"}],"_npmUser":{"name":"75lb","email":"75pound@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/argv-tools_0.1.2_1569440916263_0.021162705737223675"},"_hasShrinkwrap":false,"publish_time":1569440917246,"_cnpm_publish_time":1569440917246},"0.1.1":{"name":"argv-tools","version":"0.1.1","description":"[![view on npm](https://img.shields.io/npm/v/argv-tools.svg)](https://www.npmjs.org/package/argv-tools) [![npm module downloads](https://img.shields.io/npm/dt/argv-tools.svg)](https://www.npmjs.org/package/argv-tools) [![Build Status](https://travis-ci.or","repository":{"type":"git","url":"git+https://github.com/75lb/argv-tools.git"},"scripts":{"test":"test-runner test.js","docs":"jsdoc2md --template README.hbs index.js > README.md"},"keywords":["argv","parse","argument","args","option","options","parser","parsing","cli","command","line"],"author":{"name":"Lloyd Brookes","email":"75pound@gmail.com"},"license":"MIT","engines":{"node":">=4.0.0"},"devDependencies":{"jsdoc-to-markdown":"^3.0.3","test-runner":"^0.5.0-1"},"dependencies":{"array-back":"^2.0.0","find-replace":"^2.0.1"},"gitHead":"624e9249623003a1cadb4cbecd2c428366039e80","bugs":{"url":"https://github.com/75lb/argv-tools/issues"},"homepage":"https://github.com/75lb/argv-tools#readme","_id":"argv-tools@0.1.1","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"75lb","email":"75pound@gmail.com"},"dist":{"shasum":"588283f3393ada47141440b12981cd41bf6b7032","size":3817,"noattachment":false,"key":"/argv-tools/-/argv-tools-0.1.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/argv-tools/download/argv-tools-0.1.1.tgz"},"maintainers":[{"name":"75lb","email":"75pound@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/argv-tools-0.1.1.tgz_1516199552961_0.5143477127421647"},"directories":{},"publish_time":1516199553015,"_cnpm_publish_time":1516199553015,"_hasShrinkwrap":false},"0.1.0":{"name":"argv-tools","version":"0.1.0","description":"[![view on npm](https://img.shields.io/npm/v/argv-tools.svg)](https://www.npmjs.org/package/argv-tools) [![npm module downloads](https://img.shields.io/npm/dt/argv-tools.svg)](https://www.npmjs.org/package/argv-tools) [![Build Status](https://travis-ci.or","repository":{"type":"git","url":"git+https://github.com/75lb/argv-tools.git"},"scripts":{"test":"test-runner test.js","docs":"jsdoc2md --template README.hbs index.js > README.md"},"keywords":["argv","parse","argument","args","option","options","parser","parsing","cli","command","line"],"author":{"name":"Lloyd Brookes","email":"75pound@gmail.com"},"license":"MIT","engines":{"node":">=4.0.0"},"devDependencies":{"jsdoc-to-markdown":"^3.0.3","test-runner":"^0.5.0-1"},"dependencies":{"array-back":"^2.0.0"},"gitHead":"9c6aa20770b2020abe51733e71dfa63a07901103","bugs":{"url":"https://github.com/75lb/argv-tools/issues"},"homepage":"https://github.com/75lb/argv-tools#readme","_id":"argv-tools@0.1.0","_npmVersion":"5.6.0","_nodeVersion":"9.4.0","_npmUser":{"name":"75lb","email":"75pound@gmail.com"},"dist":{"shasum":"18271a8e9f2a0997f0a862a3ffbcc60b9527e774","size":3809,"noattachment":false,"key":"/argv-tools/-/argv-tools-0.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/argv-tools/download/argv-tools-0.1.0.tgz"},"maintainers":[{"name":"75lb","email":"75pound@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/argv-tools-0.1.0.tgz_1516199377292_0.3037738644052297"},"directories":{},"publish_time":1516199377379,"_cnpm_publish_time":1516199377379,"_hasShrinkwrap":false}},"readme":"[![view on npm](https://badgen.net/npm/v/argv-tools)](https://www.npmjs.org/package/argv-tools)\n[![npm module downloads](https://badgen.net/npm/dt/argv-tools)](https://www.npmjs.org/package/argv-tools)\n[![Gihub repo dependents](https://badgen.net/github/dependents-repo/75lb/argv-tools)](https://github.com/75lb/argv-tools/network/dependents?dependent_type=REPOSITORY)\n[![Gihub package dependents](https://badgen.net/github/dependents-pkg/75lb/argv-tools)](https://github.com/75lb/argv-tools/network/dependents?dependent_type=PACKAGE)\n[![Node.js CI](https://github.com/75lb/argv-tools/actions/workflows/node.js.yml/badge.svg)](https://github.com/75lb/argv-tools/actions/workflows/node.js.yml)\n[![js-standard-style](https://img.shields.io/badge/code%20style-standard-brightgreen.svg)](https://github.com/feross/standard)\n\n<a name=\"module_argv-tools\"></a>\n\n## argv-tools\nSome useful tools for working with `process.argv`.\n\n**Example**  \n```js\nconst argvTools = require('argv-tools')\n```\n\n* [argv-tools](#module_argv-tools)\n    * [.ArgvArray](#module_argv-tools.ArgvArray)\n        * [.load(argv)](#module_argv-tools.ArgvArray+load)\n        * [.clear()](#module_argv-tools.ArgvArray+clear)\n        * [.expandOptionEqualsNotation()](#module_argv-tools.ArgvArray+expandOptionEqualsNotation)\n        * [.expandGetoptNotation()](#module_argv-tools.ArgvArray+expandGetoptNotation)\n        * [.hasCombinedShortOptions()](#module_argv-tools.ArgvArray+hasCombinedShortOptions) ⇒ <code>boolean</code>\n        * [.extractFlags()](#module_argv-tools.ArgvArray+extractFlags)\n        * [.extractOptionValues()](#module_argv-tools.ArgvArray+extractOptionValues)\n    * [.re](#module_argv-tools.re)\n    * [.expandCombinedShortArg(arg)](#module_argv-tools.expandCombinedShortArg) ⇒ <code>Array.&lt;string&gt;</code>\n    * [.isOptionEqualsNotation(arg)](#module_argv-tools.isOptionEqualsNotation) ⇒ <code>boolean</code>\n    * [.isOption(arg)](#module_argv-tools.isOption) ⇒ <code>boolean</code>\n    * [.isLongOption(arg)](#module_argv-tools.isLongOption) ⇒ <code>boolean</code>\n    * [.getOptionName(arg)](#module_argv-tools.getOptionName) ⇒ <code>string</code>\n\n<a name=\"module_argv-tools.ArgvArray\"></a>\n\n### argvTools.ArgvArray\nArray subclass encapsulating common operations on `process.argv`.\n\n**Kind**: static class of [<code>argv-tools</code>](#module_argv-tools)  \n\n* [.ArgvArray](#module_argv-tools.ArgvArray)\n    * [.load(argv)](#module_argv-tools.ArgvArray+load)\n    * [.clear()](#module_argv-tools.ArgvArray+clear)\n    * [.expandOptionEqualsNotation()](#module_argv-tools.ArgvArray+expandOptionEqualsNotation)\n    * [.expandGetoptNotation()](#module_argv-tools.ArgvArray+expandGetoptNotation)\n    * [.hasCombinedShortOptions()](#module_argv-tools.ArgvArray+hasCombinedShortOptions) ⇒ <code>boolean</code>\n    * [.extractFlags()](#module_argv-tools.ArgvArray+extractFlags)\n    * [.extractOptionValues()](#module_argv-tools.ArgvArray+extractOptionValues)\n\n<a name=\"module_argv-tools.ArgvArray+load\"></a>\n\n#### argvArray.load(argv)\nClears the array has loads the supplied input.\n\n**Kind**: instance method of [<code>ArgvArray</code>](#module_argv-tools.ArgvArray)  \n\n| Param | Type | Description |\n| --- | --- | --- |\n| argv | <code>Array.&lt;string&gt;</code> | The argv list to load. Defaults to `process.argv`. |\n\n<a name=\"module_argv-tools.ArgvArray+clear\"></a>\n\n#### argvArray.clear()\nClear the array.\n\n**Kind**: instance method of [<code>ArgvArray</code>](#module_argv-tools.ArgvArray)  \n<a name=\"module_argv-tools.ArgvArray+expandOptionEqualsNotation\"></a>\n\n#### argvArray.expandOptionEqualsNotation()\nexpand ``--option=value` style args.\n\n**Kind**: instance method of [<code>ArgvArray</code>](#module_argv-tools.ArgvArray)  \n<a name=\"module_argv-tools.ArgvArray+expandGetoptNotation\"></a>\n\n#### argvArray.expandGetoptNotation()\nexpand getopt-style combinedShort options.\n\n**Kind**: instance method of [<code>ArgvArray</code>](#module_argv-tools.ArgvArray)  \n<a name=\"module_argv-tools.ArgvArray+hasCombinedShortOptions\"></a>\n\n#### argvArray.hasCombinedShortOptions() ⇒ <code>boolean</code>\nReturns true if the array contains combined short options (e.g. `-ab`).\n\n**Kind**: instance method of [<code>ArgvArray</code>](#module_argv-tools.ArgvArray)  \n<a name=\"module_argv-tools.ArgvArray+extractFlags\"></a>\n\n#### argvArray.extractFlags()\nExtract flags\n\n**Kind**: instance method of [<code>ArgvArray</code>](#module_argv-tools.ArgvArray)  \n<a name=\"module_argv-tools.ArgvArray+extractOptionValues\"></a>\n\n#### argvArray.extractOptionValues()\nExtract option values\n\n**Kind**: instance method of [<code>ArgvArray</code>](#module_argv-tools.ArgvArray)  \n<a name=\"module_argv-tools.re\"></a>\n\n### argvTools.re\nRegular expressions for matching option formats.\n\n**Kind**: static constant of [<code>argv-tools</code>](#module_argv-tools)  \n<a name=\"module_argv-tools.expandCombinedShortArg\"></a>\n\n### argvTools.expandCombinedShortArg(arg) ⇒ <code>Array.&lt;string&gt;</code>\nExpand a combined short option.\n\n**Kind**: static method of [<code>argv-tools</code>](#module_argv-tools)  \n\n| Param | Type | Description |\n| --- | --- | --- |\n| arg | <code>string</code> | the string to expand, e.g. `-ab` |\n\n<a name=\"module_argv-tools.isOptionEqualsNotation\"></a>\n\n### argvTools.isOptionEqualsNotation(arg) ⇒ <code>boolean</code>\nReturns true if the supplied arg matches `--option=value` notation.\n\n**Kind**: static method of [<code>argv-tools</code>](#module_argv-tools)  \n\n| Param | Type | Description |\n| --- | --- | --- |\n| arg | <code>string</code> | the arg to test, e.g. `--one=something` |\n\n<a name=\"module_argv-tools.isOption\"></a>\n\n### argvTools.isOption(arg) ⇒ <code>boolean</code>\nReturns true if the supplied arg is in either long (`--one`) or short (`-o`) format.\n\n**Kind**: static method of [<code>argv-tools</code>](#module_argv-tools)  \n\n| Param | Type | Description |\n| --- | --- | --- |\n| arg | <code>string</code> | the arg to test, e.g. `--one` |\n\n<a name=\"module_argv-tools.isLongOption\"></a>\n\n### argvTools.isLongOption(arg) ⇒ <code>boolean</code>\nReturns true if the supplied arg is in long (`--one`) format.\n\n**Kind**: static method of [<code>argv-tools</code>](#module_argv-tools)  \n\n| Param | Type | Description |\n| --- | --- | --- |\n| arg | <code>string</code> | the arg to test, e.g. `--one` |\n\n<a name=\"module_argv-tools.getOptionName\"></a>\n\n### argvTools.getOptionName(arg) ⇒ <code>string</code>\nReturns the name from a long, short or `--options=value` arg.\n\n**Kind**: static method of [<code>argv-tools</code>](#module_argv-tools)  \n\n| Param | Type | Description |\n| --- | --- | --- |\n| arg | <code>string</code> | the arg to inspect, e.g. `--one` |\n\n\n* * *\n\n&copy; 2018-21 Lloyd Brookes \\<75pound@gmail.com\\>. Documented by [jsdoc-to-markdown](https://github.com/75lb/jsdoc-to-markdown).\n","_attachments":{},"homepage":"https://github.com/75lb/argv-tools#readme","bugs":{"url":"https://github.com/75lb/argv-tools/issues"},"license":"MIT"}