jssm 5.162.7 → 5.162.9

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 (53) hide show
  1. package/README.md +7 -7
  2. package/custom-elements.json +24 -24
  3. package/dist/cdn/instance.js +5 -3
  4. package/dist/cdn/viz.js +1 -1
  5. package/dist/cli/fsl-export-system-prompt.cjs +27 -24
  6. package/dist/cli/fsl-render.cjs +1 -1
  7. package/dist/cli/fsl.cjs +1 -1
  8. package/dist/cli/lib.cjs +1 -1
  9. package/dist/cli/lib.mjs +1 -1
  10. package/dist/cm6/fsl_language.js +10 -14
  11. package/dist/deno/README.md +7 -7
  12. package/dist/deno/fence.d.ts +0 -1
  13. package/dist/deno/fsl_fence_highlight.d.ts +0 -4
  14. package/dist/deno/fsl_fence_render.d.ts +0 -8
  15. package/dist/deno/fsl_gif.d.ts +0 -8
  16. package/dist/deno/fsl_markdown_fence.d.ts +0 -5
  17. package/dist/deno/fsl_svg_patch.d.ts +0 -6
  18. package/dist/deno/fsl_walk.d.ts +0 -2
  19. package/dist/deno/jssm.d.ts +214 -503
  20. package/dist/deno/jssm.js +1 -1
  21. package/dist/deno/jssm_compiler.d.ts +1 -1
  22. package/dist/deno/jssm_constants.d.ts +0 -3
  23. package/dist/deno/jssm_intern.d.ts +0 -15
  24. package/dist/deno/jssm_theme.d.ts +2 -2
  25. package/dist/deno/jssm_types.d.ts +13 -34
  26. package/dist/deno/jssm_util.d.ts +20 -6
  27. package/dist/deno/jssm_viz.d.ts +5 -51
  28. package/dist/es6/cm6/fsl_language.d.ts +0 -2
  29. package/dist/fence/fence.js +2052 -1857
  30. package/dist/jssm.es5.cjs +1 -1
  31. package/dist/jssm.es5.iife.js +1 -1
  32. package/dist/jssm.es6.mjs +1 -1
  33. package/dist/jssm_viz.cjs +1 -1
  34. package/dist/jssm_viz.iife.cjs +1 -1
  35. package/dist/jssm_viz.mjs +1 -1
  36. package/dist/wc/docs.define.js +0 -5
  37. package/dist/wc/docs.js +79 -43
  38. package/dist/wc/editor.define.js +0 -5
  39. package/dist/wc/editor.js +1 -7
  40. package/dist/wc/instance.define.js +0 -6
  41. package/dist/wc/instance.js +93 -115
  42. package/dist/wc/viz.define.js +0 -6
  43. package/dist/wc/viz.js +22 -36
  44. package/dist/wc/widgets.define.js +0 -5
  45. package/dist/wc/widgets.js +117 -95
  46. package/jssm.cli.d.cts +0 -8
  47. package/jssm.cli.d.ts +0 -8
  48. package/jssm.es5.d.cts +449 -808
  49. package/jssm.es6.d.ts +449 -808
  50. package/jssm.fence.d.ts +213 -508
  51. package/jssm_viz.es5.d.cts +216 -529
  52. package/jssm_viz.es6.d.ts +216 -529
  53. package/package.json +21 -11
