@wentools/zli 0.2.0-beta.2dc33a43
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/LICENSE +21 -0
- package/README.md +226 -0
- package/esm/_dnt.shims.d.ts +6 -0
- package/esm/_dnt.shims.d.ts.map +1 -0
- package/esm/_dnt.shims.js +61 -0
- package/esm/arg.d.ts +9 -0
- package/esm/arg.d.ts.map +1 -0
- package/esm/arg.js +4 -0
- package/esm/create_command.d.ts +28 -0
- package/esm/create_command.d.ts.map +1 -0
- package/esm/create_command.js +17 -0
- package/esm/create_command_directory.d.ts +35 -0
- package/esm/create_command_directory.d.ts.map +1 -0
- package/esm/create_command_directory.js +31 -0
- package/esm/create_flag_arg.d.ts +23 -0
- package/esm/create_flag_arg.d.ts.map +1 -0
- package/esm/create_flag_arg.js +14 -0
- package/esm/create_positional_arg.d.ts +24 -0
- package/esm/create_positional_arg.d.ts.map +1 -0
- package/esm/create_positional_arg.js +15 -0
- package/esm/deps/jsr.io/@wentools/result/0.1.0/src/err/err.d.ts +38 -0
- package/esm/deps/jsr.io/@wentools/result/0.1.0/src/err/err.d.ts.map +1 -0
- package/esm/deps/jsr.io/@wentools/result/0.1.0/src/err/err.js +38 -0
- package/esm/deps/jsr.io/@wentools/result/0.1.0/src/err/index.d.ts +2 -0
- package/esm/deps/jsr.io/@wentools/result/0.1.0/src/err/index.d.ts.map +1 -0
- package/esm/deps/jsr.io/@wentools/result/0.1.0/src/err/index.js +1 -0
- package/esm/deps/jsr.io/@wentools/result/0.1.0/src/index.d.ts +156 -0
- package/esm/deps/jsr.io/@wentools/result/0.1.0/src/index.d.ts.map +1 -0
- package/esm/deps/jsr.io/@wentools/result/0.1.0/src/index.js +65 -0
- package/esm/deps/jsr.io/@wentools/result/0.1.0/src/is_result/index.d.ts +2 -0
- package/esm/deps/jsr.io/@wentools/result/0.1.0/src/is_result/index.d.ts.map +1 -0
- package/esm/deps/jsr.io/@wentools/result/0.1.0/src/is_result/index.js +1 -0
- package/esm/deps/jsr.io/@wentools/result/0.1.0/src/is_result/is_result.d.ts +11 -0
- package/esm/deps/jsr.io/@wentools/result/0.1.0/src/is_result/is_result.d.ts.map +1 -0
- package/esm/deps/jsr.io/@wentools/result/0.1.0/src/is_result/is_result.js +14 -0
- package/esm/deps/jsr.io/@wentools/result/0.1.0/src/propagate_err/index.d.ts +2 -0
- package/esm/deps/jsr.io/@wentools/result/0.1.0/src/propagate_err/index.d.ts.map +1 -0
- package/esm/deps/jsr.io/@wentools/result/0.1.0/src/propagate_err/index.js +1 -0
- package/esm/deps/jsr.io/@wentools/result/0.1.0/src/propagate_err/propagate_err.d.ts +28 -0
- package/esm/deps/jsr.io/@wentools/result/0.1.0/src/propagate_err/propagate_err.d.ts.map +1 -0
- package/esm/deps/jsr.io/@wentools/result/0.1.0/src/propagate_err/propagate_err.js +30 -0
- package/esm/detect_arg_conflicts/detect_arg_conflicts.d.ts +19 -0
- package/esm/detect_arg_conflicts/detect_arg_conflicts.d.ts.map +1 -0
- package/esm/detect_arg_conflicts/detect_arg_conflicts.js +54 -0
- package/esm/detect_arg_conflicts/mod.d.ts +3 -0
- package/esm/detect_arg_conflicts/mod.d.ts.map +1 -0
- package/esm/detect_arg_conflicts/mod.js +1 -0
- package/esm/generate_help_text/generate_help_text.d.ts +13 -0
- package/esm/generate_help_text/generate_help_text.d.ts.map +1 -0
- package/esm/generate_help_text/generate_help_text.js +54 -0
- package/esm/generate_help_text/mod.d.ts +2 -0
- package/esm/generate_help_text/mod.d.ts.map +1 -0
- package/esm/generate_help_text/mod.js +1 -0
- package/esm/infer_args_type.d.ts +29 -0
- package/esm/infer_args_type.d.ts.map +1 -0
- package/esm/infer_args_type.js +6 -0
- package/esm/is_boolean_schema/is_boolean_schema.d.ts +12 -0
- package/esm/is_boolean_schema/is_boolean_schema.d.ts.map +1 -0
- package/esm/is_boolean_schema/is_boolean_schema.js +21 -0
- package/esm/is_boolean_schema/mod.d.ts +2 -0
- package/esm/is_boolean_schema/mod.d.ts.map +1 -0
- package/esm/is_boolean_schema/mod.js +1 -0
- package/esm/mod.d.ts +8 -0
- package/esm/mod.d.ts.map +1 -0
- package/esm/mod.js +1 -0
- package/esm/package.json +3 -0
- package/esm/parse_args/mod.d.ts +3 -0
- package/esm/parse_args/mod.d.ts.map +1 -0
- package/esm/parse_args/mod.js +1 -0
- package/esm/parse_args/parse_args.d.ts +24 -0
- package/esm/parse_args/parse_args.d.ts.map +1 -0
- package/esm/parse_args/parse_args.js +89 -0
- package/esm/run.d.ts +19 -0
- package/esm/run.d.ts.map +1 -0
- package/esm/run.js +152 -0
- package/esm/validate_args/mod.d.ts +3 -0
- package/esm/validate_args/mod.d.ts.map +1 -0
- package/esm/validate_args/mod.js +1 -0
- package/esm/validate_args/validate_args.d.ts +20 -0
- package/esm/validate_args/validate_args.d.ts.map +1 -0
- package/esm/validate_args/validate_args.js +23 -0
- package/esm/zli.d.ts +118 -0
- package/esm/zli.d.ts.map +1 -0
- package/esm/zli.js +124 -0
- package/package.json +39 -0
- package/script/_dnt.shims.d.ts +6 -0
- package/script/_dnt.shims.d.ts.map +1 -0
- package/script/_dnt.shims.js +65 -0
- package/script/arg.d.ts +9 -0
- package/script/arg.d.ts.map +1 -0
- package/script/arg.js +5 -0
- package/script/create_command.d.ts +28 -0
- package/script/create_command.d.ts.map +1 -0
- package/script/create_command.js +20 -0
- package/script/create_command_directory.d.ts +35 -0
- package/script/create_command_directory.d.ts.map +1 -0
- package/script/create_command_directory.js +34 -0
- package/script/create_flag_arg.d.ts +23 -0
- package/script/create_flag_arg.d.ts.map +1 -0
- package/script/create_flag_arg.js +17 -0
- package/script/create_positional_arg.d.ts +24 -0
- package/script/create_positional_arg.d.ts.map +1 -0
- package/script/create_positional_arg.js +18 -0
- package/script/deps/jsr.io/@wentools/result/0.1.0/src/err/err.d.ts +38 -0
- package/script/deps/jsr.io/@wentools/result/0.1.0/src/err/err.d.ts.map +1 -0
- package/script/deps/jsr.io/@wentools/result/0.1.0/src/err/err.js +41 -0
- package/script/deps/jsr.io/@wentools/result/0.1.0/src/err/index.d.ts +2 -0
- package/script/deps/jsr.io/@wentools/result/0.1.0/src/err/index.d.ts.map +1 -0
- package/script/deps/jsr.io/@wentools/result/0.1.0/src/err/index.js +5 -0
- package/script/deps/jsr.io/@wentools/result/0.1.0/src/index.d.ts +156 -0
- package/script/deps/jsr.io/@wentools/result/0.1.0/src/index.d.ts.map +1 -0
- package/script/deps/jsr.io/@wentools/result/0.1.0/src/index.js +77 -0
- package/script/deps/jsr.io/@wentools/result/0.1.0/src/is_result/index.d.ts +2 -0
- package/script/deps/jsr.io/@wentools/result/0.1.0/src/is_result/index.d.ts.map +1 -0
- package/script/deps/jsr.io/@wentools/result/0.1.0/src/is_result/index.js +5 -0
- package/script/deps/jsr.io/@wentools/result/0.1.0/src/is_result/is_result.d.ts +11 -0
- package/script/deps/jsr.io/@wentools/result/0.1.0/src/is_result/is_result.d.ts.map +1 -0
- package/script/deps/jsr.io/@wentools/result/0.1.0/src/is_result/is_result.js +17 -0
- package/script/deps/jsr.io/@wentools/result/0.1.0/src/propagate_err/index.d.ts +2 -0
- package/script/deps/jsr.io/@wentools/result/0.1.0/src/propagate_err/index.d.ts.map +1 -0
- package/script/deps/jsr.io/@wentools/result/0.1.0/src/propagate_err/index.js +5 -0
- package/script/deps/jsr.io/@wentools/result/0.1.0/src/propagate_err/propagate_err.d.ts +28 -0
- package/script/deps/jsr.io/@wentools/result/0.1.0/src/propagate_err/propagate_err.d.ts.map +1 -0
- package/script/deps/jsr.io/@wentools/result/0.1.0/src/propagate_err/propagate_err.js +33 -0
- package/script/detect_arg_conflicts/detect_arg_conflicts.d.ts +19 -0
- package/script/detect_arg_conflicts/detect_arg_conflicts.d.ts.map +1 -0
- package/script/detect_arg_conflicts/detect_arg_conflicts.js +57 -0
- package/script/detect_arg_conflicts/mod.d.ts +3 -0
- package/script/detect_arg_conflicts/mod.d.ts.map +1 -0
- package/script/detect_arg_conflicts/mod.js +5 -0
- package/script/generate_help_text/generate_help_text.d.ts +13 -0
- package/script/generate_help_text/generate_help_text.d.ts.map +1 -0
- package/script/generate_help_text/generate_help_text.js +57 -0
- package/script/generate_help_text/mod.d.ts +2 -0
- package/script/generate_help_text/mod.d.ts.map +1 -0
- package/script/generate_help_text/mod.js +5 -0
- package/script/infer_args_type.d.ts +29 -0
- package/script/infer_args_type.d.ts.map +1 -0
- package/script/infer_args_type.js +7 -0
- package/script/is_boolean_schema/is_boolean_schema.d.ts +12 -0
- package/script/is_boolean_schema/is_boolean_schema.d.ts.map +1 -0
- package/script/is_boolean_schema/is_boolean_schema.js +24 -0
- package/script/is_boolean_schema/mod.d.ts +2 -0
- package/script/is_boolean_schema/mod.d.ts.map +1 -0
- package/script/is_boolean_schema/mod.js +5 -0
- package/script/mod.d.ts +8 -0
- package/script/mod.d.ts.map +1 -0
- package/script/mod.js +5 -0
- package/script/package.json +3 -0
- package/script/parse_args/mod.d.ts +3 -0
- package/script/parse_args/mod.d.ts.map +1 -0
- package/script/parse_args/mod.js +5 -0
- package/script/parse_args/parse_args.d.ts +24 -0
- package/script/parse_args/parse_args.d.ts.map +1 -0
- package/script/parse_args/parse_args.js +92 -0
- package/script/run.d.ts +19 -0
- package/script/run.d.ts.map +1 -0
- package/script/run.js +189 -0
- package/script/validate_args/mod.d.ts +3 -0
- package/script/validate_args/mod.d.ts.map +1 -0
- package/script/validate_args/mod.js +5 -0
- package/script/validate_args/validate_args.d.ts +20 -0
- package/script/validate_args/validate_args.d.ts.map +1 -0
- package/script/validate_args/validate_args.js +26 -0
- package/script/zli.d.ts +118 -0
- package/script/zli.d.ts.map +1 -0
- package/script/zli.js +127 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../src/deps/jsr.io/@wentools/result/0.1.0/src/is_result/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isResult = void 0;
|
|
4
|
+
var is_result_js_1 = require("./is_result.js");
|
|
5
|
+
Object.defineProperty(exports, "isResult", { enumerable: true, get: function () { return is_result_js_1.isResult; } });
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Check if a value is a neverthrow Result type
|
|
3
|
+
*
|
|
4
|
+
* Uses duck typing to detect Result objects without importing neverthrow types.
|
|
5
|
+
*/
|
|
6
|
+
declare const isResult: (value: unknown) => value is {
|
|
7
|
+
isOk: () => boolean;
|
|
8
|
+
isErr: () => boolean;
|
|
9
|
+
};
|
|
10
|
+
export { isResult };
|
|
11
|
+
//# sourceMappingURL=is_result.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"is_result.d.ts","sourceRoot":"","sources":["../../../../../../../../src/deps/jsr.io/@wentools/result/0.1.0/src/is_result/is_result.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,QAAA,MAAM,QAAQ,GAAI,OAAO,OAAO,KAAG,KAAK,IAAI;IAAE,IAAI,EAAE,MAAM,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,OAAO,CAAA;CAStF,CAAA;AAED,OAAO,EAAE,QAAQ,EAAE,CAAA"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Check if a value is a neverthrow Result type
|
|
4
|
+
*
|
|
5
|
+
* Uses duck typing to detect Result objects without importing neverthrow types.
|
|
6
|
+
*/
|
|
7
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
+
exports.isResult = void 0;
|
|
9
|
+
const isResult = (value) => {
|
|
10
|
+
return (value !== null &&
|
|
11
|
+
typeof value === 'object' &&
|
|
12
|
+
'isOk' in value &&
|
|
13
|
+
'isErr' in value &&
|
|
14
|
+
typeof value.isOk === 'function' &&
|
|
15
|
+
typeof value.isErr === 'function');
|
|
16
|
+
};
|
|
17
|
+
exports.isResult = isResult;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../../../src/deps/jsr.io/@wentools/result/0.1.0/src/propagate_err/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.propagateErr = void 0;
|
|
4
|
+
var propagate_err_js_1 = require("./propagate_err.js");
|
|
5
|
+
Object.defineProperty(exports, "propagateErr", { enumerable: true, get: function () { return propagate_err_js_1.propagateErr; } });
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { Result } from 'neverthrow';
|
|
2
|
+
/**
|
|
3
|
+
* Propagates an error Result to a different success type context.
|
|
4
|
+
*
|
|
5
|
+
* This is safe because error Results never contain the success value - only the error.
|
|
6
|
+
* TypeScript's structural typing prevents direct assignment of Result<T, E> to Result<U, E>
|
|
7
|
+
* even though the error type is identical and we're in the error branch.
|
|
8
|
+
*
|
|
9
|
+
* Common use case: Early return from a function that creates multiple items. If creating
|
|
10
|
+
* item 2 fails with Result<Item, DatabaseError>, we need to return Result<Item[], DatabaseError>.
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* const result = await createUser(db, data) // Result<User, DatabaseError>
|
|
14
|
+
* if (result.isErr()) {
|
|
15
|
+
* // Need to return Result<Profile, DatabaseError> but have Result<User, DatabaseError>
|
|
16
|
+
* return propagateErr(result)
|
|
17
|
+
* }
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* // In bulk creation, propagate single-item error to array context
|
|
21
|
+
* const itemResult = await createItem(data) // Result<Item, Error>
|
|
22
|
+
* if (itemResult.isErr()) {
|
|
23
|
+
* return propagateErr<Item[], Error>(itemResult) // Result<Item[], Error>
|
|
24
|
+
* }
|
|
25
|
+
*/
|
|
26
|
+
declare const propagateErr: <TNew, E>(errorResult: Result<unknown, E>) => Result<TNew, E>;
|
|
27
|
+
export { propagateErr };
|
|
28
|
+
//# sourceMappingURL=propagate_err.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"propagate_err.d.ts","sourceRoot":"","sources":["../../../../../../../../src/deps/jsr.io/@wentools/result/0.1.0/src/propagate_err/propagate_err.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AAExC;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,QAAA,MAAM,YAAY,GAAI,IAAI,EAAE,CAAC,EAAE,aAAa,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,KAAG,MAAM,CAAC,IAAI,EAAE,CAAC,CAI9E,CAAA;AAED,OAAO,EAAE,YAAY,EAAE,CAAA"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.propagateErr = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Propagates an error Result to a different success type context.
|
|
6
|
+
*
|
|
7
|
+
* This is safe because error Results never contain the success value - only the error.
|
|
8
|
+
* TypeScript's structural typing prevents direct assignment of Result<T, E> to Result<U, E>
|
|
9
|
+
* even though the error type is identical and we're in the error branch.
|
|
10
|
+
*
|
|
11
|
+
* Common use case: Early return from a function that creates multiple items. If creating
|
|
12
|
+
* item 2 fails with Result<Item, DatabaseError>, we need to return Result<Item[], DatabaseError>.
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* const result = await createUser(db, data) // Result<User, DatabaseError>
|
|
16
|
+
* if (result.isErr()) {
|
|
17
|
+
* // Need to return Result<Profile, DatabaseError> but have Result<User, DatabaseError>
|
|
18
|
+
* return propagateErr(result)
|
|
19
|
+
* }
|
|
20
|
+
*
|
|
21
|
+
* @example
|
|
22
|
+
* // In bulk creation, propagate single-item error to array context
|
|
23
|
+
* const itemResult = await createItem(data) // Result<Item, Error>
|
|
24
|
+
* if (itemResult.isErr()) {
|
|
25
|
+
* return propagateErr<Item[], Error>(itemResult) // Result<Item[], Error>
|
|
26
|
+
* }
|
|
27
|
+
*/
|
|
28
|
+
const propagateErr = (errorResult) => {
|
|
29
|
+
// Type assertion is safe: we're only propagating errors, and error Results
|
|
30
|
+
// don't contain the success value. The error type E is preserved exactly.
|
|
31
|
+
return errorResult;
|
|
32
|
+
};
|
|
33
|
+
exports.propagateErr = propagateErr;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Detect conflicts in argument definitions
|
|
3
|
+
*
|
|
4
|
+
* Checks for:
|
|
5
|
+
* - Duplicate arg names
|
|
6
|
+
* - Duplicate short names
|
|
7
|
+
*
|
|
8
|
+
* Returns list of conflicts found.
|
|
9
|
+
*/
|
|
10
|
+
import type { Arg } from '../arg.js';
|
|
11
|
+
type ArgConflict = {
|
|
12
|
+
type: 'duplicate_name' | 'duplicate_short';
|
|
13
|
+
name: string;
|
|
14
|
+
conflictingArgs: string[];
|
|
15
|
+
};
|
|
16
|
+
declare const detectArgConflicts: (args: readonly Arg[]) => ArgConflict[];
|
|
17
|
+
export { detectArgConflicts };
|
|
18
|
+
export type { ArgConflict };
|
|
19
|
+
//# sourceMappingURL=detect_arg_conflicts.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"detect_arg_conflicts.d.ts","sourceRoot":"","sources":["../../src/detect_arg_conflicts/detect_arg_conflicts.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,WAAW,CAAA;AAEpC,KAAK,WAAW,GAAG;IAClB,IAAI,EAAE,gBAAgB,GAAG,iBAAiB,CAAA;IAC1C,IAAI,EAAE,MAAM,CAAA;IACZ,eAAe,EAAE,MAAM,EAAE,CAAA;CACzB,CAAA;AAED,QAAA,MAAM,kBAAkB,GAAI,MAAM,SAAS,GAAG,EAAE,KAAG,WAAW,EA8C7D,CAAA;AAED,OAAO,EAAE,kBAAkB,EAAE,CAAA;AAC7B,YAAY,EAAE,WAAW,EAAE,CAAA"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Detect conflicts in argument definitions
|
|
4
|
+
*
|
|
5
|
+
* Checks for:
|
|
6
|
+
* - Duplicate arg names
|
|
7
|
+
* - Duplicate short names
|
|
8
|
+
*
|
|
9
|
+
* Returns list of conflicts found.
|
|
10
|
+
*/
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.detectArgConflicts = void 0;
|
|
13
|
+
const detectArgConflicts = (args) => {
|
|
14
|
+
const conflicts = [];
|
|
15
|
+
const namesSeen = new Map();
|
|
16
|
+
const shortsSeen = new Map();
|
|
17
|
+
for (const arg of args) {
|
|
18
|
+
// Check for duplicate names
|
|
19
|
+
if (namesSeen.has(arg.name)) {
|
|
20
|
+
namesSeen.get(arg.name).push(arg.name);
|
|
21
|
+
}
|
|
22
|
+
else {
|
|
23
|
+
namesSeen.set(arg.name, [arg.name]);
|
|
24
|
+
}
|
|
25
|
+
// Check for duplicate shorts
|
|
26
|
+
if (arg.short) {
|
|
27
|
+
if (shortsSeen.has(arg.short)) {
|
|
28
|
+
shortsSeen.get(arg.short).push(arg.name);
|
|
29
|
+
}
|
|
30
|
+
else {
|
|
31
|
+
shortsSeen.set(arg.short, [arg.name]);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
// Report duplicate names
|
|
36
|
+
for (const [name, argNames] of namesSeen) {
|
|
37
|
+
if (argNames.length > 1) {
|
|
38
|
+
conflicts.push({
|
|
39
|
+
type: 'duplicate_name',
|
|
40
|
+
name,
|
|
41
|
+
conflictingArgs: argNames,
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
// Report duplicate shorts
|
|
46
|
+
for (const [short, argNames] of shortsSeen) {
|
|
47
|
+
if (argNames.length > 1) {
|
|
48
|
+
conflicts.push({
|
|
49
|
+
type: 'duplicate_short',
|
|
50
|
+
name: short,
|
|
51
|
+
conflictingArgs: argNames,
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
return conflicts;
|
|
56
|
+
};
|
|
57
|
+
exports.detectArgConflicts = detectArgConflicts;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../src/detect_arg_conflicts/mod.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAA;AAC9D,YAAY,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAA"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.detectArgConflicts = void 0;
|
|
4
|
+
var detect_arg_conflicts_js_1 = require("./detect_arg_conflicts.js");
|
|
5
|
+
Object.defineProperty(exports, "detectArgConflicts", { enumerable: true, get: function () { return detect_arg_conflicts_js_1.detectArgConflicts; } });
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generate help text for commands
|
|
3
|
+
*
|
|
4
|
+
* Creates formatted help text showing:
|
|
5
|
+
* - Description
|
|
6
|
+
* - Usage line
|
|
7
|
+
* - Positional args
|
|
8
|
+
* - Flags
|
|
9
|
+
*/
|
|
10
|
+
import type { Command } from '../create_command.js';
|
|
11
|
+
declare const generateHelpText: (command: Command, commandName?: string) => string;
|
|
12
|
+
export { generateHelpText };
|
|
13
|
+
//# sourceMappingURL=generate_help_text.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generate_help_text.d.ts","sourceRoot":"","sources":["../../src/generate_help_text/generate_help_text.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AAEnD,QAAA,MAAM,gBAAgB,GAAI,SAAS,OAAO,EAAE,cAAc,MAAM,KAAG,MAoDlE,CAAA;AAED,OAAO,EAAE,gBAAgB,EAAE,CAAA"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Generate help text for commands
|
|
4
|
+
*
|
|
5
|
+
* Creates formatted help text showing:
|
|
6
|
+
* - Description
|
|
7
|
+
* - Usage line
|
|
8
|
+
* - Positional args
|
|
9
|
+
* - Flags
|
|
10
|
+
*/
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.generateHelpText = void 0;
|
|
13
|
+
const generateHelpText = (command, commandName) => {
|
|
14
|
+
const lines = [];
|
|
15
|
+
// Description
|
|
16
|
+
if (command.description) {
|
|
17
|
+
lines.push(command.description);
|
|
18
|
+
lines.push('');
|
|
19
|
+
}
|
|
20
|
+
// Usage line
|
|
21
|
+
const usageParts = [];
|
|
22
|
+
if (commandName) {
|
|
23
|
+
usageParts.push(commandName);
|
|
24
|
+
}
|
|
25
|
+
const positionals = command.args.filter((arg) => arg.type === 'positional');
|
|
26
|
+
const flags = command.args.filter((arg) => arg.type === 'flag');
|
|
27
|
+
for (const arg of positionals) {
|
|
28
|
+
usageParts.push(`<${arg.name}>`);
|
|
29
|
+
}
|
|
30
|
+
if (flags.length > 0) {
|
|
31
|
+
usageParts.push('[options]');
|
|
32
|
+
}
|
|
33
|
+
lines.push(`Usage: ${usageParts.join(' ')}`);
|
|
34
|
+
lines.push('');
|
|
35
|
+
// Positional arguments
|
|
36
|
+
if (positionals.length > 0) {
|
|
37
|
+
lines.push('Arguments:');
|
|
38
|
+
for (const arg of positionals) {
|
|
39
|
+
const shortPart = arg.short ? `, -${arg.short}` : '';
|
|
40
|
+
const descPart = arg.description ? ` ${arg.description}` : '';
|
|
41
|
+
lines.push(` ${arg.name}${shortPart}${descPart}`);
|
|
42
|
+
}
|
|
43
|
+
lines.push('');
|
|
44
|
+
}
|
|
45
|
+
// Flags
|
|
46
|
+
if (flags.length > 0) {
|
|
47
|
+
lines.push('Options:');
|
|
48
|
+
for (const arg of flags) {
|
|
49
|
+
const shortPart = arg.short ? `-${arg.short}, ` : '';
|
|
50
|
+
const descPart = arg.description ? ` ${arg.description}` : '';
|
|
51
|
+
lines.push(` ${shortPart}--${arg.name}${descPart}`);
|
|
52
|
+
}
|
|
53
|
+
lines.push('');
|
|
54
|
+
}
|
|
55
|
+
return lines.join('\n');
|
|
56
|
+
};
|
|
57
|
+
exports.generateHelpText = generateHelpText;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../src/generate_help_text/mod.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAA"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.generateHelpText = void 0;
|
|
4
|
+
var generate_help_text_js_1 = require("./generate_help_text.js");
|
|
5
|
+
Object.defineProperty(exports, "generateHelpText", { enumerable: true, get: function () { return generate_help_text_js_1.generateHelpText; } });
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Type utilities for inferring handler arg types from Zod schemas
|
|
3
|
+
*
|
|
4
|
+
* Extracts the TypeScript type from an array of arg definitions.
|
|
5
|
+
*/
|
|
6
|
+
import type { z } from 'zod';
|
|
7
|
+
import type { Arg } from './arg.js';
|
|
8
|
+
/**
|
|
9
|
+
* Infer the handler args object type from an array of arg definitions
|
|
10
|
+
*
|
|
11
|
+
* Takes an array like:
|
|
12
|
+
* [
|
|
13
|
+
* { name: 'email', schema: z.string().email() },
|
|
14
|
+
* { name: 'verbose', schema: z.boolean().optional() }
|
|
15
|
+
* ]
|
|
16
|
+
*
|
|
17
|
+
* And produces:
|
|
18
|
+
* { email: string, verbose?: boolean }
|
|
19
|
+
*/
|
|
20
|
+
type InferArgsType<TArgs extends readonly Arg[]> = TArgs extends readonly [
|
|
21
|
+
infer First,
|
|
22
|
+
...infer Rest
|
|
23
|
+
] ? First extends Arg ? Rest extends readonly Arg[] ? {
|
|
24
|
+
[K in First['name']]: z.infer<First['schema']>;
|
|
25
|
+
} & InferArgsType<Rest> : {
|
|
26
|
+
[K in First['name']]: z.infer<First['schema']>;
|
|
27
|
+
} : never : Record<string, never>;
|
|
28
|
+
export type { InferArgsType };
|
|
29
|
+
//# sourceMappingURL=infer_args_type.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"infer_args_type.d.ts","sourceRoot":"","sources":["../src/infer_args_type.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAC5B,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAEnC;;;;;;;;;;;GAWG;AACH,KAAK,aAAa,CAAC,KAAK,SAAS,SAAS,GAAG,EAAE,IAAI,KAAK,SAAS,SAAS;IACzE,MAAM,KAAK;IACX,GAAG,MAAM,IAAI;CACb,GACE,KAAK,SAAS,GAAG,GAChB,IAAI,SAAS,SAAS,GAAG,EAAE,GAC1B;KAAG,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;CAAE,GAAG,aAAa,CAAC,IAAI,CAAC,GACxE;KAAG,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;CAAE,GACnD,KAAK,GACN,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;AAExB,YAAY,EAAE,aAAa,EAAE,CAAA"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Check if a Zod schema is a boolean type
|
|
3
|
+
*
|
|
4
|
+
* Uses internal Zod _def API, isolated here for easy testing and maintenance.
|
|
5
|
+
* If Zod changes their internal structure, we only need to update this function.
|
|
6
|
+
*
|
|
7
|
+
* Handles wrapped schemas (default, optional, nullable) by recursively unwrapping.
|
|
8
|
+
*/
|
|
9
|
+
import type { ZodSchema } from 'zod';
|
|
10
|
+
declare const isBooleanSchema: (schema: ZodSchema) => boolean;
|
|
11
|
+
export { isBooleanSchema };
|
|
12
|
+
//# sourceMappingURL=is_boolean_schema.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"is_boolean_schema.d.ts","sourceRoot":"","sources":["../../src/is_boolean_schema/is_boolean_schema.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,KAAK,CAAA;AAEpC,QAAA,MAAM,eAAe,GAAI,QAAQ,SAAS,KAAG,OAa5C,CAAA;AAED,OAAO,EAAE,eAAe,EAAE,CAAA"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Check if a Zod schema is a boolean type
|
|
4
|
+
*
|
|
5
|
+
* Uses internal Zod _def API, isolated here for easy testing and maintenance.
|
|
6
|
+
* If Zod changes their internal structure, we only need to update this function.
|
|
7
|
+
*
|
|
8
|
+
* Handles wrapped schemas (default, optional, nullable) by recursively unwrapping.
|
|
9
|
+
*/
|
|
10
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
|
+
exports.isBooleanSchema = void 0;
|
|
12
|
+
const isBooleanSchema = (schema) => {
|
|
13
|
+
// Direct boolean check
|
|
14
|
+
if ('type' in schema._def && schema._def.type === 'boolean') {
|
|
15
|
+
return true;
|
|
16
|
+
}
|
|
17
|
+
// Unwrap wrappers (ZodDefault, ZodOptional, ZodNullable)
|
|
18
|
+
// These store the inner schema in _def.innerType
|
|
19
|
+
if ('innerType' in schema._def) {
|
|
20
|
+
return isBooleanSchema(schema._def.innerType);
|
|
21
|
+
}
|
|
22
|
+
return false;
|
|
23
|
+
};
|
|
24
|
+
exports.isBooleanSchema = isBooleanSchema;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../src/is_boolean_schema/mod.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isBooleanSchema = void 0;
|
|
4
|
+
var is_boolean_schema_js_1 = require("./is_boolean_schema.js");
|
|
5
|
+
Object.defineProperty(exports, "isBooleanSchema", { enumerable: true, get: function () { return is_boolean_schema_js_1.isBooleanSchema; } });
|
package/script/mod.d.ts
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export { zli } from './zli.js';
|
|
2
|
+
export type { CommandDirectory, CommandEntry } from './run.js';
|
|
3
|
+
export type { Command, CommandHandler, CommandOptions, MaybeResult } from './create_command.js';
|
|
4
|
+
export type { PositionalArg, PositionalArgOptions } from './create_positional_arg.js';
|
|
5
|
+
export type { FlagArg, FlagArgOptions } from './create_flag_arg.js';
|
|
6
|
+
export type { Arg } from './arg.js';
|
|
7
|
+
export type { InferArgsType } from './infer_args_type.js';
|
|
8
|
+
//# sourceMappingURL=mod.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../src/mod.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AAC9B,YAAY,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAC9D,YAAY,EAAE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AAC/F,YAAY,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAA;AACrF,YAAY,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACnE,YAAY,EAAE,GAAG,EAAE,MAAM,UAAU,CAAA;AACnC,YAAY,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA"}
|
package/script/mod.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../src/parse_args/mod.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,YAAY,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.parseArgs = void 0;
|
|
4
|
+
var parse_args_js_1 = require("./parse_args.js");
|
|
5
|
+
Object.defineProperty(exports, "parseArgs", { enumerable: true, get: function () { return parse_args_js_1.parseArgs; } });
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Parse command-line arguments
|
|
3
|
+
*
|
|
4
|
+
* Takes process.argv and arg definitions, returns parsed raw values (pre-validation).
|
|
5
|
+
*
|
|
6
|
+
* Parsing rules:
|
|
7
|
+
* 1. Positional args fill by position (left to right)
|
|
8
|
+
* 2. Named flags (--name or -short) can fill any arg
|
|
9
|
+
* 3. Explicit (named) overrides implicit (positional)
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* const args = [
|
|
13
|
+
* createPositionalArg('email', z.string(), { short: 'e' }),
|
|
14
|
+
* createFlagArg('verbose', z.boolean(), { short: 'v' })
|
|
15
|
+
* ]
|
|
16
|
+
* const rawValues = parseArgs(process.argv.slice(2), args)
|
|
17
|
+
* // rawValues = { email: 'user@example.com', verbose: true }
|
|
18
|
+
*/
|
|
19
|
+
import type { Arg } from '../arg.js';
|
|
20
|
+
type RawValues = Record<string, unknown>;
|
|
21
|
+
declare const parseArgs: (argv: string[], args: readonly Arg[]) => RawValues;
|
|
22
|
+
export { parseArgs };
|
|
23
|
+
export type { RawValues };
|
|
24
|
+
//# sourceMappingURL=parse_args.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parse_args.d.ts","sourceRoot":"","sources":["../../src/parse_args/parse_args.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,WAAW,CAAA;AAGpC,KAAK,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;AAExC,QAAA,MAAM,SAAS,GAAI,MAAM,MAAM,EAAE,EAAE,MAAM,SAAS,GAAG,EAAE,KAAG,SA4EzD,CAAA;AAED,OAAO,EAAE,SAAS,EAAE,CAAA;AACpB,YAAY,EAAE,SAAS,EAAE,CAAA"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Parse command-line arguments
|
|
4
|
+
*
|
|
5
|
+
* Takes process.argv and arg definitions, returns parsed raw values (pre-validation).
|
|
6
|
+
*
|
|
7
|
+
* Parsing rules:
|
|
8
|
+
* 1. Positional args fill by position (left to right)
|
|
9
|
+
* 2. Named flags (--name or -short) can fill any arg
|
|
10
|
+
* 3. Explicit (named) overrides implicit (positional)
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* const args = [
|
|
14
|
+
* createPositionalArg('email', z.string(), { short: 'e' }),
|
|
15
|
+
* createFlagArg('verbose', z.boolean(), { short: 'v' })
|
|
16
|
+
* ]
|
|
17
|
+
* const rawValues = parseArgs(process.argv.slice(2), args)
|
|
18
|
+
* // rawValues = { email: 'user@example.com', verbose: true }
|
|
19
|
+
*/
|
|
20
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
21
|
+
exports.parseArgs = void 0;
|
|
22
|
+
const mod_js_1 = require("../is_boolean_schema/mod.js");
|
|
23
|
+
const parseArgs = (argv, args) => {
|
|
24
|
+
const rawValues = {};
|
|
25
|
+
const positionalArgs = args.filter((arg) => arg.type === 'positional');
|
|
26
|
+
const allArgs = args;
|
|
27
|
+
// Build lookup maps for quick access
|
|
28
|
+
const argByLongName = new Map();
|
|
29
|
+
const argByShortName = new Map();
|
|
30
|
+
for (const arg of allArgs) {
|
|
31
|
+
argByLongName.set(arg.name, arg);
|
|
32
|
+
if (arg.short) {
|
|
33
|
+
argByShortName.set(arg.short, arg);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
let positionalIndex = 0;
|
|
37
|
+
for (let i = 0; i < argv.length; i++) {
|
|
38
|
+
const current = argv[i];
|
|
39
|
+
if (current === undefined)
|
|
40
|
+
continue;
|
|
41
|
+
// Long flag: --name or --name=value
|
|
42
|
+
if (current.startsWith('--')) {
|
|
43
|
+
const [flagName, ...valueParts] = current.slice(2).split('=');
|
|
44
|
+
if (flagName === undefined)
|
|
45
|
+
continue;
|
|
46
|
+
const arg = argByLongName.get(flagName);
|
|
47
|
+
if (!arg) {
|
|
48
|
+
// Unknown flag - skip for now (could error later)
|
|
49
|
+
continue;
|
|
50
|
+
}
|
|
51
|
+
if ((0, mod_js_1.isBooleanSchema)(arg.schema)) {
|
|
52
|
+
rawValues[arg.name] = true;
|
|
53
|
+
}
|
|
54
|
+
else if (valueParts.length > 0) {
|
|
55
|
+
// --name=value format
|
|
56
|
+
rawValues[arg.name] = valueParts.join('=');
|
|
57
|
+
}
|
|
58
|
+
else {
|
|
59
|
+
// --name value format
|
|
60
|
+
i++;
|
|
61
|
+
rawValues[arg.name] = argv[i];
|
|
62
|
+
}
|
|
63
|
+
continue;
|
|
64
|
+
}
|
|
65
|
+
// Short flag: -v or -v value
|
|
66
|
+
if (current.startsWith('-') && current.length > 1) {
|
|
67
|
+
const shortName = current.slice(1);
|
|
68
|
+
const arg = argByShortName.get(shortName);
|
|
69
|
+
if (!arg) {
|
|
70
|
+
// Unknown flag - skip for now
|
|
71
|
+
continue;
|
|
72
|
+
}
|
|
73
|
+
if ((0, mod_js_1.isBooleanSchema)(arg.schema)) {
|
|
74
|
+
rawValues[arg.name] = true;
|
|
75
|
+
}
|
|
76
|
+
else {
|
|
77
|
+
// -n value format
|
|
78
|
+
i++;
|
|
79
|
+
rawValues[arg.name] = argv[i];
|
|
80
|
+
}
|
|
81
|
+
continue;
|
|
82
|
+
}
|
|
83
|
+
// Positional value
|
|
84
|
+
const positionalArg = positionalArgs[positionalIndex];
|
|
85
|
+
if (positionalArg !== undefined) {
|
|
86
|
+
rawValues[positionalArg.name] = current;
|
|
87
|
+
positionalIndex++;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
return rawValues;
|
|
91
|
+
};
|
|
92
|
+
exports.parseArgs = parseArgs;
|
package/script/run.d.ts
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { Command } from './create_command.js';
|
|
2
|
+
type CommandEntry = Command | CommandDirectory;
|
|
3
|
+
type CommandDirectory = {
|
|
4
|
+
name: string;
|
|
5
|
+
description?: string;
|
|
6
|
+
commands: Record<string, CommandEntry>;
|
|
7
|
+
};
|
|
8
|
+
type CliInput = Command | CommandDirectory;
|
|
9
|
+
/**
|
|
10
|
+
* Create a run function with explicit argv (for testing)
|
|
11
|
+
*/
|
|
12
|
+
declare const createRun: (argv: string[]) => (input: CliInput) => Promise<void>;
|
|
13
|
+
/**
|
|
14
|
+
* Run a CLI command using Deno.args
|
|
15
|
+
*/
|
|
16
|
+
declare const run: (input: CliInput) => Promise<void>;
|
|
17
|
+
export { run, createRun };
|
|
18
|
+
export type { CommandDirectory, CommandEntry, CliInput };
|
|
19
|
+
//# sourceMappingURL=run.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../src/run.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAQlD,KAAK,YAAY,GAAG,OAAO,GAAG,gBAAgB,CAAA;AAG9C,KAAK,gBAAgB,GAAG;IACvB,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;CACtC,CAAA;AAED,KAAK,QAAQ,GAAG,OAAO,GAAG,gBAAgB,CAAA;AAO1C;;GAEG;AACH,QAAA,MAAM,SAAS,GAAI,MAAM,MAAM,EAAE,aACE,QAAQ,KAAG,OAAO,CAAC,IAAI,CA+IzD,CAAA;AAED;;GAEG;AACH,QAAA,MAAM,GAAG,GAAU,OAAO,QAAQ,KAAG,OAAO,CAAC,IAAI,CAGhD,CAAA;AAED,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,CAAA;AACzB,YAAY,EAAE,gBAAgB,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAA"}
|