@diagrammo/dgmo 0.76.0 → 0.77.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 (102) hide show
  1. package/dist/advanced.d.ts +142 -12
  2. package/dist/advanced.js +104 -59
  3. package/dist/block.d.ts +2 -2
  4. package/dist/block.js +8 -8
  5. package/dist/{chart-meta-lP8Rl19E.d.ts → chart-meta-Cf_jkApJ.d.ts} +2 -2
  6. package/dist/chart-meta.d.ts +3 -3
  7. package/dist/{charts-d3-SQEVMIAM.js → charts-d3-HMEMHSSW.js} +5 -5
  8. package/dist/{chunk-E3BJVEMZ.js → chunk-2MTM4E6M.js} +2 -2
  9. package/dist/{chunk-UBW53CNS.js → chunk-3E4YB6TY.js} +2 -2
  10. package/dist/{chunk-IFC3JXCT.js → chunk-3O7ZYVJV.js} +2 -2
  11. package/dist/{chunk-Q6BAFS7I.js → chunk-43AJKH2U.js} +3 -3
  12. package/dist/chunk-53SEVJQM.js +9 -0
  13. package/dist/{chunk-UTTRJ6KN.js → chunk-5ZD4DDG7.js} +4 -4
  14. package/dist/{chunk-AFR6GWXD.js → chunk-6BVAW7KI.js} +4 -4
  15. package/dist/{chunk-CLQJAGWL.js → chunk-6IN4F4RH.js} +4 -4
  16. package/dist/{chunk-76IBFEYW.js → chunk-6ZZKEYBS.js} +4 -4
  17. package/dist/{chunk-OBYZU23V.js → chunk-7CXW6EGX.js} +2 -2
  18. package/dist/{chunk-HOIAQ3P2.js → chunk-B52RL5VV.js} +2 -2
  19. package/dist/{chunk-GFXFRKUG.js → chunk-BH3BQICT.js} +4 -4
  20. package/dist/{chunk-3LJNQ6LR.js → chunk-CF3I5SOG.js} +5 -5
  21. package/dist/{chunk-C576CU77.js → chunk-CHOK7NCJ.js} +5 -5
  22. package/dist/{chunk-U74EGVOA.js → chunk-CIWFL2LM.js} +4 -4
  23. package/dist/{chunk-OUJG73YJ.js → chunk-CYMYZYLI.js} +5 -5
  24. package/dist/{chunk-BCB24FG7.js → chunk-D3B6YEZK.js} +3 -3
  25. package/dist/{chunk-XHROEQ23.js → chunk-DSXWJAOA.js} +4 -4
  26. package/dist/{chunk-CQKD6GOC.js → chunk-EUVUOPRC.js} +4 -4
  27. package/dist/{chunk-7G4XMHDB.js → chunk-FF7LRT5L.js} +4 -4
  28. package/dist/{chunk-BZQCAZZZ.js → chunk-FR5EVD2X.js} +4 -4
  29. package/dist/{chunk-U7AO6FRL.js → chunk-H7BYMIVK.js} +312 -118
  30. package/dist/{chunk-4CRLM3IT.js → chunk-HDLRRY3N.js} +44 -44
  31. package/dist/{chunk-JLJ7SP4X.js → chunk-J76YDS4V.js} +2 -2
  32. package/dist/{chunk-7EZ5AKBK.js → chunk-LYJ53DBK.js} +8 -6
  33. package/dist/{chunk-JQ575OAK.js → chunk-MZEGUDTA.js} +2 -2
  34. package/dist/{chunk-IHUOYDLN.js → chunk-N5NQIZ56.js} +5 -5
  35. package/dist/{chunk-32MOGTKT.js → chunk-OO2L2LWV.js} +4 -4
  36. package/dist/{chunk-PAW4RMH3.js → chunk-OZOHREFQ.js} +2 -2
  37. package/dist/{chunk-EGXJWRO6.js → chunk-QBM5BURJ.js} +4 -4
  38. package/dist/{chunk-YVDBBWEP.js → chunk-QXMHBIQG.js} +4 -4
  39. package/dist/{chunk-UWYZIGCB.js → chunk-RGW26UAR.js} +2 -2
  40. package/dist/{chunk-QI4Q5ZZH.js → chunk-RV5A3EGI.js} +4 -4
  41. package/dist/{chunk-HGFKDSKZ.js → chunk-SI3PYDL4.js} +4 -4
  42. package/dist/{chunk-CAPR5DET.js → chunk-SSEAULA5.js} +2 -2
  43. package/dist/{chunk-AYM472K3.js → chunk-SWUQJ5VR.js} +3 -3
  44. package/dist/{chunk-HFCKU73Y.js → chunk-TI4YUUW6.js} +3 -3
  45. package/dist/{chunk-3EGIU5WY.js → chunk-TKIPK5P6.js} +3 -3
  46. package/dist/{chunk-QT5UMFPE.js → chunk-U4DS2ODO.js} +3 -3
  47. package/dist/{chunk-TF76LCZS.js → chunk-UBDVAHGK.js} +4 -4
  48. package/dist/{chunk-JL7BDLC6.js → chunk-UH5YTZN7.js} +4 -4
  49. package/dist/{chunk-GEURKGZS.js → chunk-V4NHFY22.js} +4 -4
  50. package/dist/{chunk-4SXHMFFP.js → chunk-VRPV6QXR.js} +23 -12
  51. package/dist/{chunk-FMZEU7MF.js → chunk-WHWUVDYK.js} +2 -2
  52. package/dist/{chunk-U5B3TUEW.js → chunk-XCFIAGT7.js} +2 -2
  53. package/dist/{chunk-COCMMQXW.js → chunk-XFXJXLK7.js} +2 -2
  54. package/dist/{chunk-YDA46XHI.js → chunk-XPBJVSRY.js} +2 -2
  55. package/dist/{chunk-VV6HZQ5K.js → chunk-YM5RMLFO.js} +2 -2
  56. package/dist/{d3--y67plmW.d.ts → d3-BiaJtaSw.d.ts} +1 -1
  57. package/dist/{dgmo-router-CY5j16Pl.d.ts → dgmo-router-BwXHZ_P3.d.ts} +1 -1
  58. package/dist/{dimensions-7NYBSZRJ.js → dimensions-OFF4GRFL.js} +4 -4
  59. package/dist/{flowchart-renderer-QYGQ64BM.js → flowchart-renderer-BBJUPORB.js} +3 -3
  60. package/dist/index.d.ts +7 -7
  61. package/dist/index.js +8 -8
  62. package/dist/{layout-LAS67TK3.js → layout-Y2V3LYV7.js} +2 -2
  63. package/dist/{renderer-FUJNSC5X.js → renderer-2ANDPQWC.js} +3 -3
  64. package/dist/{renderer-UYZSP7MF.js → renderer-2LDT4TUX.js} +5 -5
  65. package/dist/{renderer-4EWGZLJ6.js → renderer-2NYQDW37.js} +3 -3
  66. package/dist/{renderer-LBNVKVO3.js → renderer-2RIIIO34.js} +5 -5
  67. package/dist/{renderer-PKRKLOYR.js → renderer-3HFU3DTO.js} +5 -5
  68. package/dist/{renderer-UUP6OX6F.js → renderer-4BF6ILP6.js} +5 -5
  69. package/dist/{renderer-MUW4G2N6.js → renderer-5E2AH5TO.js} +7 -7
  70. package/dist/{renderer-DKW273R7.js → renderer-62SLWRYF.js} +6 -5
  71. package/dist/{renderer-E6NHTVN6.js → renderer-ANJUDBOS.js} +5 -5
  72. package/dist/{renderer-OTHBTGBN.js → renderer-CVWQD442.js} +3 -3
  73. package/dist/{renderer-GJDVPXI3.js → renderer-D6GJ6EVK.js} +6 -6
  74. package/dist/{renderer-KMOGGMM7.js → renderer-DNFV2IQI.js} +5 -5
  75. package/dist/{renderer-IH45QV6Z.js → renderer-EDVCGIQO.js} +4 -4
  76. package/dist/{renderer-LE3ZKHNS.js → renderer-EFQSMHID.js} +6 -6
  77. package/dist/{renderer-EP4GRCDX.js → renderer-FTX67CYZ.js} +3 -3
  78. package/dist/{renderer-GF6S5ZX6.js → renderer-G2DPKJAN.js} +5 -5
  79. package/dist/{renderer-QAMOXOZ2.js → renderer-GHBF5PRH.js} +3 -3
  80. package/dist/{renderer-5W3HWIUL.js → renderer-GZLRX764.js} +5 -5
  81. package/dist/{renderer-CO5O5VR5.js → renderer-H2HYLFN3.js} +3 -3
  82. package/dist/{renderer-JMJ7Q5OC.js → renderer-IR5655M7.js} +5 -5
  83. package/dist/{renderer-4PNVGHVA.js → renderer-L237AOOZ.js} +3 -3
  84. package/dist/{renderer-F6WSR7UM.js → renderer-LSJWYGOL.js} +6 -6
  85. package/dist/{renderer-PR3KLNST.js → renderer-LWXDMZOV.js} +5 -5
  86. package/dist/{renderer-3FB56573.js → renderer-MYSVPERC.js} +5 -5
  87. package/dist/{renderer-FGGDZZFQ.js → renderer-OL5QSZPC.js} +6 -6
  88. package/dist/{renderer-XBL6CLN2.js → renderer-P26HH3NA.js} +5 -5
  89. package/dist/{renderer-D7N7PPB7.js → renderer-R5HIRN2M.js} +3 -3
  90. package/dist/{renderer-BUEFD2IF.js → renderer-RNFECJ5D.js} +5 -5
  91. package/dist/{renderer-F24V3RD3.js → renderer-RPZVNCTF.js} +5 -5
  92. package/dist/{renderer-PIEPRK6M.js → renderer-SDNWZDUY.js} +5 -5
  93. package/dist/{renderer-RUHC6D3B.js → renderer-UKHH4UWV.js} +5 -5
  94. package/dist/{renderer-CGOPX4HW.js → renderer-VF7X66SL.js} +5 -5
  95. package/dist/{renderer-ZAJ5353N.js → renderer-Y3Y7PEUS.js} +3 -3
  96. package/dist/{renderer-radial-MZP3SVTZ.js → renderer-radial-QNGCGKZP.js} +5 -5
  97. package/dist/{state-renderer-UIE3AQM6.js → state-renderer-ELWDRXD6.js} +5 -5
  98. package/dist/{tag-groups-DrHT2tEc.d.ts → tag-groups-BAtkq0b_.d.ts} +39 -1
  99. package/dist/{themes-GWhsabnx.d.ts → themes-DpsyRSO7.d.ts} +2 -2
  100. package/gallery/fixtures/sketch.dgmo +1 -1
  101. package/package.json +4 -3
  102. package/dist/chunk-UTCPNJND.js +0 -7
