@diagrammo/dgmo 0.51.0 → 0.52.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 (201) hide show
  1. package/.cursorrules +15 -19
  2. package/.github/copilot-instructions.md +15 -19
  3. package/.windsurfrules +15 -19
  4. package/SKILL.md +15 -19
  5. package/dist/advanced.d.ts +70 -42
  6. package/dist/advanced.js +115 -119
  7. package/dist/auto.js +125 -123
  8. package/dist/auto.mjs +952 -492
  9. package/dist/block.js +89 -52
  10. package/dist/{charts-d3-7E4B4IMW.js → charts-d3-MXEP6BNP.js} +7 -7
  11. package/dist/{chunk-CC4YRBWV.js → chunk-3HF5YEFJ.js} +17 -7
  12. package/dist/{chunk-5X6YQA2J.js → chunk-3HGU63UY.js} +12 -11
  13. package/dist/{chunk-4XFBQT5O.js → chunk-3LK5DNED.js} +2 -2
  14. package/dist/{chunk-IEDMFNU7.js → chunk-3QD7VP3U.js} +9 -4
  15. package/dist/{chunk-JJXGQIRV.js → chunk-3YRPZ7ZZ.js} +2 -2
  16. package/dist/{chunk-OJTXTQA2.js → chunk-44VCIPHF.js} +21 -17
  17. package/dist/{chunk-RAHVMKBG.js → chunk-4AQRFDXL.js} +2 -2
  18. package/dist/{chunk-6MNGECP2.js → chunk-4IHAV6O7.js} +2 -2
  19. package/dist/{chunk-ENRS56GC.js → chunk-4UNQ6X24.js} +10 -7
  20. package/dist/{chunk-JM4LEPY3.js → chunk-4YFKQ5WT.js} +6 -3
  21. package/dist/{chunk-U5SI5NIM.js → chunk-5223KXFD.js} +39 -22
  22. package/dist/{chunk-NI3XQBPB.js → chunk-5BHJZH62.js} +3 -3
  23. package/dist/{chunk-QYTPPDAO.js → chunk-5HILBT7X.js} +2 -2
  24. package/dist/{chunk-I2QZFCS2.js → chunk-5NGAO4QK.js} +4 -4
  25. package/dist/{chunk-BGP54HVR.js → chunk-5RP7JRVP.js} +4 -4
  26. package/dist/{chunk-IE477RQZ.js → chunk-5SEVICBT.js} +5 -5
  27. package/dist/{chunk-OZPBJM5Q.js → chunk-6EJITS44.js} +8 -5
  28. package/dist/{chunk-F3FYUFUH.js → chunk-6HQH6JZE.js} +12 -11
  29. package/dist/{chunk-X7EC3L2H.js → chunk-6LBQ7ELG.js} +14 -15
  30. package/dist/{chunk-5WPNFSXP.js → chunk-75G3Q4DK.js} +3 -3
  31. package/dist/{chunk-BYJBIALT.js → chunk-77FGAVZC.js} +10 -7
  32. package/dist/{chunk-2EQMXBBQ.js → chunk-7BIZCTAX.js} +2 -2
  33. package/dist/{chunk-B63YB7X3.js → chunk-7KINELPI.js} +110 -48
  34. package/dist/{chunk-AB7INMR5.js → chunk-7QE3XMRK.js} +15 -14
  35. package/dist/{chunk-IUJODQKX.js → chunk-AAXZDUOV.js} +15 -14
  36. package/dist/{chunk-2UJSV2VT.js → chunk-AL672HNE.js} +3 -3
  37. package/dist/{chunk-WQLMU7VG.js → chunk-ARGMQ3H4.js} +2 -2
  38. package/dist/{chunk-OU7HLO7I.js → chunk-AUIM2NVH.js} +3 -3
  39. package/dist/{chunk-RXKTSFDL.js → chunk-BKVOYV6I.js} +24 -32
  40. package/dist/{chunk-TK2VQQX2.js → chunk-BPIZNB5O.js} +14 -12
  41. package/dist/{chunk-3LV2NCB6.js → chunk-BPY242XU.js} +6 -4
  42. package/dist/{chunk-LV4BETUU.js → chunk-BRENJ2BQ.js} +32 -2
  43. package/dist/{chunk-Y6GBQTBK.js → chunk-CCNDLW7Z.js} +41 -19
  44. package/dist/{chunk-EXOQP75F.js → chunk-CIRFIL4M.js} +47 -27
  45. package/dist/{chunk-RBDIYLA5.js → chunk-DAOFNU6J.js} +17 -1
  46. package/dist/{chunk-4VWJ4LW2.js → chunk-DYWQFQJP.js} +44 -34
  47. package/dist/{chunk-QZPEGJOM.js → chunk-EMLPOL77.js} +15 -8
  48. package/dist/{chunk-IUO34HKW.js → chunk-FHGVORFO.js} +26 -22
  49. package/dist/{chunk-6H7O2OPM.js → chunk-FQ7HTV52.js} +4 -2
  50. package/dist/{chunk-7DYOELRK.js → chunk-FQMUHRVC.js} +69 -30
  51. package/dist/{chunk-AFIEPDLX.js → chunk-FT3ZYWET.js} +14 -3
  52. package/dist/{chunk-ND76YJCN.js → chunk-FUPF2UYQ.js} +35 -11
  53. package/dist/{chunk-6NFYEQDX.js → chunk-FY5MSZAP.js} +15 -3
  54. package/dist/{chunk-IEWG6J7C.js → chunk-GCYTI3DE.js} +40 -31
  55. package/dist/{chunk-GNSFLJAA.js → chunk-GJFAMOGK.js} +3 -3
  56. package/dist/{chunk-VNSXLA6G.js → chunk-H7KENAZO.js} +16 -12
  57. package/dist/{chunk-KFNWFNAA.js → chunk-HBPDFCQY.js} +3 -3
  58. package/dist/{chunk-467TVMQL.js → chunk-HHKO6SKY.js} +2 -2
  59. package/dist/{chunk-6K2M4VSR.js → chunk-HQQNCY7W.js} +21 -8
  60. package/dist/{chunk-ZJ3LS7DW.js → chunk-HWX6ZHF3.js} +2 -2
  61. package/dist/{chunk-Q62FEYK3.js → chunk-ICPJPQ5C.js} +2 -2
  62. package/dist/{chunk-MVN25IF6.js → chunk-IM6PDDCE.js} +4 -4
  63. package/dist/{chunk-65WJYYKJ.js → chunk-INE5YJBZ.js} +11 -6
  64. package/dist/{chunk-EDA6C7MV.js → chunk-J6QROYDA.js} +13 -9
  65. package/dist/{chunk-3ODS2VGL.js → chunk-J7KJR3R6.js} +116 -96
  66. package/dist/{chunk-JEUJOX5X.js → chunk-J7TLCB2Q.js} +2 -2
  67. package/dist/{chunk-GD6L76WD.js → chunk-JRCOYRRH.js} +19 -7
  68. package/dist/{chunk-G3PF3S7P.js → chunk-K2I2XOZD.js} +9 -9
  69. package/dist/{chunk-5PDTIBLV.js → chunk-K4EOKJA6.js} +17 -7
  70. package/dist/{chunk-5SVOCD5W.js → chunk-KGVZ5VGH.js} +10 -7
  71. package/dist/{chunk-QHI5XVUJ.js → chunk-LBMS4AW6.js} +20 -19
  72. package/dist/{chunk-FTBZV6NE.js → chunk-LGT3PZCJ.js} +22 -14
  73. package/dist/{chunk-E7Y3SYKW.js → chunk-LTXOLDUZ.js} +9 -6
  74. package/dist/{chunk-GTWKD3QT.js → chunk-MUE65OTD.js} +5 -4
  75. package/dist/{chunk-TRM2J7ZN.js → chunk-MUVJ57EP.js} +10 -14
  76. package/dist/{chunk-RBHWPDBB.js → chunk-NNS4E7CW.js} +6 -4
  77. package/dist/{chunk-NNAAJVBU.js → chunk-NR5HCAUD.js} +1 -1
  78. package/dist/{chunk-NEQ6GJXB.js → chunk-ONU3U4GL.js} +2 -2
  79. package/dist/{chunk-XEQXCIBC.js → chunk-PRI2OD4E.js} +10 -3
  80. package/dist/{chunk-U6EQI3U6.js → chunk-QBZYACOG.js} +3 -3
  81. package/dist/{chunk-5PZT4DQG.js → chunk-QGATPIPX.js} +15 -9
  82. package/dist/{chunk-YGJZWZTY.js → chunk-QHXCAEMX.js} +7 -4
  83. package/dist/{chunk-RLFVAKEO.js → chunk-QJMKPUYK.js} +15 -5
  84. package/dist/{chunk-Z6XJQ6KO.js → chunk-QVENJMNX.js} +2 -2
  85. package/dist/{chunk-GROLTAWZ.js → chunk-QZX5S6R3.js} +2 -2
  86. package/dist/{chunk-TMACGPW5.js → chunk-R3YSD62R.js} +3 -3
  87. package/dist/{chunk-332ZR4QU.js → chunk-REJAIQ5S.js} +4 -4
  88. package/dist/{chunk-5F5ELR3V.js → chunk-ROOE4R4Y.js} +8 -5
  89. package/dist/{chunk-XHVV4NVW.js → chunk-RT7ACF77.js} +12 -2
  90. package/dist/{chunk-GGHRAITI.js → chunk-SMRFPVLQ.js} +3 -3
  91. package/dist/{chunk-JSSX2SX4.js → chunk-SWSIKFEB.js} +2 -2
  92. package/dist/{chunk-DY7XLRHK.js → chunk-T4A4TSTJ.js} +14 -15
  93. package/dist/{chunk-VB4UJ3H2.js → chunk-TJVLKNGR.js} +20 -10
  94. package/dist/{chunk-FC5I2KXV.js → chunk-TPFKKXCB.js} +3 -3
  95. package/dist/{chunk-AXW3M6OQ.js → chunk-TTIM6YTT.js} +28 -18
  96. package/dist/{chunk-WJ7RW65H.js → chunk-UBLHQTLV.js} +13 -12
  97. package/dist/{chunk-AE7II3E3.js → chunk-UNURMIQO.js} +2 -2
  98. package/dist/{chunk-PZDBOK2Q.js → chunk-VILVLS7P.js} +5 -3
  99. package/dist/{chunk-3YSQZ75W.js → chunk-VQOCMUWI.js} +37 -26
  100. package/dist/{chunk-P6T66CCZ.js → chunk-WBM7ZNDI.js} +3 -2
  101. package/dist/{chunk-4QZ43D7I.js → chunk-XD6ZYURY.js} +9 -4
  102. package/dist/{chunk-3JLKYGBQ.js → chunk-YIBAWQGJ.js} +6 -3
  103. package/dist/{chunk-ZO27FGJS.js → chunk-YTMTPUH4.js} +7 -4
  104. package/dist/{chunk-6BQFET7X.js → chunk-Z5QVYKR7.js} +11 -3
  105. package/dist/{chunk-KJGG2JKQ.js → chunk-ZEF5M5MB.js} +52 -45
  106. package/dist/{chunk-32XPAAET.js → chunk-ZJV7GYR4.js} +3 -3
  107. package/dist/{chunk-2ILHQOL3.js → chunk-ZNWAYU6N.js} +11 -7
  108. package/dist/cli.cjs +146 -145
  109. package/dist/clock.js +16 -22
  110. package/dist/dgmo-router-X7ZGAPIE.js +86 -0
  111. package/dist/{dimensions-F7B5C4BJ.js → dimensions-45H6JQEY.js} +6 -6
  112. package/dist/editor.js +4 -2
  113. package/dist/element.js +126 -124
  114. package/dist/element.mjs +952 -492
  115. package/dist/{flowchart-parser-MY53QWTZ.js → flowchart-parser-UKELHBSB.js} +4 -4
  116. package/dist/{flowchart-renderer-AQSMEMYF.js → flowchart-renderer-MNCDS7MV.js} +7 -7
  117. package/dist/highlight.d.ts +21 -1
  118. package/dist/highlight.js +93 -3
  119. package/dist/index.js +51 -51
  120. package/dist/{layout-JDJAEQ3P.js → layout-2L3WMRYU.js} +4 -4
  121. package/dist/{layout-MUPRALE5.js → layout-A4XWNVID.js} +4 -4
  122. package/dist/{layout-46366KBT.js → layout-A5UHRWVH.js} +3 -3
  123. package/dist/{layout-HYZPWAK5.js → layout-GM4UGR7B.js} +4 -3
  124. package/dist/{layout-CBCLPMSG.js → layout-GQQJXNYH.js} +4 -4
  125. package/dist/{layout-YVTNOTN4.js → layout-IIE2S5FK.js} +3 -3
  126. package/dist/{layout-4DIUOX2T.js → layout-VMCRX66I.js} +4 -4
  127. package/dist/{palettes-PRJ2RI6D.js → palettes-UDLZ2SA4.js} +2 -2
  128. package/dist/{parser-BKI42XBQ.js → parser-2ECN6JA2.js} +4 -4
  129. package/dist/{parser-C3D7MVXY.js → parser-4WTIHM5J.js} +3 -3
  130. package/dist/{parser-5A2UWU6B.js → parser-5H2BTSJQ.js} +3 -3
  131. package/dist/{parser-OK2ILHRT.js → parser-75KVXUNS.js} +4 -4
  132. package/dist/{parser-SRVFR7PM.js → parser-774AC53T.js} +4 -4
  133. package/dist/{parser-BEPSWJAD.js → parser-BE4YCSRU.js} +3 -3
  134. package/dist/{parser-B77S5SZM.js → parser-CNGUQUQI.js} +3 -3
  135. package/dist/{parser-2Q2T4C3B.js → parser-DEUUSQIN.js} +7 -7
  136. package/dist/{parser-5PDYJGWA.js → parser-DQAFLUJB.js} +4 -4
  137. package/dist/{parser-KKTJ6M3Y.js → parser-EYCKNKQA.js} +5 -5
  138. package/dist/{parser-UKFFZCFJ.js → parser-FXISIU6A.js} +4 -4
  139. package/dist/{parser-UMWPLORP.js → parser-GTB4XC7P.js} +5 -5
  140. package/dist/{parser-Z4TZV2CB.js → parser-GVEPAUSD.js} +4 -4
  141. package/dist/{parser-AIMHGJRR.js → parser-HSQGTY4G.js} +4 -4
  142. package/dist/{parser-OUTPNJWC.js → parser-HVKRINUS.js} +3 -3
  143. package/dist/{parser-JA7JQ7NF.js → parser-J5MIEYO4.js} +5 -5
  144. package/dist/parser-KMZIXLDZ.js +13 -0
  145. package/dist/{parser-CDG7CHV5.js → parser-LJHXWSXU.js} +3 -3
  146. package/dist/{parser-PORDUX5E.js → parser-PT3W72G5.js} +4 -4
  147. package/dist/{parser-CZOJ7XQ6.js → parser-SBJQDPHL.js} +4 -4
  148. package/dist/{parser-I6GGFKOQ.js → parser-SUWWWCMX.js} +3 -3
  149. package/dist/{parser-AZJ25OKK.js → parser-SXDRNZOA.js} +4 -4
  150. package/dist/parser-UMILOW3M.js +14 -0
  151. package/dist/{parser-GKLZKEIK.js → parser-UP3AZ367.js} +4 -4
  152. package/dist/{parser-57ILIFZ2.js → parser-WHPRV3X5.js} +5 -5
  153. package/dist/{parser-H6ABKHZZ.js → parser-WX3UODSJ.js} +4 -4
  154. package/dist/{parser-FQ6GZFMR.js → parser-XCIEN3KN.js} +4 -4
  155. package/dist/{parser-E2RL6JYF.js → parser-XIRTUMVN.js} +5 -5
  156. package/dist/{parser-3A42DZ72.js → parser-YKCGIG45.js} +3 -3
  157. package/dist/{parser-EH5VE7ZN.js → parser-YKYMQG3B.js} +4 -4
  158. package/dist/{parser-6ZKABF5S.js → parser-ZGM2OJ6Y.js} +5 -5
  159. package/dist/{parser-4RFTKAQX.js → parser-ZL5QUFVH.js} +4 -4
  160. package/dist/pert.d.ts +2 -2
  161. package/dist/{renderer-RYR3TJ46.js → renderer-3F7OS2AX.js} +10 -10
  162. package/dist/{renderer-TGTUABCI.js → renderer-4QB4K7Q3.js} +6 -6
  163. package/dist/{renderer-GHPZMFU2.js → renderer-5DAKMIU2.js} +3 -3
  164. package/dist/{renderer-3K3IB7D5.js → renderer-5H4SY7YY.js} +6 -6
  165. package/dist/{renderer-QIWVHWZO.js → renderer-5PIQPFOX.js} +4 -3
  166. package/dist/{renderer-NKJ24TEA.js → renderer-6MU37QF5.js} +6 -6
  167. package/dist/{renderer-QXPP4TA2.js → renderer-AQVMWJ4M.js} +9 -9
  168. package/dist/{renderer-2AUFT3E2.js → renderer-BDDW6K7N.js} +6 -6
  169. package/dist/{renderer-OYO67VZK.js → renderer-BNB3VIDY.js} +7 -7
  170. package/dist/{renderer-QXGN5H3A.js → renderer-CQY6ATOS.js} +5 -5
  171. package/dist/{renderer-CO2DW7S7.js → renderer-CVW75CXL.js} +9 -9
  172. package/dist/{renderer-KQB7UGDS.js → renderer-DT4XRFEP.js} +4 -3
  173. package/dist/{renderer-GQIESYEM.js → renderer-ERHBSTQT.js} +6 -6
  174. package/dist/{renderer-UV6MI64M.js → renderer-HSHHVYWF.js} +4 -3
  175. package/dist/{renderer-ARMJBP6C.js → renderer-IDPVUFNB.js} +8 -8
  176. package/dist/{renderer-QRWACQRI.js → renderer-ILX6BGKR.js} +6 -6
  177. package/dist/{renderer-F7U3MFCV.js → renderer-JP663HKG.js} +7 -7
  178. package/dist/{renderer-RGIYOTKJ.js → renderer-KNFTTOBL.js} +8 -8
  179. package/dist/{renderer-3YNIWF5I.js → renderer-MVUZBESR.js} +5 -5
  180. package/dist/{renderer-HYGHO4SJ.js → renderer-N4EBR2FV.js} +8 -8
  181. package/dist/{renderer-3YPZHMOU.js → renderer-NHO46CT2.js} +3 -3
  182. package/dist/{renderer-SRKDNDFB.js → renderer-NO2QJ5LZ.js} +7 -7
  183. package/dist/{renderer-2HTNBIF2.js → renderer-OGFV5RXX.js} +8 -8
  184. package/dist/{renderer-HCKJDFXD.js → renderer-PDLESJMS.js} +9 -9
  185. package/dist/{renderer-66MERVQ2.js → renderer-T4MTNINC.js} +6 -6
  186. package/dist/{renderer-RHT4MHFU.js → renderer-TOUGFGTM.js} +7 -7
  187. package/dist/{renderer-EDJ2O4S5.js → renderer-U3KPD43Y.js} +8 -8
  188. package/dist/{renderer-4WR6WMVF.js → renderer-X334IJU2.js} +6 -6
  189. package/dist/{renderer-JC3RDUT7.js → renderer-Y5OAMOCR.js} +6 -6
  190. package/dist/{renderer-GD2COXVL.js → renderer-YONAKAJU.js} +4 -4
  191. package/dist/{renderer-TXJFKPOG.js → renderer-YWMI6Y2U.js} +8 -8
  192. package/dist/{renderer-6RKQPNJI.js → renderer-ZWIH4WDW.js} +7 -7
  193. package/dist/{renderer-radial-FWABAZHB.js → renderer-radial-7CGZMVMS.js} +7 -7
  194. package/dist/{state-parser-6T6CNMPX.js → state-parser-BATWAID2.js} +4 -4
  195. package/dist/{state-renderer-AWZ3ECAX.js → state-renderer-3FKZJ3LP.js} +7 -7
  196. package/docs/ai-integration.md +15 -19
  197. package/docs/language-reference.md +13 -11
  198. package/package.json +1 -1
  199. package/dist/dgmo-router-Y2VEX46B.js +0 -86
  200. package/dist/parser-6BJEXUFX.js +0 -13
  201. package/dist/parser-OK22AC6Y.js +0 -14
