@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
@@ -7,7 +7,7 @@ import {
7
7
  tagAttrKey,
8
8
  validateTagGroupNames,
9
9
  validateTagValues
10
- } from "./chunk-467TVMQL.js";
10
+ } from "./chunk-HHKO6SKY.js";
11
11
  import {
12
12
  normalizeName
13
13
  } from "./chunk-NOTA6TEI.js";
@@ -20,7 +20,7 @@ import {
20
20
  splitNameAndMeta,
21
21
  warnUnknownMetaKeys,
22
22
  withTagAliases
23
- } from "./chunk-LV4BETUU.js";
23
+ } from "./chunk-BRENJ2BQ.js";
24
24
  import {
25
25
  formatDgmoError,
26
26
  makeDgmoError,
@@ -40,7 +40,9 @@ 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",
43
+ "fill-tint",
44
+ "fill-solid",
45
+ "fill-outline",
44
46
  "no-title"
45
47
  ]);
46
48
  function looksLikeOrg(content) {
@@ -351,4 +353,4 @@ export {
351
353
  looksLikeOrg,
352
354
  parseOrg
353
355
  };
354
- //# sourceMappingURL=chunk-RBHWPDBB.js.map
356
+ //# sourceMappingURL=chunk-NNS4E7CW.js.map
@@ -6,4 +6,4 @@ function isBlockNode(cell) {
6
6
  export {
7
7
  isBlockNode
8
8
  };
9
- //# sourceMappingURL=chunk-NNAAJVBU.js.map
9
+ //# sourceMappingURL=chunk-NR5HCAUD.js.map
@@ -15,7 +15,7 @@ import {
15
15
  } from "./chunk-WCT3NYCV.js";
16
16
  import {
17
17
  tagAttrKey
18
- } from "./chunk-467TVMQL.js";
18
+ } from "./chunk-HHKO6SKY.js";
19
19
 
20
20
  // src/c4/layout.ts
21
21
  import dagre from "@dagrejs/dagre";
@@ -1682,4 +1682,4 @@ export {
1682
1682
  layoutC4Components,
1683
1683
  layoutC4Deployment
1684
1684
  };
1685
- //# sourceMappingURL=chunk-NEQ6GJXB.js.map
1685
+ //# sourceMappingURL=chunk-ONU3U4GL.js.map
@@ -8,13 +8,14 @@ import {
8
8
  resolveActiveTagGroup,
9
9
  stripDefaultModifier,
10
10
  tagAttrKey
11
- } from "./chunk-467TVMQL.js";
11
+ } from "./chunk-HHKO6SKY.js";
12
12
  import {
13
13
  extractColor,
14
+ fillModeFromToken,
14
15
  measureIndent,
15
16
  parseFirstLine,
16
17
  splitNameAndMeta
17
- } from "./chunk-LV4BETUU.js";
18
+ } from "./chunk-BRENJ2BQ.js";
18
19
  import {
19
20
  makeDgmoError,
20
21
  makeFail
@@ -216,6 +217,12 @@ function parseBracket(content, palette) {
216
217
  result.noRounds = true;
217
218
  continue;
218
219
  }
220
+ const fm = fillModeFromToken(lower);
221
+ if (fm !== null) {
222
+ if (fm === "tint") delete result.fillMode;
223
+ else result.fillMode = fm;
224
+ continue;
225
+ }
219
226
  const accentM = trimmed.match(/^accent\s+(.+)$/i);
220
227
  if (accentM) {
221
228
  const { color } = extractColor(
@@ -376,4 +383,4 @@ function parseBracket(content, palette) {
376
383
  export {
377
384
  parseBracket
378
385
  };
379
- //# sourceMappingURL=chunk-XEQXCIBC.js.map
386
+ //# sourceMappingURL=chunk-PRI2OD4E.js.map
@@ -8,7 +8,7 @@ import {
8
8
  } from "./chunk-6KFWC4CO.js";
9
9
  import {
10
10
  getSeriesColors
11
- } from "./chunk-P6T66CCZ.js";
11
+ } from "./chunk-WBM7ZNDI.js";
12
12
 
13
13
  // src/utils/d3-helpers.ts
14
14
  import * as d3Selection from "d3-selection";
@@ -87,7 +87,7 @@ var EXPORT_WIDTH = 1200;
87
87
  var EXPORT_HEIGHT = 800;
88
88
  async function resolveExportPalette(theme, palette) {
89
89
  if (palette) return palette;
90
- const { getPalette } = await import("./palettes-PRJ2RI6D.js");
90
+ const { getPalette } = await import("./palettes-UDLZ2SA4.js");
91
91
  return theme === "dark" ? getPalette("nord").dark : getPalette("nord").light;
92
92
  }
93
93
  function createExportContainer(width, height) {
@@ -127,4 +127,4 @@ export {
127
127
  createExportContainer,
128
128
  finalizeSvgExport
129
129
  };
130
- //# sourceMappingURL=chunk-U6EQI3U6.js.map
130
+ //# sourceMappingURL=chunk-QBZYACOG.js.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  GANTT_BOOLEAN_SET,
3
3
  GANTT_OPTION_SET
4
- } from "./chunk-6H7O2OPM.js";
4
+ } from "./chunk-FQ7HTV52.js";
5
5
  import {
6
6
  parseDuration,
7
7
  parseOffset,
@@ -10,16 +10,16 @@ import {
10
10
  import {
11
11
  parseDateToken,
12
12
  toInternal
13
- } from "./chunk-RBDIYLA5.js";
13
+ } from "./chunk-DAOFNU6J.js";
14
14
  import {
15
15
  getSeriesColors
16
- } from "./chunk-P6T66CCZ.js";
16
+ } from "./chunk-WBM7ZNDI.js";
17
17
  import {
18
18
  matchTagBlockHeading,
19
19
  stripDefaultModifier,
20
20
  tagAttrKey,
21
21
  validateTagGroupNames
22
- } from "./chunk-467TVMQL.js";
22
+ } from "./chunk-HHKO6SKY.js";
23
23
  import {
24
24
  normalizeName
25
25
  } from "./chunk-NOTA6TEI.js";
@@ -32,7 +32,7 @@ import {
32
32
  splitNameAndMeta,
33
33
  warnUnknownMetaKeys,
34
34
  withTagAliases
35
- } from "./chunk-LV4BETUU.js";
35
+ } from "./chunk-BRENJ2BQ.js";
36
36
  import {
37
37
  formatDgmoError,
38
38
  makeDgmoError
@@ -152,7 +152,7 @@ function parseGantt(content, palette) {
152
152
  sprintNumber: null,
153
153
  sprintStart: null,
154
154
  sprintMode: null,
155
- solidFill: false,
155
+ fillMode: void 0,
156
156
  noTitle: false
157
157
  },
158
158
  diagnostics,
@@ -795,8 +795,14 @@ function parseGantt(content, palette) {
795
795
  case "today-marker":
796
796
  result.options.todayMarker = "on";
797
797
  break;
798
- case "solid-fill":
799
- result.options.solidFill = true;
798
+ case "fill-solid":
799
+ result.options.fillMode = "solid";
800
+ break;
801
+ case "fill-outline":
802
+ result.options.fillMode = "outline";
803
+ break;
804
+ case "fill-tint":
805
+ result.options.fillMode = void 0;
800
806
  break;
801
807
  case "no-title":
802
808
  result.options.noTitle = true;
@@ -1326,4 +1332,4 @@ export {
1326
1332
  GANTT_KNOWN_OPTIONS,
1327
1333
  GANTT_KNOWN_BOOLEANS
1328
1334
  };
1329
- //# sourceMappingURL=chunk-5PZT4DQG.js.map
1335
+ //# sourceMappingURL=chunk-QGATPIPX.js.map
@@ -23,7 +23,10 @@ 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";
@@ -102,10 +105,10 @@ function renderRing(container, parsed, palette, isDark, onClickItem, exportDims)
102
105
  }
103
106
  return seriesColors[i % seriesColors.length];
104
107
  };
