@diagrammo/dgmo 0.51.0 → 0.53.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 (336) hide show
  1. package/.cursorrules +74 -77
  2. package/.github/copilot-instructions.md +74 -77
  3. package/.windsurfrules +74 -77
  4. package/SKILL.md +74 -77
  5. package/dist/advanced.d.ts +109 -246
  6. package/dist/advanced.js +296 -633
  7. package/dist/analyzer-TDN5KJFP.js +15 -0
  8. package/dist/auto.css +14 -6
  9. package/dist/auto.js +141 -129
  10. package/dist/auto.mjs +2062 -937
  11. package/dist/block.css +14 -6
  12. package/dist/block.js +123 -73
  13. package/dist/calculator-VBIT6GQF.js +11 -0
  14. package/dist/chart-meta-CPNVUZ5J.d.ts +232 -0
  15. package/dist/chart-meta.d.ts +2 -0
  16. package/dist/chart-meta.js +105 -0
  17. package/dist/charts-d3-DH2XA45I.js +26 -0
  18. package/dist/{chunk-RLFVAKEO.js → chunk-22OQWBWD.js} +25 -8
  19. package/dist/{chunk-I2QZFCS2.js → chunk-27STWBOK.js} +10 -8
  20. package/dist/{chunk-5PZT4DQG.js → chunk-2QC4HXCY.js} +41 -21
  21. package/dist/{chunk-HFMYN6N2.js → chunk-3B2GXZCX.js} +4 -3
  22. package/dist/{chunk-F3FYUFUH.js → chunk-3BEKKRH5.js} +18 -17
  23. package/dist/{chunk-2UJSV2VT.js → chunk-3CZLWOCI.js} +17 -7
  24. package/dist/{chunk-JEUJOX5X.js → chunk-3IUHKMJI.js} +2 -2
  25. package/dist/{chunk-7L4UJOY6.js → chunk-3TYUXC7D.js} +2 -2
  26. package/dist/{chunk-Y2ZE3MSG.js → chunk-43E26CDA.js} +2 -2
  27. package/dist/{chunk-ZO27FGJS.js → chunk-4ASVFYB2.js} +10 -7
  28. package/dist/{chunk-WCT3NYCV.js → chunk-4ASYQ347.js} +33 -8
  29. package/dist/{chunk-2ILHQOL3.js → chunk-4K42RUGC.js} +41 -13
  30. package/dist/{chunk-I5IGB56C.js → chunk-4QV26TEG.js} +41 -1
  31. package/dist/{chunk-QOOUC2J5.js → chunk-4RGZFA7H.js} +2 -2
  32. package/dist/{chunk-CXK4DZH3.js → chunk-4W2PE66Q.js} +12 -2
  33. package/dist/{chunk-EXOQP75F.js → chunk-4WGMGKCZ.js} +53 -33
  34. package/dist/{chunk-JED6ZDEE.js → chunk-5HWPEYWB.js} +2 -2
  35. package/dist/{chunk-3YSQZ75W.js → chunk-65V6IRFN.js} +46 -33
  36. package/dist/{chunk-TMACGPW5.js → chunk-6AUZPPAV.js} +4 -4
  37. package/dist/{chunk-6H7O2OPM.js → chunk-6DCOIN4W.js} +36 -6
  38. package/dist/{chunk-GTWKD3QT.js → chunk-6HTRCTAS.js} +7 -6
  39. package/dist/{chunk-VB4UJ3H2.js → chunk-6KY7OCZC.js} +21 -11
  40. package/dist/{chunk-YAA6IID3.js → chunk-774C2FF3.js} +2 -2
  41. package/dist/{chunk-WJ7RW65H.js → chunk-7GUF6SDR.js} +22 -20
  42. package/dist/{chunk-QYTPPDAO.js → chunk-7JDTNFAK.js} +3 -3
  43. package/dist/{chunk-U6EQI3U6.js → chunk-ADYKAKE3.js} +3 -3
  44. package/dist/{chunk-VNSXLA6G.js → chunk-AHXIMHDQ.js} +84 -20
  45. package/dist/chunk-AIMLCDAO.js +404 -0
  46. package/dist/{chunk-6MNGECP2.js → chunk-ALYZ3MAA.js} +4 -4
  47. package/dist/{chunk-5F5ELR3V.js → chunk-AN2DQB3G.js} +151 -20
  48. package/dist/{chunk-IEWG6J7C.js → chunk-AZNXGWDC.js} +91 -36
  49. package/dist/{chunk-4XFBQT5O.js → chunk-B4XS2AF2.js} +3 -3
  50. package/dist/{chunk-CC4YRBWV.js → chunk-BD3WGY4T.js} +18 -8
  51. package/dist/{chunk-RAHVMKBG.js → chunk-BFDVEO5R.js} +2 -2
  52. package/dist/{chunk-332ZR4QU.js → chunk-BR7AYN76.js} +8 -8
  53. package/dist/{chunk-P3NRSSUU.js → chunk-BULHGPHK.js} +3 -3
  54. package/dist/{chunk-PZDBOK2Q.js → chunk-CK2GMDXD.js} +11 -5
  55. package/dist/{chunk-467TVMQL.js → chunk-CMVZWP32.js} +3 -3
  56. package/dist/{chunk-GNSFLJAA.js → chunk-CQFNIIQN.js} +7 -7
  57. package/dist/{chunk-RBDIYLA5.js → chunk-DAOFNU6J.js} +17 -1
  58. package/dist/{chunk-AFIEPDLX.js → chunk-DWUMPMV2.js} +23 -11
  59. package/dist/{chunk-USZW2HHU.js → chunk-EQW6HOP4.js} +4 -3
  60. package/dist/{chunk-6BQFET7X.js → chunk-FFXCKZOU.js} +12 -4
  61. package/dist/{chunk-WRNFDFPU.js → chunk-FGDSTT3F.js} +2 -2
  62. package/dist/{chunk-6NFYEQDX.js → chunk-FLDC7ZAK.js} +34 -7
  63. package/dist/{chunk-IUJODQKX.js → chunk-FT7TPPZ5.js} +25 -23
  64. package/dist/{chunk-IEDMFNU7.js → chunk-FUKNRLIJ.js} +19 -7
  65. package/dist/{chunk-JJXGQIRV.js → chunk-FXCB7H5O.js} +4 -4
  66. package/dist/{chunk-GGHRAITI.js → chunk-GABSL6TH.js} +4 -4
  67. package/dist/{chunk-RXKTSFDL.js → chunk-GAWKIIPO.js} +35 -43
  68. package/dist/{chunk-ZJ3LS7DW.js → chunk-GMAH572Z.js} +6 -6
  69. package/dist/{chunk-TRM2J7ZN.js → chunk-GMIJ35PW.js} +28 -29
  70. package/dist/{chunk-AB7INMR5.js → chunk-GQ644SPD.js} +26 -25
  71. package/dist/{chunk-5QKQSSPO.js → chunk-GRM2A4BG.js} +4 -4
  72. package/dist/{chunk-3ODS2VGL.js → chunk-GWQJKTFS.js} +161 -704
  73. package/dist/{chunk-OTOHI4JO.js → chunk-H3HFC3SQ.js} +2 -2
  74. package/dist/{chunk-JSSX2SX4.js → chunk-HE5J53SZ.js} +4 -4
  75. package/dist/{chunk-2EQMXBBQ.js → chunk-HNBY6CNV.js} +3 -3
  76. package/dist/{chunk-J76PIKAT.js → chunk-HO3RCNF6.js} +3 -3
  77. package/dist/{chunk-OJTXTQA2.js → chunk-HORZ5H2L.js} +38 -31
  78. package/dist/{chunk-MX2EY5Y7.js → chunk-HOXKNRON.js} +2 -2
  79. package/dist/{chunk-E7Y3SYKW.js → chunk-I64ECJX3.js} +18 -8
  80. package/dist/{chunk-JM4LEPY3.js → chunk-IQJCVREL.js} +11 -8
  81. package/dist/{chunk-3JLKYGBQ.js → chunk-J7HI6G3G.js} +9 -6
  82. package/dist/{chunk-Q62FEYK3.js → chunk-JHOAH4TI.js} +3 -3
  83. package/dist/{chunk-OZPBJM5Q.js → chunk-JTMSWEIW.js} +11 -8
  84. package/dist/{chunk-P6T66CCZ.js → chunk-JYDMBWRP.js} +37 -19
  85. package/dist/{chunk-7DF4J4RL.js → chunk-KKHCNSKK.js} +17 -11
  86. package/dist/{chunk-ENRS56GC.js → chunk-KUSAVOWZ.js} +11 -8
  87. package/dist/{chunk-BYJBIALT.js → chunk-LC3FFD43.js} +23 -18
  88. package/dist/{chunk-65WJYYKJ.js → chunk-LHILKFDP.js} +16 -11
  89. package/dist/{chunk-NEQ6GJXB.js → chunk-LQHVDZYC.js} +52 -16
  90. package/dist/{chunk-5WPNFSXP.js → chunk-MA3HJZHB.js} +5 -5
  91. package/dist/{chunk-Z6XJQ6KO.js → chunk-MEQYZZFR.js} +3 -3
  92. package/dist/{chunk-MVN25IF6.js → chunk-NNUMX6WX.js} +42 -12
  93. package/dist/{chunk-7DYOELRK.js → chunk-NNYFQOTK.js} +78 -38
  94. package/dist/{chunk-NNAAJVBU.js → chunk-NR5HCAUD.js} +1 -1
  95. package/dist/{chunk-H6PI3KJT.js → chunk-ODUT5WMC.js} +2 -2
  96. package/dist/{chunk-5PDTIBLV.js → chunk-P3H7QVDH.js} +56 -19
  97. package/dist/{chunk-ND76YJCN.js → chunk-PIXZTCKH.js} +84 -117
  98. package/dist/{chunk-3LV2NCB6.js → chunk-PKNNHU7H.js} +22 -9
  99. package/dist/{chunk-TK2VQQX2.js → chunk-PT4SW76W.js} +20 -18
  100. package/dist/{chunk-AE7II3E3.js → chunk-PV2QO7QL.js} +4 -4
  101. package/dist/{chunk-FTBZV6NE.js → chunk-PYO4TJJ3.js} +34 -26
  102. package/dist/{chunk-QZPEGJOM.js → chunk-Q7AH665U.js} +28 -14
  103. package/dist/{chunk-QHI5XVUJ.js → chunk-QAALSCKI.js} +27 -26
  104. package/dist/{chunk-GD6L76WD.js → chunk-QI3BOLQB.js} +23 -11
  105. package/dist/{chunk-Y6GBQTBK.js → chunk-QWIBT6DS.js} +50 -28
  106. package/dist/{chunk-GU46PPT3.js → chunk-QXGACPS2.js} +5 -5
  107. package/dist/{chunk-FMDSF3OV.js → chunk-QZAW5SFH.js} +2 -2
  108. package/dist/{chunk-YGJZWZTY.js → chunk-R5NH5BZG.js} +12 -9
  109. package/dist/{chunk-U5SI5NIM.js → chunk-RJ5LBZ5U.js} +43 -26
  110. package/dist/{chunk-XHVV4NVW.js → chunk-RT7ACF77.js} +12 -2
  111. package/dist/{chunk-XEQXCIBC.js → chunk-RW5PEJ7D.js} +18 -6
  112. package/dist/{chunk-4VWJ4LW2.js → chunk-SG4PRYO3.js} +61 -49
  113. package/dist/{chunk-RBHWPDBB.js → chunk-SGPFVDUL.js} +18 -7
  114. package/dist/{chunk-KJGG2JKQ.js → chunk-SQCBSFT5.js} +84 -79
  115. package/dist/{chunk-5X6YQA2J.js → chunk-U7NKYLX2.js} +18 -16
  116. package/dist/chunk-U7VO6JAA.js +566 -0
  117. package/dist/{chunk-32XPAAET.js → chunk-UFQJMOVZ.js} +10 -10
  118. package/dist/{chunk-Z72XRXD4.js → chunk-UJRTPOHH.js} +3 -3
  119. package/dist/{chunk-EDA6C7MV.js → chunk-UK6DKJLD.js} +34 -14
  120. package/dist/{chunk-GROLTAWZ.js → chunk-UKP5HWB5.js} +149 -89
  121. package/dist/{chunk-DY7XLRHK.js → chunk-UQRIKAMH.js} +28 -27
  122. package/dist/{chunk-TYS6CSS5.js → chunk-UU6LUYUH.js} +2 -2
  123. package/dist/{chunk-NI3XQBPB.js → chunk-UVDCHR4E.js} +18 -6
  124. package/dist/{chunk-6K2M4VSR.js → chunk-VAO6ANGC.js} +23 -10
  125. package/dist/{chunk-6NYWYNBI.js → chunk-VGNIDAPQ.js} +4 -4
  126. package/dist/{chunk-VL2O2F3W.js → chunk-VHO3YBTB.js} +2 -2
  127. package/dist/{chunk-IUO34HKW.js → chunk-VIRANCNY.js} +36 -32
  128. package/dist/{chunk-4QZ43D7I.js → chunk-VJHBSPGF.js} +12 -14
  129. package/dist/{chunk-BGP54HVR.js → chunk-VKNCC2GX.js} +12 -8
  130. package/dist/{chunk-FC5I2KXV.js → chunk-VRRDUYOK.js} +7 -7
  131. package/dist/{chunk-G3PF3S7P.js → chunk-W2DINCHL.js} +15 -15
  132. package/dist/{chunk-OU7HLO7I.js → chunk-W5KMNC5U.js} +8 -8
  133. package/dist/{chunk-FFUN5D66.js → chunk-WF64MW5G.js} +2 -2
  134. package/dist/{chunk-X7EC3L2H.js → chunk-X3RXGSCZ.js} +48 -30
  135. package/dist/{chunk-KFNWFNAA.js → chunk-XEAQDIMF.js} +7 -6
  136. package/dist/{chunk-AXW3M6OQ.js → chunk-XG4NWFPY.js} +38 -27
  137. package/dist/{chunk-B63YB7X3.js → chunk-XQ4KN6JQ.js} +127 -65
  138. package/dist/{chunk-WBRZJOEC.js → chunk-XY3UDKKH.js} +4 -4
  139. package/dist/{chunk-IE477RQZ.js → chunk-YG2BEIQU.js} +14 -13
  140. package/dist/{chunk-LV4BETUU.js → chunk-YJVA3QUU.js} +55 -5
  141. package/dist/{chunk-5SVOCD5W.js → chunk-YR43LJT5.js} +20 -16
  142. package/dist/{chunk-TLVIHFRO.js → chunk-ZKPPI6BF.js} +2 -2
  143. package/dist/{chunk-WQLMU7VG.js → chunk-ZXUAPTCK.js} +3 -3
  144. package/dist/cli.cjs +158 -155
  145. package/dist/clock.js +25 -23
  146. package/dist/countdown.js +4 -3
  147. package/dist/dgmo-router-B4S23EBH.js +86 -0
  148. package/dist/dimensions-K6PGYYGT.js +22 -0
  149. package/dist/editor.js +36 -6
  150. package/dist/element.js +143 -131
  151. package/dist/element.mjs +2062 -937
  152. package/dist/flowchart-parser-LALR6J6F.js +21 -0
  153. package/dist/{flowchart-renderer-AQSMEMYF.js → flowchart-renderer-DXYB5YRF.js} +14 -14
  154. package/dist/highlight.d.ts +21 -1
  155. package/dist/highlight.js +129 -8
  156. package/dist/index.d.ts +4 -2
  157. package/dist/index.js +80 -75
  158. package/dist/layout-3BVDMKXI.js +15 -0
  159. package/dist/layout-3M5UYJHY.js +14 -0
  160. package/dist/{layout-JDJAEQ3P.js → layout-3V2A4MUE.js} +8 -8
  161. package/dist/layout-4IHCMWZN.js +19 -0
  162. package/dist/layout-5XGYNYVT.js +9 -0
  163. package/dist/layout-AZUPXWSK.js +15 -0
  164. package/dist/{layout-F4WO357A.js → layout-CAAKQX4W.js} +3 -3
  165. package/dist/layout-CB3XWCOI.js +10 -0
  166. package/dist/{layout-OAC4PEAC.js → layout-E6HR6PXH.js} +7 -7
  167. package/dist/{layout-7QXCNOVS.js → layout-HBWT2G23.js} +3 -3
  168. package/dist/layout-KPQWJNAG.js +14 -0
  169. package/dist/layout-OL2XFJXA.js +17 -0
  170. package/dist/layout-WCAIKGZG.js +19 -0
  171. package/dist/layout-WSMPBQ4Q.js +17 -0
  172. package/dist/layout-ZE5DRJWX.js +20 -0
  173. package/dist/{layout-search-55FU6HD3.js → layout-search-34DPZD43.js} +51 -35
  174. package/dist/legend-constants-P5EQWRQQ.js +49 -0
  175. package/dist/{palettes-PRJ2RI6D.js → palettes-FGTNFARW.js} +4 -4
  176. package/dist/{parser-KKTJ6M3Y.js → parser-275KP7JO.js} +8 -8
  177. package/dist/parser-27Z76SN3.js +22 -0
  178. package/dist/parser-3CODK6RG.js +15 -0
  179. package/dist/{parser-EH5VE7ZN.js → parser-3KIGEEJM.js} +6 -6
  180. package/dist/parser-3VSWEKBF.js +15 -0
  181. package/dist/parser-4E4I3GNT.js +13 -0
  182. package/dist/parser-5FGJSQNS.js +12 -0
  183. package/dist/parser-5HQXCNOS.js +12 -0
  184. package/dist/parser-5QPFOB5F.js +12 -0
  185. package/dist/parser-6B6SSZT7.js +11 -0
  186. package/dist/parser-6PPHAXXH.js +14 -0
  187. package/dist/parser-7JHWEWXM.js +13 -0
  188. package/dist/{parser-5PDYJGWA.js → parser-7JVIDLLR.js} +7 -7
  189. package/dist/parser-CKA3QMAG.js +18 -0
  190. package/dist/parser-CRKLXGW7.js +13 -0
  191. package/dist/parser-EXNBDNGY.js +11 -0
  192. package/dist/parser-FF4BMRSB.js +16 -0
  193. package/dist/parser-FOOFEJQU.js +13 -0
  194. package/dist/parser-G26MTBFS.js +11 -0
  195. package/dist/parser-GKP2MHHL.js +11 -0
  196. package/dist/parser-GN2MM5CC.js +11 -0
  197. package/dist/parser-IKWK2ZU3.js +18 -0
  198. package/dist/parser-IVGHXLZP.js +14 -0
  199. package/dist/parser-NNIL3HXU.js +11 -0
  200. package/dist/parser-RNLTBIJ6.js +19 -0
  201. package/dist/parser-UWRX52PC.js +16 -0
  202. package/dist/parser-VOERD6XR.js +14 -0
  203. package/dist/parser-XNKJCMMA.js +13 -0
  204. package/dist/parser-XVPTRWZ4.js +15 -0
  205. package/dist/parser-YSLNDFLV.js +22 -0
  206. package/dist/parser-ZGNXYFPS.js +15 -0
  207. package/dist/parser-ZQDQTB4X.js +20 -0
  208. package/dist/pert.d.ts +4 -2
  209. package/dist/registry-CaSw0PSH.d.ts +350 -0
  210. package/dist/renderer-2C6DJRYN.js +24 -0
  211. package/dist/renderer-5MPN7CXZ.js +19 -0
  212. package/dist/renderer-6EN5XXJZ.js +27 -0
  213. package/dist/renderer-6WRYVM5R.js +24 -0
  214. package/dist/renderer-7NQSTQMQ.js +16 -0
  215. package/dist/renderer-7ZNVOVFG.js +16 -0
  216. package/dist/{renderer-KQB7UGDS.js → renderer-AK2WO4EI.js} +7 -6
  217. package/dist/renderer-COLQFSFV.js +26 -0
  218. package/dist/renderer-CWEFGEIC.js +36 -0
  219. package/dist/renderer-D3BRNOMV.js +29 -0
  220. package/dist/renderer-HIFQVEJA.js +22 -0
  221. package/dist/renderer-JCZG6AYU.js +28 -0
  222. package/dist/{renderer-6RKQPNJI.js → renderer-JTCX6PCG.js} +13 -13
  223. package/dist/renderer-JWGQSTMR.js +37 -0
  224. package/dist/{renderer-3YPZHMOU.js → renderer-K7XLVPH5.js} +6 -6
  225. package/dist/renderer-KARQF3F3.js +22 -0
  226. package/dist/renderer-LVZAHRP6.js +34 -0
  227. package/dist/{renderer-QXGN5H3A.js → renderer-NE5W7CQP.js} +8 -8
  228. package/dist/renderer-QD2SJF2I.js +34 -0
  229. package/dist/renderer-RLMOTXZ6.js +37 -0
  230. package/dist/renderer-SQ54MDSA.js +26 -0
  231. package/dist/{renderer-UV6MI64M.js → renderer-TYHGXAVT.js} +7 -6
  232. package/dist/renderer-UKXW2QPE.js +23 -0
  233. package/dist/renderer-UPF7NRTI.js +28 -0
  234. package/dist/renderer-VMH6L6CP.js +24 -0
  235. package/dist/{renderer-GHPZMFU2.js → renderer-WCWI4I6A.js} +5 -5
  236. package/dist/renderer-WFSUBKUL.js +25 -0
  237. package/dist/renderer-WNFXYYGL.js +21 -0
  238. package/dist/{renderer-RGIYOTKJ.js → renderer-XTXSOK3L.js} +14 -14
  239. package/dist/renderer-YUKPS27O.js +24 -0
  240. package/dist/renderer-YUXGXGSW.js +27 -0
  241. package/dist/renderer-ZBTEX2JK.js +16 -0
  242. package/dist/renderer-radial-WF6VOUOD.js +21 -0
  243. package/dist/{resolver-EMTGNR3D.js → resolver-WFKZYBJ2.js} +4 -4
  244. package/dist/state-parser-L7DHZIQO.js +19 -0
  245. package/dist/state-renderer-TFEUOP4H.js +38 -0
  246. package/dist/{themes-32xj5ZTW.d.ts → themes-tbBkIVsn.d.ts} +2 -349
  247. package/docs/ai-integration.md +74 -77
  248. package/docs/language-reference.md +329 -290
  249. package/fonts/Inter-Bold.woff2 +0 -0
  250. package/fonts/Inter-Regular.woff2 +0 -0
  251. package/gallery/fixtures/boxes-and-lines-diverging.dgmo +1 -2
  252. package/gallery/fixtures/boxes-and-lines.dgmo +1 -1
  253. package/gallery/fixtures/clock.dgmo +1 -1
  254. package/gallery/fixtures/event-line.dgmo +1 -1
  255. package/gallery/fixtures/gantt-full.dgmo +1 -1
  256. package/gallery/fixtures/gantt-sprints.dgmo +9 -9
  257. package/gallery/fixtures/gantt.dgmo +1 -1
  258. package/gallery/fixtures/legacy-syntax-backcompat.dgmo +16 -0
  259. package/gallery/fixtures/state-tags.dgmo +40 -0
  260. package/gallery/fixtures/swimlane.dgmo +1 -1
  261. package/gallery/fixtures/timeline-intraday.dgmo +1 -1
  262. package/package.json +5 -1
  263. package/dist/analyzer-BJ54GIFB.js +0 -15
  264. package/dist/calculator-LDYQCDDY.js +0 -11
  265. package/dist/charts-d3-7E4B4IMW.js +0 -26
  266. package/dist/dgmo-router-Y2VEX46B.js +0 -86
  267. package/dist/dimensions-F7B5C4BJ.js +0 -22
  268. package/dist/flowchart-parser-MY53QWTZ.js +0 -21
  269. package/dist/layout-46366KBT.js +0 -10
  270. package/dist/layout-46N4JJYK.js +0 -17
  271. package/dist/layout-4DIUOX2T.js +0 -14
  272. package/dist/layout-AM2JWW3X.js +0 -15
  273. package/dist/layout-CBCLPMSG.js +0 -15
  274. package/dist/layout-EE6GE46Y.js +0 -17
  275. package/dist/layout-G23F7LDH.js +0 -9
  276. package/dist/layout-HYZPWAK5.js +0 -18
  277. package/dist/layout-MUPRALE5.js +0 -14
  278. package/dist/layout-YVTNOTN4.js +0 -20
  279. package/dist/layout-ZDOSXL5G.js +0 -19
  280. package/dist/parser-2Q2T4C3B.js +0 -22
  281. package/dist/parser-3A42DZ72.js +0 -11
  282. package/dist/parser-4RFTKAQX.js +0 -15
  283. package/dist/parser-57ILIFZ2.js +0 -20
  284. package/dist/parser-5A2UWU6B.js +0 -11
  285. package/dist/parser-6BJEXUFX.js +0 -13
  286. package/dist/parser-6ZKABF5S.js +0 -22
  287. package/dist/parser-AIMHGJRR.js +0 -19
  288. package/dist/parser-AZJ25OKK.js +0 -13
  289. package/dist/parser-B77S5SZM.js +0 -11
  290. package/dist/parser-BEPSWJAD.js +0 -11
  291. package/dist/parser-BKI42XBQ.js +0 -16
  292. package/dist/parser-C3D7MVXY.js +0 -11
  293. package/dist/parser-CDG7CHV5.js +0 -14
  294. package/dist/parser-CZOJ7XQ6.js +0 -15
  295. package/dist/parser-E2RL6JYF.js +0 -18
  296. package/dist/parser-FQ6GZFMR.js +0 -13
  297. package/dist/parser-GKLZKEIK.js +0 -13
  298. package/dist/parser-H6ABKHZZ.js +0 -12
  299. package/dist/parser-I6GGFKOQ.js +0 -12
  300. package/dist/parser-JA7JQ7NF.js +0 -15
  301. package/dist/parser-OK22AC6Y.js +0 -14
  302. package/dist/parser-OK2ILHRT.js +0 -16
  303. package/dist/parser-OUTPNJWC.js +0 -11
  304. package/dist/parser-PORDUX5E.js +0 -15
  305. package/dist/parser-SRVFR7PM.js +0 -13
  306. package/dist/parser-UKFFZCFJ.js +0 -14
  307. package/dist/parser-UMWPLORP.js +0 -18
  308. package/dist/parser-Z4TZV2CB.js +0 -12
  309. package/dist/renderer-2AUFT3E2.js +0 -24
  310. package/dist/renderer-2HTNBIF2.js +0 -34
  311. package/dist/renderer-3K3IB7D5.js +0 -22
  312. package/dist/renderer-3YNIWF5I.js +0 -16
  313. package/dist/renderer-4WR6WMVF.js +0 -26
  314. package/dist/renderer-66MERVQ2.js +0 -24
  315. package/dist/renderer-ARMJBP6C.js +0 -28
  316. package/dist/renderer-CO2DW7S7.js +0 -37
  317. package/dist/renderer-EDJ2O4S5.js +0 -34
  318. package/dist/renderer-F7U3MFCV.js +0 -22
  319. package/dist/renderer-GD2COXVL.js +0 -16
  320. package/dist/renderer-GQIESYEM.js +0 -25
  321. package/dist/renderer-HCKJDFXD.js +0 -37
  322. package/dist/renderer-HYGHO4SJ.js +0 -28
  323. package/dist/renderer-JC3RDUT7.js +0 -23
  324. package/dist/renderer-NKJ24TEA.js +0 -19
  325. package/dist/renderer-OYO67VZK.js +0 -26
  326. package/dist/renderer-QIWVHWZO.js +0 -15
  327. package/dist/renderer-QRWACQRI.js +0 -21
  328. package/dist/renderer-QXPP4TA2.js +0 -27
  329. package/dist/renderer-RHT4MHFU.js +0 -24
  330. package/dist/renderer-RYR3TJ46.js +0 -36
  331. package/dist/renderer-SRKDNDFB.js +0 -27
  332. package/dist/renderer-TGTUABCI.js +0 -24
  333. package/dist/renderer-TXJFKPOG.js +0 -29
  334. package/dist/renderer-radial-FWABAZHB.js +0 -21
  335. package/dist/state-parser-6T6CNMPX.js +0 -18
  336. package/dist/state-renderer-AWZ3ECAX.js +0 -34
