@diagrammo/dgmo 0.50.2 → 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 (257) 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 +155 -65
  6. package/dist/advanced.js +231 -189
  7. package/dist/{analyzer-UYKBXAKR.js → analyzer-BJ54GIFB.js} +3 -3
  8. package/dist/auto.css +31 -8
  9. package/dist/auto.d.ts +6 -0
  10. package/dist/auto.js +171 -133
  11. package/dist/auto.mjs +3062 -1478
  12. package/dist/block.css +28 -8
  13. package/dist/block.js +138 -72
  14. package/dist/charts-d3-MXEP6BNP.js +26 -0
  15. package/dist/{chunk-3YPY3OXD.js → chunk-3HF5YEFJ.js} +17 -7
  16. package/dist/{chunk-4MJ7M6YL.js → chunk-3HGU63UY.js} +14 -13
  17. package/dist/chunk-3LK5DNED.js +35 -0
  18. package/dist/{chunk-3Y2DRD7S.js → chunk-3QD7VP3U.js} +9 -4
  19. package/dist/{chunk-6BFZKBGD.js → chunk-3YRPZ7ZZ.js} +2 -2
  20. package/dist/{chunk-WW32K72E.js → chunk-44VCIPHF.js} +25 -21
  21. package/dist/{chunk-TN35C5KM.js → chunk-4AQRFDXL.js} +2 -2
  22. package/dist/{chunk-HHXOONLX.js → chunk-4B5YISOR.js} +38 -1
  23. package/dist/{chunk-PGEGPSCZ.js → chunk-4IHAV6O7.js} +2 -2
  24. package/dist/{chunk-7L3R6I3U.js → chunk-4UNQ6X24.js} +10 -7
  25. package/dist/{chunk-O7NUCTFU.js → chunk-4YFKQ5WT.js} +7 -4
  26. package/dist/{chunk-5WFIYXQ6.js → chunk-5223KXFD.js} +122 -242
  27. package/dist/{chunk-PFHVU7UA.js → chunk-5BHJZH62.js} +3 -3
  28. package/dist/{chunk-QYTPPDAO.js → chunk-5HILBT7X.js} +2 -2
  29. package/dist/{chunk-GKC3HILQ.js → chunk-5NGAO4QK.js} +27 -4
  30. package/dist/{chunk-IAEC4KLA.js → chunk-5QKQSSPO.js} +2 -2
  31. package/dist/{chunk-DSWVNQVS.js → chunk-5RP7JRVP.js} +4 -59
  32. package/dist/{chunk-MCZ5LBZD.js → chunk-5SEVICBT.js} +8 -8
  33. package/dist/{chunk-GBE54KY6.js → chunk-6EJITS44.js} +8 -5
  34. package/dist/{chunk-BBGDM4NQ.js → chunk-6HQH6JZE.js} +35 -16
  35. package/dist/{chunk-66NVRO4K.js → chunk-6LBQ7ELG.js} +17 -18
  36. package/dist/{chunk-4XK3FLFB.js → chunk-6NYWYNBI.js} +3 -3
  37. package/dist/{chunk-VBYSIOOY.js → chunk-75G3Q4DK.js} +3 -3
  38. package/dist/{chunk-3NODSS6A.js → chunk-77FGAVZC.js} +13 -10
  39. package/dist/{chunk-6IAA2QQ2.js → chunk-7BIZCTAX.js} +2 -2
  40. package/dist/{chunk-TWQUYVP3.js → chunk-7DF4J4RL.js} +4 -4
  41. package/dist/{chunk-66RUL3XF.js → chunk-7KINELPI.js} +111 -49
  42. package/dist/{chunk-L3UHP6TD.js → chunk-7L4UJOY6.js} +1 -2
  43. package/dist/{chunk-QJP6PG7F.js → chunk-7QE3XMRK.js} +19 -18
  44. package/dist/{chunk-P7CE7LXL.js → chunk-AAXZDUOV.js} +18 -17
  45. package/dist/{chunk-SXRTRMEE.js → chunk-AL672HNE.js} +3 -3
  46. package/dist/chunk-APKUAJ2L.js +220 -0
  47. package/dist/{chunk-SCHXJTZL.js → chunk-ARGMQ3H4.js} +2 -2
  48. package/dist/{chunk-HEVYAHLW.js → chunk-AUIM2NVH.js} +5 -5
  49. package/dist/{chunk-3LH5CLP4.js → chunk-BKVOYV6I.js} +143 -6
  50. package/dist/{chunk-RZ6YKEUJ.js → chunk-BPIZNB5O.js} +17 -15
  51. package/dist/{chunk-QROYX7TT.js → chunk-BPY242XU.js} +6 -4
  52. package/dist/{chunk-OTAL43EH.js → chunk-BRENJ2BQ.js} +39 -3
  53. package/dist/{chunk-FA6K3FWM.js → chunk-CCNDLW7Z.js} +44 -22
  54. package/dist/{chunk-2KGXHFYK.js → chunk-CIRFIL4M.js} +49 -29
  55. package/dist/chunk-DAOFNU6J.js +283 -0
  56. package/dist/{chunk-QJJZSROI.js → chunk-DYWQFQJP.js} +48 -38
  57. package/dist/{chunk-XEGTMVYY.js → chunk-EMLPOL77.js} +15 -8
  58. package/dist/{chunk-NWED7CYO.js → chunk-FHGVORFO.js} +29 -25
  59. package/dist/{chunk-U2HGPLZS.js → chunk-FQ7HTV52.js} +17 -2
  60. package/dist/{chunk-H73FP42Q.js → chunk-FQMUHRVC.js} +70 -31
  61. package/dist/{chunk-BTUTZMPT.js → chunk-FT3ZYWET.js} +108 -42
  62. package/dist/{chunk-T5SHNNGP.js → chunk-FUPF2UYQ.js} +92 -34
  63. package/dist/{chunk-3XPUDB7B.js → chunk-FY5MSZAP.js} +279 -39
  64. package/dist/{chunk-M5RXSRO2.js → chunk-GCYTI3DE.js} +42 -33
  65. package/dist/{chunk-DN66GPY5.js → chunk-GJFAMOGK.js} +24 -3
  66. package/dist/{chunk-F2L5GCQ4.js → chunk-GU46PPT3.js} +3 -3
  67. package/dist/{chunk-6IUAK7RZ.js → chunk-H6PI3KJT.js} +2 -2
  68. package/dist/{chunk-ONA5KPV3.js → chunk-H7KENAZO.js} +18 -14
  69. package/dist/{chunk-SQLNBA64.js → chunk-HBPDFCQY.js} +3 -3
  70. package/dist/{chunk-SCQ5VPUF.js → chunk-HFMYN6N2.js} +2 -2
  71. package/dist/{chunk-FJUNPCYI.js → chunk-HHKO6SKY.js} +2 -2
  72. package/dist/{chunk-DZXYF2F5.js → chunk-HQQNCY7W.js} +21 -8
  73. package/dist/{chunk-7TV5Y53Y.js → chunk-HWX6ZHF3.js} +3 -3
  74. package/dist/{chunk-3P2DKJCG.js → chunk-ICPJPQ5C.js} +2 -2
  75. package/dist/{chunk-VUJGMJE6.js → chunk-IM6PDDCE.js} +4 -4
  76. package/dist/{chunk-JJUOHGX2.js → chunk-INE5YJBZ.js} +13 -8
  77. package/dist/{chunk-HTMN2Z6U.js → chunk-J6QROYDA.js} +58 -11
  78. package/dist/{chunk-NX4EQS3U.js → chunk-J76PIKAT.js} +2 -2
  79. package/dist/{chunk-SVTI362O.js → chunk-J7KJR3R6.js} +129 -109
  80. package/dist/{chunk-JEUJOX5X.js → chunk-J7TLCB2Q.js} +2 -2
  81. package/dist/{chunk-O7WP4ZD4.js → chunk-JED6ZDEE.js} +2 -2
  82. package/dist/{chunk-J6K7RP6P.js → chunk-JRCOYRRH.js} +19 -7
  83. package/dist/{chunk-7QKLIMRZ.js → chunk-K2I2XOZD.js} +46 -51
  84. package/dist/{chunk-EAMEADTV.js → chunk-K4EOKJA6.js} +96 -24
  85. package/dist/{chunk-5OWVC2A6.js → chunk-KGVZ5VGH.js} +13 -10
  86. package/dist/{chunk-DFTFPYUD.js → chunk-LBMS4AW6.js} +22 -21
  87. package/dist/{chunk-VVW3F3MD.js → chunk-LGT3PZCJ.js} +27 -19
  88. package/dist/{chunk-OMNGQPEZ.js → chunk-LTXOLDUZ.js} +9 -6
  89. package/dist/{chunk-Q4V4XQWV.js → chunk-MUE65OTD.js} +5 -4
  90. package/dist/{chunk-5GJYGP5Z.js → chunk-MUVJ57EP.js} +14 -18
  91. package/dist/{chunk-CLD2OKV7.js → chunk-MX2EY5Y7.js} +2 -2
  92. package/dist/{chunk-OTQKUHRS.js → chunk-NNS4E7CW.js} +6 -4
  93. package/dist/{chunk-NNAAJVBU.js → chunk-NR5HCAUD.js} +1 -1
  94. package/dist/{chunk-KFZYNWWO.js → chunk-ONU3U4GL.js} +4 -4
  95. package/dist/{chunk-YNRDWYZP.js → chunk-OQKP2X3D.js} +170 -51
  96. package/dist/{chunk-AHGF2YYA.js → chunk-OTOHI4JO.js} +2 -2
  97. package/dist/{chunk-EOFPYPAU.js → chunk-P3NRSSUU.js} +51 -11
  98. package/dist/{chunk-QXKWYZNR.js → chunk-PRI2OD4E.js} +10 -3
  99. package/dist/{chunk-U6EQI3U6.js → chunk-QBZYACOG.js} +3 -3
  100. package/dist/{chunk-C2CVAM3U.js → chunk-QGATPIPX.js} +170 -91
  101. package/dist/{chunk-PZFVK3IH.js → chunk-QHXCAEMX.js} +8 -5
  102. package/dist/{chunk-BH3UYK36.js → chunk-QJMKPUYK.js} +15 -5
  103. package/dist/{chunk-HQCHYB5F.js → chunk-QOOUC2J5.js} +2 -2
  104. package/dist/{chunk-Z6XJQ6KO.js → chunk-QVENJMNX.js} +2 -2
  105. package/dist/{chunk-IUMPEA64.js → chunk-QZX5S6R3.js} +4 -4
  106. package/dist/{chunk-I7F2A35O.js → chunk-R3YSD62R.js} +25 -47
  107. package/dist/{chunk-NU3XLTGP.js → chunk-REJAIQ5S.js} +4 -4
  108. package/dist/{chunk-2C56LEML.js → chunk-ROOE4R4Y.js} +8 -5
  109. package/dist/{chunk-XHVV4NVW.js → chunk-RT7ACF77.js} +12 -2
  110. package/dist/{chunk-I2WKW7C7.js → chunk-SMRFPVLQ.js} +3 -3
  111. package/dist/{chunk-VDOOQZUD.js → chunk-SWSIKFEB.js} +4 -4
  112. package/dist/{chunk-HLJVEAOF.js → chunk-T4A4TSTJ.js} +19 -45
  113. package/dist/{chunk-KHEYDLMT.js → chunk-TJVLKNGR.js} +20 -10
  114. package/dist/{chunk-GL5UZ6NY.js → chunk-TPFKKXCB.js} +3 -3
  115. package/dist/{chunk-X6EZPSW6.js → chunk-TTIM6YTT.js} +31 -21
  116. package/dist/{chunk-BCYVE3N5.js → chunk-TYS6CSS5.js} +2 -2
  117. package/dist/{chunk-T4VOVZT5.js → chunk-UBLHQTLV.js} +15 -14
  118. package/dist/{chunk-3LKM6FMW.js → chunk-UNURMIQO.js} +2 -2
  119. package/dist/{chunk-TSA237IM.js → chunk-VILVLS7P.js} +5 -3
  120. package/dist/{chunk-HGN652MU.js → chunk-VL2O2F3W.js} +2 -2
  121. package/dist/{chunk-3XGZF2QJ.js → chunk-VQOCMUWI.js} +39 -28
  122. package/dist/{chunk-P6T66CCZ.js → chunk-WBM7ZNDI.js} +3 -2
  123. package/dist/{chunk-CMCR5WBW.js → chunk-WBRZJOEC.js} +3 -3
  124. package/dist/{chunk-5LWQH6QV.js → chunk-WCT3NYCV.js} +1 -1
  125. package/dist/{chunk-C4GQDB5L.js → chunk-WRNFDFPU.js} +2 -2
  126. package/dist/{chunk-6HJBFVLO.js → chunk-XD6ZYURY.js} +9 -4
  127. package/dist/{chunk-C63UWAKM.js → chunk-Y2ZE3MSG.js} +2 -2
  128. package/dist/{chunk-7UEMZREK.js → chunk-YAA6IID3.js} +2 -2
  129. package/dist/{chunk-F7BFXWNQ.js → chunk-YIBAWQGJ.js} +7 -4
  130. package/dist/{chunk-PH5X4GIP.js → chunk-YTMTPUH4.js} +8 -5
  131. package/dist/{chunk-3UIKSPFB.js → chunk-Z5QVYKR7.js} +11 -3
  132. package/dist/{chunk-KQ57MHRO.js → chunk-ZEF5M5MB.js} +155 -87
  133. package/dist/{chunk-LE4MYMLI.js → chunk-ZJV7GYR4.js} +6 -6
  134. package/dist/{chunk-XJLKLU4D.js → chunk-ZNWAYU6N.js} +11 -7
  135. package/dist/cli.cjs +165 -148
  136. package/dist/clock.js +105 -25
  137. package/dist/countdown.js +208 -82
  138. package/dist/dgmo-router-X7ZGAPIE.js +86 -0
  139. package/dist/dimensions-45H6JQEY.js +22 -0
  140. package/dist/editor.js +17 -2
  141. package/dist/element.d.ts +6 -0
  142. package/dist/element.js +172 -134
  143. package/dist/element.mjs +3026 -1463
  144. package/dist/{flowchart-parser-OE4WHLTF.js → flowchart-parser-UKELHBSB.js} +4 -4
  145. package/dist/{flowchart-renderer-GPCSMTOR.js → flowchart-renderer-MNCDS7MV.js} +10 -10
  146. package/dist/highlight.d.ts +21 -1
  147. package/dist/highlight.js +106 -3
  148. package/dist/index.d.ts +2 -2
  149. package/dist/index.js +59 -57
  150. package/dist/{layout-FWODLIMP.js → layout-2L3WMRYU.js} +6 -6
  151. package/dist/{layout-7SKMFYHL.js → layout-46N4JJYK.js} +5 -5
  152. package/dist/{layout-7H4H46CS.js → layout-7QXCNOVS.js} +3 -3
  153. package/dist/layout-A4XWNVID.js +14 -0
  154. package/dist/{layout-46366KBT.js → layout-A5UHRWVH.js} +3 -3
  155. package/dist/{layout-NXG63LWH.js → layout-AM2JWW3X.js} +4 -4
  156. package/dist/{layout-DC4TVXER.js → layout-EE6GE46Y.js} +5 -5
  157. package/dist/{layout-FGQWRYYW.js → layout-F4WO357A.js} +3 -3
  158. package/dist/layout-G23F7LDH.js +9 -0
  159. package/dist/{layout-QNUQLEHU.js → layout-GM4UGR7B.js} +5 -4
  160. package/dist/{layout-7MZ5NF2N.js → layout-GQQJXNYH.js} +5 -5
  161. package/dist/{layout-5BG6DFCU.js → layout-IIE2S5FK.js} +6 -6
  162. package/dist/{layout-34CLNICW.js → layout-OAC4PEAC.js} +5 -5
  163. package/dist/layout-VMCRX66I.js +14 -0
  164. package/dist/{layout-PUQCB6AN.js → layout-ZDOSXL5G.js} +7 -7
  165. package/dist/{layout-search-QS44PI5R.js → layout-search-55FU6HD3.js} +6 -157
  166. package/dist/map-data/gazetteer.json +1 -1
  167. package/dist/{palettes-PRJ2RI6D.js → palettes-UDLZ2SA4.js} +2 -2
  168. package/dist/{parser-D5VILGN2.js → parser-2ECN6JA2.js} +4 -4
  169. package/dist/{parser-LWKKBNSA.js → parser-4WTIHM5J.js} +3 -3
  170. package/dist/{parser-DFFEDKHH.js → parser-5H2BTSJQ.js} +3 -3
  171. package/dist/{parser-4NO6VZ6S.js → parser-75KVXUNS.js} +4 -4
  172. package/dist/{parser-VKOJM7KS.js → parser-774AC53T.js} +4 -4
  173. package/dist/{parser-IBWNAPY4.js → parser-BE4YCSRU.js} +3 -3
  174. package/dist/{parser-4AI5ZN5F.js → parser-CNGUQUQI.js} +3 -3
  175. package/dist/{parser-36HVKU5U.js → parser-DEUUSQIN.js} +7 -6
  176. package/dist/{parser-H3XEPFPV.js → parser-DQAFLUJB.js} +4 -4
  177. package/dist/{parser-5OXGPNBF.js → parser-EYCKNKQA.js} +5 -5
  178. package/dist/{parser-TGQZJ5OT.js → parser-FXISIU6A.js} +4 -4
  179. package/dist/{parser-JJR52VAT.js → parser-GTB4XC7P.js} +5 -5
  180. package/dist/{parser-AGVYTQXV.js → parser-GVEPAUSD.js} +4 -4
  181. package/dist/{parser-WAV5JRPT.js → parser-HSQGTY4G.js} +4 -4
  182. package/dist/{parser-YS7TOS2K.js → parser-HVKRINUS.js} +3 -3
  183. package/dist/{parser-W4PQUGX3.js → parser-J5MIEYO4.js} +5 -5
  184. package/dist/parser-KMZIXLDZ.js +13 -0
  185. package/dist/{parser-HYRTF3DO.js → parser-LJHXWSXU.js} +3 -3
  186. package/dist/{parser-KCR2WS3V.js → parser-PT3W72G5.js} +4 -4
  187. package/dist/{parser-CVMEDULU.js → parser-SBJQDPHL.js} +4 -4
  188. package/dist/{parser-RZPVAQVX.js → parser-SUWWWCMX.js} +4 -3
  189. package/dist/{parser-TXND652E.js → parser-SXDRNZOA.js} +4 -4
  190. package/dist/parser-UMILOW3M.js +14 -0
  191. package/dist/{parser-RV4M6AS2.js → parser-UP3AZ367.js} +4 -4
  192. package/dist/{parser-IJBMRXMC.js → parser-WHPRV3X5.js} +5 -5
  193. package/dist/{parser-MPCE5JBG.js → parser-WX3UODSJ.js} +4 -4
  194. package/dist/{parser-K3XXLMUW.js → parser-XCIEN3KN.js} +4 -4
  195. package/dist/{parser-AXKBDGNO.js → parser-XIRTUMVN.js} +5 -5
  196. package/dist/{parser-B5FVS7O6.js → parser-YKCGIG45.js} +3 -3
  197. package/dist/{parser-PSA4UBSP.js → parser-YKYMQG3B.js} +4 -4
  198. package/dist/{parser-MTOMTWTD.js → parser-ZGM2OJ6Y.js} +6 -5
  199. package/dist/{parser-CSFUN3CT.js → parser-ZL5QUFVH.js} +5 -4
  200. package/dist/pert.d.ts +2 -2
  201. package/dist/{renderer-PPIHO5FI.js → renderer-3F7OS2AX.js} +14 -13
  202. package/dist/{renderer-SBS3YWU5.js → renderer-4QB4K7Q3.js} +9 -9
  203. package/dist/{renderer-GHPZMFU2.js → renderer-5DAKMIU2.js} +3 -3
  204. package/dist/{renderer-R2WNIC2C.js → renderer-5H4SY7YY.js} +9 -9
  205. package/dist/{renderer-DAXMXIKD.js → renderer-5PIQPFOX.js} +5 -4
  206. package/dist/{renderer-45PSOL3E.js → renderer-6MU37QF5.js} +6 -6
  207. package/dist/renderer-AQVMWJ4M.js +27 -0
  208. package/dist/{renderer-A5VE5BCI.js → renderer-BDDW6K7N.js} +9 -9
  209. package/dist/{renderer-AUW2BE6G.js → renderer-BNB3VIDY.js} +10 -10
  210. package/dist/{renderer-4ITCHBT7.js → renderer-CQY6ATOS.js} +6 -6
  211. package/dist/{renderer-6OKF44KS.js → renderer-CVW75CXL.js} +15 -15
  212. package/dist/{renderer-7RH2SI3B.js → renderer-DT4XRFEP.js} +5 -4
  213. package/dist/{renderer-B5TBNZJE.js → renderer-ERHBSTQT.js} +9 -9
  214. package/dist/{renderer-HVCU2C3Z.js → renderer-HSHHVYWF.js} +5 -4
  215. package/dist/renderer-IDPVUFNB.js +28 -0
  216. package/dist/renderer-ILX6BGKR.js +21 -0
  217. package/dist/renderer-JP663HKG.js +22 -0
  218. package/dist/{renderer-KS7YZJE2.js → renderer-KNFTTOBL.js} +11 -11
  219. package/dist/{renderer-2AZ5HJFK.js → renderer-MVUZBESR.js} +5 -5
  220. package/dist/{renderer-QAOBLRXV.js → renderer-N4EBR2FV.js} +11 -11
  221. package/dist/{renderer-P5ROYQGU.js → renderer-NHO46CT2.js} +4 -4
  222. package/dist/{renderer-NGXZTRK6.js → renderer-NO2QJ5LZ.js} +10 -10
  223. package/dist/{renderer-FPE3J5VZ.js → renderer-OGFV5RXX.js} +12 -12
  224. package/dist/{renderer-ODUUOPVT.js → renderer-PDLESJMS.js} +15 -15
  225. package/dist/renderer-T4MTNINC.js +24 -0
  226. package/dist/renderer-TOUGFGTM.js +24 -0
  227. package/dist/{renderer-BSR2O2H6.js → renderer-U3KPD43Y.js} +14 -13
  228. package/dist/{renderer-JCCHNECZ.js → renderer-X334IJU2.js} +10 -10
  229. package/dist/{renderer-5DSEWF74.js → renderer-Y5OAMOCR.js} +9 -9
  230. package/dist/{renderer-5KVCNMOJ.js → renderer-YONAKAJU.js} +5 -3
  231. package/dist/{renderer-7SD6MSBS.js → renderer-YWMI6Y2U.js} +12 -12
  232. package/dist/{renderer-2QPMJ2DA.js → renderer-ZWIH4WDW.js} +10 -10
  233. package/dist/renderer-radial-7CGZMVMS.js +21 -0
  234. package/dist/{resolver-FHBCO3PL.js → resolver-EMTGNR3D.js} +4 -3
  235. package/dist/{state-parser-3REXRK3R.js → state-parser-BATWAID2.js} +4 -4
  236. package/dist/{state-renderer-XYLNRWXR.js → state-renderer-3FKZJ3LP.js} +10 -10
  237. package/dist/{themes-PdPR1-hC.d.ts → themes-32xj5ZTW.d.ts} +27 -0
  238. package/docs/ai-integration.md +15 -19
  239. package/docs/language-reference.md +106 -21
  240. package/gallery/fixtures/clock.dgmo +3 -3
  241. package/gallery/fixtures/countdown-tz.dgmo +5 -0
  242. package/package.json +1 -1
  243. package/dist/charts-d3-MUW3LTML.js +0 -26
  244. package/dist/dgmo-router-CE2G67FV.js +0 -84
  245. package/dist/dimensions-OTBKC5M6.js +0 -22
  246. package/dist/layout-6RDJHS6E.js +0 -9
  247. package/dist/layout-J36454XU.js +0 -14
  248. package/dist/layout-LD6XTLD6.js +0 -14
  249. package/dist/parser-4WQQQXCG.js +0 -13
  250. package/dist/parser-O4HIUN6G.js +0 -13
  251. package/dist/renderer-CYB4LK3G.js +0 -22
  252. package/dist/renderer-FF24KZCI.js +0 -24
  253. package/dist/renderer-FYSVXL7M.js +0 -28
  254. package/dist/renderer-HDCCZURL.js +0 -24
  255. package/dist/renderer-PSMMZCKH.js +0 -21
  256. package/dist/renderer-UYMQQCJK.js +0 -24
  257. package/dist/renderer-radial-F7X5F2VU.js +0 -21
