@diagrammo/dgmo 0.75.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 (120) hide show
  1. package/dist/advanced.d.ts +181 -12
  2. package/dist/advanced.js +267 -60
  3. package/dist/block.css +20 -3
  4. package/dist/block.d.ts +12 -4
  5. package/dist/block.js +35 -18
  6. package/dist/{chart-meta-lP8Rl19E.d.ts → chart-meta-Cf_jkApJ.d.ts} +2 -2
  7. package/dist/chart-meta.d.ts +3 -3
  8. package/dist/chart-meta.js +6 -6
  9. package/dist/{charts-d3-SQEVMIAM.js → charts-d3-HMEMHSSW.js} +5 -5
  10. package/dist/{chunk-E3BJVEMZ.js → chunk-2MTM4E6M.js} +2 -2
  11. package/dist/{chunk-UBW53CNS.js → chunk-3E4YB6TY.js} +2 -2
  12. package/dist/{chunk-IFC3JXCT.js → chunk-3O7ZYVJV.js} +2 -2
  13. package/dist/{chunk-Q6BAFS7I.js → chunk-43AJKH2U.js} +3 -3
  14. package/dist/{chunk-2NRIGEHZ.js → chunk-46KVXDUJ.js} +10 -3
  15. package/dist/chunk-53SEVJQM.js +9 -0
  16. package/dist/{chunk-UTTRJ6KN.js → chunk-5ZD4DDG7.js} +4 -4
  17. package/dist/{chunk-AFR6GWXD.js → chunk-6BVAW7KI.js} +4 -4
  18. package/dist/{chunk-CLQJAGWL.js → chunk-6IN4F4RH.js} +4 -4
  19. package/dist/{chunk-76IBFEYW.js → chunk-6ZZKEYBS.js} +4 -4
  20. package/dist/{chunk-QUYYL3LP.js → chunk-7CXW6EGX.js} +5 -5
  21. package/dist/chunk-7IATMZSA.js +72 -0
  22. package/dist/{chunk-HOIAQ3P2.js → chunk-B52RL5VV.js} +2 -2
  23. package/dist/{chunk-IGQW7TKM.js → chunk-BH3BQICT.js} +5 -5
  24. package/dist/{chunk-3LJNQ6LR.js → chunk-CF3I5SOG.js} +5 -5
  25. package/dist/{chunk-ZMKCG3FT.js → chunk-CHOK7NCJ.js} +6 -6
  26. package/dist/{chunk-U74EGVOA.js → chunk-CIWFL2LM.js} +4 -4
  27. package/dist/{chunk-OUJG73YJ.js → chunk-CYMYZYLI.js} +5 -5
  28. package/dist/{chunk-BCB24FG7.js → chunk-D3B6YEZK.js} +3 -3
  29. package/dist/{chunk-XHROEQ23.js → chunk-DSXWJAOA.js} +4 -4
  30. package/dist/{chunk-RT7ACF77.js → chunk-EGY3TS62.js} +6 -6
  31. package/dist/{chunk-CQKD6GOC.js → chunk-EUVUOPRC.js} +4 -4
  32. package/dist/{chunk-TDHD3HNO.js → chunk-F4X5NVKY.js} +37 -16
  33. package/dist/{chunk-7G4XMHDB.js → chunk-FF7LRT5L.js} +4 -4
  34. package/dist/{chunk-6DYZ2JM6.js → chunk-FR5EVD2X.js} +206 -32
  35. package/dist/{chunk-R5JPMW2F.js → chunk-FTTB64OJ.js} +5 -5
  36. package/dist/{chunk-U7AO6FRL.js → chunk-H7BYMIVK.js} +312 -118
  37. package/dist/{chunk-M3IVOGZE.js → chunk-HDLRRY3N.js} +61 -55
  38. package/dist/{chunk-F4CPZRG2.js → chunk-J76YDS4V.js} +2 -2
  39. package/dist/{chunk-SUA56ZSB.js → chunk-LTTZX6RD.js} +6 -2
  40. package/dist/{chunk-7EZ5AKBK.js → chunk-LYJ53DBK.js} +8 -6
  41. package/dist/{chunk-JQ575OAK.js → chunk-MZEGUDTA.js} +2 -2
  42. package/dist/{chunk-IHUOYDLN.js → chunk-N5NQIZ56.js} +5 -5
  43. package/dist/{chunk-GE5RO4BS.js → chunk-N6MZSBOL.js} +5 -1
  44. package/dist/{chunk-DU3OIBQE.js → chunk-NWNSXHA5.js} +6 -2
  45. package/dist/{chunk-32MOGTKT.js → chunk-OO2L2LWV.js} +4 -4
  46. package/dist/{chunk-XCAEHWQB.js → chunk-OZOHREFQ.js} +3 -3
  47. package/dist/{chunk-DSH7NJ2G.js → chunk-QBM5BURJ.js} +4 -4
  48. package/dist/{chunk-YVDBBWEP.js → chunk-QXMHBIQG.js} +4 -4
  49. package/dist/{chunk-UWYZIGCB.js → chunk-RGW26UAR.js} +2 -2
  50. package/dist/{chunk-QI4Q5ZZH.js → chunk-RV5A3EGI.js} +4 -4
  51. package/dist/{chunk-HGFKDSKZ.js → chunk-SI3PYDL4.js} +4 -4
  52. package/dist/{chunk-CAPR5DET.js → chunk-SSEAULA5.js} +2 -2
  53. package/dist/{chunk-AYM472K3.js → chunk-SWUQJ5VR.js} +3 -3
  54. package/dist/{chunk-HFCKU73Y.js → chunk-TI4YUUW6.js} +3 -3
  55. package/dist/{chunk-LYLRNAX2.js → chunk-TKIPK5P6.js} +3 -3
  56. package/dist/{chunk-QT5UMFPE.js → chunk-U4DS2ODO.js} +3 -3
  57. package/dist/{chunk-XFLLYY3V.js → chunk-UBDVAHGK.js} +36 -52
  58. package/dist/{chunk-JL7BDLC6.js → chunk-UH5YTZN7.js} +4 -4
  59. package/dist/{chunk-GEURKGZS.js → chunk-V4NHFY22.js} +4 -4
  60. package/dist/{chunk-4SXHMFFP.js → chunk-VRPV6QXR.js} +23 -12
  61. package/dist/{chunk-BFTRW24X.js → chunk-WHWUVDYK.js} +65 -24
  62. package/dist/{chunk-U5B3TUEW.js → chunk-XCFIAGT7.js} +2 -2
  63. package/dist/{chunk-COCMMQXW.js → chunk-XFXJXLK7.js} +2 -2
  64. package/dist/{chunk-YDA46XHI.js → chunk-XPBJVSRY.js} +2 -2
  65. package/dist/{chunk-VV6HZQ5K.js → chunk-YM5RMLFO.js} +2 -2
  66. package/dist/{d3--y67plmW.d.ts → d3-BiaJtaSw.d.ts} +1 -1
  67. package/dist/{dgmo-router-KYNLRE7S.js → dgmo-router-A3LIHT6H.js} +7 -7
  68. package/dist/{dgmo-router-CY5j16Pl.d.ts → dgmo-router-BwXHZ_P3.d.ts} +1 -1
  69. package/dist/{dimensions-NLQ64ED5.js → dimensions-OFF4GRFL.js} +4 -4
  70. package/dist/{flowchart-parser-LY5GGQL2.js → flowchart-parser-NVBP3C5D.js} +2 -2
  71. package/dist/{flowchart-renderer-RIJ5FZKO.js → flowchart-renderer-BBJUPORB.js} +6 -6
  72. package/dist/index.d.ts +7 -7
  73. package/dist/index.js +14 -14
  74. package/dist/{layout-UJ62RQQ3.js → layout-2OJ25STS.js} +2 -2
  75. package/dist/{layout-DAYQ46PS.js → layout-Y2V3LYV7.js} +3 -3
  76. package/dist/{parser-LUOINP6H.js → parser-QYAIFXLP.js} +3 -3
  77. package/dist/{parser-L7RXUKYN.js → parser-WVE6SKB7.js} +2 -2
  78. package/dist/{parser-JYIZEKAS.js → parser-ZYAFHXKQ.js} +2 -2
  79. package/dist/{renderer-FUJNSC5X.js → renderer-2ANDPQWC.js} +3 -3
  80. package/dist/{renderer-UYZSP7MF.js → renderer-2LDT4TUX.js} +5 -5
  81. package/dist/{renderer-4EWGZLJ6.js → renderer-2NYQDW37.js} +3 -3
  82. package/dist/{renderer-LBNVKVO3.js → renderer-2RIIIO34.js} +5 -5
  83. package/dist/{renderer-PKRKLOYR.js → renderer-3HFU3DTO.js} +5 -5
  84. package/dist/{renderer-UUP6OX6F.js → renderer-4BF6ILP6.js} +5 -5
  85. package/dist/{renderer-MUW4G2N6.js → renderer-5E2AH5TO.js} +7 -7
  86. package/dist/{renderer-DKW273R7.js → renderer-62SLWRYF.js} +6 -5
  87. package/dist/{renderer-WDSBFDQ2.js → renderer-ANJUDBOS.js} +6 -6
  88. package/dist/{renderer-OTHBTGBN.js → renderer-CVWQD442.js} +3 -3
  89. package/dist/{renderer-GJDVPXI3.js → renderer-D6GJ6EVK.js} +6 -6
  90. package/dist/{renderer-KMOGGMM7.js → renderer-DNFV2IQI.js} +5 -5
  91. package/dist/{renderer-UYYBJ7OB.js → renderer-EDVCGIQO.js} +10 -10
  92. package/dist/{renderer-73QHYZ2Q.js → renderer-EFQSMHID.js} +6 -6
  93. package/dist/{renderer-EP4GRCDX.js → renderer-FTX67CYZ.js} +3 -3
  94. package/dist/{renderer-GF6S5ZX6.js → renderer-G2DPKJAN.js} +5 -5
  95. package/dist/{renderer-QAMOXOZ2.js → renderer-GHBF5PRH.js} +3 -3
  96. package/dist/{renderer-5W3HWIUL.js → renderer-GZLRX764.js} +5 -5
  97. package/dist/{renderer-CO5O5VR5.js → renderer-H2HYLFN3.js} +3 -3
  98. package/dist/{renderer-JMJ7Q5OC.js → renderer-IR5655M7.js} +5 -5
  99. package/dist/{renderer-4PNVGHVA.js → renderer-L237AOOZ.js} +3 -3
  100. package/dist/{renderer-A2YWSBPY.js → renderer-LSJWYGOL.js} +7 -7
  101. package/dist/{renderer-PR3KLNST.js → renderer-LWXDMZOV.js} +5 -5
  102. package/dist/{renderer-3FB56573.js → renderer-MYSVPERC.js} +5 -5
  103. package/dist/{renderer-FGGDZZFQ.js → renderer-OL5QSZPC.js} +6 -6
  104. package/dist/{renderer-XBL6CLN2.js → renderer-P26HH3NA.js} +5 -5
  105. package/dist/{renderer-D7N7PPB7.js → renderer-R5HIRN2M.js} +3 -3
  106. package/dist/{renderer-BUEFD2IF.js → renderer-RNFECJ5D.js} +5 -5
  107. package/dist/{renderer-F24V3RD3.js → renderer-RPZVNCTF.js} +5 -5
  108. package/dist/{renderer-PIEPRK6M.js → renderer-SDNWZDUY.js} +5 -5
  109. package/dist/{renderer-RUHC6D3B.js → renderer-UKHH4UWV.js} +5 -5
  110. package/dist/{renderer-CGOPX4HW.js → renderer-VF7X66SL.js} +5 -5
  111. package/dist/{renderer-ZAJ5353N.js → renderer-Y3Y7PEUS.js} +3 -3
  112. package/dist/{renderer-radial-MZP3SVTZ.js → renderer-radial-QNGCGKZP.js} +5 -5
  113. package/dist/{state-renderer-454ADT7E.js → state-renderer-ELWDRXD6.js} +7 -7
  114. package/dist/{tag-groups-DrHT2tEc.d.ts → tag-groups-BAtkq0b_.d.ts} +39 -1
  115. package/dist/{themes-GWhsabnx.d.ts → themes-DpsyRSO7.d.ts} +2 -2
  116. package/docs/language-reference.md +3 -3
  117. package/gallery/fixtures/sketch.dgmo +1 -1
  118. package/package.json +5 -4
  119. package/dist/chunk-PDKUANDZ.js +0 -35
  120. package/dist/chunk-UTCPNJND.js +0 -7