package/dist/block.js CHANGED
@@ -3,93 +3,95 @@ import {
3
3
  docsLink,
4
4
  normalizeSvgForEmbed,
5
5
  renderErrorCard
6
- } from "./chunk-GNSFLJAA.js";
6
+ } from "./chunk-GJFAMOGK.js";
7
7
  import {
8
8
  encodeDiagramUrl,
9
9
  render
10
- } from "./chunk-3ODS2VGL.js";
11
- import "./chunk-B63YB7X3.js";
10
+ } from "./chunk-J7KJR3R6.js";
11
+ import "./chunk-7KINELPI.js";
12
12
  import "./chunk-YRYKTYMQ.js";
13
13
  import "./chunk-YYVTBZZC.js";
14
- import "./chunk-OU7HLO7I.js";
15
- import "./chunk-KJGG2JKQ.js";
16
- import "./chunk-GTWKD3QT.js";
17
- import "./chunk-AFIEPDLX.js";
14
+ import "./chunk-AUIM2NVH.js";
15
+ import "./chunk-ZEF5M5MB.js";
16
+ import "./chunk-MUE65OTD.js";
17
+ import "./chunk-FT3ZYWET.js";
18
18
  import {
19
19
  monthIndex,
20
20
  weekdayIndex
21
21
  } from "./chunk-OQKP2X3D.js";