@@ -2,7 +2,7 @@ import {
2
2
  computeQuadrantPointLabels,
3
3
  rectCircleOverlap,
4
4
  rectsOverlap
5
- } from "./chunk-VL2O2F3W.js";
5
+ } from "./chunk-VHO3YBTB.js";
6
6
  import {
7
7
  EXPORT_HEIGHT,
8
8
  EXPORT_WIDTH,
@@ -11,28 +11,19 @@ import {
11
11
  initD3Chart,
12
12
  renderChartTitle,
13
13
  resolveExportPalette
14
- } from "./chunk-U6EQI3U6.js";
14
+ } from "./chunk-ADYKAKE3.js";
15
15
  import {
16
16
  computeLegendLayout
17
- } from "./chunk-YAA6IID3.js";
17
+ } from "./chunk-774C2FF3.js";
18
18
  import {
19
19
  FONT_FAMILY
20
20
  } from "./chunk-6KFWC4CO.js";
21
- import {
22
- LEGEND_DOT_R,
23
- LEGEND_ENTRY_FONT_SIZE,
24
- LEGEND_HEIGHT,
25
- LEGEND_PILL_FONT_SIZE
26
- } from "./chunk-QOOUC2J5.js";
27
- import {
28
- measureText
29
- } from "./chunk-WCT3NYCV.js";
30
21
  import {
31
22
  getExtendedChartLegendGroups,
32
23
  getSimpleChartLegendGroups,
33
24
  parseChart,
34
25
  parseExtendedChart
35
- } from "./chunk-QZPEGJOM.js";
26
+ } from "./chunk-Q7AH665U.js";
36
27
  import {
37
28
  contrastText,
38
29
  getSegmentColors,
@@ -40,11 +31,21 @@ import {
40
31
  hexToHSL,
41
32
  hslToHex,
42
33
  mix,
43
- shapeFill
44
- } from "./chunk-P6T66CCZ.js";
34
+ shapeFill,
35
+ themeBaseBg
36
+ } from "./chunk-JYDMBWRP.js";
37
+ import {
38
+ LEGEND_DOT_R,
39
+ LEGEND_ENTRY_FONT_SIZE,
40
+ LEGEND_HEIGHT,
41
+ LEGEND_PILL_FONT_SIZE
42
+ } from "./chunk-4RGZFA7H.js";
43
+ import {
44
+ measureText
45
+ } from "./chunk-4ASYQ347.js";
45
46
  import {
46
47
  tagAttrKey
47
- } from "./chunk-467TVMQL.js";
48
+ } from "./chunk-CMVZWP32.js";
48
49
 