package/dist/advanced.js CHANGED
@@ -2,11 +2,11 @@ import {
2
2
  layoutBracket,
3
3
  renderBracket,
4
4
  renderBracketForExport
5
- } from "./chunk-HGFKDSKZ.js";
5
+ } from "./chunk-SI3PYDL4.js";
6
6
  import {
7
7
  renderRaci,
8
8
  renderRaciForExport
9
- } from "./chunk-COCMMQXW.js";
9
+ } from "./chunk-XFXJXLK7.js";
10
10
  import {
11
11
  applyCollapseProjection,
12
12
  applyGroupOrdering,
@@ -16,43 +16,43 @@ import {
16
16
  computeActivations,
17
17
  groupMessagesBySection,
18
18
  renderSequenceDiagram
19
- } from "./chunk-CLQJAGWL.js";
19
+ } from "./chunk-6IN4F4RH.js";
20
20
  import {
21
21
  renderRing,
22
22
  renderRingForExport
23
- } from "./chunk-HOIAQ3P2.js";
23
+ } from "./chunk-B52RL5VV.js";
24
24
  import {
25
25
  layoutTreemapRadial,
26
26
  renderTreemapRadial,
27
27
  renderTreemapRadialForExport
28
- } from "./chunk-U74EGVOA.js";
28
+ } from "./chunk-CIWFL2LM.js";
29
29
  import {
30
30
  layoutTreemap,
31
31
  renderTreemap,
32
32
  renderTreemapForExport
33
- } from "./chunk-XHROEQ23.js";
33
+ } from "./chunk-DSXWJAOA.js";
34
34
  import {
35
35
  renderLiveLinkCard
36
- } from "./chunk-LYLRNAX2.js";
36
+ } from "./chunk-TKIPK5P6.js";
37
37
  import {
38
38
  authoredCollapsedIds,
39
39
  layoutBlock,
40
40
  renderBlock,
41
41
  renderBlockForExport
42
- } from "./chunk-UTTRJ6KN.js";
42
+ } from "./chunk-5ZD4DDG7.js";
43
43
  import {
44
44
  renderGoal,
45
45
  renderGoalForExport
46
- } from "./chunk-U5B3TUEW.js";
46
+ } from "./chunk-XCFIAGT7.js";
47
47
  import "./chunk-C2WH3BMS.js";
