@shell-shock/preset-script 0.3.0 → 0.3.2

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 (50) hide show
  1. package/README.md +1 -1
  2. package/dist/components/args-parser-logic.d.cts +7 -7
  3. package/dist/components/command-entry.d.cts +4 -4
  4. package/dist/components/command-entry.d.cts.map +1 -1
  5. package/dist/components/command-entry.d.mts +4 -4
  6. package/dist/components/command-entry.d.mts.map +1 -1
  7. package/dist/components/console-builtin.cjs +17 -17
  8. package/dist/components/console-builtin.cjs.map +1 -1
  9. package/dist/components/console-builtin.d.cts +11 -2
  10. package/dist/components/console-builtin.d.cts.map +1 -1
  11. package/dist/components/console-builtin.d.mts +11 -2
  12. package/dist/components/console-builtin.d.mts.map +1 -1
  13. package/dist/components/console-builtin.mjs +17 -17
  14. package/dist/components/console-builtin.mjs.map +1 -1
  15. package/dist/components/help.cjs +3 -3
  16. package/dist/components/help.cjs.map +1 -1
  17. package/dist/components/help.d.cts +5 -5
  18. package/dist/components/help.d.cts.map +1 -1
  19. package/dist/components/help.d.mts +5 -5
  20. package/dist/components/help.mjs +3 -3
  21. package/dist/components/help.mjs.map +1 -1
  22. package/dist/components/index.d.cts +2 -2
  23. package/dist/components/index.d.mts +2 -2
  24. package/dist/components/utils-builtin.cjs +1 -1
  25. package/dist/components/utils-builtin.cjs.map +1 -1
  26. package/dist/components/utils-builtin.d.cts +7 -7
  27. package/dist/components/utils-builtin.d.mts +7 -7
  28. package/dist/components/utils-builtin.mjs +1 -1
  29. package/dist/components/utils-builtin.mjs.map +1 -1
  30. package/dist/components/virtual-command-entry.d.cts +3 -3
  31. package/dist/contexts/theme.cjs +2 -2
  32. package/dist/contexts/theme.cjs.map +1 -1
  33. package/dist/helpers/ansi-utils.cjs +3 -0
  34. package/dist/helpers/ansi-utils.d.cts +8 -1
  35. package/dist/helpers/ansi-utils.d.cts.map +1 -1
  36. package/dist/helpers/ansi-utils.d.mts +8 -1
  37. package/dist/helpers/ansi-utils.d.mts.map +1 -1
  38. package/dist/helpers/ansi-utils.mjs +1 -1
  39. package/dist/helpers/get-default-options.d.cts +13 -0
  40. package/dist/helpers/get-default-options.d.cts.map +1 -0
  41. package/dist/helpers/get-default-options.d.mts +13 -0
  42. package/dist/helpers/get-default-options.d.mts.map +1 -0
  43. package/dist/index.cjs +2 -2
  44. package/dist/index.cjs.map +1 -1
  45. package/dist/index.d.cts.map +1 -1
  46. package/dist/index.d.mts.map +1 -1
  47. package/dist/index.mjs.map +1 -1
  48. package/dist/types/plugin.d.cts.map +1 -1
  49. package/dist/types/plugin.d.mts.map +1 -1
  50. package/package.json +38 -10
package/README.md CHANGED
@@ -27,7 +27,7 @@ This package is part of the ⚡<b>Shell Shock</b> monorepo. The Shell Shock pack
27
27
 
28
28
  <h3 align="center">💻 Visit <a href="https://stormsoftware.com" target="_blank">stormsoftware.com</a> to stay up to date with this developer</h3><br />
29
29
 
