@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,13 +1,15 @@
1
1
  import { CommandBase, CommandOption } from "./command.cjs";
2
2
  import { Context } from "./context.cjs";
3
- import { OutputConfig as OutputConfig$1 } from "powerlines";
3
+ import { RequiredKeys } from "@stryke/types/base";
4
+ import { ConfigParams, OutputConfig as OutputConfig$1, UserConfig as UserConfig$1 } from "powerlines";
4
5
  import { AlloyPluginResolvedConfig } from "@powerlines/plugin-alloy/types/plugin";
5
6
  import { AutoMDPluginResolvedConfig } from "@powerlines/plugin-automd";
6
- import { NodeJsPluginOptions, NodeJsPluginResolvedConfig, NodeJsPluginUserConfig } from "@powerlines/plugin-nodejs/types/plugin";
7
- import { TsdownPluginResolvedConfig, TsdownPluginUserConfig } from "@powerlines/plugin-tsdown/types/plugin";
7
+ import { NodeJsPluginOptions, NodeJsPluginResolvedConfig } from "@powerlines/plugin-nodejs/types/plugin";
8
+ import { TsdownPluginResolvedConfig } from "@powerlines/plugin-tsdown/types/plugin";
9
+ import { EngineOptions as EngineOptions$1 } from "powerlines/engine";
8
10
 
9
11
  //#region src/types/config.d.ts
10
- type BuildOptions = Pick<TsdownPluginUserConfig, "root" | "name" | "title" | "description" | "logLevel" | "mode" | "skipCache" | "autoInstall" | "plugins" | "tsconfig" | "tsconfigRaw">;
12
+ type BuildOptions = Pick<UserConfig$1, "name" | "title" | "description" | "input" | "output" | "logLevel" | "mode" | "define" | "inject" | "resolve" | "organization" | "skipCache" | "autoInstall" | "plugins" | "tsconfig" | "tsconfigRaw">;
11
13
  interface ReferenceOptions {
12
14
  /**
13
15
  * A URL to the application documentation or reference.
@@ -17,18 +19,18 @@ interface ReferenceOptions {
17
19
  * A URL to the application command specific documentation or reference.
18
20
  *
19
21
  * @remarks
20
- * This URL is expected to contain the token `{command}`, which will be replaced with the full command path to provide links to command specific documentation. For example, `myapp command subcommand` will be translated to `{reference}/command/subcommand`.
22
+ * This URL is expected to contain the token `{command}`, which will be replaced with the full command path to provide links to command specific documentation. For example, `myapp command subcommand` will be translated to `{docs}/command/subcommand`.
21
23
  */
22
24
  commands?: string;
23
25
  }
24
- type BaseOptions = Partial<BuildOptions> & {
26
+ interface BaseOptions {
25
27
  /**
26
28
  * A set of global command options to apply to each command.
27
29
  *
28
30
  * @remarks
29
31
  * Each command will inherit these global options. To disable the addition of these global options, set this property to `false`, or provide a custom set of options/a function that returns them. A `GlobalOptions` interface will be created by the `shell-shock types` command and added to the generated `shell-shock.d.ts` file.
30
32
  */
31
- globalOptions?: CommandOption[] | ((context: Context, input: CommandBase) => CommandOption[]) | false;
33
+ globalOptions?: CommandOption[] | ((context: Context<any>, input: CommandBase) => CommandOption[]) | false;
32
34
  /**
33
35
  * Determines whether commands and option names are treated as case-sensitive.
34
36
  *
@@ -60,10 +62,10 @@ type BaseOptions = Partial<BuildOptions> & {
60
62
  * A URL to the application documentation or reference.
61
63
  *
62
64
  * @remarks
63
- * This URL can be used in various displays of the user interface and documentation to provide users with a reference for the application. It can also be used by plugins to link to the documentation in relevant contexts. If the token `{command}` is included in the URL, it will be replaced with the full command path to provide links to command specific documentation. For example, `myapp command subcommand` will be translated to `{reference}/command/subcommand`.
65
+ * This URL can be used in various displays of the user interface and documentation to provide users with a reference for the application. It can also be used by plugins to link to the documentation in relevant contexts. If the token `{command}` is included in the URL, it will be replaced with the full command path to provide links to command specific documentation. For example, `myapp command subcommand` will be translated to `{docs}/command/subcommand`.
64
66
  */
65
- reference?: ReferenceOptions | string;
66
- };
67
+ docs?: ReferenceOptions | string;
68
+ }
67
69
  /**
68
70
  * The plugin options for Shell Shock.
69
71
  */
@@ -80,12 +82,17 @@ type OutputConfig = Pick<OutputConfig$1, "path" | "copy" | "storage" | "sourceMa
80
82
  /**
81
83
  * The user configuration options for Shell Shock.
82
84
  */
83
- type UserConfig = BaseOptions & Partial<NodeJsPluginUserConfig> & Pick<NodeJsPluginUserConfig, "root"> & {
85
+ type UserConfig = BaseOptions & RequiredKeys<BuildOptions, "name"> & {
84
86
  /**
85
87
  * Configuration for the output of the build process
86
88
  */
87
89
  output?: OutputConfig;
88
90
  };
91
+ type UserConfigFnObject = (env: ConfigParams) => UserConfig | UserConfig[];
92
+ type UserConfigFnPromise = (env: ConfigParams) => Promise<UserConfig | UserConfig[]>;
93
+ type UserConfigFn = (env: ConfigParams) => UserConfig | UserConfig[] | Promise<UserConfig | UserConfig[]>;
94
+ type UserConfigExport = UserConfig | UserConfig[] | Promise<UserConfig | UserConfig[]> | UserConfigFnObject | UserConfigFnPromise | UserConfigFn;
95
+ type EngineOptions = Omit<EngineOptions$1, "root" | "name" | "framework">;
89
96
  /**
90
97
  * The resolved configuration options for Shell Shock.
91
98
  */
@@ -115,5 +122,5 @@ type ResolvedConfig = TsdownPluginResolvedConfig & AlloyPluginResolvedConfig & A
115
122
  userConfig: UserConfig;
116
123
  };
117
124
  //#endregion