48
48
  import {
49
49
  renderCountdown,
50
50
  renderCountdownForExport
51
- } from "./chunk-E3BJVEMZ.js";
51
+ } from "./chunk-2MTM4E6M.js";
52
52
  import {
53
53
  renderClock,
54
54
  renderClockForExport
55
- } from "./chunk-YDA46XHI.js";
55
+ } from "./chunk-XPBJVSRY.js";
56
56
  import {
57
57
  computeRadarLayout,
58
58
  getRadarGeometry,
@@ -60,11 +60,11 @@ import {
60
60
  renderQuadrantFocusForExport,
61
61
  renderTechRadar,
62
62
  renderTechRadarForExport
63
- } from "./chunk-CQKD6GOC.js";
63
+ } from "./chunk-EUVUOPRC.js";
64
64
  import {
65
65
  renderJourneyMap,
66
66
  renderJourneyMapForExport
67
- } from "./chunk-HFCKU73Y.js";
67
+ } from "./chunk-TI4YUUW6.js";
68
68
  import {
69
69
  layoutJourneyMap
70
70
  } from "./chunk-F4V67JXG.js";
@@ -72,25 +72,25 @@ import {
72
72
  computeCycleLayout,
73
73
  renderCycle,
74
74
  renderCycleForExport
75
- } from "./chunk-BCB24FG7.js";
75
+ } from "./chunk-D3B6YEZK.js";
76
76
  import {
77
77
  resolveMap
78
78
  } from "./chunk-DGPFFRLS.js";
79
79
  import {
80
80
  renderMap,
81
81
  renderMapForExport
82
- } from "./chunk-DSH7NJ2G.js";
82
+ } from "./chunk-QBM5BURJ.js";
83
83
  import "./chunk-MS5574I7.js";