@@ -7,7 +7,7 @@ import {
7
7
  groupMessagesBySection,
8
8
  renderSequenceDiagram,
9
9
  summarizeSectionParticipation
10
- } from "./chunk-CLQJAGWL.js";
10
+ } from "./chunk-6IN4F4RH.js";
11
11
  import "./chunk-NCT22MOD.js";
12
12
  import {
13
13
  parseInlineMarkdown,
@@ -17,9 +17,9 @@ import "./chunk-FJ57274M.js";
17
17
  import "./chunk-24YPR5EH.js";
18
18
  import "./chunk-MG3DE3VO.js";
19
19
  import "./chunk-DEW62ON3.js";
20
- import "./chunk-QT5UMFPE.js";
21
- import "./chunk-4SXHMFFP.js";
22
- import "./chunk-UTCPNJND.js";
20
+ import "./chunk-U4DS2ODO.js";
21
+ import "./chunk-VRPV6QXR.js";
22
+ import "./chunk-53SEVJQM.js";
23
23
  import "./chunk-YT5ICQ4R.js";
24
24
  import "./chunk-MTGGOCND.js";
25
25
  import "./chunk-7NSNE52V.js";
@@ -44,4 +44,4 @@ export {
44
44
  summarizeSectionParticipation,
45
45
  truncateBareUrl
46
46
  };
47
- //# sourceMappingURL=renderer-CGOPX4HW.js.map
47
+ //# sourceMappingURL=renderer-VF7X66SL.js.map
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  renderRing,
3
3
  renderRingForExport
4
- } from "./chunk-HOIAQ3P2.js";
4
+ } from "./chunk-B52RL5VV.js";
5
5
  import "./chunk-NCT22MOD.js";
