@shell-shock/preset-script 0.1.2 → 0.2.0

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 (44) hide show
  1. package/dist/components/args-parser-logic.d.cts +7 -7
  2. package/dist/components/args-parser-logic.d.cts.map +1 -1
  3. package/dist/components/bin-entry.cjs +15 -6
  4. package/dist/components/bin-entry.cjs.map +1 -1
  5. package/dist/components/bin-entry.d.cts +3 -3
  6. package/dist/components/bin-entry.d.cts.map +1 -1
  7. package/dist/components/bin-entry.d.mts +3 -3
  8. package/dist/components/bin-entry.d.mts.map +1 -1
  9. package/dist/components/bin-entry.mjs +15 -6
  10. package/dist/components/bin-entry.mjs.map +1 -1
  11. package/dist/components/command-entry.d.cts +4 -4
  12. package/dist/components/command-router.cjs +63 -38
  13. package/dist/components/command-router.cjs.map +1 -1
  14. package/dist/components/command-router.d.cts.map +1 -1
  15. package/dist/components/command-router.d.mts.map +1 -1
  16. package/dist/components/command-router.mjs +63 -38
  17. package/dist/components/command-router.mjs.map +1 -1
  18. package/dist/components/console-builtin.cjs +9 -6
  19. package/dist/components/console-builtin.cjs.map +1 -1
  20. package/dist/components/console-builtin.d.cts.map +1 -1
  21. package/dist/components/console-builtin.d.mts.map +1 -1
  22. package/dist/components/console-builtin.mjs +9 -6
  23. package/dist/components/console-builtin.mjs.map +1 -1
  24. package/dist/components/help.d.cts +5 -5
  25. package/dist/components/index.cjs +1 -1
  26. package/dist/components/index.d.cts +2 -2
  27. package/dist/components/index.d.mts +2 -2
  28. package/dist/components/index.mjs +2 -2
  29. package/dist/components/utils-builtin.d.cts +7 -7
  30. package/dist/components/virtual-command-entry.cjs +8 -1
  31. package/dist/components/virtual-command-entry.cjs.map +1 -1
  32. package/dist/components/virtual-command-entry.d.cts +3 -3
  33. package/dist/components/virtual-command-entry.d.cts.map +1 -1
  34. package/dist/components/virtual-command-entry.mjs +8 -1
  35. package/dist/components/virtual-command-entry.mjs.map +1 -1
  36. package/dist/index.cjs +3 -0
  37. package/dist/index.cjs.map +1 -1
  38. package/dist/index.d.cts.map +1 -1
  39. package/dist/index.d.mts.map +1 -1
  40. package/dist/index.mjs +3 -0
  41. package/dist/index.mjs.map +1 -1
  42. package/dist/types/plugin.d.cts.map +1 -1
  43. package/dist/types/plugin.d.mts.map +1 -1
  44. package/package.json +10 -10
@@ -2,6 +2,7 @@ import { createComponent, createIntrinsic, memo } from "@alloy-js/core/jsx-runti
2
2
  import { For, Show, code, computed } from "@alloy-js/core";
3
3
  import { ElseIfClause, IfStatement, VarDeclaration } from "@alloy-js/typescript";
4
4
  import { isVariableCommandPath } from "@shell-shock/core/plugin-utils/context-helpers";
5
+ import { usePowerlines } from "@powerlines/plugin-alloy/core/contexts/context";
5
6
  import { pascalCase } from "@stryke/string-format/pascal-case";
6
7
  import { DynamicImportStatement } from "@powerlines/plugin-alloy/typescript/components/dynamic-import-statement";
7
8
  import { CommandContext, useCommand } from "@shell-shock/core/contexts/command";