30
- [![Version](https://img.shields.io/badge/version-0.2.0-1fb2a6.svg?style=for-the-badge&color=1fb2a6)](https://stormsoftware.com/projects/shell-shock/)&nbsp;[![Commitizen friendly](https://img.shields.io/badge/commitizen-friendly-brightgreen.svg?style=for-the-badge&logo=commitlint&color=1fb2a6)](http://commitizen.github.io/cz-cli/)&nbsp;![Semantic-Release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg?style=for-the-badge&color=1fb2a6)&nbsp;![GitHub Workflow Status (with event)](https://img.shields.io/github/actions/workflow/status/storm-software/shell-shock/release.yml?style=for-the-badge&logo=github-actions&color=1fb2a6)
30
+ [![Version](https://img.shields.io/badge/version-0.3.0-1fb2a6.svg?style=for-the-badge&color=1fb2a6)](https://stormsoftware.com/projects/shell-shock/)&nbsp;[![Commitizen friendly](https://img.shields.io/badge/commitizen-friendly-brightgreen.svg?style=for-the-badge&logo=commitlint&color=1fb2a6)](http://commitizen.github.io/cz-cli/)&nbsp;![Semantic-Release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg?style=for-the-badge&color=1fb2a6)&nbsp;![GitHub Workflow Status (with event)](https://img.shields.io/github/actions/workflow/status/storm-software/shell-shock/release.yml?style=for-the-badge&logo=github-actions&color=1fb2a6)
31
31
 
32
32
  <!-- prettier-ignore-start -->
33
33
  <!-- markdownlint-disable -->
@@ -1,16 +1,16 @@
1
- import * as _alloy_js_core14 from "@alloy-js/core";
1
+ import * as _alloy_js_core10 from "@alloy-js/core";
2
2
  import { CommandOption, CommandParam, CommandTree, CommandTreePath } from "@shell-shock/core/types/command";
3
3
 
4
4
  //#region src/components/args-parser-logic.d.ts
5
5
  declare function VariablePathsParserLogic(props: {
6
6
  path: CommandTreePath;
7
- }): _alloy_js_core14.Children;
7
+ }): _alloy_js_core10.Children;
8
8
  /**
9
9
  * The command parameter parser logic.
10
10
  */
11
11
  declare function ParamsParserLogic(props: {
12
12
  params: CommandParam[];
13
- }): _alloy_js_core14.Children;
13
+ }): _alloy_js_core10.Children;
14
14
  /**
15
15
  * The command option interface property.
16
16
  */
@@ -20,7 +20,7 @@ declare function OptionsMember({
20
20
  }: {
21
21
  name: string;
22
22
  option: CommandOption;
23
- }): _alloy_js_core14.Children;
23
+ }): _alloy_js_core10.Children;
24
24
  /**
25
25
  * The command option property parser logic.
26
26
  */
@@ -30,16 +30,16 @@ declare function OptionsMemberParserLogic({
30
30
  }: {
31
31
  name: string;
32
32
  option: CommandOption;
33
- }): _alloy_js_core14.Children;
33
+ }): _alloy_js_core10.Children;
34
34
  declare function OptionsInterfaceDeclaration(props: {
35
35
  command: CommandTree;
36
- }): _alloy_js_core14.Children;
36
+ }): _alloy_js_core10.Children;
37
37
  /**
38
38
  * The command options parser logic.
39
39
  */
40
40
  declare function OptionsParserLogic(props: {
41
41
  command: CommandTree;
42
- }): _alloy_js_core14.Children;
42
+ }): _alloy_js_core10.Children;
43
43
  //#endregion
44
44
  export { OptionsInterfaceDeclaration, OptionsMember, OptionsMemberParserLogic, OptionsParserLogic, ParamsParserLogic, VariablePathsParserLogic };
45
45
  //# sourceMappingURL=args-parser-logic.d.cts.map
@@ -1,24 +1,24 @@
1
- import * as _alloy_js_core11 from "@alloy-js/core";
1
+ import * as _alloy_js_core7 from "@alloy-js/core";
2
2
  import { CommandTree } from "@shell-shock/core/types/command";
3
3
  import { EntryFileProps } from "@powerlines/plugin-alloy/typescript/components/entry-file";
4
4
 
5
5
  //#region src/components/command-entry.d.ts
6
6
  declare function CommandInvocation(props: {
7
7
  command: CommandTree;
8
- }): _alloy_js_core11.Children;
8
+ }): _alloy_js_core7.Children;
9
9
  /**
10
10
  * A component that generates the `handler` function declaration for a command.
11
11
  */
12
12
  declare function CommandHandlerDeclaration(props: {
13
13
  command: CommandTree;
14
- }): _alloy_js_core11.Children;
14
+ }): _alloy_js_core7.Children;
15
15
  interface CommandEntryProps extends Omit<EntryFileProps, "path" | "typeDefinition"> {
16
16
  command: CommandTree;
17
17
  }