6
6
  import "./chunk-WGC42WJU.js";
7
7
  import "./chunk-24YPR5EH.js";
8
8
  import "./chunk-DEW62ON3.js";
9
- import "./chunk-UTCPNJND.js";
9
+ import "./chunk-53SEVJQM.js";
10
10
  import "./chunk-MTGGOCND.js";
11
11
  import "./chunk-M5OOAP65.js";
12
12
  import "./chunk-GLREDNBA.js";
@@ -17,4 +17,4 @@ export {
17
17
  renderRing,
18
18
  renderRingForExport
19
19
  };
20
- //# sourceMappingURL=renderer-ZAJ5353N.js.map
20
+ //# sourceMappingURL=renderer-Y3Y7PEUS.js.map
@@ -1,11 +1,11 @@
1
1
  import {
2
2
  renderTreemapRadial,
3
3
  renderTreemapRadialForExport
4
- } from "./chunk-U74EGVOA.js";
4
+ } from "./chunk-CIWFL2LM.js";
5
5
  import "./chunk-C2WH3BMS.js";
6
- import "./chunk-QT5UMFPE.js";
7
- import "./chunk-4SXHMFFP.js";
8
- import "./chunk-UTCPNJND.js";
6
+ import "./chunk-U4DS2ODO.js";
7
+ import "./chunk-VRPV6QXR.js";
8
+ import "./chunk-53SEVJQM.js";
9
9
  import "./chunk-YT5ICQ4R.js";