@@ -5,7 +5,7 @@ import {
5
5
  stripDefaultModifier,
6
6
  tagAttrKey,
7
7
  validateTagGroupNames
8
- } from "./chunk-FJUNPCYI.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-OTAL43EH.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-3Y2DRD7S.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-OTAL43EH.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-6BFZKBGD.js.map
510
+ //# sourceMappingURL=chunk-3YRPZ7ZZ.js.map
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-3HDBAXF5.js";
4
4
  import {
5
5
  renderNodeCard
6
- } from "./chunk-AHGF2YYA.js";
6
+ } from "./chunk-OTOHI4JO.js";
7
7
  import {
8
8
  CARD_RADIUS,
9
9
  COLLAPSE_BAR_HEIGHT,
@@ -25,10 +25,10 @@ import {
25
25
  } from "./chunk-YYVTBZZC.js";
26
26
  import {
27
27
  renderIntegratedLegend
28
- } from "./chunk-HEVYAHLW.js";
28
+ } from "./chunk-AUIM2NVH.js";
29
29
  import {
30
30
  getMaxLegendReservedHeight
31
- } from "./chunk-7UEMZREK.js";
31
+ } from "./chunk-YAA6IID3.js";
32
32
  import {
33
33
  TITLE_FONT_SIZE,
34
34
  TITLE_FONT_WEIGHT
@@ -43,10 +43,10 @@ import {
43
43
  LEGEND_EYE_SIZE,
44
44
  LEGEND_GROUP_GAP,
45
45
  LEGEND_HEIGHT
46
- } from "./chunk-HQCHYB5F.js";
46
+ } from "./chunk-QOOUC2J5.js";
47
47
  import {
48
48
  measureText
49
- } from "./chunk-5LWQH6QV.js";
49
+ } from "./chunk-WCT3NYCV.js";
50
50
  import {
51
51
  preprocessDescriptionLine
52
52
  } from "./chunk-IYULMRBE.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-FJUNPCYI.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-D5VILGN2.js");