22
- import "./chunk-6NFYEQDX.js";
22
+ import "./chunk-FY5MSZAP.js";
23
23
  import "./chunk-APKUAJ2L.js";
24
- import "./chunk-XEQXCIBC.js";
25
- import "./chunk-6MNGECP2.js";
26
- import "./chunk-6BQFET7X.js";
24
+ import "./chunk-PRI2OD4E.js";
25
+ import "./chunk-4IHAV6O7.js";
26
+ import "./chunk-Z5QVYKR7.js";
27
27
  import "./chunk-BDXC7MDK.js";
28
- import "./chunk-4VWJ4LW2.js";
28
+ import "./chunk-DYWQFQJP.js";
29
29
  import "./chunk-VL2O2F3W.js";
30
- import "./chunk-U6EQI3U6.js";
30
+ import "./chunk-QBZYACOG.js";
31
31
  import "./chunk-YAA6IID3.js";
32
32
  import "./chunk-A4GOY3PE.js";
33
33
  import "./chunk-6KFWC4CO.js";
34
34
  import "./chunk-QOOUC2J5.js";
35
35
  import "./chunk-WCT3NYCV.js";
36
- import "./chunk-QZPEGJOM.js";
37
- import "./chunk-GGHRAITI.js";
38
- import "./chunk-PZDBOK2Q.js";
39
- import "./chunk-2EQMXBBQ.js";
40
- import "./chunk-4QZ43D7I.js";
41
- import "./chunk-Q62FEYK3.js";
42
- import "./chunk-AE7II3E3.js";
43
- import "./chunk-2ILHQOL3.js";
44
- import "./chunk-ENRS56GC.js";
45
- import "./chunk-NNAAJVBU.js";
46
- import "./chunk-MVN25IF6.js";
47
- import "./chunk-5PZT4DQG.js";
48
- import "./chunk-I2QZFCS2.js";
36
+ import "./chunk-EMLPOL77.js";
37
+ import "./chunk-SMRFPVLQ.js";
38
+ import "./chunk-VILVLS7P.js";
39
+ import "./chunk-7BIZCTAX.js";
40
+ import "./chunk-XD6ZYURY.js";
41
+ import "./chunk-ICPJPQ5C.js";
42
+ import "./chunk-UNURMIQO.js";
43
+ import "./chunk-ZNWAYU6N.js";
44
+ import "./chunk-4UNQ6X24.js";
45
+ import "./chunk-NR5HCAUD.js";
46
+ import "./chunk-IM6PDDCE.js";
47
+ import "./chunk-QGATPIPX.js";
48
+ import "./chunk-5NGAO4QK.js";
49
49
  import {
50
50
  REGISTRY_COLON_KEY_TOKENS,
51
51
  REGISTRY_CONTROL_TOKENS,
52
52
  REGISTRY_DIRECTIVE_TOKENS,
53
53
  REGISTRY_MODIFIER_TOKENS,
54
54
  REGISTRY_STATUS_TOKENS
55
- } from "./chunk-6H7O2OPM.js";
56
- import "./chunk-BGP54HVR.js";
57
- import "./chunk-6K2M4VSR.js";
58
- import "./chunk-XHVV4NVW.js";
59
- import "./chunk-E7Y3SYKW.js";
60
- import "./chunk-5WPNFSXP.js";
55
+ } from "./chunk-FQ7HTV52.js";
56
+ import "./chunk-5RP7JRVP.js";
57
+ import "./chunk-HQQNCY7W.js";
58
+ import "./chunk-RT7ACF77.js";
59
+ import "./chunk-LTXOLDUZ.js";
60
+ import "./chunk-75G3Q4DK.js";
61
61
  import "./chunk-QQJUTGQH.js";