84
84
  import {
85
85
  mapContentAspect,
86
86
  mapExportDimensions
87
- } from "./chunk-F4CPZRG2.js";
87
+ } from "./chunk-J76YDS4V.js";
88
88
  import {
89
89
  albersSkewFallback,
90
90
  layoutMap,
91
91
  mapBackgroundColor,
92
92
  mapNeutralLandColor
93
- } from "./chunk-BFTRW24X.js";
93
+ } from "./chunk-WHWUVDYK.js";
94
94
  import {
95
95
  decodeFeatures,
96
96
  regionAt
@@ -98,20 +98,20 @@ import {
98
98
  import {
99
99
  renderPyramid,
100
100
  renderPyramidForExport
101
- } from "./chunk-UWYZIGCB.js";
101
+ } from "./chunk-RGW26UAR.js";
102
102
  import {
103
103
  collectDiagramRoles,
104
104
  computeInfraLegendGroups,
105
105
  inferRoles,
106
106
  parseAndLayoutInfra,
107
107
  renderInfra
108
- } from "./chunk-IGQW7TKM.js";
108
+ } from "./chunk-BH3BQICT.js";
109
109
  import {
110
110
  measurePertAnalysisBlock,
111
111
  renderPert,
112
112
  renderPertAnalysisBlock,
113
113
  renderPertForExport
114
- } from "./chunk-32MOGTKT.js";
114
+ } from "./chunk-OO2L2LWV.js";
115
115
  import {
116
116
  analyzePert,
117
117
  buildSimulationContext,
@@ -132,11 +132,11 @@ import {
132
132
  import {
133
133
  buildTagLaneRowList,
134
134
  renderGantt
135
- } from "./chunk-AFR6GWXD.js";
135
+ } from "./chunk-6BVAW7KI.js";
136
136
  import {
137
137
  renderState,
138
138
  renderStateForExport
139
- } from "./chunk-XFLLYY3V.js";
139
+ } from "./chunk-UBDVAHGK.js";
140
140
  import {
141
141
  collapseStateGroups
142
142
  } from "./chunk-SQ7IY53Q.js";
@@ -145,7 +145,7 @@ import {
145
145
  } from "./chunk-NVOU7N6C.js";
146
146
  import {
147
147
  renderWireframe
148
- } from "./chunk-JQ575OAK.js";
148
+ } from "./chunk-MZEGUDTA.js";
149
149
  import {
150
150
  renderC4ComponentsForExport,
151
151
  renderC4Containers,
@@ -154,7 +154,7 @@ import {
154
154
  renderC4ContextForExport,
155
155
  renderC4Deployment,
156
156
  renderC4DeploymentForExport
157
- } from "./chunk-AYM472K3.js";
157
+ } from "./chunk-SWUQJ5VR.js";
158
158
  import {
159
159
  layoutC4Components,
160
160
  layoutC4Containers,
@@ -165,11 +165,11 @@ import {
165
165
  import {
166
166
  renderFlowchart,
167
167
  renderFlowchartForExport
168
- } from "./chunk-QUYYL3LP.js";
169
- import "./chunk-PDKUANDZ.js";
168
+ } from "./chunk-7CXW6EGX.js";
169
+ import "./chunk-7IATMZSA.js";
170
170
  import {
171
171
  layoutGraph
172
- } from "./chunk-GE5RO4BS.js";
172
+ } from "./chunk-N6MZSBOL.js";
173
173
  import {
174
174
  computeInfra
175
175
  } from "./chunk-ICZ7M6IZ.js";
@@ -181,7 +181,7 @@ import {
181
181
  } from "./chunk-S6QDCFEU.js";
182
182
  import {
183
183
  renderSwimlaneForExport
184
- } from "./chunk-CAPR5DET.js";
184
+ } from "./chunk-SSEAULA5.js";
185
185
  import "./chunk-LP7EC4MI.js";
186
186
  import {
187
187
  layoutFamily
@@ -189,7 +189,7 @@ import {
189
189
  import {
190
190
  renderFamily,
191
191
  renderFamilyForExport
192
- } from "./chunk-76IBFEYW.js";
192
+ } from "./chunk-6ZZKEYBS.js";
193
193
  import "./chunk-IVKC4GID.js";
194
194
  import {
195
195
  collapseMindmapTree
@@ -197,21 +197,21 @@ import {
197
197
  import {
198
198
  renderMindmap,
199
199
  renderMindmapForExport
200
- } from "./chunk-IHUOYDLN.js";
200
+ } from "./chunk-N5NQIZ56.js";
201
201
  import {
202
202
  layoutMindmap
203
203
  } from "./chunk-QMFIZQTB.js";
204
204
  import {
205
205
  renderClassDiagram,
206
206
  renderClassDiagramForExport
207
- } from "./chunk-ZMKCG3FT.js";
207
+ } from "./chunk-CHOK7NCJ.js";
208
208
  import {
209
209
  layoutClassDiagram
210
210
  } from "./chunk-LM3HY3VG.js";
211
211
  import {
212
212
  renderERDiagram,
213
213
  renderERDiagramForExport
214
- } from "./chunk-QI4Q5ZZH.js";
214
+ } from "./chunk-RV5A3EGI.js";
215
215
  import {
216
216
  layoutERDiagram
217
217
  } from "./chunk-5VMUVJO4.js";
@@ -228,16 +228,23 @@ import {
228
228
  collapseSketch,
229
229
  layoutSketch,
230
230
  sketchSlotToPx
231
- } from "./chunk-6DYZ2JM6.js";
231
+ } from "./chunk-FR5EVD2X.js";
232
232
  import {
233
+ CONTAINER_FILL_OPACITY,
234
+ CONTAINER_STROKE_OPACITY,
235
+ CONTAINER_STROKE_WIDTH,
236
+ SKETCH_VISUALS,
233
237
  renderSketch,
234
238
  renderSketchForExport,
235
- sketchEdgeGeometry
236
- } from "./chunk-U7AO6FRL.js";
239
+ sketchColors,
240
+ sketchContainerFill,
241
+ sketchEdgeGeometry,
242
+ sketchNeutralFill
243
+ } from "./chunk-H7BYMIVK.js";
237
244
  import {
238
245
  renderBoxesAndLines,
239
246
  renderBoxesAndLinesForExport
240
- } from "./chunk-7EZ5AKBK.js";
247
+ } from "./chunk-LYJ53DBK.js";
241
248
  import "./chunk-Q74GP3GK.js";
