@shell-shock/plugin-banner 0.1.48 → 0.1.50

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -5,9 +5,9 @@
5
5
 
6
6
  <div align="center">
7
7
  <picture>
8
- <source media="(prefers-color-scheme: dark)" srcset="https://public.storm-cdn.com/shell-shock/banner-1280x640-dark.gif">
9
- <source media="(prefers-color-scheme: light)" srcset="https://public.storm-cdn.com/shell-shock/banner-1280x640-light.gif">
10
- <img src="https://public.storm-cdn.com/shell-shock/banner-1280x640-dark.gif" width="100%" alt="Storm Software" />
8
+ <source media="(prefers-color-scheme: dark)" srcset="https://public.storm-cdn.com/shell-shock/media/banner-1280x640-dark.gif">
9
+ <source media="(prefers-color-scheme: light)" srcset="https://public.storm-cdn.com/shell-shock/media/banner-1280x640-light.gif">
10
+ <img src="https://public.storm-cdn.com/shell-shock/media/banner-1280x640-dark.gif" width="100%" alt="Storm Software" />
11
11
  </picture>
12
12
  </div>
13
13
  <br />
@@ -213,9 +213,9 @@ specification. Contributions of any kind welcome!
213
213
 
214
214
  <div align="center">
215
215
  <picture>
216
- <source media="(prefers-color-scheme: dark)" srcset="https://public.storm-cdn.com/storm-software/banner-1280x320-dark.webp">
217
- <source media="(prefers-color-scheme: light)" srcset="https://public.storm-cdn.com/storm-software/banner-1280x320-light.webp">
218
- <img src="https://public.storm-cdn.com/storm-software/banner-1280x320-dark.webp" width="100%" alt="Storm Software" />
216
+ <source media="(prefers-color-scheme: dark)" srcset="https://public.storm-cdn.com/storm-software/media/banner-1280x320-dark.webp">
217
+ <source media="(prefers-color-scheme: light)" srcset="https://public.storm-cdn.com/storm-software/media/banner-1280x320-light.webp">
218
+ <img src="https://public.storm-cdn.com/storm-software/media/banner-1280x320-dark.webp" width="100%" alt="Storm Software" />
219
219
  </picture>
220
220
  </div>
221
221
  <br />
@@ -247,8 +247,17 @@ generation of development tools, please reach out on our
247
247
 
248
248
  <br />
249
249
 
250
- <div align="center"><a href="https://stormsoftware.com" target="_blank"><img src="https://public.storm-cdn.com/storm-software/icon-circle-fill-dark.png" alt="Storm Software" width="200px"/></a></div>
250
+ <div align="center">
251
+ <a href="https://stormsoftware.com" target="_blank">
252
+ <picture>
253
+ <source media="(prefers-color-scheme: dark)" srcset="https://public.storm-cdn.com/storm-software/icons/circle-dark.webp">
254
+ <source media="(prefers-color-scheme: light)" srcset="https://public.storm-cdn.com/storm-software/icons/circle-light.webp">
255
+ <img src="https://public.storm-cdn.com/storm-software/icons/circle-dark.webp" width="200px" alt="Storm Software" />
256
+ </picture>
257
+ </a>
258
+ </div>
251
259
  <br />
260
+
252
261
  <div align="center"><a href="https://stormsoftware.com" target="_blank"><picture><source media="(prefers-color-scheme: dark)" srcset="https://public.storm-cdn.com/misc/text/visit-us-dark.png"><source media="(prefers-color-scheme: light)" srcset="https://public.storm-cdn.com/misc/text/visit-us-light.png"><img src="https://public.storm-cdn.com/misc/text/visit-us-dark.png" height="90px" alt="Visit us at stormsoftware.com" /></picture></a></div>
253
262
 
254
263
  <br />
@@ -1,14 +1,11 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
2
- const require_runtime = require('../_virtual/_rolldown/runtime.cjs');
3
2
  const require_components_banner_function_declaration = require('./banner-function-declaration.cjs');
3
+ let _shell_shock_core_plugin_utils = require("@shell-shock/core/plugin-utils");
4
4
  let _alloy_js_core_jsx_runtime = require("@alloy-js/core/jsx-runtime");
5
5
  let _alloy_js_core = require("@alloy-js/core");
6
- let _shell_shock_core_plugin_utils = require("@shell-shock/core/plugin-utils");
7
- let _powerlines_plugin_alloy_core_contexts_context = require("@powerlines/plugin-alloy/core/contexts/context");
8
- let _powerlines_plugin_alloy_typescript_components_builtin_file = require("@powerlines/plugin-alloy/typescript/components/builtin-file");
6
+ let _shell_shock_core_contexts_power_plant = require("@shell-shock/core/contexts/power-plant");
9
7
  let _stryke_path = require("@stryke/path");
10
8
  let defu = require("defu");
11
- defu = require_runtime.__toESM(defu, 1);
12
9
 
13
10
  //#region src/components/banner-builtin.tsx
14
11
  /**
@@ -16,8 +13,8 @@ defu = require_runtime.__toESM(defu, 1);
16
13
  */