118
- export { Options, OutputConfig, ReferenceOptions, ResolvedConfig, UserConfig };
125
+ export { EngineOptions, Options, OutputConfig, ReferenceOptions, ResolvedConfig, UserConfig, UserConfigExport, UserConfigFn, UserConfigFnObject, UserConfigFnPromise };
119
126
  //# sourceMappingURL=config.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.cts","names":[],"sources":["../../src/types/config.ts"],"mappings":";;;;;;;;;KAiCK,YAAA,GAAe,IAAA,CAClB,sBAAA;AAAA,UAce,gBAAA;EAfZ;;;EAmBH,GAAA;EAlBsB;AAcxB;;;;;EAYE,QAAA;AAAA;AAAA,KAGG,WAAA,GAAc,OAAA,CAAQ,YAAA;EAAA;;;;;;EAOzB,aAAA,GACI,aAAA,OACE,OAAA,EAAS,OAAA,EAAS,KAAA,EAAO,WAAA,KAAgB,aAAA;EAuCnB;;;;;EA/B5B,eAAA;EARe;;;;;;;;;;EAoBf,GAAA;EAmB4B;AAM9B;;;;;;;;EAdE,aAAA;EAckC;;;;AAKpC;;EAXE,SAAA,GAAY,gBAAA;AAAA;;;;KAMF,OAAA,GAAU,WAAA,GAAc,OAAA,CAAQ,mBAAA;;AAkB5C;;KAbY,YAAA,GAAe,IAAA,CACzB,cAAA;EAYuB;;;EANvB,GAAA;AAAA;;;;KAMU,UAAA,GAAa,WAAA,GACvB,OAAA,CAAQ,sBAAA,IACR,IAAA,CAAK,sBAAA;EADL;;;EAKE,MAAA,GAAS,YAAA;AAAA;;;;KAMD,cAAA,GAAiB,0BAAA,GAC3B,yBAAA,GACA,0BAAA,GACA,0BAAA,GACA,QAAA,CAAS,IAAA,CAAK,OAAA;EAJU;;;;;;;;;;EAetB,GAAA,EAAK,MAAA;EAeO;;;EAVZ,SAAA,EAAW,gBAAA;EAnBb;;;EAwBE,oBAAA;EArBO;;;EA0BP,UAAA,EAAY,UAAA;AAAA"}
1
+ {"version":3,"file":"config.d.cts","names":[],"sources":["../../src/types/config.ts"],"mappings":";;;;;;;;;;;KAmCK,YAAA,GAAe,IAAI,CACtB,YAAA;AAAA,UAmBe,gBAAA;EApBZ;;;EAwBH,GAAA;EAvBoB;AAmBtB;;;;AAYU;EAAR,QAAQ;AAAA;AAAA,UAGA,WAAA;EAQJ;;;;;;EADJ,aAAA,GACI,aAAA,OACE,OAAA,EAAS,OAAA,OAAc,KAAA,EAAO,WAAA,KAAgB,aAAA;EAFpD;;;;;EAUA,eAAA;EARoD;;;;;;;AAuC7B;AAMzB;;EAzBE,GAAA;EAyBoB;;;;;;;;;EAdpB,aAAA;EAmBU;;;;;;EAXV,IAAA,GAAO,gBAAA;AAAA;AAkBJ;AAML;;AANK,KAZO,OAAA,GAAU,WAAA,GAAc,OAAA,CAAQ,mBAAA;;;;KAKhC,YAAA,GAAe,IAAI,CAC7B,cAAA;EAiBuB;;;EAXvB,GAAA;AAAA;;;;KAMU,UAAA,GAAa,WAAA,GACvB,YAAA,CAAa,YAAA;EAOH;;;EAHR,MAAA,GAAS,YAAA;AAAA;AAAA,KAGD,kBAAA,IACV,GAAA,EAAK,YAAA,KACF,UAAA,GAAa,UAAA;AAAA,KACN,mBAAA,IACV,GAAA,EAAK,YAAA,KACF,OAAA,CAAQ,UAAA,GAAa,UAAA;AAAA,KACd,YAAA,IACV,GAAA,EAAK,YAAA,KACF,UAAA,GAAa,UAAA,KAAe,OAAA,CAAQ,UAAA,GAAa,UAAA;AAAA,KAE1C,gBAAA,GACR,UAAA,GACA,UAAA,KACA,OAAA,CAAQ,UAAA,GAAa,UAAA,MACrB,kBAAA,GACA,mBAAA,GACA,YAAA;AAAA,KAEQ,aAAA,GAAgB,IAAI,CAC9B,eAAA;;;;KAOU,cAAA,GAAiB,0BAAA,GAC3B,yBAAA,GACA,0BAAA,GACA,0BAAA,GACA,QAAA,CAAS,IAAA,CAAK,OAAA;EA3BJ;;;;;;;;;;EAsCR,GAAA,EAAK,MAAA;EApCJ;;;EAyCD,SAAA,EAAW,gBAAA;EAzCqB;AACpC;;EA6CI,oBAAA;EA5CG;;;EAiDH,UAAA,EAAY,UAAA;AAAA"}
@@ -1,13 +1,15 @@
1
1
  import { CommandBase, CommandOption } from "./command.mjs";
2
2
  import { Context } from "./context.mjs";
3
- import { OutputConfig as OutputConfig$1 } from "powerlines";
4
3
  import { AutoMDPluginResolvedConfig } from "@powerlines/plugin-automd";
4
+ import { ConfigParams, OutputConfig as OutputConfig$1, UserConfig as UserConfig$1 } from "powerlines";
5
+ import { RequiredKeys } from "@stryke/types/base";
5
6
  import { AlloyPluginResolvedConfig } from "@powerlines/plugin-alloy/types/plugin";
6
- import { NodeJsPluginOptions, NodeJsPluginResolvedConfig, NodeJsPluginUserConfig } from "@powerlines/plugin-nodejs/types/plugin";
7
- import { TsdownPluginResolvedConfig, TsdownPluginUserConfig } from "@powerlines/plugin-tsdown/types/plugin";
7
+ import { NodeJsPluginOptions, NodeJsPluginResolvedConfig } from "@powerlines/plugin-nodejs/types/plugin";
8
+ import { TsdownPluginResolvedConfig } from "@powerlines/plugin-tsdown/types/plugin";
9
+ import { EngineOptions as EngineOptions$1 } from "powerlines/engine";
8
10
 
9
11
  //#region src/types/config.d.ts
10
- type BuildOptions = Pick<TsdownPluginUserConfig, "root" | "name" | "title" | "description" | "logLevel" | "mode" | "skipCache" | "autoInstall" | "plugins" | "tsconfig" | "tsconfigRaw">;
12
+ type BuildOptions = Pick<UserConfig$1, "name" | "title" | "description" | "input" | "output" | "logLevel" | "mode" | "define" | "inject" | "resolve" | "organization" | "skipCache" | "autoInstall" | "plugins" | "tsconfig" | "tsconfigRaw">;
11
13
  interface ReferenceOptions {
12
14
  /**
13
15
  * A URL to the application documentation or reference.
@@ -17,18 +19,18 @@ interface ReferenceOptions {
17
19
  * A URL to the application command specific documentation or reference.
18
20
  *
19
21
  * @remarks
20
- * This URL is expected to contain the token `{command}`, which will be replaced with the full command path to provide links to command specific documentation. For example, `myapp command subcommand` will be translated to `{reference}/command/subcommand`.
22
+ * This URL is expected to contain the token `{command}`, which will be replaced with the full command path to provide links to command specific documentation. For example, `myapp command subcommand` will be translated to `{docs}/command/subcommand`.
21
23
  */
22
24
  commands?: string;
23
25
  }