242
249
  import {
243
250
  layoutBoxesAndLines
@@ -251,7 +258,7 @@ import "./chunk-5DH3KYFH.js";
251
258
  import {
252
259
  renderVersionControl,
253
260
  renderVersionControlForExport
254
- } from "./chunk-IFC3JXCT.js";
261
+ } from "./chunk-3O7ZYVJV.js";
255
262
  import {
256
263
  collapseOrgTree,
257
264
  focusOrgTree
@@ -259,8 +266,8 @@ import {
259
266
  import {
260
267
  renderOrg,
261
268
  renderOrgForExport
262
- } from "./chunk-OUJG73YJ.js";
263
- import "./chunk-VV6HZQ5K.js";
269
+ } from "./chunk-CYMYZYLI.js";
270
+ import "./chunk-YM5RMLFO.js";
264
271
  import {
265
272
  layoutOrg
266
273
  } from "./chunk-NHQ7HUAS.js";
@@ -274,20 +281,20 @@ import "./chunk-BS7SV7C3.js";
274
281
  import {
275
282
  renderSitemap,
276
283
  renderSitemapForExport
277
- } from "./chunk-7G4XMHDB.js";
284
+ } from "./chunk-FF7LRT5L.js";
278
285
  import {
279
286
  computeCardArchive,
280
287
  computeCardMove,
281
288
  isArchiveColumn,
282
289
  renderKanban,
283
290
  renderKanbanForExport
284
- } from "./chunk-GEURKGZS.js";
291
+ } from "./chunk-V4NHFY22.js";
285
292
  import {
286
293
  clearEventLineMuted,
287
294
  focusEventLine,
288
295
  renderEventLine,
289
296
  renderEventLineForExport
290
- } from "./chunk-3LJNQ6LR.js";
297
+ } from "./chunk-CF3I5SOG.js";
291
298
  import "./chunk-NCT22MOD.js";
292
299
  import "./chunk-5GM6BZO7.js";
293
300
  import {
@@ -298,7 +305,7 @@ import "./chunk-FJ57274M.js";
298
305
  import {
299
306
  renderBody,
300
307
  renderBodyForExport
301
- } from "./chunk-Q6BAFS7I.js";
308
+ } from "./chunk-43AJKH2U.js";
302
309
  import {
303
310
  completeMapPlaces,
304
311
  completeMapRegions,
@@ -314,40 +321,53 @@ import {
314
321
  renderSlopeChart,
315
322
  renderVenn,
316
323
  renderWordCloud
317
- } from "./chunk-M3IVOGZE.js";
318
- import "./chunk-XCAEHWQB.js";
324
+ } from "./chunk-HDLRRY3N.js";
325
+ import "./chunk-OZOHREFQ.js";
319
326
  import "./chunk-EOYPX6SF.js";
320
327
  import {
321
328
  renderLegendSvg,
322
329
  renderLegendSvgFromConfig
323
- } from "./chunk-JL7BDLC6.js";
330
+ } from "./chunk-UH5YTZN7.js";
324
331
  import "./chunk-L65WI4HO.js";
325
332
  import {
326
333
  formatDateLabel,
327
334
  renderTimeline
328
- } from "./chunk-YVDBBWEP.js";
335
+ } from "./chunk-QXMHBIQG.js";
329
336
  import {
330
337
  computeTimeTicks
331
338
  } from "./chunk-YRYKTYMQ.js";
332
339
  import {
333
340
  ScaleContext
334
341
  } from "./chunk-24YPR5EH.js";
335
- import "./chunk-UBW53CNS.js";
342
+ import "./chunk-3E4YB6TY.js";
336
343
  import "./chunk-MG3DE3VO.js";
337
344
  import "./chunk-RU2HHHYA.js";
338
345
  import "./chunk-DEW62ON3.js";
339
346
  import {
340
347
  renderLegendD3
341
- } from "./chunk-QT5UMFPE.js";
348
+ } from "./chunk-U4DS2ODO.js";
342
349
  import {
343
350
  computeLegendLayout,
344
351
  controlsGroupCapsuleWidth,
345
- getLegendReservedHeight
346
- } from "./chunk-4SXHMFFP.js";
347
- import "./chunk-UTCPNJND.js";
348
- import {
352
+ getLegendReservedHeight,
353
+ legendEntryWidth
354
+ } from "./chunk-VRPV6QXR.js";
355
+ import {
356
+ DEFAULT_FONT_NAME,
357
+ FONT_FAMILY
358
+ } from "./chunk-53SEVJQM.js";
359
+ import {
360
+ LEGEND_CAPSULE_PAD,
361
+ LEGEND_DOT_R,
362
+ LEGEND_ENTRY_DOT_GAP,
363
+ LEGEND_ENTRY_FONT_SIZE,
364
+ LEGEND_ENTRY_TRAIL,
349
365
  LEGEND_GEAR_PILL_W,
350
- LEGEND_HEIGHT
366
+ LEGEND_GROUP_GAP,
367
+ LEGEND_HEIGHT,
368
+ LEGEND_MAX_ENTRY_ROWS,
369
+ LEGEND_PILL_FONT_SIZE,
370
+ LEGEND_PILL_PAD
351
371
  } from "./chunk-YT5ICQ4R.js";
352
372
  import "./chunk-MTGGOCND.js";