62
- import "./chunk-2UJSV2VT.js";
63
- import "./chunk-332ZR4QU.js";
64
- import "./chunk-RBHWPDBB.js";
65
- import "./chunk-KFNWFNAA.js";
66
- import "./chunk-5PDTIBLV.js";
62
+ import "./chunk-AL672HNE.js";
63
+ import "./chunk-REJAIQ5S.js";
64
+ import "./chunk-NNS4E7CW.js";
65
+ import "./chunk-HBPDFCQY.js";
66
+ import "./chunk-K4EOKJA6.js";
67
67
  import "./chunk-7L4UJOY6.js";
68
68
  import "./chunk-USZW2HHU.js";
69
- import "./chunk-EDA6C7MV.js";
70
- import "./chunk-TMACGPW5.js";
71
- import "./chunk-RBDIYLA5.js";
72
- import "./chunk-JJXGQIRV.js";
73
- import "./chunk-IEDMFNU7.js";
74
- import "./chunk-3LV2NCB6.js";
69
+ import "./chunk-J6QROYDA.js";
70
+ import "./chunk-R3YSD62R.js";
71
+ import {
72
+ scanMonthNameDates
73
+ } from "./chunk-DAOFNU6J.js";
74
+ import "./chunk-3YRPZ7ZZ.js";
75
+ import "./chunk-3QD7VP3U.js";
76
+ import "./chunk-BPY242XU.js";
75
77
  import "./chunk-IYULMRBE.js";
76
78
  import {
77
79
  resolvePaletteOrFallback
78
80
  } from "./chunk-R3XI2VC7.js";
79
- import "./chunk-P6T66CCZ.js";
80
- import "./chunk-RLFVAKEO.js";
81
+ import "./chunk-WBM7ZNDI.js";
82
+ import "./chunk-QJMKPUYK.js";
81
83
  import "./chunk-C3Z4DX3V.js";
82
- import "./chunk-467TVMQL.js";
83
- import "./chunk-OZPBJM5Q.js";
84
+ import "./chunk-HHKO6SKY.js";
85
+ import "./chunk-6EJITS44.js";
84
86
  import "./chunk-I46X5VUA.js";
85
- import "./chunk-5F5ELR3V.js";
87
+ import "./chunk-ROOE4R4Y.js";
86
88
  import "./chunk-NXMESY4J.js";
87
- import "./chunk-FC5I2KXV.js";
88
- import "./chunk-WQLMU7VG.js";
89
+ import "./chunk-TPFKKXCB.js";
90
+ import "./chunk-ARGMQ3H4.js";
89
91
  import "./chunk-FMDSF3OV.js";
90
92
  import "./chunk-FFUN5D66.js";
91
93
  import "./chunk-NOTA6TEI.js";
92
- import "./chunk-LV4BETUU.js";
94
+ import "./chunk-BRENJ2BQ.js";
93
95
  import "./chunk-TLVIHFRO.js";
94
96
  import "./chunk-CXK4DZH3.js";
95
97
  import "./chunk-5WRI5ZAA.js";