@@ -35,7 +36,7 @@ function CommandRouterRoute() {
35
36
  */
36
37
  function CommandRouter(props) {
37
38
  const { path, commands, route } = props;
38
- const command = useCommand();
39
+ const context = usePowerlines();
39
40
  const index = computed(() => 2 + (path.length ?? 0));
40
41
  return createComponent(Show, {
41
42
  get when() {
@@ -66,60 +67,84 @@ function CommandRouter(props) {
66
67
  children: (subcommand, idx) => createComponent(CommandContext.Provider, {
67
68
  value: subcommand,
68
69
  get children() {
69
- return createComponent(Show, {
70
+ return [createComponent(Show, {
70
71
  get when() {
71
- return subcommand.name !== command?.name;
72
+ return Boolean(idx);
72
73
  },
73
- get children() {
74
- return createComponent(Show, {
75
- get when() {
76
- return Boolean(idx);
74
+ get fallback() {
75
+ return createComponent(IfStatement, {
76
+ get condition() {
77
+ return code`${context.config.isCaseSensitive ? "command" : "command.toLowerCase().replaceAll(/-/g, \"\")"} === "${context.config.isCaseSensitive ? subcommand.name : subcommand.name.toLowerCase().replaceAll(/-/g, "")}"`;
77
78
  },
78
- get fallback() {
79
- return createComponent(IfStatement, {
80
- get condition() {
81
- return code`command.toLowerCase() === "${subcommand.name.toLowerCase()}"`;
79
+ get children() {
80
+ return createComponent(Show, {
81
+ get when() {
82
+ return Boolean(route);
82
83
  },
83
- get children() {
84
- return createComponent(Show, {
85
- get when() {
86
- return Boolean(route);
87
- },
88
- get fallback() {
89
- return createComponent(CommandRouterRoute, {});
90
- },
91
- children: route
92
- });
93
- }
84
+ get fallback() {
85
+ return createComponent(CommandRouterRoute, {});
86
+ },
87
+ children: route
94
88
  });
89
+ }
90
+ });
91
+ },
92
+ get children() {
93
+ return createComponent(ElseIfClause, {
94
+ get condition() {
95
+ return code`${context.config.isCaseSensitive ? "command" : "command.toLowerCase().replaceAll(/-/g, \"\")"} === "${context.config.isCaseSensitive ? subcommand.name : subcommand.name.toLowerCase().replaceAll(/-/g, "")}"`;
95
96
  },
96
97
  get children() {
97
- return createComponent(ElseIfClause, {
98
- get condition() {
99
- return code`command.toLowerCase() === "${subcommand.name.toLowerCase()}"`;
98
+ return createComponent(Show, {
99
+ get when() {
100
+ return Boolean(route);
101
+ },
102
+ get fallback() {
103
+ return createComponent(CommandRouterRoute, {});
100
104
  },
101
- get children() {
102
- return createComponent(Show, {
103
- get when() {
104
- return Boolean(route);
105
- },
106
- get fallback() {
107
- return createComponent(CommandRouterRoute, {});
108
- },
109
- children: route
110
- });
111
- }
105
+ children: route
112
106
  });
113
107
  }
114
108
  });
115
109
  }
116
- });
110
+ }), createComponent(For, {
111
+ get each() {
112
+ return subcommand.alias;
113
+ },
114
+ doubleHardline: true,
115
+ children: (alias) => createComponent(ElseIfClause, {
116
+ get condition() {
117
+ return code`${context.config.isCaseSensitive ? "command" : "command.toLowerCase().replaceAll(/-/g, \"\")"} === "${context.config.isCaseSensitive ? alias : alias.toLowerCase().replaceAll(/-/g, "")}"`;
118
+ },
119
+ get children() {
120
+ return createComponent(Show, {
121
+ get when() {
122
+ return Boolean(route);
123
+ },
124
+ get fallback() {
125
+ return createComponent(CommandRouterRoute, {});
126
+ },
127
+ children: route
128
+ });
129
+ }
130
+ })
131
+ })];
117
132
  }
118
133
  })
119
134
  }),
120
135
  createComponent(ElseIfClause, {
121
136
  condition: code`Boolean(command)`,
122
- children: code`error("Unknown command: " + command);`
137
+ get children() {
138
+ return code`const suggestions = didYouMean(command, [${Object.values(commands ?? {}).map((cmd) => `"${cmd.name}"${cmd.alias.map((alias) => `", "${alias}"`).join("")}`).join(", ")}], {
139
+ caseSensitive: false,
140
+ deburr: true,
141
+ trimSpaces: true,
142
+ returnType: ReturnTypeEnums.ALL_CLOSE_MATCHES,
143
+ thresholdType: ThresholdTypeEnums.RELATIVE_DISTANCE,
144
+ threshold: 0.75
145
+ });
146
+ error(\`Unknown command: "\${command}"\${suggestions && suggestions.length > 0 ? \`, did you mean: \${suggestions.length === 1 ? \`"\${suggestions[0]}"\` : suggestions.map((suggestion, i) => i < suggestions.length - 1 ? \`"\${suggestion}", \` : \`or "\${suggestion}"\`)}?\` : ""} \`);`;
147
+ }
123
148
  })
124
149
  ];
125
150
  }
@@ -1 +1 @@
1
- {"version":3,"file":"command-router.mjs","names":["code","computed","For","Show","ElseIfClause","IfStatement","VarDeclaration","DynamicImportStatement","CommandContext","useCommand","isVariableCommandPath","pascalCase","CommandRouterRoute","command","_$createComponent","when","isVirtual","children","name","importPath","path","segments","filter","segment","length","exportName","_$createIntrinsic","_$memo","CommandRouter","props","commands","route","index","Object","keys","type","initializer","condition","value","each","values","subcommand","idx","Provider","Boolean","fallback","toLowerCase"],"sources":["../../src/components/command-router.tsx"],"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 { Children } from \"@alloy-js/core\";\nimport { code, computed, For, Show } from \"@alloy-js/core\";\nimport {\n ElseIfClause,\n IfStatement,\n VarDeclaration\n} from \"@alloy-js/typescript\";\nimport { DynamicImportStatement } from \"@powerlines/plugin-alloy/typescript/components/dynamic-import-statement\";\nimport { CommandContext, useCommand } from \"@shell-shock/core/contexts/command\";\nimport { isVariableCommandPath } from \"@shell-shock/core/plugin-utils/context-helpers\";\nimport type { CommandTree } from \"@shell-shock/core/types/command\";\nimport { pascalCase } from \"@stryke/string-format/pascal-case\";\n\nexport function CommandRouterRoute() {\n const command = useCommand();\n\n return (\n <>\n <Show when={!command.isVirtual}>\n <DynamicImportStatement\n name={`handle${pascalCase(command.name)}`}\n importPath={`./${\n command.path.segments.filter(\n segment => !isVariableCommandPath(segment)\n )[\n command.path.segments.filter(\n segment => !isVariableCommandPath(segment)\n ).length - 1\n ]\n }`}\n exportName=\"handler\"\n />\n </Show>\n <hbr />\n {code`return handle${pascalCase(command.name)}(args);`}\n </>\n );\n}\n\nexport interface CommandRouterProps {\n path: string[];\n commands?: Record<string, CommandTree>;\n route?: Children;\n}\n\n/**\n * The command router component.\n */\nexport function CommandRouter(props: CommandRouterProps) {\n const { path, commands, route } = props;\n\n const command = useCommand();\n const index = computed(() => 2 + (path.length ?? 0));\n\n return (\n <Show when={commands && Object.keys(commands).length > 0}>\n <VarDeclaration\n let\n name=\"command\"\n type=\"string\"\n initializer={code`\"\";`}\n />\n <hbr />\n <IfStatement\n condition={code`args.length > ${\n index.value\n } && args[${index.value}]`}>{code`command = args[${\n index.value\n }];`}</IfStatement>\n <hbr />\n <For each={Object.values(commands ?? {})}>\n {(subcommand, idx) => (\n <CommandContext.Provider value={subcommand}>\n <Show when={subcommand.name !== command?.name}>\n <Show\n when={Boolean(idx)}\n fallback={\n <IfStatement\n condition={code`command.toLowerCase() === \"${subcommand.name.toLowerCase()}\"`}>\n <Show\n when={Boolean(route)}\n fallback={<CommandRouterRoute />}>\n {route}\n </Show>\n </IfStatement>\n }>\n <ElseIfClause\n condition={code`command.toLowerCase() === \"${subcommand.name.toLowerCase()}\"`}>\n <Show when={Boolean(route)} fallback={<CommandRouterRoute />}>\n {route}\n </Show>\n </ElseIfClause>\n </Show>\n </Show>\n </CommandContext.Provider>\n )}\n </For>\n <ElseIfClause\n condition={code`Boolean(command)`}>{code`error(\"Unknown command: \" + command);`}</ElseIfClause>\n </Show>\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"command-router.mjs","names":["code","computed","For","Show","ElseIfClause","IfStatement","VarDeclaration","usePowerlines","DynamicImportStatement","CommandContext","useCommand","isVariableCommandPath","pascalCase","CommandRouterRoute","command","_$createComponent","when","isVirtual","children","name","importPath","path","segments","filter","segment","length","exportName","_$createIntrinsic","_$memo","CommandRouter","props","commands","route","context","index","Object","keys","type","initializer","condition","value","each","values","subcommand","idx","Provider","Boolean","fallback","config","isCaseSensitive","toLowerCase","replaceAll","alias","doubleHardline","map","cmd","join"],"sources":["../../src/components/command-router.tsx"],"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 { Children } from \"@alloy-js/core\";\nimport { code, computed, For, Show } from \"@alloy-js/core\";\nimport {\n ElseIfClause,\n IfStatement,\n VarDeclaration\n} from \"@alloy-js/typescript\";\nimport { usePowerlines } from \"@powerlines/plugin-alloy/core/contexts/context\";\nimport { DynamicImportStatement } from \"@powerlines/plugin-alloy/typescript/components/dynamic-import-statement\";\nimport { CommandContext, useCommand } from \"@shell-shock/core/contexts/command\";\nimport { isVariableCommandPath } from \"@shell-shock/core/plugin-utils/context-helpers\";\nimport type { CommandTree } from \"@shell-shock/core/types/command\";\nimport { pascalCase } from \"@stryke/string-format/pascal-case\";\nimport type { ScriptPresetContext } from \"../types/plugin\";\n\nexport function CommandRouterRoute() {\n const command = useCommand();\n\n return (\n <>\n <Show when={!command.isVirtual}>\n <DynamicImportStatement\n name={`handle${pascalCase(command.name)}`}\n importPath={`./${\n command.path.segments.filter(\n segment => !isVariableCommandPath(segment)\n )[\n command.path.segments.filter(\n segment => !isVariableCommandPath(segment)\n ).length - 1\n ]\n }`}\n exportName=\"handler\"\n />\n </Show>\n <hbr />\n {code`return handle${pascalCase(command.name)}(args);`}\n </>\n );\n}\n\nexport interface CommandRouterProps {\n path: string[];\n commands?: Record<string, CommandTree>;\n route?: Children;\n}\n\n/**\n * The command router component.\n */\nexport function CommandRouter(props: CommandRouterProps) {\n const { path, commands, route } = props;\n\n const context = usePowerlines<ScriptPresetContext>();\n const index = computed(() => 2 + (path.length ?? 0));\n\n return (\n <Show when={commands && Object.keys(commands).length > 0}>\n <VarDeclaration\n let\n name=\"command\"\n type=\"string\"\n initializer={code`\"\";`}\n />\n <hbr />\n <IfStatement\n condition={code`args.length > ${\n index.value\n } && args[${index.value}]`}>{code`command = args[${\n index.value\n }];`}</IfStatement>\n <hbr />\n <For each={Object.values(commands ?? {})}>\n {(subcommand, idx) => (\n <CommandContext.Provider value={subcommand}>\n <Show\n when={Boolean(idx)}\n fallback={\n <IfStatement\n condition={code`${\n context.config.isCaseSensitive\n ? \"command\"\n : 'command.toLowerCase().replaceAll(/-/g, \"\")'\n } === \"${\n context.config.isCaseSensitive\n ? subcommand.name\n : subcommand.name.toLowerCase().replaceAll(/-/g, \"\")\n }\"`}>\n <Show when={Boolean(route)} fallback={<CommandRouterRoute />}>\n {route}\n </Show>\n </IfStatement>\n }>\n <ElseIfClause\n condition={code`${\n context.config.isCaseSensitive\n ? \"command\"\n : 'command.toLowerCase().replaceAll(/-/g, \"\")'\n } === \"${\n context.config.isCaseSensitive\n ? subcommand.name\n : subcommand.name.toLowerCase().replaceAll(/-/g, \"\")\n }\"`}>\n <Show when={Boolean(route)} fallback={<CommandRouterRoute />}>\n {route}\n </Show>\n </ElseIfClause>\n </Show>\n <For each={subcommand.alias} doubleHardline>\n {alias => (\n <ElseIfClause\n condition={code`${\n context.config.isCaseSensitive\n ? \"command\"\n : 'command.toLowerCase().replaceAll(/-/g, \"\")'\n } === \"${\n context.config.isCaseSensitive\n ? alias\n : alias.toLowerCase().replaceAll(/-/g, \"\")\n }\"`}>\n <Show when={Boolean(route)} fallback={<CommandRouterRoute />}>\n {route}\n </Show>\n </ElseIfClause>\n )}\n </For>\n </CommandContext.Provider>\n )}\n </For>\n <ElseIfClause\n condition={code`Boolean(command)`}>{code`const suggestions = didYouMean(command, [${Object.values(\n commands ?? {}\n )\n .map(\n cmd =>\n `\"${cmd.name}\"${cmd.alias.map(alias => `\", \"${alias}\"`).join(\"\")}`\n )\n .join(\", \")}], {\n caseSensitive: false,\n deburr: true,\n trimSpaces: true,\n returnType: ReturnTypeEnums.ALL_CLOSE_MATCHES,\n thresholdType: ThresholdTypeEnums.RELATIVE_DISTANCE,\n threshold: 0.75\n });\n error(\\`Unknown command: \"\\${command}\"\\${suggestions && suggestions.length > 0 ? \\`, did you mean: \\${suggestions.length === 1 ? \\`\"\\${suggestions[0]}\"\\` : suggestions.map((suggestion, i) => i < suggestions.length - 1 ? \\`\"\\${suggestion}\", \\` : \\`or \"\\${suggestion}\"\\`)}?\\` : \"\"} \\`);`}</ElseIfClause>\n </Show>\n );\n}\n"],"mappings":"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"}
@@ -1302,6 +1302,7 @@ function DividerFunctionDeclaration() {
1302
1302
  type: "number",
1303
1303
  doc: "The width of the divider line. If not specified, the divider will span the full width of the console, minus the padding."
1304
1304
  }),
1305
+ (0, __alloy_js_core_jsx_runtime.createIntrinsic)("hbr", {}),
1305
1306
  (0, __alloy_js_core_jsx_runtime.createComponent)(__powerlines_plugin_alloy_typescript_components_tsdoc.TSDoc, {
1306
1307
  heading: "The border of the divider line. Can be 'primary', 'secondary', 'tertiary', or 'none'. If not specified, the default border style will be used.",
1307
1308
  get children() {
@@ -1309,7 +1310,7 @@ function DividerFunctionDeclaration() {
1309
1310
  get type() {
1310
1311
  return __powerlines_deepkit_vendor_type.ReflectionKind.string;
1311
1312
  },
1312
- defaultValue: "\"primary\""
1313
+ defaultValue: "primary"
1313
1314
  })];
1314
1315
  }
1315
1316
  }),
@@ -1319,6 +1320,7 @@ function DividerFunctionDeclaration() {
1319
1320
  type: "\"primary\" | \"secondary\" | \"tertiary\"",
1320
1321
  doc: "The border style/color of the divider line. Can be 'primary', 'secondary', 'tertiary', or 'none'. If not specified, the default border style will be used."
1321
1322
  }),
1323
+ (0, __alloy_js_core_jsx_runtime.createIntrinsic)("hbr", {}),
1322
1324
  (0, __alloy_js_core_jsx_runtime.createComponent)(__powerlines_plugin_alloy_typescript_components_tsdoc.TSDoc, {
1323
1325
  heading: "Padding to apply to the line",
1324
1326
  get children() {
@@ -1457,7 +1459,7 @@ function TableFunctionDeclaration(props) {
1457
1459
  get type() {
1458
1460
  return __powerlines_deepkit_vendor_type.ReflectionKind.property;
1459
1461
  },
1460
- defaultValue: "\"primary\""
1462
+ defaultValue: "primary"
1461
1463
  })
1462
1464
  ];
1463
1465
  }
@@ -1501,7 +1503,7 @@ function TableFunctionDeclaration(props) {
1501
1503
  get type() {
1502
1504
  return __powerlines_deepkit_vendor_type.ReflectionKind.property;
1503
1505
  },
1504
- defaultValue: "\"left\""
1506
+ defaultValue: "left"
1505
1507
  })
1506
1508
  ];
1507
1509
  }
@@ -1838,14 +1840,14 @@ const calculateRowDimensions = () => {
1838
1840
  }, [] as Dimensions[]);
1839
1841
  }
1840
1842
 
1841
- const maxWidth = Math.max(process.stdout.columns - ${Math.max(theme.padding.app, 0) * 2}, 0);
1842
1843
  rowDims = calculateRowDimensions();
1843
1844
 
1845
+ /*
1844
1846
  let recalculate!: boolean;
1845
1847
  do {
1846
1848
  recalculate = false;
1847
1849
  rowDims.map((row, rowIndex) => {
1848
- if (row.width > maxWidth) {
1850
+ if (row.width > Math.max(process.stdout.columns - ${Math.max(theme.padding.app, 0) * 2}, 0)) {
1849
1851
  const cell = cells[rowIndex]!.reduce((largestCell, cell) => {
1850
1852
  if (cell.width > largestCell.width) {
1851
1853
  return cell;
@@ -1855,7 +1857,7 @@ do {
1855
1857
 
1856
1858
  const lines = splitText(
1857
1859
  cell.value,
1858
- maxWidth - row.width - cell.width
1860
+ Math.max(process.stdout.columns - ${Math.max(theme.padding.app, 0) * 2}, 0) - row.width - cell.width
1859
1861
  );
1860
1862
 
1861
1863
  cell.value = lines.join("\\n");
@@ -1870,6 +1872,7 @@ do {
1870
1872
  rowDims = calculateRowDimensions();
1871
1873
  }
1872
1874
  } while (recalculate);
1875
+ */
1873
1876
 
1874
1877
  rowDims.map((row, rowIndex) => {
1875
1878
  cells[rowIndex]!.forEach(cell => {