353
373
  import {
@@ -370,7 +390,7 @@ import {
370
390
  parseDgmo,
371
391
  parseDgmoChartType,
372
392
  parseVisualization
373
- } from "./chunk-R5JPMW2F.js";
393
+ } from "./chunk-FTTB64OJ.js";
374
394
  import {
375
395
  normalizePlace,
376
396
  parseClock,
@@ -460,8 +480,8 @@ import {
460
480
  SKETCH_SHAPE_KINDS,
461
481
  isSketchShapeKind,
462
482
  parseSketch
463
- } from "./chunk-TDHD3HNO.js";
464
- import "./chunk-RT7ACF77.js";
483
+ } from "./chunk-F4X5NVKY.js";
484
+ import "./chunk-EGY3TS62.js";
465
485
  import {
466
486
  parseSwimlane
467
487
  } from "./chunk-W7UBPARG.js";
@@ -504,7 +524,7 @@ import {
504
524
  INFRA_BEHAVIOR_KEYS,
505
525
  extractSymbols as extractSymbols4,
506
526
  parseInfra
507
- } from "./chunk-2NRIGEHZ.js";
527
+ } from "./chunk-46KVXDUJ.js";
508
528
  import {
509
529
  parseGantt
510
530
  } from "./chunk-TPN7RJOM.js";
@@ -524,7 +544,7 @@ import {
524
544
  extractSymbols,
525
545
  looksLikeFlowchart,
526
546
  parseFlowchart
527
- } from "./chunk-DU3OIBQE.js";
547
+ } from "./chunk-NWNSXHA5.js";
528
548
  import "./chunk-7TF3QOOD.js";