105
- const solid = parsed.options["solid-fill"] === "on";
108
+ const fillMode = fillModeFromOptions(parsed.options);
106
109
  const layerColors = parsed.layers.map((l, i) => resolveLayerColor(l, i));
107
110
  const layerFills = layerColors.map(
108
- (c) => shapeFill(palette, c, isDark, { solid })
111
+ (c) => shapeFill(palette, c, isDark, { mode: fillMode })
109
112
  );
110
113
  const diagramG = svg.append("g").attr("class", "ring-body");
111
114
  const strokeColor = palette.text;
@@ -293,4 +296,4 @@ export {
293
296
  renderRing,
294
297
  renderRingForExport
295
298
  };
296
- //# sourceMappingURL=chunk-YGJZWZTY.js.map
299
+ //# sourceMappingURL=chunk-QHXCAEMX.js.map
@@ -8,7 +8,7 @@ import {
8
8
  stripDefaultModifier,
9
9
  validateTagGroupNames,
10
10
  validateTagValues
11
- } from "./chunk-467TVMQL.js";
11
+ } from "./chunk-HHKO6SKY.js";
12
12
  import {
13
13
  parseArrow,
14
14
  parseInArrowLabel
@@ -18,6 +18,7 @@ import {
18
18
  normalizeName
19
19
  } from "./chunk-NOTA6TEI.js";
20
20
  import {
21
+ FILL_FAMILY_TOKENS,
21
22
  OPTION_NOCOLON_RE,
22
23
  SEQUENCE_REGISTRY,
23
24
  extractColor,
@@ -26,7 +27,7 @@ import {
26
27
  splitNameAndMeta,
27
28
  warnUnknownMetaKeys,
28
29
  withTagAliases
29
- } from "./chunk-LV4BETUU.js";
30
+ } from "./chunk-BRENJ2BQ.js";
30
31
  import {
31
32
  NAME_DIAGNOSTIC_CODES,
32
33
  formatDgmoError,
@@ -38,7 +39,12 @@ import {
38
39
 
39
40
  // src/sequence/parser.ts
40
41
  var KNOWN_SEQ_OPTIONS = /* @__PURE__ */ new Set(["active-tag"]);
41
- var KNOWN_SEQ_BOOLEANS = /* @__PURE__ */ new Set(["solid-fill", "no-title"]);
42
+ var KNOWN_SEQ_BOOLEANS = /* @__PURE__ */ new Set([
43
+ "fill-tint",
44
+ "fill-solid",
45
+ "fill-outline",
46
+ "no-title"
47
+ ]);
42
48
  var NO_PREFIX_ONLY_BOOLEANS = /* @__PURE__ */ new Set(["activations"]);
43
49
  var VALID_PARTICIPANT_TYPES = /* @__PURE__ */ new Set([
44
50
  "database",
@@ -549,7 +555,7 @@ function parseSequenceDgmo(content, palette) {
549
555
  continue;
550
556
  }
551
557
  }
552
- if (KNOWN_SEQ_BOOLEANS.has(optLower) && (optLower === "solid-fill" || optLower === "no-title")) {
558
+ if (KNOWN_SEQ_BOOLEANS.has(optLower)) {
553
559
  if (contentStarted) {
554
560
  pushError(
555
561
  lineNumber,
@@ -557,6 +563,10 @@ function parseSequenceDgmo(content, palette) {
557
563
  );
558
564
  continue;
559
565
  }
566
+ if (FILL_FAMILY_TOKENS.has(optLower)) {
567
+ for (const t of FILL_FAMILY_TOKENS) delete result.options[t];
568
+ if (optLower === "fill-tint") continue;
569
+ }
560
570
  result.options[optLower] = "on";
561
571
  continue;
562
572
  }
@@ -1022,4 +1032,4 @@ export {
1022
1032
  parseSequenceDgmo,
1023
1033
  looksLikeSequence
1024
1034
  };
1025
- //# sourceMappingURL=chunk-RLFVAKEO.js.map
1035
+ //# sourceMappingURL=chunk-QJMKPUYK.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  SKETCH_DIAGNOSTIC_CODES
3
- } from "./chunk-XHVV4NVW.js";
3
+ } from "./chunk-RT7ACF77.js";
4
4
  import {
5
5
  makeDgmoError
6
6
  } from "./chunk-CXK4DZH3.js";
@@ -449,4 +449,4 @@ export {
449
449
  collapseSketch,
450
450
  layoutSketch
451
451
  };
452
- //# sourceMappingURL=chunk-Z6XJQ6KO.js.map
452
+ //# sourceMappingURL=chunk-QVENJMNX.js.map
@@ -19,7 +19,7 @@ import {
19
19
  injectDefaultTagMetadata,
20
20
  resolveTagColor,
21
21
  tagAttrKey
22
- } from "./chunk-467TVMQL.js";
22
+ } from "./chunk-HHKO6SKY.js";
23
23
 
24
24
  // src/org/layout.ts
25
25
  import { hierarchy, tree } from "d3-hierarchy";
@@ -810,4 +810,4 @@ function layoutOrg(parsed, hiddenCounts, activeTagGroup, hiddenAttributes, expan
810
810
  export {
811
811
  layoutOrg
812
812
  };
813
- //# sourceMappingURL=chunk-GROLTAWZ.js.map
813
+ //# sourceMappingURL=chunk-QZX5S6R3.js.map
@@ -1,13 +1,13 @@
1
1
  import {
2
2
  parseDateToken,
3
3
  toInternal
4
- } from "./chunk-RBDIYLA5.js";
4
+ } from "./chunk-DAOFNU6J.js";
5
5
  import {
6
6
  TIMELINE_REGISTRY,
7
7
  splitNameAndMeta,
8
8
  warnUnknownMetaKeys,
9
9
  withTagAliases
10
- } from "./chunk-LV4BETUU.js";
10
+ } from "./chunk-BRENJ2BQ.js";
11
11
  import {
12
12
  makeDgmoError
13
13
  } from "./chunk-CXK4DZH3.js";
@@ -314,4 +314,4 @@ export {
314
314
  parseTimelineDate,
315
315
  parseTimelineEventLine
316
316
  };
317
- //# sourceMappingURL=chunk-TMACGPW5.js.map
317
+ //# sourceMappingURL=chunk-R3YSD62R.js.map
@@ -6,10 +6,10 @@ import {
6
6
  tagAttrKey,
7
7
  validateTagGroupNames,
8
8
  validateTagValues
9
- } from "./chunk-467TVMQL.js";
9
+ } from "./chunk-HHKO6SKY.js";
10
10
  import {
11
11
  tryCollectNote
12
- } from "./chunk-WQLMU7VG.js";
12
+ } from "./chunk-ARGMQ3H4.js";
13
13
  import {
14
14
  resolveNotes
15
15
  } from "./chunk-FMDSF3OV.js";