24
- type BaseOptions = Partial<BuildOptions> & {
26
+ interface BaseOptions {
25
27
  /**
26
28
  * A set of global command options to apply to each command.
27
29
  *
28
30
  * @remarks
29
31
  * Each command will inherit these global options. To disable the addition of these global options, set this property to `false`, or provide a custom set of options/a function that returns them. A `GlobalOptions` interface will be created by the `shell-shock types` command and added to the generated `shell-shock.d.ts` file.
30
32
  */
31
- globalOptions?: CommandOption[] | ((context: Context, input: CommandBase) => CommandOption[]) | false;
33
+ globalOptions?: CommandOption[] | ((context: Context<any>, input: CommandBase) => CommandOption[]) | false;
32
34
  /**
33
35
  * Determines whether commands and option names are treated as case-sensitive.
34
36
  *
@@ -60,10 +62,10 @@ type BaseOptions = Partial<BuildOptions> & {
60
62
  * A URL to the application documentation or reference.
61
63
  *
62
64
  * @remarks
63
- * This URL can be used in various displays of the user interface and documentation to provide users with a reference for the application. It can also be used by plugins to link to the documentation in relevant contexts. If the token `{command}` is included in the URL, it will be replaced with the full command path to provide links to command specific documentation. For example, `myapp command subcommand` will be translated to `{reference}/command/subcommand`.
65
+ * This URL can be used in various displays of the user interface and documentation to provide users with a reference for the application. It can also be used by plugins to link to the documentation in relevant contexts. If the token `{command}` is included in the URL, it will be replaced with the full command path to provide links to command specific documentation. For example, `myapp command subcommand` will be translated to `{docs}/command/subcommand`.
64
66
  */
65
- reference?: ReferenceOptions | string;
66
- };
67
+ docs?: ReferenceOptions | string;
68
+ }
67
69
  /**
68
70
  * The plugin options for Shell Shock.
69
71
  */
@@ -80,12 +82,17 @@ type OutputConfig = Pick<OutputConfig$1, "path" | "copy" | "storage" | "sourceMa
80
82
  /**
81
83
  * The user configuration options for Shell Shock.
82
84
  */
83
- type UserConfig = BaseOptions & Partial<NodeJsPluginUserConfig> & Pick<NodeJsPluginUserConfig, "root"> & {
85
+ type UserConfig = BaseOptions & RequiredKeys<BuildOptions, "name"> & {
84
86
  /**
85
87
  * Configuration for the output of the build process
86
88
  */
87
89
  output?: OutputConfig;
88
90
  };
91
+ type UserConfigFnObject = (env: ConfigParams) => UserConfig | UserConfig[];
92
+ type UserConfigFnPromise = (env: ConfigParams) => Promise<UserConfig | UserConfig[]>;
93
+ type UserConfigFn = (env: ConfigParams) => UserConfig | UserConfig[] | Promise<UserConfig | UserConfig[]>;
94
+ type UserConfigExport = UserConfig | UserConfig[] | Promise<UserConfig | UserConfig[]> | UserConfigFnObject | UserConfigFnPromise | UserConfigFn;
95
+ type EngineOptions = Omit<EngineOptions$1, "root" | "name" | "framework">;
89
96
  /**
90
97
  * The resolved configuration options for Shell Shock.
91
98
  */
@@ -115,5 +122,5 @@ type ResolvedConfig = TsdownPluginResolvedConfig & AlloyPluginResolvedConfig & A
115
122
  userConfig: UserConfig;
116
123
  };
117
124
  //#endregion
118
- export { Options, OutputConfig, ReferenceOptions, ResolvedConfig, UserConfig };
125
+ export { EngineOptions, Options, OutputConfig, ReferenceOptions, ResolvedConfig, UserConfig, UserConfigExport, UserConfigFn, UserConfigFnObject, UserConfigFnPromise };
119
126
  //# sourceMappingURL=config.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.mts","names":[],"sources":["../../src/types/config.ts"],"mappings":";;;;;;;;;KAiCK,YAAA,GAAe,IAAA,CAClB,sBAAA;AAAA,UAce,gBAAA;EAfZ;;;EAmBH,GAAA;EAlBsB;AAcxB;;;;;EAYE,QAAA;AAAA;AAAA,KAGG,WAAA,GAAc,OAAA,CAAQ,YAAA;EAAA;;;;;;EAOzB,aAAA,GACI,aAAA,OACE,OAAA,EAAS,OAAA,EAAS,KAAA,EAAO,WAAA,KAAgB,aAAA;EAuCnB;;;;;EA/B5B,eAAA;EARe;;;;;;;;;;EAoBf,GAAA;EAmB4B;AAM9B;;;;;;;;EAdE,aAAA;EAckC;;;;AAKpC;;EAXE,SAAA,GAAY,gBAAA;AAAA;;;;KAMF,OAAA,GAAU,WAAA,GAAc,OAAA,CAAQ,mBAAA;;AAkB5C;;KAbY,YAAA,GAAe,IAAA,CACzB,cAAA;EAYuB;;;EANvB,GAAA;AAAA;;;;KAMU,UAAA,GAAa,WAAA,GACvB,OAAA,CAAQ,sBAAA,IACR,IAAA,CAAK,sBAAA;EADL;;;EAKE,MAAA,GAAS,YAAA;AAAA;;;;KAMD,cAAA,GAAiB,0BAAA,GAC3B,yBAAA,GACA,0BAAA,GACA,0BAAA,GACA,QAAA,CAAS,IAAA,CAAK,OAAA;EAJU;;;;;;;;;;EAetB,GAAA,EAAK,MAAA;EAeO;;;EAVZ,SAAA,EAAW,gBAAA;EAnBb;;;EAwBE,oBAAA;EArBO;;;EA0BP,UAAA,EAAY,UAAA;AAAA"}