404
- const { layoutSitemap } = await import("./layout-LD6XTLD6.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-WW32K72E.js.map
458
+ //# sourceMappingURL=chunk-44VCIPHF.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  buildMapProjection
3
- } from "./chunk-LE4MYMLI.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-TN35C5KM.js.map
54
+ //# sourceMappingURL=chunk-4AQRFDXL.js.map
@@ -113,6 +113,43 @@ var MAP_DX = {
113
113
  message: (p) => `"${p.name ?? ""}" is both a country and a US state \u2014 resolved as ${p.layer ?? ""} (${p.chosenId ?? ""}). Pin it with an ISO code (${p.stateId ?? ""} / ${p.countryId ?? ""}) or name + scope ("${p.name ?? ""} US" / "${p.name ?? ""} ${p.countryId ?? ""}").`,
114
114
  hint: "The name collides between a country and a US state \u2014 pin it with an ISO code or a `US` / `US-XX` scope.",
115
115
  example: "map\nGeorgia heat: 2"
116
+ },
117
+ CLOCK_TZ_INVALID: {
118
+ // Runtime severity: 'warning' (matches W_ prefix). A POI's valued
119
+ // `clock: <zone>` is neither a known IANA zone nor a fixed offset — the pin
120
+ // renders normally but gets no time card (BL-122).
121
+ code: "W_MAP_CLOCK_TZ_INVALID",
122
+ severity: "warning",
123
+ chartType: "map",
124
+ title: "Unrecognized time zone",
125
+ message: (p) => `\`clock: ${p.name ?? ""}\` is not a known IANA zone or offset \u2014 this pin renders without a time card. Use an IANA id (\`clock: Asia/Tokyo\`) or a fixed offset (\`clock: UTC+9\`).`,
126
+ hint: "Use an IANA zone id (`clock: Asia/Tokyo`) or a fixed offset (`clock: UTC+9`).",
127
+ example: "map\npoi Tokyo clock"
128
+ },
129
+ CLOCK_TZ_NEEDED: {
130
+ // Runtime severity: 'warning' (matches W_ prefix). A bare `clock` pin
131
+ // resolved to no IANA zone — a bare-coord pin (no gazetteer entry) or a rare
132
+ // city GeoNames didn't zone. Named cities auto-derive their zone; coords name
133
+ // it with a valued `clock: <zone>` (BL-122).
134
+ code: "W_MAP_CLOCK_TZ_NEEDED",
135
+ severity: "warning",
136
+ chartType: "map",
137
+ title: "Clock pin needs a time zone",
138
+ message: () => `This \`clock\` pin has no known time zone \u2014 a named city derives its zone automatically, but a bare-coordinate pin needs a valued \`clock: <zone>\` (e.g. \`clock: America/Denver\` or \`clock: UTC-7\`). Rendered without a time card.`,
139
+ hint: "Name the zone with `clock: <IANA/zone>` \u2014 coordinate pins can\u2019t derive one on their own.",
140
+ example: "map\npoi 39.74 -104.98 as Field clock: America/Denver"
141
+ },
142
+ CLOCK_TZ_OVERRIDE: {
143
+ // Runtime severity: 'warning' (matches W_ prefix). A named city's valued
144
+ // `clock: <zone>` contradicts the gazetteer's real zone for that city —
145
+ // usually a mistake. Honored, but flagged (BL-122).
146
+ code: "W_MAP_CLOCK_TZ_OVERRIDE",
147
+ severity: "warning",
148
+ chartType: "map",
149
+ title: "Time zone overrides the city",
150
+ message: (p) => `\`clock: ${p.name ?? ""}\` overrides this city's actual zone (${p.tz ?? ""}) \u2014 using your value. Use a bare \`clock\` to take the city's real zone.`,
151
+ hint: "A named city derives its own zone \u2014 use a bare `clock` unless you mean to override it.",
152
+ example: "map\npoi Denver clock"
116
153
  }