@@ -187,7 +189,7 @@ var parser = LRParser.deserialize({
187
189
  maxTerm: 40,
188
190
  skippedNodes: [0],
189
191
  repeatNodeCount: 2,
190
- tokenData: "={~RzOX#uXY#zYZ$VZp#upq#zqr#urs$[st#uux#uxy%eyz%lz{%s{|%z|}&R}!O&Y!O!P#u!P!Q&i!Q!['Y![!]1Q!]!^#u!^!_1X!_!`1`!`!a1m!a!b1t!b!c#u!c!}1{!}#O5R#O#P#u#P#Q5W#Q#R#u#R#S1{#S#T#u#T#[1{#[#]5_#]#o1{#o#p#u#p#q=_#q#r#u#r#s=f#s;'S#u;'S;=`=u<%lO#u~#zOq~~$PQv~XY#zpq#z~$[Ow~~$aUq~OY$sZr$srs%Ys;'S$s;'S;=`%_<%lO$s~$vUOY$sZr$srs%Ys;'S$s;'S;=`%_<%lO$s~%_Oo~~%bP;=`<%l$s~%lOc~q~~%sOd~q~~%zOm~q~~&ROj~q~~&YOi~q~~&aPk~q~!`!a&d~&iOX~~&nPq~!P!Q&q~&vSV~OY&qZ;'S&q;'S;=`'S<%lO&q~'VP;=`<%l&q~'a^^~q~uv(]|}(b!O!P)_!P!Q+O!Q![,Y#R#S0l#U#V*Y#W#X*`#[#]*`#a#b*m#e#f*`#g#h*`#k#l*`#m#n*`~(bO]~~(eP!Q![(h~(kP!Q![(n~(qP!Q![(t~(yQ^~|}(b!O!P)P~)SP!Q![)V~)[P^~!Q![)V~)bP!Q![)e~)jY^~uv(]!Q![)e#U#V*Y#W#X*`#[#]*`#a#b*m#e#f*`#g#h*`#k#l*`#m#n*`~*]P#W#X*`~*ePZ~!a!b*h~*mOZ~~*rQZ~!a!b*h#]#^*x~*{P#b#c*`~+RP!Q![+U~+ZQ[~!P!Q+a!Q![,Q~+dP!Q![+g~+jP!Q![+m~+rP[~!Q![+u~+xP!Q![+{~,QO[~~,VP[~!P!Q+a~,_^^~uv(]|}(b!O!P)_!P!Q+O!Q![-Z#R#S0l#U#V*Y#W#X*`#[#]*`#a#b*m#e#f*`#g#h*`#k#l*`#m#n*`~-`]^~uv(]|}(b!O!P)_!Q![.X#R#S0l#U#V*Y#W#X*`#[#]*`#a#b*m#e#f*`#g#h*`#k#l*`#m#n*`~.^]^~uv(]}!O/V!O!P)_!Q![/q#R#S0l#U#V*Y#W#X*`#[#]*`#a#b*m#e#f*`#g#h*`#k#l*`#m#n*`~/YP!Q![/]~/`P!Q![/c~/hP[~}!O/k~/nP!Q![+u~/v[^~uv(]!O!P)_!Q![/q#R#S0l#U#V*Y#W#X*`#[#]*`#a#b*m#e#f*`#g#h*`#k#l*`#m#n*`~0oP!Q![0r~0wR^~!O!P)P!Q![0r#R#S0l~1XOh~q~~1`Oe~q~~1ePq~!_!`1h~1mO_~~1tOf~q~~1{On~q~~2S_p~q~qr3Rst3Rvw3Rwx3R{|3R}!O4V!O!P3R!P!Q3R!Q![3R!_!`3R!a!b3R!b!c3R!c!}3R#R#S3R#T#o3R~3W_p~qr3Rst3Rvw3Rwx3R{|3R}!O4V!O!P3R!P!Q3R!Q![3R!_!`3R!a!b3R!b!c3R!c!}3R#R#S3R#T#o3R~4Y]qr3Rst3Rvw3Rwx3R{|3R!O!P3R!P!Q3R!_!`3R!a!b3R!b!c3R!c!}3R#R#S3R#T#o3R~5WOa~~5_Ob~q~~5fap~q~qr3Rst3Rvw3Rwx3R{|3R}!O4V!O!P3R!P!Q3R!Q![3R!_!`3R!a!b3R!b!c3R!c!}3R#R#S3R#T#h3R#h#i6k#i#o3R~6pap~qr3Rst3Rvw3Rwx3R{|3R}!O4V!O!P3R!P!Q3R!Q![3R!_!`3R!a!b3R!b!c3R!c!}3R#R#S3R#T#h3R#h#i7u#i#o3R~7zap~qr3Rst3Rvw3Rwx3R{|3R}!O4V!O!P3R!P!Q3R!Q![3R!_!`3R!a!b3R!b!c3R!c!}3R#R#S3R#T#d3R#d#e9P#e#o3R~9Ubp~qr3Rst3Rvw3Rwx3R{|3R}!O4V!O!P3R!P!Q3R!Q![3R![!]:^!_!`3R!a!b3R!b!c3R!c!}3R#R#S3R#T#g3R#g#h<W#h#o3R~:aP!P!Q:d~:gP!P!Q:j~:mYOX;]Zp;]qy;]z|;]}!`;]!a#P;]#Q#p;]#q;'S;];'S;=`<Q<%lO;]~;bY`~OX;]Zp;]qy;]z|;]}!`;]!a#P;]#Q#p;]#q;'S;];'S;=`<Q<%lO;]~<TP;=`<%l;]~<]`p~qr3Rst3Rvw3Rwx3R{|3R}!O4V!O!P3R!P!Q3R!Q![3R![!]:^!_!`3R!a!b3R!b!c3R!c!}3R#R#S3R#T#o3R~=fOg~q~~=mPl~q~!`!a=p~=uOY~~=xP;=`<%l#u",
192
+ tokenData: ">l~RzOX#uXY#zYZ$VZp#upq#zqr#urs$[st#uux#uxy%eyz%lz{%s{|%z|}&R}!O&Y!O!P#u!P!Q&i!Q!['Y![!]1q!]!^#u!^!_1x!_!`2P!`!a2^!a!b2e!b!c#u!c!}2l!}#O5r#O#P#u#P#Q5w#Q#R#u#R#S2l#S#T#u#T#[2l#[#]6O#]#o2l#o#p#u#p#q>O#q#r#u#r#s>V#s;'S#u;'S;=`>f<%lO#u~#zOq~~$PQv~XY#zpq#z~$[Ow~~$aUq~OY$sZr$srs%Ys;'S$s;'S;=`%_<%lO$s~$vUOY$sZr$srs%Ys;'S$s;'S;=`%_<%lO$s~%_Oo~~%bP;=`<%l$s~%lOc~q~~%sOd~q~~%zOm~q~~&ROj~q~~&YOi~q~~&aPk~q~!`!a&d~&iOX~~&nPq~!P!Q&q~&vSV~OY&qZ;'S&q;'S;=`'S<%lO&q~'VP;=`<%l&q~'a_^~q~uv(`|}(e}!O)b!O!P*l!P!Q,]!Q![,v#R#S1]#U#V+g#W#X+m#[#]+m#a#b+z#e#f+m#g#h+m#k#l+m#m#n+m~(eO]~~(hP!Q![(k~(nP!Q![(q~(tP!Q![(w~(|Q^~|}(e!O!P)S~)VP!Q![)Y~)_P^~!Q![)Y~)eP!Q![)h~)mQ[~}!O)s!Q![*d~)vP!Q![)y~)|P!Q![*P~*UP[~!Q![*X~*[P!Q![*_~*dO[~~*iP[~}!O)s~*oP!Q![*r~*wY^~uv(`!Q![*r#U#V+g#W#X+m#[#]+m#a#b+z#e#f+m#g#h+m#k#l+m#m#n+m~+jP#W#X+m~+rPZ~!a!b+u~+zOZ~~,PQZ~!a!b+u#]#^,V~,YP#b#c+m~,`P!Q![,c~,hQ[~!P!Q)s!Q![,n~,sP[~!P!Q)s~,{_^~uv(`|}(e}!O)b!O!P*l!P!Q,]!Q![-z#R#S1]#U#V+g#W#X+m#[#]+m#a#b+z#e#f+m#g#h+m#k#l+m#m#n+m~.P]^~uv(`|}(e!O!P*l!Q![.x#R#S1]#U#V+g#W#X+m#[#]+m#a#b+z#e#f+m#g#h+m#k#l+m#m#n+m~.}]^~uv(`}!O/v!O!P*l!Q![0b#R#S1]#U#V+g#W#X+m#[#]+m#a#b+z#e#f+m#g#h+m#k#l+m#m#n+m~/yP!Q![/|~0PP!Q![0S~0XP[~}!O0[~0_P!Q![*X~0g[^~uv(`!O!P*l!Q![0b#R#S1]#U#V+g#W#X+m#[#]+m#a#b+z#e#f+m#g#h+m#k#l+m#m#n+m~1`P!Q![1c~1hR^~!O!P)S!Q![1c#R#S1]~1xOh~q~~2POe~q~~2UPq~!_!`2X~2^O_~~2eOf~q~~2lOn~q~~2s_p~q~qr3rst3rvw3rwx3r{|3r}!O4v!O!P3r!P!Q3r!Q![3r!_!`3r!a!b3r!b!c3r!c!}3r#R#S3r#T#o3r~3w_p~qr3rst3rvw3rwx3r{|3r}!O4v!O!P3r!P!Q3r!Q![3r!_!`3r!a!b3r!b!c3r!c!}3r#R#S3r#T#o3r~4y]qr3rst3rvw3rwx3r{|3r!O!P3r!P!Q3r!_!`3r!a!b3r!b!c3r!c!}3r#R#S3r#T#o3r~5wOa~~6OOb~q~~6Vap~q~qr3rst3rvw3rwx3r{|3r}!O4v!O!P3r!P!Q3r!Q![3r!_!`3r!a!b3r!b!c3r!c!}3r#R#S3r#T#h3r#h#i7[#i#o3r~7aap~qr3rst3rvw3rwx3r{|3r}!O4v!O!P3r!P!Q3r!Q![3r!_!`3r!a!b3r!b!c3r!c!}3r#R#S3r#T#h3r#h#i8f#i#o3r~8kap~qr3rst3rvw3rwx3r{|3r}!O4v!O!P3r!P!Q3r!Q![3r!_!`3r!a!b3r!b!c3r!c!}3r#R#S3r#T#d3r#d#e9p#e#o3r~9ubp~qr3rst3rvw3rwx3r{|3r}!O4v!O!P3r!P!Q3r!Q![3r![!]:}!_!`3r!a!b3r!b!c3r!c!}3r#R#S3r#T#g3r#g#h<w#h#o3r~;QP!P!Q;T~;WP!P!Q;Z~;^YOX;|Zp;|qy;|z|;|}!`;|!a#P;|#Q#p;|#q;'S;|;'S;=`<q<%lO;|~<RY`~OX;|Zp;|qy;|z|;|}!`;|!a#P;|#Q#p;|#q;'S;|;'S;=`<q<%lO;|~<tP;=`<%l;|~<|`p~qr3rst3rvw3rwx3r{|3r}!O4v!O!P3r!P!Q3r!Q![3r![!]:}!_!`3r!a!b3r!b!c3r!c!}3r#R#S3r#T#o3r~>VOg~q~~>^Pl~q~!`!a>a~>fOY~~>iP;=`<%l#u",
191
193
  tokenizers: [0],
192
194
  topRules: { "Document": [0, 6] },
193
195
  specialized: [{ term: 32, get: (value, stack) => specializeKeyword(value, stack) << 1, external: specializeKeyword }],
@@ -298,6 +300,7 @@ function highlightDgmo(source) {
298
300
  applyLabelOverrides(tokens);
299
301
  applyNoteContent(tokens);
300
302
  applyRecurringLine(tokens);
303
+ applyMonthNameDates(tokens);
301
304
  return tokens;
302
305
  }
303
306
  var ATTRIBUTE_KEYS = /* @__PURE__ */ new Set([
@@ -532,6 +535,40 @@ function applyRecurringLine(tokens) {
532
535
  offset += lineText.length + 1;
533
536
  }
534
537
  }
538
+ var DATE_BEARING_CHARTS = /* @__PURE__ */ new Set([
539
+ "gantt",
540
+ "pert",
541
+ "countdown",
542
+ "timeline",
543
+ "event-line"
544
+ ]);
545
+ function applyMonthNameDates(tokens) {
546
+ const fullText = tokens.map((t) => t.text).join("");
547
+ const lines = fullText.split("\n");
548
+ const firstContent = lines.find((l) => {
549
+ const t = l.trim();
550
+ return t.length > 0 && !t.startsWith("//");
551
+ });
552
+ const chartType = firstContent?.trim().split(/\s+/)[0]?.toLowerCase();
553
+ if (!chartType || !DATE_BEARING_CHARTS.has(chartType)) return;
554
+ let offset = 0;
555
+ for (const lineText of lines) {
556
+ for (const sp of scanMonthNameDates(lineText)) {
557
+ markDateSpan(tokens, offset + sp.start, offset + sp.end);
558
+ }
559
+ offset += lineText.length + 1;
560
+ }
561
+ }
562
+ function markDateSpan(tokens, from, to) {
563
+ let pos = 0;
564
+ for (const token of tokens) {
565
+ const tokenEnd = pos + token.text.length;
566
+ if (tokenEnd > from && pos < to && token.text.trim().length > 0 && (token.role === "default" || token.role === "number")) {
567
+ token.role = "number";
568
+ }
569
+ pos = tokenEnd;
570
+ }
571
+ }
535
572
  var NOTE_HEAD_RE = /^note(\s|$)/i;
536
573
  function applyNoteContent(tokens) {
537
574
  const fullText = tokens.map((t) => t.text).join("");
@@ -2,19 +2,19 @@ import {
2
2
  D3_DATA_CHART_TYPES,
3
3
  renderDataChartD3,
4
4
  supportsD3DataChart
5
- } from "./chunk-4VWJ4LW2.js";
5
+ } from "./chunk-DYWQFQJP.js";
6
6
  import "./chunk-VL2O2F3W.js";
7
- import "./chunk-U6EQI3U6.js";
7
+ import "./chunk-QBZYACOG.js";
8
8
  import "./chunk-YAA6IID3.js";
9
9
  import "./chunk-A4GOY3PE.js";
10
10
  import "./chunk-6KFWC4CO.js";
11
11
  import "./chunk-QOOUC2J5.js";
12
12
  import "./chunk-WCT3NYCV.js";
13
- import "./chunk-QZPEGJOM.js";
13
+ import "./chunk-EMLPOL77.js";
14
14
  import "./chunk-R3XI2VC7.js";
15
- import "./chunk-P6T66CCZ.js";
16
- import "./chunk-467TVMQL.js";
17
- import "./chunk-LV4BETUU.js";
15
+ import "./chunk-WBM7ZNDI.js";
16
+ import "./chunk-HHKO6SKY.js";
17
+ import "./chunk-BRENJ2BQ.js";
18
18
  import "./chunk-TLVIHFRO.js";
19
19
  import "./chunk-CXK4DZH3.js";
20
20
  import "./chunk-5WRI5ZAA.js";
@@ -23,4 +23,4 @@ export {
23
23
  renderDataChartD3,
24
24
  supportsD3DataChart
25
25
  };
26
- //# sourceMappingURL=charts-d3-7E4B4IMW.js.map
26
+ //# sourceMappingURL=charts-d3-MXEP6BNP.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  compactNumber
3
- } from "./chunk-NI3XQBPB.js";
3
+ } from "./chunk-5BHJZH62.js";
4
4
  import {
5
5
  parseInlineMarkdown
6
6
  } from "./chunk-3HDBAXF5.js";
@@ -15,7 +15,7 @@ import {
15
15
  mix,
16
16
  shapeFill,
17
17
  themeBaseBg
18
- } from "./chunk-P6T66CCZ.js";
18
+ } from "./chunk-WBM7ZNDI.js";
19
19
  import {
20
20
  resolveColor
21
21
  } from "./chunk-TLVIHFRO.js";