@@ -32,7 +32,7 @@ import {
32
32
  tryParseSharedOption,
33
33
  warnUnknownMetaKeys,
34
34
  withTagAliases
35
- } from "./chunk-LV4BETUU.js";
35
+ } from "./chunk-BRENJ2BQ.js";
36
36
  import {
37
37
  resolveColorWithDiagnostic
38
38
  } from "./chunk-TLVIHFRO.js";
@@ -521,4 +521,4 @@ export {
521
521
  looksLikeERDiagram,
522
522
  extractSymbols
523
523
  };
524
- //# sourceMappingURL=chunk-332ZR4QU.js.map
524
+ //# sourceMappingURL=chunk-REJAIQ5S.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  tryCollectNote
3
- } from "./chunk-WQLMU7VG.js";
3
+ } from "./chunk-ARGMQ3H4.js";
4
4
  import {
5
5
  resolveNotes
6
6
  } from "./chunk-FMDSF3OV.js";
@@ -13,11 +13,12 @@ import {
13
13
  } from "./chunk-NOTA6TEI.js";
14
14
  import {
15
15
  ALL_CHART_TYPES,
16
+ FILL_FAMILY_TOKENS,
16
17
  OPTION_NOCOLON_RE,
17
18
  measureIndent,
18
19
  parseFirstLine,
19
20
  tryParseSharedOption
20
- } from "./chunk-LV4BETUU.js";
21
+ } from "./chunk-BRENJ2BQ.js";
21
22
  import {
22
23
  resolveColorWithDiagnostic
23
24
  } from "./chunk-TLVIHFRO.js";
