@diagrammo/dgmo 0.47.0 → 0.48.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.
- package/dist/auto.js +1 -1
- package/dist/auto.mjs +1 -1
- package/dist/element.js +1 -1
- package/dist/element.mjs +1 -1
- package/package.json +19 -70
- package/dist/advanced.cjs +0 -71648
- package/dist/advanced.d.cts +0 -5719
- package/dist/auto.cjs +0 -70648
- package/dist/auto.d.cts +0 -54
- package/dist/block.cjs +0 -70208
- package/dist/block.d.cts +0 -115
- package/dist/editor.cjs +0 -526
- package/dist/editor.d.cts +0 -26
- package/dist/element.cjs +0 -70530
- package/dist/element.d.cts +0 -62
- package/dist/highlight.cjs +0 -852
- package/dist/highlight.d.cts +0 -49
- package/dist/index.cjs +0 -70491
- package/dist/index.d.cts +0 -160
- package/dist/pert.cjs +0 -325
- package/dist/pert.d.cts +0 -559
- package/dist/themes-1-CuKpeH.d.cts +0 -908
- package/src/advanced.ts +0 -873
- package/src/arc/parser.ts +0 -15
- package/src/arc/renderer.ts +0 -633
- package/src/auto/index.ts +0 -621
- package/src/auto/shared.ts +0 -370
- package/src/auto/styles.ts +0 -73
- package/src/block/layout.ts +0 -198
- package/src/block/parser.ts +0 -427
- package/src/block/renderer.ts +0 -484
- package/src/block/types.ts +0 -67
- package/src/boxes-and-lines/collapse.ts +0 -96
- package/src/boxes-and-lines/focus.ts +0 -257
- package/src/boxes-and-lines/label-placement.ts +0 -339
- package/src/boxes-and-lines/layout-grouped.ts +0 -912
- package/src/boxes-and-lines/layout-layered.ts +0 -722
- package/src/boxes-and-lines/layout-search.ts +0 -1678
- package/src/boxes-and-lines/layout.ts +0 -398
- package/src/boxes-and-lines/parser.ts +0 -1181
- package/src/boxes-and-lines/renderer.ts +0 -1465
- package/src/boxes-and-lines/types.ts +0 -66
- package/src/c4/layout.ts +0 -2441
- package/src/c4/parser.ts +0 -1158
- package/src/c4/renderer.ts +0 -2008
- package/src/c4/types.ts +0 -89
- package/src/chart-type-registry.ts +0 -529
- package/src/chart-types.ts +0 -225
- package/src/chart.ts +0 -685
- package/src/charts-d3/bar.ts +0 -338
- package/src/charts-d3/chord.ts +0 -140
- package/src/charts-d3/function.ts +0 -147
- package/src/charts-d3/funnel.ts +0 -104
- package/src/charts-d3/heatmap.ts +0 -145
- package/src/charts-d3/index.ts +0 -337
- package/src/charts-d3/interactions.ts +0 -477
- package/src/charts-d3/line.ts +0 -344
- package/src/charts-d3/mount.ts +0 -151
- package/src/charts-d3/pie.ts +0 -117
- package/src/charts-d3/polar.ts +0 -89
- package/src/charts-d3/radar.ts +0 -0
- package/src/charts-d3/sankey.ts +0 -0
- package/src/charts-d3/scatter.ts +0 -185
- package/src/charts-d3/shared.ts +0 -208
- package/src/class/layout.ts +0 -326
- package/src/class/parser.ts +0 -635
- package/src/class/renderer.ts +0 -793
- package/src/class/types.ts +0 -58
- package/src/cli-banner.ts +0 -106
- package/src/cli.ts +0 -1080
- package/src/colors-diagnostics.ts +0 -35
- package/src/colors.ts +0 -379
- package/src/completion-types.ts +0 -27
- package/src/completion.ts +0 -2668
- package/src/cycle/layout.ts +0 -1026
- package/src/cycle/parser.ts +0 -387
- package/src/cycle/renderer.ts +0 -653
- package/src/cycle/types.ts +0 -101
- package/src/d3.ts +0 -1434
- package/src/data-chart-parser.ts +0 -1007
- package/src/dgmo-router.ts +0 -296
- package/src/diagnostics-registry.ts +0 -108
- package/src/diagnostics.ts +0 -0
- package/src/dimensions.ts +0 -20
- package/src/directives-registry.ts +0 -396
- package/src/editor/dgmo.grammar +0 -76
- package/src/editor/dgmo.grammar.d.ts +0 -2
- package/src/editor/dgmo.grammar.js +0 -18
- package/src/editor/dgmo.grammar.terms.d.ts +0 -5
- package/src/editor/dgmo.grammar.terms.js +0 -35
- package/src/editor/highlight-api.ts +0 -596
- package/src/editor/highlight.ts +0 -36
- package/src/editor/index.ts +0 -27
- package/src/editor/keywords.ts +0 -128
- package/src/editor/tokens.ts +0 -30
- package/src/element/index.ts +0 -432
- package/src/embed/css.ts +0 -312
- package/src/embed/escape.ts +0 -15
- package/src/embed/index.ts +0 -280
- package/src/er/classify.ts +0 -228
- package/src/er/layout.ts +0 -530
- package/src/er/parser.ts +0 -750
- package/src/er/renderer.ts +0 -725
- package/src/er/types.ts +0 -52
- package/src/error-card.ts +0 -269
- package/src/event-line/diagnostics.ts +0 -117
- package/src/event-line/parser.ts +0 -643
- package/src/event-line/renderer.ts +0 -1742
- package/src/event-line/types.ts +0 -74
- package/src/fonts.ts +0 -3
- package/src/gantt/calculator.ts +0 -979
- package/src/gantt/parser.ts +0 -1641
- package/src/gantt/renderer.ts +0 -3787
- package/src/gantt/resolver.ts +0 -172
- package/src/gantt/types.ts +0 -206
- package/src/graph/diagnostics.ts +0 -64
- package/src/graph/edge-spline.ts +0 -29
- package/src/graph/flowchart-parser.ts +0 -759
- package/src/graph/flowchart-renderer.ts +0 -817
- package/src/graph/layout.ts +0 -472
- package/src/graph/notes.ts +0 -21
- package/src/graph/state-collapse.ts +0 -78
- package/src/graph/state-parser.ts +0 -574
- package/src/graph/state-renderer.ts +0 -653
- package/src/graph/types.ts +0 -65
- package/src/index.ts +0 -261
- package/src/infra/compute.ts +0 -1385
- package/src/infra/layout.ts +0 -888
- package/src/infra/parser.ts +0 -1234
- package/src/infra/renderer.ts +0 -2534
- package/src/infra/roles.ts +0 -75
- package/src/infra/types.ts +0 -216
- package/src/infra/validation.ts +0 -201
- package/src/journey-map/layout.ts +0 -490
- package/src/journey-map/parser.ts +0 -557
- package/src/journey-map/renderer.ts +0 -1580
- package/src/journey-map/types.ts +0 -47
- package/src/kanban/mutations.ts +0 -175
- package/src/kanban/parser.ts +0 -509
- package/src/kanban/renderer.ts +0 -1449
- package/src/kanban/types.ts +0 -39
- package/src/label-layout.ts +0 -368
- package/src/map/colorize.ts +0 -54
- package/src/map/completion.ts +0 -316
- package/src/map/context-labels.ts +0 -609
- package/src/map/data/PROVENANCE.json +0 -1
- package/src/map/data/README.md +0 -40
- package/src/map/data/airport-collisions.json +0 -1
- package/src/map/data/airports.json +0 -1
- package/src/map/data/gazetteer.json +0 -1
- package/src/map/data/lakes.json +0 -1
- package/src/map/data/mountain-ranges.json +0 -1
- package/src/map/data/na-lakes.json +0 -1
- package/src/map/data/na-land.json +0 -1
- package/src/map/data/region-names.json +0 -1
- package/src/map/data/rivers.json +0 -1
- package/src/map/data/types.ts +0 -121
- package/src/map/data/us-states.json +0 -1
- package/src/map/data/water-bodies.json +0 -1
- package/src/map/data/world-coarse.json +0 -1
- package/src/map/data/world-detail.json +0 -1
- package/src/map/diagnostics.ts +0 -134
- package/src/map/dimensions.ts +0 -150
- package/src/map/geo-query.ts +0 -295
- package/src/map/geo.ts +0 -438
- package/src/map/invert.ts +0 -111
- package/src/map/layout.ts +0 -5069
- package/src/map/legend-band.ts +0 -127
- package/src/map/load-data.ts +0 -186
- package/src/map/parser.ts +0 -783
- package/src/map/renderer.ts +0 -1445
- package/src/map/resolved-types.ts +0 -160
- package/src/map/resolver.ts +0 -1146
- package/src/map/types.ts +0 -194
- package/src/mindmap/collapse.ts +0 -67
- package/src/mindmap/layout.ts +0 -649
- package/src/mindmap/parser.ts +0 -430
- package/src/mindmap/renderer.ts +0 -637
- package/src/mindmap/text-wrap.ts +0 -218
- package/src/mindmap/types.ts +0 -56
- package/src/org/collapse.ts +0 -151
- package/src/org/layout.ts +0 -1262
- package/src/org/parser.ts +0 -519
- package/src/org/renderer.ts +0 -866
- package/src/org/resolver.ts +0 -636
- package/src/palettes/atlas.ts +0 -77
- package/src/palettes/blueprint.ts +0 -73
- package/src/palettes/catppuccin.ts +0 -84
- package/src/palettes/color-utils.ts +0 -443
- package/src/palettes/index.ts +0 -67
- package/src/palettes/nord.ts +0 -67
- package/src/palettes/registry.ts +0 -114
- package/src/palettes/slate.ts +0 -73
- package/src/palettes/tidewater.ts +0 -73
- package/src/palettes/tokyo-night.ts +0 -86
- package/src/palettes/types.ts +0 -88
- package/src/pert/analyzer.ts +0 -1183
- package/src/pert/diagnostics.ts +0 -110
- package/src/pert/index.ts +0 -43
- package/src/pert/internal.ts +0 -252
- package/src/pert/layout.ts +0 -971
- package/src/pert/monte-carlo.ts +0 -446
- package/src/pert/parser.ts +0 -1606
- package/src/pert/renderer.ts +0 -4009
- package/src/pert/share-normalize.ts +0 -62
- package/src/pert/types.ts +0 -604
- package/src/pyramid/parser.ts +0 -185
- package/src/pyramid/renderer.ts +0 -768
- package/src/pyramid/types.ts +0 -28
- package/src/quadrant/parser.ts +0 -18
- package/src/quadrant/renderer.ts +0 -638
- package/src/raci/diagnostics.ts +0 -213
- package/src/raci/index.ts +0 -23
- package/src/raci/mutations.ts +0 -321
- package/src/raci/parser.ts +0 -699
- package/src/raci/renderer.ts +0 -1627
- package/src/raci/types.ts +0 -82
- package/src/raci/variants.ts +0 -320
- package/src/render.ts +0 -268
- package/src/ring/parser.ts +0 -212
- package/src/ring/renderer.ts +0 -490
- package/src/ring/types.ts +0 -27
- package/src/sequence/collapse.ts +0 -174
- package/src/sequence/parser.ts +0 -1596
- package/src/sequence/participant-inference.ts +0 -152
- package/src/sequence/renderer.ts +0 -3168
- package/src/sequence/tag-resolution.ts +0 -164
- package/src/sharing.ts +0 -211
- package/src/sitemap/collapse.ts +0 -100
- package/src/sitemap/layout.ts +0 -925
- package/src/sitemap/parser.ts +0 -755
- package/src/sitemap/renderer.ts +0 -828
- package/src/sitemap/types.ts +0 -42
- package/src/slope/parser.ts +0 -18
- package/src/slope/renderer.ts +0 -378
- package/src/swimlane/diagnostics.ts +0 -94
- package/src/swimlane/layout.ts +0 -597
- package/src/swimlane/parser.ts +0 -613
- package/src/swimlane/renderer.ts +0 -681
- package/src/swimlane/types.ts +0 -151
- package/src/tech-radar/interactive.ts +0 -1129
- package/src/tech-radar/layout.ts +0 -197
- package/src/tech-radar/parser.ts +0 -436
- package/src/tech-radar/renderer.ts +0 -1239
- package/src/tech-radar/shared.ts +0 -151
- package/src/tech-radar/types.ts +0 -86
- package/src/themes.ts +0 -22
- package/src/timeline/parser.ts +0 -472
- package/src/timeline/renderer.ts +0 -3024
- package/src/timeline/types.ts +0 -33
- package/src/timeline/viz-parser.ts +0 -21
- package/src/treemap/diagnostics.ts +0 -62
- package/src/treemap/layout-radial.ts +0 -233
- package/src/treemap/layout.ts +0 -189
- package/src/treemap/parser.ts +0 -463
- package/src/treemap/renderer-radial.ts +0 -438
- package/src/treemap/renderer.ts +0 -572
- package/src/treemap/treemap-shared.ts +0 -309
- package/src/treemap/types.ts +0 -60
- package/src/utils/arrow-markers.ts +0 -51
- package/src/utils/arrows-diagnostics.ts +0 -62
- package/src/utils/arrows.ts +0 -227
- package/src/utils/brand.ts +0 -61
- package/src/utils/card.ts +0 -183
- package/src/utils/collapse-engine/tree-edges.ts +0 -115
- package/src/utils/collapse-engine/tree.ts +0 -117
- package/src/utils/d3-helpers.ts +0 -219
- package/src/utils/d3-types.ts +0 -9
- package/src/utils/description-helpers.ts +0 -38
- package/src/utils/duration.ts +0 -312
- package/src/utils/export-container.ts +0 -41
- package/src/utils/expr-eval.ts +0 -27
- package/src/utils/fit-canvas.ts +0 -64
- package/src/utils/hover-styles.ts +0 -673
- package/src/utils/inline-markdown.ts +0 -96
- package/src/utils/legend-constants.ts +0 -48
- package/src/utils/legend-d3.ts +0 -618
- package/src/utils/legend-integration.ts +0 -107
- package/src/utils/legend-layout.ts +0 -776
- package/src/utils/legend-svg.ts +0 -214
- package/src/utils/legend-types.ts +0 -272
- package/src/utils/name-normalize.ts +0 -163
- package/src/utils/note-box/constants.ts +0 -25
- package/src/utils/note-box/index.ts +0 -11
- package/src/utils/note-box/metrics.ts +0 -90
- package/src/utils/note-box/svg.ts +0 -331
- package/src/utils/notes/bounds.ts +0 -30
- package/src/utils/notes/build.ts +0 -131
- package/src/utils/notes/index.ts +0 -18
- package/src/utils/notes/model.ts +0 -19
- package/src/utils/notes/parse.ts +0 -131
- package/src/utils/notes/place.ts +0 -177
- package/src/utils/notes/resolve.ts +0 -88
- package/src/utils/number-format.ts +0 -36
- package/src/utils/parsing.ts +0 -953
- package/src/utils/reserved-key-registry.ts +0 -239
- package/src/utils/safe-href.ts +0 -38
- package/src/utils/scaling.ts +0 -97
- package/src/utils/svg-embed.ts +0 -251
- package/src/utils/tag-groups.ts +0 -607
- package/src/utils/text-measure.ts +0 -122
- package/src/utils/time-ticks.ts +0 -253
- package/src/utils/title-constants.ts +0 -24
- package/src/utils/visual-conventions.ts +0 -61
- package/src/utils/wrapped-desc.ts +0 -87
- package/src/venn/parser.ts +0 -18
- package/src/venn/renderer.ts +0 -1047
- package/src/version-control/diagnostics.ts +0 -67
- package/src/version-control/parser.ts +0 -544
- package/src/version-control/renderer.ts +0 -724
- package/src/version-control/types.ts +0 -100
- package/src/visualizations/parse.ts +0 -1560
- package/src/visualizations/types.ts +0 -262
- package/src/wireframe/layout.ts +0 -479
- package/src/wireframe/parser.ts +0 -1114
- package/src/wireframe/renderer.ts +0 -1318
- package/src/wireframe/types.ts +0 -110
- package/src/wordcloud/parser.ts +0 -18
- package/src/wordcloud/renderer.ts +0 -357
|
@@ -1,396 +0,0 @@
|
|
|
1
|
-
// ============================================================
|
|
2
|
-
// Directives Registry — single source of truth for the scattered
|
|
3
|
-
// per-parser vocabulary that was previously hand-duplicated between
|
|
4
|
-
// each parser's local literal Sets and the editor's `keywords.ts`.
|
|
5
|
-
// ============================================================
|
|
6
|
-
//
|
|
7
|
-
// Background (the drift this file cures): accepted vocabulary historically
|
|
8
|
-
// lived as un-exported literal arrays inside each parser (gantt
|
|
9
|
-
// `KNOWN_OPTIONS`/`KNOWN_BOOLEANS`, infra `TOP_LEVEL_OPTIONS` +
|
|
10
|
-
// `INFRA_BEHAVIOR_KEYS`/`EDGE_ONLY_KEYS`, map `DIRECTIVE_SET`), AND was
|
|
11
|
-
// re-typed by hand into `editor/keywords.ts` for highlighting. Two hand-lists
|
|
12
|
-
// for the same vocabulary drift apart silently.
|
|
13
|
-
//
|
|
14
|
-
// This registry is the ONE place those tokens are declared. Both sides consume
|
|
15
|
-
// it:
|
|
16
|
-
// - the parsers derive their membership Sets from it (their local literals
|
|
17
|
-
// are deleted — see gantt/map/infra parsers);
|
|
18
|
-
// - `editor/keywords.ts` and `editor/highlight-api.ts` spread its highlight
|
|
19
|
-
// contributions into the specializer / ATTRIBUTE_KEYS sets.
|
|
20
|
-
// The anti-drift guard (tests/highlight-coverage.test.ts) additionally asserts
|
|
21
|
-
// every registry token routes to the correct highlight set, so the three
|
|
22
|
-
// representations cannot diverge.
|
|
23
|
-
//
|
|
24
|
-
// SCOPE: this registry currently owns the infra / gantt / map vocab — the
|
|
25
|
-
// scattered-literal cases. Other chart types whose parsers use inline checks
|
|
26
|
-
// (no extractable Set) remain hand-declared in `keywords.ts`; folding them in
|
|
27
|
-
// is mechanical follow-up work, not a correctness gap (the Phase 1b guard
|
|
28
|
-
// covers them via rendered-role assertions).
|
|
29
|
-
|
|
30
|
-
/** Highlight role family for a bare (non-colon) token. */
|
|
31
|
-
export type HighlightCategory = 'directive' | 'control' | 'modifier' | 'status';
|
|
32
|
-
|
|
33
|
-
/** Which infra parser Set(s) a token belongs to. Sets overlap (slo-* are both). */
|
|
34
|
-
export type InfraScope = 'top-level' | 'behavior' | 'edge';
|
|
35
|
-
|
|
36
|
-
/** Which gantt parser Set(s) a token belongs to. Sets overlap (critical-path is both). */
|
|
37
|
-
export type GanttScope = 'option' | 'boolean';
|
|
38
|
-
|
|
39
|
-
export interface RegistryEntry {
|
|
40
|
-
readonly token: string;
|
|
41
|
-
/**
|
|
42
|
-
* Highlight family for the bare form. Omitted when the token highlights
|
|
43
|
-
* ONLY as a colon key (`colonKey`) or is intentionally not highlighted
|
|
44
|
-
* (`noHighlight`).
|
|
45
|
-
*/
|
|
46
|
-
readonly category?: HighlightCategory;
|
|
47
|
-
/** Colon `key: value` property → highlights as `propertyName` (ATTRIBUTE_KEYS). */
|
|
48
|
-
readonly colonKey?: boolean;
|
|
49
|
-
/**
|
|
50
|
-
* Parser-accepted but intentionally NOT highlighted (e.g. a default-on
|
|
51
|
-
* boolean whose bare word collides with common prose). Present here so the
|
|
52
|
-
* parser Set can be derived, excluded from every highlight set.
|
|
53
|
-
*/
|
|
54
|
-
readonly noHighlight?: boolean;
|
|
55
|
-
/** Infra parser Set membership (may be several). */
|
|
56
|
-
readonly infra?: readonly InfraScope[];
|
|
57
|
-
/** Gantt parser Set membership (may be several). */
|
|
58
|
-
readonly gantt?: readonly GanttScope[];
|
|
59
|
-
/** Map `DIRECTIVE_SET` membership. */
|
|
60
|
-
readonly map?: boolean;
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
// ============================================================
|
|
64
|
-
// The registry
|
|
65
|
-
// ============================================================
|
|
66
|
-
|
|
67
|
-
export const DIRECTIVES_REGISTRY: readonly RegistryEntry[] = [
|
|
68
|
-
// ── Infra ────────────────────────────────────────────────
|
|
69
|
-
// Top-level SLO options that are ALSO accepted as node colon-properties
|
|
70
|
-
// (dual membership). Highlight bare (kept in DIRECTIVE_KEYWORDS) — their
|
|
71
|
-
// rarer colon form stays keyword, an accepted minor false-positive.
|
|
72
|
-
{
|
|
73
|
-
token: 'slo-availability',
|
|
74
|
-
category: 'directive',
|
|
75
|
-
infra: ['top-level', 'behavior'],
|
|
76
|
-
},
|
|
77
|
-
{
|
|
78
|
-
token: 'slo-p90-latency-ms',
|
|
79
|
-
category: 'directive',
|
|
80
|
-
infra: ['top-level', 'behavior'],
|
|
81
|
-
},
|
|
82
|
-
{
|
|
83
|
-
token: 'slo-warning-margin',
|
|
84
|
-
category: 'directive',
|
|
85
|
-
infra: ['top-level', 'behavior'],
|
|
86
|
-
},
|
|
87
|
-
// Top-level-only options (space-separated, bare).
|
|
88
|
-
{ token: 'default-latency-ms', category: 'directive', infra: ['top-level'] },
|
|
89
|
-
{ token: 'default-uptime', category: 'directive', infra: ['top-level'] },
|
|
90
|
-
{ token: 'default-rps', category: 'directive', infra: ['top-level'] },
|
|
91
|
-
// `active-tag` is shared with gantt + map (see below).
|
|
92
|
-
// Node behavior colon-keys — highlight as propertyName.
|
|
93
|
-
{ token: 'latency-ms', colonKey: true, infra: ['behavior'] },
|
|
94
|
-
{ token: 'uptime', colonKey: true, infra: ['behavior'] },
|
|
95
|
-
{ token: 'instances', colonKey: true, infra: ['behavior'] },
|
|
96
|
-
{ token: 'max-rps', colonKey: true, infra: ['behavior'] },
|
|
97
|
-
{ token: 'cache-hit', colonKey: true, infra: ['behavior'] },
|
|
98
|
-
{ token: 'firewall-block', colonKey: true, infra: ['behavior'] },
|
|
99
|
-
{ token: 'ratelimit-rps', colonKey: true, infra: ['behavior'] },
|
|
100
|
-
{ token: 'buffer', colonKey: true, infra: ['behavior'] },
|
|
101
|
-
{ token: 'drain-rate', colonKey: true, infra: ['behavior'] },
|
|
102
|
-
{ token: 'retention-hours', colonKey: true, infra: ['behavior'] },
|
|
103
|
-
{ token: 'partitions', colonKey: true, infra: ['behavior'] },
|
|
104
|
-
{ token: 'concurrency', colonKey: true, infra: ['behavior'] },
|
|
105
|
-
{ token: 'duration-ms', colonKey: true, infra: ['behavior'] },
|
|
106
|
-
{ token: 'cold-start-ms', colonKey: true, infra: ['behavior'] },
|
|
107
|
-
{ token: 'cb-error-threshold', colonKey: true, infra: ['behavior'] },
|
|
108
|
-
{ token: 'cb-latency-threshold-ms', colonKey: true, infra: ['behavior'] },
|
|
109
|
-
// Edge-only colon-key.
|
|
110
|
-
{ token: 'rps', colonKey: true, infra: ['edge'] },
|
|
111
|
-
|
|
112
|
-
// ── Gantt ────────────────────────────────────────────────
|
|
113
|
-
{ token: 'start', category: 'directive', gantt: ['option'] },
|
|
114
|
-
{
|
|
115
|
-
token: 'today-marker',
|
|
116
|
-
category: 'directive',
|
|
117
|
-
gantt: ['option', 'boolean'],
|
|
118
|
-
},
|
|
119
|
-
{
|
|
120
|
-
token: 'critical-path',
|
|
121
|
-
category: 'directive',
|
|
122
|
-
gantt: ['option', 'boolean'],
|
|
123
|
-
},
|
|
124
|
-
{ token: 'sprint-length', category: 'directive', gantt: ['option'] },
|
|
125
|
-
{ token: 'sprint-number', category: 'directive', gantt: ['option'] },
|
|
126
|
-
{ token: 'sprint-start', category: 'directive', gantt: ['option'] },
|
|
127
|
-
{ token: 'solid-fill', category: 'directive', gantt: ['boolean'] },
|
|
128
|
-
// `chart` is a wireframe element keyword (CONTROL); gantt also accepts it as
|
|
129
|
-
// an option. Highlight family is control.
|
|
130
|
-
{ token: 'chart', category: 'control', gantt: ['option'] },
|
|
131
|
-
// `dependencies` is ON by default → almost never written bare (authors write
|
|
132
|
-
// `no-dependencies`, which DOES highlight). Bare word collides with prose and
|
|
133
|
-
// the specializer is context-free, so it stays plain. Present for parser
|
|
134
|
-
// Set derivation only.
|
|
135
|
-
{ token: 'dependencies', noHighlight: true, gantt: ['option', 'boolean'] },
|
|
136
|
-
|
|
137
|
-
// ── Map ──────────────────────────────────────────────────
|
|
138
|
-
// Per-element value→channel ramps (decision #20): the directive names the
|
|
139
|
-
// visual channel — `region-heat` (colour), `poi-size` (marker area),
|
|
140
|
-
// `flow-width` (stroke). The per-element key mirrors it (`heat:`/`size:`/`width:`).
|
|
141
|
-
{ token: 'region-heat', category: 'directive', map: true },
|
|
142
|
-
{ token: 'poi-size', category: 'directive', map: true },
|
|
143
|
-
{ token: 'flow-width', category: 'directive', map: true },
|
|
144
|
-
{ token: 'locale', category: 'directive', map: true },
|
|
145
|
-
{ token: 'caption', category: 'directive', map: true },
|
|
146
|
-
{ token: 'no-legend', category: 'directive', map: true },
|
|
147
|
-
{ token: 'no-coastline', category: 'directive', map: true },
|
|
148
|
-
{ token: 'no-relief', category: 'directive', map: true },
|
|
149
|
-
{ token: 'no-context-labels', category: 'directive', map: true },
|
|
150
|
-
{ token: 'no-region-labels', category: 'directive', map: true },
|
|
151
|
-
{ token: 'no-region-heat-value', category: 'directive', map: true },
|
|
152
|
-
{ token: 'no-poi-labels', category: 'directive', map: true },
|
|
153
|
-
{ token: 'no-colorize', category: 'directive', map: true },
|
|
154
|
-
{ token: 'no-cities', category: 'directive', map: true },
|
|
155
|
-
{ token: 'no-cluster-pois', category: 'directive', map: true },
|
|
156
|
-
|
|
157
|
-
// ── Shared across types ──────────────────────────────────
|
|
158
|
-
// `active-tag`: infra top-level option + gantt option + map directive.
|
|
159
|
-
{
|
|
160
|
-
token: 'active-tag',
|
|
161
|
-
category: 'directive',
|
|
162
|
-
infra: ['top-level'],
|
|
163
|
-
gantt: ['option'],
|
|
164
|
-
map: true,
|
|
165
|
-
},
|
|
166
|
-
// `title`: gantt option (also a general data-chart directive, hand-listed).
|
|
167
|
-
{ token: 'title', category: 'directive', gantt: ['option'] },
|
|
168
|
-
// `sort`: gantt option (also general, hand-listed).
|
|
169
|
-
{ token: 'sort', category: 'directive', gantt: ['option'] },
|
|
170
|
-
// `lane-by <group>`: swimlane axis (view-state). NB not `swimlane` — that's a
|
|
171
|
-
// chart type. Kanban reads it via its own KNOWN_OPTIONS; gantt via the switch.
|
|
172
|
-
{ token: 'lane-by', category: 'directive', gantt: ['option'] },
|
|
173
|
-
// `no-title`: gantt boolean + map directive (also general, hand-listed).
|
|
174
|
-
{ token: 'no-title', category: 'directive', gantt: ['boolean'], map: true },
|
|
175
|
-
|
|
176
|
-
// ══════════════════════════════════════════════════════════
|
|
177
|
-
// Highlight-only vocab (no extractable parser Set).
|
|
178
|
-
// ══════════════════════════════════════════════════════════
|
|
179
|
-
// These chart types validate their directives with inline checks rather than
|
|
180
|
-
// a literal Set, so there is no parser literal to delete — the registry is
|
|
181
|
-
// simply their single declaration site for highlighting. Grouped by chart
|
|
182
|
-
// type. Categories route to the specializer-read sets in keywords.ts.
|
|
183
|
-
|
|
184
|
-
// ── Gantt (extras beyond the option/boolean Sets) ────────
|
|
185
|
-
{ token: 'era', category: 'directive' },
|
|
186
|
-
{ token: 'marker', category: 'directive' },
|
|
187
|
-
{ token: 'holiday', category: 'directive' },
|
|
188
|
-
{ token: 'workweek', category: 'directive' },
|
|
189
|
-
{ token: 'no-dependencies', category: 'directive' },
|
|
190
|
-
// ── Tech-radar ───────────────────────────────────────────
|
|
191
|
-
{ token: 'rings', category: 'directive' },
|
|
192
|
-
{ token: 'show-blip-legend', category: 'directive' },
|
|
193
|
-
{ token: 'trend', category: 'directive' },
|
|
194
|
-
// ── Tags / shared directives ─────────────────────────────
|
|
195
|
-
{ token: 'tags', category: 'directive' },
|
|
196
|
-
{ token: 'import', category: 'directive' },
|
|
197
|
-
{ token: 'hide', category: 'directive' },
|
|
198
|
-
{ token: 'direction', category: 'directive' },
|
|
199
|
-
// ── Boxes-and-lines ──────────────────────────────────────
|
|
200
|
-
// `heat <Label> [low] [high]` is the value→colour ramp directive, but `heat`
|
|
201
|
-
// is NOT registered as a directive keyword: it is dual-use with the `heat:`
|
|
202
|
-
// metadata key (decision #20), and a token in DIRECTIVE_KEYWORDS would block the
|
|
203
|
-
// ATTRIBUTE_KEYS colon-gate from reclassifying `heat:` as a propertyName. So
|
|
204
|
-
// `heat` lives only in the reserved-key registry + ATTRIBUTE_KEYS and highlights
|
|
205
|
-
// as a property in both positions — exactly the treemap `heat` precedent.
|
|
206
|
-
{ token: 'show-values', category: 'directive' },
|
|
207
|
-
// ── Swimlane ─────────────────────────────────────────────
|
|
208
|
-
{ token: 'lane', category: 'directive' },
|
|
209
|
-
// ── ER ───────────────────────────────────────────────────
|
|
210
|
-
{ token: 'notation', category: 'directive' },
|
|
211
|
-
// ── Class ────────────────────────────────────────────────
|
|
212
|
-
{ token: 'extends', category: 'directive' },
|
|
213
|
-
{ token: 'implements', category: 'directive' },
|
|
214
|
-
{ token: 'abstract', category: 'directive' },
|
|
215
|
-
{ token: 'interface', category: 'directive' },
|
|
216
|
-
{ token: 'enum', category: 'directive' },
|
|
217
|
-
// ── C4 ───────────────────────────────────────────────────
|
|
218
|
-
{ token: 'containers', category: 'directive' },
|
|
219
|
-
{ token: 'components', category: 'directive' },
|
|
220
|
-
{ token: 'deployment', category: 'directive' },
|
|
221
|
-
{ token: 'technology', category: 'directive' },
|
|
222
|
-
// ── Infra (directives beyond the option/behavior Sets) ───
|
|
223
|
-
{ token: 'sub-node-label', category: 'directive' },
|
|
224
|
-
{ token: 'show-sub-node-count', category: 'directive' },
|
|
225
|
-
{ token: 'animate', category: 'directive' },
|
|
226
|
-
// ── Sequence ─────────────────────────────────────────────
|
|
227
|
-
{ token: 'activations', category: 'directive' },
|
|
228
|
-
{ token: 'no-activations', category: 'directive' },
|
|
229
|
-
// ── Map element leaders (not in DIRECTIVE_SET) ───────────
|
|
230
|
-
{ token: 'poi', category: 'directive' },
|
|
231
|
-
{ token: 'route', category: 'directive' },
|
|
232
|
-
// ── Data charts ──────────────────────────────────────────
|
|
233
|
-
{ token: 'stacked', category: 'directive' },
|
|
234
|
-
{ token: 'no-name', category: 'directive' },
|
|
235
|
-
{ token: 'no-value', category: 'directive' },
|
|
236
|
-
{ token: 'no-percent', category: 'directive' },
|
|
237
|
-
{ token: 'series', category: 'directive' },
|
|
238
|
-
{ token: 'orientation', category: 'directive' },
|
|
239
|
-
{ token: 'x-label', category: 'directive' },
|
|
240
|
-
{ token: 'y-label', category: 'directive' },
|
|
241
|
-
{ token: 'size-label', category: 'directive' },
|
|
242
|
-
{ token: 'columns', category: 'directive' },
|
|
243
|
-
{ token: 'rows', category: 'directive' },
|
|
244
|
-
{ token: 'labels', category: 'directive' },
|
|
245
|
-
{ token: 'rotate', category: 'directive' },
|
|
246
|
-
{ token: 'scale', category: 'directive' },
|
|
247
|
-
{ token: 'values', category: 'directive' },
|
|
248
|
-
{ token: 'orientation-horizontal', category: 'directive' },
|
|
249
|
-
// ── Slope ────────────────────────────────────────────────
|
|
250
|
-
{ token: 'period', category: 'directive' },
|
|
251
|
-
// ── Quadrant ─────────────────────────────────────────────
|
|
252
|
-
{ token: 'x-axis', category: 'directive' },
|
|
253
|
-
{ token: 'y-axis', category: 'directive' },
|
|
254
|
-
{ token: 'top-right', category: 'directive' },
|
|
255
|
-
{ token: 'top-left', category: 'directive' },
|
|
256
|
-
{ token: 'bottom-right', category: 'directive' },
|
|
257
|
-
{ token: 'bottom-left', category: 'directive' },
|
|
258
|
-
// ── Layout (cross-chart) ─────────────────────────────────
|
|
259
|
-
{ token: 'direction-tb', category: 'directive' },
|
|
260
|
-
{ token: 'direction-lr', category: 'directive' },
|
|
261
|
-
{ token: 'orientation-vertical', category: 'directive' },
|
|
262
|
-
// ── Pyramid ──────────────────────────────────────────────
|
|
263
|
-
{ token: 'inverted', category: 'directive' },
|
|
264
|
-
// ── Color / notes (cross-chart) ──────────────────────────
|
|
265
|
-
{ token: 'color', category: 'directive' },
|
|
266
|
-
{ token: 'no-notes', category: 'directive' },
|
|
267
|
-
// ── RACI ─────────────────────────────────────────────────
|
|
268
|
-
{ token: 'roles', category: 'directive' },
|
|
269
|
-
// ── Cycle ────────────────────────────────────────────────
|
|
270
|
-
{ token: 'direction-counterclockwise', category: 'directive' },
|
|
271
|
-
{ token: 'circle-nodes', category: 'directive' },
|
|
272
|
-
// ── Journey-map ──────────────────────────────────────────
|
|
273
|
-
{ token: 'persona', category: 'directive' },
|
|
274
|
-
// ── Function ─────────────────────────────────────────────
|
|
275
|
-
{ token: 'x', category: 'directive' },
|
|
276
|
-
{ token: 'shade', category: 'directive' },
|
|
277
|
-
// ── Wordcloud ────────────────────────────────────────────
|
|
278
|
-
{ token: 'max', category: 'directive' },
|
|
279
|
-
{ token: 'size', category: 'directive' },
|
|
280
|
-
// ── Arc ──────────────────────────────────────────────────
|
|
281
|
-
{ token: 'order', category: 'directive' },
|
|
282
|
-
// ── PERT ─────────────────────────────────────────────────
|
|
283
|
-
{ token: 'time-unit', category: 'directive' },
|
|
284
|
-
{ token: 'default-confidence', category: 'directive' },
|
|
285
|
-
{ token: 'node-detail', category: 'directive' },
|
|
286
|
-
{ token: 'trials', category: 'directive' },
|
|
287
|
-
{ token: 'seed', category: 'directive' },
|
|
288
|
-
{ token: 'scrubber-trials', category: 'directive' },
|
|
289
|
-
{ token: 'start-date', category: 'directive' },
|
|
290
|
-
{ token: 'end-date', category: 'directive' },
|
|
291
|
-
|
|
292
|
-
// ── Control-flow + wireframe element keywords (CONTROL) ──
|
|
293
|
-
{ token: 'if', category: 'control' },
|
|
294
|
-
{ token: 'else', category: 'control' },
|
|
295
|
-
{ token: 'loop', category: 'control' },
|
|
296
|
-
{ token: 'parallel', category: 'control' },
|
|
297
|
-
{ token: 'note', category: 'control' },
|
|
298
|
-
{ token: 'nav', category: 'control' },
|
|
299
|
-
{ token: 'tabs', category: 'control' },
|
|
300
|
-
{ token: 'table', category: 'control' },
|
|
301
|
-
{ token: 'image', category: 'control' },
|
|
302
|
-
{ token: 'modal', category: 'control' },
|
|
303
|
-
{ token: 'skeleton', category: 'control' },
|
|
304
|
-
{ token: 'alert', category: 'control' },
|
|
305
|
-
{ token: 'progress', category: 'control' },
|
|
306
|
-
{ token: 'mobile', category: 'control' },
|
|
307
|
-
|
|
308
|
-
// ── Kanban status keywords (STATUS) ──────────────────────
|
|
309
|
-
{ token: 'na', category: 'status' },
|
|
310
|
-
{ token: 'todo', category: 'status' },
|
|
311
|
-
{ token: 'wip', category: 'status' },
|
|
312
|
-
{ token: 'done', category: 'status' },
|
|
313
|
-
{ token: 'blocked', category: 'status' },
|
|
314
|
-
{ token: 'in-progress', category: 'status' },
|
|
315
|
-
{ token: 'backlog', category: 'status' },
|
|
316
|
-
{ token: 'ready', category: 'status' },
|
|
317
|
-
|
|
318
|
-
// ── Modifiers + ER column types/modifiers (MODIFIER) ─────
|
|
319
|
-
{ token: 'as', category: 'modifier' },
|
|
320
|
-
{ token: 'alias', category: 'modifier' },
|
|
321
|
-
{ token: 'aka', category: 'modifier' },
|
|
322
|
-
{ token: 'position', category: 'modifier' },
|
|
323
|
-
{ token: 'default', category: 'modifier' },
|
|
324
|
-
{ token: 'pk', category: 'modifier' },
|
|
325
|
-
{ token: 'fk', category: 'modifier' },
|
|
326
|
-
{ token: 'nullable', category: 'modifier' },
|
|
327
|
-
{ token: 'unique', category: 'modifier' },
|
|
328
|
-
{ token: 'int', category: 'modifier' },
|
|
329
|
-
{ token: 'varchar', category: 'modifier' },
|
|
330
|
-
{ token: 'text', category: 'modifier' },
|
|
331
|
-
{ token: 'boolean', category: 'modifier' },
|
|
332
|
-
{ token: 'date', category: 'modifier' },
|
|
333
|
-
{ token: 'timestamp', category: 'modifier' },
|
|
334
|
-
{ token: 'float', category: 'modifier' },
|
|
335
|
-
{ token: 'decimal', category: 'modifier' },
|
|
336
|
-
];
|
|
337
|
-
|
|
338
|
-
// ============================================================
|
|
339
|
-
// Derivations
|
|
340
|
-
// ============================================================
|
|
341
|
-
|
|
342
|
-
function tokensWhere(pred: (e: RegistryEntry) => boolean): Set<string> {
|
|
343
|
-
const out = new Set<string>();
|
|
344
|
-
for (const e of DIRECTIVES_REGISTRY) if (pred(e)) out.add(e.token);
|
|
345
|
-
return out;
|
|
346
|
-
}
|
|
347
|
-
|
|
348
|
-
// ── Parser-facing Sets (replace the deleted local literals) ──
|
|
349
|
-
|
|
350
|
-
/** Infra top-level option keys (space-separated). */
|
|
351
|
-
export const INFRA_TOP_LEVEL_OPTION_SET = tokensWhere(
|
|
352
|
-
(e) => !!e.infra?.includes('top-level')
|
|
353
|
-
);
|
|
354
|
-
/** Infra node behavior property keys (colon `key: value`). */
|
|
355
|
-
export const INFRA_BEHAVIOR_KEY_SET = tokensWhere(
|
|
356
|
-
(e) => !!e.infra?.includes('behavior')
|
|
357
|
-
);
|
|
358
|
-
/** Infra edge-only property keys (colon `key: value`). */
|
|
359
|
-
export const INFRA_EDGE_ONLY_KEY_SET = tokensWhere(
|
|
360
|
-
(e) => !!e.infra?.includes('edge')
|
|
361
|
-
);
|
|
362
|
-
/** Gantt option keys (space-separated). */
|
|
363
|
-
export const GANTT_OPTION_SET = tokensWhere(
|
|
364
|
-
(e) => !!e.gantt?.includes('option')
|
|
365
|
-
);
|
|
366
|
-
/** Gantt boolean keys (bare or `no-` prefixed). */
|
|
367
|
-
export const GANTT_BOOLEAN_SET = tokensWhere(
|
|
368
|
-
(e) => !!e.gantt?.includes('boolean')
|
|
369
|
-
);
|
|
370
|
-
/** Map directive keys. */
|
|
371
|
-
export const MAP_DIRECTIVE_KEY_SET = tokensWhere((e) => e.map === true);
|
|
372
|
-
|
|
373
|
-
// ── Highlight-facing contributions ──────────────────────────
|
|
374
|
-
|
|
375
|
-
/** Bare tokens that highlight as a keyword/directive (→ DIRECTIVE_KEYWORDS). */
|
|
376
|
-
export const REGISTRY_DIRECTIVE_TOKENS = tokensWhere(
|
|
377
|
-
(e) => e.category === 'directive' && !e.colonKey && !e.noHighlight
|
|
378
|
-
);
|
|
379
|
-
/** Bare tokens that highlight as a control keyword (→ CONTROL_KEYWORDS). */
|
|
380
|
-
export const REGISTRY_CONTROL_TOKENS = tokensWhere(
|
|
381
|
-
(e) => e.category === 'control' && !e.colonKey && !e.noHighlight
|
|
382
|
-
);
|
|
383
|
-
/** Bare tokens that highlight as a status keyword (→ STATUS_KEYWORDS). */
|
|
384
|
-
export const REGISTRY_STATUS_TOKENS = tokensWhere(
|
|
385
|
-
(e) => e.category === 'status' && !e.colonKey && !e.noHighlight
|
|
386
|
-
);
|
|
387
|
-
/** Bare tokens that highlight as a modifier keyword (→ MODIFIER_KEYWORDS). */
|
|
388
|
-
export const REGISTRY_MODIFIER_TOKENS = tokensWhere(
|
|
389
|
-
(e) => e.category === 'modifier' && !e.colonKey && !e.noHighlight
|
|
390
|
-
);
|
|
391
|
-
/** Colon `key: value` tokens that highlight as propertyName (→ ATTRIBUTE_KEYS). */
|
|
392
|
-
export const REGISTRY_COLON_KEY_TOKENS = tokensWhere((e) => !!e.colonKey);
|
|
393
|
-
/** Parser-accepted tokens deliberately excluded from every highlight set. */
|
|
394
|
-
export const REGISTRY_NON_HIGHLIGHT_TOKENS = tokensWhere(
|
|
395
|
-
(e) => !!e.noHighlight
|
|
396
|
-
);
|
package/src/editor/dgmo.grammar
DELETED
|
@@ -1,76 +0,0 @@
|
|
|
1
|
-
@top Document { (newline | Comment | ContentLine)* }
|
|
2
|
-
|
|
3
|
-
ContentLine { contentPart+ newline }
|
|
4
|
-
|
|
5
|
-
contentPart {
|
|
6
|
-
SyncArrow | AsyncArrow |
|
|
7
|
-
Duration | DateLiteral | Percentage | Number |
|
|
8
|
-
SectionMarker |
|
|
9
|
-
Url |
|
|
10
|
-
OpenBracket | CloseBracket | OpenParen | CloseParen | OpenAngle | CloseAngle |
|
|
11
|
-
Pipe | Colon | Comma | Plus | Dash | Tilde | Star | Question |
|
|
12
|
-
ChartType |
|
|
13
|
-
TagKeyword | DirectiveKeyword | ControlKeyword | ModifierKeyword |
|
|
14
|
-
QuotedString | Identifier |
|
|
15
|
-
Punct
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
@skip { spaces }
|
|
19
|
-
|
|
20
|
-
@tokens {
|
|
21
|
-
spaces { $[ \t]+ }
|
|
22
|
-
newline { "\n" }
|
|
23
|
-
|
|
24
|
-
Comment { "//" ![\n]* }
|
|
25
|
-
|
|
26
|
-
SyncArrow { "->" }
|
|
27
|
-
AsyncArrow { "~>" }
|
|
28
|
-
|
|
29
|
-
Duration { $[0-9]+ ("." $[0-9]+)? ("min" | "bd" | "h" | "d" | "w" | "m" | "q" | "y" | "s") "?"? }
|
|
30
|
-
DateLiteral { $[0-9] $[0-9] $[0-9] $[0-9] "-" $[0-9] $[0-9] ("-" $[0-9] $[0-9])? }
|
|
31
|
-
Percentage { $[0-9]+ ("." $[0-9]+)? "%" }
|
|
32
|
-
Number {
|
|
33
|
-
$[0-9] $[0-9]? $[0-9]? ("," $[0-9] $[0-9] $[0-9])+ ("." $[0-9]+)? |
|
|
34
|
-
$[0-9]+ ("_" $[0-9]+)+ ("." $[0-9]+)? |
|
|
35
|
-
$[0-9]+ ("." $[0-9]+)?
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
SectionMarker { "==" }
|
|
39
|
-
Url { "http" "s"? "://" ![ \t\n|,)\]>]+ }
|
|
40
|
-
|
|
41
|
-
Pipe { "|" }
|
|
42
|
-
Colon { ":" }
|
|
43
|
-
Comma { "," }
|
|
44
|
-
Plus { "+" }
|
|
45
|
-
Dash { "-" }
|
|
46
|
-
Tilde { "~" }
|
|
47
|
-
Star { "*" }
|
|
48
|
-
Question { "?" }
|
|
49
|
-
OpenBracket { "[" }
|
|
50
|
-
CloseBracket { "]" }
|
|
51
|
-
OpenParen { "(" }
|
|
52
|
-
CloseParen { ")" }
|
|
53
|
-
OpenAngle { "<" }
|
|
54
|
-
CloseAngle { ">" }
|
|
55
|
-
|
|
56
|
-
Identifier { $[a-zA-Z_] ($[a-zA-Z0-9_./&?=@#!'+] | "-" $[a-zA-Z_./&?=@#!'+])* }
|
|
57
|
-
|
|
58
|
-
// Universal Name Handling: quoted form for names containing reserved
|
|
59
|
-
// chars (pipe, colon, edge sigils, brackets) or wanting a single
|
|
60
|
-
// multi-word token for syntax highlighting. No `"`-inside-`"` escape.
|
|
61
|
-
QuotedString { '"' ![\n"]* '"' }
|
|
62
|
-
|
|
63
|
-
Punct { ![$[ \t\n] }
|
|
64
|
-
|
|
65
|
-
@precedence {
|
|
66
|
-
Comment, SyncArrow, AsyncArrow,
|
|
67
|
-
Duration, DateLiteral, Percentage, Number, SectionMarker, Url,
|
|
68
|
-
Pipe, Colon, Comma, Plus, Dash, Tilde, Star, Question,
|
|
69
|
-
OpenBracket, CloseBracket, OpenParen, CloseParen, OpenAngle, CloseAngle,
|
|
70
|
-
QuotedString, Identifier, Punct
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
@external specialize {Identifier} specializeKeyword from "./tokens" {
|
|
75
|
-
ChartType, TagKeyword, DirectiveKeyword, ControlKeyword, ModifierKeyword
|
|
76
|
-
}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
// This file was generated by lezer-generator. You probably shouldn't edit it.
|
|
2
|
-
import {LRParser} from "@lezer/lr"
|
|
3
|
-
import {specializeKeyword} from "./tokens"
|
|
4
|
-
export const parser = LRParser.deserialize({
|
|
5
|
-
version: 14,
|
|
6
|
-
states: "!WQVQPOOOOQO'#DU'#DUOOQO'#DP'#DPO%]QPO'#CdOOQO'#DO'#DOQVQPOOOOQO-E6}-E6}OOQO,59O,59OOOQO-E6|-E6|",
|
|
7
|
-
stateData: "&Q~OvOS~OPPOQPORPOSPOTPOVSOXPOYPOZPO[PO]PO^PO_PO`POaPObPOcPOdPOePOfPOgPOhPOiPOjPOkPOlPOmPOnPOoPOpPOqPOwSO~OPPOQPORPOSPOTPOXPOYPOZPO[PO]PO^PO_PO`POaPObPOcPOdPOePOfPOgPOhPOiPOjPOkPOlPOmPOnPOoPOpPOqPO~OwVO~P#]OVXYZ[]^_`ghijklmnabcdefopqk~",
|
|
8
|
-
goto: "!byPPPPPPPPzPPPPPPPPPPPPPPPPPPPPPPPPP!O!UPPPP!]TSOTQTORWTSROTRURVQORT",
|
|
9
|
-
nodeNames: "⚠ ChartType TagKeyword DirectiveKeyword ControlKeyword ModifierKeyword Document Comment ContentLine SyncArrow AsyncArrow Duration DateLiteral Percentage Number SectionMarker Url OpenBracket CloseBracket OpenParen CloseParen OpenAngle CloseAngle Pipe Colon Comma Plus Dash Tilde Star Question QuotedString Identifier Punct",
|
|
10
|
-
maxTerm: 40,
|
|
11
|
-
skippedNodes: [0],
|
|
12
|
-
repeatNodeCount: 2,
|
|
13
|
-
tokenData: "<v~RzOX#uXY#zYZ$VZp#upq#zqr#urs$[st#uux#uxy%eyz%lz{%s{|%z|}&R}!O&Y!O!P#u!P!Q&i!Q!['Y![!]/{!]!^#u!^!_0S!_!`0Z!`!a0h!a!b0o!b!c#u!c!}0v!}#O3|#O#P#u#P#Q4R#Q#R#u#R#S0v#S#T#u#T#[0v#[#]4Y#]#o0v#o#p#u#p#q<Y#q#r#u#r#s<a#s;'S#u;'S;=`<p<%lO#u~#zOq~~$PQv~XY#zpq#z~$[Ow~~$aUq~OY$sZr$srs%Ys;'S$s;'S;=`%_<%lO$s~$vUOY$sZr$srs%Ys;'S$s;'S;=`%_<%lO$s~%_Oo~~%bP;=`<%l$s~%lOc~q~~%sOd~q~~%zOm~q~~&ROj~q~~&YOi~q~~&aPk~q~!`!a&d~&iOX~~&nPq~!P!Q&q~&vSV~OY&qZ;'S&q;'S;=`'S<%lO&q~'VP;=`<%l&q~'a]^~q~uv(Y|}(_!O!P)[!Q![*{#R#S/g#U#V*V#W#X*]#[#]*]#a#b*j#e#f*]#g#h*]#k#l*]#m#n*]~(_O]~~(bP!Q![(e~(hP!Q![(k~(nP!Q![(q~(vQ^~|}(_!O!P(|~)PP!Q![)S~)XP^~!Q![)S~)_P!Q![)b~)gY^~uv(Y!Q![)b#U#V*V#W#X*]#[#]*]#a#b*j#e#f*]#g#h*]#k#l*]#m#n*]~*YP#W#X*]~*bPZ~!a!b*e~*jOZ~~*oQZ~!a!b*e#]#^*u~*xP#b#c*]~+Q]^~uv(Y|}(_!O!P)[!Q![+y#R#S/g#U#V*V#W#X*]#[#]*]#a#b*j#e#f*]#g#h*]#k#l*]#m#n*]~,O]^~uv(Y|}(_!O!P)[!Q![,w#R#S/g#U#V*V#W#X*]#[#]*]#a#b*j#e#f*]#g#h*]#k#l*]#m#n*]~,|]^~uv(Y}!O-u!O!P)[!Q![.l#R#S/g#U#V*V#W#X*]#[#]*]#a#b*j#e#f*]#g#h*]#k#l*]#m#n*]~-xP!Q![-{~.OP!Q![.R~.WP[~}!O.Z~.^P!Q![.a~.dP!Q![.g~.lO[~~.q[^~uv(Y!O!P)[!Q![.l#R#S/g#U#V*V#W#X*]#[#]*]#a#b*j#e#f*]#g#h*]#k#l*]#m#n*]~/jP!Q![/m~/rR^~!O!P(|!Q![/m#R#S/g~0SOh~q~~0ZOe~q~~0`Pq~!_!`0c~0hO_~~0oOf~q~~0vOn~q~~0}_p~q~qr1|st1|vw1|wx1|{|1|}!O3Q!O!P1|!P!Q1|!Q![1|!_!`1|!a!b1|!b!c1|!c!}1|#R#S1|#T#o1|~2R_p~qr1|st1|vw1|wx1|{|1|}!O3Q!O!P1|!P!Q1|!Q![1|!_!`1|!a!b1|!b!c1|!c!}1|#R#S1|#T#o1|~3T]qr1|st1|vw1|wx1|{|1|!O!P1|!P!Q1|!_!`1|!a!b1|!b!c1|!c!}1|#R#S1|#T#o1|~4ROa~~4YOb~q~~4aap~q~qr1|st1|vw1|wx1|{|1|}!O3Q!O!P1|!P!Q1|!Q![1|!_!`1|!a!b1|!b!c1|!c!}1|#R#S1|#T#h1|#h#i5f#i#o1|~5kap~qr1|st1|vw1|wx1|{|1|}!O3Q!O!P1|!P!Q1|!Q![1|!_!`1|!a!b1|!b!c1|!c!}1|#R#S1|#T#h1|#h#i6p#i#o1|~6uap~qr1|st1|vw1|wx1|{|1|}!O3Q!O!P1|!P!Q1|!Q![1|!_!`1|!a!b1|!b!c1|!c!}1|#R#S1|#T#d1|#d#e7z#e#o1|~8Pbp~qr1|st1|vw1|wx1|{|1|}!O3Q!O!P1|!P!Q1|!Q![1|![!]9X!_!`1|!a!b1|!b!c1|!c!}1|#R#S1|#T#g1|#g#h;R#h#o1|~9[P!P!Q9_~9bP!P!Q9e~9hYOX:WZp:Wqy:Wz|:W}!`:W!a#P:W#Q#p:W#q;'S:W;'S;=`:{<%lO:W~:]Y`~OX:WZp:Wqy:Wz|:W}!`:W!a#P:W#Q#p:W#q;'S:W;'S;=`:{<%lO:W~;OP;=`<%l:W~;W`p~qr1|st1|vw1|wx1|{|1|}!O3Q!O!P1|!P!Q1|!Q![1|![!]9X!_!`1|!a!b1|!b!c1|!c!}1|#R#S1|#T#o1|~<aOg~q~~<hPl~q~!`!a<k~<pOY~~<sP;=`<%l#u",
|
|
14
|
-
tokenizers: [0],
|
|
15
|
-
topRules: {"Document":[0,6]},
|
|
16
|
-
specialized: [{term: 32, get: (value, stack) => (specializeKeyword(value, stack) << 1), external: specializeKeyword}],
|
|
17
|
-
tokenPrec: 204
|
|
18
|
-
})
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
// This file was generated by lezer-generator. You probably shouldn't edit it.
|
|
2
|
-
export const
|
|
3
|
-
ChartType = 1,
|
|
4
|
-
TagKeyword = 2,
|
|
5
|
-
DirectiveKeyword = 3,
|
|
6
|
-
ControlKeyword = 4,
|
|
7
|
-
ModifierKeyword = 5,
|
|
8
|
-
Document = 6,
|
|
9
|
-
Comment = 7,
|
|
10
|
-
ContentLine = 8,
|
|
11
|
-
SyncArrow = 9,
|
|
12
|
-
AsyncArrow = 10,
|
|
13
|
-
Duration = 11,
|
|
14
|
-
DateLiteral = 12,
|
|
15
|
-
Percentage = 13,
|
|
16
|
-
Number = 14,
|
|
17
|
-
SectionMarker = 15,
|
|
18
|
-
Url = 16,
|
|
19
|
-
OpenBracket = 17,
|
|
20
|
-
CloseBracket = 18,
|
|
21
|
-
OpenParen = 19,
|
|
22
|
-
CloseParen = 20,
|
|
23
|
-
OpenAngle = 21,
|
|
24
|
-
CloseAngle = 22,
|
|
25
|
-
Pipe = 23,
|
|
26
|
-
Colon = 24,
|
|
27
|
-
Comma = 25,
|
|
28
|
-
Plus = 26,
|
|
29
|
-
Dash = 27,
|
|
30
|
-
Tilde = 28,
|
|
31
|
-
Star = 29,
|
|
32
|
-
Question = 30,
|
|
33
|
-
QuotedString = 31,
|
|
34
|
-
Identifier = 32,
|
|
35
|
-
Punct = 33
|