@diagrammo/dgmo 0.49.0 → 0.50.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 (192) hide show
  1. package/.cursorrules +6 -2
  2. package/.github/copilot-instructions.md +6 -2
  3. package/.windsurfrules +6 -2
  4. package/SKILL.md +6 -2
  5. package/dist/advanced.d.ts +419 -12
  6. package/dist/advanced.js +557 -195
  7. package/dist/auto.js +129 -119
  8. package/dist/auto.mjs +11543 -4815
  9. package/dist/block.js +145 -48
  10. package/dist/{charts-d3-EW3YQTEA.js → charts-d3-DKUD7MQE.js} +5 -5
  11. package/dist/{chunk-5FGDJIJX.js → chunk-2C56LEML.js} +3 -3
  12. package/dist/{chunk-35BBZDFE.js → chunk-2JJ2KNPI.js} +4 -4
  13. package/dist/{chunk-ZTLWVRNS.js → chunk-2QYTMIRR.js} +2 -2
  14. package/dist/{chunk-VC3TR4NL.js → chunk-3G6TMNVF.js} +3 -3
  15. package/dist/{chunk-ZDUQGL3N.js → chunk-3LKM6FMW.js} +2 -2
  16. package/dist/{chunk-4BD7EVPK.js → chunk-3P2DKJCG.js} +2 -2
  17. package/dist/{chunk-6CLKNXVP.js → chunk-3TDRHT4J.js} +457 -78
  18. package/dist/chunk-3XPUDB7B.js +420 -0
  19. package/dist/{chunk-DDTJ5N7Q.js → chunk-3ZPC476N.js} +6 -6
  20. package/dist/{chunk-BPIJLRYE.js → chunk-4BMJQFNK.js} +3 -3
  21. package/dist/{chunk-N4J5KGWG.js → chunk-4S723I74.js} +8 -8
  22. package/dist/{chunk-4YNP6O47.js → chunk-5JSWBPZZ.js} +3 -3
  23. package/dist/{chunk-KUBBJ2CD.js → chunk-5Z736BSU.js} +6 -6
  24. package/dist/{chunk-MJCG5K2O.js → chunk-6BFZKBGD.js} +2 -2
  25. package/dist/{chunk-XCC2RENT.js → chunk-6IAA2QQ2.js} +2 -2
  26. package/dist/{chunk-FUCAB3KQ.js → chunk-6M5PJFQG.js} +3 -3
  27. package/dist/{chunk-T7IKPCMI.js → chunk-6X4AKWLF.js} +3 -3
  28. package/dist/{chunk-JFPY3UJ7.js → chunk-6ZT4U37Q.js} +8 -8
  29. package/dist/{chunk-CLR4A2N2.js → chunk-7G2ER4CY.js} +4 -4
  30. package/dist/chunk-7PQYTZMA.js +681 -0
  31. package/dist/{chunk-LG4TWW4U.js → chunk-7RB5Q6MB.js} +8 -8
  32. package/dist/{chunk-7OVSJI2V.js → chunk-A3WQVFBS.js} +3 -3
  33. package/dist/{chunk-X2CH42BN.js → chunk-ASS5YYIZ.js} +7 -7
  34. package/dist/{chunk-3NFJWFNP.js → chunk-BDXC7MDK.js} +1045 -124
  35. package/dist/chunk-BTUTZMPT.js +482 -0
  36. package/dist/{chunk-UVCXZEGU.js → chunk-CVV36CWI.js} +2 -2
  37. package/dist/{chunk-TC3YWBFO.js → chunk-DMJJ3CEQ.js} +29 -8
  38. package/dist/{chunk-NVT6C2VE.js → chunk-EJTKV7CY.js} +4 -4
  39. package/dist/{chunk-4NQ3IKUM.js → chunk-ER5SCQWQ.js} +5 -5
  40. package/dist/{chunk-7VLUGEMJ.js → chunk-F5UDBSJY.js} +4 -4
  41. package/dist/{chunk-IHLSHCPZ.js → chunk-FAL7NOK3.js} +5 -5
  42. package/dist/{chunk-YRVLP7UU.js → chunk-FB2WHOEQ.js} +4 -4
  43. package/dist/chunk-FL4IOQ37.js +379 -0
  44. package/dist/{chunk-6VE3VLWM.js → chunk-GBE54KY6.js} +6 -5
  45. package/dist/{chunk-ZXL6MB4R.js → chunk-GL5UZ6NY.js} +3 -3
  46. package/dist/{chunk-3BIAFYD2.js → chunk-GPWHQ5FJ.js} +2 -2
  47. package/dist/chunk-GROQGHCT.js +960 -0
  48. package/dist/{chunk-GB3YZTAM.js → chunk-H73FP42Q.js} +5 -5
  49. package/dist/{chunk-O5MQPK7E.js → chunk-I4IFRCUB.js} +3 -3
  50. package/dist/{chunk-IUK7AGD4.js → chunk-I7F2A35O.js} +2 -2
  51. package/dist/{chunk-YTN572Q2.js → chunk-IA3FJYWR.js} +2 -2
  52. package/dist/{chunk-RI4NIMFP.js → chunk-JFYIP7XU.js} +75 -35
  53. package/dist/{chunk-UWDO3O52.js → chunk-JZNMXEIV.js} +2 -2
  54. package/dist/chunk-KJXIHOVL.js +940 -0
  55. package/dist/{chunk-26RVGM44.js → chunk-L2ZTFHAY.js} +2 -2
  56. package/dist/{chunk-PU3AUQPA.js → chunk-M5RXSRO2.js} +2 -2
  57. package/dist/{chunk-XKTN7CZF.js → chunk-NFFIKVNO.js} +4 -4
  58. package/dist/{chunk-SVDWQGX2.js → chunk-NISQC5KW.js} +139 -78
  59. package/dist/{chunk-4HVNZ7WF.js → chunk-O4VUFXIH.js} +3 -3
  60. package/dist/{chunk-F743CM2N.js → chunk-O76UD6VJ.js} +3 -3
  61. package/dist/{chunk-TLKMTQYL.js → chunk-OHQEMBLI.js} +3 -3
  62. package/dist/{chunk-BGJV5ATD.js → chunk-ONA5KPV3.js} +2 -2
  63. package/dist/{chunk-ZNQX6QWH.js → chunk-OTAL43EH.js} +6 -2
  64. package/dist/{chunk-FMKTYMP4.js → chunk-OTP5KVLO.js} +3 -3
  65. package/dist/{chunk-5ZZLLBFK.js → chunk-PGEGPSCZ.js} +2 -2
  66. package/dist/{chunk-XJ7J6WOO.js → chunk-PJUGRJHJ.js} +4 -4
  67. package/dist/{chunk-6SA7FJE4.js → chunk-PLZI6KPM.js} +10 -10
  68. package/dist/{chunk-AJ2PEY7J.js → chunk-PMN3Q7RJ.js} +2 -2
  69. package/dist/chunk-Q4V4XQWV.js +158 -0
  70. package/dist/{chunk-5XCM7UUW.js → chunk-QDFNCATJ.js} +99 -35
  71. package/dist/{chunk-CEHZOPGM.js → chunk-QFQ35BTO.js} +2 -2
  72. package/dist/{chunk-4UDKKGHH.js → chunk-QUJGFNFN.js} +2 -2
  73. package/dist/{chunk-IBC35BTK.js → chunk-R56LASIN.js} +2 -2
  74. package/dist/{chunk-SJEGO2QL.js → chunk-RV26LTUU.js} +4 -4
  75. package/dist/chunk-RV6A2B5S.js +354 -0
  76. package/dist/{chunk-65RTDUZH.js → chunk-S5GRONXL.js} +3 -3
  77. package/dist/{chunk-K6HNAY5V.js → chunk-SCHXJTZL.js} +2 -2
  78. package/dist/{chunk-ALRHIR6I.js → chunk-SGFZZAUO.js} +4 -4
  79. package/dist/{chunk-KV6Y2HE6.js → chunk-SU2VBK4L.js} +4 -4
  80. package/dist/{chunk-D5AVQCDN.js → chunk-T4BRO3Z6.js} +3 -3
  81. package/dist/{chunk-IFK3GIUW.js → chunk-TSA237IM.js} +2 -2
  82. package/dist/{chunk-SQDFK5ZQ.js → chunk-TWCLK2GA.js} +3 -3
  83. package/dist/{chunk-DKEPS5LH.js → chunk-U2HGPLZS.js} +36 -2
  84. package/dist/{chunk-EYN7VFKL.js → chunk-URSQLCTR.js} +3 -3
  85. package/dist/{chunk-BCT5G2VN.js → chunk-UUS2GIJZ.js} +5 -5
  86. package/dist/{chunk-LVHPTBO3.js → chunk-UXOSVCLJ.js} +4 -4
  87. package/dist/{chunk-HBVD67XG.js → chunk-WCUHAQKB.js} +2 -2
  88. package/dist/{chunk-YYX3SU6H.js → chunk-WWN566I7.js} +257 -101
  89. package/dist/{chunk-YM2BSPYW.js → chunk-X2NMFTG3.js} +2 -2
  90. package/dist/{chunk-ZREZOIGS.js → chunk-XCLHOZAM.js} +6 -6
  91. package/dist/{chunk-KQAEKMIX.js → chunk-XDXNDSKO.js} +2 -2
  92. package/dist/{chunk-RTERS6S5.js → chunk-XMVQ5F4M.js} +4 -4
  93. package/dist/{chunk-4FIV4K4Z.js → chunk-YA7D2N2O.js} +7 -7
  94. package/dist/{chunk-B57V3DWN.js → chunk-YB3FW24O.js} +3 -3
  95. package/dist/chunk-YNRDWYZP.js +295 -0
  96. package/dist/{chunk-2WMBWZY2.js → chunk-YZLMKW4T.js} +3 -3
  97. package/dist/{chunk-SGHSY3LU.js → chunk-Z6XJQ6KO.js} +81 -6
  98. package/dist/cli.cjs +153 -144
  99. package/dist/clock.d.ts +10 -0
  100. package/dist/clock.js +235 -0
  101. package/dist/countdown.d.ts +12 -0
  102. package/dist/countdown.js +450 -0
  103. package/dist/dgmo-router-QOMFCOOV.js +84 -0
  104. package/dist/{dimensions-WSIJXT5Q.js → dimensions-P5FSX2QN.js} +5 -5
  105. package/dist/editor.js +39 -1
  106. package/dist/element.js +131 -121
  107. package/dist/element.mjs +11543 -4815
  108. package/dist/{flowchart-parser-IVZN7CQN.js → flowchart-parser-OE4WHLTF.js} +4 -4
  109. package/dist/{flowchart-renderer-GMI2U3DD.js → flowchart-renderer-GPCSMTOR.js} +6 -6
  110. package/dist/highlight.d.ts +17 -1
  111. package/dist/highlight.js +156 -5
  112. package/dist/index.js +50 -45
  113. package/dist/{layout-HQMBPJVS.js → layout-46366KBT.js} +2 -2
  114. package/dist/{layout-D42XE4RE.js → layout-5BG6DFCU.js} +3 -3
  115. package/dist/{layout-K2ZN3Q42.js → layout-T3OZU5QW.js} +4 -4
  116. package/dist/{layout-S3EK4IYO.js → layout-TJIWF7EM.js} +4 -4
  117. package/dist/{layout-GZ2CWONU.js → layout-VYELEAW7.js} +4 -4
  118. package/dist/{layout-4Z5JM7PT.js → layout-WZHNDT2O.js} +4 -4
  119. package/dist/{parser-OBQG655V.js → parser-45DENHFZ.js} +4 -4
  120. package/dist/{parser-MCJWF5G3.js → parser-4AI5ZN5F.js} +3 -3
  121. package/dist/{parser-SMBJO3XN.js → parser-4P36TUVD.js} +4 -4
  122. package/dist/{parser-ZYC3XGNS.js → parser-5AURY4A6.js} +4 -4
  123. package/dist/{parser-WISPH7LW.js → parser-A2BEFMGK.js} +4 -4
  124. package/dist/parser-B5FVS7O6.js +11 -0
  125. package/dist/{parser-KPMN5KKE.js → parser-C2HF2C2E.js} +4 -4
  126. package/dist/parser-CSFUN3CT.js +14 -0
  127. package/dist/{parser-TITK4YW6.js → parser-D3QT6GWN.js} +5 -5
  128. package/dist/{parser-ZKF5K2H2.js → parser-D5637H5H.js} +4 -4
  129. package/dist/{parser-IKZFTLOJ.js → parser-DFFEDKHH.js} +3 -3
  130. package/dist/parser-DOKMZXVZ.js +13 -0
  131. package/dist/parser-FMPCVFRK.js +15 -0
  132. package/dist/{parser-UBGPTIZD.js → parser-HYRTF3DO.js} +3 -3
  133. package/dist/{parser-TNYX5S7E.js → parser-I2UIJKVQ.js} +4 -4
  134. package/dist/{parser-K647FRI4.js → parser-IBWNAPY4.js} +3 -3
  135. package/dist/{parser-JD7OQ2E6.js → parser-KUQWRPIT.js} +4 -4
  136. package/dist/{parser-HVJFTOXL.js → parser-LWKKBNSA.js} +3 -3
  137. package/dist/{parser-4ROBKVUR.js → parser-O4QFCUW7.js} +5 -5
  138. package/dist/{parser-BL7Z72EY.js → parser-PGMQDD4G.js} +4 -4
  139. package/dist/{parser-QJYS7KQQ.js → parser-Q4QKCIWQ.js} +4 -4
  140. package/dist/{parser-UGA23PYK.js → parser-QTOB4KFL.js} +4 -4
  141. package/dist/{parser-DERPY5KC.js → parser-QYYM4QVW.js} +4 -4
  142. package/dist/{parser-GFSOPDB7.js → parser-RZMQP7MM.js} +4 -4
  143. package/dist/parser-RZPVAQVX.js +11 -0
  144. package/dist/parser-SOUJOEYI.js +13 -0
  145. package/dist/{parser-MBJSBTL5.js → parser-UQE5OWZI.js} +5 -5
  146. package/dist/{parser-MRBPXXIV.js → parser-WAV5JRPT.js} +4 -4
  147. package/dist/{parser-4BKIFG2C.js → parser-YLKYBRIT.js} +5 -5
  148. package/dist/{parser-D6ONJQFR.js → parser-YS7TOS2K.js} +3 -3
  149. package/dist/{parser-CLMFZWCC.js → parser-ZSOWUBML.js} +5 -5
  150. package/dist/{parser-XWUDFJ7P.js → parser-ZTBATMLX.js} +4 -4
  151. package/dist/{renderer-LWGJFT3D.js → renderer-35HSIDMZ.js} +5 -5
  152. package/dist/{renderer-BB5PREMY.js → renderer-4ITCHBT7.js} +4 -4
  153. package/dist/{renderer-YHXPN3GF.js → renderer-67NPCBIS.js} +7 -7
  154. package/dist/{renderer-TPIBXNOS.js → renderer-6GHYK7DX.js} +6 -6
  155. package/dist/{renderer-VICQ4WNY.js → renderer-6RNGHC5Z.js} +5 -5
  156. package/dist/renderer-72LGR2YF.js +14 -0
  157. package/dist/{renderer-W5RMOURB.js → renderer-7SWMIFMM.js} +6 -6
  158. package/dist/{renderer-6L3NBEY5.js → renderer-BBCEFILK.js} +6 -6
  159. package/dist/{renderer-VFUVRNLK.js → renderer-BSW7SRIZ.js} +4 -4
  160. package/dist/{renderer-CGW7QPNA.js → renderer-BY533UWU.js} +7 -7
  161. package/dist/{renderer-V3JEMWMM.js → renderer-BZSBPTZJ.js} +6 -6
  162. package/dist/{renderer-DKESNMU5.js → renderer-CXUC4KAD.js} +6 -6
  163. package/dist/{renderer-XEKIRPI6.js → renderer-FZUKFUNZ.js} +5 -5
  164. package/dist/renderer-G2NLGNKF.js +17 -0
  165. package/dist/{renderer-THD6V5TL.js → renderer-GO3FE3RA.js} +9 -7
  166. package/dist/{renderer-ROV756WT.js → renderer-HPGR6USK.js} +5 -5
  167. package/dist/renderer-ICJN2SA2.js +24 -0
  168. package/dist/{renderer-4IUPINAE.js → renderer-INEXO7B6.js} +7 -7
  169. package/dist/{renderer-SQ3JUAI7.js → renderer-KDYCFRBX.js} +6 -6
  170. package/dist/renderer-KY4KQBTF.js +19 -0
  171. package/dist/{renderer-MJDDU27W.js → renderer-LBN65V45.js} +10 -10
  172. package/dist/{renderer-UZF3JROD.js → renderer-MGBWOCXG.js} +8 -8
  173. package/dist/{renderer-MFJ7HY2H.js → renderer-O4JKUGKO.js} +5 -5
  174. package/dist/{renderer-QL5KO6SK.js → renderer-OOGFODWP.js} +7 -7
  175. package/dist/{renderer-A5VFZQQK.js → renderer-Q6ZKPLS6.js} +6 -6
  176. package/dist/{renderer-TYXRHMRI.js → renderer-SZQ326M5.js} +9 -9
  177. package/dist/{renderer-6T3KK4S3.js → renderer-TKG6LS4U.js} +7 -7
  178. package/dist/{renderer-QNHUXCRL.js → renderer-TQMZGDAX.js} +9 -9
  179. package/dist/{renderer-radial-MHO2VDXN.js → renderer-radial-JELMHQ24.js} +6 -6
  180. package/dist/{state-parser-RX3GXOIB.js → state-parser-3REXRK3R.js} +4 -4
  181. package/dist/{state-renderer-AJUKGNWU.js → state-renderer-XYLNRWXR.js} +6 -6
  182. package/docs/ai-integration.md +6 -2
  183. package/docs/language-reference.md +253 -22
  184. package/gallery/fixtures/body.dgmo +17 -0
  185. package/gallery/fixtures/bracket.dgmo +30 -0
  186. package/gallery/fixtures/clock.dgmo +8 -0
  187. package/gallery/fixtures/countdown.dgmo +3 -0
  188. package/gallery/fixtures/goal.dgmo +4 -0
  189. package/package.json +12 -4
  190. package/dist/dgmo-router-ODKPEJ3P.js +0 -79
  191. package/dist/parser-667RGSUW.js +0 -13
  192. package/dist/parser-J3P2D6IP.js +0 -13
