@diagrammo/dgmo 0.71.0 → 0.73.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 (280) hide show
  1. package/dist/advanced.d.ts +54 -37
  2. package/dist/advanced.js +116 -117
  3. package/dist/{analyzer-HQUXKZ5J.js → analyzer-KQWXVQOI.js} +3 -3
  4. package/dist/block.d.ts +2 -2
  5. package/dist/block.js +64 -76
  6. package/dist/calculator-2Z5DUTOB.js +13 -0
  7. package/dist/{chart-meta-6JaOudSs.d.ts → chart-meta-lP8Rl19E.d.ts} +4 -3
  8. package/dist/chart-meta.d.ts +3 -3
  9. package/dist/chart-meta.js +49 -49
  10. package/dist/{charts-d3-6IHGTXBR.js → charts-d3-S6JPQQFZ.js} +12 -12
  11. package/dist/{chunk-YYVTBZZC.js → chunk-24YPR5EH.js} +1 -1
  12. package/dist/{chunk-7BHM774H.js → chunk-25LXU4OQ.js} +8 -8
  13. package/dist/{chunk-7SEQPFBX.js → chunk-2AC2KTVM.js} +33 -28
  14. package/dist/{chunk-NUF7YTHA.js → chunk-2M2UC5EU.js} +3 -3
  15. package/dist/{chunk-CGLBK5Q4.js → chunk-2PU5XWLA.js} +2 -2
  16. package/dist/{chunk-MWWRIOEN.js → chunk-2TFWQM3E.js} +3 -3
  17. package/dist/{chunk-FLXDMH7B.js → chunk-3ATHNEOQ.js} +30 -24
  18. package/dist/{chunk-FFD6A3B2.js → chunk-3AXUJ5PT.js} +16 -10
  19. package/dist/{chunk-IFJIYUI6.js → chunk-3OKBXV3I.js} +4 -4
  20. package/dist/{chunk-LJS4Z326.js → chunk-3X3UD7PN.js} +6 -6
  21. package/dist/{chunk-DPGI742S.js → chunk-4FKEI4MF.js} +4 -4
  22. package/dist/{chunk-WPXHTYET.js → chunk-4K5H6LON.js} +4 -4
  23. package/dist/{chunk-LTGOPJUV.js → chunk-4NYJEK4R.js} +3 -3
  24. package/dist/{chunk-MTPKBSTR.js → chunk-4SXHMFFP.js} +2 -2
  25. package/dist/{chunk-VE7PPEU3.js → chunk-54SJUHNY.js} +8 -8
  26. package/dist/{chunk-BYSRXYRW.js → chunk-5EI23VVR.js} +6 -6
  27. package/dist/{chunk-OLMWTJVU.js → chunk-5SI6T5A5.js} +1 -1
  28. package/dist/{chunk-UJXCDF4E.js → chunk-5VMUVJO4.js} +2 -2
  29. package/dist/{chunk-ZGVVPILJ.js → chunk-6DYZ2JM6.js} +2 -2
  30. package/dist/{chunk-ELIGVSLE.js → chunk-6G2GJGUC.js} +12 -6
  31. package/dist/{chunk-E36Q5ABQ.js → chunk-6LGPL4LP.js} +7 -7
  32. package/dist/{chunk-KJWIU5AM.js → chunk-7GYSVN4Z.js} +3 -3
  33. package/dist/{chunk-YTFA4VTW.js → chunk-7S5WQXI3.js} +3 -3
  34. package/dist/{chunk-MKNWMFZU.js → chunk-7VMUKH2Z.js} +31 -27
  35. package/dist/{chunk-ZNHPCITV.js → chunk-A34AXXBO.js} +8 -8
  36. package/dist/{chunk-TGGKBY22.js → chunk-ABH626W7.js} +15 -10
  37. package/dist/{chunk-722TKHMS.js → chunk-AG3Z47VY.js} +11 -11
  38. package/dist/{chunk-T7W5LM4N.js → chunk-AMYMV4JZ.js} +5 -5
  39. package/dist/{chunk-KOVRFBGR.js → chunk-ARM4G2HJ.js} +16 -11
  40. package/dist/{chunk-XQW4KFJ4.js → chunk-B5CIHVBP.js} +11 -11
  41. package/dist/{chunk-MC2H32SM.js → chunk-BVNTXVYJ.js} +4 -4
  42. package/dist/{chunk-T3LNWU7B.js → chunk-CLKRRKV6.js} +12 -12
  43. package/dist/{chunk-UY77QQWU.js → chunk-CVGTEAIO.js} +11 -7
  44. package/dist/{chunk-6EDBUKC7.js → chunk-D5ZZOTE6.js} +3 -3
  45. package/dist/{chunk-WMHHNK44.js → chunk-DGPFFRLS.js} +2 -2
  46. package/dist/{chunk-EETUTZ5C.js → chunk-DTYZAXEH.js} +2 -2
  47. package/dist/{chunk-UIBPFSIT.js → chunk-DZC2OCK3.js} +11 -11
  48. package/dist/{chunk-REBTZP3W.js → chunk-E27E4ZFN.js} +6 -6
  49. package/dist/{chunk-BSI5EOAX.js → chunk-E3BJVEMZ.js} +7 -11
  50. package/dist/{chunk-7NK42OIB.js → chunk-E6PNTYRK.js} +2 -2
  51. package/dist/{chunk-3SNE4CLI.js → chunk-EPJHJF3J.js} +7 -7
  52. package/dist/{chunk-HBVKOYZD.js → chunk-FGXBIOVK.js} +3 -3
  53. package/dist/{chunk-YCOGUPHL.js → chunk-FQDH6AL3.js} +10 -10
  54. package/dist/{chunk-XIZCHGP7.js → chunk-FQFQGPWA.js} +9 -9
  55. package/dist/{chunk-IKHV5IJB.js → chunk-GE5RO4BS.js} +2 -2
  56. package/dist/{chunk-KWRW6BLG.js → chunk-GLREDNBA.js} +2 -2
  57. package/dist/{chunk-UVAOL2EO.js → chunk-H454ZVAS.js} +291 -29
  58. package/dist/{chunk-VMXV2CL5.js → chunk-HQ34V2XV.js} +5 -5
  59. package/dist/{chunk-YG35ZCNW.js → chunk-I4YT5KL6.js} +36 -32
  60. package/dist/{chunk-QAJFIXJE.js → chunk-IDEJ3J4J.js} +28 -28
  61. package/dist/{chunk-TF7CFAZ5.js → chunk-IEZYF5CN.js} +4 -4
  62. package/dist/{chunk-RRX4Z4TH.js → chunk-IHOFUR74.js} +2 -2
  63. package/dist/{chunk-3HN32MEK.js → chunk-INOSOL3J.js} +4 -4
  64. package/dist/{chunk-HTGYAMOK.js → chunk-ITAFWUSB.js} +3 -3
  65. package/dist/{chunk-MX3BYU7V.js → chunk-JLSGQMRA.js} +3 -3
  66. package/dist/{chunk-5GTYY2XV.js → chunk-JPVRJS74.js} +7 -7
  67. package/dist/{chunk-C3MVZ7EW.js → chunk-K3O2CZTD.js} +7 -7
  68. package/dist/{chunk-2JY7KE7C.js → chunk-K7P4SCB3.js} +9 -9
  69. package/dist/{chunk-UTVKOGFF.js → chunk-KCHCOXAL.js} +94 -40
  70. package/dist/{chunk-VGLSKDDI.js → chunk-KI2L4DWM.js} +3 -3
  71. package/dist/{chunk-AEYRSPVV.js → chunk-KUDYLU3M.js} +3 -3
  72. package/dist/{chunk-FAJS2N4O.js → chunk-KZKRK57S.js} +12 -12
  73. package/dist/{chunk-4VUFJ7UA.js → chunk-LGASNVZE.js} +6 -6
  74. package/dist/{chunk-ET4R3AU5.js → chunk-LM3HY3VG.js} +2 -2
  75. package/dist/{chunk-RJI6MHHK.js → chunk-LMJKHQ4W.js} +6 -6
  76. package/dist/{chunk-ZJJWON5O.js → chunk-MK55PZVB.js} +268 -3
  77. package/dist/{chunk-RTTELOOP.js → chunk-MS5574I7.js} +3 -3
  78. package/dist/{chunk-I55PVEIX.js → chunk-MSVQ2YCY.js} +2 -2
  79. package/dist/{chunk-WEC3JPTN.js → chunk-MZMK474U.js} +8 -8
  80. package/dist/{chunk-NTBHGUXY.js → chunk-NE7JHZCQ.js} +4 -4
  81. package/dist/{chunk-JIWDWOYA.js → chunk-NQJ7DDUT.js} +4 -4
  82. package/dist/{chunk-6S53NO3M.js → chunk-O7ZKDUDX.js} +5 -5
  83. package/dist/{chunk-PBV2C3BW.js → chunk-OMQ5V5NH.js} +24 -20
  84. package/dist/{chunk-W27BULCB.js → chunk-OR3OX32W.js} +9 -9
  85. package/dist/{chunk-MFSTE3YG.js → chunk-OYK45NY5.js} +26 -18
  86. package/dist/{chunk-ISKO4MQ5.js → chunk-PFZDLHHG.js} +10 -10
  87. package/dist/{chunk-ENJWB5LU.js → chunk-PJHYUVD3.js} +28 -24
  88. package/dist/{chunk-K6MQJ5IV.js → chunk-Q446PFCV.js} +3 -3
  89. package/dist/{chunk-IW6N2JJL.js → chunk-Q74GP3GK.js} +2 -2
  90. package/dist/{chunk-7REARI5N.js → chunk-QFHPGDR5.js} +2 -2
  91. package/dist/{chunk-QPG55HGH.js → chunk-RJUMXXKR.js} +5 -5
  92. package/dist/{chunk-SPA7DCB3.js → chunk-RN3PAL4E.js} +3 -3
  93. package/dist/{chunk-IQ4W4Q2R.js → chunk-RXSAE6F5.js} +5 -5
  94. package/dist/{chunk-W7SZKJR6.js → chunk-RYHZFP7Y.js} +4 -4
  95. package/dist/{chunk-WF2HDQPG.js → chunk-S6OXNZBM.js} +3 -3
  96. package/dist/{chunk-UNM2PX5D.js → chunk-SNZFXGSE.js} +4 -4
  97. package/dist/{chunk-LSHROB27.js → chunk-T4L4LKXO.js} +5 -5
  98. package/dist/{chunk-CH4WODSG.js → chunk-TJS3J5B3.js} +19 -7
  99. package/dist/{chunk-7TSBM4BV.js → chunk-TP42IN23.js} +5 -5
  100. package/dist/{chunk-XJZSN42P.js → chunk-TTVHS3D5.js} +102 -100
  101. package/dist/{chunk-6PA32CUB.js → chunk-TXWW4UZM.js} +4 -4
  102. package/dist/{chunk-LUI425JB.js → chunk-V7E3RZLQ.js} +6 -6
  103. package/dist/{chunk-NNMNHE3J.js → chunk-VQEW7XMN.js} +3 -3
  104. package/dist/{chunk-YYBQ55V2.js → chunk-VWIXRNY2.js} +4 -4
  105. package/dist/{chunk-YH5KJIO5.js → chunk-W242EWZZ.js} +8 -8
  106. package/dist/{chunk-LXGUK56B.js → chunk-WDKLODC3.js} +11 -11
  107. package/dist/{chunk-OQKP2X3D.js → chunk-WFA6IULY.js} +57 -3
  108. package/dist/{chunk-HWNF22ZZ.js → chunk-WPEHUSUQ.js} +5 -5
  109. package/dist/{chunk-NJKUTY4M.js → chunk-WTMP6VZ6.js} +5 -5
  110. package/dist/{chunk-CR5WIA6I.js → chunk-X6LVGU4W.js} +13 -4
  111. package/dist/{chunk-IWNHEK5K.js → chunk-X6LXZJPT.js} +8 -8
  112. package/dist/{chunk-X2NX2SK6.js → chunk-XGBUCXU7.js} +5 -5
  113. package/dist/{chunk-NEC7R2CB.js → chunk-XL2C26LV.js} +3 -3
  114. package/dist/{chunk-EXNKNJ65.js → chunk-XOGQY4EC.js} +2 -2
  115. package/dist/{chunk-UNTFANSM.js → chunk-XOOYMOIW.js} +15 -10
  116. package/dist/{chunk-DEVZWCD5.js → chunk-XUCHK3OJ.js} +21 -12
  117. package/dist/{chunk-RNSGPTOZ.js → chunk-XVJWAE2F.js} +8 -8
  118. package/dist/{chunk-PZVYUQJA.js → chunk-YDA46XHI.js} +4 -4
  119. package/dist/{chunk-PLSTP7P4.js → chunk-YGKYQ7LA.js} +72 -387
  120. package/dist/{chunk-6CLC26GU.js → chunk-YJMWEZOB.js} +2 -2
  121. package/dist/{chunk-QX53GOI7.js → chunk-YT5ICQ4R.js} +2 -2
  122. package/dist/{chunk-376ATV2Q.js → chunk-ZIJXK3U5.js} +5 -5
  123. package/dist/{chunk-5DYDPP7K.js → chunk-ZQ5SROS2.js} +115 -240
  124. package/dist/completion-registry.js +24 -21
  125. package/dist/countdown.js +26 -6
  126. package/dist/{d3-Bfhj-XBX.d.ts → d3--y67plmW.d.ts} +1 -1
  127. package/dist/dgmo-router-AE6FUBV3.js +89 -0
  128. package/dist/{dgmo-router-Lya7cs3R.d.ts → dgmo-router-CY5j16Pl.d.ts} +1 -1
  129. package/dist/dimensions-PRZSDFWR.js +22 -0
  130. package/dist/flowchart-parser-HR25V5AH.js +21 -0
  131. package/dist/{flowchart-renderer-HB277GNE.js → flowchart-renderer-FY63GDRH.js} +13 -13
  132. package/dist/highlight.js +6 -18
  133. package/dist/index.d.ts +7 -7
  134. package/dist/index.js +65 -59
  135. package/dist/{layout-AWPST2S3.js → layout-43A4YMAH.js} +7 -7
  136. package/dist/layout-4URV4OXF.js +15 -0
  137. package/dist/{layout-RD7GDM4I.js → layout-B5GQVXXY.js} +4 -4
  138. package/dist/layout-BWHNERBW.js +15 -0
  139. package/dist/{layout-5RUQ5FBZ.js → layout-DAYQ46PS.js} +3 -3
  140. package/dist/{layout-LVMWK4QY.js → layout-KQUSB45X.js} +4 -4
  141. package/dist/{layout-2DVT24YY.js → layout-O4PR46GN.js} +6 -6
  142. package/dist/layout-PKGNLY6P.js +15 -0
  143. package/dist/{layout-WIMQIHBU.js → layout-ROORJQ4X.js} +4 -4
  144. package/dist/{layout-BGXLVSXL.js → layout-U5OVRUOK.js} +8 -8
  145. package/dist/{layout-search-C44CJQOB.js → layout-search-UOKEMER5.js} +4 -4
  146. package/dist/{legend-constants-FP5MFDD4.js → legend-constants-PLN2YHGM.js} +5 -5
  147. package/dist/{palettes-WQZ2TPVZ.js → palettes-54YSI3IX.js} +4 -4
  148. package/dist/parser-23MYMNF6.js +14 -0
  149. package/dist/parser-2FNHLEBN.js +12 -0
  150. package/dist/{parser-XM6JC3UK.js → parser-2FZ4BDEW.js} +6 -6
  151. package/dist/parser-3JDQL7QF.js +15 -0
  152. package/dist/parser-5CAGM3ED.js +16 -0
  153. package/dist/parser-5RY6ID5M.js +18 -0
  154. package/dist/parser-6YBYIFS2.js +13 -0
  155. package/dist/parser-A665TNOV.js +20 -0
  156. package/dist/parser-AN4SUBQ6.js +11 -0
  157. package/dist/parser-BC2TAVB3.js +11 -0
  158. package/dist/parser-BCQBK2XB.js +12 -0
  159. package/dist/parser-BTTFGJGI.js +12 -0
  160. package/dist/parser-CAAFD3HB.js +19 -0
  161. package/dist/parser-COBTDQPC.js +11 -0
  162. package/dist/parser-DBOJKLDF.js +14 -0
  163. package/dist/{parser-TJ3SP2MJ.js → parser-DIQ2E5MR.js} +7 -7
  164. package/dist/parser-EDXD6ZGJ.js +13 -0
  165. package/dist/parser-GPZYL6ZE.js +11 -0
  166. package/dist/parser-MDYNA6JL.js +17 -0
  167. package/dist/parser-PCALQIW2.js +17 -0
  168. package/dist/parser-PDPZ2I6C.js +13 -0
  169. package/dist/parser-SQFNO6XG.js +15 -0
  170. package/dist/{parser-ZIEEBJMU.js → parser-SQMOEVG4.js} +7 -7
  171. package/dist/parser-TATBFGQ2.js +15 -0
  172. package/dist/{parser-EX3AGFT5.js → parser-VJEHPDOO.js} +6 -6
  173. package/dist/{parser-O7GTECFP.js → parser-VQX2LVUJ.js} +5 -5
  174. package/dist/{parser-CDMP3UVH.js → parser-W2LEO5QM.js} +7 -7
  175. package/dist/parser-W3QZBUOF.js +13 -0
  176. package/dist/parser-WQCSMLUI.js +15 -0
  177. package/dist/parser-X5RGCC3C.js +11 -0
  178. package/dist/parser-XGUJ7SMG.js +13 -0
  179. package/dist/parser-XS7DL63K.js +16 -0
  180. package/dist/parser-XTSWP4N3.js +11 -0
  181. package/dist/pert.d.ts +10 -0
  182. package/dist/renderer-2DIH3YW6.js +27 -0
  183. package/dist/{renderer-JWSO5O2L.js → renderer-2E2Z5N66.js} +7 -7
  184. package/dist/renderer-4HGNWJRC.js +25 -0
  185. package/dist/renderer-6U6YW4HX.js +26 -0
  186. package/dist/renderer-AKZECRNK.js +39 -0
  187. package/dist/{renderer-7VPABTMS.js → renderer-BUMIZJIY.js} +15 -15
  188. package/dist/renderer-BY5AAKV7.js +25 -0
  189. package/dist/renderer-DU6D3S6K.js +27 -0
  190. package/dist/{renderer-5YV6KP4U.js → renderer-EAQNSDTC.js} +13 -13
  191. package/dist/{renderer-FAD65M5Z.js → renderer-EP4GRCDX.js} +6 -6
  192. package/dist/{renderer-LVAUI6T6.js → renderer-GQUJVPVA.js} +14 -14
  193. package/dist/renderer-HZCYBOAB.js +16 -0
  194. package/dist/renderer-IMZKZ6TV.js +23 -0
  195. package/dist/renderer-J2N5YBFP.js +16 -0
  196. package/dist/renderer-KJNTNI22.js +26 -0
  197. package/dist/renderer-LKZZID6J.js +76 -0
  198. package/dist/renderer-MCWAHNQG.js +22 -0
  199. package/dist/renderer-MJCSBYAR.js +25 -0
  200. package/dist/renderer-NXOSBZPO.js +30 -0
  201. package/dist/renderer-ODDULMVE.js +20 -0
  202. package/dist/renderer-OTHBTGBN.js +16 -0
  203. package/dist/{renderer-ZEPPPA3W.js → renderer-R7Q72DM4.js} +7 -7
  204. package/dist/renderer-S42JPAZO.js +24 -0
  205. package/dist/{renderer-QZRM6H4S.js → renderer-SCIHPARI.js} +5 -5
  206. package/dist/{renderer-BQWAUDEF.js → renderer-SW5YUK6H.js} +9 -9
  207. package/dist/{renderer-KFWZPVYT.js → renderer-TBWE67FB.js} +13 -13
  208. package/dist/renderer-V7476J5G.js +39 -0
  209. package/dist/renderer-VG4C23TY.js +21 -0
  210. package/dist/{renderer-S5MGQHRQ.js → renderer-WG6CUDWI.js} +14 -14
  211. package/dist/{renderer-2MEPYGAP.js → renderer-XL54ZE4H.js} +13 -13
  212. package/dist/{renderer-QOWN3XDI.js → renderer-XNLRQWM6.js} +14 -14
  213. package/dist/renderer-YIJYYZZE.js +28 -0
  214. package/dist/{renderer-7BGC4KPZ.js → renderer-YX6S3U4L.js} +12 -12
  215. package/dist/renderer-radial-ZZAAPDSY.js +21 -0
  216. package/dist/{resolver-B3TXWNWF.js → resolver-H5E6V7LJ.js} +3 -3
  217. package/dist/state-parser-4DJ67MNV.js +19 -0
  218. package/dist/state-renderer-IABX3URA.js +40 -0
  219. package/dist/{tag-groups-NUA2F1I5.d.ts → tag-groups-DrHT2tEc.d.ts} +10 -0
  220. package/dist/{themes-Dem5xalq.d.ts → themes-GWhsabnx.d.ts} +2 -2
  221. package/docs/language-reference.md +49 -11
  222. package/gallery/fixtures/countdown.dgmo +1 -1
  223. package/package.json +1 -1
  224. package/dist/calculator-4CNL2GKU.js +0 -13
  225. package/dist/dgmo-router-J6OWNMEJ.js +0 -89
  226. package/dist/dimensions-EFEBIRS6.js +0 -22
  227. package/dist/flowchart-parser-LZF2GW2P.js +0 -21
  228. package/dist/layout-BNR6ZDB6.js +0 -15
  229. package/dist/layout-N6ZOOAYT.js +0 -15
  230. package/dist/layout-PBB2RQJ4.js +0 -15
  231. package/dist/parser-2CXA7K5C.js +0 -13
  232. package/dist/parser-4E2TVMOK.js +0 -13
  233. package/dist/parser-52AZJ3BA.js +0 -17
  234. package/dist/parser-52BOCAVQ.js +0 -15
  235. package/dist/parser-5IPCYVXY.js +0 -12
  236. package/dist/parser-6BF5TJQH.js +0 -16
  237. package/dist/parser-6VZISXFY.js +0 -11
  238. package/dist/parser-6Y5BMNNJ.js +0 -14
  239. package/dist/parser-7HUZBXKW.js +0 -11
  240. package/dist/parser-AEJ73QJS.js +0 -11
  241. package/dist/parser-AWNEAGMJ.js +0 -12
  242. package/dist/parser-C2QRTZPJ.js +0 -13
  243. package/dist/parser-CBSYFN6U.js +0 -11
  244. package/dist/parser-CNKHKQKZ.js +0 -17
  245. package/dist/parser-GK3JWVHY.js +0 -18
  246. package/dist/parser-GZKR6BFA.js +0 -14
  247. package/dist/parser-K26KDCZN.js +0 -11
  248. package/dist/parser-LTJ5AKY4.js +0 -16
  249. package/dist/parser-NIGB4EYX.js +0 -12
  250. package/dist/parser-OHWDJGCP.js +0 -15
  251. package/dist/parser-QCVEWLCO.js +0 -15
  252. package/dist/parser-SUAOF72Y.js +0 -13
  253. package/dist/parser-W2HXBHNC.js +0 -11
  254. package/dist/parser-WF4R7225.js +0 -15
  255. package/dist/parser-XRZQ7SC7.js +0 -13
  256. package/dist/parser-YRJAGBV7.js +0 -19
  257. package/dist/parser-Z3LN7P6G.js +0 -20
  258. package/dist/renderer-35HBBPIQ.js +0 -26
  259. package/dist/renderer-3DSU72CP.js +0 -30
  260. package/dist/renderer-4CUV63GT.js +0 -39
  261. package/dist/renderer-4ORE7HJ3.js +0 -28
  262. package/dist/renderer-52KYFTNZ.js +0 -16
  263. package/dist/renderer-5FQFMCBZ.js +0 -39
  264. package/dist/renderer-ANWAX5QO.js +0 -27
  265. package/dist/renderer-DGZDRRJW.js +0 -76
  266. package/dist/renderer-E3UQ24DE.js +0 -25
  267. package/dist/renderer-FCIOD2QK.js +0 -22
  268. package/dist/renderer-H5QR3LC3.js +0 -16
  269. package/dist/renderer-JFZVWH2G.js +0 -16
  270. package/dist/renderer-JHWGW4Q7.js +0 -25
  271. package/dist/renderer-KQIJV5WD.js +0 -19
  272. package/dist/renderer-MZ4N2SVV.js +0 -25
  273. package/dist/renderer-QMSFXMAL.js +0 -21
  274. package/dist/renderer-V3PN5ZQS.js +0 -24
  275. package/dist/renderer-VOXE7V6L.js +0 -27
  276. package/dist/renderer-WBG576LB.js +0 -26
  277. package/dist/renderer-YXYEP46H.js +0 -23
  278. package/dist/renderer-radial-KZ3W4WXI.js +0 -21
  279. package/dist/state-parser-HJNCGIFT.js +0 -19
  280. package/dist/state-renderer-776LP3NE.js +0 -40
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  tryCollectNote
3
- } from "./chunk-MX3BYU7V.js";
3
+ } from "./chunk-JLSGQMRA.js";
4
4
  import {
5
5
  resolveNotes
6
- } from "./chunk-7NK42OIB.js";
6
+ } from "./chunk-E6PNTYRK.js";
7
7
  import {
8
8
  parseInArrowLabel
9
- } from "./chunk-RRX4Z4TH.js";
9
+ } from "./chunk-IHOFUR74.js";
10
10
  import {
11
11
  normalizeName
12
12
  } from "./chunk-NOTA6TEI.js";