10
10
  import "./chunk-MTGGOCND.js";
11
11
  import "./chunk-76LHNLGX.js";
@@ -18,4 +18,4 @@ export {
18
18
  renderTreemapRadial,
19
19
  renderTreemapRadialForExport
20
20
  };
21
- //# sourceMappingURL=renderer-radial-MZP3SVTZ.js.map
21
+ //# sourceMappingURL=renderer-radial-QNGCGKZP.js.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  renderState,
3
3
  renderStateForExport
4
- } from "./chunk-TF76LCZS.js";
4
+ } from "./chunk-UBDVAHGK.js";
5
5
  import "./chunk-7IATMZSA.js";
6
6
  import "./chunk-N6MZSBOL.js";
7
7
  import "./chunk-LP7EC4MI.js";
@@ -16,9 +16,9 @@ import "./chunk-24YPR5EH.js";
16
16
  import "./chunk-MG3DE3VO.js";
17
17
  import "./chunk-RU2HHHYA.js";
18
18
  import "./chunk-DEW62ON3.js";
19
- import "./chunk-QT5UMFPE.js";
20
- import "./chunk-4SXHMFFP.js";
21
- import "./chunk-UTCPNJND.js";
19
+ import "./chunk-U4DS2ODO.js";
20
+ import "./chunk-VRPV6QXR.js";
21
+ import "./chunk-53SEVJQM.js";
22
22
  import "./chunk-YT5ICQ4R.js";