529
549
  import {
530
550
  looksLikeState,
@@ -535,7 +555,7 @@ import {
535
555
  extractSymbols as extractSymbols2,
536
556
  looksLikeClassDiagram,
537
557
  parseClassDiagram
538
- } from "./chunk-SUA56ZSB.js";
558
+ } from "./chunk-LTTZX6RD.js";
539
559
  import {
540
560
  extractSymbols as extractSymbols3,
541
561
  looksLikeERDiagram,
@@ -572,6 +592,8 @@ import {
572
592
  } from "./chunk-DY7KDZUF.js";
573
593
  import {
574
594
  autoTagColorCycle,
595
+ resolveActiveTagGroup,
596
+ resolveTagColor,
575
597
  tagAttrKey
576
598
  } from "./chunk-76LHNLGX.js";
577
599
  import {
@@ -682,6 +704,167 @@ function collapseBoxesAndLines(parsed, collapsedGroups) {
682
704
  };
683
705
  }
684
706
 
707
+ // src/sketch/emit.ts
708
+ var LIFTED_KEYS = /* @__PURE__ */ new Set(["shape", "at", "as"]);
709
+ function atText(at) {
710
+ return at ? `at: ${String(at.c)} ${String(at.r)}` : null;
711
+ }
712
+ function safeValue(value) {
713
+ return value.includes(",") ? value.replace(/,/g, " \u2014") : value;
714
+ }
715
+ function tailFor(thing, at, extra = []) {
716
+ const alias = thing.alias !== void 0 ? ` as ${thing.alias}` : "";
717
+ const parts = [];
718
+ const atPart = atText(at);
719
+ if (atPart) parts.push(atPart);
720
+ for (const [k, v] of Object.entries(thing.metadata)) {
721
+ if (LIFTED_KEYS.has(k)) continue;
722
+ parts.push(`${k}: ${safeValue(v)}`);
723
+ }
724
+ parts.push(...extra);
725
+ return `${alias}${parts.length > 0 ? ` ${parts.join(", ")}` : ""}`;
726
+ }
727
+ function shapeLine(node, indent) {
728
+ const extra = [];
729
+ if (node.shape !== "rectangle") extra.push(`shape: ${node.shape}`);
730
+ const out = [`${indent}${node.label}${tailFor(node, node.at, extra)}`];
731
+ if (node.description !== void 0 && node.description !== "") {
732
+ for (const line of node.description.split("\n")) {
733
+ out.push(`${indent} > ${line}`);
734
+ }
735
+ }
736
+ return out;
737
+ }
738
+ function boxLine(box, indent) {
739
+ const extra = box.collapsed ? ["collapsed"] : [];
740
+ return `${indent}[${box.label}]${tailFor(box, box.at, extra)}`;
741
+ }
742
+ function edgeText(edge, target) {
743
+ const d = edge.dashed;
744
+ const label = edge.label ?? "";
745
+ const tail = tailFor(edge, null);
746
+ if (label === "") {
747
+ if (edge.heads === "none") return `${d ? "~~" : "--"} ${target}${tail}`;
748
+ if (edge.heads === "both") return `${d ? "<~>" : "<->"} ${target}${tail}`;
749
+ return `${d ? "~>" : "->"} ${target}${tail}`;
750
+ }
751
+ const l = safeValue(label);
752
+ if (edge.heads === "none")
753
+ return `${d ? "~" : "-"}${l}${d ? "~" : "-"} ${target}${tail}`;
754
+ if (edge.heads === "both")
755
+ return `${d ? "<~" : "<-"}${l}${d ? "~>" : "->"} ${target}${tail}`;
756
+ return `${d ? "~" : "-"}${l}${d ? "~>" : "->"} ${target}${tail}`;
757
+ }
758
+ function emitSketch(parsed) {
759
+ const lines = [];
760
+ lines.push(parsed.title ? `sketch ${parsed.title}` : "sketch");
761
+ const o = parsed.options;
762
+ if (o.noLegend) lines.push("no-legend");
763
+ if (o.legendInline === true) lines.push("legend-inline");
764
+ if (o.fillMode === "solid") lines.push("fill-solid");
765
+ if (o.fillMode === "outline") lines.push("fill-outline");
766
+ if (o.noDescriptions) lines.push("no-descriptions");
767
+ for (const group of parsed.tagGroups) {
768
+ lines.push("");
769
+ lines.push(
770
+ group.alias !== void 0 ? `tag ${group.name} as ${group.alias}` : `tag ${group.name}`
771
+ );
772
+ for (const entry of group.entries) {
773
+ const isDefault = group.defaultValue !== void 0 && entry.value === group.defaultValue;
774
+ const colour = entry.authoredColor === void 0 ? "" : ` ${entry.authoredColor}`;
775
+ lines.push(` ${entry.value}${colour}${isDefault ? " default" : ""}`);
776
+ }
777
+ }
778
+ const refOf = (id) => {
779
+ const node = parsed.nodes.find((n) => n.id === id);
780
+ if (node) return node.alias ?? node.label;
781
+ const box = parsed.boxes.find((b) => b.id === id);
782
+ if (box) return box.alias ?? `[${box.label}]`;
783
+ return id;
784
+ };
785
+ const edgesBySource = /* @__PURE__ */ new Map();
786
+ for (const edge of parsed.edges) {
787
+ const list = edgesBySource.get(edge.sourceId);
788
+ if (list) list.push(edge);
789
+ else edgesBySource.set(edge.sourceId, [edge]);
790
+ }
791
+ const emitEdgesFor = (id, indent) => {
792
+ for (const edge of edgesBySource.get(id) ?? []) {
793
+ lines.push(`${indent}${edgeText(edge, refOf(edge.targetId))}`);
794
+ }
795
+ };
796
+ const nodesByBox = /* @__PURE__ */ new Map();
797
+ const rootNodes = [];
798
+ for (const node of parsed.nodes) {
799
+ if (node.boxLabel === void 0) {
800
+ rootNodes.push(node);
801
+ continue;
802
+ }
803
+ const list = nodesByBox.get(node.boxLabel);
804
+ if (list) list.push(node);
805
+ else nodesByBox.set(node.boxLabel, [node]);
806
+ }
807
+ const emitBox = (box, depth) => {
808
+ const indent = " ".repeat(depth);
809
+ lines.push("");
810
+ lines.push(boxLine(box, indent));
811
+ emitEdgesFor(box.id, `${indent} `);
812
+ for (const node of nodesByBox.get(box.label) ?? []) {
813
+ lines.push(...shapeLine(node, `${indent} `));
814
+ emitEdgesFor(node.id, `${indent} `);
815
+ }
816
+ for (const childId of box.childBoxes) {
817
+ const child = parsed.boxes.find((b) => b.id === childId);
818
+ if (child) emitBox(child, depth + 1);
819
+ }
820
+ };
821
+ for (const node of rootNodes) {
822
+ lines.push("");
823
+ lines.push(...shapeLine(node, ""));
824
+ emitEdgesFor(node.id, " ");
825
+ }
826
+ for (const box of parsed.boxes) {
827
+ if (box.parentBoxId !== null) continue;
828
+ emitBox(box, 0);
829
+ }
830
+ return `${lines.join("\n")}
831
+ `;
832
+ }
833
+ function canonicalSketch(parsed) {
834
+ const nameOf = (id) => {
835
+ const node = parsed.nodes.find((n) => n.id === id);
836
+ if (node) return `n:${node.label}`;
837
+ const box = parsed.boxes.find((b) => b.id === id);
838
+ if (box) return `b:${box.label}`;
839
+ return `?:${id}`;
840
+ };
841
+ const meta = (m) => Object.entries(m).filter(([k]) => !LIFTED_KEYS.has(k)).sort(([a], [b]) => a.localeCompare(b)).map(([k, v]) => `${k}=${v}`).join(";");
842
+ return {
843
+ title: parsed.title,
844
+ options: JSON.stringify({
845
+ noLegend: parsed.options.noLegend,
846
+ legendInline: parsed.options.legendInline === true,
847
+ fillMode: parsed.options.fillMode ?? null,
848
+ noDescriptions: parsed.options.noDescriptions
849
+ }),
850
+ tags: parsed.tagGroups.map(
851
+ (g) => `${g.name}[${g.entries.map((e) => e.value).join("|")}]${g.defaultValue ?? ""}`
852
+ ).sort().join(","),
853
+ nodes: parsed.nodes.map(
854
+ (n) => `${n.label}|${n.shape}|${n.at ? `${String(n.at.c)},${String(n.at.r)}` : "-"}|${n.boxLabel ?? "-"}|${n.description ?? ""}|${meta(n.metadata)}`
855
+ ).sort(),
856
+ boxes: parsed.boxes.map(
857
+ (b) => `${b.label}|${b.at ? `${String(b.at.c)},${String(b.at.r)}` : "-"}|${String(b.collapsed)}|${b.parentBoxId === null ? "-" : parsed.boxes.find((x) => x.id === b.parentBoxId)?.label ?? "?"}|${meta(b.metadata)}`
858
+ ).sort(),
859
+ edges: parsed.edges.map(
860
+ (e) => `${nameOf(e.sourceId)}->${nameOf(e.targetId)}|${e.label ?? ""}|${e.heads}|${String(e.dashed)}`
861
+ ).sort()
862
+ };
863
+ }
864
+ function sameSketch(a, b) {
865
+ return JSON.stringify(canonicalSketch(a)) === JSON.stringify(canonicalSketch(b));
866
+ }
867
+
685
868
  // src/boxes-and-lines/focus.ts
686
869
  var GROUP_PREFIX = "__group_";
687
870
  var groupKey = (label) => `${GROUP_PREFIX}${label}`;
@@ -1842,11 +2025,25 @@ export {
1842
2025
  ALL_CHART_TYPES,
1843
2026
  ARROW_DIAGNOSTIC_CODES,
1844
2027
  CHART_TYPE_DESCRIPTIONS,
2028
+ CONTAINER_FILL_OPACITY,
2029
+ CONTAINER_STROKE_OPACITY,
2030
+ CONTAINER_STROKE_WIDTH,
2031
+ DEFAULT_FONT_NAME,
2032
+ FONT_FAMILY,
1845
2033
  INFRA_BEHAVIOR_KEYS,
1846
2034
  INVALID_COLOR_CODE,
1847
2035
  INVALID_CSS_COLOR_HEX,
2036
+ LEGEND_CAPSULE_PAD,
2037
+ LEGEND_DOT_R,
2038
+ LEGEND_ENTRY_DOT_GAP,
2039
+ LEGEND_ENTRY_FONT_SIZE,
2040
+ LEGEND_ENTRY_TRAIL,
1848
2041
  LEGEND_GEAR_PILL_W,
2042
+ LEGEND_GROUP_GAP,
1849
2043
  LEGEND_HEIGHT,
2044
+ LEGEND_MAX_ENTRY_ROWS,
2045
+ LEGEND_PILL_FONT_SIZE,
2046
+ LEGEND_PILL_PAD,
1850
2047
  RACI_ERROR_CODES,
1851
2048
  VARIANTS as RACI_VARIANTS,
1852
2049
  RACI_WARNING_CODES,
@@ -1862,6 +2059,7 @@ export {
1862
2059
  SKETCH_SHAPE_KINDS,
1863
2060
  SKETCH_SLOT_X,
1864
2061
  SKETCH_SLOT_Y,
2062
+ SKETCH_VISUALS,
1865
2063
  ScaleContext,
1866
2064
  addDurationToDate,
1867
2065
  albersSkewFallback,
@@ -1878,6 +2076,7 @@ export {
1878
2076
  buildSimulationContext,
1879
2077
  buildTagLaneRowList,
1880
2078
  calculateSchedule,
2079
+ canonicalSketch,
1881
2080
  catppuccinPalette,
1882
2081
  chartTypeParsers,
1883
2082
  chartTypes,
@@ -1908,6 +2107,7 @@ export {
1908
2107
  decodeDiagramUrl,
1909
2108
  decodeViewState,
1910
2109
  displayName,
2110
+ emitSketch,
1911
2111
  encodeDiagramUrl,
1912
2112
  encodeViewState,
1913
2113
  extractSymbols2 as extractClassSymbols,
@@ -1972,6 +2172,7 @@ export {
1972
2172
  layoutTreemap,
1973
2173
  layoutTreemapRadial,
1974
2174
  layoutWireframe,
2175
+ legendEntryWidth,
1975
2176
  loadMapData,
1976
2177
  looksLikeClassDiagram,
1977
2178
  looksLikeERDiagram,
@@ -2136,13 +2337,16 @@ export {
2136
2337
  renderVersionControlForExport,
2137
2338
  renderWireframe,
2138
2339
  renderWordCloud,
2340
+ resolveActiveTagGroup,
2139
2341
  resolveColor,
2140
2342
  resolveColorWithDiagnostic,
2141
2343
  resolveMap,
2142
2344
  resolveOrgImports,
2143
2345
  resolvePlace,
2346
+ resolveTagColor,
2144
2347
  resolveTaskName,
2145
2348
  rollUpContextRelationships,
2349
+ sameSketch,
2146
2350
  sampleBetaPert,
2147
2351
  searchMapLocations,
2148
2352
  searchZones,
@@ -2151,7 +2355,10 @@ export {
2151
2355
  shapeFill,
2152
2356
  simulateCanonical,
2153
2357
  simulateFast,
2358
+ sketchColors,
2359
+ sketchContainerFill,
2154
2360
  sketchEdgeGeometry,
2361
+ sketchNeutralFill,
2155
2362
  sketchSlotToPx,
2156
2363
  slatePalette,
2157
2364
  startClocks,
package/dist/block.css CHANGED
@@ -1,8 +1,19 @@
1
1
  /* @diagrammo/dgmo block — standard embed chrome.
2
- * Override the [data-theme="dark"] selectors if your site uses .dark or
3
- * another color-mode convention. */
2
+ * Dark mode is keyed on a data-theme="dark" attribute (Starlight, Docusaurus)
3
+ * AND an html.dark class (Tailwind, next-themes, VitePress), so all of those
4
+ * work as shipped. Add your own selector if your site marks dark a third way.
5
+ *
6
+ * No selector is spelled in bracket form anywhere in these comments on
7
+ * purpose: the adapters that re-key the attribute rules onto another host's
8
+ * signal match that exact substring, and a mention inside a comment would be
9
+ * swallowed into a rule they then emit as garbage. */
4
10
 
5
- /* === Color-mode visibility (dual-render) === */
11
+ /* === Color-mode visibility (dual-render) ===
12
+ * The dark wrapper also carries the "hidden" ATTRIBUTE, so a page that never
13
+ * loaded this stylesheet shows the light diagram rather than both of them.
14
+ * Every rule below is author-origin and therefore still overrides it.
15
+ * Keep the two host conventions in separate rule blocks — the adapters
16
+ * rewrite by literal replace and a folded rule would half-rewrite. */
6
17
  .dgmo-dark {
7
18
  display: none;
8
19
  }
@@ -12,6 +23,12 @@
12
23
  [data-theme="dark"] .dgmo-dark {
13
24
  display: block;
14
25
  }
26
+ html.dark .dgmo-light {
27
+ display: none;
28
+ }
29
+ html.dark .dgmo-dark {
30
+ display: block;
31
+ }
15
32
 
16
33
  /* === Diagram sizing ===
17
34
  * SVGs are emitted with viewBox only (no fixed width/height). Force them to