17
14
  function BannerBuiltin(props) {
18
15
  const [{ command, children }, rest] = (0, _alloy_js_core.splitProps)(props, ["command", "children"]);
19
- const context = (0, _powerlines_plugin_alloy_core_contexts_context.usePowerlines)();
20
- return (0, _alloy_js_core_jsx_runtime.createComponent)(_powerlines_plugin_alloy_typescript_components_builtin_file.BuiltinFile, (0, _alloy_js_core_jsx_runtime.mergeProps)({
16
+ const context = (0, _shell_shock_core_contexts_power_plant.usePowerlines)();
17
+ return (0, _alloy_js_core_jsx_runtime.createComponent)(_shell_shock_core_contexts_power_plant.BuiltinFile, (0, _alloy_js_core_jsx_runtime.mergeProps)({
21
18
  get id() {
22
19
  return (0, _stryke_path.joinPaths)("banner", ...command.segments.filter((segment) => !(0, _shell_shock_core_plugin_utils.isDynamicPathSegment)(segment)));
23
20
  },
@@ -26,7 +23,7 @@ function BannerBuiltin(props) {
26
23
  }
27
24
  }, rest, {
28
25
  get builtinImports() {
29
- return (0, defu.default)(rest.builtinImports ?? {}, {
26
+ return (0, defu.defu)(rest.builtinImports ?? {}, {
30
27
  utils: [
31
28
  "isUnicodeSupported",
32
29
  "isMinimal",
@@ -1,6 +1,5 @@
1
- import { BuiltinFileProps } from "@powerlines/plugin-alloy/typescript/components/builtin-file";
2
1
  import { CommandTree } from "@shell-shock/core";
3
-
2
+ import { BuiltinFileProps } from "@shell-shock/core/contexts/power-plant";
4
3
  //#region src/components/banner-builtin.d.ts
5
4
  type BannerBuiltinProps = Omit<BuiltinFileProps, "id" | "description"> & {
6
5
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"banner-builtin.d.cts","names":[],"sources":["../../src/components/banner-builtin.tsx"],"mappings":";;;;KAgCY,kBAAA,GAAqB,IAAA,CAC/B,gBAAA;;AADF;;EAOE,OAAA,EAAS,WAAA;AAAA;;;;iBAMK,aAAA,CAAc,KAAA,EAAO,kBAAkB,4BAAA,QAAA"}
1
+ {"version":3,"file":"banner-builtin.d.cts","names":[],"sources":["../../src/components/banner-builtin.tsx"],"mappings":";;;KAkCY,qBAAqB,KAC/B;;;;EAMA,SAAS;;;;;iBAMK,cAAc,OAAO,8CAAkB"}
@@ -1,6 +1,5 @@
1
- import { BuiltinFileProps } from "@powerlines/plugin-alloy/typescript/components/builtin-file";
1
+ import { BuiltinFileProps } from "@shell-shock/core/contexts/power-plant";
2
2
  import { CommandTree } from "@shell-shock/core";
3
-
4
3
  //#region src/components/banner-builtin.d.ts
5
4
  type BannerBuiltinProps = Omit<BuiltinFileProps, "id" | "description"> & {
6
5
  /**
@@ -1,11 +1,10 @@
1
1
  import { BannerFunctionDeclaration } from "./banner-function-declaration.mjs";
2
+ import { getAppTitle, isDynamicPathSegment } from "@shell-shock/core/plugin-utils";
2
3
  import { createComponent, memo, mergeProps } from "@alloy-js/core/jsx-runtime";
3
4
  import { Show, splitProps } from "@alloy-js/core";
4
- import { getAppTitle, isDynamicPathSegment } from "@shell-shock/core/plugin-utils";
5
- import { usePowerlines } from "@powerlines/plugin-alloy/core/contexts/context";
6
- import { BuiltinFile } from "@powerlines/plugin-alloy/typescript/components/builtin-file";
5
+ import { BuiltinFile, usePowerlines } from "@shell-shock/core/contexts/power-plant";
7
6
  import { joinPaths } from "@stryke/path";
8
- import defu from "defu";
7
+ import { defu } from "defu";
9
8
 
10
9
  //#region src/components/banner-builtin.tsx
11
10
  /**
@@ -1,11 +1,11 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
2
+ let _shell_shock_core_plugin_utils = require("@shell-shock/core/plugin-utils");
2
3
  let _alloy_js_core_jsx_runtime = require("@alloy-js/core/jsx-runtime");
3
4
  let _alloy_js_core = require("@alloy-js/core");
4
- let _shell_shock_core_plugin_utils = require("@shell-shock/core/plugin-utils");
5
- let _powerlines_plugin_alloy_core_contexts_context = require("@powerlines/plugin-alloy/core/contexts/context");
5
+ let _shell_shock_core_contexts_power_plant = require("@shell-shock/core/contexts/power-plant");
6
6
  let _alloy_js_typescript = require("@alloy-js/typescript");
7
- let _powerlines_plugin_alloy_core_components_spacing = require("@powerlines/plugin-alloy/core/components/spacing");
8
- let _powerlines_plugin_alloy_typescript_components_tsdoc = require("@powerlines/plugin-alloy/typescript/components/tsdoc");
7
+ let _power_plant_alloy_js_core_components_spacing = require("@power-plant/alloy-js/core/components/spacing");
8
+ let _power_plant_alloy_js_typescript_components_tsdoc = require("@power-plant/alloy-js/typescript/components/tsdoc");
9
9
  let _shell_shock_plugin_theme_contexts_theme = require("@shell-shock/plugin-theme/contexts/theme");
10
10
  let _stryke_type_checks_is_set_string = require("@stryke/type-checks/is-set-string");
11
11
 
@@ -18,13 +18,13 @@ let _stryke_type_checks_is_set_string = require("@stryke/type-checks/is-set-stri
18
18
  */
19
19
  function BannerFunctionDeclarationWrapper(props) {
20
20
  const { command, children } = props;
21
- const context = (0, _powerlines_plugin_alloy_core_contexts_context.usePowerlines)();
22
- return [(0, _alloy_js_core_jsx_runtime.createComponent)(_powerlines_plugin_alloy_typescript_components_tsdoc.TSDoc, {
21
+ const context = (0, _shell_shock_core_contexts_power_plant.usePowerlines)();
22
+ return [(0, _alloy_js_core_jsx_runtime.createComponent)(_power_plant_alloy_js_typescript_components_tsdoc.TSDoc, {
23
23
  get heading() {
24
24
  return `Write the ${(0, _shell_shock_core_plugin_utils.getAppTitle)(context, true)} command-line interface application banner ${command ? `for the ${command.title} command ` : ""}to the console.`;
25
25
  },
26
26
  get children() {
27
- return (0, _alloy_js_core_jsx_runtime.createComponent)(_powerlines_plugin_alloy_typescript_components_tsdoc.TSDocParam, {
27
+ return (0, _alloy_js_core_jsx_runtime.createComponent)(_power_plant_alloy_js_typescript_components_tsdoc.TSDocParam, {
28
28
  name: "sleepTimeoutMs",
29
29
  children: `The amount of time in milliseconds to sleep before displaying the banner. This can be used to create a delay before the banner is shown, allowing for any necessary setup or initialization to occur first. The default value is 500 milliseconds.`
30
30
  });
@@ -70,14 +70,14 @@ function BannerFunctionBodyDeclaration(props) {
70
70
  }
71
71
 
72
72
  useMeta().set("is-banner-displayed", true); `,
73
- (0, _alloy_js_core_jsx_runtime.createComponent)(_powerlines_plugin_alloy_core_components_spacing.Spacing, {}),
73
+ (0, _alloy_js_core_jsx_runtime.createComponent)(_power_plant_alloy_js_core_components_spacing.Spacing, {}),
74
74
  (0, _alloy_js_core_jsx_runtime.createComponent)(_alloy_js_core.Show, {
75
75
  when: insertNewlineBeforeBanner,
76
76
  children: _alloy_js_core.code`writeLine(""); `
77
77
  }),
78
- (0, _alloy_js_core_jsx_runtime.createComponent)(_powerlines_plugin_alloy_core_components_spacing.Spacing, {}),
78
+ (0, _alloy_js_core_jsx_runtime.createComponent)(_power_plant_alloy_js_core_components_spacing.Spacing, {}),
79
79
  (0, _alloy_js_core_jsx_runtime.memo)(() => _alloy_js_core.code`writeLine(borderColors.banner.outline.${variant}("${borderStyle.topLeft}") + borderColors.banner.outline.${variant}("${borderStyle.top}".repeat(${headerRepeat.value}))${icon ? ` + " " + textColors.banner.header.${variant}("${icon}") + " " + borderColors.banner.outline.${variant}("${borderStyle.top}")` : ""} + " " + bold(textColors.banner.header.${variant}("${(0, _shell_shock_core_plugin_utils.formatDescription)(header || "")}")) + " " + borderColors.banner.outline.${variant}("${borderStyle.top}".repeat(Math.max(getTerminalSize().columns - ${headerStaticWidth.value}, 0))) + borderColors.banner.outline.${variant}("${borderStyle.topRight}"), { consoleFn: console.${consoleFnName} }); `),
80
- (0, _alloy_js_core_jsx_runtime.createComponent)(_powerlines_plugin_alloy_core_components_spacing.Spacing, {}),
80
+ (0, _alloy_js_core_jsx_runtime.createComponent)(_power_plant_alloy_js_core_components_spacing.Spacing, {}),
81
81
  (0, _alloy_js_core_jsx_runtime.createComponent)(_alloy_js_core.Show, {
82
82
  get when() {
83
83
  return (0, _stryke_type_checks_is_set_string.isSetString)(title) && !children;
@@ -102,20 +102,20 @@ function BannerFunctionBodyDeclaration(props) {
102
102
  }), (0, _alloy_js_core_jsx_runtime.memo)(() => _alloy_js_core.code`writeLine(borderColors.banner.outline.${variant}("${borderStyle.left}") + " ".repeat(Math.max(Math.floor((getTerminalSize().columns - (stripAnsi("${(0, _shell_shock_core_plugin_utils.formatDescription)(command?.title || "")}").length + ${bannerPadding.value})) / 2), 0)) + bold(textColors.banner.command.${variant}("${(0, _shell_shock_core_plugin_utils.formatDescription)(command?.title || "")}")) + " ".repeat(Math.max(Math.ceil((getTerminalSize().columns - (stripAnsi("${(0, _shell_shock_core_plugin_utils.formatDescription)(command?.title || "")}").length + ${bannerPadding.value})) / 2), 0)) + borderColors.banner.outline.${variant}("${borderStyle.right}"), { consoleFn: console.${consoleFnName} }); `)];
103
103
  }
104
104
  }),
105
- (0, _alloy_js_core_jsx_runtime.createComponent)(_powerlines_plugin_alloy_core_components_spacing.Spacing, {}),
105
+ (0, _alloy_js_core_jsx_runtime.createComponent)(_power_plant_alloy_js_core_components_spacing.Spacing, {}),
106
106
  (0, _alloy_js_core_jsx_runtime.memo)(() => _alloy_js_core.code`splitText(bold(textColors.banner.${command ? "description" : "command"}.${variant}(\`${(0, _shell_shock_core_plugin_utils.formatDescription)(description)}\`)), Math.max(${command ? `${totalPadding.value * 2} > getTerminalSize().columns / 2 ? getTerminalSize().columns - ${Math.max(bannerPadding.value + 4, 6)} : ` : ""}getTerminalSize().columns - ${totalPadding.value}, 20)).forEach((line) => {
107
107
  writeLine(borderColors.banner.outline.${variant}("${borderStyle.left}") + " ".repeat(Math.max(Math.floor((getTerminalSize().columns - (stripAnsi(line).length + ${bannerPadding.value})) / 2), 0)) + textColors.banner.description.${variant}(line) + " ".repeat(Math.max(Math.ceil((getTerminalSize().columns - (stripAnsi(line).length + ${bannerPadding.value})) / 2), 0)) + borderColors.banner.outline.${variant}("${borderStyle.right}"), { consoleFn: console.${consoleFnName} });
108
108
  }); `),
109
- (0, _alloy_js_core_jsx_runtime.createComponent)(_powerlines_plugin_alloy_core_components_spacing.Spacing, {}),
109
+ (0, _alloy_js_core_jsx_runtime.createComponent)(_power_plant_alloy_js_core_components_spacing.Spacing, {}),
110
110
  (0, _alloy_js_core_jsx_runtime.createComponent)(_alloy_js_core.Show, {
111
111
  when: insertNewlineAfterDescription,
112
112
  get children() {
113
113
  return _alloy_js_core.code`writeLine(borderColors.banner.outline.${variant}("${borderStyle.left}") + " ".repeat(Math.max(getTerminalSize().columns - ${bannerPadding.value}, 0)) + borderColors.banner.outline.${variant}("${borderStyle.right}"), { consoleFn: console.${consoleFnName} }); `;
114
114
  }
115
115
  }),
116
- (0, _alloy_js_core_jsx_runtime.createComponent)(_powerlines_plugin_alloy_core_components_spacing.Spacing, {}),
116
+ (0, _alloy_js_core_jsx_runtime.createComponent)(_power_plant_alloy_js_core_components_spacing.Spacing, {}),
117
117
  (0, _alloy_js_core_jsx_runtime.memo)(() => _alloy_js_core.code`writeLine(borderColors.banner.outline.${variant}("${borderStyle.bottomLeft}") + ${footer ? `borderColors.banner.outline.${variant}("${borderStyle.bottom}".repeat(Math.max(getTerminalSize().columns - ${footerStaticWidth.value}, 0))) + " " + bold(textColors.banner.footer.${variant}("${(0, _shell_shock_core_plugin_utils.formatDescription)(footer)}")) + " " + borderColors.banner.outline.${variant}("${borderStyle.bottom}".repeat(${headerRepeat.value}))` : `borderColors.banner.outline.${variant}("${borderStyle.bottom}".repeat(Math.max(getTerminalSize().columns - ${borderStyle.bottomLeft.length + borderStyle.bottomRight.length}, 0)))`} + borderColors.banner.outline.${variant}("${borderStyle.bottomRight}"), { consoleFn: console.${consoleFnName} }); `),
118
- (0, _alloy_js_core_jsx_runtime.createComponent)(_powerlines_plugin_alloy_core_components_spacing.Spacing, {}),
118
+ (0, _alloy_js_core_jsx_runtime.createComponent)(_power_plant_alloy_js_core_components_spacing.Spacing, {}),
119
119
  _alloy_js_core.code`writeLine(""); `
120
120
  ];
121
121
  }
@@ -128,7 +128,7 @@ function BannerFunctionBodyDeclaration(props) {
128
128
  function BannerFunctionDeclaration(props) {
129
129
  const { consoleFnName = "log", variant = "primary", command, children, insertNewlineBeforeBanner = true } = props;
130
130
  const theme = (0, _shell_shock_plugin_theme_contexts_theme.useTheme)();
131
- const context = (0, _powerlines_plugin_alloy_core_contexts_context.usePowerlines)();
131
+ const context = (0, _shell_shock_core_contexts_power_plant.usePowerlines)();
132
132
  const header = (0, _alloy_js_core.computed)(() => `${theme.labels.banner.header[variant] || (0, _shell_shock_core_plugin_utils.getAppTitle)(context, false)} v${context.packageJson.version || "1.0.0"}`);
133
133
  const footer = (0, _alloy_js_core.computed)(() => theme.labels.banner.footer[variant]);
134
134
  const title = (0, _alloy_js_core.computed)(() => context.config.banner.title || (0, _shell_shock_core_plugin_utils.getAppTitle)(context, true).replace(`v${context.packageJson.version || "1.0.0"}`, ""));
@@ -1,7 +1,6 @@
1
1
  import { Children } from "@alloy-js/core";
2
2
  import { CommandTree } from "@shell-shock/core/types/command";
3
3
  import { ThemeColorVariant } from "@shell-shock/plugin-theme/types/theme";
4
-
5
4
  //#region src/components/banner-function-declaration.d.ts
6
5
  interface BannerFunctionDeclarationWrapperProps {
7
6
  command?: CommandTree;
@@ -1 +1 @@
1
- {"version":3,"file":"banner-function-declaration.d.cts","names":[],"sources":["../../src/components/banner-function-declaration.tsx"],"mappings":";;;;;UAsCiB,qCAAA;EACf,OAAA,GAAU,WAAA;EACV,QAAA,GAAW,QAAQ;AAAA;;;;;;;iBASL,gCAAA,CACd,KAAA,EAAO,qCAAA,GAAqC,QAAA;AAAA,UA8B7B,kCAAA,SAA2C,8BAA8B;EACxF,KAAA;EACA,MAAA;EACA,MAAA;EACA,WAAA;EACA,0BAAA;EACA,yBAAA;EACA,6BAAA;AAAA;AArC4C;AA8B9C;;;;;AA9B8C,iBA8C9B,6BAAA,CACd,KAAA,EAAO,kCAAA,GAAkC,QAAA;AAAA,UAyM1B,8BAAA,SAAuC,qCAAqC;EAC3F,OAAA,GAAU,iBAAA;EACV,aAAA;EACA,yBAAA;AAAA;;;AAtN6B;AAS/B;;;iBAsNgB,yBAAA,CACd,KAAA,EAAO,8BAAA,GAA8B,QAAA"}
1
+ {"version":3,"file":"banner-function-declaration.d.cts","names":[],"sources":["../../src/components/banner-function-declaration.tsx"],"mappings":";;;;UAsCiB;EACf,UAAU;EACV,WAAW;;;;;;;;iBASG,iCACd,OAAO,wCAAqC;UA8B7B,2CAA2C;EAC1D;EACA;EACA;EACA;EACA;EACA;EACA;;;;;;;;iBASc,8BACd,OAAO,qCAAkC;UAyM1B,uCAAuC;EACtD,UAAU;EACV;EACA;;;;;;;;iBASc,0BACd,OAAO,iCAA8B"}
@@ -1,7 +1,6 @@
1
1
  import { Children } from "@alloy-js/core";
2
2
  import { CommandTree } from "@shell-shock/core/types/command";
3
3
  import { ThemeColorVariant } from "@shell-shock/plugin-theme/types/theme";
4
-
5
4
  //#region src/components/banner-function-declaration.d.ts
6
5
  interface BannerFunctionDeclarationWrapperProps {
7
6
  command?: CommandTree;
@@ -1,10 +1,10 @@
1
+ import { formatDescription, getAppDescription, getAppTitle } from "@shell-shock/core/plugin-utils";
1
2
  import { createComponent, memo } from "@alloy-js/core/jsx-runtime";
2
3
  import { Show, code, computed } from "@alloy-js/core";
3
- import { formatDescription, getAppDescription, getAppTitle } from "@shell-shock/core/plugin-utils";
4
- import { usePowerlines } from "@powerlines/plugin-alloy/core/contexts/context";
4
+ import { usePowerlines } from "@shell-shock/core/contexts/power-plant";
5
5
  import { FunctionDeclaration, IfStatement } from "@alloy-js/typescript";
6
- import { Spacing } from "@powerlines/plugin-alloy/core/components/spacing";
7
- import { TSDoc, TSDocParam } from "@powerlines/plugin-alloy/typescript/components/tsdoc";
6
+ import { Spacing } from "@power-plant/alloy-js/core/components/spacing";
7
+ import { TSDoc, TSDocParam } from "@power-plant/alloy-js/typescript/components/tsdoc";
8
8
  import { useTheme } from "@shell-shock/plugin-theme/contexts/theme";
9
9
  import { isSetString } from "@stryke/type-checks/is-set-string";
10
10
 
@@ -0,0 +1,48 @@
1
+ Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: 'Module' } });
2
+ const require_components_banner_builtin = require('./components/banner-builtin.cjs');
3
+ require('./components/index.cjs');
4
+ let _shell_shock_core_helpers_power_plant = require("@shell-shock/core/helpers/power-plant");
5
+ let _shell_shock_core_plugin_utils = require("@shell-shock/core/plugin-utils");
6
+ let _alloy_js_core_jsx_runtime = require("@alloy-js/core/jsx-runtime");
7
+ let _alloy_js_core = require("@alloy-js/core");
8
+ let _power_plant_alloy_js_core_components = require("@power-plant/alloy-js/core/components");
9
+
10
+ //#region src/generator.tsx
11
+ /**
12
+ * Power Plant generator for Shell Shock banner builtins.
13
+ *
14
+ * @see https://github.com/storm-software/power-plant/tree/main/packages/generators/alloy-js
15
+ */
16
+ const bannerGenerator = (0, _shell_shock_core_helpers_power_plant.defineCommandGenerator)({
17
+ meta: {
18
+ name: "shell-shock-banner",
19
+ title: "Shell Shock Banner Generator",
20
+ description: "Generates banner built-in modules from the Shell Shock command tree specification.",
21
+ version: "1.0",
22
+ tags: [
23
+ "shell-shock",
24
+ "banner",
25
+ "alloy-js"
26
+ ]
27
+ },
28
+ generator: async (_commands, options) => {
29
+ const commands = await (0, _shell_shock_core_plugin_utils.getCommandList)(options.context);
30
+ await (0, _shell_shock_core_helpers_power_plant.renderCommandTemplate)(options, [
31
+ (0, _alloy_js_core_jsx_runtime.createComponent)(require_components_banner_builtin.BannerBuiltin, { get command() {
32
+ return (0, _shell_shock_core_plugin_utils.computeBin)(options.context);
33
+ } }),
34
+ (0, _alloy_js_core_jsx_runtime.createComponent)(_power_plant_alloy_js_core_components.Spacing, {}),
35
+ (0, _alloy_js_core_jsx_runtime.createComponent)(_alloy_js_core.For, {
36
+ get each() {
37
+ return commands.sort((a, b) => a.name.localeCompare(b.name));
38
+ },
39
+ doubleHardline: true,
40
+ children: (command) => (0, _alloy_js_core_jsx_runtime.createComponent)(require_components_banner_builtin.BannerBuiltin, { command })
41
+ })
42
+ ]);
43
+ }
44
+ });
45
+
46
+ //#endregion
47
+ exports.bannerGenerator = bannerGenerator;
48
+ exports.default = bannerGenerator;
@@ -0,0 +1,10 @@
1
+ //#region src/generator.d.ts
2
+ /**
3
+ * Power Plant generator for Shell Shock banner builtins.
4
+ *
5
+ * @see https://github.com/storm-software/power-plant/tree/main/packages/generators/alloy-js
6
+ */
7
+ declare const bannerGenerator: import("@power-plant/core").GeneratorConfigObject<Record<string, import("@shell-shock/schema").SerializedCommandTree>, import("@shell-shock/core/helpers/power-plant").CommandGeneratorOptions, void>;
8
+ //#endregion
9
+ export { bannerGenerator, bannerGenerator as default };
10
+ //# sourceMappingURL=generator.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generator.d.cts","names":[],"sources":["../src/generator.tsx"],"mappings":";;;;;;cAgCa,6CAAe,sBAAA,6CAAA,wEAAA"}
@@ -0,0 +1,10 @@
1
+ //#region src/generator.d.ts
2
+ /**
3
+ * Power Plant generator for Shell Shock banner builtins.
4
+ *
5
+ * @see https://github.com/storm-software/power-plant/tree/main/packages/generators/alloy-js
6
+ */
7
+ declare const bannerGenerator: import("@power-plant/core").GeneratorConfigObject<Record<string, import("@shell-shock/schema").SerializedCommandTree>, import("@shell-shock/core/helpers/power-plant").CommandGeneratorOptions, void>;
8
+ //#endregion
9
+ export { bannerGenerator, bannerGenerator as default };
10
+ //# sourceMappingURL=generator.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generator.d.mts","names":[],"sources":["../src/generator.tsx"],"mappings":""}
@@ -0,0 +1,47 @@
1
+ import { BannerBuiltin } from "./components/banner-builtin.mjs";
2
+ import "./components/index.mjs";
3
+ import { defineCommandGenerator, renderCommandTemplate } from "@shell-shock/core/helpers/power-plant";
4
+ import { computeBin, getCommandList } from "@shell-shock/core/plugin-utils";
5
+ import { createComponent } from "@alloy-js/core/jsx-runtime";
6
+ import { For } from "@alloy-js/core";
7
+ import { Spacing } from "@power-plant/alloy-js/core/components";
8
+
9
+ //#region src/generator.tsx
10
+ /**
11
+ * Power Plant generator for Shell Shock banner builtins.
12
+ *
13
+ * @see https://github.com/storm-software/power-plant/tree/main/packages/generators/alloy-js
14
+ */
15
+ const bannerGenerator = defineCommandGenerator({
16
+ meta: {
17
+ name: "shell-shock-banner",
18
+ title: "Shell Shock Banner Generator",
19
+ description: "Generates banner built-in modules from the Shell Shock command tree specification.",
20
+ version: "1.0",
21
+ tags: [
22
+ "shell-shock",
23
+ "banner",
24
+ "alloy-js"
25
+ ]
26
+ },
27
+ generator: async (_commands, options) => {
28
+ const commands = await getCommandList(options.context);
29
+ await renderCommandTemplate(options, [
30
+ createComponent(BannerBuiltin, { get command() {
31
+ return computeBin(options.context);
32
+ } }),
33
+ createComponent(Spacing, {}),
34
+ createComponent(For, {
35
+ get each() {
36
+ return commands.sort((a, b) => a.name.localeCompare(b.name));
37
+ },
38
+ doubleHardline: true,
39
+ children: (command) => createComponent(BannerBuiltin, { command })
40
+ })
41
+ ]);
42
+ }
43
+ });
44
+
45
+ //#endregion
46
+ export { bannerGenerator, bannerGenerator as default };
47
+ //# sourceMappingURL=generator.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generator.mjs","names":[],"sources":[],"mappings":""}
package/dist/index.cjs CHANGED
@@ -1,16 +1,9 @@
1
1
  Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: 'Module' } });
2
- const require_runtime = require('./_virtual/_rolldown/runtime.cjs');
3
- const require_components_banner_builtin = require('./components/banner-builtin.cjs');
4
- require('./components/index.cjs');
5
- let _alloy_js_core_jsx_runtime = require("@alloy-js/core/jsx-runtime");
6
- let _alloy_js_core = require("@alloy-js/core");
7
- let _powerlines_plugin_alloy_core_components = require("@powerlines/plugin-alloy/core/components");
8
- let _powerlines_plugin_alloy_render = require("@powerlines/plugin-alloy/render");
2
+ const require_generator = require('./generator.cjs');
3
+ let _shell_shock_core_helpers_power_plant = require("@shell-shock/core/helpers/power-plant");
9
4
  let _shell_shock_core_plugin_utils = require("@shell-shock/core/plugin-utils");
10
5
  let _shell_shock_plugin_console = require("@shell-shock/plugin-console");
11
- _shell_shock_plugin_console = require_runtime.__toESM(_shell_shock_plugin_console, 1);
12
6
  let _shell_shock_plugin_theme = require("@shell-shock/plugin-theme");
13
- _shell_shock_plugin_theme = require_runtime.__toESM(_shell_shock_plugin_theme, 1);
14
7
 
15
8
  //#region src/index.tsx
16
9
  /**
@@ -18,8 +11,8 @@ _shell_shock_plugin_theme = require_runtime.__toESM(_shell_shock_plugin_theme, 1
18
11
  */
19
12
  const plugin = (options = {}) => {
20
13
  return [
21
- ...(0, _shell_shock_plugin_theme.default)(options.theme),
22
- (0, _shell_shock_plugin_console.default)(options.console),
14
+ ...(0, _shell_shock_plugin_theme.plugin)(options.theme),
15
+ (0, _shell_shock_plugin_console.plugin)(options.console),
23
16
  {
24
17
  name: "shell-shock/banner",
25
18
  enforce: "post",
@@ -27,27 +20,15 @@ const plugin = (options = {}) => {
27
20
  return { banner: { title: options.title } };
28
21
  },
29
22
  prepare: { async handler() {
30
- const _self$ = this;
31
23
  const commands = await (0, _shell_shock_core_plugin_utils.getCommandList)(this);
32
- this.debug(`Rendering \`banner\` built-ins for each of the ${commands.length} command modules.`);
33
- return (0, _powerlines_plugin_alloy_render.render)(this, [
34
- (0, _alloy_js_core_jsx_runtime.createComponent)(require_components_banner_builtin.BannerBuiltin, { get command() {
35
- return (0, _shell_shock_core_plugin_utils.computeBin)(_self$);
36
- } }),
37
- (0, _alloy_js_core_jsx_runtime.createComponent)(_powerlines_plugin_alloy_core_components.Spacing, {}),
38
- (0, _alloy_js_core_jsx_runtime.createComponent)(_alloy_js_core.For, {
39
- get each() {
40
- return commands.sort((a, b) => a.name.localeCompare(b.name));
41
- },
42
- doubleHardline: true,
43
- children: (command) => (0, _alloy_js_core_jsx_runtime.createComponent)(require_components_banner_builtin.BannerBuiltin, { command })
44
- })
45
- ]);
24
+ this.debug(`Rendering \`banner\` built-ins via Power Plant for each of the ${commands.length} command modules.`);
25
+ return (0, _shell_shock_core_helpers_power_plant.executeCommandGenerator)(this, require_generator.bannerGenerator);
46
26
  } }
47
27
  }
48
28
  ];
49
29
  };
50
30
 
51
31
  //#endregion
32
+ exports.bannerGenerator = require_generator.bannerGenerator;
52
33
  exports.default = plugin;
53
34
  exports.plugin = plugin;
package/dist/index.d.cts CHANGED
@@ -1,11 +1,12 @@
1
+ import { bannerGenerator } from "./generator.cjs";
1
2
  import { BannerPluginContext, BannerPluginOptions, BannerPluginResolvedConfig, BannerPluginUserConfig } from "./types/plugin.cjs";
3
+ import "./types/index.cjs";
2
4
  import { Plugin } from "powerlines";
3
-
4
5
  //#region src/index.d.ts
5
6
  /**
6
7
  * The Banner - Shell Shock plugin to add a banner command to the application.
7
8
  */
8
9
  declare const plugin: <TContext extends BannerPluginContext = BannerPluginContext>(options?: BannerPluginOptions) => Plugin<TContext>[];
9
10
  //#endregion
10
- export { type BannerPluginContext, type BannerPluginOptions, type BannerPluginResolvedConfig, type BannerPluginUserConfig, plugin as default, plugin };
11
+ export { type BannerPluginContext, type BannerPluginOptions, type BannerPluginResolvedConfig, type BannerPluginUserConfig, bannerGenerator, plugin as default, plugin };
11
12
  //# sourceMappingURL=index.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.cts","names":[],"sources":["../src/index.tsx"],"mappings":";;;;;;AAiCA;cAAa,MAAA,oBACM,mBAAA,GAAsB,mBAAA,EAEvC,OAAA,GAAS,mBAAA,KAuCJ,MAAA,CAAO,QAAA"}
1
+ {"version":3,"file":"index.d.cts","names":[],"sources":["../src/index.tsx"],"mappings":";;;;;;;;cAgCa,SACX,iBAAiB,sBAAsB,qBAEvC,UAAS,wBA4BJ,OAAO"}
package/dist/index.d.mts CHANGED
@@ -1,11 +1,12 @@
1
+ import { bannerGenerator } from "./generator.mjs";
1
2
  import { BannerPluginContext, BannerPluginOptions, BannerPluginResolvedConfig, BannerPluginUserConfig } from "./types/plugin.mjs";
3
+ import "./types/index.mjs";
2
4
  import { Plugin } from "powerlines";
3
-
4
5
  //#region src/index.d.ts
5
6
  /**
6
7
  * The Banner - Shell Shock plugin to add a banner command to the application.
7
8
  */
8
9
  declare const plugin: <TContext extends BannerPluginContext = BannerPluginContext>(options?: BannerPluginOptions) => Plugin<TContext>[];
9
10
  //#endregion
10
- export { type BannerPluginContext, type BannerPluginOptions, type BannerPluginResolvedConfig, type BannerPluginUserConfig, plugin as default, plugin };
11
+ export { type BannerPluginContext, type BannerPluginOptions, type BannerPluginResolvedConfig, type BannerPluginUserConfig, bannerGenerator, plugin as default, plugin };
11
12
  //# sourceMappingURL=index.d.mts.map
package/dist/index.mjs CHANGED
@@ -1,12 +1,8 @@
1
- import { BannerBuiltin } from "./components/banner-builtin.mjs";
2
- import "./components/index.mjs";
3
- import { createComponent } from "@alloy-js/core/jsx-runtime";
4
- import { For } from "@alloy-js/core";
5
- import { Spacing } from "@powerlines/plugin-alloy/core/components";
6
- import { render } from "@powerlines/plugin-alloy/render";
7
- import { computeBin, getCommandList } from "@shell-shock/core/plugin-utils";
8
- import console from "@shell-shock/plugin-console";
9
- import theme from "@shell-shock/plugin-theme";
1
+ import { bannerGenerator } from "./generator.mjs";
2
+ import { executeCommandGenerator } from "@shell-shock/core/helpers/power-plant";
3
+ import { getCommandList } from "@shell-shock/core/plugin-utils";
4
+ import { plugin as plugin$1 } from "@shell-shock/plugin-console";
5
+ import { plugin as plugin$2 } from "@shell-shock/plugin-theme";
10
6
 
11
7
  //#region src/index.tsx
12
8
  /**
@@ -14,8 +10,8 @@ import theme from "@shell-shock/plugin-theme";
14
10
  */
15
11
  const plugin = (options = {}) => {
16
12
  return [
17
- ...theme(options.theme),
18
- console(options.console),
13
+ ...plugin$2(options.theme),
14
+ plugin$1(options.console),
19
15
  {
20
16
  name: "shell-shock/banner",
21
17
  enforce: "post",
@@ -23,27 +19,14 @@ const plugin = (options = {}) => {
23
19
  return { banner: { title: options.title } };
24
20
  },
25
21
  prepare: { async handler() {
26
- const _self$ = this;
27
22
  const commands = await getCommandList(this);
28
- this.debug(`Rendering \`banner\` built-ins for each of the ${commands.length} command modules.`);
29
- return render(this, [
30
- createComponent(BannerBuiltin, { get command() {
31
- return computeBin(_self$);
32
- } }),
33
- createComponent(Spacing, {}),
34
- createComponent(For, {
35
- get each() {
36
- return commands.sort((a, b) => a.name.localeCompare(b.name));
37
- },
38
- doubleHardline: true,
39
- children: (command) => createComponent(BannerBuiltin, { command })
40
- })
41
- ]);
23
+ this.debug(`Rendering \`banner\` built-ins via Power Plant for each of the ${commands.length} command modules.`);
24
+ return executeCommandGenerator(this, bannerGenerator);
42
25
  } }
43
26
  }
44
27
  ];
45
28
  };
46
29
 
47
30
  //#endregion
48
- export { plugin as default, plugin };
31
+ export { bannerGenerator, plugin as default, plugin };
49
32
  //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ require('./plugin.cjs');
@@ -1 +1,3 @@
1
+ import "./plugin.mjs";
2
+
1
3
  export { };
@@ -2,7 +2,6 @@ import { ResolvedConfig, UserConfig } from "@shell-shock/core";
2
2
  import { Context } from "@shell-shock/core/types/context";
3
3
  import { ConsolePluginContext, ConsolePluginOptions, ConsolePluginResolvedConfig, ConsolePluginUserConfig } from "@shell-shock/plugin-console";
4
4
  import { ThemePluginContext, ThemePluginOptions, ThemePluginResolvedConfig, ThemePluginUserConfig } from "@shell-shock/plugin-theme";
5
-
6
5
  //#region src/types/plugin.d.ts
7
6
  interface BannerPluginOptions {
8
7
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.d.cts","names":[],"sources":["../../src/types/plugin.ts"],"mappings":";;;;;;UAiCiB,mBAAA;;AAAjB;;EAIE,KAAA,GAAQ,kBAAA;EAKsB;;;EAA9B,OAAA,GAAU,oBAAoB;EAApB;;;EAKV,KAAA;AAAA;AAAA,KAGU,sBAAA,GAAyB,qBAAA,GACnC,uBAAA,GACA,UAAA;EACE,MAAA,EAAQ,IAAA,CAAK,mBAAA;AAAA;AAAA,KAGL,0BAAA,GAA6B,yBAAA,GACvC,2BAAA,GACA,cAAA;EACE,MAAA,EAAQ,IAAA,CAAK,mBAAA;AAAA;AAAA,KAGL,mBAAA,yBACc,0BAAA,GACtB,0BAAA,IACA,kBAAA,CAAmB,eAAA,IACrB,oBAAA,CAAqB,eAAA,IACrB,OAAA,CAAQ,eAAA"}
1
+ {"version":3,"file":"plugin.d.cts","names":[],"sources":["../../src/types/plugin.ts"],"mappings":";;;;;UAiCiB;;;;EAIf,QAAQ;;;;EAKR,UAAU;;;;EAKV;;KAGU,yBAAyB,wBACnC,0BACA;EACE,QAAQ,KAAK;;KAGL,6BAA6B,4BACvC,8BACA;EACE,QAAQ,KAAK;;KAGL,oBACV,wBAAwB,6BACtB,8BACA,mBAAmB,mBACrB,qBAAqB,mBACrB,QAAQ"}
@@ -2,7 +2,6 @@ import { ConsolePluginContext, ConsolePluginOptions, ConsolePluginResolvedConfig
2
2
  import { ThemePluginContext, ThemePluginOptions, ThemePluginResolvedConfig, ThemePluginUserConfig } from "@shell-shock/plugin-theme";
3
3
  import { ResolvedConfig, UserConfig } from "@shell-shock/core";
4
4
  import { Context } from "@shell-shock/core/types/context";
5
-
6
5
  //#region src/types/plugin.d.ts
7
6
  interface BannerPluginOptions {
8
7
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@shell-shock/plugin-banner",
3
- "version": "0.1.48",
3
+ "version": "0.1.50",
4
4
  "private": false,
5
5
  "description": "A package containing a Shell Shock plugin to generate banner built-in modules that display information about the application.",
6
6
  "keywords": [
@@ -48,24 +48,24 @@
48
48
  "module": "./dist/index.mjs",
49
49
  "types": "./dist/index.d.cts",
50
50
  "typings": "dist/index.d.mts",
51
- "files": ["dist/**/*"],
51
+ "files": ["dist"],
52
52
  "dependencies": {
53
- "@alloy-js/core": "^0.23.1",
54
- "@alloy-js/typescript": "^0.23.0",
55
- "@powerlines/deepkit": "^0.9.88",
56
- "@powerlines/plugin-alloy": "^0.26.227",
57
- "@powerlines/plugin-plugin": "^0.12.546",
58
- "@shell-shock/core": "0.17.21",
59
- "@shell-shock/plugin-theme": "0.4.34",
60
- "@shell-shock/plugin-console": "0.2.25",
61
- "@stryke/path": "^0.29.11",
62
- "@stryke/type-checks": "^0.6.17",
53
+ "@alloy-js/core": "^0.24.1",
54
+ "@alloy-js/typescript": "^0.24.0",
55
+ "@power-plant/alloy-js": "^0.0.87",
56
+ "@powerlines/plugin-alloy": "^0.26.308",
57
+ "@powerlines/plugin-plugin": "^0.12.623",
58
+ "@shell-shock/core": "0.17.23",
59
+ "@shell-shock/plugin-console": "0.2.27",
60
+ "@shell-shock/plugin-theme": "0.4.36",
61
+ "@stryke/path": "^0.29.35",
62
+ "@stryke/type-checks": "^0.6.41",
63
63
  "defu": "^6.1.7",
64
- "powerlines": "^0.47.134"
64
+ "powerlines": "^0.47.210"
65
65
  },
66
66
  "devDependencies": {
67
- "@powerlines/plugin-deepkit": "^0.11.477",
68
- "@types/node": "^25.9.3"
67
+ "@powerlines/plugin-deepkit": "^0.11.554",
68
+ "@types/node": "^25.9.5"
69
69
  },
70
70
  "publishConfig": { "access": "public" },
71
71
  "exports": {
@@ -125,6 +125,20 @@
125
125
  "default": "./dist/components/banner-function-declaration.mjs"
126
126
  }
127
127
  },
128
+ "./generator": {
129
+ "require": {
130
+ "types": "./dist/generator.d.cts",
131
+ "default": "./dist/generator.cjs"
132
+ },
133
+ "import": {
134
+ "types": "./dist/generator.d.mts",
135
+ "default": "./dist/generator.mjs"
136
+ },
137
+ "default": {
138
+ "types": "./dist/generator.d.mts",
139
+ "default": "./dist/generator.mjs"
140
+ }
141
+ },
128
142
  "./package.json": "./package.json",
129
143
  "./types": {
130
144
  "require": {
@@ -155,5 +169,5 @@
155
169
  }
156
170
  }
157
171
  },
158
- "gitHead": "0876468f621d3b455f99de7dc3ebdd3af8883842"
172
+ "gitHead": "3227e8ed7b3e816987d4d4f270dfdfceb963c022"
159
173
  }
@@ -1,29 +0,0 @@
1
- //#region \0rolldown/runtime.js
2
- var __create = Object.create;
3
- var __defProp = Object.defineProperty;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
- var __hasOwnProp = Object.prototype.hasOwnProperty;
8
- var __copyProps = (to, from, except, desc) => {
9
- if (from && typeof from === "object" || typeof from === "function") {
10
- for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
11
- key = keys[i];
12
- if (!__hasOwnProp.call(to, key) && key !== except) {
13
- __defProp(to, key, {
14
- get: ((k) => from[k]).bind(null, key),
15
- enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
16
- });
17
- }
18
- }
19
- }
20
- return to;
21
- };
22
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
23
- value: mod,
24
- enumerable: true
25
- }) : target, mod));
26
-
27
- //#endregion
28
-
29
- exports.__toESM = __toESM;