Security News
tea.xyz Spam Plagues npm and RubyGems Package Registries
Tea.xyz, a crypto project aimed at rewarding open source contributions, is once again facing backlash due to an influx of spam packages flooding public package registries.
cli-argv-util
Advanced tools
Readme
<img src=https://centerkey.com/graphics/center-key-logo.svg align=right width=200 alt=logo>
Simple utility to parse command line parameters and flags (arguments vector)
cli-argv-util is called from your bin/cli.js
file in order to read user
supplied information on the command line and return the flags and parameters
in an easy-to-use structure.
Install package for node:
$ npm install cli-argv-util
Place the following code in your bin/cli.js file
import { cliArgvUtil } from 'cli-argv-util';
const validFlags = ['cd', 'find', 'no-summary'];
const cli = cliArgvUtil.parse(validFlags);
if (cli.invalidFlag)
throw Error(cli.invalidFlagMsg);
if (cli.flagOn.find)
console.log('You set the --find CLI flag to:', cli.flagMap.find);
if (cli.flagOn.noSummary)
console.log('You enabled the --no-summary CLI option.');
console.log('You supplied', cli.params.length , 'CLI parameter(s).');
For a real world example, see: cli.js
If your CLI tool is named my-program
and a user runs it like:
$ my-program about.html --cd=src --no-summary 'Hello World' 777
the resulting cli
object will be:
{
flagMap: {
cd: 'src',
},
flagOn: {
cd: true,
find: false,
noSummary: true,
},
invalidFlag: null,
invalidFlagMsg: null,
params: ['about.html', 'Hello World', '777'],
}
Note: Single quotes in commands are normalized so they work cross-platform and avoid the errors often encountered on Microsoft Windows.
The cliArgvUtil.parse()
returns an object of type Result
:
export type StringFlagMap = { [flag: string]: string | undefined };
export type BooleanFlagMap = { [flag: string]: boolean };
export type Result = {
flagMap: StringFlagMap, //map of flag values for each user supplied flag
flagOn: BooleanFlagMap, //map of the enabled status for all valid flags
invalidFlag: string | null, //name of the first invalid flag
invalidFlagMsg: string | null, //error message for the invalid flag
params: string[], //array of parameter values supplied by the user
};
See the TypeScript Declarations at the top of cli-argv-util.ts for documentation.
CLI Build Tools for package.json
Feel free to submit questions at:
github.com/center-key/cli-argv-util/issues
FAQs
Simple utility to parse command line parameters and flags (arguments vector)
The npm package cli-argv-util receives a total of 2,150 weekly downloads. As such, cli-argv-util popularity was classified as popular.
We found that cli-argv-util demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Tea.xyz, a crypto project aimed at rewarding open source contributions, is once again facing backlash due to an influx of spam packages flooding public package registries.
Security News
As cyber threats become more autonomous, AI-powered defenses are crucial for businesses to stay ahead of attackers who can exploit software vulnerabilities at scale.
Security News
UnitedHealth Group disclosed that the ransomware attack on Change Healthcare compromised protected health information for millions in the U.S., with estimated costs to the company expected to reach $1 billion.