@@ -47,7 +47,11 @@ function resolvePaint(parsed, palette, isDark, pctFrac) {
47
47
  const base = parsed.color && resolveColor(parsed.color, palette) || parsed.color || autoColor || getSeriesColors(palette)[0];
48
48
  return {
49
49
  base,
50
- fill: shapeFill(palette, base, isDark, { solid: parsed.options.solidFill }),
50
+ // §1.9 fill family: tint (default) / solid / outline. In outline mode the
51
+ // progress region renders hollow (theme base bg) and the traffic-light /
52
+ // override color moves to the border — advancement still reads from the
53
+ // outlined region's extent against the gray track.
54
+ fill: shapeFill(palette, base, isDark, { mode: parsed.options.fillMode }),
51
55
  track: mix(palette.border, themeBaseBg(palette, isDark), 45),
52
56
  text: palette.text,
53
57
  muted: mix(palette.text, themeBaseBg(palette, isDark), 55)
@@ -177,7 +181,7 @@ function renderBar(svg, parsed, metrics, paint) {
177
181
  g.append("rect").attr("x", x).attr("y", y).attr("width", trackW).attr("height", trackH).attr("rx", r).attr("fill", paint.track);
178
182
  const fillW = trackW * metrics.fillFrac;
179
183
  if (fillW > 0.5) {
180
- g.append("rect").attr("x", x).attr("y", y).attr("width", fillW).attr("height", trackH).attr("rx", r).attr("fill", paint.fill).attr("stroke", paint.base).attr("stroke-width", 2);
184
+ g.append("rect").attr("x", x).attr("y", y).attr("width", fillW).attr("height", trackH).attr("rx", r).attr("fill", paint.fill).attr("stroke", paint.base).attr("stroke-width", parsed.options.fillMode === "outline" ? 1.5 : 2);
181
185
  }
182
186
  if (!parsed.options.noValue) {
183
187
  const valX = Math.max(x + fillW - 16, x + 52);
@@ -222,7 +226,7 @@ function renderThermometer(svg, parsed, metrics, paint) {
222
226
  const yBase = bulbCy - Math.sqrt(mBulb * mBulb - mHalf * mHalf);
223
227
  const yForFrac = (f) => yTop + (1 - f) * (yBase - yTop);
224
228
  const fillTopY = clamp(yForFrac(metrics.fillFrac), yTop, yBase);
225
- g.append("path").attr("d", bodyPath(fillTopY, mHalf, mBulb, false)).attr("fill", paint.fill).attr("stroke", paint.base).attr("stroke-width", 2).attr("stroke-linejoin", "round");
229
+ g.append("path").attr("d", bodyPath(fillTopY, mHalf, mBulb, false)).attr("fill", paint.fill).attr("stroke", paint.base).attr("stroke-width", parsed.options.fillMode === "outline" ? 1.5 : 2).attr("stroke-linejoin", "round");
226
230
  if (parsed.hasTarget) {
227
231
  const edgeX = cx + r;
228
232
  const tickLabelX = edgeX + 14;
@@ -306,7 +310,13 @@ function renderGauge(svg, parsed, metrics, paint) {
306
310
  }
307
311
  g.append("path").attr("d", arcPath(cx, cy, r, 0, 1)).attr("fill", "none").attr("stroke", paint.track).attr("stroke-width", stroke).attr("stroke-linecap", "round");
308
312
  if (metrics.fillFrac > 1e-3) {
309
- g.append("path").attr("d", arcPath(cx, cy, r, 0, metrics.fillFrac)).attr("fill", "none").attr("stroke", paint.fill).attr("stroke-width", stroke).attr("stroke-linecap", "round");
313
+ const valueArc = arcPath(cx, cy, r, 0, metrics.fillFrac);
314
+ if (parsed.options.fillMode === "outline") {
315
+ g.append("path").attr("d", valueArc).attr("fill", "none").attr("stroke", paint.base).attr("stroke-width", stroke).attr("stroke-linecap", "round");
316
+ g.append("path").attr("d", valueArc).attr("fill", "none").attr("stroke", paint.fill).attr("stroke-width", stroke - 3).attr("stroke-linecap", "round");
317
+ } else {
318
+ g.append("path").attr("d", valueArc).attr("fill", "none").attr("stroke", paint.fill).attr("stroke-width", stroke).attr("stroke-linecap", "round");
319
+ }
310
320
  }
311
321
  const a = Math.PI - metrics.fillFrac * Math.PI;
312
322
  const needleLen = r - stroke / 2 - 6;
@@ -351,4 +361,4 @@ export {
351
361
  renderGoal,
352
362
  renderGoalForExport
353
363
  };
354
- //# sourceMappingURL=chunk-CC4YRBWV.js.map
364
+ //# sourceMappingURL=chunk-3HF5YEFJ.js.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  computeNodeText,
3
3
  layoutMindmap
4
- } from "./chunk-ZJ3LS7DW.js";
4
+ } from "./chunk-HWX6ZHF3.js";
5
5
  import {
6
6
  renderInlineText
7
7
  } from "./chunk-3HDBAXF5.js";
@@ -19,7 +19,7 @@ import {
19
19
  } from "./chunk-YYVTBZZC.js";
20
20
  import {
21
21
  renderIntegratedLegend
22
- } from "./chunk-OU7HLO7I.js";
22
+ } from "./chunk-AUIM2NVH.js";
23
23
  import {
24
24
  getMaxLegendReservedHeight
25
25
  } from "./chunk-YAA6IID3.js";
@@ -35,17 +35,20 @@ import {
35
35
  } from "./chunk-QOOUC2J5.js";
36
36
  import {
37
37
  parseMindmap
38
- } from "./chunk-2UJSV2VT.js";
38
+ } from "./chunk-AL672HNE.js";
39
39
  import {
40
40
  preprocessDescriptionLine
41
41
  } from "./chunk-IYULMRBE.js";
42
42
  import {
43
43
  contrastText,
44
44
  shapeFill
45
- } from "./chunk-P6T66CCZ.js";
45
+ } from "./chunk-WBM7ZNDI.js";
46
46
  import {
47
47
  tagAttrKey
48
- } from "./chunk-467TVMQL.js";
48
+ } from "./chunk-HHKO6SKY.js";
49
+ import {
50
+ fillModeFromOptions
51
+ } from "./chunk-BRENJ2BQ.js";
49
52
 