@@ -20,8 +20,9 @@ import {
20
20
  tagAttrKey,
21
21
  validateTagGroupNames,
22
22
  validateTagValues
23
- } from "./chunk-DPGI742S.js";
23
+ } from "./chunk-4FKEI4MF.js";
24
24
  import {
25
+ AliasRegistry,
25
26
  BOXES_AND_LINES_REGISTRY,
26
27
  OPTION_NOCOLON_RE,
27
28
  extractColor,
@@ -32,11 +33,11 @@ import {
32
33
  tryParseSharedOption,
33
34
  warnUnknownMetaKeys,
34
35
  withTagAliases
35
- } from "./chunk-ZJJWON5O.js";
36
+ } from "./chunk-MK55PZVB.js";
36
37
  import {
37
38
  makeDgmoError,
38
39
  suggest
39
- } from "./chunk-OLMWTJVU.js";
40
+ } from "./chunk-5SI6T5A5.js";
40
41
 
41
42
  // src/boxes-and-lines/parser.ts
42
43
  var MAX_GROUP_DEPTH = 2;
@@ -120,7 +121,7 @@ function parseBoxesAndLines(content, palette) {
120
121
  let activeTagOptionLine = 0;
121
122
  let currentTagGroup = null;
122
123
  const metaAliasMap = /* @__PURE__ */ new Map();
123
- const nameAliasMap = /* @__PURE__ */ new Map();
124
+ const nameAliasMap = new AliasRegistry();
124
125
  function peelAlias(label) {
125
126
  const trimmed = label.trim();
126
127
  const m = trimmed.match(/^(.*?)\s+as\s+([A-Za-z][A-Za-z0-9_]{0,11})\s*$/);
@@ -414,7 +415,8 @@ function parseBoxesAndLines(content, palette) {
414
415
  const groupPeeled = peelAlias(groupMatch[1]);
415
416
  const label = groupPeeled.label;
416
417
  if (groupPeeled.alias)
417
- nameAliasMap.set(groupPeeled.alias, groupId(label));
418
+ nameAliasMap.declare(groupPeeled.alias, groupId(label), lineNum);
419
+ nameAliasMap.noteCanonical(groupId(label), lineNum);
418
420
  const currentDepth = groupStack.length + 1;
419
421
  if (currentDepth > MAX_GROUP_DEPTH) {
420
422
  result.diagnostics.push(
@@ -602,6 +604,7 @@ function parseBoxesAndLines(content, palette) {
602
604
  "W_ACTIVE_TAG_NO_MATCH"
603
605
  );
604
606
  }
607
+ result.diagnostics.push(...nameAliasMap.finish());
605
608
  return result;
606
609
  }
607
610
  function parseNodeLine(trimmed, lineNum, metaAliasMap, diagnostics, nameAliasMap) {
@@ -647,8 +650,9 @@ function parseNodeLine(trimmed, lineNum, metaAliasMap, diagnostics, nameAliasMap
647
650
  delete metadata["heat"];
648
651
  }
649
652
  if (split.alias) {
650
- nameAliasMap?.set(normalizeName(split.alias), label);
653
+ nameAliasMap?.declare(normalizeName(split.alias), label, lineNum);
651
654
  }
655
+ nameAliasMap?.noteCanonical(label, lineNum);
652
656
  if (!label) return null;
653
657
  return {
654
658
  label,
@@ -670,11 +674,11 @@ function splitTargetAndMeta(rest, metaAliasMap) {
670
674
  }
671
675
  return { target, metadata: split.meta };
672
676
  }
673
- function resolveEndpoint(name, nameAliasMap) {
677
+ function resolveEndpoint(name, lineNum, nameAliasMap) {
674
678
  const m = name.match(/^\[(.+)\]$/);
675
679
  if (m) return groupId(m[1].trim());
676
680
  if (nameAliasMap) {
677
- const aliased = nameAliasMap.get(name.trim());
681
+ const aliased = nameAliasMap.resolve(name, lineNum);
678
682
  if (aliased !== void 0) return aliased;
679
683
  }
680
684
  return peelQuotedName(name);
@@ -687,7 +691,7 @@ function parseEdgeLine(trimmed, lineNum, metaAliasMap, diagnostics, nameAliasMap
687
691
  const biLabeledMatch = trimmed.match(/^(.+?)\s*<-(.+)->\s*(.+)$/);
688
692
  if (biLabeledMatch) {
689
693
  const rawSource2 = biLabeledMatch[1].trim();
690
- const source2 = resolveEndpoint(rawSource2, nameAliasMap);
694
+ const source2 = resolveEndpoint(rawSource2, lineNum, nameAliasMap);
691
695
  const labelResult = parseInArrowLabel(biLabeledMatch[2], lineNum);
692
696
  diagnostics.push(...labelResult.diagnostics);
693
697
  const label = labelResult.label;
@@ -719,7 +723,7 @@ function parseEdgeLine(trimmed, lineNum, metaAliasMap, diagnostics, nameAliasMap
719
723
  }
720
724
  return {
721
725
  source: source2,
722
- target: resolveEndpoint(rest2, nameAliasMap),
726
+ target: resolveEndpoint(rest2, lineNum, nameAliasMap),
723
727
  ...label !== void 0 && { label },
724
728
  bidirectional: true,
725
729
  lineNumber: lineNum,
@@ -729,7 +733,7 @@ function parseEdgeLine(trimmed, lineNum, metaAliasMap, diagnostics, nameAliasMap
729
733
  const biIdx = trimmed.indexOf("<->");
730
734
  if (biIdx >= 0) {
731
735
  const rawSource2 = trimmed.slice(0, biIdx).trim();
732
- const source2 = resolveEndpoint(rawSource2, nameAliasMap);
736
+ const source2 = resolveEndpoint(rawSource2, lineNum, nameAliasMap);
733
737
  let rest2 = trimmed.slice(biIdx + 3).trim();
734
738
  const { target: plainTarget2, metadata: metadata2 } = splitTargetAndMeta(
735
739
  rest2,
@@ -758,7 +762,7 @@ function parseEdgeLine(trimmed, lineNum, metaAliasMap, diagnostics, nameAliasMap
758
762
  }
759
763
  return {
760
764
  source: source2,
761
- target: resolveEndpoint(rest2, nameAliasMap),
765
+ target: resolveEndpoint(rest2, lineNum, nameAliasMap),
762
766
  bidirectional: true,
763
767
  lineNumber: lineNum,
764
768
  metadata: metadata2
@@ -767,7 +771,7 @@ function parseEdgeLine(trimmed, lineNum, metaAliasMap, diagnostics, nameAliasMap
767
771
  const labeledMatch = trimmed.match(/^(.+?)\s+-(.+?)->\s*(.+)$/);
768
772
  if (labeledMatch) {
769
773
  const rawSource2 = labeledMatch[1].trim();
770
- const source2 = resolveEndpoint(rawSource2, nameAliasMap);
774
+ const source2 = resolveEndpoint(rawSource2, lineNum, nameAliasMap);
771
775
  const labelResult = parseInArrowLabel(labeledMatch[2], lineNum);
772
776
  diagnostics.push(...labelResult.diagnostics);
773
777
  const label = labelResult.label;
@@ -800,7 +804,7 @@ function parseEdgeLine(trimmed, lineNum, metaAliasMap, diagnostics, nameAliasMap
800
804
  }
801
805
  return {
802
806
  source: source2,
803
- target: resolveEndpoint(rest2, nameAliasMap),
807
+ target: resolveEndpoint(rest2, lineNum, nameAliasMap),
804
808
  label,
805
809
  bidirectional: false,
806
810
  lineNumber: lineNum,
@@ -811,7 +815,7 @@ function parseEdgeLine(trimmed, lineNum, metaAliasMap, diagnostics, nameAliasMap
811
815
  const arrowIdx = trimmed.indexOf("->");
812
816
  if (arrowIdx < 0) return null;
813
817
  const rawSource = trimmed.slice(0, arrowIdx).trim();
814
- const source = resolveEndpoint(rawSource, nameAliasMap);
818
+ const source = resolveEndpoint(rawSource, lineNum, nameAliasMap);
815
819
  let rest = trimmed.slice(arrowIdx + 2).trim();
816
820
  if (!source || !rest) {
817
821
  diagnostics.push(
@@ -844,7 +848,7 @@ function parseEdgeLine(trimmed, lineNum, metaAliasMap, diagnostics, nameAliasMap
844
848
  }
845
849
  return {
846
850
  source,
847
- target: resolveEndpoint(rest, nameAliasMap),
851
+ target: resolveEndpoint(rest, lineNum, nameAliasMap),
848
852
  bidirectional: false,
849
853
  lineNumber: lineNum,
850
854
  metadata
@@ -855,4 +859,4 @@ export {
855
859
  looksLikeBoxesAndLines,
856
860
  parseBoxesAndLines
857
861
  };
858
- //# sourceMappingURL=chunk-PBV2C3BW.js.map
862
+ //# sourceMappingURL=chunk-OMQ5V5NH.js.map
@@ -14,7 +14,7 @@ import {
14
14
  } from "./chunk-FJ57274M.js";
15
15
  import {
16
16
  layoutInlineHeader
17
- } from "./chunk-6CLC26GU.js";
17
+ } from "./chunk-YJMWEZOB.js";
18
18
  import {
19
19
  TITLE_FONT_SIZE,
20
20
  TITLE_FONT_WEIGHT,
@@ -22,17 +22,17 @@ import {
22
22
  } from "./chunk-A4GOY3PE.js";
23
23
  import {
24
24
  renderIntegratedLegend
25
- } from "./chunk-6S53NO3M.js";
25
+ } from "./chunk-O7ZKDUDX.js";
26
26
  import {
27
27
  getLegendExtent,
28
28
  getMaxLegendReservedHeight
29
- } from "./chunk-MTPKBSTR.js";
29
+ } from "./chunk-4SXHMFFP.js";
30
30
  import {
31
31
  FONT_FAMILY
32
32
  } from "./chunk-UTCPNJND.js";
33
33
  import {
34
34
  LEGEND_GROUP_GAP
35
- } from "./chunk-QX53GOI7.js";
35
+ } from "./chunk-YT5ICQ4R.js";
36
36
  import {
37
37
  measureText
38
38
  } from "./chunk-MTGGOCND.js";
@@ -42,21 +42,21 @@ import {
42
42
  import {
43
43
  resolveTagColor,
44
44
  tagAttrKey
45
- } from "./chunk-DPGI742S.js";
45
+ } from "./chunk-4FKEI4MF.js";
46
46
  import {
47
47
  fillModeFromOptions,
48
48
  legendInlineRequested,
49
49
  legendSuppressed
50
- } from "./chunk-ZJJWON5O.js";
50
+ } from "./chunk-MK55PZVB.js";
51
51
  import {
52
52
  contrastText,
53
53
  mix,
54
54
  shapeFill,
55
55
  themeBaseBg
56
- } from "./chunk-KWRW6BLG.js";
56
+ } from "./chunk-GLREDNBA.js";
57
57
  import {
58
58
  resolveColor
59
- } from "./chunk-EXNKNJ65.js";
59
+ } from "./chunk-XOGQY4EC.js";
60
60
 
61
61
  // src/family/renderer.ts
62
62
  import * as d3Selection from "d3-selection";
@@ -317,4 +317,4 @@ export {
317
317
  renderFamilyForExport,
318
318
  renderFamily
319
319
  };
320
- //# sourceMappingURL=chunk-W27BULCB.js.map
320
+ //# sourceMappingURL=chunk-OR3OX32W.js.map
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-7TF3QOOD.js";
4
4
  import {
5
5
  parseInArrowLabel
6
- } from "./chunk-RRX4Z4TH.js";
6
+ } from "./chunk-IHOFUR74.js";
7
7
  import {
8
8
  tryStripDescriptionKeyword
9
9
  } from "./chunk-IYULMRBE.js";
@@ -17,8 +17,9 @@ import {
17
17
  stripDefaultModifier,
18
18
  tagAttrKey,
19
19
  validateTagGroupNames
20
- } from "./chunk-DPGI742S.js";
20
+ } from "./chunk-4FKEI4MF.js";
21
21
  import {
22
+ AliasRegistry,
22
23
  INFRA_BEHAVIOR_KEY_SET,
23
24
  INFRA_EDGE_ONLY_KEY_SET,
24
25
  INFRA_REGISTRY,
@@ -30,10 +31,10 @@ import {
30
31
  tryParseSharedOption,
31
32
  warnUnknownMetaKeys,
32
33
  withTagAliases
33
- } from "./chunk-ZJJWON5O.js";
34
+ } from "./chunk-MK55PZVB.js";
34
35
  import {
35
36
  isRecognizedColorName
36
- } from "./chunk-EXNKNJ65.js";
37
+ } from "./chunk-XOGQY4EC.js";
37
38
  import {
38
39
  NAME_DIAGNOSTIC_CODES,
39
40
  emit,
@@ -41,7 +42,7 @@ import {
41
42
  makeDgmoError,
42
43
  nameMergedMessage,
43
44
  suggest
44
- } from "./chunk-OLMWTJVU.js";
45
+ } from "./chunk-5SI6T5A5.js";
45
46
 
46
47
  // src/infra/types.ts
47
48
  var INFRA_BEHAVIOR_KEYS = INFRA_BEHAVIOR_KEY_SET;
@@ -162,7 +163,7 @@ function parseInfra(content) {
162
163
  keys: /* @__PURE__ */ new Set(["split", "fanout"]),
163
164
  tagAliases: /* @__PURE__ */ new Set()
164
165
  };
165
- const nameAliasMap = /* @__PURE__ */ new Map();
166
+ const nameAliasMap = new AliasRegistry();
166
167
  function peelAlias(label) {
167
168
  const trimmed = label.trim();
168
169
  const m = trimmed.match(/^(.*?)\s+as\s+([A-Za-z][A-Za-z0-9_]{0,11})\s*$/);
@@ -194,7 +195,7 @@ function parseInfra(content) {
194
195
  }
195
196
  }
196
197
  function resolveTargetId(rawName) {
197
- const aliasResolved = nameAliasMap.get(rawName.trim());
198
+ const aliasResolved = nameAliasMap.resolve(rawName.trim());
198
199
  if (aliasResolved !== void 0) return aliasResolved;
199
200
  return nodeId(rawName);
200
201
  }
@@ -222,7 +223,7 @@ function parseInfra(content) {
222
223
  if (existing) {
223
224
  const incomingDisplay = displayName(currentNode.label);
224
225
  const existingDisplay = displayName(existing.label);
225
- const isAliasRef = nameAliasMap.get(currentNode.label) === key;
226
+ const isAliasRef = nameAliasMap.lookup(currentNode.label) === key;
226
227
  if (incomingDisplay !== existingDisplay && !isAliasRef) {
227
228
  result.diagnostics.push(
228
229
  makeDgmoError(
@@ -271,6 +272,7 @@ function parseInfra(content) {
271
272
  for (let i = 0; i < lines.length; i++) {
272
273
  const raw = lines[i];
273
274
  const lineNumber = i + 1;
275
+ nameAliasMap.at(lineNumber);
274
276
  const trimmed = raw.trim();
275
277
  const indent = measureIndent(raw);
276
278
  if (!trimmed || trimmed.startsWith("//")) continue;
@@ -336,7 +338,8 @@ function parseInfra(content) {
336
338
  const gLabel = groupMatch[1].trim();
337
339
  const groupAlias = groupMatch[2];
338
340
  const gId = groupId(gLabel);
339
- if (groupAlias) nameAliasMap.set(groupAlias, gId);
341
+ if (groupAlias) nameAliasMap.declare(groupAlias, gId, lineNumber);
342
+ nameAliasMap.noteCanonical(gId, lineNumber);
340
343
  let groupCollapsed = groupMatch[3] !== void 0;
341
344
  const groupMeta = groupMatch[4] ? extractPipeMetadata(groupMatch[4]).tags : void 0;
342
345
  if (groupMeta) {
@@ -381,8 +384,9 @@ function parseInfra(content) {
381
384
  withTagAliases(INFRA_REGISTRY, tagAliasSet),
382
385
  (msg) => warn(lineNumber, msg)
383
386
  );
384
- const id = nameAliasMap.get(name) ?? nodeId(name);
385
- if (alias) nameAliasMap.set(alias, id);
387
+ const id = nameAliasMap.resolve(name) ?? nodeId(name);
388
+ if (alias) nameAliasMap.declare(alias, id, lineNumber);
389
+ nameAliasMap.noteCanonical(id, lineNumber);
386
390
  const isEdge = EDGE_NODE_NAMES.has(id.toLowerCase());
387
391
  currentNode = {
388
392
  id,
@@ -488,8 +492,9 @@ function parseInfra(content) {
488
492
  withTagAliases(INFRA_REGISTRY, tagAliasSet),
489
493
  (msg) => warn(lineNumber, msg)
490
494
  );
491
- const id = nameAliasMap.get(name) ?? nodeId(name);
492
- if (alias) nameAliasMap.set(alias, id);
495
+ const id = nameAliasMap.resolve(name) ?? nodeId(name);
496
+ if (alias) nameAliasMap.declare(alias, id, lineNumber);
497
+ nameAliasMap.noteCanonical(id, lineNumber);
493
498
  const tags = currentGroup.metadata ? { ...currentGroup.metadata, ...nodeTags } : nodeTags;
494
499
  currentNode = {
495
500
  id,
@@ -742,8 +747,9 @@ function parseInfra(content) {
742
747
  withTagAliases(INFRA_REGISTRY, tagAliasSet),
743
748
  (msg) => warn(lineNumber, msg)
744
749
  );
745
- const id = nameAliasMap.get(name) ?? nodeId(name);
746
- if (alias) nameAliasMap.set(alias, id);
750
+ const id = nameAliasMap.resolve(name) ?? nodeId(name);
751
+ if (alias) nameAliasMap.declare(alias, id, lineNumber);
752
+ nameAliasMap.noteCanonical(id, lineNumber);
747
753
  const tags = currentGroup.metadata ? { ...currentGroup.metadata, ...nodeTags } : nodeTags;
748
754
  currentNode = {
749
755
  id,
@@ -778,8 +784,9 @@ function parseInfra(content) {
778
784
  withTagAliases(INFRA_REGISTRY, tagAliasSet),
779
785
  (msg) => warn(lineNumber, msg)
780
786
  );
781
- const id = nameAliasMap.get(name) ?? nodeId(name);
782
- if (alias) nameAliasMap.set(alias, id);
787
+ const id = nameAliasMap.resolve(name) ?? nodeId(name);
788
+ if (alias) nameAliasMap.declare(alias, id, lineNumber);
789
+ nameAliasMap.noteCanonical(id, lineNumber);
783
790
  currentNode = {
784
791
  id,
785
792
  label: name,
@@ -851,6 +858,7 @@ function parseInfra(content) {
851
858
  validateTagGroupNames(result.tagGroups, warn, setError);
852
859
  checkReachability(result);
853
860
  checkSplitSums(result);
861
+ result.diagnostics.push(...nameAliasMap.finish());
854
862
  return result;
855
863
  }
856
864
  function checkSplitSums(result) {
@@ -996,4 +1004,4 @@ export {
996
1004
  parseInfra,
997
1005
  extractSymbols
998
1006
  };
999
- //# sourceMappingURL=chunk-MFSTE3YG.js.map
1007
+ //# sourceMappingURL=chunk-OYK45NY5.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  analyzePert
3
- } from "./chunk-CGLBK5Q4.js";
3
+ } from "./chunk-2PU5XWLA.js";
4
4
  import {
5
5
  computeNodeSizing,
6
6
  layoutPert
@@ -15,11 +15,11 @@ import {
15
15
  } from "./chunk-FJ57274M.js";
16
16
  import {
17
17
  ScaleContext
18
- } from "./chunk-YYVTBZZC.js";
18
+ } from "./chunk-24YPR5EH.js";
19
19
  import {
20
20
  INLINE_HEADER_PAD,
21
21
  layoutInlineHeader
22
- } from "./chunk-6CLC26GU.js";
22
+ } from "./chunk-YJMWEZOB.js";
23
23
  import {
24
24
  serializeSvg
25
25
  } from "./chunk-RU2HHHYA.js";
@@ -36,16 +36,16 @@ import {
36
36
  } from "./chunk-A4GOY3PE.js";
37
37
  import {
38
38
  renderIntegratedLegend
39
- } from "./chunk-6S53NO3M.js";
39
+ } from "./chunk-O7ZKDUDX.js";
40
40
  import {
41
41
  getLegendExtent
42
- } from "./chunk-MTPKBSTR.js";
42
+ } from "./chunk-4SXHMFFP.js";
43
43
  import {
44
44
  FONT_FAMILY
45
45
  } from "./chunk-UTCPNJND.js";
46
46
  import {
47
47
  LEGEND_HEIGHT
48
- } from "./chunk-QX53GOI7.js";
48
+ } from "./chunk-YT5ICQ4R.js";
49
49
  import {
50
50
  measureText,
51
51
  truncateText,
@@ -53,7 +53,7 @@ import {
53
53
  } from "./chunk-MTGGOCND.js";
54
54
  import {
55
55
  parsePert
56
- } from "./chunk-NTBHGUXY.js";
56
+ } from "./chunk-NE7JHZCQ.js";
57
57
  import {
58
58
  addCalendarDays,
59
59
  formatDuration,
@@ -64,13 +64,13 @@ import {
64
64
  import {
65
65
  resolveActiveTagGroup,
66
66
  resolveTagColor
67
- } from "./chunk-DPGI742S.js";
67
+ } from "./chunk-4FKEI4MF.js";
68
68
  import {
69
69
  contrastText,
70
70
  mix,
71
71
  shapeFill,
72
72
  themeBaseBg
73
- } from "./chunk-KWRW6BLG.js";
73
+ } from "./chunk-GLREDNBA.js";
74
74
 
75
75
  // src/pert/renderer.ts
76
76
  import * as d3Selection from "d3-selection";
@@ -1871,4 +1871,4 @@ export {
1871
1871
  measurePertAnalysisBlock,
1872
1872
  renderPertAnalysisBlock
1873
1873
  };
1874
- //# sourceMappingURL=chunk-ISKO4MQ5.js.map
1874
+ //# sourceMappingURL=chunk-PFZDLHHG.js.map
@@ -4,7 +4,7 @@ import {
4
4
  } from "./chunk-VV6HZQ5K.js";
5
5
  import {
6
6
  layoutOrg
7
- } from "./chunk-CH4WODSG.js";
7
+ } from "./chunk-TJS3J5B3.js";
8
8
  import {
9
9
  renderCollapseBar,
10
10
  renderNodeCard
@@ -28,17 +28,17 @@ import {
28
28
  } from "./chunk-FJ57274M.js";
29
29
  import {
30
30
  ScaleContext
31
- } from "./chunk-YYVTBZZC.js";
31
+ } from "./chunk-24YPR5EH.js";
32
32
  import {
33
33
  TITLE_FONT_SIZE,
34
34
  TITLE_FONT_WEIGHT
35
35
  } from "./chunk-A4GOY3PE.js";
36
36
  import {
37
37
  renderIntegratedLegend
38
- } from "./chunk-6S53NO3M.js";
38
+ } from "./chunk-O7ZKDUDX.js";
39
39
  import {
40
40
  getMaxLegendReservedHeight
41
- } from "./chunk-MTPKBSTR.js";
41
+ } from "./chunk-4SXHMFFP.js";
42
42
  import {
43
43
  FONT_FAMILY
44
44
  } from "./chunk-UTCPNJND.js";
@@ -47,28 +47,27 @@ import {
47
47
  EYE_OPEN_PATH,
48
48
  LEGEND_EYE_GAP,
49
49
  LEGEND_EYE_SIZE,
50
- LEGEND_GROUP_GAP,
51
50
  LEGEND_HEIGHT
52
- } from "./chunk-QX53GOI7.js";
51
+ } from "./chunk-YT5ICQ4R.js";
53
52
  import {
54
53
  measureText
55
54
  } from "./chunk-MTGGOCND.js";
56
55
  import {
57
56
  parseOrg
58
- } from "./chunk-7SEQPFBX.js";
57
+ } from "./chunk-2AC2KTVM.js";
59
58
  import {
60
59
  resolveTagColor,
61
60
  tagAttrKey
62
- } from "./chunk-DPGI742S.js";
61
+ } from "./chunk-4FKEI4MF.js";
63
62
  import {
64
63
  fillModeFromOptions
65
- } from "./chunk-ZJJWON5O.js";
64
+ } from "./chunk-MK55PZVB.js";
66
65
  import {
67
66
  contrastText,
68
67
  mix,
69
68
  shapeFill,
70
69
  themeBaseBg
71
- } from "./chunk-KWRW6BLG.js";
70
+ } from "./chunk-GLREDNBA.js";
72
71
 
73
72
  // src/org/renderer.ts
74
73
  import * as d3Selection from "d3-selection";
@@ -79,8 +78,11 @@ var ANCESTOR_DOT_R = 4;
79
78
  var ANCESTOR_LABEL_FONT_SIZE = 11;
80
79
  var ANCESTOR_ROW_HEIGHT = 22;
81
80
  var ANCESTOR_TRAIL_BOTTOM_GAP = 16;
82
- function ancestorTrailReserve(count) {
83
- return count > 0 ? count * ANCESTOR_ROW_HEIGHT + ANCESTOR_TRAIL_BOTTOM_GAP : 0;
81
+ var ANCESTOR_TRAIL_TOP_INK = ANCESTOR_DOT_R + 2;
82
+ function ancestorTrailReserve(count, headroom = 0) {
83
+ if (count < 1) return 0;
84
+ const inkAboveRoot = ANCESTOR_TRAIL_BOTTOM_GAP + (count - 1) * ANCESTOR_ROW_HEIGHT + ANCESTOR_TRAIL_TOP_INK;
85
+ return Math.max(0, inkAboveRoot - headroom);
84
86
  }
85
87
  var LEGEND_FIXED_GAP = 8;
86
88
  function nodeFill(palette, isDark, nodeColor, fillMode) {
@@ -131,7 +133,7 @@ function renderOrg(container, parsed, layout, palette, isDark, onClickItem, expo
131
133
  const titleOffset = showTitle ? sTitleHeight : 0;
132
134
  const legendOnly = layout.nodes.length === 0;
133
135
  const hasLegend = layout.legend.length > 0;
134
- const layoutLegendShift = LEGEND_HEIGHT + LEGEND_GROUP_GAP;
136
+ const layoutLegendShift = layout.legendShift;
135
137
  const fixedLegend = !exportDims && hasLegend && !legendOnly;
136
138
  const legendReserve = fixedLegend ? getMaxLegendReservedHeight(
137
139
  {
@@ -146,11 +148,18 @@ function renderOrg(container, parsed, layout, palette, isDark, onClickItem, expo
146
148
  const titleReserve = fixedTitle ? sTitleHeight : 0;
147
149
  const hasAncestorTrail = ancestorPath && ancestorPath.length > 0;
148
150
  const ancestorTrailHeight = hasAncestorTrail ? ancestorPath.length * sAncestorRowHeight + sAncestorTrailBottomGap : 0;
151
+ const rootNodeIds = new Set(parsed.roots.map((r) => r.id));
152
+ const rootLayoutNode = layout.nodes.find((n) => rootNodeIds.has(n.id));
153
+ const rootLayoutContainer = rootLayoutNode ? null : layout.containers.find((c) => rootNodeIds.has(c.nodeId));
154
+ const rootCenterX = rootLayoutNode ? rootLayoutNode.x : rootLayoutContainer ? rootLayoutContainer.x + rootLayoutContainer.width / 2 : null;
155
+ const rootTopY = rootLayoutNode ? rootLayoutNode.y : rootLayoutContainer ? rootLayoutContainer.y : null;
156
+ const legendUnshift = fixedLegend ? layoutLegendShift : 0;
157
+ const trailShift = hasAncestorTrail && rootTopY !== null ? ancestorTrailReserve(
158
+ ancestorPath.length,
159
+ Math.max(0, rootTopY - legendUnshift)
160
+ ) : ancestorTrailHeight;
149
161
  const diagramW = layout.width;
150
- let diagramH = layout.height + (fixedTitle ? 0 : titleOffset) + ancestorTrailHeight;
151
- if (fixedLegend) {
152
- diagramH -= layoutLegendShift;
153
- }
162
+ const diagramH = layout.height + (fixedTitle ? 0 : titleOffset) - legendUnshift + trailShift;
154
163
  const availH = height - sDiagramPadding * 2 - legendReserve - titleReserve;
155
164
  const scaleX = (width - sDiagramPadding * 2) / diagramW;
156
165
  const scaleY = availH / diagramH;
@@ -182,13 +191,12 @@ function renderOrg(container, parsed, layout, palette, isDark, onClickItem, expo
182
191
  }
183
192
  }
184
193
  }
185
- const contentYShift = (fixedTitle ? 0 : titleOffset) + ancestorTrailHeight;
194
+ const contentYShift = (fixedTitle ? 0 : titleOffset) - legendUnshift + trailShift;
186
195
  const contentG = mainG.append("g").attr("transform", `translate(0, ${contentYShift})`);
187
196
  const displayNames = /* @__PURE__ */ new Map();
188
197
  for (const group of parsed.tagGroups) {
189
198
  displayNames.set(tagAttrKey(group.name), group.name);
190
199
  }
191
- const rootNodeIds = new Set(parsed.roots.map((r) => r.id));
192
200
  const colorOff = parsed.options?.["color"] === "off";
193
201
  for (const c of layout.containers) {
194
202
  const cG = contentG.append("g").attr("transform", `translate(${c.x}, ${c.y})`).attr("class", "org-container").attr("data-line-number", String(c.lineNumber));
@@ -355,10 +363,6 @@ function renderOrg(container, parsed, layout, palette, isDark, onClickItem, expo
355
363
  }
356
364
  }
357
365
  if (hasAncestorTrail) {
358
- const rootNode = layout.nodes.find((n) => rootNodeIds.has(n.id));
359
- const rootContainer = !rootNode ? layout.containers.find((c) => rootNodeIds.has(c.nodeId)) : null;
360
- const rootCenterX = rootNode ? rootNode.x : rootContainer ? rootContainer.x + rootContainer.width / 2 : null;
361
- const rootTopY = rootNode ? rootNode.y : rootContainer ? rootContainer.y : null;
362
366
  if (rootCenterX !== null && rootTopY !== null) {
363
367
  const trailBottomY = rootTopY - sAncestorTrailBottomGap;
364
368
  const trailG = contentG.append("g").attr("class", "org-ancestor-trail");
@@ -489,4 +493,4 @@ export {
489
493
  renderOrg,
490
494
  renderOrgForExport
491
495
  };
492
- //# sourceMappingURL=chunk-ENJWB5LU.js.map
496
+ //# sourceMappingURL=chunk-PJHYUVD3.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  parseFirstLine
3
- } from "./chunk-ZJJWON5O.js";
3
+ } from "./chunk-MK55PZVB.js";
4
4
  import {
5
5
  parseCloudReferenceFence,
6
6
  parseCloudReferenceUrl
@@ -8,7 +8,7 @@ import {
8
8
  import {
9
9
  formatDgmoError,
10
10
  makeDgmoError
11
- } from "./chunk-OLMWTJVU.js";
11
+ } from "./chunk-5SI6T5A5.js";
12
12
 
13
13
  // src/live-link/parser.ts
14
14
  var GLOBAL_DIRECTIVES = /* @__PURE__ */ new Set([
@@ -219,4 +219,4 @@ export {
219
219
  isLiveLinkLine,
220
220
  parseLiveLink
221
221
  };
222
- //# sourceMappingURL=chunk-K6MQJ5IV.js.map
222
+ //# sourceMappingURL=chunk-Q446PFCV.js.map
@@ -11,7 +11,7 @@ import {
11
11
  } from "./chunk-WGC42WJU.js";
12
12
  import {
13
13
  mix
14
- } from "./chunk-KWRW6BLG.js";
14
+ } from "./chunk-GLREDNBA.js";
15
15
 
16
16
  // src/utils/note-box/svg.ts
17
17
  var NOTE_STROKE_WIDTH = 0.6;
@@ -133,4 +133,4 @@ export {
133
133
  NOTE_BADGE_RADIUS,
134
134
  renderNoteBadge
135
135
  };
136
- //# sourceMappingURL=chunk-IW6N2JJL.js.map
136
+ //# sourceMappingURL=chunk-Q74GP3GK.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  MONO_FAMILY
3
- } from "./chunk-HTGYAMOK.js";
3
+ } from "./chunk-ITAFWUSB.js";
4
4
  import {
5
5
  FONT_FAMILY
6
6
  } from "./chunk-UTCPNJND.js";
@@ -62,4 +62,4 @@ function escapeXml(s) {
62
62
  export {
63
63
  renderLiveLinkCard
64
64
  };
65
- //# sourceMappingURL=chunk-7REARI5N.js.map
65
+ //# sourceMappingURL=chunk-QFHPGDR5.js.map
@@ -11,7 +11,7 @@ import {
11
11
  matchTagBlockHeading,
12
12
  stripDefaultModifier,
13
13
  tagAttrKey
14
- } from "./chunk-DPGI742S.js";
14
+ } from "./chunk-4FKEI4MF.js";
15
15
  import {
16
16
  FAMILY_PERSON_REGISTRY,
17
17
  FAMILY_UNION_REGISTRY,
@@ -26,14 +26,14 @@ import {
26
26
  tokenizeQuoteAware,
27
27
  tryParseSharedOption,
28
28
  withTagAliases
29
- } from "./chunk-ZJJWON5O.js";
29
+ } from "./chunk-MK55PZVB.js";
30
30
  import {
31
31
  nord,
32
32
  resolveColor
33
- } from "./chunk-EXNKNJ65.js";
33
+ } from "./chunk-XOGQY4EC.js";
34
34
  import {
35
35
  emit
36
- } from "./chunk-OLMWTJVU.js";
36
+ } from "./chunk-5SI6T5A5.js";
37
37
 
38
38
  // src/family/diagnostics.ts
39
39
  var FAMILY_DX = {
@@ -571,4 +571,4 @@ export {
571
571
  FAMILY_DIAGNOSTICS,
572
572
  parseFamily
573
573
  };
574
- //# sourceMappingURL=chunk-QPG55HGH.js.map
574
+ //# sourceMappingURL=chunk-RJUMXXKR.js.map