1
+ {"version":3,"file":"config.d.mts","names":[],"sources":["../../src/types/config.ts"],"mappings":""}
@@ -1,2 +1,164 @@
1
- const e=[`T`,`K`,`Pick`,`l+e#!e"!fRb!b"Pde""N#!w#y`],t=[`T`,`Partial`,`l+e#!e"!fRb!Pde"!gN#"w"y`],n=[`T`,`Required`,`l+e#!e"!fRb!Pde"!gN##w"y`],r=[`T`,`K`,()=>e,()=>a,`Omit`,`b!b"e!!e!!ge!"o$#o##w%y`],i=[`K`,`T`,`Record`,`l'e#"Rb!b"Pde"!N#!w#y`],a=[`T`,`U`,`Exclude`,`l6!Re$!RPe#!e$"qk#%QRb!b"Pde"!p)w#y`],o=[()=>e,`root`,`name`,`title`,`description`,`logLevel`,`mode`,`skipCache`,`autoInstall`,`plugins`,`tsconfig`,`tsconfigRaw`,`BuildOptions`,`!P.".#.$.%.&.'.(.).*.+.,Jo!#w-y`],s=[`app`,`A URL to the application documentation or reference.`,`commands`,`A URL to the application command specific documentation or reference.`,`ReferenceOptions`,`P&4!?"&4#8?$Mw%y`],c=[()=>t,()=>o,`CommandOption`,`Context`,`context`,`CommandBase`,`input`,``,!1,`globalOptions`,`A set of global command options to apply to each command.`,`isCaseSensitive`,!0,`Determines whether commands and option names are treated as case-sensitive.`,`bin`,`The name of the binary (the {@link https://docs.npmjs.com/cli/v11/configuring-npm/package-json#bin | "bin" field} in package.json) that will be used to run the application through NodeJs package managers (e.g., npm, yarn, pnpm).`,!0,`autoAssignEnv`,`Should Shell Shock attempt to automatically assign environment variables to manipulate default values for command options based on the option name?`,()=>s,`reference`,`A URL to the application documentation or reference.`,`BaseOptions`,`Pn"o!"PP"w#FP"w$2%"w&2'"w#F/(.)J4*8?+)4,8>-?.P&&FJ4/8?0P.1&J428?3Pn4&J458?6MKw7y`],l=[()=>c,()=>t,`Options`,`Pn!!o""Kw#y`],u=[()=>e,`path`,`copy`,`storage`,`sourceMap`,!1,`dts`,`An indicator specifying whether to generate TypeScript declaration files (.d.ts) during the build process.`,`OutputConfig`,`P!P.".#.$.%Jo!#P.&4'8?(MKw)y`],d=[()=>c,()=>t,()=>e,`root`,()=>u,`output`,`Configuration for the output of the build process`,`UserConfig`,`Pn!!o""!.$o##Pn%4&8?'MKw(y`],f=[()=>n,()=>r,()=>l,`bin`,`reference`,()=>i,`bin`,`The name of the binary (the {@link https://docs.npmjs.com/cli/v11/configuring-npm/package-json#bin | "bin" field} in package.json) that will be used to run the application through NodeJs package managers (e.g., npm, yarn, pnpm).`,()=>s,`reference`,`The URL(s) to the application documentation or reference.`,`appSpecificEnvPrefix`,`The command-line application specific environment variable prefix used for automatically assigning environment variables to command options.`,()=>d,`userConfig`,`The user configuration for the Shell Shock process.`,`ResolvedConfig`,`P!!!!n#P.$.%Jo"#o!"P&&o&#4'?(n)4*?+&4,?-n.4/?0MKw1y`];export{l as __ΩOptions,u as __ΩOutputConfig,s as __ΩReferenceOptions,f as __ΩResolvedConfig,d as __ΩUserConfig};
1
+ //#region src/types/config.ts
2
+ const __ΩPick = [
3
+ "T",
4
+ "K",
5
+ "Pick",
6
+ "l+e#!e\"!fRb!b\"Pde\"\"N#!w#y"
7
+ ];
8
+ const __ΩPartial = [
9
+ "T",
10
+ "Partial",
11
+ "l+e#!e\"!fRb!Pde\"!gN#\"w\"y"
12
+ ];
13
+ const __ΩOmit = [
14
+ "T",
15
+ "K",
16
+ () => __ΩPick,
17
+ () => __ΩExclude,
18
+ "Omit",
19
+ "b!b\"e!!e!!ge!\"o$#o##w%y"
20
+ ];
21
+ const __ΩRequired = [
22
+ "T",
23
+ "Required",
24
+ "l+e#!e\"!fRb!Pde\"!gN##w\"y"
25
+ ];
26
+ const __ΩRecord = [
27
+ "K",
28
+ "T",
29
+ "Record",
30
+ "l'e#\"Rb!b\"Pde\"!N#!w#y"
31
+ ];
32
+ const __ΩExclude = [
33
+ "T",
34
+ "U",
35
+ "Exclude",
36
+ "l6!Re$!RPe#!e$\"qk#%QRb!b\"Pde\"!p)w#y"
37
+ ];
38
+ const __ΩReferenceOptions = [
39
+ "app",
40
+ "A URL to the application documentation or reference.",
41
+ "commands",
42
+ "A URL to the application command specific documentation or reference.",
43
+ "ReferenceOptions",
44
+ "P&4!?\"&4#8?$Mw%y"
45
+ ];
46
+ const __ΩBaseOptions = [
47
+ "CommandOption",
48
+ "Context",
49
+ "context",
50
+ "CommandBase",
51
+ "input",
52
+ "",
53
+ false,
54
+ "globalOptions",
55
+ "A set of global command options to apply to each command.",
56
+ "isCaseSensitive",
57
+ true,
58
+ "Determines whether commands and option names are treated as case-sensitive.",
59
+ "bin",
60
+ "The name of the binary (the {@link https://docs.npmjs.com/cli/v11/configuring-npm/package-json#bin | \"bin\" field} in package.json) that will be used to run the application through NodeJs package managers (e.g., npm, yarn, pnpm).",
61
+ true,
62
+ "autoAssignEnv",
63
+ "Should Shell Shock attempt to automatically assign environment variables to manipulate default values for command options based on the option name?",
64
+ () => __ΩReferenceOptions,
65
+ "docs",
66
+ "A URL to the application documentation or reference.",
67
+ "BaseOptions",
68
+ "PP\"w!FP\"w\"2#\"w$2%\"w!F/&.'J4(8?))4*8>+?,P&&FJ4-8?.P./&J408?1Pn2&J438?4Mw5y"
69
+ ];
70
+ const __ΩOptions = [
71
+ () => __ΩBaseOptions,
72
+ () => __ΩPartial,
73
+ "Options",
74
+ "Pn!!o\"\"Kw#y"
75
+ ];
76
+ const __ΩOutputConfig = [
77
+ () => __ΩPick,
78
+ "path",
79
+ "copy",
80
+ "storage",
81
+ "sourceMap",
82
+ false,
83
+ "dts",
84
+ "An indicator specifying whether to generate TypeScript declaration files (.d.ts) during the build process.",
85
+ "OutputConfig",
86
+ "P!P.\".#.$.%Jo!#P.&4'8?(MKw)y"
87
+ ];
88
+ const __ΩUserConfig = [
89
+ () => __ΩBaseOptions,
90
+ () => __ΩOutputConfig,
91
+ "output",
92
+ "Configuration for the output of the build process",
93
+ "UserConfig",
94
+ "Pn!!Pn\"4#8?$MKw%y"
95
+ ];
96
+ const __ΩUserConfigFnObject = [
97
+ "env",
98
+ () => __ΩUserConfig,
99
+ () => __ΩUserConfig,
100
+ "",
101
+ "UserConfigFnObject",
102
+ "P!2!Pn\"n#FJ/$w%y"
103
+ ];
104
+ const __ΩUserConfigFnPromise = [
105
+ "env",
106
+ () => __ΩUserConfig,
107
+ () => __ΩUserConfig,
108
+ "",
109
+ "UserConfigFnPromise",
110
+ "P!2!Pn\"n#FJ`/$w%y"
111
+ ];
112
+ const __ΩUserConfigFn = [
113
+ "env",
114
+ () => __ΩUserConfig,
115
+ () => __ΩUserConfig,
116
+ () => __ΩUserConfig,
117
+ () => __ΩUserConfig,
118
+ "",
119
+ "UserConfigFn",
120
+ "P!2!Pn\"n#FPn$n%FJ`J/&w'y"
121
+ ];
122
+ const __ΩUserConfigExport = [
123
+ () => __ΩUserConfig,
124
+ () => __ΩUserConfig,
125
+ () => __ΩUserConfig,
126
+ () => __ΩUserConfig,
127
+ () => __ΩUserConfigFnObject,
128
+ () => __ΩUserConfigFnPromise,
129
+ () => __ΩUserConfigFn,
130
+ "UserConfigExport",
131
+ "Pn!n\"FPn#n$FJ`n%n&n'Jw(y"
132
+ ];
133
+ const __ΩEngineOptions = [
134
+ () => __ΩOmit,
135
+ "root",
136
+ "name",
137
+ "framework",
138
+ "EngineOptions",
139
+ "!P.\".#.$Jo!#w%y"
140
+ ];
141
+ const __ΩResolvedConfig = [
142
+ () => __ΩRequired,
143
+ () => __ΩOmit,
144
+ () => __ΩOptions,
145
+ "bin",
146
+ "reference",
147
+ () => __ΩRecord,
148
+ "bin",
149
+ "The name of the binary (the {@link https://docs.npmjs.com/cli/v11/configuring-npm/package-json#bin | \"bin\" field} in package.json) that will be used to run the application through NodeJs package managers (e.g., npm, yarn, pnpm).",
150
+ () => __ΩReferenceOptions,
151
+ "reference",
152
+ "The URL(s) to the application documentation or reference.",
153
+ "appSpecificEnvPrefix",
154
+ "The command-line application specific environment variable prefix used for automatically assigning environment variables to command options.",
155
+ () => __ΩUserConfig,
156
+ "userConfig",
157
+ "The user configuration for the Shell Shock process.",
158
+ "ResolvedConfig",
159
+ "P!!!!n#P.$.%Jo\"#o!\"P&&o&#4'?(n)4*?+&4,?-n.4/?0MKw1y"
160
+ ];
161
+
162
+ //#endregion
163
+ export { __ΩEngineOptions, __ΩOptions, __ΩOutputConfig, __ΩReferenceOptions, __ΩResolvedConfig, __ΩUserConfig, __ΩUserConfigExport, __ΩUserConfigFn, __ΩUserConfigFnObject, __ΩUserConfigFnPromise };
2
164
  //# sourceMappingURL=config.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.mjs","names":[],"sources":["../../src/types/config.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 { AlloyPluginResolvedConfig } from \"@powerlines/plugin-alloy/types/plugin\";\nimport type { AutoMDPluginResolvedConfig } from \"@powerlines/plugin-automd\";\nimport type {\n NodeJsPluginOptions,\n NodeJsPluginResolvedConfig,\n NodeJsPluginUserConfig\n} from \"@powerlines/plugin-nodejs/types/plugin\";\nimport type {\n TsdownPluginResolvedConfig,\n TsdownPluginUserConfig\n} from \"@powerlines/plugin-tsdown/types/plugin\";\nimport type { OutputConfig as PowerlinesOutputConfig } from \"powerlines\";\nimport type { CommandBase, CommandOption } from \"./command\";\nimport type { Context } from \"./context\";\n\ntype BuildOptions = Pick<\n TsdownPluginUserConfig,\n | \"root\"\n | \"name\"\n | \"title\"\n | \"description\"\n | \"logLevel\"\n | \"mode\"\n | \"skipCache\"\n | \"autoInstall\"\n | \"plugins\"\n | \"tsconfig\"\n | \"tsconfigRaw\"\n>;\n\nexport interface ReferenceOptions {\n /**\n * A URL to the application documentation or reference.\n */\n app: string;\n\n /**\n * A URL to the application command specific documentation or reference.\n *\n * @remarks\n * This URL is expected to contain the token `{command}`, which will be replaced with the full command path to provide links to command specific documentation. For example, `myapp command subcommand` will be translated to `{reference}/command/subcommand`.\n */\n commands?: string;\n}\n\ntype BaseOptions = Partial<BuildOptions> & {\n /**\n * A set of global command options to apply to each command.\n *\n * @remarks\n * Each command will inherit these global options. To disable the addition of these global options, set this property to `false`, or provide a custom set of options/a function that returns them. A `GlobalOptions` interface will be created by the `shell-shock types` command and added to the generated `shell-shock.d.ts` file.\n */\n globalOptions?:\n | CommandOption[]\n | ((context: Context, input: CommandBase) => CommandOption[])\n | false;\n\n /**\n * Determines whether commands and option names are treated as case-sensitive.\n *\n * @defaultValue `false`\n */\n isCaseSensitive?: boolean;\n\n /**\n * The name of the binary (the {@link https://docs.npmjs.com/cli/v11/configuring-npm/package-json#bin | \"bin\" field} in package.json) that will be used to run the application through NodeJs package managers (e.g., npm, yarn, pnpm).\n *\n * @remarks\n * If an array is provided, each binary will be linked to the same compiled output file. If not provided, the {@link Options.name | name} option will be used.\n *\n * @see https://docs.npmjs.com/cli/v11/configuring-npm/package-json#bin\n * @see https://yarnpkg.com/cli/bin\n * @see https://pnpm.io/package_json#bin\n */\n bin?: string | string[];\n\n /**\n * Should Shell Shock attempt to automatically assign environment variables to manipulate default values for command options based on the option name?\n *\n * @remarks\n * If set to a string, Shell Shock will use the provided string as an application specific environment variable prefix, convert the option name to {@link https://stringcase.org/cases/constant/ | constant case}, and prepend the provided `string` value to determine the corresponding environment variable name. For example, if an option is named `\"configPath\"` and the `autoAssignEnv` is `\"MY_APP_\"`, Shell Shock will look for an environment variable named `\"MY_APP_CONFIG_PATH\"` and assign its value to the option if it exists. If set to `true`, Shell Shock will use a default environment variable prefix derived from the {@link Options.name | application name}.\n *\n * @see https://medium.com/chingu/an-introduction-to-environment-variables-and-how-to-use-them-f602f66d15fa\n * @see https://stringcase.org/cases/constant/\n */\n autoAssignEnv?: true | string;\n\n /**\n * A URL to the application documentation or reference.\n *\n * @remarks\n * This URL can be used in various displays of the user interface and documentation to provide users with a reference for the application. It can also be used by plugins to link to the documentation in relevant contexts. If the token `{command}` is included in the URL, it will be replaced with the full command path to provide links to command specific documentation. For example, `myapp command subcommand` will be translated to `{reference}/command/subcommand`.\n */\n reference?: ReferenceOptions | string;\n};\n\n/**\n * The plugin options for Shell Shock.\n */\nexport type Options = BaseOptions & Partial<NodeJsPluginOptions>;\n\n/**\n * The output configuration options for Shell Shock.\n */\nexport type OutputConfig = Pick<\n PowerlinesOutputConfig,\n \"path\" | \"copy\" | \"storage\" | \"sourceMap\"\n> & {\n /**\n * An indicator specifying whether to generate TypeScript declaration files (.d.ts) during the build process.\n */\n dts?: false;\n};\n\n/**\n * The user configuration options for Shell Shock.\n */\nexport type UserConfig = BaseOptions &\n Partial<NodeJsPluginUserConfig> &\n Pick<NodeJsPluginUserConfig, \"root\"> & {\n /**\n * Configuration for the output of the build process\n */\n output?: OutputConfig;\n };\n\n/**\n * The resolved configuration options for Shell Shock.\n */\nexport type ResolvedConfig = TsdownPluginResolvedConfig &\n AlloyPluginResolvedConfig &\n AutoMDPluginResolvedConfig &\n NodeJsPluginResolvedConfig &\n Required<Omit<Options, \"bin\" | \"reference\">> & {\n /**\n * The name of the binary (the {@link https://docs.npmjs.com/cli/v11/configuring-npm/package-json#bin | \"bin\" field} in package.json) that will be used to run the application through NodeJs package managers (e.g., npm, yarn, pnpm).\n *\n * @remarks\n * If an array is provided, each binary will be linked to the same compiled output file. If not provided, the {@link Options.name | name} option will be used.\n *\n * @see https://docs.npmjs.com/cli/v11/configuring-npm/package-json#bin\n * @see https://yarnpkg.com/cli/bin\n * @see https://pnpm.io/package_json#bin\n */\n bin: Record<string, string>;\n\n /**\n * The URL(s) to the application documentation or reference.\n */\n reference: ReferenceOptions;\n\n /**\n * The command-line application specific environment variable prefix used for automatically assigning environment variables to command options.\n */\n appSpecificEnvPrefix: string;\n\n /**\n * The user configuration for the Shell Shock process.\n */\n userConfig: UserConfig;\n };\n"],"mappings":"AAAA,MAAM,EAAU,CAAC,IAAK,IAAK,OAAQ,4BAA4B,8CAEzD,EAAc,CAAA,IAAM,WAAW,2BAAM,0DAErC,EAAS,CAAA,IAAS,IAAG,SAAY,wBAAqB,CACxD,EAAc,CAAA,IAAM,IAAA,UAAe,sCAA4B,CAC7D,EAAkB,KAAC,EAAa,OAAS,OAAA,QAAa,cAAO,WAAA,OAAA,YAAA,cAAA,UAAA,WAAA,cAAA,eAAA,kCAAA,CAC9D,EAAuB,CAAC,MAAE,uDAA+C,WAAA,wEAAA,mBAAA,mBAAA,CAE7E,EAAsB,KAAI,MAAqB,EAAC,gBAAA,UAAA,UAAA,cAAA,QAAA,GAAA,GAAA,gBAAA,4DAAA,kBAAA,GAAA,8EAAA,MAAA,uOAAA,GAAA,gBAAA,0JAAA,EAAA,YAAA,uDAAA,cAAA,mFAAA,CAChD,EAAkB,KAAO,MAAoB,EAAc,UAAO,cAAA,CAElE,EAAuB,KAAG,EAAQ,OAAa,OAAK,UAAA,YAAA,GAAA,MAAA,6GAAA,eAAA,+BAAA,CAE/C,EAAQ,KAAa,MAAS,MAAA,EAAA,WAAA,EAAA,SAAA,oDAAA,aAAA,6BAAA,CAE9B,EAAoB,KAAO,MAAmB,MAAe,EAAG,MAAA,gBAAA,EAAA,MAAA,2OAAA,EAAA,YAAA,4DAAA,uBAAA,mJAAA,EAAA,aAAA,sDAAA,iBAAA,sDAAA"}