50
53
  // src/mindmap/renderer.ts
51
54
  import * as d3Selection from "d3-selection";
@@ -56,11 +59,9 @@ var LABEL_LINE_HEIGHT = 18;
56
59
  var DESC_LINE_HEIGHT = 14;
57
60
  var NODE_RADIUS = 6;
58
61
  var ROOT_STROKE_WIDTH = 2.5;
59
- function nodeFill(palette, isDark, nodeColor, solid) {
62
+ function nodeFill(palette, isDark, nodeColor, fillMode) {
60
63
  const color = nodeColor ?? palette.primary;
61
- return shapeFill(palette, color, isDark, {
62
- ...solid !== void 0 && { solid }
63
- });
64
+ return shapeFill(palette, color, isDark, { mode: fillMode });
64
65
  }
65
66
  function nodeStroke(palette, nodeColor) {
66
67
  return nodeColor ?? palette.primary;
@@ -258,7 +259,7 @@ function renderMindmap(container, parsed, layout, palette, isDark, onClickItem,
258
259
  palette,
259
260
  isDark,
260
261
  effectiveColor,
261
- parsed.options["solid-fill"] === "on"
262
+ fillModeFromOptions(parsed.options)
262
263
  );
263
264
  const stroke = nodeStroke(palette, effectiveColor);
264
265
  const onFillText = contrastText(
@@ -388,4 +389,4 @@ export {
388
389
  renderMindmap,
389
390
  renderMindmapForExport
390
391
  };
391
- //# sourceMappingURL=chunk-5X6YQA2J.js.map
392
+ //# sourceMappingURL=chunk-3HGU63UY.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  mix
3
- } from "./chunk-P6T66CCZ.js";
3
+ } from "./chunk-WBM7ZNDI.js";
4
4
  import {
5
5
  resolveColor
6
6
  } from "./chunk-TLVIHFRO.js";
@@ -32,4 +32,4 @@ function buildSwatches(palette, muted) {
32
32
  export {
33
33
  buildSwatches
34
34
  };
35
- //# sourceMappingURL=chunk-4XFBQT5O.js.map
35
+ //# sourceMappingURL=chunk-3LK5DNED.js.map
@@ -5,7 +5,7 @@ import {
5
5
  stripDefaultModifier,
6
6
  tagAttrKey,
7
7
  validateTagGroupNames
8
- } from "./chunk-467TVMQL.js";
8
+ } from "./chunk-HHKO6SKY.js";
9
9
  import {
10
10
  normalizeName
11
11
  } from "./chunk-NOTA6TEI.js";
@@ -18,7 +18,7 @@ import {
18
18
  splitNameAndMeta,
19
19
  warnUnknownMetaKeys,
20
20
  withTagAliases
21
- } from "./chunk-LV4BETUU.js";
21
+ } from "./chunk-BRENJ2BQ.js";
22
22
  import {
23
23
  resolveColorWithDiagnostic
24
24
  } from "./chunk-TLVIHFRO.js";
@@ -34,7 +34,12 @@ var COLUMN_RE = /^\[(.+?)\]\s*(.*)$/;
34
34
  var PALETTE_COLOR_WORD_RE = /^(red|orange|yellow|green|blue|purple|teal|cyan|gray|black|white)\b/;
35
35
  var AS_ALIAS_TOKEN_RE = /^as\s+([A-Za-z][A-Za-z0-9_]{0,11})\b/;
36
36
  var KNOWN_OPTIONS = /* @__PURE__ */ new Set(["hide", "active-tag", "lane-by"]);
37
- var KNOWN_BOOLEANS = /* @__PURE__ */ new Set(["solid-fill", "no-title"]);
37
+ var KNOWN_BOOLEANS = /* @__PURE__ */ new Set([
38
+ "fill-tint",
39
+ "fill-solid",
40
+ "fill-outline",
41
+ "no-title"
42
+ ]);
38
43
  var REMOVED_BOOLEANS = {
39
44
  "no-auto-color": '"no-auto-color" was removed \u2014 colors are always auto-assigned from the palette; delete this line.'
40
45
  };
@@ -372,4 +377,4 @@ function parseCardLine(trimmed, lineNumber, counter, metaAliasMap, _palette, dia
372
377
  export {
373
378
  parseKanban
374
379
  };
375
- //# sourceMappingURL=chunk-IEDMFNU7.js.map
380
+ //# sourceMappingURL=chunk-3QD7VP3U.js.map
@@ -2,7 +2,7 @@ import {
2
2
  extractColor,
3
3
  measureIndent,
4
4
  parseFirstLine
5
- } from "./chunk-LV4BETUU.js";
5
+ } from "./chunk-BRENJ2BQ.js";
6
6
  import {
7
7
  emit,
8
8
  formatDgmoError,
@@ -507,4 +507,4 @@ export {
507
507
  VERSION_CONTROL_DIAGNOSTICS,
508
508
  parseVersionControl
509
509
  };
510
- //# sourceMappingURL=chunk-JJXGQIRV.js.map
510
+ //# sourceMappingURL=chunk-3YRPZ7ZZ.js.map
@@ -25,7 +25,7 @@ import {
25
25
  } from "./chunk-YYVTBZZC.js";
26
26
  import {
27
27
  renderIntegratedLegend
28
- } from "./chunk-OU7HLO7I.js";
28
+ } from "./chunk-AUIM2NVH.js";
29
29
  import {
30
30
  getMaxLegendReservedHeight
31
31
  } from "./chunk-YAA6IID3.js";
@@ -55,10 +55,13 @@ import {
55
55
  mix,
56
56
  shapeFill,
57
57
  themeBaseBg
58
- } from "./chunk-P6T66CCZ.js";
58
+ } from "./chunk-WBM7ZNDI.js";
59
59
  import {
60
60
  tagAttrKey
61
- } from "./chunk-467TVMQL.js";
61
+ } from "./chunk-HHKO6SKY.js";
62
+ import {
63
+ fillModeFromOptions
64
+ } from "./chunk-BRENJ2BQ.js";
62
65
 
63
66
  // src/sitemap/renderer.ts
64
67
  import * as d3Selection from "d3-selection";
@@ -70,11 +73,9 @@ var ARROWHEAD_W = 10;
70
73
  var ARROWHEAD_H = 7;
71
74
  var EDGE_LABEL_FONT_SIZE = 11;
72
75
  var LEGEND_FIXED_GAP = 8;