@@ -8,7 +8,7 @@ function parseFslArgs(argv, spec) {
8
8
  for (const [name, fs] of Object.entries(spec.flags)) {
9
9
  if (fs.short) shortMap[fs.short] = name;
10
10
  }
11
- const isBoolean = (name) => spec.flags[name]?.boolean === true;
11
+ const isBoolean = (name) => spec.flags[name]?.boolean;
12
12
  const flagType = (name) => {
13
13
  const fs = spec.flags[name];
14
14
  return fs.type ?? "string";
@@ -18,7 +18,7 @@ function parseFslArgs(argv, spec) {
18
18
  if (t === "number") {
19
19
  const n = Number(raw);
20
20
  if (Number.isNaN(n)) {
21
- throw new Error(`flag --${name} requires a number, got: ${raw}`);
21
+ throw new TypeError(`flag --${name} requires a number, got: ${raw}`);
22
22
  }
23
23
  return n;
24
24
  }
@@ -49,18 +49,18 @@ function parseFslArgs(argv, spec) {
49
49
  }
50
50
  if (a.startsWith("--")) {
51
51
  const eq = a.indexOf("=");
52
- const name = eq >= 0 ? a.slice(2, eq) : a.slice(2);
53
- if (!(name in spec.flags)) throw new Error(`unknown flag: --${name}`);
52
+ const name = eq === -1 ? a.slice(2) : a.slice(2, eq);
53
+ if (!Object.prototype.hasOwnProperty.call(spec.flags, name)) throw new Error(`unknown flag: --${name}`);
54
54
  if (isBoolean(name)) {
55
55
  flags[name] = true;
56
56
  i++;
57
- } else if (eq >= 0) {
58
- flags[name] = coerce(name, a.slice(eq + 1));
59
- i++;
60
- } else {
57
+ } else if (eq === -1) {
61
58
  if (i + 1 >= argv.length) throw new Error(`flag --${name} requires a value`);
62
59
  flags[name] = coerce(name, argv[i + 1]);
63
60
  i += 2;
61
+ } else {
62
+ flags[name] = coerce(name, a.slice(eq + 1));
63
+ i++;
64
64
  }
65
65
  continue;
66
66
  }
@@ -91,16 +91,19 @@ function parseFslArgs(argv, spec) {
91
91
  }
92
92
  }
93
93
  const helpText = () => {
94
- const lines = [];
95
- lines.push("Usage:");
96
- lines.push(" " + spec.usage);
97
- lines.push("");
98
- lines.push("Options:");
94
+ const lines = ["Usage:", " " + spec.usage, "", "Options:"];
99
95
  for (const [name, fs] of Object.entries(spec.flags)) {
100
- const short = fs.short ? `-${fs.short}, ` : " ";
96
+ const short = fs.short ? `-${fs.short}, ` : " ".repeat(4);
101
97
  const longPart = `--${name}`;
102
- const arg = fs.boolean ? "" : fs.enum ? ` ${fs.enum.join("|")}` : fs.type === "number" ? " N" : " VALUE";
103
- const defStr = fs.default !== void 0 ? ` (default: ${fs.default})` : "";
98
+ let arg = " VALUE";
99
+ if (fs.boolean) {
100
+ arg = "";
101
+ } else if (fs.enum) {
102
+ arg = ` ${fs.enum.join("|")}`;
103
+ } else if (fs.type === "number") {
104
+ arg = " N";
105
+ }
106
+ const defStr = fs.default === void 0 ? "" : ` (default: ${fs.default})`;
104
107
  lines.push(` ${short}${longPart}${arg}${defStr}`);
105
108
  }
106
109
  return lines.join("\n");
@@ -108,7 +111,7 @@ function parseFslArgs(argv, spec) {
108
111
  return { positional, flags, helpText };
109
112
  }
110
113
 
111
- const getVersion = () => "5.162.7";
114
+ const getVersion = () => "5.162.9";
112
115
  const SPEC = {
113
116
  flags: {
114
117
  help: { short: "h", boolean: true },
@@ -191,24 +194,24 @@ Red -> Green;
191
194
  ---
192
195
  *Generated by the FSL v5 Toolchain*
193
196
  `;
194
- async function cli(argv) {
197
+ function cli(argv) {
195
198
  let parsed;
196
199
  try {
197
200
  parsed = parseFslArgs(argv, SPEC);
198
- } catch (e) {
199
- printErr(e.message);
200
- return 1;
201
+ } catch (error) {
202
+ printErr(error.message);
203
+ return Promise.resolve(1);
201
204
  }
202
205
  if (parsed.flags.help) {
203
206
  writeStdout(parsed.helpText() + "\n");
204
- return 0;
207
+ return Promise.resolve(0);
205
208
  }
206
209
  if (parsed.flags.version) {
207
210
  writeStdout("fsl-export-system-prompt " + getVersion() + "\n");
208
- return 0;
211
+ return Promise.resolve(0);
209
212
  }
210
213
  writeStdout(SYSTEM_PROMPT.trim() + "\n");
211
- return 0;
214
+ return Promise.resolve(0);
212
215
  }
213
216
 
214
217
  async function main() {