@@ -217,10 +217,14 @@ var ALL_CHART_TYPES = /* @__PURE__ */ new Set([
217
217
  "ring",
218
218
  "treemap",
219
219
  "block",
220
+ "goal",
221
+ "countdown",
222
+ "clock",
220
223
  "sketch",
221
224
  "raci",
222
225
  "map",
223
- "family"
226
+ "family",
227
+ "bracket"
224
228
  ]);
225
229
  function measureIndent(line) {
226
230
  let indent = 0;
@@ -671,4 +675,4 @@ export {
671
675
  splitNameAndMeta,
672
676
  warnUnknownMetaKeys
673
677
  };
674
- //# sourceMappingURL=chunk-ZNQX6QWH.js.map
678
+ //# sourceMappingURL=chunk-OTAL43EH.js.map
@@ -7,7 +7,7 @@ import {
7
7
  tagAttrKey,
8
8
  validateTagGroupNames,
9
9
  validateTagValues
10
- } from "./chunk-HBVD67XG.js";
10
+ } from "./chunk-WCUHAQKB.js";
11
11
  import {
12
12
  TREEMAP_REGISTRY,
13
13
  extractColor,
@@ -18,7 +18,7 @@ import {
18
18
  stripQuotes,
19
19
  warnUnknownMetaKeys,
20
20
  withTagAliases
21
- } from "./chunk-ZNQX6QWH.js";
21
+ } from "./chunk-OTAL43EH.js";
22
22
  import {
23
23
  emit,
24
24
  formatDgmoError,
@@ -377,4 +377,4 @@ export {
377
377
  TREEMAP_DIAGNOSTICS,
378
378
  parseTreemap
379
379
  };
380
- //# sourceMappingURL=chunk-FMKTYMP4.js.map
380
+ //# sourceMappingURL=chunk-OTP5KVLO.js.map
@@ -10,7 +10,7 @@ import {
10
10
  splitNameAndMeta,
11
11
  tryParseSharedOption,
12
12
  warnUnknownMetaKeys
13
- } from "./chunk-ZNQX6QWH.js";
13
+ } from "./chunk-OTAL43EH.js";
14
14
  import {
15
15
  resolveColorWithDiagnostic
16
16
  } from "./chunk-TLVIHFRO.js";