18
18
  /**
19
19
  * The command entry point for the Shell Shock project.
20
20
  */
21
- declare function CommandEntry(props: CommandEntryProps): _alloy_js_core11.Children;
21
+ declare function CommandEntry(props: CommandEntryProps): _alloy_js_core7.Children;
22
22
  //#endregion
23
23
  export { CommandEntry, CommandEntryProps, CommandHandlerDeclaration, CommandInvocation };
24
24
  //# sourceMappingURL=command-entry.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"command-entry.d.cts","names":[],"sources":["../../src/components/command-entry.tsx"],"sourcesContent":[],"mappings":";;;;;iBAyDgB,iBAAA;WAAoC;IAAW,gBAAA,CAAE;AAAjE;AA0BA;AA4DA;AACE,iBA7Dc,yBAAA,CA6Dd,KAAA,EAAA;EAGS,OAAA,EAhEiD,WAgEjD;CAJgC,CAAA,EA5D4B,gBAAA,CAAE,QA4D9B;AAAI,UAA9B,iBAAA,SAA0B,IAAI,CAC7C,cAD6C,EAAA,MAAA,GAAA,gBAAA,CAAA,CAAA;EAU/B,OAAA,EANL,WAMiB;;;;;iBAAZ,YAAA,QAAoB,oBAAiB,gBAAA,CAAA"}
1
+ {"version":3,"file":"command-entry.d.cts","names":[],"sources":["../../src/components/command-entry.tsx"],"sourcesContent":[],"mappings":";;;;;iBAyDgB,iBAAA;WAAoC;IAAW,eAAA,CAAE;AAAjE;AA0BA;AA4DA;AACE,iBA7Dc,yBAAA,CA6Dd,KAAA,EAAA;EAGS,OAAA,EAhEiD,WAgEjD;CAJgC,CAAA,EA5D4B,eAAA,CAAE,QA4D9B;AAAI,UAA9B,iBAAA,SAA0B,IAAI,CAC7C,cAD6C,EAAA,MAAA,GAAA,gBAAA,CAAA,CAAA;EAU/B,OAAA,EANL,WAMiB;;;;;iBAAZ,YAAA,QAAoB,oBAAiB,eAAA,CAAA"}
@@ -1,24 +1,24 @@
1
- import * as _alloy_js_core5 from "@alloy-js/core";
1
+ import * as _alloy_js_core11 from "@alloy-js/core";
2
2
  import { EntryFileProps } from "@powerlines/plugin-alloy/typescript/components/entry-file";
3
3
  import { CommandTree } from "@shell-shock/core/types/command";
4
4
 
5
5
  //#region src/components/command-entry.d.ts
6
6
  declare function CommandInvocation(props: {
7
7
  command: CommandTree;
8
- }): _alloy_js_core5.Children;
8
+ }): _alloy_js_core11.Children;
9
9
  /**
10
10
  * A component that generates the `handler` function declaration for a command.
11
11
  */
12
12
  declare function CommandHandlerDeclaration(props: {
13
13
  command: CommandTree;
14
- }): _alloy_js_core5.Children;
14
+ }): _alloy_js_core11.Children;
15
15
  interface CommandEntryProps extends Omit<EntryFileProps, "path" | "typeDefinition"> {
16
16
  command: CommandTree;
17
17
  }
18
18
  /**
19
19
  * The command entry point for the Shell Shock project.
20
20
  */
21
- declare function CommandEntry(props: CommandEntryProps): _alloy_js_core5.Children;
21
+ declare function CommandEntry(props: CommandEntryProps): _alloy_js_core11.Children;
22
22
  //#endregion
23
23
  export { CommandEntry, CommandEntryProps, CommandHandlerDeclaration, CommandInvocation };
24
24
  //# sourceMappingURL=command-entry.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"command-entry.d.mts","names":[],"sources":["../../src/components/command-entry.tsx"],"sourcesContent":[],"mappings":";;;;;iBAyDgB,iBAAA;WAAoC;IAAW,eAAA,CAAE;AAAjE;AA0BA;AA4DA;AACE,iBA7Dc,yBAAA,CA6Dd,KAAA,EAAA;EAGS,OAAA,EAhEiD,WAgEjD;CAJgC,CAAA,EA5D4B,eAAA,CAAE,QA4D9B;AAAI,UAA9B,iBAAA,SAA0B,IAAI,CAC7C,cAD6C,EAAA,MAAA,GAAA,gBAAA,CAAA,CAAA;EAU/B,OAAA,EANL,WAMiB;;;;;iBAAZ,YAAA,QAAoB,oBAAiB,eAAA,CAAA"}
