@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.
Files changed (272) hide show
  1. package/dist/_virtual/_rolldown/runtime.cjs +29 -1
  2. package/dist/api.cjs +36 -1
  3. package/dist/api.cjs.map +1 -0
  4. package/dist/api.d.cts +2 -77
  5. package/dist/api.d.cts.map +1 -1
  6. package/dist/api.d.mts +2 -76
  7. package/dist/api.d.mts.map +1 -1
  8. package/dist/api.mjs +35 -1
  9. package/dist/api.mjs.map +1 -1
  10. package/dist/components/command-validation-logic.cjs +291 -1
  11. package/dist/components/command-validation-logic.cjs.map +1 -0
  12. package/dist/components/command-validation-logic.d.cts +1 -3
  13. package/dist/components/command-validation-logic.d.cts.map +1 -1
  14. package/dist/components/command-validation-logic.d.mts +1 -3
  15. package/dist/components/command-validation-logic.d.mts.map +1 -1
  16. package/dist/components/command-validation-logic.mjs +288 -1
  17. package/dist/components/command-validation-logic.mjs.map +1 -1
  18. package/dist/components/docs.cjs +265 -1
  19. package/dist/components/docs.cjs.map +1 -0
  20. package/dist/components/docs.d.cts +4 -5
  21. package/dist/components/docs.d.cts.map +1 -1
  22. package/dist/components/docs.d.mts +4 -5
  23. package/dist/components/docs.d.mts.map +1 -1
  24. package/dist/components/docs.mjs +256 -1
  25. package/dist/components/docs.mjs.map +1 -1
  26. package/dist/components/exec-builtin.cjs +429 -15
  27. package/dist/components/exec-builtin.cjs.map +1 -0
  28. package/dist/components/exec-builtin.d.cts +1 -2
  29. package/dist/components/exec-builtin.d.cts.map +1 -1
  30. package/dist/components/exec-builtin.d.mts +1 -2
  31. package/dist/components/exec-builtin.d.mts.map +1 -1
  32. package/dist/components/exec-builtin.mjs +424 -15
  33. package/dist/components/exec-builtin.mjs.map +1 -1
  34. package/dist/components/helpers.cjs +119 -1
  35. package/dist/components/helpers.cjs.map +1 -0
  36. package/dist/components/helpers.d.cts +6 -8
  37. package/dist/components/helpers.d.cts.map +1 -1
  38. package/dist/components/helpers.d.mts +6 -8
  39. package/dist/components/helpers.d.mts.map +1 -1
  40. package/dist/components/helpers.mjs +111 -1
  41. package/dist/components/helpers.mjs.map +1 -1
  42. package/dist/components/index.cjs +58 -1
  43. package/dist/components/index.mjs +10 -1
  44. package/dist/components/options-parser-logic.cjs +959 -5
  45. package/dist/components/options-parser-logic.cjs.map +1 -0
  46. package/dist/components/options-parser-logic.d.cts +8 -9
  47. package/dist/components/options-parser-logic.d.cts.map +1 -1
  48. package/dist/components/options-parser-logic.d.mts +8 -9
  49. package/dist/components/options-parser-logic.d.mts.map +1 -1
  50. package/dist/components/options-parser-logic.mjs +944 -5
  51. package/dist/components/options-parser-logic.mjs.map +1 -1
  52. package/dist/components/state-builtin.cjs +630 -8
  53. package/dist/components/state-builtin.cjs.map +1 -0
  54. package/dist/components/state-builtin.d.cts +4 -5
  55. package/dist/components/state-builtin.d.cts.map +1 -1
  56. package/dist/components/state-builtin.d.mts +4 -5
  57. package/dist/components/state-builtin.d.mts.map +1 -1
  58. package/dist/components/state-builtin.mjs +622 -8
  59. package/dist/components/state-builtin.mjs.map +1 -1
  60. package/dist/components/usage.cjs +116 -1
  61. package/dist/components/usage.cjs.map +1 -0
  62. package/dist/components/usage.d.cts +1 -2
  63. package/dist/components/usage.d.cts.map +1 -1
  64. package/dist/components/usage.d.mts +1 -2
  65. package/dist/components/usage.d.mts.map +1 -1
  66. package/dist/components/usage.mjs +113 -1
  67. package/dist/components/usage.mjs.map +1 -1
  68. package/dist/components/utils-builtin.cjs +839 -33
  69. package/dist/components/utils-builtin.cjs.map +1 -0
  70. package/dist/components/utils-builtin.d.cts +7 -8
  71. package/dist/components/utils-builtin.d.cts.map +1 -1
  72. package/dist/components/utils-builtin.d.mts +7 -8
  73. package/dist/components/utils-builtin.d.mts.map +1 -1
  74. package/dist/components/utils-builtin.mjs +828 -33
  75. package/dist/components/utils-builtin.mjs.map +1 -1
  76. package/dist/config.cjs +65 -1
  77. package/dist/config.cjs.map +1 -0
  78. package/dist/config.d.cts +29 -8
  79. package/dist/config.d.cts.map +1 -1
  80. package/dist/config.d.mts +29 -8
  81. package/dist/config.d.mts.map +1 -1
  82. package/dist/config.mjs +62 -1
  83. package/dist/config.mjs.map +1 -1
  84. package/dist/contexts/command.cjs +26 -1
  85. package/dist/contexts/command.cjs.map +1 -0
  86. package/dist/contexts/command.d.cts.map +1 -1
  87. package/dist/contexts/command.d.mts.map +1 -1
  88. package/dist/contexts/command.mjs +23 -1
  89. package/dist/contexts/command.mjs.map +1 -1
  90. package/dist/contexts/index.cjs +9 -1
  91. package/dist/contexts/index.mjs +4 -1
  92. package/dist/contexts/options.cjs +63 -1
  93. package/dist/contexts/options.cjs.map +1 -0
  94. package/dist/contexts/options.d.cts.map +1 -1
  95. package/dist/contexts/options.d.mts.map +1 -1
  96. package/dist/contexts/options.mjs +57 -1
  97. package/dist/contexts/options.mjs.map +1 -1
  98. package/dist/engine.cjs +138 -0
  99. package/dist/engine.cjs.map +1 -0
  100. package/dist/engine.d.cts +79 -0
  101. package/dist/engine.d.cts.map +1 -0
  102. package/dist/engine.d.mts +79 -0
  103. package/dist/engine.d.mts.map +1 -0
  104. package/dist/engine.mjs +136 -0
  105. package/dist/engine.mjs.map +1 -0
  106. package/dist/helpers/automd.cjs +70 -1
  107. package/dist/helpers/automd.cjs.map +1 -0
  108. package/dist/helpers/automd.mjs +69 -1
  109. package/dist/helpers/automd.mjs.map +1 -1
  110. package/dist/helpers/docs-helpers.cjs +23 -1
  111. package/dist/helpers/docs-helpers.cjs.map +1 -0
  112. package/dist/helpers/docs-helpers.mjs +22 -1
  113. package/dist/helpers/docs-helpers.mjs.map +1 -1
  114. package/dist/helpers/get-framework.cjs +24 -0
  115. package/dist/helpers/get-framework.cjs.map +1 -0
  116. package/dist/helpers/get-framework.mjs +24 -0
  117. package/dist/helpers/get-framework.mjs.map +1 -0
  118. package/dist/helpers/paths.cjs +137 -1
  119. package/dist/helpers/paths.cjs.map +1 -0
  120. package/dist/helpers/paths.mjs +133 -1
  121. package/dist/helpers/paths.mjs.map +1 -1
  122. package/dist/helpers/persistence.cjs +113 -1
  123. package/dist/helpers/persistence.cjs.map +1 -0
  124. package/dist/helpers/persistence.mjs +112 -1
  125. package/dist/helpers/persistence.mjs.map +1 -1
  126. package/dist/helpers/update-package-json.cjs +65 -1
  127. package/dist/helpers/update-package-json.cjs.map +1 -0
  128. package/dist/helpers/update-package-json.mjs +63 -1
  129. package/dist/helpers/update-package-json.mjs.map +1 -1
  130. package/dist/helpers/utilities.cjs +95 -1
  131. package/dist/helpers/utilities.cjs.map +1 -0
  132. package/dist/helpers/utilities.mjs +93 -1
  133. package/dist/helpers/utilities.mjs.map +1 -1
  134. package/dist/helpers/validations.cjs +71 -1
  135. package/dist/helpers/validations.cjs.map +1 -0
  136. package/dist/helpers/validations.mjs +69 -1
  137. package/dist/helpers/validations.mjs.map +1 -1
  138. package/dist/index.cjs +123 -1
  139. package/dist/index.cjs.map +1 -0
  140. package/dist/index.d.cts +80 -5
  141. package/dist/index.d.cts.map +1 -0
  142. package/dist/index.d.mts +80 -5
  143. package/dist/index.d.mts.map +1 -0
  144. package/dist/index.mjs +119 -1
  145. package/dist/index.mjs.map +1 -0
  146. package/dist/package.cjs +12 -0
  147. package/dist/package.cjs.map +1 -0
  148. package/dist/package.mjs +6 -0
  149. package/dist/package.mjs.map +1 -0
  150. package/dist/plugin-utils/compute-bin.cjs +48 -1
  151. package/dist/plugin-utils/compute-bin.cjs.map +1 -0
  152. package/dist/plugin-utils/compute-bin.d.cts +2 -2
  153. package/dist/plugin-utils/compute-bin.d.cts.map +1 -1
  154. package/dist/plugin-utils/compute-bin.d.mts +2 -2
  155. package/dist/plugin-utils/compute-bin.d.mts.map +1 -1
  156. package/dist/plugin-utils/compute-bin.mjs +47 -1
  157. package/dist/plugin-utils/compute-bin.mjs.map +1 -1
  158. package/dist/plugin-utils/context-helpers.cjs +224 -1
  159. package/dist/plugin-utils/context-helpers.cjs.map +1 -0
  160. package/dist/plugin-utils/context-helpers.d.cts +4 -4
  161. package/dist/plugin-utils/context-helpers.d.cts.map +1 -1
  162. package/dist/plugin-utils/context-helpers.d.mts +4 -4
  163. package/dist/plugin-utils/context-helpers.d.mts.map +1 -1
  164. package/dist/plugin-utils/context-helpers.mjs +214 -1
  165. package/dist/plugin-utils/context-helpers.mjs.map +1 -1
  166. package/dist/plugin-utils/deepkit.cjs +70 -1
  167. package/dist/plugin-utils/deepkit.cjs.map +1 -0
  168. package/dist/plugin-utils/deepkit.d.cts +5 -5
  169. package/dist/plugin-utils/deepkit.d.cts.map +1 -1
  170. package/dist/plugin-utils/deepkit.d.mts +5 -5
  171. package/dist/plugin-utils/deepkit.d.mts.map +1 -1
  172. package/dist/plugin-utils/deepkit.mjs +68 -1
  173. package/dist/plugin-utils/deepkit.mjs.map +1 -1
  174. package/dist/plugin-utils/description-helpers.cjs +112 -2
  175. package/dist/plugin-utils/description-helpers.cjs.map +1 -0
  176. package/dist/plugin-utils/description-helpers.d.cts.map +1 -1
  177. package/dist/plugin-utils/description-helpers.d.mts.map +1 -1
  178. package/dist/plugin-utils/description-helpers.mjs +107 -2
  179. package/dist/plugin-utils/description-helpers.mjs.map +1 -1
  180. package/dist/plugin-utils/get-command-tree.cjs +118 -1
  181. package/dist/plugin-utils/get-command-tree.cjs.map +1 -0
  182. package/dist/plugin-utils/get-command-tree.d.cts.map +1 -1
  183. package/dist/plugin-utils/get-command-tree.d.mts.map +1 -1
  184. package/dist/plugin-utils/get-command-tree.mjs +114 -1
  185. package/dist/plugin-utils/get-command-tree.mjs.map +1 -1
  186. package/dist/plugin-utils/index.cjs +39 -1
  187. package/dist/plugin-utils/index.d.cts +2 -2
  188. package/dist/plugin-utils/index.d.mts +2 -2
  189. package/dist/plugin-utils/index.mjs +10 -1
  190. package/dist/plugin-utils/reflect.cjs +52 -1
  191. package/dist/plugin-utils/reflect.cjs.map +1 -0
  192. package/dist/plugin-utils/reflect.d.cts.map +1 -1
  193. package/dist/plugin-utils/reflect.d.mts.map +1 -1
  194. package/dist/plugin-utils/reflect.mjs +50 -1
  195. package/dist/plugin-utils/reflect.mjs.map +1 -1
  196. package/dist/plugin-utils/traverse-command-tree.cjs +65 -1
  197. package/dist/plugin-utils/traverse-command-tree.cjs.map +1 -0
  198. package/dist/plugin-utils/traverse-command-tree.d.cts.map +1 -1
  199. package/dist/plugin-utils/traverse-command-tree.d.mts.map +1 -1
  200. package/dist/plugin-utils/traverse-command-tree.mjs +62 -1
  201. package/dist/plugin-utils/traverse-command-tree.mjs.map +1 -1
  202. package/dist/plugin-utils/type-checks.cjs +222 -1
  203. package/dist/plugin-utils/type-checks.cjs.map +1 -0
  204. package/dist/plugin-utils/type-checks.d.cts +5 -5
  205. package/dist/plugin-utils/type-checks.d.cts.map +1 -1
  206. package/dist/plugin-utils/type-checks.d.mts +5 -5
  207. package/dist/plugin-utils/type-checks.d.mts.map +1 -1
  208. package/dist/plugin-utils/type-checks.mjs +217 -1
  209. package/dist/plugin-utils/type-checks.mjs.map +1 -1
  210. package/dist/plugin.cjs +495 -4
  211. package/dist/plugin.cjs.map +1 -0
  212. package/dist/plugin.d.cts.map +1 -1
  213. package/dist/plugin.d.mts.map +1 -1
  214. package/dist/plugin.mjs +488 -4
  215. package/dist/plugin.mjs.map +1 -1
  216. package/dist/resolver/helpers.cjs +182 -1
  217. package/dist/resolver/helpers.cjs.map +1 -0
  218. package/dist/resolver/helpers.mjs +178 -1
  219. package/dist/resolver/helpers.mjs.map +1 -1
  220. package/dist/resolver/resolve.cjs +479 -1
  221. package/dist/resolver/resolve.cjs.map +1 -0
  222. package/dist/resolver/resolve.mjs +478 -1
  223. package/dist/resolver/resolve.mjs.map +1 -1
  224. package/dist/types/command.cjs +402 -1
  225. package/dist/types/command.cjs.map +1 -0
  226. package/dist/types/command.d.cts +61 -119
  227. package/dist/types/command.d.cts.map +1 -1
  228. package/dist/types/command.d.mts +61 -119
  229. package/dist/types/command.d.mts.map +1 -1
  230. package/dist/types/command.mjs +367 -1
  231. package/dist/types/command.mjs.map +1 -1
  232. package/dist/types/config.cjs +175 -1
  233. package/dist/types/config.cjs.map +1 -0
  234. package/dist/types/config.d.cts +19 -12
  235. package/dist/types/config.d.cts.map +1 -1
  236. package/dist/types/config.d.mts +19 -12
  237. package/dist/types/config.d.mts.map +1 -1
  238. package/dist/types/config.mjs +163 -1
  239. package/dist/types/config.mjs.map +1 -1
  240. package/dist/types/context.cjs +45 -1
  241. package/dist/types/context.cjs.map +1 -0
  242. package/dist/types/context.d.cts +3 -2
  243. package/dist/types/context.d.cts.map +1 -1
  244. package/dist/types/context.d.mts +3 -2
  245. package/dist/types/context.d.mts.map +1 -1
  246. package/dist/types/context.mjs +40 -1
  247. package/dist/types/context.mjs.map +1 -1
  248. package/dist/types/env.cjs +53 -1
  249. package/dist/types/env.cjs.map +1 -0
  250. package/dist/types/env.d.cts +1 -1
  251. package/dist/types/env.d.cts.map +1 -1
  252. package/dist/types/env.d.mts +1 -1
  253. package/dist/types/env.d.mts.map +1 -1
  254. package/dist/types/env.mjs +50 -1
  255. package/dist/types/env.mjs.map +1 -1
  256. package/dist/types/index.cjs +53 -1
  257. package/dist/types/index.d.cts +4 -4
  258. package/dist/types/index.d.mts +4 -4
  259. package/dist/types/index.mjs +6 -1
  260. package/dist/types/options.cjs +13 -1
  261. package/dist/types/options.cjs.map +1 -0
  262. package/dist/types/options.d.cts.map +1 -1
  263. package/dist/types/options.d.mts.map +1 -1
  264. package/dist/types/options.mjs +10 -1
  265. package/dist/types/options.mjs.map +1 -1
  266. package/package.json +43 -34
  267. package/dist/resolver/deepkit.cjs +0 -1
  268. package/dist/resolver/deepkit.mjs +0 -2
  269. package/dist/resolver/deepkit.mjs.map +0 -1
  270. package/dist/resolver/module.cjs +0 -1
  271. package/dist/resolver/module.mjs +0 -2
  272. package/dist/resolver/module.mjs.map +0 -1