1
+ {"version":3,"file":"config.mjs","names":[],"sources":[],"mappings":""}
@@ -1 +1,45 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=[`K`,`T`,`Record`,`l'e#"Rb!b"Pde"!N#!w#y`],t=[`ResolvedConfig`,`TResolvedConfig`,`commandsPath`,`The root path where commands are located.`,`CommandOption`,`globalOptions`,`The default command arguments to apply to all application commands.`,`CommandConfig`,`inputs`,`The list of commands discovered in the project.`,()=>e,`CommandTree`,`commands`,`The command-line application structure.`,`Context`,`"w!c"P!!!P&4#?$"w%F4&?'"w(F4)?*&"w,o+#4-?.MKw/y`],n=[`ResolvedConfig`,`TResolvedConfig`,`UnresolvedContext`,`"w!c"!w#y`];exports.__ΩContext=t,exports.__ΩUnresolvedContext=n;
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
2
+
3
+ //#region src/types/context.ts
4
+ const __ΩRecord = [
5
+ "K",
6
+ "T",
7
+ "Record",
8
+ "l'e#\"Rb!b\"Pde\"!N#!w#y"
9
+ ];
10
+ const __ΩContext = [
11
+ "ResolvedConfig",
12
+ "TResolvedConfig",
13
+ "commandsPath",
14
+ "The root path where commands are located.",
15
+ "CommandOption",
16
+ "globalOptions",
17
+ "The default command arguments to apply to all application commands.",
18
+ "CommandConfig",
19
+ "inputs",
20
+ "The list of commands discovered in the project.",
21
+ () => __ΩRecord,
22
+ "CommandTree",
23
+ "commands",
24
+ "The command-line application structure.",
25
+ "Context",
26
+ "\"w!c\"P!!!P&4#?$\"w%F4&?'\"w(F4)?*&\"w,o+#4-?.MKw/y"
27
+ ];
28
+ const __ΩExecutionContext = [
29
+ "ResolvedConfig",
30
+ "TResolvedConfig",
31
+ "ExecutionContext",
32
+ "\"w!c\"!w#y"
33
+ ];
34
+ const __ΩUnresolvedContext = [
35
+ "ResolvedConfig",
36
+ "TResolvedConfig",
37
+ "UnresolvedContext",
38
+ "\"w!c\"!w#y"
39
+ ];
40
+
41
+ //#endregion
42
+ exports.__ΩContext = __ΩContext;
43
+ exports.__ΩExecutionContext = __ΩExecutionContext;
44
+ exports.__ΩUnresolvedContext = __ΩUnresolvedContext;
45
+ //# sourceMappingURL=context.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.cjs","names":[],"sources":[],"mappings":""}
@@ -1,6 +1,6 @@
1
1
  import { CommandConfig, CommandOption, CommandTree } from "./command.cjs";