1
+ {"version":3,"file":"command-entry.d.mts","names":[],"sources":["../../src/components/command-entry.tsx"],"sourcesContent":[],"mappings":";;;;;iBAyDgB,iBAAA;WAAoC;IAAW,gBAAA,CAAE;AAAjE;AA0BA;AA4DA;AACE,iBA7Dc,yBAAA,CA6Dd,KAAA,EAAA;EAGS,OAAA,EAhEiD,WAgEjD;CAJgC,CAAA,EA5D4B,gBAAA,CAAE,QA4D9B;AAAI,UAA9B,iBAAA,SAA0B,IAAI,CAC7C,cAD6C,EAAA,MAAA,GAAA,gBAAA,CAAA,CAAA;EAU/B,OAAA,EANL,WAMiB;;;;;iBAAZ,YAAA,QAAoB,oBAAiB,gBAAA,CAAA"}
@@ -1136,10 +1136,12 @@ function WriteLineFunctionDeclaration() {
1136
1136
  let line = text;
1137
1137
  let result = [] as string[];
1138
1138
 
1139
- while (stripAnsi(line).length > maxLength) {
1140
- if (line.indexOf("\\n") !== -1 && stripAnsi(line).indexOf("\\n") <= maxLength) {
1141
- result.push(line.slice(0, line.indexOf("\\n")));
1142
- line = line.slice(line.indexOf("\\n") + 1);
1139
+ while (stripAnsi(line).length > maxLength || line.indexOf("\\n") !== -1) {
1140
+ if (line.indexOf("\\n") !== -1) {
1141
+ result.push(...splitText(line.slice(0, line.indexOf("\\n")).replace(/\\n/, ""), maxLength));
1142
+ line = line.indexOf("\\n") + 1 < line.length
1143
+ ? line.slice(line.indexOf("\\n") + 1)
1144
+ : "";
1143
1145
  } else {
1144
1146
  const index = [" ", "/", "\\\\", ".", ",", "-", ":", "|", "@", "+"].reduce((ret, split) => {
1145
1147
  let current = ret;
@@ -1163,10 +1165,7 @@ function WriteLineFunctionDeclaration() {
1163
1165
  line = line.slice(maxLength + 1);
1164
1166
  }
1165
1167
 
1166
- if (line.length > 0) {
1167
- result.push(line);
1168
- }
1169
-
1168
+ result.push(line);
1170
1169
  return result;
1171
1170
  `
1172
1171
  }),
@@ -1316,14 +1315,14 @@ function MessageFunctionDeclaration(props) {
1316
1315
  }
1317
1316
 
1318
1317
  ${!theme.labels.message.footer[variant] && timestamp ? `const timestamp = \`\${colors.text.message.footer.${variant}(new Date().toLocaleDateString())} \${colors.border.message.outline.${variant}("${theme.borderStyles.message.outline[variant].bottom}")} \${colors.text.message.footer.${variant}(new Date().toLocaleTimeString())}\`; ` : ""}
1319
- writeLine(colors.border.message.outline.${variant}("${theme.borderStyles.message.outline[variant].topLeft}") + ${theme.labels.message.header[variant] || theme.icons.message.header[variant] ? `colors.border.message.outline.${variant}("${theme.borderStyles.message.outline[variant].top}".repeat(4)) + " " + ${theme.icons.message.header[variant] ? `colors.border.message.outline.${variant}("${theme.icons.message.header[variant]}") + " " +` : ""} colors.text.message.header.${variant}("${theme.labels.message.header[variant]}") + " " + colors.border.message.outline.${variant}("${theme.borderStyles.message.outline[variant].top}".repeat(Math.max(process.stdout.columns - ${Math.max(theme.padding.app, 0) * 2 + 4 + (theme.icons.message.header[variant] ? theme.icons.message.header[variant].length + 1 + (theme.labels.message.header[variant] ? 0 : 1) : 0) + (theme.labels.message.header[variant] ? theme.labels.message.header[variant].length + 2 : 0) + theme.borderStyles.message.outline[variant].topLeft.length + theme.borderStyles.message.outline[variant].topRight.length}, 0)))` : `colors.border.message.outline.${variant}("${theme.borderStyles.message.outline[variant].top}".repeat(Math.max(process.stdout.columns - ${Math.max(theme.padding.app, 0) * 2 + theme.borderStyles.message.outline[variant].topLeft.length + theme.borderStyles.message.outline[variant].topRight.length}, 0)))`} + colors.border.message.outline.${variant}("${theme.borderStyles.message.outline[variant].topRight}"), { consoleFn: console.${consoleFnName} });
1318
+ writeLine(colors.border.message.outline.${variant}("${theme.borderStyles.message.outline[variant].topLeft}") + ${theme.labels.message.header[variant] || theme.icons.message.header[variant] ? `colors.border.message.outline.${variant}("${theme.borderStyles.message.outline[variant].top}".repeat(4)) + " " + ${theme.icons.message.header[variant] ? `colors.border.message.outline.${variant}("${theme.icons.message.header[variant]}") + " " +` : ""} colors.bold(colors.text.message.header.${variant}("${theme.labels.message.header[variant]}")) + " " + colors.border.message.outline.${variant}("${theme.borderStyles.message.outline[variant].top}".repeat(Math.max(process.stdout.columns - ${Math.max(theme.padding.app, 0) * 2 + 4 + (theme.icons.message.header[variant] ? theme.icons.message.header[variant].length + 1 + (theme.labels.message.header[variant] ? 0 : 1) : 0) + (theme.labels.message.header[variant] ? theme.labels.message.header[variant].length + 2 : 0) + theme.borderStyles.message.outline[variant].topLeft.length + theme.borderStyles.message.outline[variant].topRight.length}, 0)))` : `colors.border.message.outline.${variant}("${theme.borderStyles.message.outline[variant].top}".repeat(Math.max(process.stdout.columns - ${Math.max(theme.padding.app, 0) * 2 + theme.borderStyles.message.outline[variant].topLeft.length + theme.borderStyles.message.outline[variant].topRight.length}, 0)))`} + colors.border.message.outline.${variant}("${theme.borderStyles.message.outline[variant].topRight}"), { consoleFn: console.${consoleFnName} });
1320
1319
  splitText(
1321
1320
  message,
1322
1321
  Math.max(process.stdout.columns - ${(Math.max(theme.padding.app, 0) + Math.max(theme.padding.message, 0)) * 2 + theme.borderStyles.message.outline[variant].left.length + theme.borderStyles.message.outline[variant].right.length}, 0)
1323
1322
  ).forEach((line) => {
1324
1323
  writeLine(colors.border.message.outline.${variant}("${theme.borderStyles.message.outline[variant].left + " ".repeat(Math.max(theme.padding.message, 0))}") + colors.text.message.description.${variant}(line) + " ".repeat(Math.max(process.stdout.columns - (stripAnsi(line).length + ${Math.max(theme.padding.app, 0) * 2 + Math.max(theme.padding.message, 0) + theme.borderStyles.message.outline[variant].left.length + theme.borderStyles.message.outline[variant].right.length}), 0)) + colors.border.message.outline.${variant}("${theme.borderStyles.message.outline[variant].right}"), { consoleFn: console.${consoleFnName} });
1325
1324
  });
1326
- writeLine(colors.border.message.outline.${variant}("${theme.borderStyles.message.outline[variant].bottomLeft}") + ${theme.labels.message.footer[variant] || timestamp ? `colors.border.message.outline.${variant}("${theme.borderStyles.message.outline[variant].bottom}".repeat(Math.max(process.stdout.columns - ${Math.max(theme.padding.app, 0) * 2 + 4 + (theme.labels.message.footer[variant] ? theme.labels.message.footer[variant].length + 2 : 0) + theme.borderStyles.message.outline[variant].bottomLeft.length + theme.borderStyles.message.outline[variant].bottomRight.length}${!theme.labels.message.footer[variant] && timestamp ? " - (stripAnsi(timestamp).length + 2)" : ""}, 0))) + " " + ${theme.labels.message.footer[variant] ? `colors.text.message.footer.${variant}("${theme.labels.message.footer[variant]}")` : timestamp && "timestamp"} + " " + colors.border.message.outline.${variant}("${theme.borderStyles.message.outline[variant].bottom}".repeat(4))` : `colors.border.message.outline.${variant}("${theme.borderStyles.message.outline[variant].bottom}".repeat(Math.max(process.stdout.columns - ${Math.max(theme.padding.app, 0) * 2 + theme.borderStyles.message.outline[variant].bottomLeft.length + theme.borderStyles.message.outline[variant].bottomRight.length}, 0)))`} + colors.border.message.outline.${variant}("${theme.borderStyles.message.outline[variant].bottomRight}"), { consoleFn: console.${consoleFnName} });
1325
+ writeLine(colors.border.message.outline.${variant}("${theme.borderStyles.message.outline[variant].bottomLeft}") + ${theme.labels.message.footer[variant] || timestamp ? `colors.border.message.outline.${variant}("${theme.borderStyles.message.outline[variant].bottom}".repeat(Math.max(process.stdout.columns - ${Math.max(theme.padding.app, 0) * 2 + 4 + (theme.labels.message.footer[variant] ? theme.labels.message.footer[variant].length + 2 : 0) + theme.borderStyles.message.outline[variant].bottomLeft.length + theme.borderStyles.message.outline[variant].bottomRight.length}${!theme.labels.message.footer[variant] && timestamp ? " - (stripAnsi(timestamp).length + 2)" : ""}, 0))) + " " + ${`colors.bold(colors.text.message.footer.${variant}(${theme.labels.message.footer[variant] ? `"${theme.labels.message.footer[variant]}"` : timestamp && "timestamp"}))`} + " " + colors.border.message.outline.${variant}("${theme.borderStyles.message.outline[variant].bottom}".repeat(4))` : `colors.border.message.outline.${variant}("${theme.borderStyles.message.outline[variant].bottom}".repeat(Math.max(process.stdout.columns - ${Math.max(theme.padding.app, 0) * 2 + theme.borderStyles.message.outline[variant].bottomLeft.length + theme.borderStyles.message.outline[variant].bottomRight.length}, 0)))`} + colors.border.message.outline.${variant}("${theme.borderStyles.message.outline[variant].bottomRight}"), { consoleFn: console.${consoleFnName} });
1327
1326
  `)];
1328
1327
  }
1329
1328
  })];
@@ -1352,10 +1351,10 @@ function BannerFunctionDeclaration(props) {
1352
1351
  return;
1353
1352
  }
1354
1353
 
1355
- writeLine(colors.border.banner.outline.${variant}("${theme.borderStyles.banner.outline[variant].topLeft}") + ${theme.icons.banner.header[variant] ? `colors.border.banner.outline.${variant}("${theme.borderStyles.banner.outline[variant].top}".repeat(4)) + " " + ${theme.icons.banner.header[variant] ? `colors.border.banner.outline.${variant}("${theme.icons.banner.header[variant]}") + " " + colors.text.banner.header.${variant}("${theme.borderStyles.banner.outline[variant].top}") + " " +` : ""} colors.text.banner.header.${variant}("${header.value}") + " " + colors.border.banner.outline.${variant}("${theme.borderStyles.banner.outline[variant].top}".repeat(Math.max(process.stdout.columns - ${4 + (theme.icons.banner.header[variant] ? theme.icons.banner.header[variant].length + 3 : 0) + (header.value ? header.value.length + 2 : 0) + bannerPadding.value}, 0)))` : `colors.border.banner.outline.${variant}("${theme.borderStyles.banner.outline[variant].top}".repeat(Math.max(process.stdout.columns - ${bannerPadding.value}, 0)))`} + colors.border.banner.outline.${variant}("${theme.borderStyles.banner.outline[variant].topRight}"), { consoleFn: console.${consoleFnName} });
1354
+ writeLine(colors.border.banner.outline.${variant}("${theme.borderStyles.banner.outline[variant].topLeft}") + ${theme.icons.banner.header[variant] ? `colors.border.banner.outline.${variant}("${theme.borderStyles.banner.outline[variant].top}".repeat(4)) + " " + ${theme.icons.banner.header[variant] ? `colors.text.banner.header.${variant}("${theme.icons.banner.header[variant]}") + " " + colors.border.banner.outline.${variant}("${theme.borderStyles.banner.outline[variant].top}") + " " +` : ""} colors.bold(colors.text.banner.header.${variant}("${header.value}")) + " " + colors.border.banner.outline.${variant}("${theme.borderStyles.banner.outline[variant].top}".repeat(Math.max(process.stdout.columns - ${4 + (theme.icons.banner.header[variant] ? theme.icons.banner.header[variant].length + 3 : 0) + (header.value ? header.value.length + 2 : 0) + bannerPadding.value}, 0)))` : `colors.border.banner.outline.${variant}("${theme.borderStyles.banner.outline[variant].top}".repeat(Math.max(process.stdout.columns - ${bannerPadding.value}, 0)))`} + colors.border.banner.outline.${variant}("${theme.borderStyles.banner.outline[variant].topRight}"), { consoleFn: console.${consoleFnName} });
1356
1355
 
1357
1356
  splitText(
1358
- colors.text.banner.title.${variant}("${title.value}"),
1357
+ colors.bold(colors.text.banner.title.${variant}("${title.value}")),
1359
1358
  Math.max(process.stdout.columns - ${totalPadding.value}, 0)
1360
1359
  ).forEach((line) => {
1361
1360
  writeLine(colors.border.banner.outline.${variant}("${theme.borderStyles.banner.outline[variant].left}") + " ".repeat(Math.max(Math.floor((process.stdout.columns - (stripAnsi(line).length + ${bannerPadding.value})) / 2), 0)) + colors.text.banner.description.${variant}(line) + " ".repeat(Math.max(Math.ceil((process.stdout.columns - (stripAnsi(line).length + ${bannerPadding.value})) / 2), 0)) + colors.border.banner.outline.${variant}("${theme.borderStyles.banner.outline[variant].right}"), { consoleFn: console.${consoleFnName} });
@@ -1363,16 +1362,16 @@ function BannerFunctionDeclaration(props) {
1363
1362
 
1364
1363
  ${command?.title ? `writeLine(colors.border.banner.outline.${variant}("${theme.borderStyles.banner.outline[variant].bottomLeft}") + " ".repeat(Math.max(process.stdout.columns - ${bannerPadding.value})) + colors.border.banner.outline.${variant}("${theme.borderStyles.banner.outline[variant].bottomRight}"), { consoleFn: console.${consoleFnName} });
1365
1364
 
1366
- writeLine(colors.border.banner.outline.${variant}("${theme.borderStyles.banner.outline[variant].left}") + " ".repeat(Math.max(Math.floor((process.stdout.columns - (stripAnsi(line).length + ${bannerPadding.value})) / 2), 0)) + colors.text.banner.command.${variant}("${command.title}") + " ".repeat(Math.max(Math.ceil((process.stdout.columns - (stripAnsi(line).length + ${bannerPadding.value})) / 2), 0)) + colors.border.banner.outline.${variant}("${theme.borderStyles.banner.outline[variant].right}"), { consoleFn: console.${consoleFnName} }); ` : ""}
1365
+ writeLine(colors.border.banner.outline.${variant}("${theme.borderStyles.banner.outline[variant].left}") + " ".repeat(Math.max(Math.floor((process.stdout.columns - (stripAnsi(line).length + ${bannerPadding.value})) / 2), 0)) + colors.bold(colors.text.banner.command.${variant}("${command.title}")) + " ".repeat(Math.max(Math.ceil((process.stdout.columns - (stripAnsi(line).length + ${bannerPadding.value})) / 2), 0)) + colors.border.banner.outline.${variant}("${theme.borderStyles.banner.outline[variant].right}"), { consoleFn: console.${consoleFnName} }); ` : ""}
1367
1366
 
1368
1367
  splitText(
1369
- ${command?.title ? "colors.text.banner.description" : "colors.text.banner.command"}.${variant}("${description.value.replace(/"/g, "\\\"")}"),
1368
+ colors.bold(${command?.title ? "colors.text.banner.description" : "colors.text.banner.command"}.${variant}("${description.value.replace(/"/g, "\\\"")}")),
1370
1369
  Math.max(process.stdout.columns - ${totalPadding.value}, 0)
1371
1370
  ).forEach((line) => {
1372
1371
  writeLine(colors.border.banner.outline.${variant}("${theme.borderStyles.banner.outline[variant].left}") + " ".repeat(Math.max(Math.floor((process.stdout.columns - (stripAnsi(line).length + ${bannerPadding.value})) / 2), 0)) + colors.text.banner.description.${variant}(line) + " ".repeat(Math.max(Math.ceil((process.stdout.columns - (stripAnsi(line).length + ${bannerPadding.value})) / 2), 0)) + colors.border.banner.outline.${variant}("${theme.borderStyles.banner.outline[variant].right}"), { consoleFn: console.${consoleFnName} });
1373
1372
  });
1374
1373
 
1375
- writeLine(colors.border.banner.outline.${variant}("${theme.borderStyles.banner.outline[variant].bottomLeft}") + ${footer.value ? `colors.border.banner.outline.${variant}("${theme.borderStyles.banner.outline[variant].bottom}".repeat(Math.max(process.stdout.columns - ${4 + (footer.value ? footer.value.length : 0) + bannerPadding.value}, 0))) + " " + ${footer.value ? `colors.text.banner.footer.${variant}("${footer.value}")` : ""} + " " + colors.border.banner.outline.${variant}("${theme.borderStyles.banner.outline[variant].bottom}".repeat(4))` : `colors.border.banner.outline.${variant}("${theme.borderStyles.banner.outline[variant].bottom}".repeat(Math.max(process.stdout.columns - ${bannerPadding.value}, 0)))`} + colors.border.banner.outline.${variant}("${theme.borderStyles.banner.outline[variant].bottomRight}"), { consoleFn: console.${consoleFnName} });
1374
+ writeLine(colors.border.banner.outline.${variant}("${theme.borderStyles.banner.outline[variant].bottomLeft}") + ${footer.value ? `colors.border.banner.outline.${variant}("${theme.borderStyles.banner.outline[variant].bottom}".repeat(Math.max(process.stdout.columns - ${6 + (footer.value ? footer.value.length : 0) + bannerPadding.value}, 0))) + " " + ${footer.value ? `colors.bold(colors.text.banner.footer.${variant}("${footer.value}"))` : ""} + " " + colors.border.banner.outline.${variant}("${theme.borderStyles.banner.outline[variant].bottom}".repeat(4))` : `colors.border.banner.outline.${variant}("${theme.borderStyles.banner.outline[variant].bottom}".repeat(Math.max(process.stdout.columns - ${bannerPadding.value}, 0)))`} + colors.border.banner.outline.${variant}("${theme.borderStyles.banner.outline[variant].bottomRight}"), { consoleFn: console.${consoleFnName} });
1376
1375
  `;
1377
1376
  }
1378
1377
  })];
@@ -2145,7 +2144,8 @@ cells.forEach((row, rowIndex) => {
2145
2144
  /**
2146
2145
  * A built-in console utilities module for Shell Shock.
2147
2146
  */
2148
- function ConsoleBuiltin() {
2147
+ function ConsoleBuiltin(props) {
2148
+ const { banner } = props;
2149
2149
  return (0, __alloy_js_core_jsx_runtime.createComponent)(__powerlines_plugin_alloy_typescript_components_builtin_file.BuiltinFile, {
2150
2150
  id: "console",
2151
2151
  description: "A collection of helper utilities to assist in generating content meant for display in the console.",
@@ -2188,7 +2188,7 @@ function ConsoleBuiltin() {
2188
2188
  (0, __alloy_js_core_jsx_runtime.createComponent)(DividerFunctionDeclaration, {}),
2189
2189
  (0, __alloy_js_core_jsx_runtime.createIntrinsic)("hbr", {}),
2190
2190
  (0, __alloy_js_core_jsx_runtime.createIntrinsic)("hbr", {}),
2191
- (0, __alloy_js_core_jsx_runtime.createComponent)(BannerFunctionDeclaration, {}),
2191
+ (0, __alloy_js_core_jsx_runtime.memo)(() => banner ?? (0, __alloy_js_core_jsx_runtime.createComponent)(BannerFunctionDeclaration, {})),
2192
2192
  (0, __alloy_js_core_jsx_runtime.createIntrinsic)("hbr", {}),
2193
2193
  (0, __alloy_js_core_jsx_runtime.createIntrinsic)("hbr", {}),
2194
2194
  (0, __alloy_js_core_jsx_runtime.createComponent)(MessageFunctionDeclaration, {