jssm 5.148.1 → 5.149.1
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 +7 -7
- package/custom-elements.json +272 -0
- package/dist/cdn/instance.js +1 -1
- package/dist/cdn/viz.js +1 -1
- package/dist/cli/fsl-export-system-prompt.cjs +3 -3
- package/dist/cli/fsl-render.cjs +1 -1
- package/dist/cli/fsl.cjs +1 -1
- package/dist/cli/lib.cjs +1 -1
- package/dist/cli/lib.mjs +1 -1
- package/dist/deno/README.md +7 -7
- package/dist/deno/jssm.js +1 -1
- package/dist/jssm.es5.cjs +1 -1
- package/dist/jssm.es5.iife.js +1 -1
- package/dist/jssm.es6.mjs +1 -1
- package/dist/jssm_viz.cjs +1 -1
- package/dist/jssm_viz.iife.cjs +1 -1
- package/dist/jssm_viz.mjs +1 -1
- package/dist/wc/docs.define.js +52 -0
- package/dist/wc/docs.js +1131 -0
- package/package.json +15 -3
package/README.md
CHANGED
|
@@ -18,10 +18,10 @@ Please edit the file it's derived from, instead: `./src/md/readme_base.md`
|
|
|
18
18
|
|
|
19
19
|
|
|
20
20
|
|
|
21
|
-
* Generated for version 5.
|
|
21
|
+
* Generated for version 5.149.1 at 6/28/2026, 9:03:29 AM
|
|
22
22
|
|
|
23
23
|
-->
|
|
24
|
-
# jssm 5.
|
|
24
|
+
# jssm 5.149.1
|
|
25
25
|
|
|
26
26
|
[**Try the live editor**](https://stonecypher.github.io/jssm-viz-demo/graph_explorer.html) ·
|
|
27
27
|
[Documentation](https://stonecypher.github.io/jssm/docs/) ·
|
|
@@ -312,7 +312,7 @@ That decision shows up everywhere downstream:
|
|
|
312
312
|
or run `npm run benny` against your own machine.
|
|
313
313
|
|
|
314
314
|
- **More thoroughly tested than any other JavaScript state-machine
|
|
315
|
-
library.** 7,
|
|
315
|
+
library.** 7,704 tests at 100.0% line coverage
|
|
316
316
|
([report](https://coveralls.io/github/StoneCypher/jssm)), plus
|
|
317
317
|
fuzz testing via `fast-check`, with parser test data across ten natural
|
|
318
318
|
languages and Emoji.
|
|
@@ -445,11 +445,11 @@ If your contribution is missing here, please open an issue.
|
|
|
445
445
|
|
|
446
446
|
<br/>
|
|
447
447
|
|
|
448
|
-
***7,
|
|
448
|
+
***7,704 tests***, run 82,350 times.
|
|
449
449
|
|
|
450
|
-
- 6,
|
|
451
|
-
- 754 fuzz tests with
|
|
452
|
-
- 8,
|
|
450
|
+
- 6,950 specs with 100.0% coverage
|
|
451
|
+
- 754 fuzz tests with 57.5% coverage
|
|
452
|
+
- 8,989 TypeScript lines - 0.9 tests per line, 9.2 generated tests per line
|
|
453
453
|
|
|
454
454
|
[](https://github.com/StoneCypher/jssm/actions)
|
|
455
455
|
[](https://www.npmjs.com/package/jssm)
|
package/custom-elements.json
CHANGED
|
@@ -412,6 +412,278 @@
|
|
|
412
412
|
}
|
|
413
413
|
]
|
|
414
414
|
},
|
|
415
|
+
{
|
|
416
|
+
"kind": "javascript-module",
|
|
417
|
+
"path": "src/ts/wc/fsl_docs_markdown.ts",
|
|
418
|
+
"declarations": [
|
|
419
|
+
{
|
|
420
|
+
"kind": "function",
|
|
421
|
+
"name": "parseFenceInfo",
|
|
422
|
+
"return": {
|
|
423
|
+
"type": {
|
|
424
|
+
"text": "{ lang: string; attrs: Record<string, string | boolean> }"
|
|
425
|
+
}
|
|
426
|
+
},
|
|
427
|
+
"parameters": [
|
|
428
|
+
{
|
|
429
|
+
"name": "info",
|
|
430
|
+
"type": {
|
|
431
|
+
"text": "string"
|
|
432
|
+
}
|
|
433
|
+
}
|
|
434
|
+
],
|
|
435
|
+
"description": "Parse a fenced-code info string like `fsl {teaches: x, run: true}`."
|
|
436
|
+
},
|
|
437
|
+
{
|
|
438
|
+
"kind": "function",
|
|
439
|
+
"name": "renderMarkdown",
|
|
440
|
+
"return": {
|
|
441
|
+
"type": {
|
|
442
|
+
"text": "string"
|
|
443
|
+
}
|
|
444
|
+
},
|
|
445
|
+
"parameters": [
|
|
446
|
+
{
|
|
447
|
+
"name": "md",
|
|
448
|
+
"type": {
|
|
449
|
+
"text": "string"
|
|
450
|
+
}
|
|
451
|
+
}
|
|
452
|
+
],
|
|
453
|
+
"description": "Render the supported markdown subset to an HTML string."
|
|
454
|
+
}
|
|
455
|
+
],
|
|
456
|
+
"exports": [
|
|
457
|
+
{
|
|
458
|
+
"kind": "js",
|
|
459
|
+
"name": "parseFenceInfo",
|
|
460
|
+
"declaration": {
|
|
461
|
+
"name": "parseFenceInfo",
|
|
462
|
+
"module": "src/ts/wc/fsl_docs_markdown.ts"
|
|
463
|
+
}
|
|
464
|
+
},
|
|
465
|
+
{
|
|
466
|
+
"kind": "js",
|
|
467
|
+
"name": "renderMarkdown",
|
|
468
|
+
"declaration": {
|
|
469
|
+
"name": "renderMarkdown",
|
|
470
|
+
"module": "src/ts/wc/fsl_docs_markdown.ts"
|
|
471
|
+
}
|
|
472
|
+
}
|
|
473
|
+
]
|
|
474
|
+
},
|
|
475
|
+
{
|
|
476
|
+
"kind": "javascript-module",
|
|
477
|
+
"path": "src/ts/wc/fsl_docs_wc.ts",
|
|
478
|
+
"declarations": [
|
|
479
|
+
{
|
|
480
|
+
"kind": "class",
|
|
481
|
+
"description": "`<fsl-docs>` — the language-docs content engine: drill-in nav over the bundled\ncurriculum (Getting Started / About State Machines / Tutorials / Example\nMachines / Index / Search), a markdown page renderer, and \"load into editor\"\nfor tagged FSL examples. Content-only; slot it into `<fsl-help>`.",
|
|
482
|
+
"name": "FslDocs",
|
|
483
|
+
"members": [
|
|
484
|
+
{
|
|
485
|
+
"kind": "field",
|
|
486
|
+
"name": "theme",
|
|
487
|
+
"type": {
|
|
488
|
+
"text": "'light' | 'dark'"
|
|
489
|
+
},
|
|
490
|
+
"default": "'light'",
|
|
491
|
+
"description": "Color theme; reflected so it drives the `--fsl-*` token defaults.",
|
|
492
|
+
"attribute": "theme",
|
|
493
|
+
"reflects": true
|
|
494
|
+
},
|
|
495
|
+
{
|
|
496
|
+
"kind": "field",
|
|
497
|
+
"name": "_view",
|
|
498
|
+
"type": {
|
|
499
|
+
"text": "DocsView"
|
|
500
|
+
},
|
|
501
|
+
"privacy": "private",
|
|
502
|
+
"default": "'sections'"
|
|
503
|
+
},
|
|
504
|
+
{
|
|
505
|
+
"kind": "field",
|
|
506
|
+
"name": "_section",
|
|
507
|
+
"type": {
|
|
508
|
+
"text": "string"
|
|
509
|
+
},
|
|
510
|
+
"privacy": "private",
|
|
511
|
+
"default": "''"
|
|
512
|
+
},
|
|
513
|
+
{
|
|
514
|
+
"kind": "field",
|
|
515
|
+
"name": "_pageId",
|
|
516
|
+
"type": {
|
|
517
|
+
"text": "string"
|
|
518
|
+
},
|
|
519
|
+
"privacy": "private",
|
|
520
|
+
"default": "''"
|
|
521
|
+
},
|
|
522
|
+
{
|
|
523
|
+
"kind": "field",
|
|
524
|
+
"name": "_query",
|
|
525
|
+
"type": {
|
|
526
|
+
"text": "string"
|
|
527
|
+
},
|
|
528
|
+
"privacy": "private",
|
|
529
|
+
"default": "''"
|
|
530
|
+
},
|
|
531
|
+
{
|
|
532
|
+
"kind": "method",
|
|
533
|
+
"name": "_pagesIn",
|
|
534
|
+
"privacy": "private",
|
|
535
|
+
"return": {
|
|
536
|
+
"type": {
|
|
537
|
+
"text": "DocsPage[]"
|
|
538
|
+
}
|
|
539
|
+
},
|
|
540
|
+
"parameters": [
|
|
541
|
+
{
|
|
542
|
+
"name": "section",
|
|
543
|
+
"type": {
|
|
544
|
+
"text": "string"
|
|
545
|
+
}
|
|
546
|
+
}
|
|
547
|
+
]
|
|
548
|
+
},
|
|
549
|
+
{
|
|
550
|
+
"kind": "method",
|
|
551
|
+
"name": "_sectionLabel",
|
|
552
|
+
"privacy": "private",
|
|
553
|
+
"return": {
|
|
554
|
+
"type": {
|
|
555
|
+
"text": "string"
|
|
556
|
+
}
|
|
557
|
+
},
|
|
558
|
+
"parameters": [
|
|
559
|
+
{
|
|
560
|
+
"name": "id",
|
|
561
|
+
"type": {
|
|
562
|
+
"text": "string"
|
|
563
|
+
}
|
|
564
|
+
}
|
|
565
|
+
],
|
|
566
|
+
"description": "Display label for a section id (falls back to the id for unknown sections)."
|
|
567
|
+
},
|
|
568
|
+
{
|
|
569
|
+
"kind": "field",
|
|
570
|
+
"name": "_go",
|
|
571
|
+
"privacy": "private"
|
|
572
|
+
},
|
|
573
|
+
{
|
|
574
|
+
"kind": "field",
|
|
575
|
+
"name": "_loadExample",
|
|
576
|
+
"privacy": "private"
|
|
577
|
+
},
|
|
578
|
+
{
|
|
579
|
+
"kind": "method",
|
|
580
|
+
"name": "_renderSections",
|
|
581
|
+
"privacy": "private",
|
|
582
|
+
"return": {
|
|
583
|
+
"type": {
|
|
584
|
+
"text": "TemplateResult"
|
|
585
|
+
}
|
|
586
|
+
}
|
|
587
|
+
},
|
|
588
|
+
{
|
|
589
|
+
"kind": "method",
|
|
590
|
+
"name": "_renderPages",
|
|
591
|
+
"privacy": "private",
|
|
592
|
+
"return": {
|
|
593
|
+
"type": {
|
|
594
|
+
"text": "TemplateResult"
|
|
595
|
+
}
|
|
596
|
+
}
|
|
597
|
+
},
|
|
598
|
+
{
|
|
599
|
+
"kind": "method",
|
|
600
|
+
"name": "_renderPage",
|
|
601
|
+
"privacy": "private",
|
|
602
|
+
"return": {
|
|
603
|
+
"type": {
|
|
604
|
+
"text": "TemplateResult"
|
|
605
|
+
}
|
|
606
|
+
}
|
|
607
|
+
},
|
|
608
|
+
{
|
|
609
|
+
"kind": "method",
|
|
610
|
+
"name": "_withButtons",
|
|
611
|
+
"privacy": "private",
|
|
612
|
+
"return": {
|
|
613
|
+
"type": {
|
|
614
|
+
"text": "string"
|
|
615
|
+
}
|
|
616
|
+
},
|
|
617
|
+
"parameters": [
|
|
618
|
+
{
|
|
619
|
+
"name": "htmlStr",
|
|
620
|
+
"type": {
|
|
621
|
+
"text": "string"
|
|
622
|
+
}
|
|
623
|
+
}
|
|
624
|
+
],
|
|
625
|
+
"description": "Append a \"Load into editor\" button to every runnable fsl fence."
|
|
626
|
+
},
|
|
627
|
+
{
|
|
628
|
+
"kind": "method",
|
|
629
|
+
"name": "_renderIndex",
|
|
630
|
+
"privacy": "private",
|
|
631
|
+
"return": {
|
|
632
|
+
"type": {
|
|
633
|
+
"text": "TemplateResult"
|
|
634
|
+
}
|
|
635
|
+
}
|
|
636
|
+
},
|
|
637
|
+
{
|
|
638
|
+
"kind": "method",
|
|
639
|
+
"name": "_renderSearch",
|
|
640
|
+
"privacy": "private",
|
|
641
|
+
"return": {
|
|
642
|
+
"type": {
|
|
643
|
+
"text": "TemplateResult"
|
|
644
|
+
}
|
|
645
|
+
}
|
|
646
|
+
}
|
|
647
|
+
],
|
|
648
|
+
"events": [
|
|
649
|
+
{
|
|
650
|
+
"type": {
|
|
651
|
+
"text": "CustomEvent<FslDocsLoadExampleDetail>"
|
|
652
|
+
},
|
|
653
|
+
"description": "When a fence's \"Load into editor\" is clicked.",
|
|
654
|
+
"name": "load-example"
|
|
655
|
+
}
|
|
656
|
+
],
|
|
657
|
+
"attributes": [
|
|
658
|
+
{
|
|
659
|
+
"name": "theme",
|
|
660
|
+
"type": {
|
|
661
|
+
"text": "'light' | 'dark'"
|
|
662
|
+
},
|
|
663
|
+
"default": "'light'",
|
|
664
|
+
"description": "Color theme; reflected so it drives the `--fsl-*` token defaults.",
|
|
665
|
+
"fieldName": "theme"
|
|
666
|
+
}
|
|
667
|
+
],
|
|
668
|
+
"superclass": {
|
|
669
|
+
"name": "LitElement",
|
|
670
|
+
"package": "lit"
|
|
671
|
+
},
|
|
672
|
+
"tagName": "fsl-docs",
|
|
673
|
+
"customElement": true
|
|
674
|
+
}
|
|
675
|
+
],
|
|
676
|
+
"exports": [
|
|
677
|
+
{
|
|
678
|
+
"kind": "js",
|
|
679
|
+
"name": "FslDocs",
|
|
680
|
+
"declaration": {
|
|
681
|
+
"name": "FslDocs",
|
|
682
|
+
"module": "src/ts/wc/fsl_docs_wc.ts"
|
|
683
|
+
}
|
|
684
|
+
}
|
|
685
|
+
]
|
|
686
|
+
},
|
|
415
687
|
{
|
|
416
688
|
"kind": "javascript-module",
|
|
417
689
|
"path": "src/ts/wc/fsl_editor_wc.ts",
|
package/dist/cdn/instance.js
CHANGED
|
@@ -22956,7 +22956,7 @@ var constants = /*#__PURE__*/Object.freeze({
|
|
|
22956
22956
|
* Useful for runtime diagnostics and for embedding in serialized machine
|
|
22957
22957
|
* snapshots so that deserializers can detect version-skew.
|
|
22958
22958
|
*/
|
|
22959
|
-
const version = "5.
|
|
22959
|
+
const version = "5.149.1";
|
|
22960
22960
|
|
|
22961
22961
|
// whargarbl lots of these return arrays could/should be sets
|
|
22962
22962
|
const { state_name_chars, state_name_first_chars, action_label_chars } = constants;
|
package/dist/cdn/viz.js
CHANGED
|
@@ -22981,7 +22981,7 @@ var constants = /*#__PURE__*/Object.freeze({
|
|
|
22981
22981
|
* Useful for runtime diagnostics and for embedding in serialized machine
|
|
22982
22982
|
* snapshots so that deserializers can detect version-skew.
|
|
22983
22983
|
*/
|
|
22984
|
-
const version = "5.
|
|
22984
|
+
const version = "5.149.1";
|
|
22985
22985
|
|
|
22986
22986
|
// whargarbl lots of these return arrays could/should be sets
|
|
22987
22987
|
const { state_name_chars, state_name_first_chars, action_label_chars } = constants;
|
|
@@ -108,7 +108,7 @@ function parseFslArgs(argv, spec) {
|
|
|
108
108
|
return { positional, flags, helpText };
|
|
109
109
|
}
|
|
110
110
|
|
|
111
|
-
const getVersion = () => "5.
|
|
111
|
+
const getVersion = () => "5.149.1";
|
|
112
112
|
const SPEC = {
|
|
113
113
|
flags: {
|
|
114
114
|
help: { short: "h", boolean: true },
|
|
@@ -171,12 +171,12 @@ Idle 'cancel' -> Off;
|
|
|
171
171
|
|
|
172
172
|
### Explicit State Declarations and Attributes
|
|
173
173
|
\`\`\`fsl
|
|
174
|
-
state Red {
|
|
174
|
+
state Red : {
|
|
175
175
|
background-color : red;
|
|
176
176
|
text-color : white;
|
|
177
177
|
};
|
|
178
178
|
|
|
179
|
-
state Green {
|
|
179
|
+
state Green : {
|
|
180
180
|
background-color : green;
|
|
181
181
|
};
|
|
182
182
|
|