2
2
  import { ResolvedConfig } from "./config.cjs";
3
- import { UnresolvedContext as UnresolvedContext$1 } from "powerlines";
3
+ import { ExecutionContext as ExecutionContext$1, UnresolvedContext as UnresolvedContext$1 } from "powerlines";
4
4
  import { AlloyPluginContext } from "@powerlines/plugin-alloy/types/plugin";
5
5
  import { NodeJsPluginContext } from "@powerlines/plugin-nodejs/types/plugin";
6
6
  import { TsdownPluginContext } from "@powerlines/plugin-tsdown/types/plugin";
@@ -24,7 +24,8 @@ type Context<TResolvedConfig extends ResolvedConfig = ResolvedConfig> = TsdownPl
24
24
  */
25
25
  commands: Record<string, CommandTree>;
26
26
  };
27
+ type ExecutionContext<TResolvedConfig extends ResolvedConfig = ResolvedConfig> = ExecutionContext$1<TResolvedConfig>;
27
28
  type UnresolvedContext<TResolvedConfig extends ResolvedConfig = ResolvedConfig> = UnresolvedContext$1<TResolvedConfig>;
28
29
  //#endregion
29
- export { Context, UnresolvedContext };
30
+ export { Context, ExecutionContext, UnresolvedContext };
30
31
  //# sourceMappingURL=context.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.cts","names":[],"sources":["../../src/types/context.ts"],"mappings":";;;;;;;;KAyBY,OAAA,yBAAgC,cAAA,GAAiB,cAAA,IAC3D,mBAAA,CAAoB,eAAA,IAClB,kBAAA,CAAmB,eAAA,IACnB,mBAAA,CAAoB,eAAA;;AAHxB;;EAOM,YAAA;EAPsC;;;EAYtC,aAAA,EAAe,aAAA;EAVE;;;EAejB,MAAA,EAAQ,aAAA;EALO;;;EAUf,QAAA,EAAU,MAAA,SAAe,WAAA;AAAA;AAAA,KAGnB,iBAAA,yBACc,cAAA,GAAiB,cAAA,IACvC,mBAAA,CAA4B,eAAA"}
