@boneskull/bargs 1.0.0 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +305 -299
- package/dist/bargs.cjs +464 -142
- package/dist/bargs.cjs.map +1 -1
- package/dist/bargs.d.cts +35 -17
- package/dist/bargs.d.cts.map +1 -1
- package/dist/bargs.d.ts +35 -17
- package/dist/bargs.d.ts.map +1 -1
- package/dist/bargs.js +462 -142
- package/dist/bargs.js.map +1 -1
- package/dist/help.cjs +1 -2
- package/dist/help.cjs.map +1 -1
- package/dist/help.d.cts +20 -3
- package/dist/help.d.cts.map +1 -1
- package/dist/help.d.ts +20 -3
- package/dist/help.d.ts.map +1 -1
- package/dist/help.js +1 -2
- package/dist/help.js.map +1 -1
- package/dist/index.cjs +27 -31
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +15 -78
- package/dist/index.d.cts.map +1 -1
- package/dist/index.d.ts +15 -78
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +20 -30
- package/dist/index.js.map +1 -1
- package/dist/opt.cjs +147 -80
- package/dist/opt.cjs.map +1 -1
- package/dist/opt.d.cts +88 -77
- package/dist/opt.d.cts.map +1 -1
- package/dist/opt.d.ts +88 -77
- package/dist/opt.d.ts.map +1 -1
- package/dist/opt.js +146 -79
- package/dist/opt.js.map +1 -1
- package/dist/parser.cjs +3 -230
- package/dist/parser.cjs.map +1 -1
- package/dist/parser.d.cts +3 -51
- package/dist/parser.d.cts.map +1 -1
- package/dist/parser.d.ts +3 -51
- package/dist/parser.d.ts.map +1 -1
- package/dist/parser.js +2 -223
- package/dist/parser.js.map +1 -1
- package/dist/types.cjs +1 -3
- package/dist/types.cjs.map +1 -1
- package/dist/types.d.cts +110 -122
- package/dist/types.d.cts.map +1 -1
- package/dist/types.d.ts +110 -122
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +1 -3
- package/dist/types.js.map +1 -1
- package/package.json +2 -2
- package/dist/validate.cjs +0 -463
- package/dist/validate.cjs.map +0 -1
- package/dist/validate.d.cts +0 -28
- package/dist/validate.d.cts.map +0 -1
- package/dist/validate.d.ts +0 -28
- package/dist/validate.d.ts.map +0 -1
- package/dist/validate.js +0 -459
- package/dist/validate.js.map +0 -1
package/dist/parser.d.cts
CHANGED
|
@@ -6,48 +6,10 @@
|
|
|
6
6
|
* - Building `parseArgs` configuration from bargs option schemas
|
|
7
7
|
* - Coercing parsed string values to their declared types (number, enum, etc.)
|
|
8
8
|
* - Processing positional arguments including variadic rest args
|
|
9
|
-
* - Running handler functions (sync or async) after successful parsing
|
|
10
|
-
* - Supporting both simple CLIs and command-based CLIs with subcommand dispatch
|
|
11
9
|
*
|
|
12
10
|
* @packageDocumentation
|
|
13
11
|
*/
|
|
14
|
-
import type {
|
|
15
|
-
/**
|
|
16
|
-
* Run a handler synchronously. Throws if handler returns a thenable.
|
|
17
|
-
*/
|
|
18
|
-
export declare const runSyncHandler: <T>(handler: HandlerFn<T>, result: T) => void;
|
|
19
|
-
/**
|
|
20
|
-
* Run a handler (async).
|
|
21
|
-
*/
|
|
22
|
-
export declare const runHandler: <T>(handler: HandlerFn<T>, result: T) => Promise<void>;
|
|
23
|
-
/**
|
|
24
|
-
* Run transforms synchronously when transforms are defined.
|
|
25
|
-
*/
|
|
26
|
-
export declare function runSyncTransforms<TValuesIn, TValuesOut, TPositionalsIn extends readonly unknown[], TPositionalsOut extends readonly unknown[]>(transforms: TransformsConfig<TValuesIn, TValuesOut, TPositionalsIn, TPositionalsOut>, values: TValuesIn, positionals: TPositionalsIn): {
|
|
27
|
-
positionals: TPositionalsOut;
|
|
28
|
-
values: TValuesOut;
|
|
29
|
-
};
|
|
30
|
-
/**
|
|
31
|
-
* Pass through unchanged when transforms are undefined.
|
|
32
|
-
*/
|
|
33
|
-
export declare function runSyncTransforms<TValues, TPositionals extends readonly unknown[]>(transforms: undefined, values: TValues, positionals: TPositionals): {
|
|
34
|
-
positionals: TPositionals;
|
|
35
|
-
values: TValues;
|
|
36
|
-
};
|
|
37
|
-
/**
|
|
38
|
-
* Run transforms asynchronously when transforms are defined.
|
|
39
|
-
*/
|
|
40
|
-
export declare function runTransforms<TValuesIn, TValuesOut, TPositionalsIn extends readonly unknown[], TPositionalsOut extends readonly unknown[]>(transforms: TransformsConfig<TValuesIn, TValuesOut, TPositionalsIn, TPositionalsOut>, values: TValuesIn, positionals: TPositionalsIn): Promise<{
|
|
41
|
-
positionals: TPositionalsOut;
|
|
42
|
-
values: TValuesOut;
|
|
43
|
-
}>;
|
|
44
|
-
/**
|
|
45
|
-
* Pass through unchanged when transforms are undefined.
|
|
46
|
-
*/
|
|
47
|
-
export declare function runTransforms<TValues, TPositionals extends readonly unknown[]>(transforms: undefined, values: TValues, positionals: TPositionals): Promise<{
|
|
48
|
-
positionals: TPositionals;
|
|
49
|
-
values: TValues;
|
|
50
|
-
}>;
|
|
12
|
+
import type { InferOptions, InferPositionals, OptionsSchema, ParseResult, PositionalsSchema } from "./types.cjs";
|
|
51
13
|
/**
|
|
52
14
|
* Options for parseSimple.
|
|
53
15
|
*/
|
|
@@ -57,18 +19,8 @@ interface ParseSimpleOptions<TOptions extends OptionsSchema = OptionsSchema, TPo
|
|
|
57
19
|
positionals?: TPositionals;
|
|
58
20
|
}
|
|
59
21
|
/**
|
|
60
|
-
* Parse arguments for a simple CLI (no commands).
|
|
61
|
-
* parses, does not run handlers.
|
|
62
|
-
*/
|
|
63
|
-
export declare const parseSimple: <TOptions extends OptionsSchema = OptionsSchema, TPositionals extends PositionalsSchema = PositionalsSchema>(config: ParseSimpleOptions<TOptions, TPositionals>) => BargsResult<InferOptions<TOptions>, InferPositionals<TPositionals>, undefined>;
|
|
64
|
-
/**
|
|
65
|
-
* Parse arguments for a command-based CLI (sync). Throws if any handler or
|
|
66
|
-
* transform returns a thenable.
|
|
67
|
-
*/
|
|
68
|
-
export declare const parseCommandsSync: <TOptions extends OptionsSchema = OptionsSchema, TCommands extends Record<string, CommandConfigInput> = Record<string, CommandConfigInput>>(config: BargsConfigWithCommands<TOptions, TCommands>) => BargsResult<InferOptions<TOptions>, readonly unknown[], string | undefined>;
|
|
69
|
-
/**
|
|
70
|
-
* Parse arguments for a command-based CLI (async).
|
|
22
|
+
* Parse arguments for a simple CLI (no commands).
|
|
71
23
|
*/
|
|
72
|
-
export declare const
|
|
24
|
+
export declare const parseSimple: <TOptions extends OptionsSchema = OptionsSchema, TPositionals extends PositionalsSchema = PositionalsSchema>(config: ParseSimpleOptions<TOptions, TPositionals>) => ParseResult<InferOptions<TOptions>, InferPositionals<TPositionals>>;
|
|
73
25
|
export {};
|
|
74
26
|
//# sourceMappingURL=parser.d.ts.map
|
package/dist/parser.d.cts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAIH,OAAO,KAAK,EACV,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACb,WAAW,EACX,iBAAiB,EAClB,oBAAmB;AAsJpB;;GAEG;AACH,UAAU,kBAAkB,CAC1B,QAAQ,SAAS,aAAa,GAAG,aAAa,EAC9C,YAAY,SAAS,iBAAiB,GAAG,iBAAiB;IAE1D,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,OAAO,CAAC,EAAE,QAAQ,CAAC;IACnB,WAAW,CAAC,EAAE,YAAY,CAAC;CAC5B;AAED;;GAEG;AACH,eAAO,MAAM,WAAW,GACtB,QAAQ,SAAS,aAAa,GAAG,aAAa,EAC9C,YAAY,SAAS,iBAAiB,GAAG,iBAAiB,EAE1D,QAAQ,kBAAkB,CAAC,QAAQ,EAAE,YAAY,CAAC,KACjD,WAAW,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,gBAAgB,CAAC,YAAY,CAAC,CA0BpE,CAAC"}
|
package/dist/parser.d.ts
CHANGED
|
@@ -6,48 +6,10 @@
|
|
|
6
6
|
* - Building `parseArgs` configuration from bargs option schemas
|
|
7
7
|
* - Coercing parsed string values to their declared types (number, enum, etc.)
|
|
8
8
|
* - Processing positional arguments including variadic rest args
|
|
9
|
-
* - Running handler functions (sync or async) after successful parsing
|
|
10
|
-
* - Supporting both simple CLIs and command-based CLIs with subcommand dispatch
|
|
11
9
|
*
|
|
12
10
|
* @packageDocumentation
|
|
13
11
|
*/
|
|
14
|
-
import type {
|
|
15
|
-
/**
|
|
16
|
-
* Run a handler synchronously. Throws if handler returns a thenable.
|
|
17
|
-
*/
|
|
18
|
-
export declare const runSyncHandler: <T>(handler: HandlerFn<T>, result: T) => void;
|
|
19
|
-
/**
|
|
20
|
-
* Run a handler (async).
|
|
21
|
-
*/
|
|
22
|
-
export declare const runHandler: <T>(handler: HandlerFn<T>, result: T) => Promise<void>;
|
|
23
|
-
/**
|
|
24
|
-
* Run transforms synchronously when transforms are defined.
|
|
25
|
-
*/
|
|
26
|
-
export declare function runSyncTransforms<TValuesIn, TValuesOut, TPositionalsIn extends readonly unknown[], TPositionalsOut extends readonly unknown[]>(transforms: TransformsConfig<TValuesIn, TValuesOut, TPositionalsIn, TPositionalsOut>, values: TValuesIn, positionals: TPositionalsIn): {
|
|
27
|
-
positionals: TPositionalsOut;
|
|
28
|
-
values: TValuesOut;
|
|
29
|
-
};
|
|
30
|
-
/**
|
|
31
|
-
* Pass through unchanged when transforms are undefined.
|
|
32
|
-
*/
|
|
33
|
-
export declare function runSyncTransforms<TValues, TPositionals extends readonly unknown[]>(transforms: undefined, values: TValues, positionals: TPositionals): {
|
|
34
|
-
positionals: TPositionals;
|
|
35
|
-
values: TValues;
|
|
36
|
-
};
|
|
37
|
-
/**
|
|
38
|
-
* Run transforms asynchronously when transforms are defined.
|
|
39
|
-
*/
|
|
40
|
-
export declare function runTransforms<TValuesIn, TValuesOut, TPositionalsIn extends readonly unknown[], TPositionalsOut extends readonly unknown[]>(transforms: TransformsConfig<TValuesIn, TValuesOut, TPositionalsIn, TPositionalsOut>, values: TValuesIn, positionals: TPositionalsIn): Promise<{
|
|
41
|
-
positionals: TPositionalsOut;
|
|
42
|
-
values: TValuesOut;
|
|
43
|
-
}>;
|
|
44
|
-
/**
|
|
45
|
-
* Pass through unchanged when transforms are undefined.
|
|
46
|
-
*/
|
|
47
|
-
export declare function runTransforms<TValues, TPositionals extends readonly unknown[]>(transforms: undefined, values: TValues, positionals: TPositionals): Promise<{
|
|
48
|
-
positionals: TPositionals;
|
|
49
|
-
values: TValues;
|
|
50
|
-
}>;
|
|
12
|
+
import type { InferOptions, InferPositionals, OptionsSchema, ParseResult, PositionalsSchema } from "./types.js";
|
|
51
13
|
/**
|
|
52
14
|
* Options for parseSimple.
|
|
53
15
|
*/
|
|
@@ -57,18 +19,8 @@ interface ParseSimpleOptions<TOptions extends OptionsSchema = OptionsSchema, TPo
|
|
|
57
19
|
positionals?: TPositionals;
|
|
58
20
|
}
|
|
59
21
|
/**
|
|
60
|
-
* Parse arguments for a simple CLI (no commands).
|
|
61
|
-
* parses, does not run handlers.
|
|
62
|
-
*/
|
|
63
|
-
export declare const parseSimple: <TOptions extends OptionsSchema = OptionsSchema, TPositionals extends PositionalsSchema = PositionalsSchema>(config: ParseSimpleOptions<TOptions, TPositionals>) => BargsResult<InferOptions<TOptions>, InferPositionals<TPositionals>, undefined>;
|
|
64
|
-
/**
|
|
65
|
-
* Parse arguments for a command-based CLI (sync). Throws if any handler or
|
|
66
|
-
* transform returns a thenable.
|
|
67
|
-
*/
|
|
68
|
-
export declare const parseCommandsSync: <TOptions extends OptionsSchema = OptionsSchema, TCommands extends Record<string, CommandConfigInput> = Record<string, CommandConfigInput>>(config: BargsConfigWithCommands<TOptions, TCommands>) => BargsResult<InferOptions<TOptions>, readonly unknown[], string | undefined>;
|
|
69
|
-
/**
|
|
70
|
-
* Parse arguments for a command-based CLI (async).
|
|
22
|
+
* Parse arguments for a simple CLI (no commands).
|
|
71
23
|
*/
|
|
72
|
-
export declare const
|
|
24
|
+
export declare const parseSimple: <TOptions extends OptionsSchema = OptionsSchema, TPositionals extends PositionalsSchema = PositionalsSchema>(config: ParseSimpleOptions<TOptions, TPositionals>) => ParseResult<InferOptions<TOptions>, InferPositionals<TPositionals>>;
|
|
73
25
|
export {};
|
|
74
26
|
//# sourceMappingURL=parser.d.ts.map
|
package/dist/parser.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAIH,OAAO,KAAK,EACV,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACb,WAAW,EACX,iBAAiB,EAClB,mBAAmB;AAsJpB;;GAEG;AACH,UAAU,kBAAkB,CAC1B,QAAQ,SAAS,aAAa,GAAG,aAAa,EAC9C,YAAY,SAAS,iBAAiB,GAAG,iBAAiB;IAE1D,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,OAAO,CAAC,EAAE,QAAQ,CAAC;IACnB,WAAW,CAAC,EAAE,YAAY,CAAC;CAC5B;AAED;;GAEG;AACH,eAAO,MAAM,WAAW,GACtB,QAAQ,SAAS,aAAa,GAAG,aAAa,EAC9C,YAAY,SAAS,iBAAiB,GAAG,iBAAiB,EAE1D,QAAQ,kBAAkB,CAAC,QAAQ,EAAE,YAAY,CAAC,KACjD,WAAW,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,gBAAgB,CAAC,YAAY,CAAC,CA0BpE,CAAC"}
|
package/dist/parser.js
CHANGED
|
@@ -6,87 +6,10 @@
|
|
|
6
6
|
* - Building `parseArgs` configuration from bargs option schemas
|
|
7
7
|
* - Coercing parsed string values to their declared types (number, enum, etc.)
|
|
8
8
|
* - Processing positional arguments including variadic rest args
|
|
9
|
-
* - Running handler functions (sync or async) after successful parsing
|
|
10
|
-
* - Supporting both simple CLIs and command-based CLIs with subcommand dispatch
|
|
11
9
|
*
|
|
12
10
|
* @packageDocumentation
|
|
13
11
|
*/
|
|
14
12
|
import { parseArgs } from 'node:util';
|
|
15
|
-
import { BargsError, HelpError } from "./errors.js";
|
|
16
|
-
/**
|
|
17
|
-
* Check if a value is a thenable (Promise-like). Uses duck-typing for
|
|
18
|
-
* cross-realm compatibility.
|
|
19
|
-
*/
|
|
20
|
-
const isThenable = (value) => value !== null &&
|
|
21
|
-
typeof value === 'object' &&
|
|
22
|
-
typeof value.then === 'function';
|
|
23
|
-
/**
|
|
24
|
-
* Run a handler synchronously. Throws if handler returns a thenable.
|
|
25
|
-
*/
|
|
26
|
-
export const runSyncHandler = (handler, result) => {
|
|
27
|
-
const maybePromise = handler(result);
|
|
28
|
-
if (isThenable(maybePromise)) {
|
|
29
|
-
throw new BargsError('Handler returned a thenable. Use bargsAsync() for async handlers.');
|
|
30
|
-
}
|
|
31
|
-
};
|
|
32
|
-
/**
|
|
33
|
-
* Run a handler (async).
|
|
34
|
-
*/
|
|
35
|
-
export const runHandler = async (handler, result) => {
|
|
36
|
-
await handler(result);
|
|
37
|
-
};
|
|
38
|
-
/**
|
|
39
|
-
* Run transforms synchronously. Throws if any transform returns a thenable.
|
|
40
|
-
*/
|
|
41
|
-
export function runSyncTransforms(transforms, values, positionals) {
|
|
42
|
-
if (!transforms) {
|
|
43
|
-
return { positionals, values };
|
|
44
|
-
}
|
|
45
|
-
// Apply values transform
|
|
46
|
-
const transformedValues = transforms.values
|
|
47
|
-
? (() => {
|
|
48
|
-
const result = transforms.values(values);
|
|
49
|
-
if (isThenable(result)) {
|
|
50
|
-
throw new BargsError('Transform returned a thenable. Use bargsAsync() for async transforms.');
|
|
51
|
-
}
|
|
52
|
-
return result;
|
|
53
|
-
})()
|
|
54
|
-
: values;
|
|
55
|
-
// Apply positionals transform
|
|
56
|
-
const transformedPositionals = transforms.positionals
|
|
57
|
-
? (() => {
|
|
58
|
-
const result = transforms.positionals(positionals);
|
|
59
|
-
if (isThenable(result)) {
|
|
60
|
-
throw new BargsError('Transform returned a thenable. Use bargsAsync() for async transforms.');
|
|
61
|
-
}
|
|
62
|
-
return result;
|
|
63
|
-
})()
|
|
64
|
-
: positionals;
|
|
65
|
-
return {
|
|
66
|
-
positionals: transformedPositionals,
|
|
67
|
-
values: transformedValues,
|
|
68
|
-
};
|
|
69
|
-
}
|
|
70
|
-
/**
|
|
71
|
-
* Run transforms asynchronously.
|
|
72
|
-
*/
|
|
73
|
-
export async function runTransforms(transforms, values, positionals) {
|
|
74
|
-
if (!transforms) {
|
|
75
|
-
return { positionals, values };
|
|
76
|
-
}
|
|
77
|
-
// Apply values transform (await if needed)
|
|
78
|
-
const transformedValues = transforms.values
|
|
79
|
-
? await transforms.values(values)
|
|
80
|
-
: values;
|
|
81
|
-
// Apply positionals transform (await if needed)
|
|
82
|
-
const transformedPositionals = transforms.positionals
|
|
83
|
-
? await transforms.positionals(positionals)
|
|
84
|
-
: positionals;
|
|
85
|
-
return {
|
|
86
|
-
positionals: transformedPositionals,
|
|
87
|
-
values: transformedValues,
|
|
88
|
-
};
|
|
89
|
-
}
|
|
90
13
|
/**
|
|
91
14
|
* Build parseArgs options config from our options schema.
|
|
92
15
|
*/
|
|
@@ -158,9 +81,6 @@ const coerceValues = (values, schema) => {
|
|
|
158
81
|
};
|
|
159
82
|
/**
|
|
160
83
|
* Coerce positional values.
|
|
161
|
-
*
|
|
162
|
-
* Note: Schema validation (variadic last, required order) is done upfront by
|
|
163
|
-
* validateConfig in bargs.ts.
|
|
164
84
|
*/
|
|
165
85
|
const coercePositionals = (positionals, schema) => {
|
|
166
86
|
const result = [];
|
|
@@ -168,7 +88,7 @@ const coercePositionals = (positionals, schema) => {
|
|
|
168
88
|
const def = schema[i];
|
|
169
89
|
const value = positionals[i];
|
|
170
90
|
if (def.type === 'variadic') {
|
|
171
|
-
// Rest of positionals
|
|
91
|
+
// Rest of positionals
|
|
172
92
|
const variadicDef = def;
|
|
173
93
|
const rest = positionals.slice(i);
|
|
174
94
|
if (variadicDef.items === 'number') {
|
|
@@ -207,8 +127,7 @@ const coercePositionals = (positionals, schema) => {
|
|
|
207
127
|
return result;
|
|
208
128
|
};
|
|
209
129
|
/**
|
|
210
|
-
* Parse arguments for a simple CLI (no commands).
|
|
211
|
-
* parses, does not run handlers.
|
|
130
|
+
* Parse arguments for a simple CLI (no commands).
|
|
212
131
|
*/
|
|
213
132
|
export const parseSimple = (config) => {
|
|
214
133
|
const { args = process.argv.slice(2), options: optionsSchema = {}, positionals: positionalsSchema = [], } = config;
|
|
@@ -225,148 +144,8 @@ export const parseSimple = (config) => {
|
|
|
225
144
|
const coercedValues = coerceValues(values, optionsSchema);
|
|
226
145
|
const coercedPositionals = coercePositionals(positionals, positionalsSchema);
|
|
227
146
|
return {
|
|
228
|
-
command: undefined,
|
|
229
147
|
positionals: coercedPositionals,
|
|
230
148
|
values: coercedValues,
|
|
231
149
|
};
|
|
232
150
|
};
|
|
233
|
-
/**
|
|
234
|
-
* Core command parsing logic (sync, no handler execution). Returns the parsed
|
|
235
|
-
* result and the handler to run.
|
|
236
|
-
*/
|
|
237
|
-
const parseCommandsCore = (config) => {
|
|
238
|
-
const { args = process.argv.slice(2), commands, defaultHandler, options: globalOptions = {}, } = config;
|
|
239
|
-
const commandsRecord = commands;
|
|
240
|
-
// Find command name (first non-flag argument)
|
|
241
|
-
const commandIndex = args.findIndex((arg) => !arg.startsWith('-'));
|
|
242
|
-
const commandName = commandIndex >= 0 ? args[commandIndex] : undefined;
|
|
243
|
-
const remainingArgs = commandName
|
|
244
|
-
? [...args.slice(0, commandIndex), ...args.slice(commandIndex + 1)]
|
|
245
|
-
: args;
|
|
246
|
-
// No command specified
|
|
247
|
-
if (!commandName) {
|
|
248
|
-
if (typeof defaultHandler === 'string') {
|
|
249
|
-
// Use named default command (recursive)
|
|
250
|
-
return parseCommandsCore({
|
|
251
|
-
...config,
|
|
252
|
-
args: [defaultHandler, ...args],
|
|
253
|
-
defaultHandler: undefined,
|
|
254
|
-
});
|
|
255
|
-
}
|
|
256
|
-
else if (typeof defaultHandler === 'function') {
|
|
257
|
-
// Parse global options only
|
|
258
|
-
const parseArgsOptions = buildParseArgsConfig(globalOptions);
|
|
259
|
-
const { values } = parseArgs({
|
|
260
|
-
allowPositionals: false,
|
|
261
|
-
args: remainingArgs,
|
|
262
|
-
options: parseArgsOptions,
|
|
263
|
-
strict: true,
|
|
264
|
-
});
|
|
265
|
-
const coercedValues = coerceValues(values, globalOptions);
|
|
266
|
-
const result = {
|
|
267
|
-
command: undefined,
|
|
268
|
-
positionals: [],
|
|
269
|
-
values: coercedValues,
|
|
270
|
-
};
|
|
271
|
-
return {
|
|
272
|
-
commandTransforms: undefined,
|
|
273
|
-
handler: defaultHandler,
|
|
274
|
-
result,
|
|
275
|
-
topLevelTransforms: config.transforms,
|
|
276
|
-
};
|
|
277
|
-
}
|
|
278
|
-
else {
|
|
279
|
-
throw new HelpError('No command specified.');
|
|
280
|
-
}
|
|
281
|
-
}
|
|
282
|
-
// Find command config
|
|
283
|
-
const command = commandsRecord[commandName];
|
|
284
|
-
if (!command) {
|
|
285
|
-
throw new HelpError(`Unknown command: ${commandName}`);
|
|
286
|
-
}
|
|
287
|
-
// Merge global and command options
|
|
288
|
-
const commandOptions = command.options ?? {};
|
|
289
|
-
const mergedOptionsSchema = { ...globalOptions, ...commandOptions };
|
|
290
|
-
const commandPositionals = command.positionals ?? [];
|
|
291
|
-
// Build parseArgs config
|
|
292
|
-
const parseArgsOptions = buildParseArgsConfig(mergedOptionsSchema);
|
|
293
|
-
// Parse
|
|
294
|
-
const { positionals, values } = parseArgs({
|
|
295
|
-
allowPositionals: commandPositionals.length > 0,
|
|
296
|
-
args: remainingArgs,
|
|
297
|
-
options: parseArgsOptions,
|
|
298
|
-
strict: true,
|
|
299
|
-
});
|
|
300
|
-
// Coerce
|
|
301
|
-
const coercedValues = coerceValues(values, mergedOptionsSchema);
|
|
302
|
-
const coercedPositionals = coercePositionals(positionals, commandPositionals);
|
|
303
|
-
const result = {
|
|
304
|
-
command: commandName,
|
|
305
|
-
positionals: coercedPositionals,
|
|
306
|
-
values: coercedValues,
|
|
307
|
-
};
|
|
308
|
-
return {
|
|
309
|
-
commandTransforms: command.transforms,
|
|
310
|
-
handler: command.handler,
|
|
311
|
-
result,
|
|
312
|
-
topLevelTransforms: config.transforms,
|
|
313
|
-
};
|
|
314
|
-
};
|
|
315
|
-
/**
|
|
316
|
-
* Parse arguments for a command-based CLI (sync). Throws if any handler or
|
|
317
|
-
* transform returns a thenable.
|
|
318
|
-
*/
|
|
319
|
-
export const parseCommandsSync = (config) => {
|
|
320
|
-
const { commandTransforms, handler, result, topLevelTransforms } = parseCommandsCore(config);
|
|
321
|
-
// Apply transforms: top-level first, then command-level
|
|
322
|
-
let currentValues = result.values;
|
|
323
|
-
let currentPositionals = result.positionals;
|
|
324
|
-
if (topLevelTransforms) {
|
|
325
|
-
const transformed = runSyncTransforms(topLevelTransforms, currentValues, currentPositionals);
|
|
326
|
-
currentValues = transformed.values;
|
|
327
|
-
currentPositionals = transformed.positionals;
|
|
328
|
-
}
|
|
329
|
-
if (commandTransforms) {
|
|
330
|
-
const transformed = runSyncTransforms(commandTransforms, currentValues, currentPositionals);
|
|
331
|
-
currentValues = transformed.values;
|
|
332
|
-
currentPositionals = transformed.positionals;
|
|
333
|
-
}
|
|
334
|
-
const finalResult = {
|
|
335
|
-
command: result.command,
|
|
336
|
-
positionals: currentPositionals,
|
|
337
|
-
values: currentValues,
|
|
338
|
-
};
|
|
339
|
-
if (handler) {
|
|
340
|
-
runSyncHandler(handler, finalResult);
|
|
341
|
-
}
|
|
342
|
-
return finalResult;
|
|
343
|
-
};
|
|
344
|
-
/**
|
|
345
|
-
* Parse arguments for a command-based CLI (async).
|
|
346
|
-
*/
|
|
347
|
-
export const parseCommandsAsync = async (config) => {
|
|
348
|
-
const { commandTransforms, handler, result, topLevelTransforms } = parseCommandsCore(config);
|
|
349
|
-
// Apply transforms: top-level first, then command-level
|
|
350
|
-
let currentValues = result.values;
|
|
351
|
-
let currentPositionals = result.positionals;
|
|
352
|
-
if (topLevelTransforms) {
|
|
353
|
-
const transformed = await runTransforms(topLevelTransforms, currentValues, currentPositionals);
|
|
354
|
-
currentValues = transformed.values;
|
|
355
|
-
currentPositionals = transformed.positionals;
|
|
356
|
-
}
|
|
357
|
-
if (commandTransforms) {
|
|
358
|
-
const transformed = await runTransforms(commandTransforms, currentValues, currentPositionals);
|
|
359
|
-
currentValues = transformed.values;
|
|
360
|
-
currentPositionals = transformed.positionals;
|
|
361
|
-
}
|
|
362
|
-
const finalResult = {
|
|
363
|
-
command: result.command,
|
|
364
|
-
positionals: currentPositionals,
|
|
365
|
-
values: currentValues,
|
|
366
|
-
};
|
|
367
|
-
if (handler) {
|
|
368
|
-
await runHandler(handler, finalResult);
|
|
369
|
-
}
|
|
370
|
-
return finalResult;
|
|
371
|
-
};
|
|
372
151
|
//# sourceMappingURL=parser.js.map
|
package/dist/parser.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"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"}
|
package/dist/types.cjs
CHANGED
|
@@ -7,10 +7,8 @@
|
|
|
7
7
|
* - Option definitions (`StringOption`, `BooleanOption`, `EnumOption`, etc.)
|
|
8
8
|
* - Positional definitions (`StringPositional`, `VariadicPositional`, etc.)
|
|
9
9
|
* - Schema types (`OptionsSchema`, `PositionalsSchema`)
|
|
10
|
-
* - Configuration types (`BargsConfig`, `BargsConfigWithCommands`)
|
|
11
|
-
* - Command types (`CommandConfig`, `CommandConfigInput`)
|
|
12
10
|
* - Type inference utilities (`InferOptions`, `InferPositionals`)
|
|
13
|
-
* -
|
|
11
|
+
* - Parser combinator types (`Parser`, `Command`, `ParseResult`)
|
|
14
12
|
*
|
|
15
13
|
* @packageDocumentation
|
|
16
14
|
*/
|
package/dist/types.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";AAAA
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;GAYG"}
|