@@ -1,2 +1,51 @@
1
- const e=[`PATHEXT`,`The system PATHEXT variable, used to determine which file extensions are considered executable on Windows.`,{hidden:!0,internal:!0,runtime:!0},`PATH`,`The system PATH variable, used to locate executable files.`,{hidden:!0,internal:!0,runtime:!0},`npm_config_user_agent`,`The npm user agent string, which can be used to detect if the environment is running within an npm script.`,{hidden:!0,internal:!0,runtime:!0},`npm_config_fund`,`The npm_config_fund environment variable, which can be used to control npm's funding behavior.`,{hidden:!0,internal:!0,runtime:!0},`npm_execpath`,`The npm execution path, which can be used to determine the location of the npm executable.`,{hidden:!0,internal:!0,runtime:!0},`COMSPEC`,`The COMSPEC environment variable, which specifies the command-line interpreter to use on Windows.`,{hidden:!0,internal:!0,runtime:!0},`ShellShockEnv`,`P!&4!8?"z#&4$8?%z&&4'8?(z)&4*8?+z,&4-8?.z/&408?1z2Mw3y`];export{e as __ΩShellShockEnv};
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
@@ -1 +1 @@
1
- {"version":3,"file":"env.mjs","names":[],"sources":["../../src/types/env.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\n// eslint-disable-next-line ts/consistent-type-imports\nimport { EnvInterface } from \"@powerlines/plugin-env/types/runtime\";\n\nexport interface ShellShockEnv extends EnvInterface {\n /**\n * The system PATHEXT variable, used to determine which file extensions are considered executable on Windows.\n *\n * @remarks\n * If not provided, it will default to '.EXE;.CMD;.BAT;.COM' on Windows, and will be ignored on other platforms. This variable is used to locate executable files when running commands, and is only relevant on Windows platforms. On non-Windows platforms, the system's executable file resolution will be used, and this variable will have no effect.\n *\n * @hidden\n * @runtime\n * @internal\n */\n PATHEXT?: string;\n\n /**\n * The system PATH variable, used to locate executable files.\n *\n * @hidden\n * @runtime\n * @internal\n */\n PATH?: string;\n\n /**\n * The npm user agent string, which can be used to detect if the environment is running within an npm script.\n *\n * @remarks\n * This variable is set by npm when running scripts defined in package.json. It can be used to conditionally adjust behavior when running within an npm script context, such as modifying logging output or adjusting command execution. If this variable is not set, it can be assumed that the environment is not running within an npm script.\n *\n * @hidden\n * @runtime\n * @internal\n */\n npm_config_user_agent?: string;\n\n /**\n * The npm_config_fund environment variable, which can be used to control npm's funding behavior.\n *\n * @remarks\n * This variable is set by npm when running scripts defined in package.json, and can be used to control npm's funding behavior. If set to 'false', it will disable npm's funding messages. If not set, npm will use its default funding behavior. This variable is only relevant when running within an npm script context, and has no effect on command execution or behavior outside of that context.\n *\n * @hidden\n * @runtime\n * @internal\n */\n npm_config_fund?: string;\n\n /**\n * The npm execution path, which can be used to determine the location of the npm executable.\n *\n * @remarks\n * This variable is set by npm when running scripts defined in package.json. It provides the absolute path to the npm executable being used to run the script. This can be useful for resolving the location of npm or for debugging purposes. If this variable is not set, it may indicate that the environment is not running within an npm script context, or that npm is not available in the PATH.\n *\n * @hidden\n * @runtime\n * @internal\n */\n npm_execpath?: string;\n\n /**\n * The COMSPEC environment variable, which specifies the command-line interpreter to use on Windows.\n *\n * @remarks\n * This variable is used on Windows platforms to determine which command-line interpreter to use when executing commands. It typically points to cmd.exe, but can be customized by the user. If this variable is not set on Windows, it will default to 'cmd.exe'. On non-Windows platforms, this variable is ignored and has no effect on command execution.\n *\n * @hidden\n * @runtime\n * @internal\n */\n COMSPEC?: string;\n}\n"],"mappings":"iIAkBE,OAAQ,YACD,cAET,CAAA,OAAO,6DAA6C,CAClD,OAAE,GACF,SAAO,GACP,QAAC,GACF,CAAE,wBAAG,6GAAA,CACJ,OAAM,GACN,SAAC,GACD,QAAI,GACL,CAAE,kBAAG,iGAAA,CACJ,OAAI,GACJ,SAAE,GACF,QAAS,iHAET,OAAE,GACF,SAAO,GACP,QAAC,GACF,CAAE,UAAG,oGAAA,CACJ,OAAI,GACJ,SAAI,GACJ,QAAE,GACH,CAAC,gBAAa,yDAAA"}
1
+ {"version":3,"file":"env.mjs","names":[],"sources":[],"mappings":""}
@@ -1 +1,53 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`./command.cjs`),t=require(`./config.cjs`),n=require(`./context.cjs`),r=require(`./options.cjs`);exports.CommandParameterKinds=e.CommandParameterKinds,exports.__ΩAsCommandParameterConfig=e.__ΩAsCommandParameterConfig,exports.__ΩBaseBooleanCommandParameter=e.__ΩBaseBooleanCommandParameter,exports.__ΩBaseCommandOptions=r.__ΩBaseCommandOptions,exports.__ΩBaseCommandParameter=e.__ΩBaseCommandParameter,exports.__ΩBaseNumberCommandParameter=e.__ΩBaseNumberCommandParameter,exports.__ΩBaseSingleCommandParameter=e.__ΩBaseSingleCommandParameter,exports.__ΩBaseStringCommandParameter=e.__ΩBaseStringCommandParameter,exports.__ΩBaseVariadicCommandParameter=e.__ΩBaseVariadicCommandParameter,exports.__ΩBooleanCommandOption=e.__ΩBooleanCommandOption,exports.__ΩBooleanCommandParameter=e.__ΩBooleanCommandParameter,exports.__ΩBooleanCommandParameterConfig=e.__ΩBooleanCommandParameterConfig,exports.__ΩCommandArgument=e.__ΩCommandArgument,exports.__ΩCommandArgumentConfig=e.__ΩCommandArgumentConfig,exports.__ΩCommandBase=e.__ΩCommandBase,exports.__ΩCommandConfig=e.__ΩCommandConfig,exports.__ΩCommandMetadata=e.__ΩCommandMetadata,exports.__ΩCommandModule=e.__ΩCommandModule,exports.__ΩCommandOption=e.__ΩCommandOption,exports.__ΩCommandOptionConfig=e.__ΩCommandOptionConfig,exports.__ΩCommandParameter=e.__ΩCommandParameter,exports.__ΩCommandParameterConfig=e.__ΩCommandParameterConfig,exports.__ΩCommandParameterKind=e.__ΩCommandParameterKind,exports.__ΩCommandParameterType=e.__ΩCommandParameterType,exports.__ΩCommandTree=e.__ΩCommandTree,exports.__ΩContext=n.__ΩContext,exports.__ΩNumberCommandParameter=e.__ΩNumberCommandParameter,exports.__ΩNumberCommandParameterConfig=e.__ΩNumberCommandParameterConfig,exports.__ΩOptions=t.__ΩOptions,exports.__ΩOutputConfig=t.__ΩOutputConfig,exports.__ΩReferenceOptions=t.__ΩReferenceOptions,exports.__ΩResolvedConfig=t.__ΩResolvedConfig,exports.__ΩSerializedCommandTree=e.__ΩSerializedCommandTree,exports.__ΩSingleBooleanCommandParameter=e.__ΩSingleBooleanCommandParameter,exports.__ΩSingleNumberCommandParameter=e.__ΩSingleNumberCommandParameter,exports.__ΩSingleStringCommandParameter=e.__ΩSingleStringCommandParameter,exports.__ΩStringCommandParameter=e.__ΩStringCommandParameter,exports.__ΩStringCommandParameterConfig=e.__ΩStringCommandParameterConfig,exports.__ΩUnresolvedContext=n.__ΩUnresolvedContext,exports.__ΩUserConfig=t.__ΩUserConfig,exports.__ΩVariadicBooleanCommandParameter=e.__ΩVariadicBooleanCommandParameter,exports.__ΩVariadicNumberCommandParameter=e.__ΩVariadicNumberCommandParameter,exports.__ΩVariadicStringCommandParameter=e.__ΩVariadicStringCommandParameter;
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;
@@ -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, CommandParameterKind, CommandParameterKinds, CommandParameterType, CommandTree, NumberCommandParameter, NumberCommandParameterConfig, SerializedCommandTree, SingleBooleanCommandParameter, SingleNumberCommandParameter, SingleStringCommandParameter, StringCommandParameter, StringCommandParameterConfig, VariadicBooleanCommandParameter, VariadicNumberCommandParameter, VariadicStringCommandParameter } from "./command.cjs";
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, CommandParameterKind, CommandParameterKinds, CommandParameterType, CommandTree, Context, NumberCommandParameter, NumberCommandParameterConfig, Options, OutputConfig, ReferenceOptions, ResolvedConfig, SerializedCommandTree, SingleBooleanCommandParameter, SingleNumberCommandParameter, SingleStringCommandParameter, StringCommandParameter, StringCommandParameterConfig, UnresolvedContext, UserConfig, VariadicBooleanCommandParameter, VariadicNumberCommandParameter, VariadicStringCommandParameter };
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 };
@@ -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, CommandParameterKind, CommandParameterKinds, CommandParameterType, CommandTree, NumberCommandParameter, NumberCommandParameterConfig, SerializedCommandTree, SingleBooleanCommandParameter, SingleNumberCommandParameter, SingleStringCommandParameter, StringCommandParameter, StringCommandParameterConfig, VariadicBooleanCommandParameter, VariadicNumberCommandParameter, VariadicStringCommandParameter } from "./command.mjs";
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, CommandParameterKind, CommandParameterKinds, CommandParameterType, CommandTree, Context, NumberCommandParameter, NumberCommandParameterConfig, Options, OutputConfig, ReferenceOptions, ResolvedConfig, SerializedCommandTree, SingleBooleanCommandParameter, SingleNumberCommandParameter, SingleStringCommandParameter, StringCommandParameter, StringCommandParameterConfig, UnresolvedContext, UserConfig, VariadicBooleanCommandParameter, VariadicNumberCommandParameter, VariadicStringCommandParameter };
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 };
@@ -1 +1,6 @@
1
- import{CommandParameterKinds as e,__ΩAsCommandParameterConfig as t,__ΩBaseBooleanCommandParameter as n,__ΩBaseCommandParameter as r,__ΩBaseNumberCommandParameter as i,__ΩBaseSingleCommandParameter as a,__ΩBaseStringCommandParameter as o,__ΩBaseVariadicCommandParameter as s,__ΩBooleanCommandOption as c,__ΩBooleanCommandParameter as l,__ΩBooleanCommandParameterConfig as u,__ΩCommandArgument as d,__ΩCommandArgumentConfig as f,__ΩCommandBase as p,__ΩCommandConfig as m,__ΩCommandMetadata as h,__ΩCommandModule as g,__ΩCommandOption as _,__ΩCommandOptionConfig as v,__ΩCommandParameter as y,__ΩCommandParameterConfig as b,__ΩCommandParameterKind as x,__ΩCommandParameterType as S,__ΩCommandTree as C,__ΩNumberCommandParameter as w,__ΩNumberCommandParameterConfig as T,__ΩSerializedCommandTree as E,__ΩSingleBooleanCommandParameter as D,__ΩSingleNumberCommandParameter as O,__ΩSingleStringCommandParameter as k,__ΩStringCommandParameter as A,__ΩStringCommandParameterConfig as j,__ΩVariadicBooleanCommandParameter as M,__ΩVariadicNumberCommandParameter as N,__ΩVariadicStringCommandParameter as P}from"./command.mjs";import{__ΩOptions as F,__ΩOutputConfig as I,__ΩReferenceOptions as L,__ΩResolvedConfig as R,__ΩUserConfig as z}from"./config.mjs";import{__ΩContext as B,__ΩUnresolvedContext as V}from"./context.mjs";import{__ΩBaseCommandOptions as H}from"./options.mjs";export{e as CommandParameterKinds,t as __ΩAsCommandParameterConfig,n as __ΩBaseBooleanCommandParameter,H as __ΩBaseCommandOptions,r as __ΩBaseCommandParameter,i as __ΩBaseNumberCommandParameter,a as __ΩBaseSingleCommandParameter,o as __ΩBaseStringCommandParameter,s as __ΩBaseVariadicCommandParameter,c as __ΩBooleanCommandOption,l as __ΩBooleanCommandParameter,u as __ΩBooleanCommandParameterConfig,d as __ΩCommandArgument,f as __ΩCommandArgumentConfig,p as __ΩCommandBase,m as __ΩCommandConfig,h as __ΩCommandMetadata,g as __ΩCommandModule,_ as __ΩCommandOption,v as __ΩCommandOptionConfig,y as __ΩCommandParameter,b as __ΩCommandParameterConfig,x as __ΩCommandParameterKind,S as __ΩCommandParameterType,C as __ΩCommandTree,B as __ΩContext,w as __ΩNumberCommandParameter,T as __ΩNumberCommandParameterConfig,F as __ΩOptions,I as __ΩOutputConfig,L as __ΩReferenceOptions,R as __ΩResolvedConfig,E as __ΩSerializedCommandTree,D as __ΩSingleBooleanCommandParameter,O as __ΩSingleNumberCommandParameter,k as __ΩSingleStringCommandParameter,A as __ΩStringCommandParameter,j as __ΩStringCommandParameterConfig,V as __ΩUnresolvedContext,z as __ΩUserConfig,M as __ΩVariadicBooleanCommandParameter,N as __ΩVariadicNumberCommandParameter,P as __ΩVariadicStringCommandParameter};
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 };
@@ -1 +1,13 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=[`help`,`version`,`BaseCommandOptions`,`P)4!)4"Mw#y`];exports.__ΩBaseCommandOptions=e;
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,OAAA;AAAA"}
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":";UAkBiB,kBAAA;EACf,IAAA;EACA,OAAA;AAAA"}
1
+ {"version":3,"file":"options.d.mts","names":[],"sources":["../../src/types/options.ts"],"mappings":""}
@@ -1,2 +1,11 @@
1
- const e=[`help`,`version`,`BaseCommandOptions`,`P)4!)4"Mw#y`];export{e as __ΩBaseCommandOptions};
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":["../../src/types/options.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\nexport interface BaseCommandOptions {\n help: boolean;\n version: boolean;\n}\n"],"mappings":""}
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.8",
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.0-dev.8",
365
- "@alloy-js/markdown": "0.23.0-dev.1",
366
- "@alloy-js/typescript": "0.23.0-dev.4",
367
- "@powerlines/deepkit": "^0.8.49",
368
- "@powerlines/plugin-alloy": "^0.26.67",
369
- "@powerlines/plugin-automd": "^0.1.448",
370
- "@powerlines/plugin-deepkit": "^0.11.330",
371
- "@powerlines/plugin-nodejs": "^0.1.375",
372
- "@powerlines/plugin-tsdown": "^0.1.389",
373
- "@standard-schema/spec": "^1.1.0",
374
- "@standard-schema/utils": "^0.3.0",
375
- "@stryke/cli": "^0.13.41",
376
- "@stryke/convert": "^0.7.2",
377
- "@stryke/fs": "^0.33.69",
378
- "@stryke/helpers": "^0.10.11",
379
- "@stryke/json": "^0.14.15",
380
- "@stryke/path": "^0.28.1",
381
- "@stryke/string-format": "^0.17.12",
382
- "@stryke/type-checks": "^0.6.4",
383
- "@stryke/types": "^0.11.6",
384
- "@stryke/zod": "^0.3.16",
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
- "json-schema": "^0.4.0",
388
- "powerlines": "^0.44.12",
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.399",
393
- "@types/json-schema": "^7.0.15",
394
- "@types/node": "^25.6.0",
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": "832c19e668deb4d29b5e0219a7708d111790f607"
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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"}
@@ -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;
@@ -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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"}