1
+ {"version":3,"file":"context.d.cts","names":[],"sources":["../../src/types/context.ts"],"mappings":";;;;;;;;KA4BY,OAAA,yBAAgC,cAAA,GAAiB,cAAA,IAC3D,mBAAA,CAAoB,eAAA,IAClB,kBAAA,CAAmB,eAAA,IACnB,mBAAA,CAAoB,eAAA;;AAHxB;;EAOM,YAAA;EAPsC;;;EAYtC,aAAA,EAAe,aAAA;EAVE;;;EAejB,MAAA,EAAQ,aAAA;EALO;;;EAUf,QAAA,EAAU,MAAA,SAAe,WAAA;AAAA;AAAA,KAGnB,gBAAA,yBACc,cAAA,GAAiB,cAAA,IACvC,kBAAA,CAA2B,eAAA;AAAA,KAEnB,iBAAA,yBACc,cAAA,GAAiB,cAAA,IACvC,mBAAA,CAA4B,eAAA"}
@@ -1,6 +1,6 @@
1
1
  import { CommandConfig, CommandOption, CommandTree } from "./command.mjs";
2
2
  import { ResolvedConfig } from "./config.mjs";
3
- import { UnresolvedContext as UnresolvedContext$1 } from "powerlines";
3
+ import { ExecutionContext as ExecutionContext$1, UnresolvedContext as UnresolvedContext$1 } from "powerlines";
4
4
  import { AlloyPluginContext } from "@powerlines/plugin-alloy/types/plugin";
5
5
  import { NodeJsPluginContext } from "@powerlines/plugin-nodejs/types/plugin";
6
6
  import { TsdownPluginContext } from "@powerlines/plugin-tsdown/types/plugin";
@@ -24,7 +24,8 @@ type Context<TResolvedConfig extends ResolvedConfig = ResolvedConfig> = TsdownPl
24
24
  */
25
25
  commands: Record<string, CommandTree>;
26
26
  };
27
+ type ExecutionContext<TResolvedConfig extends ResolvedConfig = ResolvedConfig> = ExecutionContext$1<TResolvedConfig>;
27
28
  type UnresolvedContext<TResolvedConfig extends ResolvedConfig = ResolvedConfig> = UnresolvedContext$1<TResolvedConfig>;
28
29
  //#endregion
29
- export { Context, UnresolvedContext };
30
+ export { Context, ExecutionContext, UnresolvedContext };
30
31
  //# sourceMappingURL=context.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.mts","names":[],"sources":["../../src/types/context.ts"],"mappings":";;;;;;;;KAyBY,OAAA,yBAAgC,cAAA,GAAiB,cAAA,IAC3D,mBAAA,CAAoB,eAAA,IAClB,kBAAA,CAAmB,eAAA,IACnB,mBAAA,CAAoB,eAAA;;AAHxB;;EAOM,YAAA;EAPsC;;;EAYtC,aAAA,EAAe,aAAA;EAVE;;;EAejB,MAAA,EAAQ,aAAA;EALO;;;EAUf,QAAA,EAAU,MAAA,SAAe,WAAA;AAAA;AAAA,KAGnB,iBAAA,yBACc,cAAA,GAAiB,cAAA,IACvC,mBAAA,CAA4B,eAAA"}
