1 | "use strict";
|
2 | Object.defineProperty(exports, "__esModule", { value: true });
|
3 | var flags_1 = require("./flags");
|
4 | exports.flags = flags_1.flags;
|
5 | exports.option = flags_1.option;
|
6 | var help_1 = require("./help");
|
7 | exports.flagUsages = help_1.flagUsages;
|
8 | const deps_1 = require("./deps");
|
9 | function parse(options) {
|
10 | const input = {
|
11 | args: (options.args || []).map(a => deps_1.deps.args.newArg(a)),
|
12 | argv: options.argv || process.argv.slice(2),
|
13 | flags: Object.assign({ color: deps_1.deps.flags.defaultFlags.color }, (options.flags || {})),
|
14 | parseContext: options.parseContext || {},
|
15 | strict: options.strict !== false,
|
16 | };
|
17 | const parser = new deps_1.deps.parse.Parser(input);
|
18 | const output = parser.parse();
|
19 | deps_1.deps.validate.validate({ input, output });
|
20 | return output;
|
21 | }
|
22 | exports.parse = parse;
|