1 | "use strict";
|
2 | Object.defineProperty(exports, "__esModule", { value: true });
|
3 | const Parser = require("@anycli/parser");
|
4 | function build(defaults) {
|
5 | return Parser.flags.build(defaults);
|
6 | }
|
7 | exports.build = build;
|
8 | function option(options) {
|
9 | return build(options)();
|
10 | }
|
11 | exports.option = option;
|
12 | const _enum = (opts) => {
|
13 | return build(Object.assign({ parse(input) {
|
14 | if (!opts.options.includes(input))
|
15 | throw new Error(`Expected --${this.name}=${input} to be one of: ${opts.options.join(', ')}`);
|
16 | return input;
|
17 | }, helpValue: `(${opts.options.join('|')})` }, opts, { optionType: 'enum' }))();
|
18 | };
|
19 | exports.enum = _enum;
|
20 | const stringFlag = build({});
|
21 | exports.string = stringFlag;
|
22 | var flags_1 = require("@anycli/parser/lib/flags");
|
23 | exports.boolean = flags_1.boolean;
|
24 | exports.version = (opts = {}) => {
|
25 | return Parser.flags.boolean(Object.assign({
|
26 |
|
27 | description: 'show CLI version' }, opts, { parse: (_, cmd) => {
|
28 | cmd.log(cmd.config.userAgent);
|
29 | cmd.exit(0);
|
30 | } }));
|
31 | };
|
32 | exports.help = (opts = {}) => {
|
33 | return Parser.flags.boolean(Object.assign({
|
34 |
|
35 | description: 'show CLI help' }, opts, { parse: (_, cmd) => {
|
36 | const HHelp = require('@anycli/plugin-help').default;
|
37 | const help = new HHelp(cmd.config);
|
38 | help.showHelp(cmd.argv);
|
39 | cmd.exit(0);
|
40 | } }));
|
41 | };
|