23
23
  import "./chunk-MTGGOCND.js";
24
24
  import "./chunk-M5JT2AU7.js";
@@ -37,4 +37,4 @@ export {
37
37
  renderState,
38
38
  renderStateForExport
39
39
  };
40
- //# sourceMappingURL=state-renderer-UIE3AQM6.js.map
40
+ //# sourceMappingURL=state-renderer-ELWDRXD6.js.map
@@ -269,5 +269,43 @@ declare function tagAttrKey(name: string): string;
269
269
  * entries than free categorical names, the cycle wraps.
270
270
  */
271
271
  declare const autoTagColorCycle: readonly string[];
272
+ /**
273
+ * Parse a tag block heading line into structured data.
274
+ * Returns `null` if the line is not a tag block heading.
275
+ */
276
+ /**
277
+ * Resolve a tag color for an entity given its metadata, available tag groups,
278
+ * and the currently active group.
279
+ *
280
+ * Returns the hex color from the matching tag entry, `'#999999'` for
281
+ * untagged/unknown values, or `undefined` when no group is active.
282
+ *
283
+ * @param metadata The entity's key-value metadata (keys already lowercased)
284
+ * @param tagGroups All declared tag groups
285
+ * @param activeGroupName The currently selected tag group (null = no group active)
286
+ * @param isContainer When true, `defaultValue` is NOT applied (containers are structural, not data)
287
+ */
288
+ declare function resolveTagColor(metadata: Record<string, string>, tagGroups: TagGroup[], activeGroupName: string | null, isContainer?: boolean): string | undefined;
289
+ /**
290
+ * Determine which tag group should be active, using a priority chain:
291
+ *
292
+ * 1. Programmatic override (from render API / CLI flag) — highest priority
293
+ * 2. Diagram-level `active-tag` option (from parsed source)
294
+ * 3. Auto-activate first declared tag group
295
+ * 4. No coloring (null)
296
+ *
297
+ * The sentinel value `"none"` (case-insensitive) at any level means
298
+ * "suppress tag coloring." Diagrams with tag groups render colored by
299
+ * default across every render path (CLI, export, share-link, app); use
300
+ * `active-tag none` to opt out.
301
+ *
302
+ * @param tagGroups Declared tag groups (only `.name` is used)
303
+ * @param explicitActiveTag Value of `active-tag` option from parsed diagram, if any
304
+ * @param programmaticOverride Value from render API / CLI; `undefined` = not set,
305
+ * `null` or `''` = explicitly no coloring
306
+ */
307
+ declare function resolveActiveTagGroup(tagGroups: ReadonlyArray<{
308
+ name: string;
309
+ }>, explicitActiveTag: string | undefined, programmaticOverride?: string | null): string | null;
272
310
 
273
- export { type CompactViewState as C, type DgmoError as D, type EmitOptions as E, type PaletteConfig as P, type TagGroup as T, type PaletteColors as a, type DiagnosticSpec as b, type DgmoSeverity as c, type DiagnosticParams as d, emit as e, formatDgmoError as f, type TagEntry as g, type DecodedDiagramUrl as h, type EncodeDiagramUrlOptions as i, type EncodeDiagramUrlResult as j, autoTagColorCycle as k, decodeDiagramUrl as l, decodeViewState as m, encodeDiagramUrl as n, encodeViewState as o, makeDgmoError as p, tagAttrKey as t };
311
+ export { type CompactViewState as C, type DgmoError as D, type EmitOptions as E, type PaletteConfig as P, type TagGroup as T, type PaletteColors as a, type DiagnosticSpec as b, type DgmoSeverity as c, type DiagnosticParams as d, emit as e, formatDgmoError as f, type TagEntry as g, type DecodedDiagramUrl as h, type EncodeDiagramUrlOptions as i, type EncodeDiagramUrlResult as j, autoTagColorCycle as k, decodeDiagramUrl as l, decodeViewState as m, encodeDiagramUrl as n, encodeViewState as o, makeDgmoError as p, resolveTagColor as q, resolveActiveTagGroup as r, tagAttrKey as t };
@@ -1,5 +1,5 @@
1
- import { P as PaletteConfig } from './tag-groups-DrHT2tEc.js';
2
- import { A as AirportData, G as Gazetteer, R as RegionName } from './d3--y67plmW.js';
1
+ import { P as PaletteConfig } from './tag-groups-BAtkq0b_.js';
2
+ import { A as AirportData, G as Gazetteer, R as RegionName } from './d3-BiaJtaSw.js';
3
3
 