49
50
  // src/utils/legend-svg.ts
50
51
  function esc(s) {
@@ -144,7 +145,9 @@ function fmtNum(n) {
144
145
  function reserveHeader(svg, chart, colors, palette, isDark, hasTitle, width) {
145
146
  return injectLegendGroups(
146
147
  svg,
147
- getSimpleChartLegendGroups(chart, colors),
148
+ // `no-legend` (#48) → pass no groups; injectLegendGroups then returns the
149
+ // title-only top inset, so the legend band collapses rather than blanking.
150
+ chart.noLegend ? [] : getSimpleChartLegendGroups(chart, colors),
148
151
  palette,
149
152
  isDark,
150
153
  hasTitle,
@@ -220,12 +223,12 @@ function renderBar(svg, chart, width, height, colors, palette, isDark, textColor
220
223
  ) : 1;
221
224
  const horizontal = chart.orientation === "horizontal";
222
225
  const multiSeries = seriesCount > 1;
223
- const solid = chart.solidFill === true;
226
+ const fillMode = chart.fillMode;
224
227
  const colorFor = (seriesIdx, catIdx, override) => {
225
228
  if (override) return override;
226
229
  return multiSeries ? colors[seriesIdx % colors.length] : colors[catIdx % colors.length];
227
230
  };
228
- const fillOf = (c) => solid ? c : shapeFill(palette, c, isDark);
231
+ const fillOf = (c) => shapeFill(palette, c, isDark, { mode: fillMode });
229
232
  const top = reserveHeader(
230
233
  svg,
231
234
  chart,
@@ -402,7 +405,7 @@ function seriesValue(pt, s) {
402
405
  function renderLine(svg, chart, width, height, colors, palette, isDark, textColor, mutedColor, bgColor, hasTitle) {
403
406
  const data = chart.data;
404
407
  const isArea = chart.fill === true;
405
- const solid = chart.solidFill === true;
408
+ const solid = chart.fillMode === "solid";
406
409
  const seriesNames = chart.seriesNames?.length ? chart.seriesNames : [chart.series ?? ""];
407
410
  const seriesCount = Math.max(
408
411
  1,
@@ -558,7 +561,7 @@ function renderPie(svg, chart, width, height, palette, isDark, textColor, topIns
558
561
  if (data.length === 0) return;
559
562
  const holeRatio = chart.hole;
560
563
  const hasHole = holeRatio !== void 0;
561
- const solid = chart.solidFill === true;
564
+ const fillMode = chart.fillMode;
562
565
  const total = data.reduce((a, d) => a + d.value, 0);
563
566
  const cx = width / 2;
564
567
  const top = topInset + 12;
@@ -593,7 +596,7 @@ function renderPie(svg, chart, width, height, palette, isDark, textColor, topIns
593
596
  const g = svg.append("g").attr("transform", `translate(${cx},${cy})`);
594
597
  arcs.forEach((a, i) => {
595
598
  const stroke = strokeFor(i, data[i].color);
596
- const fill = solid ? stroke : shapeFill(palette, stroke, isDark);
599
+ const fill = shapeFill(palette, stroke, isDark, { mode: fillMode });
597
600
  const pct = Math.round(data[i].value / total * 100);
598
601
  const slice = g.append("path").attr("d", arcGen(a) ?? "").attr("fill", fill).attr("stroke", stroke).attr("stroke-width", 1.5);
599
602
  tagDatum(slice, {
@@ -644,7 +647,8 @@ function renderRadar(svg, chart, width, height, colors, palette, isDark, textCol
644
647
  const data = chart.data;
645
648
  const n = data.length;
646
649
  if (n < 3) return;
647
- const solid = chart.solidFill === true;
650
+ const fillMode = chart.fillMode;
651
+ const solid = fillMode === "solid";
648
652
  const seriesNames = chart.seriesNames?.length ? chart.seriesNames : [chart.series ?? ""];
649
653
  const seriesCount = Math.max(
650
654
  1,
@@ -688,7 +692,10 @@ function renderRadar(svg, chart, width, height, colors, palette, isDark, textCol
688
692
  const seriesLine = chart.seriesNameLineNumbers?.[s];
689
693
  if (seriesLine !== void 0) g.attr("data-line-number", seriesLine);
690
694
  const poly = data.map((d, i) => pt(i, seriesValue2(d, s) / maxValue * radius).join(",")).join(" ");
691
- g.append("polygon").attr("points", poly).attr("fill", solid || multi ? color : shapeFill(palette, color, isDark)).attr("fill-opacity", solid ? 0.6 : multi ? 0.2 : 1).attr("stroke", color).attr("stroke-width", 2);
695
+ g.append("polygon").attr("points", poly).attr(
696
+ "fill",
697
+ fillMode === "outline" ? "none" : solid || multi ? color : shapeFill(palette, color, isDark)
698
+ ).attr("fill-opacity", solid ? 0.6 : multi ? 0.2 : 1).attr("stroke", color).attr("stroke-width", 2);
692
699
  data.forEach((d, i) => {
693
700
  const v = seriesValue2(d, s);
694
701
  const [x, y] = pt(i, v / maxValue * radius);
@@ -719,7 +726,7 @@ function renderPolarArea(svg, chart, width, height, palette, isDark, textColor,
719
726
  const data = chart.data.filter((d) => d.value > 0);
720
727
  const n = data.length;
721
728
  if (n === 0) return;
722
- const solid = chart.solidFill === true;
729
+ const fillMode = chart.fillMode;
723
730
  const total = data.reduce((a, d) => a + d.value, 0);
724
731
  const maxValue = Math.max(...data.map((d) => d.value)) || 1;
725
732
  const cx = width / 2;
@@ -737,7 +744,7 @@ function renderPolarArea(svg, chart, width, height, palette, isDark, textColor,
737
744
  const a1 = a0 + seg;
738
745
  const arcGen = d3arc2().innerRadius(innerR).outerRadius(r).startAngle(a0).endAngle(a1);
739
746
  const pct = Math.round(d.value / total * 100);
740
- const sector = g.append("path").attr("d", arcGen({}) ?? "").attr("fill", solid ? stroke : shapeFill(palette, stroke, isDark)).attr("stroke", stroke).attr("stroke-width", 2);
747
+ const sector = g.append("path").attr("d", arcGen({}) ?? "").attr("fill", shapeFill(palette, stroke, isDark, { mode: fillMode })).attr("stroke", stroke).attr("stroke-width", 2);
741
748
  tagDatum(sector, {
742
749
  line: d.lineNumber,
743
750
  key: d.label,
@@ -768,7 +775,7 @@ function renderFunnel(svg, chart, width, height, colors, palette, isDark, topIns
768
775
  const sorted = [...chart.data].sort((a, b) => b.value - a.value);
769
776
  const n = sorted.length;
770
777
  if (n === 0) return;
771
- const solid = chart.solidFill === true;
778
+ const fillMode = chart.fillMode;
772
779
  const top = topInset + 8;
773
780
  const bottom = height - 30;
774
781
  const H = bottom - top;
@@ -826,7 +833,7 @@ function renderFunnel(svg, chart, width, height, colors, palette, isDark, topIns
826
833
  ({ plotW, cx } = layout(rightW));
827
834
  sorted.forEach((d, i) => {
828
835
  const stroke = d.color ?? colors[chart.data.indexOf(d) % colors.length];
829
- const fill = solid ? stroke : shapeFill(palette, stroke, isDark);
836
+ const fill = shapeFill(palette, stroke, isDark, { mode: fillMode });
830
837
  const { topW, botW } = bandWidthsAt(plotW, i);
831
838
  const y0 = top + i * bandH;
832
839
  const y1 = y0 + bandH;
@@ -850,7 +857,7 @@ function renderFunnel(svg, chart, width, height, colors, palette, isDark, topIns
850
857
  const valueInside = valueInsideAt(plotW, i);
851
858
  if (valueInside) {
852
859
  const valueSize = valueSizeAt(plotW, i);
853
- const valueFill = solid ? contrastText(fill, palette.textOnFillLight, palette.textOnFillDark) : stroke;
860
+ const valueFill = fillMode === "solid" ? contrastText(fill, palette.textOnFillLight, palette.textOnFillDark) : stroke;
854
861
  svg.append("text").attr("x", cx).attr("y", yMid + valueSize * 0.35).attr("text-anchor", "middle").attr("fill", valueFill).attr("font-size", valueSize).attr("font-weight", 700).attr("font-family", FONT_FAMILY).text(fmtNum(d.value));
855
862
  }
856
863
  const showValueRight = !chart.noValue && !valueInside;
@@ -883,12 +890,14 @@ function renderHeatmap(svg, chart, width, height, palette, isDark, textColor, bg
883
890
  minValue = Math.min(minValue, v);
884
891
  maxValue = Math.max(maxValue, v);
885
892
  }
886
- const solid = chart.solidFill === true;
893
+ const outline = chart.fillMode === "outline";
894
+ const fillMode = outline || chart.fillMode === "solid" ? "solid" : void 0;
895
+ const baseBg = themeBaseBg(palette, isDark);
887
896
  const gradientStops = [
888
- shapeFill(palette, palette.primary, isDark, { solid }),
889
- shapeFill(palette, palette.colors.cyan, isDark, { solid }),
890
- shapeFill(palette, palette.colors.yellow, isDark, { solid }),
891
- shapeFill(palette, palette.colors.orange, isDark, { solid })
897
+ shapeFill(palette, palette.primary, isDark, { mode: fillMode }),
898
+ shapeFill(palette, palette.colors.cyan, isDark, { mode: fillMode }),
899
+ shapeFill(palette, palette.colors.yellow, isDark, { mode: fillMode }),
900
+ shapeFill(palette, palette.colors.orange, isDark, { mode: fillMode })
892
901
  ];
893
902
  const gradientAt = (t) => {
894
903
  const tt = Math.max(0, Math.min(1, t));
@@ -938,25 +947,26 @@ function renderHeatmap(svg, chart, width, height, palette, isDark, textColor, bg
938
947
  svg.append("text").attr("class", "dgmo-axis-label").attr("data-filter-attr", "data-row-key").attr("data-filter-value", row.label).attr("x", left - 10).attr("y", top + ri * ch + ch / 2 + 4).attr("text-anchor", "end").attr("fill", textColor).attr("font-size", 13).attr("font-family", FONT_FAMILY).text(row.label);
939
948
  row.values.forEach((v, ci) => {
940
949
  const t = maxValue === minValue ? 0.5 : (v - minValue) / (maxValue - minValue);
941
- const cell = gradientAt(t);
950
+ const ramp = gradientAt(t);
951
+ const cell = outline ? baseBg : ramp;
942
952
  const colLabel = cols[ci] ?? `Col ${ci + 1}`;
943
953
  const cellKey = `${row.label} \xB7 ${colLabel}`;
944
- const r = svg.append("rect").attr("x", left + ci * cw).attr("y", top + ri * ch).attr("width", cw).attr("height", ch).attr("fill", cell).attr("stroke", bgColor).attr("stroke-width", 2).attr("data-row-key", row.label).attr("data-col-key", colLabel);
954
+ const r = svg.append("rect").attr("x", left + ci * cw).attr("y", top + ri * ch).attr("width", cw).attr("height", ch).attr("fill", cell).attr("stroke", outline ? ramp : bgColor).attr("stroke-width", outline ? 1.5 : 2).attr("data-row-key", row.label).attr("data-col-key", colLabel);
945
955
  tagDatum(r, {
946
956
  line: row.lineNumber,
947
957
  key: cellKey,
948
958
  name: cellKey,
949
959
  value: fmtNum(v),
950
- color: cell
960
+ color: ramp
951
961
  });
952
962
  if (!chart.noValue) {
953
- const label = svg.append("text").attr("x", left + ci * cw + cw / 2).attr("y", top + ri * ch + ch / 2 + cellFont / 3).attr("text-anchor", "middle").attr("fill", labelTint(cell)).attr("font-size", cellFont).attr("font-weight", 600).attr("font-family", FONT_FAMILY).text(fmtNum(v));
963
+ const label = svg.append("text").attr("x", left + ci * cw + cw / 2).attr("y", top + ri * ch + ch / 2 + cellFont / 3).attr("text-anchor", "middle").attr("fill", labelTint(ramp)).attr("font-size", cellFont).attr("font-weight", 600).attr("font-family", FONT_FAMILY).text(fmtNum(v));
954
964
  tagDatum(label, {
955
965
  line: row.lineNumber,
956
966
  key: cellKey,
957
967
  name: cellKey,
958
968
  value: fmtNum(v),
959
- color: cell
969
+ color: ramp
960
970
  });
961
971
  label.attr("data-row-key", row.label).attr("data-col-key", colLabel);
962
972
  }
@@ -1029,7 +1039,7 @@ function placeScatterHoverValue(cx, cy, r, labelText, valueText, labelRects, cir
1029
1039
  function renderScatter(svg, chart, width, height, colors, palette, isDark, textColor, mutedColor, topInset) {
1030
1040
  const points = chart.scatterPoints ?? [];
1031
1041
  if (points.length === 0) return;
1032
- const solid = chart.solidFill === true;
1042
+ const fillMode = chart.fillMode;
1033
1043
  const hasSize = points.some((p) => p.size !== void 0);
1034
1044
  const categories = [
1035
1045
  ...new Set(points.map((p) => p.category).filter(Boolean))
@@ -1111,7 +1121,7 @@ function renderScatter(svg, chart, width, height, colors, palette, isDark, textC
1111
1121
  points.forEach((p, i) => {
1112
1122
  const stroke = p.color ?? (p.category ? catColor(p.category, catIndex.get(p.category) ?? 0) : colors[i % colors.length]);
1113
1123
  const r = radii[i];
1114
- const dot = svg.append("circle").attr("cx", x(p.x)).attr("cy", y(p.y)).attr("r", r).attr("fill", solid ? stroke : shapeFill(palette, stroke, isDark)).attr("fill-opacity", FILL_OPACITY).attr("stroke", stroke).attr("stroke-width", 2);
1124
+ const dot = svg.append("circle").attr("cx", x(p.x)).attr("cy", y(p.y)).attr("r", r).attr("fill", shapeFill(palette, stroke, isDark, { mode: fillMode })).attr("fill-opacity", FILL_OPACITY).attr("stroke", stroke).attr("stroke-width", 2);
1115
1125
  tagDatum(dot, {
1116
1126
  line: p.lineNumber,
1117
1127
  key: p.name,
@@ -1162,7 +1172,7 @@ var NODE_GAP = 14;
1162
1172
  function renderSankey(svg, chart, width, height, colors, bgColor, textColor, topInset) {
1163
1173
  const links = chart.links ?? [];
1164
1174
  if (links.length === 0) return;
1165
- const solid = chart.solidFill === true;
1175
+ const solid = chart.fillMode === "solid";
1166
1176
  const names = Array.from(new Set(links.flatMap((l) => [l.source, l.target])));
1167
1177
  const node = /* @__PURE__ */ new Map();
1168
1178
  names.forEach(
@@ -1264,7 +1274,9 @@ function renderSankey(svg, chart, width, height, colors, bgColor, textColor, top
1264
1274
  ).attr("fill", color).attr("fill-opacity", 0.6);
1265
1275
  tagDatum(ribbon, {
1266
1276
  line: l.lineNumber,
1267
- key: `link:${s.name}\0${t.name}`,
1277
+ // U+241F (symbol-for-unit-separator) — collision-proof AND XML-legal;
1278
+ // a raw control char here corrupts the exported SVG (data-emph-key).
1279
+ key: `link:${s.name}\u241F${t.name}`,
1268
1280
  name: `${s.name} \u2192 ${t.name}`,
1269
1281
  value: String(l.value),
1270
1282
  color: s.raw
@@ -1291,7 +1303,7 @@ function renderSankey(svg, chart, width, height, colors, bgColor, textColor, top
1291
1303
  function renderChord(svg, chart, width, height, colors, palette, isDark, textColor, topInset) {
1292
1304
  const links = chart.links ?? [];
1293
1305
  if (links.length === 0) return;
1294
- const solid = chart.solidFill === true;
1306
+ const fillMode = chart.fillMode;
1295
1307
  const names = Array.from(new Set(links.flatMap((l) => [l.source, l.target])));
1296
1308
  const n = names.length;
1297
1309
  const idx = new Map(names.map((nm, i) => [nm, i]));
@@ -1351,7 +1363,7 @@ function renderChord(svg, chart, width, height, colors, palette, isDark, textCol
1351
1363
  names.forEach((nm, i) => {
1352
1364
  const [px, py] = pos(i);
1353
1365
  const stroke = colorOf(i);
1354
- const dot = svg.append("circle").attr("cx", px).attr("cy", py).attr("r", 10).attr("fill", solid ? stroke : shapeFill(palette, stroke, isDark)).attr("stroke", stroke).attr("stroke-width", 2);
1366
+ const dot = svg.append("circle").attr("cx", px).attr("cy", py).attr("r", 10).attr("fill", shapeFill(palette, stroke, isDark, { mode: fillMode })).attr("stroke", stroke).attr("stroke-width", 2);
1355
1367
  tagDatum(dot, { key: `node:${nm}`, name: nm, color: stroke });
1356
1368
  const c = Math.cos(angle(i));
1357
1369
  const lx = px + c * 16;
@@ -1549,7 +1561,7 @@ function renderInto(s, content, palette, isDark, width, height, textColor, muted
1549
1561
  );
1550
1562
  return true;
1551
1563
  case "radar": {
1552
- const groups = getSimpleChartLegendGroups(std, colors);
1564
+ const groups = std.noLegend ? [] : getSimpleChartLegendGroups(std, colors);
1553
1565
  const top = injectLegendGroups(
1554
1566
  s,
1555
1567
  groups,
@@ -1619,7 +1631,7 @@ function renderInto(s, content, palette, isDark, width, height, textColor, muted
1619
1631
  );
1620
1632
  return true;
1621
1633
  case "scatter": {
1622
- const groups = getExtendedChartLegendGroups(ext, seriesColors);
1634
+ const groups = ext.noLegend ? [] : getExtendedChartLegendGroups(ext, seriesColors);
1623
1635
  const top = injectLegendGroups(
1624
1636
  s,
1625
1637
  groups,
@@ -1668,7 +1680,7 @@ function renderInto(s, content, palette, isDark, width, height, textColor, muted
1668
1680
  );
1669
1681
  return true;
1670
1682
  case "function": {
1671
- const groups = getExtendedChartLegendGroups(ext, seriesColors);
1683
+ const groups = ext.noLegend ? [] : getExtendedChartLegendGroups(ext, seriesColors);
1672
1684
  const top = injectLegendGroups(
1673
1685
  s,
1674
1686
  groups,
@@ -1701,4 +1713,4 @@ export {
1701
1713
  supportsD3DataChart,
1702
1714
  renderDataChartD3
1703
1715
  };
1704
- //# sourceMappingURL=chunk-4VWJ4LW2.js.map
1716
+ //# sourceMappingURL=chunk-SG4PRYO3.js.map
@@ -7,7 +7,7 @@ import {
7
7
  tagAttrKey,
8
8
  validateTagGroupNames,
9
9
  validateTagValues
10
- } from "./chunk-467TVMQL.js";
10
+ } from "./chunk-CMVZWP32.js";
11
11
  import {
12
12
  normalizeName
13
13
  } from "./chunk-NOTA6TEI.js";
@@ -20,13 +20,13 @@ import {
20
20
  splitNameAndMeta,
21
21
  warnUnknownMetaKeys,
22
22
  withTagAliases
23
- } from "./chunk-LV4BETUU.js";
23
+ } from "./chunk-YJVA3QUU.js";
24
24
  import {
25
25
  formatDgmoError,
26
26
  makeDgmoError,
27
27
  makeFail,
28
28
  suggest
29
- } from "./chunk-CXK4DZH3.js";
29
+ } from "./chunk-4W2PE66Q.js";
30
30
 
31
31
  // src/org/parser.ts
32
32
  var CONTAINER_RE = /^\[([^\]]+)\]$/;
@@ -40,8 +40,12 @@ var KNOWN_OPTIONS = /* @__PURE__ */ new Set([
40
40
  var KNOWN_BOOLEANS = /* @__PURE__ */ new Set([
41
41
  "show-sub-node-count",
42
42
  "direction-tb",
43
- "solid-fill",
44
- "no-title"
43
+ "direction-lr",
44
+ "fill-tint",
45
+ "fill-solid",
46
+ "fill-outline",
47
+ "no-title",
48
+ "no-legend"
45
49
  ]);
46
50
  function looksLikeOrg(content) {
47
51
  for (const line of content.split("\n")) {
@@ -59,6 +63,7 @@ function parseOrg(content, palette) {
59
63
  roots: [],
60
64
  tagGroups: [],
61
65
  options,
66
+ direction: "TB",
62
67
  diagnostics: [],
63
68
  error: null
64
69
  };
@@ -162,7 +167,12 @@ function parseOrg(content, palette) {
162
167
  }
163
168
  }
164
169
  if (KNOWN_BOOLEANS.has(trimmed.toLowerCase())) {
165
- options[trimmed.toLowerCase()] = "on";
170
+ const boolKey = trimmed.toLowerCase();
171
+ if (boolKey === "direction-lr" || boolKey === "direction-tb") {
172
+ delete options["direction-lr"];
173
+ delete options["direction-tb"];
174
+ }
175
+ options[boolKey] = "on";
166
176
  continue;
167
177
  }
168
178
  }
@@ -285,6 +295,7 @@ function parseOrg(content, palette) {
285
295
  result.diagnostics.push(diag);
286
296
  result.error = formatDgmoError(diag);
287
297
  }
298
+ result.direction = options["direction-lr"] ? "LR" : "TB";
288
299
  return result;
289
300
  }
290
301
  function parseNodeLabel(trimmed, _indent, lineNumber, _palette, counter, metaAliasMap = /* @__PURE__ */ new Map(), diagnostics, nameAliasMap) {
@@ -351,4 +362,4 @@ export {
351
362
  looksLikeOrg,
352
363
  parseOrg
353
364
  };
354
- //# sourceMappingURL=chunk-RBHWPDBB.js.map
365
+ //# sourceMappingURL=chunk-SGPFVDUL.js.map