@@ -261,8 +262,10 @@ function parseState(content, palette) {
261
262
  result.direction = "TB";
262
263
  continue;
263
264
  }
264
- if (/^solid-fill$/i.test(trimmed)) {
265
- options["solid-fill"] = "on";
265
+ if (FILL_FAMILY_TOKENS.has(trimmed.toLowerCase())) {
266
+ for (const t of FILL_FAMILY_TOKENS) delete options[t];
267
+ if (trimmed.toLowerCase() !== "fill-tint")
268
+ options[trimmed.toLowerCase()] = "on";
266
269
  continue;
267
270
  }
268
271
  if (/^no-color$/i.test(trimmed)) {
@@ -412,4 +415,4 @@ export {
412
415
  parseState,
413
416
  looksLikeState
414
417
  };
415
- //# sourceMappingURL=chunk-5F5ELR3V.js.map
418
+ //# sourceMappingURL=chunk-ROOE4R4Y.js.map
@@ -3,7 +3,8 @@ var SKETCH_DIAGNOSTIC_CODES = {
3
3
  NESTED_BOX: "E_SKETCH_NESTED_BOX",
4
4
  AMBIGUOUS_TARGET: "E_SKETCH_AMBIGUOUS_TARGET",
5
5
  UNKNOWN_SHAPE: "W_SKETCH_UNKNOWN_SHAPE",
6
- OVERLAP_RESOLVED: "W_SKETCH_OVERLAP_RESOLVED"
6
+ OVERLAP_RESOLVED: "W_SKETCH_OVERLAP_RESOLVED",
7
+ AT_OUT_OF_RANGE: "W_SKETCH_AT_OUT_OF_RANGE"
7
8
  };
8
9
  var SKETCH_DIAGNOSTICS = [
9
10
  {
@@ -41,6 +42,15 @@ var SKETCH_DIAGNOSTICS = [
41
42
  message: (p) => `Shape "${String(p.label ?? "?")}" overlapped another at its authored position \u2014 moved to the nearest free slot`,
42
43
  hint: "Keep shapes at least 2 half-slots apart on one axis, or omit at: to flow-place.",
43
44
  example: "sketch\nA at: 0 0\nB at: 0 0"
45
+ },
46
+ {
47
+ code: SKETCH_DIAGNOSTIC_CODES.AT_OUT_OF_RANGE,
48
+ severity: "warning",
49
+ chartType: "sketch",
50
+ title: "at: coordinate out of range",
51
+ message: (p) => `at: coordinate "${String(p.raw ?? "?")}" is out of range \u2014 half-slot coords must be whole numbers within \xB1${String(p.max ?? "?")}; shape will flow-place`,
52
+ hint: "Use small integer half-slot coordinates near the origin, or omit at: to flow-place.",
53
+ example: "sketch\nA at: 2 0"
44
54
  }
45
55
  ];
46
56
 
@@ -48,4 +58,4 @@ export {
48
58
  SKETCH_DIAGNOSTIC_CODES,
49
59
  SKETCH_DIAGNOSTICS
50
60
  };
51
- //# sourceMappingURL=chunk-XHVV4NVW.js.map
61
+ //# sourceMappingURL=chunk-RT7ACF77.js.map
@@ -5,14 +5,14 @@ import {
5
5
  matchTagBlockHeading,
6
6
  stripDefaultModifier,
7
7
  validateTagGroupNames
8
- } from "./chunk-467TVMQL.js";
8
+ } from "./chunk-HHKO6SKY.js";
9
9
  import {
10
10
  OPTION_NOCOLON_RE,
11
11
  extractColor,
12
12
  measureIndent,
13
13
  parseFirstLine,
14
14
  tryParseSharedOption
15
- } from "./chunk-LV4BETUU.js";
15
+ } from "./chunk-BRENJ2BQ.js";
16
16
  import {
17
17
  formatDgmoError,
18
18
  makeDgmoError
@@ -729,4 +729,4 @@ export {
729
729
  resetWireframeIds,
730
730
  parseWireframe
731
731
  };
732
- //# sourceMappingURL=chunk-GGHRAITI.js.map
732
+ //# sourceMappingURL=chunk-SMRFPVLQ.js.map
@@ -19,7 +19,7 @@ import {
19
19
  injectDefaultTagMetadata,
20
20
  resolveTagColor,
21
21
  tagAttrKey
22
- } from "./chunk-467TVMQL.js";
22
+ } from "./chunk-HHKO6SKY.js";
23
23
 
24
24
  // src/sitemap/layout.ts
25
25
  import dagre from "@dagrejs/dagre";
@@ -617,4 +617,4 @@ function layoutSitemap(parsed, hiddenCounts, activeTagGroup, hiddenAttributes, e
617
617
  export {
618
618
  layoutSitemap
619
619
  };
620
- //# sourceMappingURL=chunk-JSSX2SX4.js.map
620
+ //# sourceMappingURL=chunk-SWSIKFEB.js.map
@@ -4,7 +4,7 @@ import {
4
4
  renderNoteBadge,
5
5
  renderNoteBox,
6
6
  renderNoteConnector
7
- } from "./chunk-JEUJOX5X.js";
7
+ } from "./chunk-J7TLCB2Q.js";
8
8
  import {
9
9
  renderInlineText
10
10
  } from "./chunk-3HDBAXF5.js";
@@ -20,7 +20,7 @@ import {
20
20
  } from "./chunk-YYVTBZZC.js";
21
21
  import {
22
22
  renderIntegratedLegend
23
- } from "./chunk-OU7HLO7I.js";
23
+ } from "./chunk-AUIM2NVH.js";
24
24
  import {
25
25
  getMaxLegendReservedHeight
26
26
  } from "./chunk-YAA6IID3.js";