4
4
  /**
5
5
  * All built-in palettes, keyed by camelCase id. Use directly with render():
@@ -4,7 +4,7 @@ tag Crew
4
4
  Deck
5
5
  Hold
6
6
 
7
- Spyglass Feed shape: cloud, at: 0 0, crew: Deck
7
+ Spyglass Feed at: 0 0, crew: Deck
8
8
  -sightings-> con
9
9
  Captain's Console as con at: 2 0, crew: Deck
10
10
  -orders-> bq
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@diagrammo/dgmo",
3
- "version": "0.76.0",
3
+ "version": "0.77.0",
4
4
  "description": "DGMO diagram markup language — parser, renderer, and color system",
5
5
  "license": "MIT",
6
6
  "author": "Diagrammo LLC",
@@ -111,14 +111,15 @@
111
111
  "lint:fix": "eslint . --fix",
112
112
  "format": "prettier --write src/",
113
113
  "format:check": "prettier --check src/",
114
- "check:api": "pnpm build && bash scripts/check-api.sh check",
114
+ "check:api": "node --test scripts/check-api.test.mjs && pnpm build && bash scripts/check-api.sh check",
115
115
  "check:api:update": "pnpm build && bash scripts/check-api.sh update",
116
116
  "check:duplication": "jscpd ./src",
117
117
  "check:deadcode": "knip",
118
118
  "check:spelling": "cspell \"src/**/*.ts\" \"tests/**/*.ts\"",
119
- "check:all": "pnpm check:deadcode && pnpm check:spelling && pnpm check:duplication && pnpm check:circular && pnpm check:deps && pnpm check:dep-ranges && pnpm check:security && pnpm build && bash scripts/check-api.sh check && pnpm check:publish && pnpm check:types",
119
+ "check:all": "pnpm check:install-lock && pnpm check:deadcode && pnpm check:spelling && pnpm check:duplication && pnpm check:circular && pnpm check:deps && pnpm check:dep-ranges && pnpm check:security && node --test scripts/check-api.test.mjs && pnpm build && bash scripts/check-api.sh check && pnpm check:publish && pnpm check:types",
120
120
  "check:circular": "node --test scripts/check-circular.test.mjs && madge --circular --extensions ts src/ --json | node scripts/check-circular.mjs",
121
121
  "check:deps": "depcheck --ignores='@diagrammo/dgmo,@diagrammo/dgmo-mcp,@codemirror/language,@lezer/*,husky,lint-staged,tsup,axe-core,type-coverage'",
122
+ "check:install-lock": "node --test scripts/check-install-lock.test.mjs && node scripts/check-install-lock.mjs",
122
123
  "check:security": "pnpm audit --prod",
123
124
  "check:dep-ranges": "node scripts/check-dep-ranges.mjs",
124
125
  "check:publish": "publint",
@@ -1,7 +0,0 @@
1
- // src/fonts.ts
2
- var FONT_FAMILY = "Inter, system-ui, Avenir, Helvetica, Arial, sans-serif";
3
-
4
- export {
5
- FONT_FAMILY
6
- };
7
- //# sourceMappingURL=chunk-UTCPNJND.js.map