73
- function nodeFill(palette, isDark, nodeColor, solid) {
76
+ function nodeFill(palette, isDark, nodeColor, fillMode) {
74
77
  const color = nodeColor ?? palette.primary;
75
- return shapeFill(palette, color, isDark, {
76
- ...solid !== void 0 && { solid }
77
- });
78
+ return shapeFill(palette, color, isDark, { mode: fillMode });
78
79
  }
79
80
  function nodeStroke(_palette, nodeColor) {
80
81
  return nodeColor ?? _palette.primary;
@@ -262,8 +263,8 @@ function renderSitemap(container, parsed, layout, palette, isDark, onClickItem,
262
263
  const tagVal = node.tagMetadata[tagKey];
263
264
  if (tagVal) nodeG.attr(`data-tag-${tagKey}`, tagVal.toLowerCase());
264
265
  }
265
- const solid = parsed.options["solid-fill"] === "on";
266
- const fill = nodeFill(palette, isDark, node.color, solid);
266
+ const fillMode = fillModeFromOptions(parsed.options);
267
+ const fill = nodeFill(palette, isDark, node.color, fillMode);
267
268
  const stroke = nodeStroke(palette, node.color);
268
269
  const labelColor = contrastText(
269
270
  fill,
@@ -284,7 +285,7 @@ function renderSitemap(container, parsed, layout, palette, isDark, onClickItem,
284
285
  });
285
286
  const metaEntries = Object.entries(node.metadata);
286
287
  if (metaEntries.length > 0) {
287
- nodeG.append("line").attr("x1", 0).attr("y1", sHeaderHeight).attr("x2", node.width).attr("y2", sHeaderHeight).attr("stroke", solid ? labelColor : stroke).attr("stroke-opacity", 0.3);
288
+ nodeG.append("line").attr("x1", 0).attr("y1", sHeaderHeight).attr("x2", node.width).attr("y2", sHeaderHeight).attr("stroke", fillMode === "solid" ? labelColor : stroke).attr("stroke-opacity", 0.3);
288
289
  const metaDisplayKeys = metaEntries.map(
289
290
  ([k]) => displayNames.get(k) ?? k
290
291
  );
@@ -297,7 +298,7 @@ function renderSitemap(container, parsed, layout, palette, isDark, onClickItem,
297
298
  const displayKey = metaDisplayKeys[i];
298
299
  const rowY = sHeaderHeight + sSeparatorGap + (i + 1) * sMetaLineHeight - 4;
299
300
  const tagColor = tagColors.get(`${key}:${value.toLowerCase()}`);
300
- const valColor = solid ? labelColor : tagColor ?? labelColor;
301
+ const valColor = fillMode === "solid" ? labelColor : tagColor ?? labelColor;
301
302
  nodeG.append("text").attr("x", 10).attr("y", rowY).attr("fill", labelColor).attr("font-size", sMetaFontSize).text(`${displayKey}:`);
302
303
  nodeG.append("text").attr("x", valueX).attr("y", rowY).attr("fill", valColor).attr("font-size", sMetaFontSize).text(value);
303
304
  }
@@ -305,7 +306,7 @@ function renderSitemap(container, parsed, layout, palette, isDark, onClickItem,
305
306
  if (node.description && node.description.length > 0) {
306
307
  const metaCount = Object.keys(node.metadata).length;
307
308
  const sepY = metaCount > 0 ? sHeaderHeight + sSeparatorGap + metaCount * sMetaLineHeight : sHeaderHeight;
308
- nodeG.append("line").attr("x1", 0).attr("y1", sepY).attr("x2", node.width).attr("y2", sepY).attr("stroke", solid ? labelColor : stroke).attr("stroke-opacity", 0.3);
309
+ nodeG.append("line").attr("x1", 0).attr("y1", sepY).attr("x2", node.width).attr("y2", sepY).attr("stroke", fillMode === "solid" ? labelColor : stroke).attr("stroke-opacity", 0.3);
309
310
  const descStartY = sHeaderHeight + sSeparatorGap + metaCount * sMetaLineHeight;
310
311
  for (let di = 0; di < node.description.length; di++) {
311
312
  const processed = preprocessDescriptionLine(node.description[di]);
@@ -317,7 +318,10 @@ function renderSitemap(container, parsed, layout, palette, isDark, onClickItem,
317
318
  if (!exportDims && node.hiddenCount && node.hiddenCount > 0) {
318
319
  const clipId = `clip-${node.id}`;
319
320
  nodeG.append("clipPath").attr("id", clipId).append("rect").attr("width", node.width).attr("height", node.height).attr("rx", CARD_RADIUS);
320
- nodeG.append("rect").attr("y", node.height - sCollapseBarHeight).attr("width", node.width).attr("height", sCollapseBarHeight).attr("fill", solid ? labelColor : node.color ?? palette.primary).attr("opacity", 0.5).attr("clip-path", `url(#${clipId})`);
321
+ nodeG.append("rect").attr("y", node.height - sCollapseBarHeight).attr("width", node.width).attr("height", sCollapseBarHeight).attr(
322
+ "fill",
323
+ fillMode === "solid" ? labelColor : node.color ?? palette.primary
324
+ ).attr("opacity", 0.5).attr("clip-path", `url(#${clipId})`);
321
325
  }
322
326
  }
323
327
  if (exportDims && hasLegend) {
@@ -400,9 +404,9 @@ function renderLegend(parent, legendGroups, palette, isDark, activeTagGroup, fix
400
404
  }
401
405
  }
402
406
  async function renderSitemapForExport(content, theme, palette) {
403
- const { parseSitemap } = await import("./parser-BKI42XBQ.js");
404
- const { layoutSitemap } = await import("./layout-MUPRALE5.js");
405
- const { getPalette } = await import("./palettes-PRJ2RI6D.js");
407
+ const { parseSitemap } = await import("./parser-2ECN6JA2.js");
408
+ const { layoutSitemap } = await import("./layout-A4XWNVID.js");
409
+ const { getPalette } = await import("./palettes-UDLZ2SA4.js");
406
410
  const isDark = theme === "dark";
407
411
  const effectivePalette = palette ?? (isDark ? getPalette("nord").dark : getPalette("nord").light);
408
412
  const parsed = parseSitemap(content, effectivePalette);
@@ -451,4 +455,4 @@ export {
451
455
  renderSitemap,
452
456
  renderSitemapForExport
453
457
  };
454
- //# sourceMappingURL=chunk-OJTXTQA2.js.map
458
+ //# sourceMappingURL=chunk-44VCIPHF.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  buildMapProjection
3
- } from "./chunk-32XPAAET.js";
3
+ } from "./chunk-ZJV7GYR4.js";
4
4
  import {
5
5
  TITLE_FONT_SIZE,
6
6
  TITLE_Y
@@ -51,4 +51,4 @@ export {
51
51
  mapContentAspect,
52
52
  mapExportDimensions
53
53
  };
54
- //# sourceMappingURL=chunk-RAHVMKBG.js.map
54
+ //# sourceMappingURL=chunk-4AQRFDXL.js.map
@@ -10,7 +10,7 @@ import {
10
10
  splitNameAndMeta,
11
11
  tryParseSharedOption,
12
12
  warnUnknownMetaKeys
13
- } from "./chunk-LV4BETUU.js";
13
+ } from "./chunk-BRENJ2BQ.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-6MNGECP2.js.map
955
+ //# sourceMappingURL=chunk-4IHAV6O7.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  isBlockNode
3
- } from "./chunk-NNAAJVBU.js";
3
+ } from "./chunk-NR5HCAUD.js";
4
4
  import {
5
5
  AUTO_TAG_COLOR_SENTINEL,
6
6
  finalizeAutoTagColors,
@@ -9,12 +9,13 @@ import {
9
9
  tagAttrKey,
10
10
  validateTagGroupNames,
11
11
  validateTagValues
12
- } from "./chunk-467TVMQL.js";
12
+ } from "./chunk-HHKO6SKY.js";
13
13
  import {
14
14
  extractColor,
15
+ fillModeFromToken,
15
16
  measureIndent,
16
17
  parseFirstLine
17
- } from "./chunk-LV4BETUU.js";
18
+ } from "./chunk-BRENJ2BQ.js";
18
19
  import {
19
20
  formatDgmoError,
20
21
  makeDgmoError,
@@ -24,7 +25,7 @@ import {
24
25
 
25
26
  // src/block/parser.ts
26
27
  function parseBlock(content, palette) {
27
- const options = { noLegend: false, solidFill: false };
28
+ const options = { noLegend: false };
28
29
  const result = {
29
30
  type: "block",
30
31
  title: null,
@@ -132,8 +133,10 @@ function parseBlock(content, palette) {
132
133
  options.noLegend = true;
133
134
  continue;
134
135
  }
135
- if (/^solid-fill\s*$/i.test(trimmed)) {
136
- options.solidFill = true;
136
+ const fm = fillModeFromToken(trimmed);
137
+ if (fm !== null) {
138
+ if (fm === "tint") delete options.fillMode;
139
+ else options.fillMode = fm;
137
140
  continue;
138
141
  }
139
142
  }
@@ -335,4 +338,4 @@ function parseBlockTail(tail, aliasMap) {
335
338
  export {
336
339
  parseBlock
337
340
  };
338
- //# sourceMappingURL=chunk-ENRS56GC.js.map
341
+ //# sourceMappingURL=chunk-4UNQ6X24.js.map