@shell-shock/core 0.17.8 → 0.17.11
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/dist/_virtual/_rolldown/runtime.cjs +29 -1
- package/dist/api.cjs +36 -1
- package/dist/api.cjs.map +1 -0
- package/dist/api.d.cts +2 -77
- package/dist/api.d.cts.map +1 -1
- package/dist/api.d.mts +2 -76
- package/dist/api.d.mts.map +1 -1
- package/dist/api.mjs +35 -1
- package/dist/api.mjs.map +1 -1
- package/dist/components/command-validation-logic.cjs +291 -1
- package/dist/components/command-validation-logic.cjs.map +1 -0
- package/dist/components/command-validation-logic.d.cts +1 -3
- package/dist/components/command-validation-logic.d.cts.map +1 -1
- package/dist/components/command-validation-logic.d.mts +1 -3
- package/dist/components/command-validation-logic.d.mts.map +1 -1
- package/dist/components/command-validation-logic.mjs +288 -1
- package/dist/components/command-validation-logic.mjs.map +1 -1
- package/dist/components/docs.cjs +265 -1
- package/dist/components/docs.cjs.map +1 -0
- package/dist/components/docs.d.cts +4 -5
- package/dist/components/docs.d.cts.map +1 -1
- package/dist/components/docs.d.mts +4 -5
- package/dist/components/docs.d.mts.map +1 -1
- package/dist/components/docs.mjs +256 -1
- package/dist/components/docs.mjs.map +1 -1
- package/dist/components/exec-builtin.cjs +429 -15
- package/dist/components/exec-builtin.cjs.map +1 -0
- package/dist/components/exec-builtin.d.cts +1 -2
- package/dist/components/exec-builtin.d.cts.map +1 -1
- package/dist/components/exec-builtin.d.mts +1 -2
- package/dist/components/exec-builtin.d.mts.map +1 -1
- package/dist/components/exec-builtin.mjs +424 -15
- package/dist/components/exec-builtin.mjs.map +1 -1
- package/dist/components/helpers.cjs +119 -1
- package/dist/components/helpers.cjs.map +1 -0
- package/dist/components/helpers.d.cts +6 -8
- package/dist/components/helpers.d.cts.map +1 -1
- package/dist/components/helpers.d.mts +6 -8
- package/dist/components/helpers.d.mts.map +1 -1
- package/dist/components/helpers.mjs +111 -1
- package/dist/components/helpers.mjs.map +1 -1
- package/dist/components/index.cjs +58 -1
- package/dist/components/index.mjs +10 -1
- package/dist/components/options-parser-logic.cjs +959 -5
- package/dist/components/options-parser-logic.cjs.map +1 -0
- package/dist/components/options-parser-logic.d.cts +8 -9
- package/dist/components/options-parser-logic.d.cts.map +1 -1
- package/dist/components/options-parser-logic.d.mts +8 -9
- package/dist/components/options-parser-logic.d.mts.map +1 -1
- package/dist/components/options-parser-logic.mjs +944 -5
- package/dist/components/options-parser-logic.mjs.map +1 -1
- package/dist/components/state-builtin.cjs +630 -8
- package/dist/components/state-builtin.cjs.map +1 -0
- package/dist/components/state-builtin.d.cts +4 -5
- package/dist/components/state-builtin.d.cts.map +1 -1
- package/dist/components/state-builtin.d.mts +4 -5
- package/dist/components/state-builtin.d.mts.map +1 -1
- package/dist/components/state-builtin.mjs +622 -8
- package/dist/components/state-builtin.mjs.map +1 -1
- package/dist/components/usage.cjs +116 -1
- package/dist/components/usage.cjs.map +1 -0
- package/dist/components/usage.d.cts +1 -2
- package/dist/components/usage.d.cts.map +1 -1
- package/dist/components/usage.d.mts +1 -2
- package/dist/components/usage.d.mts.map +1 -1
- package/dist/components/usage.mjs +113 -1
- package/dist/components/usage.mjs.map +1 -1
- package/dist/components/utils-builtin.cjs +839 -33
- package/dist/components/utils-builtin.cjs.map +1 -0
- package/dist/components/utils-builtin.d.cts +7 -8
- package/dist/components/utils-builtin.d.cts.map +1 -1
- package/dist/components/utils-builtin.d.mts +7 -8
- package/dist/components/utils-builtin.d.mts.map +1 -1
- package/dist/components/utils-builtin.mjs +828 -33
- package/dist/components/utils-builtin.mjs.map +1 -1
- package/dist/config.cjs +65 -1
- package/dist/config.cjs.map +1 -0
- package/dist/config.d.cts +29 -8
- package/dist/config.d.cts.map +1 -1
- package/dist/config.d.mts +29 -8
- package/dist/config.d.mts.map +1 -1
- package/dist/config.mjs +62 -1
- package/dist/config.mjs.map +1 -1
- package/dist/contexts/command.cjs +26 -1
- package/dist/contexts/command.cjs.map +1 -0
- package/dist/contexts/command.d.cts.map +1 -1
- package/dist/contexts/command.d.mts.map +1 -1
- package/dist/contexts/command.mjs +23 -1
- package/dist/contexts/command.mjs.map +1 -1
- package/dist/contexts/index.cjs +9 -1
- package/dist/contexts/index.mjs +4 -1
- package/dist/contexts/options.cjs +63 -1
- package/dist/contexts/options.cjs.map +1 -0
- package/dist/contexts/options.d.cts.map +1 -1
- package/dist/contexts/options.d.mts.map +1 -1
- package/dist/contexts/options.mjs +57 -1
- package/dist/contexts/options.mjs.map +1 -1
- package/dist/engine.cjs +138 -0
- package/dist/engine.cjs.map +1 -0
- package/dist/engine.d.cts +79 -0
- package/dist/engine.d.cts.map +1 -0
- package/dist/engine.d.mts +79 -0
- package/dist/engine.d.mts.map +1 -0
- package/dist/engine.mjs +136 -0
- package/dist/engine.mjs.map +1 -0
- package/dist/helpers/automd.cjs +70 -1
- package/dist/helpers/automd.cjs.map +1 -0
- package/dist/helpers/automd.mjs +69 -1
- package/dist/helpers/automd.mjs.map +1 -1
- package/dist/helpers/docs-helpers.cjs +23 -1
- package/dist/helpers/docs-helpers.cjs.map +1 -0
- package/dist/helpers/docs-helpers.mjs +22 -1
- package/dist/helpers/docs-helpers.mjs.map +1 -1
- package/dist/helpers/get-framework.cjs +24 -0
- package/dist/helpers/get-framework.cjs.map +1 -0
- package/dist/helpers/get-framework.mjs +24 -0
- package/dist/helpers/get-framework.mjs.map +1 -0
- package/dist/helpers/paths.cjs +137 -1
- package/dist/helpers/paths.cjs.map +1 -0
- package/dist/helpers/paths.mjs +133 -1
- package/dist/helpers/paths.mjs.map +1 -1
- package/dist/helpers/persistence.cjs +113 -1
- package/dist/helpers/persistence.cjs.map +1 -0
- package/dist/helpers/persistence.mjs +112 -1
- package/dist/helpers/persistence.mjs.map +1 -1
- package/dist/helpers/update-package-json.cjs +65 -1
- package/dist/helpers/update-package-json.cjs.map +1 -0
- package/dist/helpers/update-package-json.mjs +63 -1
- package/dist/helpers/update-package-json.mjs.map +1 -1
- package/dist/helpers/utilities.cjs +95 -1
- package/dist/helpers/utilities.cjs.map +1 -0
- package/dist/helpers/utilities.mjs +93 -1
- package/dist/helpers/utilities.mjs.map +1 -1
- package/dist/helpers/validations.cjs +71 -1
- package/dist/helpers/validations.cjs.map +1 -0
- package/dist/helpers/validations.mjs +69 -1
- package/dist/helpers/validations.mjs.map +1 -1
- package/dist/index.cjs +123 -1
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +80 -5
- package/dist/index.d.cts.map +1 -0
- package/dist/index.d.mts +80 -5
- package/dist/index.d.mts.map +1 -0
- package/dist/index.mjs +119 -1
- package/dist/index.mjs.map +1 -0
- package/dist/package.cjs +12 -0
- package/dist/package.cjs.map +1 -0
- package/dist/package.mjs +6 -0
- package/dist/package.mjs.map +1 -0
- package/dist/plugin-utils/compute-bin.cjs +48 -1
- package/dist/plugin-utils/compute-bin.cjs.map +1 -0
- package/dist/plugin-utils/compute-bin.d.cts +2 -2
- package/dist/plugin-utils/compute-bin.d.cts.map +1 -1
- package/dist/plugin-utils/compute-bin.d.mts +2 -2
- package/dist/plugin-utils/compute-bin.d.mts.map +1 -1
- package/dist/plugin-utils/compute-bin.mjs +47 -1
- package/dist/plugin-utils/compute-bin.mjs.map +1 -1
- package/dist/plugin-utils/context-helpers.cjs +224 -1
- package/dist/plugin-utils/context-helpers.cjs.map +1 -0
- package/dist/plugin-utils/context-helpers.d.cts +4 -4
- package/dist/plugin-utils/context-helpers.d.cts.map +1 -1
- package/dist/plugin-utils/context-helpers.d.mts +4 -4
- package/dist/plugin-utils/context-helpers.d.mts.map +1 -1
- package/dist/plugin-utils/context-helpers.mjs +214 -1
- package/dist/plugin-utils/context-helpers.mjs.map +1 -1
- package/dist/plugin-utils/deepkit.cjs +70 -1
- package/dist/plugin-utils/deepkit.cjs.map +1 -0
- package/dist/plugin-utils/deepkit.d.cts +5 -5
- package/dist/plugin-utils/deepkit.d.cts.map +1 -1
- package/dist/plugin-utils/deepkit.d.mts +5 -5
- package/dist/plugin-utils/deepkit.d.mts.map +1 -1
- package/dist/plugin-utils/deepkit.mjs +68 -1
- package/dist/plugin-utils/deepkit.mjs.map +1 -1
- package/dist/plugin-utils/description-helpers.cjs +112 -2
- package/dist/plugin-utils/description-helpers.cjs.map +1 -0
- package/dist/plugin-utils/description-helpers.d.cts.map +1 -1
- package/dist/plugin-utils/description-helpers.d.mts.map +1 -1
- package/dist/plugin-utils/description-helpers.mjs +107 -2
- package/dist/plugin-utils/description-helpers.mjs.map +1 -1
- package/dist/plugin-utils/get-command-tree.cjs +118 -1
- package/dist/plugin-utils/get-command-tree.cjs.map +1 -0
- package/dist/plugin-utils/get-command-tree.d.cts.map +1 -1
- package/dist/plugin-utils/get-command-tree.d.mts.map +1 -1
- package/dist/plugin-utils/get-command-tree.mjs +114 -1
- package/dist/plugin-utils/get-command-tree.mjs.map +1 -1
- package/dist/plugin-utils/index.cjs +39 -1
- package/dist/plugin-utils/index.d.cts +2 -2
- package/dist/plugin-utils/index.d.mts +2 -2
- package/dist/plugin-utils/index.mjs +10 -1
- package/dist/plugin-utils/reflect.cjs +52 -1
- package/dist/plugin-utils/reflect.cjs.map +1 -0
- package/dist/plugin-utils/reflect.d.cts.map +1 -1
- package/dist/plugin-utils/reflect.d.mts.map +1 -1
- package/dist/plugin-utils/reflect.mjs +50 -1
- package/dist/plugin-utils/reflect.mjs.map +1 -1
- package/dist/plugin-utils/traverse-command-tree.cjs +65 -1
- package/dist/plugin-utils/traverse-command-tree.cjs.map +1 -0
- package/dist/plugin-utils/traverse-command-tree.d.cts.map +1 -1
- package/dist/plugin-utils/traverse-command-tree.d.mts.map +1 -1
- package/dist/plugin-utils/traverse-command-tree.mjs +62 -1
- package/dist/plugin-utils/traverse-command-tree.mjs.map +1 -1
- package/dist/plugin-utils/type-checks.cjs +222 -1
- package/dist/plugin-utils/type-checks.cjs.map +1 -0
- package/dist/plugin-utils/type-checks.d.cts +5 -5
- package/dist/plugin-utils/type-checks.d.cts.map +1 -1
- package/dist/plugin-utils/type-checks.d.mts +5 -5
- package/dist/plugin-utils/type-checks.d.mts.map +1 -1
- package/dist/plugin-utils/type-checks.mjs +217 -1
- package/dist/plugin-utils/type-checks.mjs.map +1 -1
- package/dist/plugin.cjs +495 -4
- package/dist/plugin.cjs.map +1 -0
- package/dist/plugin.d.cts.map +1 -1
- package/dist/plugin.d.mts.map +1 -1
- package/dist/plugin.mjs +488 -4
- package/dist/plugin.mjs.map +1 -1
- package/dist/resolver/helpers.cjs +182 -1
- package/dist/resolver/helpers.cjs.map +1 -0
- package/dist/resolver/helpers.mjs +178 -1
- package/dist/resolver/helpers.mjs.map +1 -1
- package/dist/resolver/resolve.cjs +479 -1
- package/dist/resolver/resolve.cjs.map +1 -0
- package/dist/resolver/resolve.mjs +478 -1
- package/dist/resolver/resolve.mjs.map +1 -1
- package/dist/types/command.cjs +402 -1
- package/dist/types/command.cjs.map +1 -0
- package/dist/types/command.d.cts +61 -119
- package/dist/types/command.d.cts.map +1 -1
- package/dist/types/command.d.mts +61 -119
- package/dist/types/command.d.mts.map +1 -1
- package/dist/types/command.mjs +367 -1
- package/dist/types/command.mjs.map +1 -1
- package/dist/types/config.cjs +175 -1
- package/dist/types/config.cjs.map +1 -0
- package/dist/types/config.d.cts +19 -12
- package/dist/types/config.d.cts.map +1 -1
- package/dist/types/config.d.mts +19 -12
- package/dist/types/config.d.mts.map +1 -1
- package/dist/types/config.mjs +163 -1
- package/dist/types/config.mjs.map +1 -1
- package/dist/types/context.cjs +45 -1
- package/dist/types/context.cjs.map +1 -0
- package/dist/types/context.d.cts +3 -2
- package/dist/types/context.d.cts.map +1 -1
- package/dist/types/context.d.mts +3 -2
- package/dist/types/context.d.mts.map +1 -1
- package/dist/types/context.mjs +40 -1
- package/dist/types/context.mjs.map +1 -1
- package/dist/types/env.cjs +53 -1
- package/dist/types/env.cjs.map +1 -0
- package/dist/types/env.d.cts +1 -1
- package/dist/types/env.d.cts.map +1 -1
- package/dist/types/env.d.mts +1 -1
- package/dist/types/env.d.mts.map +1 -1
- package/dist/types/env.mjs +50 -1
- package/dist/types/env.mjs.map +1 -1
- package/dist/types/index.cjs +53 -1
- package/dist/types/index.d.cts +4 -4
- package/dist/types/index.d.mts +4 -4
- package/dist/types/index.mjs +6 -1
- package/dist/types/options.cjs +13 -1
- package/dist/types/options.cjs.map +1 -0
- package/dist/types/options.d.cts.map +1 -1
- package/dist/types/options.d.mts.map +1 -1
- package/dist/types/options.mjs +10 -1
- package/dist/types/options.mjs.map +1 -1
- package/package.json +43 -34
- package/dist/resolver/deepkit.cjs +0 -1
- package/dist/resolver/deepkit.mjs +0 -2
- package/dist/resolver/deepkit.mjs.map +0 -1
- package/dist/resolver/module.cjs +0 -1
- package/dist/resolver/module.mjs +0 -2
- package/dist/resolver/module.mjs.map +0 -1
package/dist/types/env.mjs
CHANGED
|
@@ -1,2 +1,51 @@
|
|
|
1
|
-
|
|
1
|
+
//#region src/types/env.ts
|
|
2
|
+
const __ΩShellShockEnv = [
|
|
3
|
+
"PATHEXT",
|
|
4
|
+
"The system PATHEXT variable, used to determine which file extensions are considered executable on Windows.",
|
|
5
|
+
{
|
|
6
|
+
hidden: true,
|
|
7
|
+
internal: true,
|
|
8
|
+
runtime: true
|
|
9
|
+
},
|
|
10
|
+
"PATH",
|
|
11
|
+
"The system PATH variable, used to locate executable files.",
|
|
12
|
+
{
|
|
13
|
+
hidden: true,
|
|
14
|
+
internal: true,
|
|
15
|
+
runtime: true
|
|
16
|
+
},
|
|
17
|
+
"npm_config_user_agent",
|
|
18
|
+
"The npm user agent string, which can be used to detect if the environment is running within an npm script.",
|
|
19
|
+
{
|
|
20
|
+
hidden: true,
|
|
21
|
+
internal: true,
|
|
22
|
+
runtime: true
|
|
23
|
+
},
|
|
24
|
+
"npm_config_fund",
|
|
25
|
+
"The npm_config_fund environment variable, which can be used to control npm's funding behavior.",
|
|
26
|
+
{
|
|
27
|
+
hidden: true,
|
|
28
|
+
internal: true,
|
|
29
|
+
runtime: true
|
|
30
|
+
},
|
|
31
|
+
"npm_execpath",
|
|
32
|
+
"The npm execution path, which can be used to determine the location of the npm executable.",
|
|
33
|
+
{
|
|
34
|
+
hidden: true,
|
|
35
|
+
internal: true,
|
|
36
|
+
runtime: true
|
|
37
|
+
},
|
|
38
|
+
"COMSPEC",
|
|
39
|
+
"The COMSPEC environment variable, which specifies the command-line interpreter to use on Windows.",
|
|
40
|
+
{
|
|
41
|
+
hidden: true,
|
|
42
|
+
internal: true,
|
|
43
|
+
runtime: true
|
|
44
|
+
},
|
|
45
|
+
"ShellShockEnv",
|
|
46
|
+
"P!&4!8?\"z#&4$8?%z&&4'8?(z)&4*8?+z,&4-8?.z/&408?1z2Mw3y"
|
|
47
|
+
];
|
|
48
|
+
|
|
49
|
+
//#endregion
|
|
50
|
+
export { __ΩShellShockEnv };
|
|
2
51
|
//# sourceMappingURL=env.mjs.map
|
package/dist/types/env.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"env.mjs","names":[],"sources":[
|
|
1
|
+
{"version":3,"file":"env.mjs","names":[],"sources":[],"mappings":""}
|
package/dist/types/index.cjs
CHANGED
|
@@ -1 +1,53 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value
|
|
1
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
2
|
+
const require_types_options = require('./options.cjs');
|
|
3
|
+
const require_types_command = require('./command.cjs');
|
|
4
|
+
const require_types_config = require('./config.cjs');
|
|
5
|
+
const require_types_context = require('./context.cjs');
|
|
6
|
+
|
|
7
|
+
exports.__ΩAsCommandParameterConfig = require_types_command.__ΩAsCommandParameterConfig;
|
|
8
|
+
exports.__ΩBaseBooleanCommandParameter = require_types_command.__ΩBaseBooleanCommandParameter;
|
|
9
|
+
exports.__ΩBaseCommandOptions = require_types_options.__ΩBaseCommandOptions;
|
|
10
|
+
exports.__ΩBaseCommandParameter = require_types_command.__ΩBaseCommandParameter;
|
|
11
|
+
exports.__ΩBaseNumberCommandParameter = require_types_command.__ΩBaseNumberCommandParameter;
|
|
12
|
+
exports.__ΩBaseSingleCommandParameter = require_types_command.__ΩBaseSingleCommandParameter;
|
|
13
|
+
exports.__ΩBaseStringCommandParameter = require_types_command.__ΩBaseStringCommandParameter;
|
|
14
|
+
exports.__ΩBaseVariadicCommandParameter = require_types_command.__ΩBaseVariadicCommandParameter;
|
|
15
|
+
exports.__ΩBooleanCommandOption = require_types_command.__ΩBooleanCommandOption;
|
|
16
|
+
exports.__ΩBooleanCommandParameter = require_types_command.__ΩBooleanCommandParameter;
|
|
17
|
+
exports.__ΩBooleanCommandParameterConfig = require_types_command.__ΩBooleanCommandParameterConfig;
|
|
18
|
+
exports.__ΩCommandArgument = require_types_command.__ΩCommandArgument;
|
|
19
|
+
exports.__ΩCommandArgumentConfig = require_types_command.__ΩCommandArgumentConfig;
|
|
20
|
+
exports.__ΩCommandBase = require_types_command.__ΩCommandBase;
|
|
21
|
+
exports.__ΩCommandConfig = require_types_command.__ΩCommandConfig;
|
|
22
|
+
exports.__ΩCommandMetadata = require_types_command.__ΩCommandMetadata;
|
|
23
|
+
exports.__ΩCommandModule = require_types_command.__ΩCommandModule;
|
|
24
|
+
exports.__ΩCommandOption = require_types_command.__ΩCommandOption;
|
|
25
|
+
exports.__ΩCommandOptionConfig = require_types_command.__ΩCommandOptionConfig;
|
|
26
|
+
exports.__ΩCommandParameter = require_types_command.__ΩCommandParameter;
|
|
27
|
+
exports.__ΩCommandParameterConfig = require_types_command.__ΩCommandParameterConfig;
|
|
28
|
+
exports.__ΩCommandParameterType = require_types_command.__ΩCommandParameterType;
|
|
29
|
+
exports.__ΩCommandTree = require_types_command.__ΩCommandTree;
|
|
30
|
+
exports.__ΩContext = require_types_context.__ΩContext;
|
|
31
|
+
exports.__ΩEngineOptions = require_types_config.__ΩEngineOptions;
|
|
32
|
+
exports.__ΩExecutionContext = require_types_context.__ΩExecutionContext;
|
|
33
|
+
exports.__ΩNumberCommandParameter = require_types_command.__ΩNumberCommandParameter;
|
|
34
|
+
exports.__ΩNumberCommandParameterConfig = require_types_command.__ΩNumberCommandParameterConfig;
|
|
35
|
+
exports.__ΩOptions = require_types_config.__ΩOptions;
|
|
36
|
+
exports.__ΩOutputConfig = require_types_config.__ΩOutputConfig;
|
|
37
|
+
exports.__ΩReferenceOptions = require_types_config.__ΩReferenceOptions;
|
|
38
|
+
exports.__ΩResolvedConfig = require_types_config.__ΩResolvedConfig;
|
|
39
|
+
exports.__ΩSerializedCommandTree = require_types_command.__ΩSerializedCommandTree;
|
|
40
|
+
exports.__ΩSingleBooleanCommandParameter = require_types_command.__ΩSingleBooleanCommandParameter;
|
|
41
|
+
exports.__ΩSingleNumberCommandParameter = require_types_command.__ΩSingleNumberCommandParameter;
|
|
42
|
+
exports.__ΩSingleStringCommandParameter = require_types_command.__ΩSingleStringCommandParameter;
|
|
43
|
+
exports.__ΩStringCommandParameter = require_types_command.__ΩStringCommandParameter;
|
|
44
|
+
exports.__ΩStringCommandParameterConfig = require_types_command.__ΩStringCommandParameterConfig;
|
|
45
|
+
exports.__ΩUnresolvedContext = require_types_context.__ΩUnresolvedContext;
|
|
46
|
+
exports.__ΩUserConfig = require_types_config.__ΩUserConfig;
|
|
47
|
+
exports.__ΩUserConfigExport = require_types_config.__ΩUserConfigExport;
|
|
48
|
+
exports.__ΩUserConfigFn = require_types_config.__ΩUserConfigFn;
|
|
49
|
+
exports.__ΩUserConfigFnObject = require_types_config.__ΩUserConfigFnObject;
|
|
50
|
+
exports.__ΩUserConfigFnPromise = require_types_config.__ΩUserConfigFnPromise;
|
|
51
|
+
exports.__ΩVariadicBooleanCommandParameter = require_types_command.__ΩVariadicBooleanCommandParameter;
|
|
52
|
+
exports.__ΩVariadicNumberCommandParameter = require_types_command.__ΩVariadicNumberCommandParameter;
|
|
53
|
+
exports.__ΩVariadicStringCommandParameter = require_types_command.__ΩVariadicStringCommandParameter;
|
package/dist/types/index.d.cts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { AsCommandParameterConfig, BaseBooleanCommandParameter, BaseCommandParameter, BaseNumberCommandParameter, BaseSingleCommandParameter, BaseStringCommandParameter, BaseVariadicCommandParameter, BooleanCommandOption, BooleanCommandParameter, BooleanCommandParameterConfig, CommandArgument, CommandArgumentConfig, CommandBase, CommandConfig, CommandMetadata, CommandModule, CommandOption, CommandOptionConfig, CommandParameter, CommandParameterConfig,
|
|
2
|
-
import { Context, UnresolvedContext } from "./context.cjs";
|
|
3
|
-
import { Options, OutputConfig, ReferenceOptions, ResolvedConfig, UserConfig } from "./config.cjs";
|
|
1
|
+
import { AsCommandParameterConfig, BaseBooleanCommandParameter, BaseCommandParameter, BaseNumberCommandParameter, BaseSingleCommandParameter, BaseStringCommandParameter, BaseVariadicCommandParameter, BooleanCommandOption, BooleanCommandParameter, BooleanCommandParameterConfig, CommandArgument, CommandArgumentConfig, CommandBase, CommandConfig, CommandMetadata, CommandModule, CommandOption, CommandOptionConfig, CommandParameter, CommandParameterConfig, CommandParameterType, CommandTree, NumberCommandParameter, NumberCommandParameterConfig, SerializedCommandTree, SingleBooleanCommandParameter, SingleNumberCommandParameter, SingleStringCommandParameter, StringCommandParameter, StringCommandParameterConfig, VariadicBooleanCommandParameter, VariadicNumberCommandParameter, VariadicStringCommandParameter } from "./command.cjs";
|
|
2
|
+
import { Context, ExecutionContext, UnresolvedContext } from "./context.cjs";
|
|
3
|
+
import { EngineOptions, Options, OutputConfig, ReferenceOptions, ResolvedConfig, UserConfig, UserConfigExport, UserConfigFn, UserConfigFnObject, UserConfigFnPromise } from "./config.cjs";
|
|
4
4
|
import { BaseCommandOptions } from "./options.cjs";
|
|
5
|
-
export { AsCommandParameterConfig, BaseBooleanCommandParameter, BaseCommandOptions, BaseCommandParameter, BaseNumberCommandParameter, BaseSingleCommandParameter, BaseStringCommandParameter, BaseVariadicCommandParameter, BooleanCommandOption, BooleanCommandParameter, BooleanCommandParameterConfig, CommandArgument, CommandArgumentConfig, CommandBase, CommandConfig, CommandMetadata, CommandModule, CommandOption, CommandOptionConfig, CommandParameter, CommandParameterConfig,
|
|
5
|
+
export { AsCommandParameterConfig, BaseBooleanCommandParameter, BaseCommandOptions, BaseCommandParameter, BaseNumberCommandParameter, BaseSingleCommandParameter, BaseStringCommandParameter, BaseVariadicCommandParameter, BooleanCommandOption, BooleanCommandParameter, BooleanCommandParameterConfig, CommandArgument, CommandArgumentConfig, CommandBase, CommandConfig, CommandMetadata, CommandModule, CommandOption, CommandOptionConfig, CommandParameter, CommandParameterConfig, CommandParameterType, CommandTree, Context, EngineOptions, ExecutionContext, NumberCommandParameter, NumberCommandParameterConfig, Options, OutputConfig, ReferenceOptions, ResolvedConfig, SerializedCommandTree, SingleBooleanCommandParameter, SingleNumberCommandParameter, SingleStringCommandParameter, StringCommandParameter, StringCommandParameterConfig, UnresolvedContext, UserConfig, UserConfigExport, UserConfigFn, UserConfigFnObject, UserConfigFnPromise, VariadicBooleanCommandParameter, VariadicNumberCommandParameter, VariadicStringCommandParameter };
|
package/dist/types/index.d.mts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { AsCommandParameterConfig, BaseBooleanCommandParameter, BaseCommandParameter, BaseNumberCommandParameter, BaseSingleCommandParameter, BaseStringCommandParameter, BaseVariadicCommandParameter, BooleanCommandOption, BooleanCommandParameter, BooleanCommandParameterConfig, CommandArgument, CommandArgumentConfig, CommandBase, CommandConfig, CommandMetadata, CommandModule, CommandOption, CommandOptionConfig, CommandParameter, CommandParameterConfig,
|
|
2
|
-
import { Context, UnresolvedContext } from "./context.mjs";
|
|
3
|
-
import { Options, OutputConfig, ReferenceOptions, ResolvedConfig, UserConfig } from "./config.mjs";
|
|
1
|
+
import { AsCommandParameterConfig, BaseBooleanCommandParameter, BaseCommandParameter, BaseNumberCommandParameter, BaseSingleCommandParameter, BaseStringCommandParameter, BaseVariadicCommandParameter, BooleanCommandOption, BooleanCommandParameter, BooleanCommandParameterConfig, CommandArgument, CommandArgumentConfig, CommandBase, CommandConfig, CommandMetadata, CommandModule, CommandOption, CommandOptionConfig, CommandParameter, CommandParameterConfig, CommandParameterType, CommandTree, NumberCommandParameter, NumberCommandParameterConfig, SerializedCommandTree, SingleBooleanCommandParameter, SingleNumberCommandParameter, SingleStringCommandParameter, StringCommandParameter, StringCommandParameterConfig, VariadicBooleanCommandParameter, VariadicNumberCommandParameter, VariadicStringCommandParameter } from "./command.mjs";
|
|
2
|
+
import { Context, ExecutionContext, UnresolvedContext } from "./context.mjs";
|
|
3
|
+
import { EngineOptions, Options, OutputConfig, ReferenceOptions, ResolvedConfig, UserConfig, UserConfigExport, UserConfigFn, UserConfigFnObject, UserConfigFnPromise } from "./config.mjs";
|
|
4
4
|
import { BaseCommandOptions } from "./options.mjs";
|
|
5
|
-
export { AsCommandParameterConfig, BaseBooleanCommandParameter, BaseCommandOptions, BaseCommandParameter, BaseNumberCommandParameter, BaseSingleCommandParameter, BaseStringCommandParameter, BaseVariadicCommandParameter, BooleanCommandOption, BooleanCommandParameter, BooleanCommandParameterConfig, CommandArgument, CommandArgumentConfig, CommandBase, CommandConfig, CommandMetadata, CommandModule, CommandOption, CommandOptionConfig, CommandParameter, CommandParameterConfig,
|
|
5
|
+
export { AsCommandParameterConfig, BaseBooleanCommandParameter, BaseCommandOptions, BaseCommandParameter, BaseNumberCommandParameter, BaseSingleCommandParameter, BaseStringCommandParameter, BaseVariadicCommandParameter, BooleanCommandOption, BooleanCommandParameter, BooleanCommandParameterConfig, CommandArgument, CommandArgumentConfig, CommandBase, CommandConfig, CommandMetadata, CommandModule, CommandOption, CommandOptionConfig, CommandParameter, CommandParameterConfig, CommandParameterType, CommandTree, Context, EngineOptions, ExecutionContext, NumberCommandParameter, NumberCommandParameterConfig, Options, OutputConfig, ReferenceOptions, ResolvedConfig, SerializedCommandTree, SingleBooleanCommandParameter, SingleNumberCommandParameter, SingleStringCommandParameter, StringCommandParameter, StringCommandParameterConfig, UnresolvedContext, UserConfig, UserConfigExport, UserConfigFn, UserConfigFnObject, UserConfigFnPromise, VariadicBooleanCommandParameter, VariadicNumberCommandParameter, VariadicStringCommandParameter };
|
package/dist/types/index.mjs
CHANGED
|
@@ -1 +1,6 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { __ΩBaseCommandOptions } from "./options.mjs";
|
|
2
|
+
import { __ΩAsCommandParameterConfig, __ΩBaseBooleanCommandParameter, __ΩBaseCommandParameter, __ΩBaseNumberCommandParameter, __ΩBaseSingleCommandParameter, __ΩBaseStringCommandParameter, __ΩBaseVariadicCommandParameter, __ΩBooleanCommandOption, __ΩBooleanCommandParameter, __ΩBooleanCommandParameterConfig, __ΩCommandArgument, __ΩCommandArgumentConfig, __ΩCommandBase, __ΩCommandConfig, __ΩCommandMetadata, __ΩCommandModule, __ΩCommandOption, __ΩCommandOptionConfig, __ΩCommandParameter, __ΩCommandParameterConfig, __ΩCommandParameterType, __ΩCommandTree, __ΩNumberCommandParameter, __ΩNumberCommandParameterConfig, __ΩSerializedCommandTree, __ΩSingleBooleanCommandParameter, __ΩSingleNumberCommandParameter, __ΩSingleStringCommandParameter, __ΩStringCommandParameter, __ΩStringCommandParameterConfig, __ΩVariadicBooleanCommandParameter, __ΩVariadicNumberCommandParameter, __ΩVariadicStringCommandParameter } from "./command.mjs";
|
|
3
|
+
import { __ΩEngineOptions, __ΩOptions, __ΩOutputConfig, __ΩReferenceOptions, __ΩResolvedConfig, __ΩUserConfig, __ΩUserConfigExport, __ΩUserConfigFn, __ΩUserConfigFnObject, __ΩUserConfigFnPromise } from "./config.mjs";
|
|
4
|
+
import { __ΩContext, __ΩExecutionContext, __ΩUnresolvedContext } from "./context.mjs";
|
|
5
|
+
|
|
6
|
+
export { __ΩAsCommandParameterConfig, __ΩBaseBooleanCommandParameter, __ΩBaseCommandOptions, __ΩBaseCommandParameter, __ΩBaseNumberCommandParameter, __ΩBaseSingleCommandParameter, __ΩBaseStringCommandParameter, __ΩBaseVariadicCommandParameter, __ΩBooleanCommandOption, __ΩBooleanCommandParameter, __ΩBooleanCommandParameterConfig, __ΩCommandArgument, __ΩCommandArgumentConfig, __ΩCommandBase, __ΩCommandConfig, __ΩCommandMetadata, __ΩCommandModule, __ΩCommandOption, __ΩCommandOptionConfig, __ΩCommandParameter, __ΩCommandParameterConfig, __ΩCommandParameterType, __ΩCommandTree, __ΩContext, __ΩEngineOptions, __ΩExecutionContext, __ΩNumberCommandParameter, __ΩNumberCommandParameterConfig, __ΩOptions, __ΩOutputConfig, __ΩReferenceOptions, __ΩResolvedConfig, __ΩSerializedCommandTree, __ΩSingleBooleanCommandParameter, __ΩSingleNumberCommandParameter, __ΩSingleStringCommandParameter, __ΩStringCommandParameter, __ΩStringCommandParameterConfig, __ΩUnresolvedContext, __ΩUserConfig, __ΩUserConfigExport, __ΩUserConfigFn, __ΩUserConfigFnObject, __ΩUserConfigFnPromise, __ΩVariadicBooleanCommandParameter, __ΩVariadicNumberCommandParameter, __ΩVariadicStringCommandParameter };
|
package/dist/types/options.cjs
CHANGED
|
@@ -1 +1,13 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value
|
|
1
|
+
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
2
|
+
|
|
3
|
+
//#region src/types/options.ts
|
|
4
|
+
const __ΩBaseCommandOptions = [
|
|
5
|
+
"help",
|
|
6
|
+
"version",
|
|
7
|
+
"BaseCommandOptions",
|
|
8
|
+
"P)4!)4\"Mw#y"
|
|
9
|
+
];
|
|
10
|
+
|
|
11
|
+
//#endregion
|
|
12
|
+
exports.__ΩBaseCommandOptions = __ΩBaseCommandOptions;
|
|
13
|
+
//# sourceMappingURL=options.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"options.cjs","names":[],"sources":[],"mappings":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"options.d.cts","names":[],"sources":["../../src/types/options.ts"],"mappings":";UAkBiB,kBAAA;EACf,IAAA;EACA,
|
|
1
|
+
{"version":3,"file":"options.d.cts","names":[],"sources":["../../src/types/options.ts"],"mappings":";UAkBiB,kBAAA;EACf,IAAA;EACA,OAAO;AAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"options.d.mts","names":[],"sources":["../../src/types/options.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"options.d.mts","names":[],"sources":["../../src/types/options.ts"],"mappings":""}
|
package/dist/types/options.mjs
CHANGED
|
@@ -1,2 +1,11 @@
|
|
|
1
|
-
|
|
1
|
+
//#region src/types/options.ts
|
|
2
|
+
const __ΩBaseCommandOptions = [
|
|
3
|
+
"help",
|
|
4
|
+
"version",
|
|
5
|
+
"BaseCommandOptions",
|
|
6
|
+
"P)4!)4\"Mw#y"
|
|
7
|
+
];
|
|
8
|
+
|
|
9
|
+
//#endregion
|
|
10
|
+
export { __ΩBaseCommandOptions };
|
|
2
11
|
//# sourceMappingURL=options.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"options.mjs","names":[],"sources":[
|
|
1
|
+
{"version":3,"file":"options.mjs","names":[],"sources":[],"mappings":""}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@shell-shock/core",
|
|
3
|
-
"version": "0.17.
|
|
3
|
+
"version": "0.17.11",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "A package containing the core Shell Shock functionality used to build and manage a command-line application.",
|
|
6
6
|
"keywords": ["shell-shock", "powerlines", "storm-software"],
|
|
@@ -241,6 +241,20 @@
|
|
|
241
241
|
"default": "./dist/contexts/options.mjs"
|
|
242
242
|
}
|
|
243
243
|
},
|
|
244
|
+
"./engine": {
|
|
245
|
+
"require": {
|
|
246
|
+
"types": "./dist/engine.d.cts",
|
|
247
|
+
"default": "./dist/engine.cjs"
|
|
248
|
+
},
|
|
249
|
+
"import": {
|
|
250
|
+
"types": "./dist/engine.d.mts",
|
|
251
|
+
"default": "./dist/engine.mjs"
|
|
252
|
+
},
|
|
253
|
+
"default": {
|
|
254
|
+
"types": "./dist/engine.d.mts",
|
|
255
|
+
"default": "./dist/engine.mjs"
|
|
256
|
+
}
|
|
257
|
+
},
|
|
244
258
|
"./package.json": "./package.json",
|
|
245
259
|
"./plugin": {
|
|
246
260
|
"require": {
|
|
@@ -359,44 +373,39 @@
|
|
|
359
373
|
"module": "./dist/index.mjs",
|
|
360
374
|
"types": "./dist/index.d.cts",
|
|
361
375
|
"typings": "dist/index.d.mts",
|
|
362
|
-
"files": ["dist
|
|
376
|
+
"files": ["dist"],
|
|
363
377
|
"dependencies": {
|
|
364
|
-
"@alloy-js/core": "0.23.
|
|
365
|
-
"@alloy-js/markdown": "0.23.0
|
|
366
|
-
"@alloy-js/typescript": "0.23.0
|
|
367
|
-
"@powerlines/
|
|
368
|
-
"@powerlines/
|
|
369
|
-
"@powerlines/
|
|
370
|
-
"@powerlines/plugin-
|
|
371
|
-
"@powerlines/plugin-
|
|
372
|
-
"@powerlines/plugin-
|
|
373
|
-
"@
|
|
374
|
-
"@
|
|
375
|
-
"@
|
|
376
|
-
"@stryke/
|
|
377
|
-
"@stryke/
|
|
378
|
-
"@stryke/
|
|
379
|
-
"@stryke/
|
|
380
|
-
"@stryke/
|
|
381
|
-
"@stryke/
|
|
382
|
-
"@stryke/
|
|
383
|
-
"@stryke/
|
|
384
|
-
"@stryke/
|
|
378
|
+
"@alloy-js/core": "^0.23.1",
|
|
379
|
+
"@alloy-js/markdown": "^0.23.0",
|
|
380
|
+
"@alloy-js/typescript": "^0.23.0",
|
|
381
|
+
"@powerlines/core": "^0.48.46",
|
|
382
|
+
"@powerlines/deepkit": "^0.9.78",
|
|
383
|
+
"@powerlines/engine": "^0.49.48",
|
|
384
|
+
"@powerlines/plugin-alloy": "^0.26.217",
|
|
385
|
+
"@powerlines/plugin-automd": "^0.1.585",
|
|
386
|
+
"@powerlines/plugin-deepkit": "^0.11.467",
|
|
387
|
+
"@powerlines/plugin-nodejs": "^0.1.529",
|
|
388
|
+
"@powerlines/plugin-tsdown": "^0.1.525",
|
|
389
|
+
"@powerlines/schema": "^0.11.106",
|
|
390
|
+
"@stryke/cli": "^0.13.57",
|
|
391
|
+
"@stryke/convert": "^0.7.15",
|
|
392
|
+
"@stryke/fs": "^0.33.85",
|
|
393
|
+
"@stryke/helpers": "^0.10.24",
|
|
394
|
+
"@stryke/json": "^0.15.8",
|
|
395
|
+
"@stryke/path": "^0.29.11",
|
|
396
|
+
"@stryke/string-format": "^0.17.26",
|
|
397
|
+
"@stryke/type-checks": "^0.6.17",
|
|
398
|
+
"@stryke/types": "^0.12.12",
|
|
385
399
|
"automd": "^0.4.3",
|
|
386
400
|
"defu": "^6.1.7",
|
|
387
|
-
"
|
|
388
|
-
"
|
|
389
|
-
"tsdown": "^0.21.10"
|
|
401
|
+
"powerlines": "^0.47.124",
|
|
402
|
+
"tsdown": "^0.22.1"
|
|
390
403
|
},
|
|
391
404
|
"devDependencies": {
|
|
392
|
-
"@powerlines/plugin-plugin": "^0.12.
|
|
393
|
-
"@types/
|
|
394
|
-
"
|
|
395
|
-
"typescript": "^6.0.3",
|
|
396
|
-
"zod": "^4.3.6"
|
|
405
|
+
"@powerlines/plugin-plugin": "^0.12.536",
|
|
406
|
+
"@types/node": "^25.9.1",
|
|
407
|
+
"typescript": "^6.0.3"
|
|
397
408
|
},
|
|
398
|
-
"peerDependencies": { "zod": "^3.25.0 || ^4.0.0" },
|
|
399
|
-
"peerDependenciesMeta": { "zod": { "optional": true } },
|
|
400
409
|
"publishConfig": { "access": "public" },
|
|
401
|
-
"gitHead": "
|
|
410
|
+
"gitHead": "9401c1de122d800040306fc89ad1835930c1a826"
|
|
402
411
|
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
require(`../_virtual/_rolldown/runtime.cjs`);const e=require(`../types/command.cjs`),t=require(`./helpers.cjs`);let n=require(`@powerlines/deepkit/vendor/type`),r=require(`@stryke/type-checks/is-set-object`),i=require(`@stryke/type-checks/is-bigint`),a=require(`@stryke/type-checks/is-number`),o=require(`@stryke/type-checks/is-regexp`);function s(e,t){return e.__type=t,e}function c(t){let o=!((0,r.isSetObject)(t)&&`kind`in t),s=o?t:t.kind;return s===n.ReflectionKind.string?e.CommandParameterKinds.string:s===n.ReflectionKind.number||s===n.ReflectionKind.bigint||!o&&t.kind===n.ReflectionKind.literal&&((0,a.isNumber)(t.literal)||(0,i.isBigInt)(t.literal))?e.CommandParameterKinds.number:s===n.ReflectionKind.boolean?e.CommandParameterKinds.boolean:e.CommandParameterKinds.string}c.__type=[`type`,`CommandParameterKind`,`extractCommandParameterKind`,`PP!!J2!"w"/#`];function l(r,l){let u=l.getType(),d=r.output.options[l.getNameAsString()]??{},f={name:l.getNameAsString(),alias:l.getTags().alias??[],title:l.getTags().title?.trim(),description:l.getDescription(),kind:c(u),optional:l.isOptional(),default:l.getDefaultValue(),variadic:l.isArray()};if(f.variadic)f.kind=c(u.type.kind);else if(u.kind===n.ReflectionKind.union)f.kind=u.types.every(s(e=>e.kind===n.ReflectionKind.number||e.kind===n.ReflectionKind.literal&&((0,a.isNumber)(e.literal)||(0,i.isBigInt)(e.literal)),[`t`,``,`P"2!"/"`]))?e.CommandParameterKinds.number:e.CommandParameterKinds.string,f.choices=u.types.map(s(e=>e.kind===n.ReflectionKind.literal?(0,a.isNumber)(e.literal)?e.literal:(0,i.isBigInt)(e.literal)?Number(e.literal):(0,o.isRegExp)(e.literal)?e.literal.source:String(e.literal):null,[`t`,``,`P"2!"/"`])).filter(Boolean);else if(u.kind===n.ReflectionKind.literal)f.choices=[(0,a.isNumber)(u.literal)?u.literal:(0,i.isBigInt)(u.literal)?Number(u.literal):(0,o.isRegExp)(u.literal)?u.literal.source:String(u.literal)].filter(Boolean);else if(!d.kind&&u.kind!==n.ReflectionKind.boolean&&u.kind!==n.ReflectionKind.string&&u.kind!==n.ReflectionKind.number)throw Error(`Unsupported type for option "${l.getNameAsString()}" in command "${r.input.command.name}". Only string, number, boolean, string[], number[], or literal[] are supported, received ${(0,n.stringifyType)(u).trim().replaceAll(` | `,`, or `)}.`);return t.mergeCommandParameter(d,f)}l.__type=[`ResolverContext`,`ctx`,`reflection`,`CommandOption`,`resolveCommandOption`,`P"w!2"!2#"w$/%`];function u(r,l,u){let d=u.getType(),f=r.output.args.length>l?r.output.args[l]:{},p={name:u.getName()||u.parameter.name,alias:u.getAlias(),kind:c(d.kind),title:u.getTitle()||u.parameter.tags?.title,description:u.parameter.description,optional:u.isOptional(),default:u.getDefaultValue()||u.parameter.default};if(d.kind===n.ReflectionKind.array)if(d.type.kind===n.ReflectionKind.string||d.type.kind===n.ReflectionKind.number)p.variadic=!0,p.kind=c(d.type.kind);else throw Error(`Unsupported array type for positional argument "${p.name}" in command "${r.input.command.name}". Only string[], number[], or literal[] are supported, received ${(0,n.stringifyType)(d).trim().replaceAll(` | `,`, or `)}.`);else if(d.kind===n.ReflectionKind.union)p.kind=d.types.every(s(e=>e.kind===n.ReflectionKind.number||e.kind===n.ReflectionKind.literal&&((0,a.isNumber)(e.literal)||(0,i.isBigInt)(e.literal)),[`t`,``,`P"2!"/"`]))?e.CommandParameterKinds.number:e.CommandParameterKinds.string,p.choices=d.types.map(s(e=>e.kind===n.ReflectionKind.literal?(0,a.isNumber)(e.literal)?e.literal:(0,i.isBigInt)(e.literal)?Number(e.literal):(0,o.isRegExp)(e.literal)?e.literal.source:String(e.literal):null,[`t`,``,`P"2!"/"`])).filter(Boolean);else if(d.kind===n.ReflectionKind.literal)p.choices=[(0,a.isNumber)(d.literal)?d.literal:(0,i.isBigInt)(d.literal)?Number(d.literal):(0,o.isRegExp)(d.literal)?d.literal.source:String(d.literal)].filter(Boolean);else if(!r.output.args?.length&&d.kind!==n.ReflectionKind.boolean&&d.kind!==n.ReflectionKind.string&&d.kind!==n.ReflectionKind.number)throw Error(`Unsupported type for positional argument "${p.name}" in command "${r.input.command.name}". Only string, number, boolean, string[], number[], or literal[] are supported, received ${(0,n.stringifyType)(d).trim().replaceAll(` | `,`, or `)}.`);return t.mergeCommandParameter(f,p,{name:`arg${l}`})}u.__type=[`ResolverContext`,`ctx`,`index`,`reflection`,`CommandArgument`,`resolveCommandArgument`,`P"w!2"'2#!2$"w%/&`];function d(e){let{input:t,module:r}=e,i=(0,n.reflect)(r);if(i.kind!==n.ReflectionKind.function)throw Error(`The command entry file "${t.command.entry.input?.file||t.command.path}" does not export a valid function.`);let a=new n.ReflectionFunction(i);e.output.description??=e.input.command.description||a.getDescription()||i.description;let o=a.getParameters();if(o.length>0){let t=o[0]&&(o[0].type.kind===n.ReflectionKind.objectLiteral||o[0].type.kind===n.ReflectionKind.class);if(t){let t=n.ReflectionClass.from(o[0]?.type);for(let n of t.getProperties())e.output.options[n.getNameAsString()]=l(e,n)}e.output.args=(t?o.slice(1):o).map(s((t,n)=>u(e,n,t),[`arg`,`index`,``,`P"2!"2""/#`]))}}d.__type=[`ResolverContext`,`ctx`,`resolveFromBytecode`,`P"w!2""/#`],exports.resolveFromBytecode=d;
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{CommandParameterKinds as e}from"../types/command.mjs";import{mergeCommandParameter as t}from"./helpers.mjs";import{ReflectionClass as n,ReflectionFunction as r,ReflectionKind as i,reflect as a,stringifyType as o}from"@powerlines/deepkit/vendor/type";import{isSetObject as s}from"@stryke/type-checks/is-set-object";import{isBigInt as c}from"@stryke/type-checks/is-bigint";import{isNumber as l}from"@stryke/type-checks/is-number";import{isRegExp as u}from"@stryke/type-checks/is-regexp";function d(e,t){return e.__type=t,e}function f(t){let n=!(s(t)&&`kind`in t),r=n?t:t.kind;return r===i.string?e.string:r===i.number||r===i.bigint||!n&&t.kind===i.literal&&(l(t.literal)||c(t.literal))?e.number:r===i.boolean?e.boolean:e.string}f.__type=[`type`,`CommandParameterKind`,`extractCommandParameterKind`,`PP!!J2!"w"/#`];function p(n,r){let a=r.getType(),s=n.output.options[r.getNameAsString()]??{},p={name:r.getNameAsString(),alias:r.getTags().alias??[],title:r.getTags().title?.trim(),description:r.getDescription(),kind:f(a),optional:r.isOptional(),default:r.getDefaultValue(),variadic:r.isArray()};if(p.variadic)p.kind=f(a.type.kind);else if(a.kind===i.union)p.kind=a.types.every(d(e=>e.kind===i.number||e.kind===i.literal&&(l(e.literal)||c(e.literal)),[`t`,``,`P"2!"/"`]))?e.number:e.string,p.choices=a.types.map(d(e=>e.kind===i.literal?l(e.literal)?e.literal:c(e.literal)?Number(e.literal):u(e.literal)?e.literal.source:String(e.literal):null,[`t`,``,`P"2!"/"`])).filter(Boolean);else if(a.kind===i.literal)p.choices=[l(a.literal)?a.literal:c(a.literal)?Number(a.literal):u(a.literal)?a.literal.source:String(a.literal)].filter(Boolean);else if(!s.kind&&a.kind!==i.boolean&&a.kind!==i.string&&a.kind!==i.number)throw Error(`Unsupported type for option "${r.getNameAsString()}" in command "${n.input.command.name}". Only string, number, boolean, string[], number[], or literal[] are supported, received ${o(a).trim().replaceAll(` | `,`, or `)}.`);return t(s,p)}p.__type=[`ResolverContext`,`ctx`,`reflection`,`CommandOption`,`resolveCommandOption`,`P"w!2"!2#"w$/%`];function m(n,r,a){let s=a.getType(),p=n.output.args.length>r?n.output.args[r]:{},m={name:a.getName()||a.parameter.name,alias:a.getAlias(),kind:f(s.kind),title:a.getTitle()||a.parameter.tags?.title,description:a.parameter.description,optional:a.isOptional(),default:a.getDefaultValue()||a.parameter.default};if(s.kind===i.array)if(s.type.kind===i.string||s.type.kind===i.number)m.variadic=!0,m.kind=f(s.type.kind);else throw Error(`Unsupported array type for positional argument "${m.name}" in command "${n.input.command.name}". Only string[], number[], or literal[] are supported, received ${o(s).trim().replaceAll(` | `,`, or `)}.`);else if(s.kind===i.union)m.kind=s.types.every(d(e=>e.kind===i.number||e.kind===i.literal&&(l(e.literal)||c(e.literal)),[`t`,``,`P"2!"/"`]))?e.number:e.string,m.choices=s.types.map(d(e=>e.kind===i.literal?l(e.literal)?e.literal:c(e.literal)?Number(e.literal):u(e.literal)?e.literal.source:String(e.literal):null,[`t`,``,`P"2!"/"`])).filter(Boolean);else if(s.kind===i.literal)m.choices=[l(s.literal)?s.literal:c(s.literal)?Number(s.literal):u(s.literal)?s.literal.source:String(s.literal)].filter(Boolean);else if(!n.output.args?.length&&s.kind!==i.boolean&&s.kind!==i.string&&s.kind!==i.number)throw Error(`Unsupported type for positional argument "${m.name}" in command "${n.input.command.name}". Only string, number, boolean, string[], number[], or literal[] are supported, received ${o(s).trim().replaceAll(` | `,`, or `)}.`);return t(p,m,{name:`arg${r}`})}m.__type=[`ResolverContext`,`ctx`,`index`,`reflection`,`CommandArgument`,`resolveCommandArgument`,`P"w!2"'2#!2$"w%/&`];function h(e){let{input:t,module:o}=e,s=a(o);if(s.kind!==i.function)throw Error(`The command entry file "${t.command.entry.input?.file||t.command.path}" does not export a valid function.`);let c=new r(s);e.output.description??=e.input.command.description||c.getDescription()||s.description;let l=c.getParameters();if(l.length>0){let t=l[0]&&(l[0].type.kind===i.objectLiteral||l[0].type.kind===i.class);if(t){let t=n.from(l[0]?.type);for(let n of t.getProperties())e.output.options[n.getNameAsString()]=p(e,n)}e.output.args=(t?l.slice(1):l).map(d((t,n)=>m(e,n,t),[`arg`,`index`,``,`P"2!"2""/#`]))}}h.__type=[`ResolverContext`,`ctx`,`resolveFromBytecode`,`P"w!2""/#`];export{h as resolveFromBytecode};
|
|
2
|
-
//# sourceMappingURL=deepkit.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"deepkit.mjs","names":[],"sources":["../../src/resolver/deepkit.ts"],"sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Shell Shock\n\n This code was released as part of the Shell Shock project. Shell Shock\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/shell-shock.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/shell-shock\n Documentation: https://docs.stormsoftware.com/projects/shell-shock\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport type {\n ReflectionParameter,\n ReflectionProperty,\n Type,\n TypeArray\n} from \"@powerlines/deepkit/vendor/type\";\nimport {\n reflect,\n ReflectionClass,\n ReflectionFunction,\n ReflectionKind,\n stringifyType\n} from \"@powerlines/deepkit/vendor/type\";\nimport { isBigInt } from \"@stryke/type-checks/is-bigint\";\nimport { isNumber } from \"@stryke/type-checks/is-number\";\nimport { isRegExp } from \"@stryke/type-checks/is-regexp\";\nimport { isSetObject } from \"@stryke/type-checks/is-set-object\";\nimport type {\n CommandArgument,\n CommandOption,\n CommandParameterKind,\n Context,\n NumberCommandParameter,\n StringCommandParameter\n} from \"../types\";\nimport { CommandParameterKinds } from \"../types\";\nimport { mergeCommandParameter } from \"./helpers\";\nimport type { ResolverContext } from \"./types\";\n\nfunction extractCommandParameterKind(\n type: Type | ReflectionKind\n): CommandParameterKind {\n const isKind = !(isSetObject(type) && \"kind\" in type);\n const kind = !isKind ? type.kind : type;\n if (kind === ReflectionKind.string) {\n return CommandParameterKinds.string;\n } else if (\n kind === ReflectionKind.number ||\n kind === ReflectionKind.bigint ||\n (!isKind &&\n type.kind === ReflectionKind.literal &&\n (isNumber(type.literal) || isBigInt(type.literal)))\n ) {\n return CommandParameterKinds.number;\n } else if (kind === ReflectionKind.boolean) {\n return CommandParameterKinds.boolean;\n } else {\n return CommandParameterKinds.string;\n }\n}\n\nfunction resolveCommandOption(\n ctx: ResolverContext,\n reflection: ReflectionProperty\n): CommandOption {\n const type = reflection.getType();\n const existing = (ctx.output.options[reflection.getNameAsString()] ??\n {}) as Partial<CommandOption>;\n\n const option = {\n name: reflection.getNameAsString(),\n alias: reflection.getTags().alias ?? [],\n title: reflection.getTags().title?.trim(),\n description: reflection.getDescription(),\n kind: extractCommandParameterKind(type),\n optional: reflection.isOptional(),\n default: reflection.getDefaultValue(),\n variadic: reflection.isArray()\n };\n\n if (option.variadic) {\n option.kind = extractCommandParameterKind((type as TypeArray).type.kind);\n } else if (type.kind === ReflectionKind.union) {\n option.kind = type.types.every(\n t =>\n t.kind === ReflectionKind.number ||\n (t.kind === ReflectionKind.literal &&\n (isNumber(t.literal) || isBigInt(t.literal)))\n )\n ? CommandParameterKinds.number\n : CommandParameterKinds.string;\n\n (option as StringCommandParameter | NumberCommandParameter).choices =\n type.types\n .map(t =>\n t.kind === ReflectionKind.literal\n ? isNumber(t.literal)\n ? t.literal\n : isBigInt(t.literal)\n ? Number(t.literal)\n : isRegExp(t.literal)\n ? t.literal.source\n : String(t.literal)\n : null\n )\n .filter(Boolean) as string[] | number[];\n } else if (type.kind === ReflectionKind.literal) {\n (option as StringCommandParameter | NumberCommandParameter).choices = [\n isNumber(type.literal)\n ? type.literal\n : isBigInt(type.literal)\n ? Number(type.literal)\n : isRegExp(type.literal)\n ? type.literal.source\n : String(type.literal)\n ].filter(Boolean) as string[] | number[];\n } else if (\n !existing.kind &&\n type.kind !== ReflectionKind.boolean &&\n type.kind !== ReflectionKind.string &&\n type.kind !== ReflectionKind.number\n ) {\n throw new Error(\n `Unsupported type for option \"${reflection.getNameAsString()}\" in command \"${\n ctx.input.command.name\n }\". Only string, number, boolean, string[], number[], or literal[] are supported, received ${stringifyType(\n type\n )\n .trim()\n .replaceAll(\" | \", \", or \")}.`\n );\n }\n\n return mergeCommandParameter(existing, option) as CommandOption;\n}\n\nfunction resolveCommandArgument(\n ctx: ResolverContext,\n index: number,\n reflection: ReflectionParameter\n): CommandArgument {\n const type = reflection.getType();\n const existing = (\n ctx.output.args.length > index ? ctx.output.args[index] : {}\n ) as Partial<CommandArgument>;\n\n const argument = {\n name: reflection.getName() || reflection.parameter.name,\n alias: reflection.getAlias(),\n kind: extractCommandParameterKind(type.kind),\n title: reflection.getTitle() || reflection.parameter.tags?.title,\n description: reflection.parameter.description,\n optional: reflection.isOptional(),\n default: reflection.getDefaultValue() || reflection.parameter.default\n };\n\n if (type.kind === ReflectionKind.array) {\n if (\n type.type.kind === ReflectionKind.string ||\n type.type.kind === ReflectionKind.number\n ) {\n (argument as StringCommandParameter | NumberCommandParameter).variadic =\n true;\n (argument as StringCommandParameter | NumberCommandParameter).kind =\n extractCommandParameterKind(type.type.kind) as \"string\" | \"number\";\n } else {\n throw new Error(\n `Unsupported array type for positional argument \"${argument.name}\" in command \"${\n ctx.input.command.name\n }\". Only string[], number[], or literal[] are supported, received ${stringifyType(\n type\n )\n .trim()\n .replaceAll(\" | \", \", or \")}.`\n );\n }\n } else if (type.kind === ReflectionKind.union) {\n argument.kind = type.types.every(\n t =>\n t.kind === ReflectionKind.number ||\n (t.kind === ReflectionKind.literal &&\n (isNumber(t.literal) || isBigInt(t.literal)))\n )\n ? CommandParameterKinds.number\n : CommandParameterKinds.string;\n\n (argument as StringCommandParameter | NumberCommandParameter).choices =\n type.types\n .map(t =>\n t.kind === ReflectionKind.literal\n ? isNumber(t.literal)\n ? t.literal\n : isBigInt(t.literal)\n ? Number(t.literal)\n : isRegExp(t.literal)\n ? t.literal.source\n : String(t.literal)\n : null\n )\n .filter(Boolean) as string[] | number[];\n } else if (type.kind === ReflectionKind.literal) {\n (argument as StringCommandParameter | NumberCommandParameter).choices = [\n isNumber(type.literal)\n ? type.literal\n : isBigInt(type.literal)\n ? Number(type.literal)\n : isRegExp(type.literal)\n ? type.literal.source\n : String(type.literal)\n ].filter(Boolean) as string[] | number[];\n } else if (\n !ctx.output.args?.length &&\n type.kind !== ReflectionKind.boolean &&\n type.kind !== ReflectionKind.string &&\n type.kind !== ReflectionKind.number\n ) {\n throw new Error(\n `Unsupported type for positional argument \"${argument.name}\" in command \"${\n ctx.input.command.name\n }\". Only string, number, boolean, string[], number[], or literal[] are supported, received ${stringifyType(\n type\n )\n .trim()\n .replaceAll(\" | \", \", or \")}.`\n );\n }\n\n return mergeCommandParameter(existing, argument, {\n name: `arg${index}`\n }) as CommandArgument;\n}\n\nexport function resolveFromBytecode<TContext extends Context = Context>(\n ctx: ResolverContext<TContext>\n) {\n const { input, module } = ctx;\n\n const type = reflect(module);\n if (type.kind !== ReflectionKind.function) {\n throw new Error(\n `The command entry file \"${\n input.command.entry.input?.file || input.command.path\n }\" does not export a valid function.`\n );\n }\n\n const reflection = new ReflectionFunction(type);\n\n ctx.output.description ??= (ctx.input.command.description ||\n reflection.getDescription() ||\n type.description)!;\n\n const parameters = reflection.getParameters();\n if (parameters.length > 0) {\n const hasOptions =\n parameters[0] &&\n (parameters[0].type.kind === ReflectionKind.objectLiteral ||\n parameters[0].type.kind === ReflectionKind.class);\n if (hasOptions) {\n const optionsReflection = ReflectionClass.from(parameters[0]?.type);\n for (const propertyReflection of optionsReflection.getProperties()) {\n ctx.output.options[propertyReflection.getNameAsString()] =\n resolveCommandOption(ctx, propertyReflection);\n }\n }\n\n ctx.output.args = (hasOptions ? parameters.slice(1) : parameters).map(\n (arg, index) => resolveCommandArgument(ctx, index, arg)\n );\n }\n}\n"],"mappings":"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"}
|
package/dist/resolver/module.cjs
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
require(`../_virtual/_rolldown/runtime.cjs`);const e=require(`../types/command.cjs`),t=require(`../plugin-utils/type-checks.cjs`);require(`../plugin-utils/index.cjs`);let n=require(`@stryke/convert/to-array`),r=require(`@stryke/type-checks/is-set-string`),i=require(`@stryke/type-checks/is-set-object`),a=require(`@stryke/helpers/get-unique`),o=require(`@stryke/json`),s=require(`@stryke/zod`);const c=[`T`,`Partial`,`l+e#!e"!fRb!Pde"!gN#"w"y`];function l(e,t){return e.__type=t,e}function u(t,r,i){let a={name:t,kind:(0,o.isJsonSchema7ArrayType)(i)&&i.items?(0,o.isJsonSchema7NumberType)(i.items)?e.CommandParameterKinds.number:e.CommandParameterKinds.string:(0,o.isJsonSchema7BooleanType)(i)?e.CommandParameterKinds.boolean:(0,o.isJsonSchema7NumberType)(i)?e.CommandParameterKinds.number:e.CommandParameterKinds.string,title:i.title,description:i.description,alias:(0,n.toArray)(i.alias||[]),env:i.env,optional:!r.required?.includes(t),default:i.default};return a.kind===e.CommandParameterKinds.string||a.kind===e.CommandParameterKinds.number?(a.variadic=(0,o.isJsonSchema7ArrayType)(i),a.kind===e.CommandParameterKinds.string&&(a.format=i.format),((0,o.isJsonSchema7StringType)(i)||(0,o.isJsonSchema7NumberType)(i))&&i.enum&&(a.choices=i.enum)):a.kind===e.CommandParameterKinds.boolean&&!a.variadic&&(a.skipAddingNegative=i.skipAddingNegative,a.isNegativeOf=i.isNegativeOf),a}u.__type=[`name`,`parent`,`schema`,()=>c,`CommandOption`,`resolveCommandOption`,`P&2!!2"!2#"w%o$"/&`];function d(t){let r={name:t.name,kind:(0,o.isJsonSchema7ArrayType)(t)&&t.items?(0,o.isJsonSchema7NumberType)(t.items)?e.CommandParameterKinds.number:e.CommandParameterKinds.string:(0,o.isJsonSchema7BooleanType)(t)?e.CommandParameterKinds.boolean:(0,o.isJsonSchema7NumberType)(t)?e.CommandParameterKinds.number:e.CommandParameterKinds.string,title:t.title,description:t.description,alias:(0,n.toArray)(t.alias||[]),env:t.env,default:t.default};return(r.kind===e.CommandParameterKinds.string||r.kind===e.CommandParameterKinds.number)&&(r.variadic=(0,o.isJsonSchema7ArrayType)(t),r.kind===e.CommandParameterKinds.string&&(r.format=t.format),((0,o.isJsonSchema7StringType)(t)||(0,o.isJsonSchema7NumberType)(t))&&t.enum&&(r.choices=t.enum)),r}d.__type=[`schema`,()=>c,`CommandArgument`,`resolveCommandArgument`,`P!2!"w#o""/$`];async function f(e){p(e);let c=e.module?.metadata??{};if((0,r.isSetString)(c.title)&&(e.output.title=c.title),(0,r.isSetString)(c.description)&&(e.output.description=c.description),((0,r.isSetString)(c.alias)||Array.isArray(c.alias)&&c.alias.length>0)&&(e.output.alias=(0,n.toArray)(c.alias)),(0,r.isSetString)(c.icon)&&(e.output.icon=c.icon),(0,r.isSetString)(c.tags)&&(e.output.tags=(0,a.getUnique)(e.output.tags.concat((0,n.toArray)(c.tags)))),(0,i.isSetObject)(e.module?.options))if((0,s.isZod3Type)(e.module.options)||(0,o.isStandardJsonSchema)(e.module.options)||(0,o.isJsonSchema7ObjectType)(e.module.options)){let t;if(t=(0,s.isZod3Type)(e.module.options)?(0,s.extractJsonSchema7)(e.module.options):(0,o.isStandardJsonSchema)(e.module.options)?e.module.options[`~standard`].jsonSchema.input({target:`draft-07`}):e.module.options,!(0,o.isJsonSchema7ObjectType)(t))throw TypeError(`Command options for command at path "${e.input.command.path}" must be defined as a Zod object schema, a standard JSON Schema object, or a JSON Schema object.`);e.output.options=Object.fromEntries(Object.entries(t.properties).map(l(([e,n])=>[e,u(e,t,n)],[`param0`,``,`P"2!"/"`])).concat(Object.entries(e.output.options)))}else if(Object.values(e.module.options).every(t.isCommandParameterConfig))e.output.options=Object.fromEntries(Object.entries(e.module.options).map(l(([e,t])=>[e,{name:e,...t,alias:(0,n.toArray)(t.alias)}],[`param0`,``,`P"2!"/"`])).concat(Object.entries(e.output.options)));else throw TypeError(`Command options for command at path "${e.input.command.path}" must be defined as a record of valid CommandOption objects, a Zod object schema, or a standard JSON Schema object.`);if((0,i.isSetObject)(e.module?.args))if((0,s.isZod3Type)(e.module.args)||(0,o.isStandardJsonSchema)(e.module.args)||(0,o.isJsonSchema7TupleType)(e.module.args)){let t;if(t=(0,s.isZod3Type)(e.module.args)?(0,s.extractJsonSchema7)(e.module.args):(0,o.isStandardJsonSchema)(e.module.args)?e.module.args[`~standard`].jsonSchema.input({target:`draft-07`}):e.module.args,!(0,o.isJsonSchema7TupleType)(t))throw TypeError(`Command arguments for command at path "${e.input.command.path}" must be defined as a Zod tuple schema, a standard JSON Schema tuple object, or a JSON Schema tuple object.`);e.output.args=t.items.map(l(e=>d(e),[`item`,``,`P"2!"/"`]))}else if(Object.values(e.module.args).every(t.isCommandParameterConfig))e.output.args=e.module.args.map(l(e=>({...e,alias:(0,n.toArray)(e.alias)}),[`arg`,``,`P"2!"/"`]));else throw TypeError(`Command arguments for command at path "${e.input.command.path}" must be defined as a record of valid CommandArgument objects, a Zod tuple schema, or a standard JSON Schema tuple object.`)}f.__type=[`ResolverContext`,`ctx`,`resolveFromExports`,`P"w!2""/#`];function p(e){if(!e.module)throw Error(`Command module at path "${e.input.command.path}" is undefined or null. Please ensure the module exports a valid command.`);if(!(0,i.isSetObject)(e.module))throw TypeError(`Command module at path "${e.input.command.path}" is not an object. Please ensure the module exports a valid command.`);if(!(`default`in e.module))throw Error(`Command module at path "${e.input.command.path}" does not appear to be valid. Please ensure the module's default export is a valid command handler function.`)}p.__type=[`ResolverContext`,`ctx`,`validateExports`,`P"w!2""/#`],exports.resolveFromExports=f;
|
package/dist/resolver/module.mjs
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{CommandParameterKinds as e}from"../types/command.mjs";import{isCommandParameterConfig as t}from"../plugin-utils/type-checks.mjs";import"../plugin-utils/index.mjs";import{toArray as n}from"@stryke/convert/to-array";import{isSetString as r}from"@stryke/type-checks/is-set-string";import{isSetObject as i}from"@stryke/type-checks/is-set-object";import{getUnique as a}from"@stryke/helpers/get-unique";import{isJsonSchema7ArrayType as o,isJsonSchema7BooleanType as s,isJsonSchema7NumberType as c,isJsonSchema7ObjectType as l,isJsonSchema7StringType as u,isJsonSchema7TupleType as d,isStandardJsonSchema as f}from"@stryke/json";import{extractJsonSchema7 as p,isZod3Type as m}from"@stryke/zod";const h=[`T`,`Partial`,`l+e#!e"!fRb!Pde"!gN#"w"y`];function g(e,t){return e.__type=t,e}function _(t,r,i){let a={name:t,kind:o(i)&&i.items?c(i.items)?e.number:e.string:s(i)?e.boolean:c(i)?e.number:e.string,title:i.title,description:i.description,alias:n(i.alias||[]),env:i.env,optional:!r.required?.includes(t),default:i.default};return a.kind===e.string||a.kind===e.number?(a.variadic=o(i),a.kind===e.string&&(a.format=i.format),(u(i)||c(i))&&i.enum&&(a.choices=i.enum)):a.kind===e.boolean&&!a.variadic&&(a.skipAddingNegative=i.skipAddingNegative,a.isNegativeOf=i.isNegativeOf),a}_.__type=[`name`,`parent`,`schema`,()=>h,`CommandOption`,`resolveCommandOption`,`P&2!!2"!2#"w%o$"/&`];function v(t){let r={name:t.name,kind:o(t)&&t.items?c(t.items)?e.number:e.string:s(t)?e.boolean:c(t)?e.number:e.string,title:t.title,description:t.description,alias:n(t.alias||[]),env:t.env,default:t.default};return(r.kind===e.string||r.kind===e.number)&&(r.variadic=o(t),r.kind===e.string&&(r.format=t.format),(u(t)||c(t))&&t.enum&&(r.choices=t.enum)),r}v.__type=[`schema`,()=>h,`CommandArgument`,`resolveCommandArgument`,`P!2!"w#o""/$`];async function y(e){b(e);let o=e.module?.metadata??{};if(r(o.title)&&(e.output.title=o.title),r(o.description)&&(e.output.description=o.description),(r(o.alias)||Array.isArray(o.alias)&&o.alias.length>0)&&(e.output.alias=n(o.alias)),r(o.icon)&&(e.output.icon=o.icon),r(o.tags)&&(e.output.tags=a(e.output.tags.concat(n(o.tags)))),i(e.module?.options))if(m(e.module.options)||f(e.module.options)||l(e.module.options)){let t;if(t=m(e.module.options)?p(e.module.options):f(e.module.options)?e.module.options[`~standard`].jsonSchema.input({target:`draft-07`}):e.module.options,!l(t))throw TypeError(`Command options for command at path "${e.input.command.path}" must be defined as a Zod object schema, a standard JSON Schema object, or a JSON Schema object.`);e.output.options=Object.fromEntries(Object.entries(t.properties).map(g(([e,n])=>[e,_(e,t,n)],[`param0`,``,`P"2!"/"`])).concat(Object.entries(e.output.options)))}else if(Object.values(e.module.options).every(t))e.output.options=Object.fromEntries(Object.entries(e.module.options).map(g(([e,t])=>[e,{name:e,...t,alias:n(t.alias)}],[`param0`,``,`P"2!"/"`])).concat(Object.entries(e.output.options)));else throw TypeError(`Command options for command at path "${e.input.command.path}" must be defined as a record of valid CommandOption objects, a Zod object schema, or a standard JSON Schema object.`);if(i(e.module?.args))if(m(e.module.args)||f(e.module.args)||d(e.module.args)){let t;if(t=m(e.module.args)?p(e.module.args):f(e.module.args)?e.module.args[`~standard`].jsonSchema.input({target:`draft-07`}):e.module.args,!d(t))throw TypeError(`Command arguments for command at path "${e.input.command.path}" must be defined as a Zod tuple schema, a standard JSON Schema tuple object, or a JSON Schema tuple object.`);e.output.args=t.items.map(g(e=>v(e),[`item`,``,`P"2!"/"`]))}else if(Object.values(e.module.args).every(t))e.output.args=e.module.args.map(g(e=>({...e,alias:n(e.alias)}),[`arg`,``,`P"2!"/"`]));else throw TypeError(`Command arguments for command at path "${e.input.command.path}" must be defined as a record of valid CommandArgument objects, a Zod tuple schema, or a standard JSON Schema tuple object.`)}y.__type=[`ResolverContext`,`ctx`,`resolveFromExports`,`P"w!2""/#`];function b(e){if(!e.module)throw Error(`Command module at path "${e.input.command.path}" is undefined or null. Please ensure the module exports a valid command.`);if(!i(e.module))throw TypeError(`Command module at path "${e.input.command.path}" is not an object. Please ensure the module exports a valid command.`);if(!(`default`in e.module))throw Error(`Command module at path "${e.input.command.path}" does not appear to be valid. Please ensure the module's default export is a valid command handler function.`)}b.__type=[`ResolverContext`,`ctx`,`validateExports`,`P"w!2""/#`];export{y as resolveFromExports};
|
|
2
|
-
//# sourceMappingURL=module.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"module.mjs","names":[],"sources":["../../src/resolver/module.ts"],"sourcesContent":["/* -------------------------------------------------------------------\n\n ⚡ Storm Software - Shell Shock\n\n This code was released as part of the Shell Shock project. Shell Shock\n is maintained by Storm Software under the Apache-2.0 license, and is\n free for commercial and private use. For more information, please visit\n our licensing page at https://stormsoftware.com/licenses/projects/shell-shock.\n\n Website: https://stormsoftware.com\n Repository: https://github.com/storm-software/shell-shock\n Documentation: https://docs.stormsoftware.com/projects/shell-shock\n Contact: https://stormsoftware.com/contact\n\n SPDX-License-Identifier: Apache-2.0\n\n ------------------------------------------------------------------- */\n\nimport { toArray } from \"@stryke/convert/to-array\";\nimport { getUnique } from \"@stryke/helpers/get-unique\";\nimport type {\n JsonSchema7EnumType,\n JsonSchema7ObjectType,\n JsonSchema7Type\n} from \"@stryke/json\";\nimport {\n isJsonSchema7ArrayType,\n isJsonSchema7BooleanType,\n isJsonSchema7NumberType,\n isJsonSchema7ObjectType,\n isJsonSchema7StringType,\n isJsonSchema7TupleType,\n isStandardJsonSchema\n} from \"@stryke/json\";\nimport { isSetObject } from \"@stryke/type-checks/is-set-object\";\nimport { isSetString } from \"@stryke/type-checks/is-set-string\";\nimport { extractJsonSchema7, isZod3Type } from \"@stryke/zod\";\nimport { isCommandParameterConfig } from \"../plugin-utils\";\nimport type {\n BooleanCommandOption,\n CommandArgument,\n CommandOption,\n CommandParameterConfig,\n Context,\n StringCommandParameter\n} from \"../types\";\nimport { CommandParameterKinds } from \"../types\";\nimport type { ResolverContext } from \"./types\";\n\nfunction resolveCommandOption(\n name: string,\n parent: JsonSchema7ObjectType,\n schema: JsonSchema7Type\n): Partial<CommandOption> {\n const result = {\n name,\n kind:\n isJsonSchema7ArrayType(schema) && schema.items\n ? isJsonSchema7NumberType(schema.items)\n ? CommandParameterKinds.number\n : CommandParameterKinds.string\n : isJsonSchema7BooleanType(schema)\n ? CommandParameterKinds.boolean\n : isJsonSchema7NumberType(schema)\n ? CommandParameterKinds.number\n : CommandParameterKinds.string,\n title: schema.title,\n description: schema.description,\n alias: toArray((schema as { alias?: string | string[] }).alias || []),\n env: (schema as { env?: string }).env,\n optional: !parent.required?.includes(name),\n default: schema.default\n } as Partial<CommandOption>;\n if (\n result.kind === CommandParameterKinds.string ||\n result.kind === CommandParameterKinds.number\n ) {\n result.variadic = isJsonSchema7ArrayType(schema);\n if (result.kind === CommandParameterKinds.string) {\n result.format = (\n schema as { format?: StringCommandParameter[\"format\"] }\n ).format;\n }\n\n if (\n (isJsonSchema7StringType(schema) || isJsonSchema7NumberType(schema)) &&\n (schema as JsonSchema7EnumType).enum\n ) {\n result.choices = (schema as JsonSchema7EnumType).enum;\n }\n } else if (\n result.kind === CommandParameterKinds.boolean &&\n !result.variadic\n ) {\n (result as BooleanCommandOption).skipAddingNegative = (\n schema as { skipAddingNegative?: boolean }\n ).skipAddingNegative;\n (result as BooleanCommandOption).isNegativeOf = (\n schema as { isNegativeOf?: string }\n ).isNegativeOf;\n }\n\n return result;\n}\n\nfunction resolveCommandArgument(\n schema: JsonSchema7Type\n): Partial<CommandArgument> {\n const result = {\n name: (schema as { name?: string }).name,\n kind:\n isJsonSchema7ArrayType(schema) && schema.items\n ? isJsonSchema7NumberType(schema.items)\n ? CommandParameterKinds.number\n : CommandParameterKinds.string\n : isJsonSchema7BooleanType(schema)\n ? CommandParameterKinds.boolean\n : isJsonSchema7NumberType(schema)\n ? CommandParameterKinds.number\n : CommandParameterKinds.string,\n title: schema.title,\n description: schema.description,\n alias: toArray((schema as { alias?: string | string[] }).alias || []),\n env: (schema as { env?: string }).env,\n default: schema.default\n } as Partial<CommandArgument>;\n if (\n result.kind === CommandParameterKinds.string ||\n result.kind === CommandParameterKinds.number\n ) {\n result.variadic = isJsonSchema7ArrayType(schema);\n if (result.kind === CommandParameterKinds.string) {\n result.format = (\n schema as { format?: StringCommandParameter[\"format\"] }\n ).format;\n }\n\n if (\n (isJsonSchema7StringType(schema) || isJsonSchema7NumberType(schema)) &&\n (schema as JsonSchema7EnumType).enum\n ) {\n result.choices = (schema as JsonSchema7EnumType).enum;\n }\n }\n\n return result;\n}\n\nexport async function resolveFromExports<TContext extends Context = Context>(\n ctx: ResolverContext<TContext>\n) {\n validateExports(ctx);\n\n const metadata = ctx.module?.metadata ?? {};\n if (isSetString(metadata.title)) {\n ctx.output.title = metadata.title;\n }\n if (isSetString(metadata.description)) {\n ctx.output.description = metadata.description;\n }\n if (\n isSetString(metadata.alias) ||\n (Array.isArray(metadata.alias) && metadata.alias.length > 0)\n ) {\n ctx.output.alias = toArray(metadata.alias);\n }\n if (isSetString(metadata.icon)) {\n ctx.output.icon = metadata.icon;\n }\n if (isSetString(metadata.tags)) {\n ctx.output.tags = getUnique(ctx.output.tags.concat(toArray(metadata.tags)));\n }\n\n if (isSetObject(ctx.module?.options)) {\n if (\n isZod3Type(ctx.module.options) ||\n isStandardJsonSchema(ctx.module.options) ||\n isJsonSchema7ObjectType(ctx.module.options)\n ) {\n let jsonSchema: JsonSchema7Type;\n if (isZod3Type(ctx.module.options)) {\n jsonSchema = extractJsonSchema7(ctx.module.options);\n } else if (isStandardJsonSchema(ctx.module.options)) {\n jsonSchema = ctx.module.options[\"~standard\"].jsonSchema.input({\n target: \"draft-07\"\n });\n } else {\n jsonSchema = ctx.module.options;\n }\n\n if (!isJsonSchema7ObjectType(jsonSchema)) {\n throw new TypeError(\n `Command options for command at path \"${\n ctx.input.command.path\n }\" must be defined as a Zod object schema, a standard JSON Schema object, or a JSON Schema object.`\n );\n }\n\n ctx.output.options = Object.fromEntries(\n Object.entries(jsonSchema.properties)\n .map(([name, property]) => [\n name,\n resolveCommandOption(name, jsonSchema, property)\n ])\n .concat(Object.entries(ctx.output.options))\n ) as Record<string, CommandOption>;\n } else if (\n Object.values(ctx.module.options).every(isCommandParameterConfig)\n ) {\n ctx.output.options = Object.fromEntries(\n Object.entries(\n ctx.module.options as Record<string, CommandParameterConfig>\n )\n .map(([name, option]) => [\n name,\n { name, ...option, alias: toArray(option.alias) }\n ])\n .concat(Object.entries(ctx.output.options))\n ) as Record<string, CommandOption>;\n } else {\n throw new TypeError(\n `Command options for command at path \"${\n ctx.input.command.path\n }\" must be defined as a record of valid CommandOption objects, a Zod object schema, or a standard JSON Schema object.`\n );\n }\n }\n\n if (isSetObject(ctx.module?.args)) {\n if (\n isZod3Type(ctx.module.args) ||\n isStandardJsonSchema(ctx.module.args) ||\n isJsonSchema7TupleType(ctx.module.args)\n ) {\n let jsonSchema: JsonSchema7Type;\n if (isZod3Type(ctx.module.args)) {\n jsonSchema = extractJsonSchema7(ctx.module.args);\n } else if (isStandardJsonSchema(ctx.module.args)) {\n jsonSchema = ctx.module.args[\"~standard\"].jsonSchema.input({\n target: \"draft-07\"\n });\n } else {\n jsonSchema = ctx.module.args;\n }\n\n if (!isJsonSchema7TupleType(jsonSchema)) {\n throw new TypeError(\n `Command arguments for command at path \"${\n ctx.input.command.path\n }\" must be defined as a Zod tuple schema, a standard JSON Schema tuple object, or a JSON Schema tuple object.`\n );\n }\n\n ctx.output.args = jsonSchema.items.map(item =>\n resolveCommandArgument(item)\n ) as CommandArgument[];\n } else if (Object.values(ctx.module.args).every(isCommandParameterConfig)) {\n ctx.output.args = ctx.module.args.map(arg => ({\n ...arg,\n alias: toArray(arg.alias)\n })) as CommandArgument[];\n } else {\n throw new TypeError(\n `Command arguments for command at path \"${\n ctx.input.command.path\n }\" must be defined as a record of valid CommandArgument objects, a Zod tuple schema, or a standard JSON Schema tuple object.`\n );\n }\n }\n}\n\nfunction validateExports<TContext extends Context = Context>(\n ctx: ResolverContext<TContext>\n) {\n if (!ctx.module) {\n throw new Error(\n `Command module at path \"${\n ctx.input.command.path\n }\" is undefined or null. Please ensure the module exports a valid command.`\n );\n } else if (!isSetObject(ctx.module)) {\n throw new TypeError(\n `Command module at path \"${\n ctx.input.command.path\n }\" is not an object. Please ensure the module exports a valid command.`\n );\n } else if (!(\"default\" in ctx.module)) {\n throw new Error(\n `Command module at path \"${\n ctx.input.command.path\n }\" does not appear to be valid. Please ensure the module's default export is a valid command handler function.`\n );\n }\n}\n"],"mappings":"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"}
|