@@ -44,10 +44,13 @@ import {
44
44
  shapeFill,
45
45
  themeBaseBg,
46
46
  valueRampColor
47
- } from "./chunk-P6T66CCZ.js";
47
+ } from "./chunk-WBM7ZNDI.js";
48
48
  import {
49
49
  resolveTagColor
50
- } from "./chunk-467TVMQL.js";
50
+ } from "./chunk-HHKO6SKY.js";
51
+ import {
52
+ fillModeFromOptions
53
+ } from "./chunk-BRENJ2BQ.js";
51
54
  import {
52
55
  resolveColor
53
56
  } from "./chunk-TLVIHFRO.js";
@@ -137,7 +140,7 @@ function fitLabelToHeader(label, nodeWidth, maxLines) {
137
140
  const truncated = truncateText(label, MIN_NODE_FONT_SIZE, maxTextWidth);
138
141
  return { lines: [truncated], fontSize: MIN_NODE_FONT_SIZE };
139
142
  }
140
- function nodeColors(node, tagGroups, activeGroupName, palette, isDark, value, solid) {
143
+ function nodeColors(node, tagGroups, activeGroupName, palette, isDark, value, fillMode) {
141
144
  const neutralFill = mix(palette.bg, palette.text, isDark ? 90 : 95);
142
145
  if (value.active) {
143
146
  if (node.value === void 0) {
@@ -149,9 +152,7 @@ function nodeColors(node, tagGroups, activeGroupName, palette, isDark, value, so
149
152
  return { fill: neutralFill, stroke: value.hue, text: text3 };
150
153
  }
151
154
  const rampColor = value.fillForValue(node.value);
152
- const fill2 = shapeFill(palette, rampColor, isDark, {
153
- ...solid !== void 0 && { solid }
154
- });
155
+ const fill2 = shapeFill(palette, rampColor, isDark, { mode: fillMode });
155
156
  const stroke2 = value.twoColor ? rampColor : value.hue;
156
157
  const text2 = contrastText(
157
158
  fill2,
@@ -166,9 +167,7 @@ function nodeColors(node, tagGroups, activeGroupName, palette, isDark, value, so
166
167
  activeGroupName
167
168
  );
168
169
  if (tagColor) {
169
- const fill2 = shapeFill(palette, tagColor, isDark, {
170
- ...solid !== void 0 && { solid }
171
- });
170
+ const fill2 = shapeFill(palette, tagColor, isDark, { mode: fillMode });
172
171
  const stroke2 = tagColor;
173
172
  const text2 = contrastText(
174
173
  fill2,
@@ -480,7 +479,7 @@ function renderBoxesAndLines(container, parsed, layout, palette, isDark, options
480
479
  }
481
480
  if (isHidden) continue;
482
481
  }
483
- const solid = parsed.options["solid-fill"] === "on";
482
+ const fillMode = fillModeFromOptions(parsed.options);
484
483
  const colors = nodeColors(
485
484
  node,
486
485
  parsed.tagGroups,
@@ -493,9 +492,9 @@ function renderBoxesAndLines(container, parsed, layout, palette, isDark, options
493
492
  twoColor: rampLow !== void 0,
494
493
  fillForValue
495
494
  },
496
- solid
495
+ fillMode
497
496
  );
498
- const dividerStroke = solid ? colors.text : colors.stroke;
497
+ const dividerStroke = fillMode === "solid" ? colors.text : colors.stroke;
499
498
  const nodeG = diagramG.append("g").attr("class", "bl-node").attr("transform", `translate(${ln.x},${ln.y})`).attr("data-line-number", node.lineNumber).attr("data-node-id", node.label).style("cursor", onClickItem ? "pointer" : "default").style("--bl-node-stroke", colors.stroke);
500
499
  for (const [key, val] of Object.entries(node.metadata)) {
501
500
  nodeG.attr(`data-tag-${key.toLowerCase()}`, val.toLowerCase());
@@ -758,4 +757,4 @@ export {
758
757
  renderBoxesAndLines,
759
758
  renderBoxesAndLinesForExport
760
759
  };
761
- //# sourceMappingURL=chunk-DY7XLRHK.js.map
760
+ //# sourceMappingURL=chunk-T4A4TSTJ.js.map
@@ -13,11 +13,14 @@ import {
13
13
  contrastText,
14
14
  mix,
15
15
  themeBaseBg
16
- } from "./chunk-P6T66CCZ.js";
16
+ } from "./chunk-WBM7ZNDI.js";
17
17
  import {
18
18
  resolveTagColor,
19
19
  tagAttrKey
20
- } from "./chunk-467TVMQL.js";
20
+ } from "./chunk-HHKO6SKY.js";
21
+ import {
22
+ fillModeFromOptions
23
+ } from "./chunk-BRENJ2BQ.js";
21
24
  import {
22
25
  CATEGORICAL_COLOR_ORDER,
23
26
  resolveColor
@@ -124,7 +127,7 @@ function renderSwimlaneForExport(container, parsed, layout, palette, isDark, opt
124
127
  laneColorById.set(lane.id, hex);
125
128
  });
126
129
  const isLR = parsed.direction === "LR";
127
- const solid = parsed.options["solid-fill"] === "on";
130
+ const fillMode = fillModeFromOptions(parsed.options);
128
131
  const laneFill = (hex) => mix(hex, baseBg, 9);
129
132
  const haloAt = (cross) => {
130
133
  for (const band of layout.lanes) {
@@ -173,28 +176,35 @@ function renderSwimlaneForExport(container, parsed, layout, palette, isDark, opt
173
176
  phaseG.append("text").attr("x", isLR ? band.x + band.width / 2 : band.headerSize / 2).attr("y", isLR ? band.headerSize / 2 : band.y + band.height / 2).attr("text-anchor", "middle").attr("dominant-baseline", "middle").attr("font-size", PHASE_LABEL_FONT).attr("font-weight", "700").attr("letter-spacing", "0.06em").attr("fill", palette.textMuted).attr("data-line-number", String(band.lineNumber)).text(band.label);
174
177
  });
175
178
  const activeTag = opts.activeTagGroup ?? null;
179
+ const outline = fillMode === "outline";
176
180
  const nodeFill = (n) => {
177
181
  if (activeTag) {
178
182
  const key = tagAttrKey(activeTag);
179
183
  if (n.tags[key]) {
180
184
  const c = resolveTagColor(n.tags, [...parsed.tagGroups], activeTag);
181
185
  if (c && c !== "#999999")
182
- return { fill: solid ? c : mix(c, baseBg, 22), stroke: c };
186
+ return {
187
+ fill: fillMode === "solid" ? c : outline ? baseBg : mix(c, baseBg, 22),
188
+ stroke: c
189
+ };
183
190
  }
184
191
  }
185
192
  if (n.shape === "terminal") {
186
193
  if (n.event === "error")
187
194
  return {
188
- fill: solid ? ev.error : mix(ev.error, baseBg, 22),
195
+ fill: fillMode === "solid" ? ev.error : outline ? baseBg : mix(ev.error, baseBg, 22),
189
196
  stroke: ev.error
190
197
  };
191
198
  if (n.event === "success")
192
199
  return {
193
- fill: solid ? ev.success : mix(ev.success, baseBg, 22),
200
+ fill: fillMode === "solid" ? ev.success : outline ? baseBg : mix(ev.success, baseBg, 22),
194
201
  stroke: ev.success
195
202
  };
196
203
  if (n.event === "terminate")
197
- return { fill: mix(palette.text, baseBg, 30), stroke: palette.text };
204
+ return {
205
+ fill: outline ? baseBg : mix(palette.text, baseBg, 30),
206
+ stroke: palette.text
207
+ };
198
208
  return { fill: palette.bg, stroke: palette.textMuted };
199
209
  }
200
210
  if (n.shape === "exclusive" || n.shape === "parallel") {
@@ -205,8 +215,8 @@ function renderSwimlaneForExport(container, parsed, layout, palette, isDark, opt
205
215
  }
206
216
  const hex = laneColorById.get(n.lane) ?? palette.border;
207
217
  return {
208
- fill: solid ? hex : mix(hex, baseBg, 20),
209
- stroke: mix(hex, palette.text, 40)
218
+ fill: fillMode === "solid" ? hex : outline ? baseBg : mix(hex, baseBg, 20),
219
+ stroke: outline ? hex : mix(hex, palette.text, 40)
210
220
  };
211
221
  };
212
222
  const nodeById = new Map(layout.nodes.map((n) => [n.id, n]));
@@ -391,4 +401,4 @@ function drawCenteredLabel(g, label, cx, cy, fill, fontSize, tight = false, halo
391
401
  export {
392
402
  renderSwimlaneForExport
393
403
  };
394
- //# sourceMappingURL=chunk-VB4UJ3H2.js.map
404
+ //# sourceMappingURL=chunk-TJVLKNGR.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  tryCollectNote
3
- } from "./chunk-WQLMU7VG.js";
3
+ } from "./chunk-ARGMQ3H4.js";
4
4
  import {
5
5
  resolveNotes
6
6
  } from "./chunk-FMDSF3OV.js";
@@ -16,7 +16,7 @@ import {
16
16
  measureIndent,
17
17
  parseFirstLine,
18
18
  tryParseSharedOption
19
- } from "./chunk-LV4BETUU.js";
19
+ } from "./chunk-BRENJ2BQ.js";
20
20
  import {
21
21
  resolveColorWithDiagnostic
22
22
  } from "./chunk-TLVIHFRO.js";
@@ -445,4 +445,4 @@ export {
445
445
  looksLikeClassDiagram,
446
446
  extractSymbols
447
447
  };
448
- //# sourceMappingURL=chunk-FC5I2KXV.js.map
448
+ //# sourceMappingURL=chunk-TPFKKXCB.js.map