@@ -952,4 +952,4 @@ export {
952
952
  parseRaci,
953
953
  allTasks
954
954
  };
955
- //# sourceMappingURL=chunk-5ZZLLBFK.js.map
955
+ //# sourceMappingURL=chunk-PGEGPSCZ.js.map
@@ -21,7 +21,7 @@ import {
21
21
  } from "./chunk-YYVTBZZC.js";
22
22
  import {
23
23
  renderIntegratedLegend
24
- } from "./chunk-4UDKKGHH.js";
24
+ } from "./chunk-QUJGFNFN.js";
25
25
  import {
26
26
  FONT_FAMILY
27
27
  } from "./chunk-6KFWC4CO.js";
@@ -32,7 +32,7 @@ import {
32
32
  } from "./chunk-5LWQH6QV.js";
33
33
  import {
34
34
  parseJourneyMap
35
- } from "./chunk-2WMBWZY2.js";
35
+ } from "./chunk-YZLMKW4T.js";
36
36
  import {
37
37
  contrastText,
38
38
  mix,
@@ -41,7 +41,7 @@ import {
41
41
  import {
42
42
  resolveActiveTagGroup,
43
43
  tagAttrKey
44
- } from "./chunk-HBVD67XG.js";
44
+ } from "./chunk-WCUHAQKB.js";
45
45
 
46
46
  // src/journey-map/renderer.ts
47
47
  import * as d3 from "d3-selection";
@@ -848,4 +848,4 @@ export {
848
848
  renderJourneyMap,
849
849
  renderJourneyMapForExport
850
850
  };
851
- //# sourceMappingURL=chunk-XJ7J6WOO.js.map
851
+ //# sourceMappingURL=chunk-PJUGRJHJ.js.map
@@ -1,9 +1,12 @@
1
- import {
2
- renderNodeCard
3
- } from "./chunk-AHGF2YYA.js";
4
1
  import {
5
2
  renderInlineText
6
3
  } from "./chunk-3HDBAXF5.js";
4
+ import {
5
+ wrapDescriptionLines
6
+ } from "./chunk-BMR4CIEO.js";
7
+ import {
8
+ renderNodeCard
9
+ } from "./chunk-AHGF2YYA.js";
7
10
  import {
8
11
  CARD_RADIUS,
9
12
  HEADER_HEIGHT,
@@ -11,15 +14,12 @@ import {
11
14
  NODE_STROKE_WIDTH,
12
15
  SEPARATOR_GAP
13
16
  } from "./chunk-3CIOJ5YJ.js";
14
- import {
15
- wrapDescriptionLines
16
- } from "./chunk-BMR4CIEO.js";
17
17
  import {
18
18
  formatDateLabel
19
- } from "./chunk-ZREZOIGS.js";
19
+ } from "./chunk-XCLHOZAM.js";
20
20
  import {
21
21
  renderIntegratedLegend
22
- } from "./chunk-4UDKKGHH.js";
22
+ } from "./chunk-QUJGFNFN.js";
23
23
  import {
24
24
  TITLE_FONT_SIZE,
25
25
  TITLE_FONT_WEIGHT,
@@ -41,7 +41,7 @@ import {
41
41
  import {
42
42
  resolveActiveTagGroup,
43
43
  resolveTagColor
44
- } from "./chunk-HBVD67XG.js";
44
+ } from "./chunk-WCUHAQKB.js";
45
45
  import {
46
46
  resolveColor
47
47
  } from "./chunk-TLVIHFRO.js";
@@ -987,4 +987,4 @@ export {
987
987
  focusEventLine,
988
988
  renderEventLineForExport
989
989
  };
990
- //# sourceMappingURL=chunk-6SA7FJE4.js.map
990
+ //# sourceMappingURL=chunk-PLZI6KPM.js.map
@@ -9,7 +9,7 @@ import {
9
9
  } from "./chunk-YYVTBZZC.js";
10
10
  import {
11
11
  renderIntegratedLegend
12
- } from "./chunk-4UDKKGHH.js";
12
+ } from "./chunk-QUJGFNFN.js";
13
13
  import {
14
14
  TITLE_FONT_SIZE,
15
15
  TITLE_FONT_WEIGHT,
@@ -964,4 +964,4 @@ export {
964
964
  renderCycle,
965
965
  renderCycleForExport
966
966
  };
967
- //# sourceMappingURL=chunk-AJ2PEY7J.js.map
967
+ //# sourceMappingURL=chunk-PMN3Q7RJ.js.map
@@ -0,0 +1,158 @@
1
+ import {
2
+ extractColor,
3
+ measureIndent,
4
+ parseFirstLine,
5
+ tryParseSharedOption
6
+ } from "./chunk-OTAL43EH.js";
7
+ import {
8
+ makeDgmoError,
9
+ makeFail
10
+ } from "./chunk-CXK4DZH3.js";
11
+
12
+ // src/goal/parser.ts
13
+ function parseGoalNumber(token) {
14
+ if (token.includes(",")) return null;
15
+ const n = parseFloat(token.replace(/_/g, ""));
16
+ return Number.isFinite(n) ? n : null;
17
+ }
18
+ function parseGoal(content, palette) {
19
+ const options = {
20
+ noPercent: false,
21
+ noValue: false,
22
+ solidFill: false,
23
+ noTitle: false,
24
+ noAutoColor: false,
25
+ noNote: false
26
+ };
27
+ const result = {
28
+ type: "goal",
29
+ title: null,
30
+ titleLineNumber: null,
31
+ description: null,
32
+ mode: "bar",
33
+ now: 0,
34
+ target: 0,
35
+ hasTarget: false,
36
+ options,
37
+ diagnostics: [],
38
+ error: null
39
+ };
40
+ const fail = makeFail(result);
41
+ const warn = (line, message) => {
42
+ result.diagnostics.push(makeDgmoError(line, message, "warning"));
43
+ };
44
+ const softError = (line, message) => {
45
+ result.diagnostics.push(makeDgmoError(line, message, "error"));
46
+ };
47
+ if (!content?.trim()) return fail(0, "No content provided");
48
+ const lines = content.split("\n");
49
+ let headerParsed = false;
50
+ let sawNow = false;
51
+ const sharedOpts = {};
52
+ for (let i = 0; i < lines.length; i++) {
53
+ const lineNum = i + 1;
54
+ const raw = lines[i];
55
+ const trimmed = raw.trim();
56
+ if (!trimmed || trimmed.startsWith("//")) continue;
57
+ if (!headerParsed) {
58
+ const first = parseFirstLine(trimmed);
59
+ if (first?.chartType !== "goal") {
60
+ return fail(lineNum, 'Expected "goal [Title]" as the first line.');
61
+ }
62
+ if (first.title) {
63
+ const { label, color } = extractColor(
64
+ first.title,
65
+ palette,
66
+ result.diagnostics,
67
+ lineNum
68
+ );
69
+ result.title = label || null;
70
+ if (color !== void 0) result.color = color;
71
+ }
72
+ result.titleLineNumber = lineNum;
73
+ headerParsed = true;
74
+ continue;
75
+ }
76
+ const noteHeader = trimmed.match(/^note(?:\s+(.+))?$/i);
77
+ if (noteHeader && measureIndent(raw) === 0) {
78
+ const body = [];
79
+ if (noteHeader[1]) body.push(noteHeader[1].trim());
80
+ while (i + 1 < lines.length && measureIndent(lines[i + 1]) > 0) {
81
+ body.push(lines[i + 1].trim());
82
+ i++;
83
+ }
84
+ result.description = body.length ? body.join("\n") : null;
85
+ continue;
86
+ }
87
+ if (measureIndent(raw) > 0) {
88
+ warn(
89
+ lineNum,
90
+ `Indented content "${trimmed}" ignored \u2014 goal is a single value.`
91
+ );
92
+ continue;
93
+ }
94
+ const lower = trimmed.toLowerCase();
95
+ if (lower === "thermometer" || lower === "gauge") {
96
+ result.mode = lower;
97
+ continue;
98
+ }
99
+ if (lower === "no-percent") {
100
+ options.noPercent = true;
101
+ continue;
102
+ }
103
+ if (lower === "no-value") {
104
+ options.noValue = true;
105
+ continue;
106
+ }
107
+ if (lower === "no-auto-color") {
108
+ options.noAutoColor = true;
109
+ continue;
110
+ }
111
+ if (lower === "no-note") {
112
+ options.noNote = true;
113
+ continue;
114
+ }
115
+ if (tryParseSharedOption(trimmed, sharedOpts)) {
116
+ if (sharedOpts["solid-fill"] === "on") options.solidFill = true;
117
+ if (sharedOpts["no-title"] === "on") options.noTitle = true;
118
+ continue;
119
+ }
120
+ const kv = trimmed.match(/^(now|target)\s+(.+)$/i);
121
+ if (kv) {
122
+ const key = kv[1].toLowerCase();
123
+ const value = parseGoalNumber(kv[2].trim());
124
+ if (value === null) {
125
+ softError(lineNum, `"${key}" needs a number (got "${kv[2].trim()}").`);
126
+ continue;
127
+ }
128
+ if (key === "now") {
129
+ result.now = value;
130
+ sawNow = true;
131
+ } else {
132
+ if (value <= 0) {
133
+ softError(lineNum, '"target" must be greater than 0.');
134
+ } else {
135
+ result.target = value;
136
+ result.hasTarget = true;
137
+ }
138
+ }
139
+ continue;
140
+ }
141
+ warn(lineNum, `Unrecognized line "${trimmed}".`);
142
+ }
143
+ if (!sawNow) {
144
+ warn(result.titleLineNumber ?? 1, 'Missing "now" value \u2014 treating as 0.');
145
+ }
146
+ if (!result.hasTarget) {
147
+ softError(
148
+ result.titleLineNumber ?? 1,
149
+ 'Missing or invalid "target" \u2014 a goal needs a target > 0.'
150
+ );
151
+ }
152
+ return result;
153
+ }
154
+
155
+ export {
156
+ parseGoal
157
+ };
158
+ //# sourceMappingURL=chunk-Q4V4XQWV.js.map
@@ -1,10 +1,11 @@
1
+ import {
2
+ renderIntegratedLegend
3
+ } from "./chunk-QUJGFNFN.js";
1
4
  import {
2
5
  getFigure,
6
+ getPartGeom,
3
7
  resolvePartKey
4
- } from "./chunk-3NFJWFNP.js";
5
- import {
6
- renderIntegratedLegend
7
- } from "./chunk-4UDKKGHH.js";
8
+ } from "./chunk-BDXC7MDK.js";
8
9
  import {
9
10
  FONT_FAMILY
10
11
  } from "./chunk-6KFWC4CO.js";