1
+ {"version":3,"file":"context.d.mts","names":[],"sources":["../../src/types/context.ts"],"mappings":""}
@@ -1,2 +1,41 @@
1
- const e=[`K`,`T`,`Record`,`l'e#"Rb!b"Pde"!N#!w#y`],t=[`ResolvedConfig`,`TResolvedConfig`,`commandsPath`,`The root path where commands are located.`,`CommandOption`,`globalOptions`,`The default command arguments to apply to all application commands.`,`CommandConfig`,`inputs`,`The list of commands discovered in the project.`,()=>e,`CommandTree`,`commands`,`The command-line application structure.`,`Context`,`"w!c"P!!!P&4#?$"w%F4&?'"w(F4)?*&"w,o+#4-?.MKw/y`],n=[`ResolvedConfig`,`TResolvedConfig`,`UnresolvedContext`,`"w!c"!w#y`];export{t as __ΩContext,n as __ΩUnresolvedContext};
1
+ //#region src/types/context.ts
2
+ const __ΩRecord = [
3
+ "K",
4
+ "T",
5
+ "Record",
6
+ "l'e#\"Rb!b\"Pde\"!N#!w#y"
7
+ ];
8
+ const __ΩContext = [
9
+ "ResolvedConfig",
10
+ "TResolvedConfig",
11
+ "commandsPath",
12
+ "The root path where commands are located.",
13
+ "CommandOption",
14
+ "globalOptions",
15
+ "The default command arguments to apply to all application commands.",
16
+ "CommandConfig",
17
+ "inputs",
18
+ "The list of commands discovered in the project.",
19
+ () => __ΩRecord,
20
+ "CommandTree",
21
+ "commands",
22
+ "The command-line application structure.",
23
+ "Context",
24
+ "\"w!c\"P!!!P&4#?$\"w%F4&?'\"w(F4)?*&\"w,o+#4-?.MKw/y"
25
+ ];
26
+ const __ΩExecutionContext = [
27
+ "ResolvedConfig",
28
+ "TResolvedConfig",
29
+ "ExecutionContext",
30
+ "\"w!c\"!w#y"
31
+ ];
32
+ const __ΩUnresolvedContext = [
33
+ "ResolvedConfig",
34
+ "TResolvedConfig",
35
+ "UnresolvedContext",
36
+ "\"w!c\"!w#y"
37
+ ];
38
+
39
+ //#endregion
40
+ export { __ΩContext, __ΩExecutionContext, __ΩUnresolvedContext };
2
41
  //# sourceMappingURL=context.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"context.mjs","names":[],"sources":["../../src/types/context.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 { AlloyPluginContext } from \"@powerlines/plugin-alloy/types/plugin\";\nimport type { NodeJsPluginContext } from \"@powerlines/plugin-nodejs/types/plugin\";\nimport type { TsdownPluginContext } from \"@powerlines/plugin-tsdown/types/plugin\";\nimport type { UnresolvedContext as PowerlinesUnresolvedContext } from \"powerlines\";\nimport type { CommandConfig, CommandOption, CommandTree } from \"./command\";\nimport type { ResolvedConfig } from \"./config\";\n\nexport type Context<TResolvedConfig extends ResolvedConfig = ResolvedConfig> =\n TsdownPluginContext<TResolvedConfig> &\n AlloyPluginContext<TResolvedConfig> &\n NodeJsPluginContext<TResolvedConfig> & {\n /**\n * The root path where commands are located.\n */\n commandsPath: string;\n\n /**\n * The default command arguments to apply to all application commands.\n */\n globalOptions: CommandOption[];\n\n /**\n * The list of commands discovered in the project.\n */\n inputs: CommandConfig[];\n\n /**\n * The command-line application structure.\n */\n commands: Record<string, CommandTree>;\n };\n\nexport type UnresolvedContext<\n TResolvedConfig extends ResolvedConfig = ResolvedConfig\n> = PowerlinesUnresolvedContext<TResolvedConfig>;\n"],"mappings":"AAAA,MAAM,EAAY,CAAC,IAAK,IAAK,SAAU,wBAAyB"}
1
+ {"version":3,"file":"context.mjs","names":[],"sources":[],"mappings":""}
@@ -1 +1,53 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});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`];exports.__ΩShellShockEnv=e;
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
2
+
3
+ //#region src/types/env.ts
4
+ const __ΩShellShockEnv = [
5
+ "PATHEXT",
6
+ "The system PATHEXT variable, used to determine which file extensions are considered executable on Windows.",
7
+ {
8
+ hidden: true,
9
+ internal: true,
10
+ runtime: true
11
+ },
12
+ "PATH",
13
+ "The system PATH variable, used to locate executable files.",
14
+ {
15
+ hidden: true,
16
+ internal: true,
17
+ runtime: true
18
+ },
19
+ "npm_config_user_agent",
20
+ "The npm user agent string, which can be used to detect if the environment is running within an npm script.",
21
+ {
22
+ hidden: true,
23
+ internal: true,
24
+ runtime: true
25
+ },
26
+ "npm_config_fund",
27
+ "The npm_config_fund environment variable, which can be used to control npm's funding behavior.",
28
+ {
29
+ hidden: true,
30
+ internal: true,
31
+ runtime: true
32
+ },
33
+ "npm_execpath",
34
+ "The npm execution path, which can be used to determine the location of the npm executable.",
35
+ {
36
+ hidden: true,
37
+ internal: true,
38
+ runtime: true
39
+ },
40
+ "COMSPEC",
41
+ "The COMSPEC environment variable, which specifies the command-line interpreter to use on Windows.",
42
+ {
43
+ hidden: true,
44
+ internal: true,
45
+ runtime: true
46
+ },
47
+ "ShellShockEnv",
48
+ "P!&4!8?\"z#&4$8?%z&&4'8?(z)&4*8?+z,&4-8?.z/&408?1z2Mw3y"
49
+ ];
50
+
51
+ //#endregion
52
+ exports.__ΩShellShockEnv = __ΩShellShockEnv;
53
+ //# sourceMappingURL=env.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"env.cjs","names":[],"sources":[],"mappings":""}
@@ -1,4 +1,4 @@
1
- import { EnvInterface } from "@powerlines/plugin-env/types/runtime";
1
+ import { EnvInterface } from "@powerlines/plugin-env/types/env";
2
2
 
3
3
  //#region src/types/env.d.ts
4
4
  interface ShellShockEnv extends EnvInterface {
@@ -1 +1 @@
1
- {"version":3,"file":"env.d.cts","names":[],"sources":["../../src/types/env.ts"],"mappings":";;;UAqBiB,aAAA,SAAsB,YAAA;;AAAvC;;;;;;;;;EAWE,OAAA;EAyDA;;;;;;;EAhDA,IAAA;;;;;;;;;;;EAYA,qBAAA;;;;;;;;;;;EAYA,eAAA;;;;;;;;;;;EAYA,YAAA;;;;;;;;;;;EAYA,OAAA;AAAA"}
1
+ {"version":3,"file":"env.d.cts","names":[],"sources":["../../src/types/env.ts"],"mappings":";;;UAqBiB,aAAA,SAAsB,YAAY;;AAAnD;;;;;;;;;EAWE,OAAA;EAyDA;;AAAO;;;;;EAhDP,IAAA;;;;;;;;;;;EAYA,qBAAA;;;;;;;;;;;EAYA,eAAA;;;;;;;;;;;EAYA,YAAA;;;;;;;;;;;EAYA,OAAA;AAAA"}
@@ -1,4 +1,4 @@
1
- import { EnvInterface } from "@powerlines/plugin-env/types/runtime";
1
+ import { EnvInterface } from "@powerlines/plugin-env/types/env";
2
2
 
3
3
  //#region src/types/env.d.ts
4
4
  interface ShellShockEnv extends EnvInterface {
@@ -1 +1 @@
1
- {"version":3,"file":"env.d.mts","names":[],"sources":["../../src/types/env.ts"],"mappings":";;;UAqBiB,aAAA,SAAsB,YAAA;;AAAvC;;;;;;;;;EAWE,OAAA;EAyDA;;;;;;;EAhDA,IAAA;;;;;;;;;;;EAYA,qBAAA;;;;;;;;;;;EAYA,eAAA;;;;;;;;;;;EAYA,YAAA;;;;;;;;;;;EAYA,OAAA;AAAA"}
1
+ {"version":3,"file":"env.d.mts","names":[],"sources":["../../src/types/env.ts"],"mappings":""}