117
154
  };
118
155
  var MAP_DIAGNOSTICS = Object.values(MAP_DX);
@@ -121,4 +158,4 @@ export {
121
158
  MAP_DX,
122
159
  MAP_DIAGNOSTICS
123
160
  };
124
- //# sourceMappingURL=chunk-HHXOONLX.js.map
161
+ //# sourceMappingURL=chunk-4B5YISOR.js.map
@@ -10,7 +10,7 @@ import {
10
10
  splitNameAndMeta,
11
11
  tryParseSharedOption,
12
12
  warnUnknownMetaKeys
13
- } from "./chunk-OTAL43EH.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-PGEGPSCZ.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-FJUNPCYI.js";
12
+ } from "./chunk-HHKO6SKY.js";
13
13
  import {
14
14
  extractColor,
15
+ fillModeFromToken,
15
16
  measureIndent,
16
17
  parseFirstLine
17
- } from "./chunk-OTAL43EH.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-7L3R6I3U.js.map
341
+ //# sourceMappingURL=chunk-4UNQ6X24.js.map
@@ -18,12 +18,15 @@ import {
18
18
  import {
19
19
  CHAR_WIDTH_RATIO,
20
20
  measureText
21
- } from "./chunk-5LWQH6QV.js";
21
+ } from "./chunk-WCT3NYCV.js";
22
22
  import {
23
23
  contrastText,
24
24
  getSeriesColors,
25
25
  shapeFill
26
- } from "./chunk-P6T66CCZ.js";
26
+ } from "./chunk-WBM7ZNDI.js";
27
+ import {
28
+ fillModeFromOptions
29
+ } from "./chunk-BRENJ2BQ.js";
27
30
  import {
28
31
  resolveColor
29
32
  } from "./chunk-TLVIHFRO.js";
@@ -125,7 +128,7 @@ function renderPyramid(container, parsed, palette, isDark, onClickItem, exportDi
125
128
  ].map((p) => `${p[0]},${p[1]}`).join(" ");
126
129
  const solidColor = resolveSolid(layer, i);
127
130
  const fillColor = shapeFill(palette, solidColor, isDark, {
128
- solid: parsed.options["solid-fill"] === "on"
131
+ mode: fillModeFromOptions(parsed.options)
129
132
  });
130
133
  const layerG = diagramG.append("g").attr("class", "pyramid-layer").attr("data-line-number", layer.lineNumber);
131
134
  if (onClickItem) {
@@ -433,4 +436,4 @@ export {
433
436
  renderPyramid,
434
437
  renderPyramidForExport
435
438
  };
436
- //# sourceMappingURL=chunk-O7NUCTFU.js.map
439
+ //# sourceMappingURL=chunk-4YFKQ5WT.js.map