@@ -14,8 +15,9 @@ import {
14
15
  } from "./chunk-P6T66CCZ.js";
15
16
  import {
16
17
  resolveActiveTagGroup,
17
- resolveTagColor
18
- } from "./chunk-HBVD67XG.js";
18
+ resolveTagColor,
19
+ tagAttrKey
20
+ } from "./chunk-WCUHAQKB.js";
19
21
  import {
20
22
  resolveColor
21
23
  } from "./chunk-TLVIHFRO.js";
@@ -33,17 +35,33 @@ var OUTER_MARGIN = 30;
33
35
  var CENTER_COL = 420;
34
36
  var LABEL_FONT = 23;
35
37
  var NOTE_FONT = 17;
36
- function renderFigureBody(fig, parts, partColor, form, palette, defs) {
38
+ function pathStartX(d) {
39
+ const m = d.match(/[Mm]\s*(-?[\d.]+)/);
40
+ return m ? parseFloat(m[1]) : 0;
41
+ }
42
+ function partKey(part) {
43
+ return (part.side ? `${part.side} ` : "") + part.name.toLowerCase();
44
+ }
45
+ function partLabel(part) {
46
+ return part.side ? `${part.side} ${part.name}` : part.name;
47
+ }
48
+ function sideCenter(centers, side, view) {
49
+ const wantScreenRight = view === "front" ? side === "left" : side === "right";
50
+ return centers.reduce(
51
+ (best, c) => wantScreenRight ? c.x > best.x ? c : best : c.x < best.x ? c : best
52
+ );
53
+ }
54
+ function renderFigureBody(fig, view, parts, partColor, emphKey, form, palette, defs) {
37
55
  const [vx, vy, vw, vh] = fig.viewBox.split(" ").map(Number);
38
56
  const muscleFill = mix(palette.bg, palette.border, 0.7);
39
57
  const seam = palette.bg;
40
58
  const outlineStroke = palette.textMuted;
59
+ const gid = `body-skin-${vx}-${vy}`;
60
+ defs.push(
61
+ `<linearGradient id="${gid}" x1="0" y1="0" x2="0" y2="1"><stop offset="0" stop-color="${mix(palette.surface, palette.bg, 0.4)}"/><stop offset="1" stop-color="${mix(palette.border, palette.bg, 0.3)}"/></linearGradient>`
62
+ );
41
63
  let out = "";
42
64
  if (form === "skin") {
43
- const gid = `body-skin-${vx}-${vy}`;
44
- defs.push(
45
- `<linearGradient id="${gid}" x1="0" y1="0" x2="0" y2="1"><stop offset="0" stop-color="${mix(palette.surface, palette.bg, 0.4)}"/><stop offset="1" stop-color="${mix(palette.border, palette.bg, 0.3)}"/></linearGradient>`
46
- );
47
65
  out += `<path d="${fig.outline}" fill="url(#${gid})"/>`;
48
66
  for (const d of fig.headPaths) {
49
67
  out += `<path d="${d}" fill="url(#${gid})" stroke="${outlineStroke}" stroke-width="2.5"/>`;
@@ -53,55 +71,95 @@ function renderFigureBody(fig, parts, partColor, form, palette, defs) {
53
71
  out += `<path d="${d}" fill="${hairFill}" stroke="${outlineStroke}" stroke-width="1.5"/>`;
54
72
  }
55
73
  } else {
74
+ out += `<path d="${fig.outline}" fill="url(#${gid})"/>`;
56
75
  for (const d of fig.base) {
57
- out += `<path d="${d}" fill="${muscleFill}" stroke="${seam}" stroke-width="1"/>`;
76
+ out += `<path d="${d}" fill="${muscleFill}" fill-opacity="0.55" stroke="${seam}" stroke-width="1"/>`;
77
+ }
78
+ for (const d of fig.headPaths) {
79
+ out += `<path d="${d}" fill="url(#${gid})" stroke="${outlineStroke}" stroke-width="2.5"/>`;
80
+ }
81
+ for (const d of fig.hairPaths) {
82
+ out += `<path d="${d}" fill="none" stroke="${outlineStroke}" stroke-width="2.5"/>`;
58
83
  }
59
84
  }
60
85
  const anchors = /* @__PURE__ */ new Map();
86
+ const cxMid = vx + vw / 2;
61
87
  for (const part of parts) {
62
88
  const key = resolvePartKey(fig, part.name);
63
89
  if (!key) continue;
64
- const geom = fig.parts[key];
90
+ const geom = getPartGeom(fig, key);
65
91
  const color = partColor(part);
66
- const dataLine = ` class="dgmo-body-part" data-line-number="${part.lineNumber}"`;
92
+ const emph = emphKey(part).toLowerCase();
93
+ const dataLine = ` class="dgmo-body-part" data-line-number="${part.lineNumber}" data-emph-key="${esc(emph)}"`;
94
+ let paths = geom.paths;
95
+ if (part.side) {
96
+ const wantScreenRight = view === "front" ? part.side === "left" : part.side === "right";
97
+ const sidePaths = geom.paths.filter(
98
+ (d) => wantScreenRight ? pathStartX(d) >= cxMid : pathStartX(d) < cxMid
99
+ );
100
+ if (sidePaths.length) paths = sidePaths;
101
+ }
67
102
  if (form === "skin") {
68
- for (const d of geom.paths) {
103
+ for (const d of paths) {
69
104
  out += `<path${dataLine} d="${d}" fill="${color}" fill-opacity="0.5" stroke="${color}" stroke-width="1.5"/>`;
70
105
  }
71
106
  } else {
72
- for (const d of geom.paths) {
73
- out += `<path${dataLine} d="${d}" fill="${color}" stroke="${seam}" stroke-width="1"/>`;
107
+ const lightFill = mix(color, palette.bg, 70);
108
+ for (const d of paths) {
109
+ out += `<path${dataLine} d="${d}" fill="${lightFill}" stroke="${color}" stroke-width="1.5"/>`;
74
110
  }
75
111
  }
76
- anchors.set(part.name.toLowerCase(), {
77
- x: geom.anchor.x,
78
- y: geom.anchor.y,
112
+ const allCenters = geom.centers?.length ? geom.centers.map((c) => ({ x: c.x, y: c.y })) : [{ x: geom.anchor.x, y: geom.anchor.y }];
113
+ const chosen = part.side && allCenters.length > 1 ? sideCenter(allCenters, part.side, view) : null;
114
+ anchors.set(partKey(part), {
115
+ x: chosen?.x ?? geom.anchor.x,
116
+ y: chosen?.y ?? geom.anchor.y,
117
+ centers: chosen ? [chosen] : allCenters,
79
118
  color,
119
+ emph,
80
120
  part
81
121
  });
82
122
  }
83
123
  out += `<path d="${fig.outline}" fill="none" stroke="${outlineStroke}" stroke-width="2.5"/>`;
84
124
  return { fig, body: out, anchors, vx, vy, vw, vh };
85
125
  }
126
+ function nearestCenter(a, targetX) {
127
+ let best = a.centers[0] ?? { x: a.x, y: a.y };
128
+ let bestD = Math.abs(best.x - targetX);
129
+ for (const c of a.centers) {
130
+ const d = Math.abs(c.x - targetX);
131
+ if (d < bestD) {
132
+ bestD = d;
133
+ best = c;
134
+ }
135
+ }
136
+ return best;
137
+ }
86
138
  function gutterLabels(r, palette) {
87
139
  const { vx, vw, vh } = r;
88
140
  const cx = vx + vw / 2;
89
141
  const list = [...r.anchors.values()];
90
- const left = list.filter((a) => a.x < cx).sort((a, b) => a.y - b.y);
91
- const right = list.filter((a) => a.x >= cx).sort((a, b) => a.y - b.y);
142
+ const band = vw * 0.1;
143
+ const left = list.filter((a) => a.x < cx - band);
144
+ const right = list.filter((a) => a.x > cx + band);
145
+ const mid = list.filter((a) => a.x >= cx - band && a.x <= cx + band).sort((a, b) => a.y - b.y);
146
+ for (const a of mid) (left.length <= right.length ? left : right).push(a);
92
147
  let labels = "";
93
148
  const place = (arr, side) => {
94
149
  const gx = side === "L" ? vx - 14 : vx + vw + 14;
150
+ const sx = side === "L" ? gx + 26 : gx - 26;
95
151
  const anchorX = side === "L" ? "end" : "start";
96
152
  const minGap = vh * 0.05;
153
+ const rows = arr.map((a) => ({ a, tgt: nearestCenter(a, gx) })).sort((p, q) => p.tgt.y - q.tgt.y);
97
154
  let prevY = -1e9;
98
- for (const a of arr) {
99
- const ly = Math.max(a.y - 6, prevY + minGap);
155
+ for (const { a, tgt } of rows) {
156
+ const ly = Math.max(tgt.y, prevY + minGap);
100
157
  prevY = ly;
101
158
  const note = a.part.notes.length ? a.part.notes[0] : "";
102
- labels += `<path d="M${gx} ${ly} L${a.x} ${a.y}" stroke="${a.color}" stroke-width="1.6" fill="none" opacity="0.75"/><circle cx="${a.x}" cy="${a.y}" r="5" fill="${a.color}"/><text x="${gx}" y="${ly - 3}" text-anchor="${anchorX}" font-size="${LABEL_FONT}" font-weight="700" fill="${palette.text}">${esc(a.part.name)}</text>`;
159
+ const dl = ` class="dgmo-body-part" data-line-number="${a.part.lineNumber}" data-emph-key="${esc(a.emph)}"`;
160
+ labels += `<path${dl} d="M${sx} ${ly} L${tgt.x} ${tgt.y}" stroke="${a.color}" stroke-width="2" stroke-linecap="round" vector-effect="non-scaling-stroke" fill="none" opacity="0.85"/><circle${dl} cx="${tgt.x}" cy="${tgt.y}" r="5.5" fill="${a.color}" stroke="${palette.bg}" stroke-width="2" vector-effect="non-scaling-stroke"/><text${dl} x="${gx}" y="${ly + (note ? -2 : 7)}" text-anchor="${anchorX}" font-size="${LABEL_FONT}" font-weight="700" fill="${palette.text}">${esc(partLabel(a.part))}</text>`;
103
161
  if (note) {
104
- labels += `<text x="${gx}" y="${ly + 21}" text-anchor="${anchorX}" font-size="${NOTE_FONT}" fill="${palette.textMuted}">${esc(note)}</text>`;
162
+ labels += `<text${dl} x="${gx}" y="${ly + 22}" text-anchor="${anchorX}" font-size="${NOTE_FONT}" fill="${palette.textMuted}">${esc(note)}</text>`;
105
163
  }
106
164
  }
107
165
  };
@@ -117,12 +175,15 @@ function renderBody(container, parsed, palette, _isDark, _onClickItem, exportDim
117
175
  tagOverride
118
176
  );
119
177
  const partColor = (part) => resolveTagColor(part.metadata, parsed.tagGroups, activeGroup) ?? accent;
178
+ const emphKey = (part) => activeGroup ? part.metadata[tagAttrKey(activeGroup)] ?? "" : "";
120
179
  const defs = [];
121
180
  const rendered = parsed.options.views.map(
122
181
  (view) => renderFigureBody(
123
182
  getFigure(parsed.options.sex, view),
183
+ view,
124
184
  parsed.parts,
125
185
  partColor,
186
+ emphKey,
126
187
  parsed.options.form,
127
188
  palette,
128
189
  defs
@@ -166,19 +227,21 @@ function renderBody(container, parsed, palette, _isDark, _onClickItem, exportDim
166
227
  const seen = /* @__PURE__ */ new Set();
167
228
  const items = [];
168
229
  for (const part of parsed.parts) {
169
- const nm = part.name.toLowerCase();
230
+ const nm = partKey(part);
170
231
  if (seen.has(nm)) continue;
171
232
  const aL = fL.anchors.get(nm);
172
233
  const aR = fR.anchors.get(nm);
173
234
  if (!aL && !aR) continue;
174
235
  seen.add(nm);
175
- const left = aL ? mapL(aL) : void 0;
176
- const right = aR ? mapR(aR) : void 0;
236
+ const left = aL ? mapL(nearestCenter(aL, fL.vx + fL.vw)) : void 0;
237
+ const right = aR ? mapR(nearestCenter(aR, fR.vx)) : void 0;
177
238
  const ys = [left?.y, right?.y].filter((v) => v != null);
178
239
  items.push({
179
- name: part.name,
240
+ name: partLabel(part),
180
241
  note: part.notes.length ? part.notes[0] : "",
181
242
  color: (aL ?? aR).color,
243
+ emph: (aL ?? aR).emph,
244
+ line: part.lineNumber,
182
245
  ...left && { left },
183
246
  ...right && { right },
184
247
  y: ys.reduce((s, v) => s + v, 0) / ys.length
@@ -194,15 +257,16 @@ function renderBody(container, parsed, palette, _isDark, _onClickItem, exportDim
194
257
  let labels = "";
195
258
  const stub = 96;
196
259
  for (const it of items) {
260
+ const dl = ` class="dgmo-body-part" data-line-number="${it.line}" data-emph-key="${esc(it.emph)}"`;
197
261
  if (it.left) {
198
- labels += `<path d="M${(centerX - stub).toFixed(1)} ${it.y.toFixed(1)} L${it.left.x.toFixed(1)} ${it.left.y.toFixed(1)}" stroke="${it.color}" stroke-width="1.6" fill="none" opacity="0.75"/><circle cx="${it.left.x.toFixed(1)}" cy="${it.left.y.toFixed(1)}" r="5" fill="${it.color}"/>`;
262
+ labels += `<path${dl} d="M${(centerX - stub).toFixed(1)} ${it.y.toFixed(1)} L${it.left.x.toFixed(1)} ${it.left.y.toFixed(1)}" stroke="${it.color}" stroke-width="2" stroke-linecap="round" vector-effect="non-scaling-stroke" fill="none" opacity="0.85"/><circle${dl} cx="${it.left.x.toFixed(1)}" cy="${it.left.y.toFixed(1)}" r="5.5" fill="${it.color}" stroke="${palette.bg}" stroke-width="2" vector-effect="non-scaling-stroke"/>`;
199
263
  }
200
264
  if (it.right) {
201
- labels += `<path d="M${(centerX + stub).toFixed(1)} ${it.y.toFixed(1)} L${it.right.x.toFixed(1)} ${it.right.y.toFixed(1)}" stroke="${it.color}" stroke-width="1.6" fill="none" opacity="0.75"/><circle cx="${it.right.x.toFixed(1)}" cy="${it.right.y.toFixed(1)}" r="5" fill="${it.color}"/>`;
265
+ labels += `<path${dl} d="M${(centerX + stub).toFixed(1)} ${it.y.toFixed(1)} L${it.right.x.toFixed(1)} ${it.right.y.toFixed(1)}" stroke="${it.color}" stroke-width="2" stroke-linecap="round" vector-effect="non-scaling-stroke" fill="none" opacity="0.85"/><circle${dl} cx="${it.right.x.toFixed(1)}" cy="${it.right.y.toFixed(1)}" r="5.5" fill="${it.color}" stroke="${palette.bg}" stroke-width="2" vector-effect="non-scaling-stroke"/>`;
202
266
  }
203
- labels += `<text x="${centerX}" y="${(it.y - 3).toFixed(1)}" text-anchor="middle" font-size="${LABEL_FONT}" font-weight="700" fill="${palette.text}">${esc(it.name)}</text>`;
267
+ labels += `<text${dl} x="${centerX}" y="${(it.y - 3).toFixed(1)}" text-anchor="middle" font-size="${LABEL_FONT}" font-weight="700" fill="${palette.text}">${esc(it.name)}</text>`;
204
268
  if (it.note) {
205
- labels += `<text x="${centerX}" y="${(it.y + 20).toFixed(1)}" text-anchor="middle" font-size="${NOTE_FONT}" fill="${palette.textMuted}">${esc(it.note)}</text>`;
269
+ labels += `<text${dl} x="${centerX}" y="${(it.y + 20).toFixed(1)}" text-anchor="middle" font-size="${NOTE_FONT}" fill="${palette.textMuted}">${esc(it.note)}</text>`;
206
270
  }
207
271
  }
208
272
  body += labels;
@@ -258,4 +322,4 @@ export {
258
322
  renderBody,
259
323
  renderBodyForExport
260
324
  };
261
- //# sourceMappingURL=chunk-5XCM7UUW.js.map
325
+ //# sourceMappingURL=chunk-QDFNCATJ.js.map
@@ -15,7 +15,7 @@ import {
15
15
  } from "./chunk-5LWQH6QV.js";
16
16
  import {
17
17
  tagAttrKey
18
- } from "./chunk-HBVD67XG.js";
18
+ } from "./chunk-WCUHAQKB.js";
19
19
 
20
20
  // src/c4/layout.ts
21
21
  import dagre from "@dagrejs/dagre";
@@ -1682,4 +1682,4 @@ export {
1682
1682
  layoutC4Components,
1683
1683
  layoutC4Deployment
1684
1684
  };
1685
- //# sourceMappingURL=chunk-CEHZOPGM.js.map
1685
+ //# sourceMappingURL=chunk-QFQ35BTO.js.map
@@ -21,7 +21,7 @@ import {
21
21
  } from "./chunk-P6T66CCZ.js";
22
22
  import {
23
23
  tagAttrKey
24
- } from "./chunk-HBVD67XG.js";
24
+ } from "./chunk-WCUHAQKB.js";
25
25
 
26
26
  // src/utils/legend-d3.ts
27
27
  var LEGEND_TEXT_DY = "0.32em";
@@ -293,4 +293,4 @@ export {
293
293
  renderLegendD3,
294
294
  renderIntegratedLegend
295
295
  };
296
- //# sourceMappingURL=chunk-4UDKKGHH.js.map
296
+ //# sourceMappingURL=chunk-QUJGFNFN.js.map
@@ -19,7 +19,7 @@ import {
19
19
  injectDefaultTagMetadata,
20
20
  resolveTagColor,
21
21
  tagAttrKey
22
- } from "./chunk-HBVD67XG.js";
22
+ } from "./chunk-WCUHAQKB.js";
23
23
 
24
24
  // src/org/layout.ts
25
25
  import { hierarchy, tree } from "d3-hierarchy";
@@ -810,4 +810,4 @@ function layoutOrg(parsed, hiddenCounts, activeTagGroup, hiddenAttributes, expan
810
810
  export {
811
811
  layoutOrg
812
812
  };
813
- //# sourceMappingURL=chunk-IBC35BTK.js.map
813
+ //# sourceMappingURL=chunk-R56LASIN.js.map
@@ -9,7 +9,7 @@ import {
9
9
  } from "./chunk-YYVTBZZC.js";
10
10
  import {
11
11
  renderIntegratedLegend
12
- } from "./chunk-4UDKKGHH.js";
12
+ } from "./chunk-QUJGFNFN.js";
13
13
  import {
14
14
  getMaxLegendReservedHeight
15
15
  } from "./chunk-7UEMZREK.js";
@@ -35,11 +35,11 @@ import {
35
35
  isSequenceBlock,
36
36
  isSequenceNote,
37
37
  isSequenceSection
38
- } from "./chunk-D5AVQCDN.js";
38
+ } from "./chunk-T4BRO3Z6.js";
39
39
  import {
40
40
  resolveActiveTagGroup,
41
41
  tagAttrKey
42
- } from "./chunk-HBVD67XG.js";
42
+ } from "./chunk-WCUHAQKB.js";
43
43
 
44
44
  // src/sequence/renderer.ts
45
45
  import * as d3Selection from "d3-selection";
@@ -1848,4 +1848,4 @@ export {
1848
1848
  renderSequenceDiagram,
1849
1849
  buildNoteMessageMap
1850
1850
  };
1851
- //# sourceMappingURL=chunk-SJEGO2QL.js.map
1851
+ //# sourceMappingURL=chunk-RV26LTUU.js.map