UNPKG

minimost

Version:

Like minimist but flags are converted to camelCase

27 lines (22 loc) 723 B
'use strict'; function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; } var minimist = _interopDefault(require('minimist')); const kebab2camel = (input) => { return input.replace(/([a-z])-([a-z])/g, (_, p1, p2) => { return p1 + p2.toUpperCase(); }); }; function index (argv, options) { const parsed = minimist(argv, Object.assign({ '--': true }, options)); const input = parsed._; delete parsed._; const flags = {}; // eslint-disable-next-line guard-for-in for (const key in parsed) { flags[kebab2camel(key)] = parsed[key]; } return { input, flags }; } module.exports = index;