dominds 1.12.2 → 1.13.2

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 (174) hide show
  1. package/dist/llm/client.d.ts +1 -0
  2. package/dist/llm/defaults.yaml +1 -0
  3. package/dist/llm/gen/anthropic.d.ts +2 -1
  4. package/dist/llm/gen/anthropic.js +4 -0
  5. package/dist/llm/gen/codex.d.ts +2 -1
  6. package/dist/llm/gen/codex.js +4 -0
  7. package/dist/llm/gen/failure-classifier.d.ts +3 -0
  8. package/dist/llm/gen/failure-classifier.js +156 -0
  9. package/dist/llm/gen/openai-compatible.d.ts +2 -1
  10. package/dist/llm/gen/openai-compatible.js +4 -0
  11. package/dist/llm/gen/openai.d.ts +2 -1
  12. package/dist/llm/gen/openai.js +4 -0
  13. package/dist/llm/gen.d.ts +10 -0
  14. package/dist/llm/kernel-driver/drive.js +22 -6
  15. package/dist/llm/kernel-driver/flow.js +15 -20
  16. package/dist/llm/kernel-driver/reply-guidance.d.ts +7 -1
  17. package/dist/llm/kernel-driver/reply-guidance.js +30 -4
  18. package/dist/llm/kernel-driver/runtime.d.ts +3 -0
  19. package/dist/llm/kernel-driver/runtime.js +103 -30
  20. package/dist/persistence.js +31 -6
  21. package/dist/runtime/inter-dialog-format.js +46 -16
  22. package/dist/runtime/reply-prompt-copy.d.ts +12 -2
  23. package/dist/runtime/reply-prompt-copy.js +74 -16
  24. package/dist/runtime/tellask-labels.d.ts +8 -0
  25. package/dist/runtime/tellask-labels.js +47 -0
  26. package/dist/shared/utils/fbr.js +8 -12
  27. package/dist/shared/utils/inter-dialog-format.js +4 -6
  28. package/dist/tools/pending-tellask-reminder.js +3 -19
  29. package/package.json +3 -3
  30. package/webapp/dist/assets/{_basePickBy-B1lGEusm.js → _basePickBy-CBOtd63g.js} +3 -3
  31. package/webapp/dist/assets/_basePickBy-CBOtd63g.js.map +1 -0
  32. package/webapp/dist/assets/{_baseUniq-SGAsMSaE.js → _baseUniq-mfoKz4Wm.js} +2 -2
  33. package/webapp/dist/assets/_baseUniq-mfoKz4Wm.js.map +1 -0
  34. package/webapp/dist/assets/{arc-B2joU0eL.js → arc-Dq0WZLyu.js} +2 -2
  35. package/webapp/dist/assets/arc-Dq0WZLyu.js.map +1 -0
  36. package/webapp/dist/assets/{architectureDiagram-2XIMDMQ5-CsuG-Xa3.js → architectureDiagram-VXUJARFQ-CNmygmp3.js} +8 -26
  37. package/webapp/dist/assets/architectureDiagram-VXUJARFQ-CNmygmp3.js.map +1 -0
  38. package/webapp/dist/assets/{blockDiagram-WCTKOSBZ-D8_SVEGn.js → blockDiagram-VD42YOAC-DvE0lybt.js} +170 -187
  39. package/webapp/dist/assets/blockDiagram-VD42YOAC-DvE0lybt.js.map +1 -0
  40. package/webapp/dist/assets/{c4Diagram-IC4MRINW-D_lhLw36.js → c4Diagram-YG6GDRKO-CR7zJ2_u.js} +4 -4
  41. package/webapp/dist/assets/c4Diagram-YG6GDRKO-CR7zJ2_u.js.map +1 -0
  42. package/webapp/dist/assets/{channel-BI76pqQS.js → channel-DrTrnYx4.js} +2 -2
  43. package/webapp/dist/assets/channel-DrTrnYx4.js.map +1 -0
  44. package/webapp/dist/assets/{chunk-4BX2VUAB-BVI27QNV.js → chunk-4BX2VUAB-CVuJEIeN.js} +2 -2
  45. package/webapp/dist/assets/chunk-4BX2VUAB-CVuJEIeN.js.map +1 -0
  46. package/webapp/dist/assets/{chunk-55IACEB6-D2ECkhpq.js → chunk-55IACEB6-BxUoXApB.js} +2 -2
  47. package/webapp/dist/assets/chunk-55IACEB6-BxUoXApB.js.map +1 -0
  48. package/webapp/dist/assets/{chunk-WL4C6EOR-Cd-rWL8V.js → chunk-B4BG7PRW-DpMa3-9L.js} +121 -171
  49. package/webapp/dist/assets/chunk-B4BG7PRW-DpMa3-9L.js.map +1 -0
  50. package/webapp/dist/assets/{chunk-NQ4KR5QH-CZmmNdX5.js → chunk-DI55MBZ5-SAhxUTqQ.js} +7 -9
  51. package/webapp/dist/assets/chunk-DI55MBZ5-SAhxUTqQ.js.map +1 -0
  52. package/webapp/dist/assets/{chunk-FMBD7UC4-BAtzNqV5.js → chunk-FMBD7UC4-TX-LVAaV.js} +2 -2
  53. package/webapp/dist/assets/chunk-FMBD7UC4-TX-LVAaV.js.map +1 -0
  54. package/webapp/dist/assets/{chunk-KX2RTZJC-Dt3XFfSl.js → chunk-QN33PNHL-D1uiKlOO.js} +2 -2
  55. package/webapp/dist/assets/chunk-QN33PNHL-D1uiKlOO.js.map +1 -0
  56. package/webapp/dist/assets/{chunk-QZHKN3VN-BI_lqvsU.js → chunk-QZHKN3VN-BxuV0Oba.js} +2 -2
  57. package/webapp/dist/assets/chunk-QZHKN3VN-BxuV0Oba.js.map +1 -0
  58. package/webapp/dist/assets/{chunk-JSJVCQXG-BYyIDBzB.js → chunk-TZMSLE5B-Cw689yRl.js} +6 -14
  59. package/webapp/dist/assets/chunk-TZMSLE5B-Cw689yRl.js.map +1 -0
  60. package/webapp/dist/assets/{classDiagram-VBA2DB6C-CGVpNFjf.js → classDiagram-2ON5EDUG-BTTGianr.js} +6 -7
  61. package/webapp/dist/assets/classDiagram-2ON5EDUG-BTTGianr.js.map +1 -0
  62. package/webapp/dist/assets/{classDiagram-v2-RAHNMMFH-CGVpNFjf.js → classDiagram-v2-WZHVMYZB-BTTGianr.js} +6 -7
  63. package/webapp/dist/assets/classDiagram-v2-WZHVMYZB-BTTGianr.js.map +1 -0
  64. package/webapp/dist/assets/{clone-BcAwA2lT.js → clone-Dk8cAI3I.js} +2 -2
  65. package/webapp/dist/assets/clone-Dk8cAI3I.js.map +1 -0
  66. package/webapp/dist/assets/{cose-bilkent-S5V4N54A-CfkPOIie.js → cose-bilkent-S5V4N54A-BjJnzB2N.js} +2 -2
  67. package/webapp/dist/assets/cose-bilkent-S5V4N54A-BjJnzB2N.js.map +1 -0
  68. package/webapp/dist/assets/cytoscape.esm-Bm8DJGmZ.js.map +1 -1
  69. package/webapp/dist/assets/{dagre-KLK3FWXG-ETpwT3pg.js → dagre-6UL2VRFP-VF-xGhAf.js} +7 -7
  70. package/webapp/dist/assets/dagre-6UL2VRFP-VF-xGhAf.js.map +1 -0
  71. package/webapp/dist/assets/defaultLocale-B2RvLBDe.js.map +1 -1
  72. package/webapp/dist/assets/{diagram-E7M64L7V-CAkt3_Wu.js → diagram-PSM6KHXK-Ba5U0oRY.js} +10 -10
  73. package/webapp/dist/assets/diagram-PSM6KHXK-Ba5U0oRY.js.map +1 -0
  74. package/webapp/dist/assets/{diagram-IFDJBPK2-BUoOrHGY.js → diagram-QEK2KX5R-DoYCnEw_.js} +8 -9
  75. package/webapp/dist/assets/diagram-QEK2KX5R-DoYCnEw_.js.map +1 -0
  76. package/webapp/dist/assets/{diagram-P4PSJMXO-CITRT5KI.js → diagram-S2PKOQOG-CkK4SRyE.js} +8 -8
  77. package/webapp/dist/assets/diagram-S2PKOQOG-CkK4SRyE.js.map +1 -0
  78. package/webapp/dist/assets/{erDiagram-INFDFZHY-Cjpy0ose.js → erDiagram-Q2GNP2WA-DkI5eYww.js} +75 -96
  79. package/webapp/dist/assets/erDiagram-Q2GNP2WA-DkI5eYww.js.map +1 -0
  80. package/webapp/dist/assets/{flowDiagram-PKNHOUZH-CBmrK8ST.js → flowDiagram-NV44I4VS-wOdPUQ7Y.js} +81 -98
  81. package/webapp/dist/assets/flowDiagram-NV44I4VS-wOdPUQ7Y.js.map +1 -0
  82. package/webapp/dist/assets/{ganttDiagram-A5KZAMGK-CLoJRKb7.js → ganttDiagram-JELNMOA3-BtRWgkUH.js} +3 -28
  83. package/webapp/dist/assets/ganttDiagram-JELNMOA3-BtRWgkUH.js.map +1 -0
  84. package/webapp/dist/assets/{gitGraphDiagram-K3NZZRJ6-DcAa_Q3i.js → gitGraphDiagram-V2S2FVAM-Bsz7u1vi.js} +46 -38
  85. package/webapp/dist/assets/gitGraphDiagram-V2S2FVAM-Bsz7u1vi.js.map +1 -0
  86. package/webapp/dist/assets/graph-DAMkuTbn.js +425 -0
  87. package/webapp/dist/assets/graph-DAMkuTbn.js.map +1 -0
  88. package/webapp/dist/assets/{index-B219Q97D.js → index-rYmIohM_.js} +1072 -1025
  89. package/webapp/dist/assets/{index-B219Q97D.js.map → index-rYmIohM_.js.map} +1 -1
  90. package/webapp/dist/assets/{index-YaxF76or.css → index-xvYYeHuy.css} +1 -1
  91. package/webapp/dist/assets/{infoDiagram-LFFYTUFH-CXY1BDG-.js → infoDiagram-HS3SLOUP-BMaxCvH5.js} +7 -7
  92. package/webapp/dist/assets/infoDiagram-HS3SLOUP-BMaxCvH5.js.map +1 -0
  93. package/webapp/dist/assets/init-ZxktEp_H.js.map +1 -1
  94. package/webapp/dist/assets/{journeyDiagram-4ABVD52K-jFEOb3_9.js → journeyDiagram-XKPGCS4Q-ejyerzmG.js} +5 -5
  95. package/webapp/dist/assets/journeyDiagram-XKPGCS4Q-ejyerzmG.js.map +1 -0
  96. package/webapp/dist/assets/{kanban-definition-K7BYSVSG-g9DIRWk3.js → kanban-definition-3W4ZIXB7-CYj35TEs.js} +3 -5
  97. package/webapp/dist/assets/kanban-definition-3W4ZIXB7-CYj35TEs.js.map +1 -0
  98. package/webapp/dist/assets/{layout-BvoIJLam.js → layout-7Ql4zmuL.js} +5 -5
  99. package/webapp/dist/assets/layout-7Ql4zmuL.js.map +1 -0
  100. package/webapp/dist/assets/{linear-WhxKIgP6.js → linear-CVmgVPuZ.js} +2 -2
  101. package/webapp/dist/assets/linear-CVmgVPuZ.js.map +1 -0
  102. package/webapp/dist/assets/{mindmap-definition-YRQLILUH-BXxTVKab.js → mindmap-definition-VGOIOE7T-DOpxjGVo.js} +5 -7
  103. package/webapp/dist/assets/mindmap-definition-VGOIOE7T-DOpxjGVo.js.map +1 -0
  104. package/webapp/dist/assets/ordinal-CxptdPJm.js.map +1 -1
  105. package/webapp/dist/assets/{pieDiagram-SKSYHLDU-BVfKuFkc.js → pieDiagram-ADFJNKIX-CLQjpmAG.js} +8 -8
  106. package/webapp/dist/assets/pieDiagram-ADFJNKIX-CLQjpmAG.js.map +1 -0
  107. package/webapp/dist/assets/{quadrantDiagram-337W2JSQ-DjOan1Ul.js → quadrantDiagram-AYHSOK5B-ClD_bz7z.js} +3 -3
  108. package/webapp/dist/assets/quadrantDiagram-AYHSOK5B-ClD_bz7z.js.map +1 -0
  109. package/webapp/dist/assets/{requirementDiagram-Z7DCOOCP-CdkkhNJu.js → requirementDiagram-UZGBJVZJ-DOpb-TWH.js} +6 -16
  110. package/webapp/dist/assets/requirementDiagram-UZGBJVZJ-DOpb-TWH.js.map +1 -0
  111. package/webapp/dist/assets/{sankeyDiagram-WA2Y5GQK-Cc7UCE1M.js → sankeyDiagram-TZEHDZUN-D8Hsj3yx.js} +2 -2
  112. package/webapp/dist/assets/sankeyDiagram-TZEHDZUN-D8Hsj3yx.js.map +1 -0
  113. package/webapp/dist/assets/{sequenceDiagram-2WXFIKYE-CAf-TzzV.js → sequenceDiagram-WL72ISMW-CFMNjBER.js} +201 -601
  114. package/webapp/dist/assets/sequenceDiagram-WL72ISMW-CFMNjBER.js.map +1 -0
  115. package/webapp/dist/assets/{stateDiagram-RAJIS63D-CjQh2yGU.js → stateDiagram-FKZM4ZOC-BQeDlw0P.js} +9 -9
  116. package/webapp/dist/assets/stateDiagram-FKZM4ZOC-BQeDlw0P.js.map +1 -0
  117. package/webapp/dist/assets/{stateDiagram-v2-FVOUBMTO-BINESHF-.js → stateDiagram-v2-4FDKWEC3-DscX61Rs.js} +5 -5
  118. package/webapp/dist/assets/stateDiagram-v2-4FDKWEC3-DscX61Rs.js.map +1 -0
  119. package/webapp/dist/assets/{timeline-definition-YZTLITO2-FCh1aV2p.js → timeline-definition-IT6M3QCI-BcXPSTiw.js} +3 -3
  120. package/webapp/dist/assets/timeline-definition-IT6M3QCI-BcXPSTiw.js.map +1 -0
  121. package/webapp/dist/assets/{treemap-KZPCXAKY-J-UTxKUf.js → treemap-GDKQZRPO-BBr4UV0Z.js} +24 -37
  122. package/webapp/dist/assets/treemap-GDKQZRPO-BBr4UV0Z.js.map +1 -0
  123. package/webapp/dist/assets/{xychartDiagram-JWTSCODW-KYLvRsLH.js → xychartDiagram-PRI3JC2R-CS5RAtQE.js} +4 -4
  124. package/webapp/dist/assets/xychartDiagram-PRI3JC2R-CS5RAtQE.js.map +1 -0
  125. package/webapp/dist/index.html +2 -2
  126. package/webapp/dist/assets/_basePickBy-B1lGEusm.js.map +0 -1
  127. package/webapp/dist/assets/_baseUniq-SGAsMSaE.js.map +0 -1
  128. package/webapp/dist/assets/arc-B2joU0eL.js.map +0 -1
  129. package/webapp/dist/assets/architectureDiagram-2XIMDMQ5-CsuG-Xa3.js.map +0 -1
  130. package/webapp/dist/assets/blockDiagram-WCTKOSBZ-D8_SVEGn.js.map +0 -1
  131. package/webapp/dist/assets/c4Diagram-IC4MRINW-D_lhLw36.js.map +0 -1
  132. package/webapp/dist/assets/channel-BI76pqQS.js.map +0 -1
  133. package/webapp/dist/assets/chunk-4BX2VUAB-BVI27QNV.js.map +0 -1
  134. package/webapp/dist/assets/chunk-55IACEB6-D2ECkhpq.js.map +0 -1
  135. package/webapp/dist/assets/chunk-FMBD7UC4-BAtzNqV5.js.map +0 -1
  136. package/webapp/dist/assets/chunk-JSJVCQXG-BYyIDBzB.js.map +0 -1
  137. package/webapp/dist/assets/chunk-KX2RTZJC-Dt3XFfSl.js.map +0 -1
  138. package/webapp/dist/assets/chunk-NQ4KR5QH-CZmmNdX5.js.map +0 -1
  139. package/webapp/dist/assets/chunk-QZHKN3VN-BI_lqvsU.js.map +0 -1
  140. package/webapp/dist/assets/chunk-WL4C6EOR-Cd-rWL8V.js.map +0 -1
  141. package/webapp/dist/assets/classDiagram-VBA2DB6C-CGVpNFjf.js.map +0 -1
  142. package/webapp/dist/assets/classDiagram-v2-RAHNMMFH-CGVpNFjf.js.map +0 -1
  143. package/webapp/dist/assets/clone-BcAwA2lT.js.map +0 -1
  144. package/webapp/dist/assets/cose-bilkent-S5V4N54A-CfkPOIie.js.map +0 -1
  145. package/webapp/dist/assets/dagre-KLK3FWXG-ETpwT3pg.js.map +0 -1
  146. package/webapp/dist/assets/diagram-E7M64L7V-CAkt3_Wu.js.map +0 -1
  147. package/webapp/dist/assets/diagram-IFDJBPK2-BUoOrHGY.js.map +0 -1
  148. package/webapp/dist/assets/diagram-P4PSJMXO-CITRT5KI.js.map +0 -1
  149. package/webapp/dist/assets/erDiagram-INFDFZHY-Cjpy0ose.js.map +0 -1
  150. package/webapp/dist/assets/flowDiagram-PKNHOUZH-CBmrK8ST.js.map +0 -1
  151. package/webapp/dist/assets/ganttDiagram-A5KZAMGK-CLoJRKb7.js.map +0 -1
  152. package/webapp/dist/assets/gitGraphDiagram-K3NZZRJ6-DcAa_Q3i.js.map +0 -1
  153. package/webapp/dist/assets/graph-CyYArI_M.js +0 -782
  154. package/webapp/dist/assets/graph-CyYArI_M.js.map +0 -1
  155. package/webapp/dist/assets/infoDiagram-LFFYTUFH-CXY1BDG-.js.map +0 -1
  156. package/webapp/dist/assets/ishikawaDiagram-PHBUUO56-CCgHez0F.js +0 -966
  157. package/webapp/dist/assets/ishikawaDiagram-PHBUUO56-CCgHez0F.js.map +0 -1
  158. package/webapp/dist/assets/journeyDiagram-4ABVD52K-jFEOb3_9.js.map +0 -1
  159. package/webapp/dist/assets/kanban-definition-K7BYSVSG-g9DIRWk3.js.map +0 -1
  160. package/webapp/dist/assets/layout-BvoIJLam.js.map +0 -1
  161. package/webapp/dist/assets/linear-WhxKIgP6.js.map +0 -1
  162. package/webapp/dist/assets/mindmap-definition-YRQLILUH-BXxTVKab.js.map +0 -1
  163. package/webapp/dist/assets/pieDiagram-SKSYHLDU-BVfKuFkc.js.map +0 -1
  164. package/webapp/dist/assets/quadrantDiagram-337W2JSQ-DjOan1Ul.js.map +0 -1
  165. package/webapp/dist/assets/requirementDiagram-Z7DCOOCP-CdkkhNJu.js.map +0 -1
  166. package/webapp/dist/assets/sankeyDiagram-WA2Y5GQK-Cc7UCE1M.js.map +0 -1
  167. package/webapp/dist/assets/sequenceDiagram-2WXFIKYE-CAf-TzzV.js.map +0 -1
  168. package/webapp/dist/assets/stateDiagram-RAJIS63D-CjQh2yGU.js.map +0 -1
  169. package/webapp/dist/assets/stateDiagram-v2-FVOUBMTO-BINESHF-.js.map +0 -1
  170. package/webapp/dist/assets/timeline-definition-YZTLITO2-FCh1aV2p.js.map +0 -1
  171. package/webapp/dist/assets/treemap-KZPCXAKY-J-UTxKUf.js.map +0 -1
  172. package/webapp/dist/assets/vennDiagram-LZ73GAT5-T1yQlS2L.js +0 -2487
  173. package/webapp/dist/assets/vennDiagram-LZ73GAT5-T1yQlS2L.js.map +0 -1
  174. package/webapp/dist/assets/xychartDiagram-JWTSCODW-KYLvRsLH.js.map +0 -1
@@ -1,4 +1,4 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/dagre-KLK3FWXG-ETpwT3pg.js","assets/graph-CyYArI_M.js","assets/_baseUniq-SGAsMSaE.js","assets/layout-BvoIJLam.js","assets/_basePickBy-B1lGEusm.js","assets/clone-BcAwA2lT.js","assets/cose-bilkent-S5V4N54A-CfkPOIie.js","assets/cytoscape.esm-Bm8DJGmZ.js","assets/c4Diagram-IC4MRINW-D_lhLw36.js","assets/chunk-JSJVCQXG-BYyIDBzB.js","assets/flowDiagram-PKNHOUZH-CBmrK8ST.js","assets/chunk-FMBD7UC4-BAtzNqV5.js","assets/chunk-55IACEB6-D2ECkhpq.js","assets/chunk-KX2RTZJC-Dt3XFfSl.js","assets/channel-BI76pqQS.js","assets/erDiagram-INFDFZHY-Cjpy0ose.js","assets/gitGraphDiagram-K3NZZRJ6-DcAa_Q3i.js","assets/chunk-4BX2VUAB-BVI27QNV.js","assets/chunk-QZHKN3VN-BI_lqvsU.js","assets/treemap-KZPCXAKY-J-UTxKUf.js","assets/ganttDiagram-A5KZAMGK-CLoJRKb7.js","assets/linear-WhxKIgP6.js","assets/init-ZxktEp_H.js","assets/defaultLocale-B2RvLBDe.js","assets/infoDiagram-LFFYTUFH-CXY1BDG-.js","assets/pieDiagram-SKSYHLDU-BVfKuFkc.js","assets/arc-B2joU0eL.js","assets/ordinal-CxptdPJm.js","assets/quadrantDiagram-337W2JSQ-DjOan1Ul.js","assets/xychartDiagram-JWTSCODW-KYLvRsLH.js","assets/requirementDiagram-Z7DCOOCP-CdkkhNJu.js","assets/sequenceDiagram-2WXFIKYE-CAf-TzzV.js","assets/classDiagram-VBA2DB6C-CGVpNFjf.js","assets/chunk-WL4C6EOR-Cd-rWL8V.js","assets/classDiagram-v2-RAHNMMFH-CGVpNFjf.js","assets/stateDiagram-RAJIS63D-CjQh2yGU.js","assets/chunk-NQ4KR5QH-CZmmNdX5.js","assets/stateDiagram-v2-FVOUBMTO-BINESHF-.js","assets/journeyDiagram-4ABVD52K-jFEOb3_9.js","assets/timeline-definition-YZTLITO2-FCh1aV2p.js","assets/mindmap-definition-YRQLILUH-BXxTVKab.js","assets/kanban-definition-K7BYSVSG-g9DIRWk3.js","assets/sankeyDiagram-WA2Y5GQK-Cc7UCE1M.js","assets/diagram-P4PSJMXO-CITRT5KI.js","assets/diagram-IFDJBPK2-BUoOrHGY.js","assets/blockDiagram-WCTKOSBZ-D8_SVEGn.js","assets/architectureDiagram-2XIMDMQ5-CsuG-Xa3.js","assets/diagram-E7M64L7V-CAkt3_Wu.js"])))=>i.map(i=>d[i]);
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/dagre-6UL2VRFP-VF-xGhAf.js","assets/graph-DAMkuTbn.js","assets/_baseUniq-mfoKz4Wm.js","assets/layout-7Ql4zmuL.js","assets/_basePickBy-CBOtd63g.js","assets/clone-Dk8cAI3I.js","assets/cose-bilkent-S5V4N54A-BjJnzB2N.js","assets/cytoscape.esm-Bm8DJGmZ.js","assets/c4Diagram-YG6GDRKO-CR7zJ2_u.js","assets/chunk-TZMSLE5B-Cw689yRl.js","assets/flowDiagram-NV44I4VS-wOdPUQ7Y.js","assets/chunk-FMBD7UC4-TX-LVAaV.js","assets/chunk-55IACEB6-BxUoXApB.js","assets/chunk-QN33PNHL-D1uiKlOO.js","assets/channel-DrTrnYx4.js","assets/erDiagram-Q2GNP2WA-DkI5eYww.js","assets/gitGraphDiagram-V2S2FVAM-Bsz7u1vi.js","assets/chunk-4BX2VUAB-CVuJEIeN.js","assets/chunk-QZHKN3VN-BxuV0Oba.js","assets/treemap-GDKQZRPO-BBr4UV0Z.js","assets/ganttDiagram-JELNMOA3-BtRWgkUH.js","assets/linear-CVmgVPuZ.js","assets/init-ZxktEp_H.js","assets/defaultLocale-B2RvLBDe.js","assets/infoDiagram-HS3SLOUP-BMaxCvH5.js","assets/pieDiagram-ADFJNKIX-CLQjpmAG.js","assets/arc-Dq0WZLyu.js","assets/ordinal-CxptdPJm.js","assets/quadrantDiagram-AYHSOK5B-ClD_bz7z.js","assets/xychartDiagram-PRI3JC2R-CS5RAtQE.js","assets/requirementDiagram-UZGBJVZJ-DOpb-TWH.js","assets/sequenceDiagram-WL72ISMW-CFMNjBER.js","assets/classDiagram-2ON5EDUG-BTTGianr.js","assets/chunk-B4BG7PRW-DpMa3-9L.js","assets/classDiagram-v2-WZHVMYZB-BTTGianr.js","assets/stateDiagram-FKZM4ZOC-BQeDlw0P.js","assets/chunk-DI55MBZ5-SAhxUTqQ.js","assets/stateDiagram-v2-4FDKWEC3-DscX61Rs.js","assets/journeyDiagram-XKPGCS4Q-ejyerzmG.js","assets/timeline-definition-IT6M3QCI-BcXPSTiw.js","assets/mindmap-definition-VGOIOE7T-DOpxjGVo.js","assets/kanban-definition-3W4ZIXB7-CYj35TEs.js","assets/sankeyDiagram-TZEHDZUN-D8Hsj3yx.js","assets/diagram-S2PKOQOG-CkK4SRyE.js","assets/diagram-QEK2KX5R-DoYCnEw_.js","assets/blockDiagram-VD42YOAC-DvE0lybt.js","assets/architectureDiagram-VXUJARFQ-CNmygmp3.js","assets/diagram-PSM6KHXK-Ba5U0oRY.js"])))=>i.map(i=>d[i]);
2
2
  var __defProp = Object.defineProperty;
3
3
  var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
4
4
  var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
@@ -5114,7 +5114,7 @@ const _createHooksMap = function _createHooksMap2() {
5114
5114
  function createDOMPurify() {
5115
5115
  let window2 = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : getGlobal();
5116
5116
  const DOMPurify = (root2) => createDOMPurify(root2);
5117
- DOMPurify.version = "3.3.3";
5117
+ DOMPurify.version = "3.3.2";
5118
5118
  DOMPurify.removed = [];
5119
5119
  if (!window2 || !window2.document || window2.document.nodeType !== NODE_TYPE.document || !window2.Element) {
5120
5120
  DOMPurify.isSupported = false;
@@ -11050,9 +11050,9 @@ MarkdownIt.prototype.disable = function(list2, ignoreInvalid) {
11050
11050
  }
11051
11051
  return this;
11052
11052
  };
11053
- MarkdownIt.prototype.use = function(plugin23) {
11053
+ MarkdownIt.prototype.use = function(plugin22) {
11054
11054
  const args = [this].concat(Array.prototype.slice.call(arguments, 1));
11055
- plugin23.apply(plugin23, args);
11055
+ plugin22.apply(plugin22, args);
11056
11056
  return this;
11057
11057
  };
11058
11058
  MarkdownIt.prototype.parse = function(src, env) {
@@ -12528,37 +12528,37 @@ function requireCore() {
12528
12528
  const lang = getLanguage(name);
12529
12529
  return lang && !lang.disableAutodetect;
12530
12530
  }
12531
- function upgradePluginAPI(plugin23) {
12532
- if (plugin23["before:highlightBlock"] && !plugin23["before:highlightElement"]) {
12533
- plugin23["before:highlightElement"] = (data) => {
12534
- plugin23["before:highlightBlock"](
12531
+ function upgradePluginAPI(plugin22) {
12532
+ if (plugin22["before:highlightBlock"] && !plugin22["before:highlightElement"]) {
12533
+ plugin22["before:highlightElement"] = (data) => {
12534
+ plugin22["before:highlightBlock"](
12535
12535
  Object.assign({ block: data.el }, data)
12536
12536
  );
12537
12537
  };
12538
12538
  }
12539
- if (plugin23["after:highlightBlock"] && !plugin23["after:highlightElement"]) {
12540
- plugin23["after:highlightElement"] = (data) => {
12541
- plugin23["after:highlightBlock"](
12539
+ if (plugin22["after:highlightBlock"] && !plugin22["after:highlightElement"]) {
12540
+ plugin22["after:highlightElement"] = (data) => {
12541
+ plugin22["after:highlightBlock"](
12542
12542
  Object.assign({ block: data.el }, data)
12543
12543
  );
12544
12544
  };
12545
12545
  }
12546
12546
  }
12547
- function addPlugin(plugin23) {
12548
- upgradePluginAPI(plugin23);
12549
- plugins.push(plugin23);
12547
+ function addPlugin(plugin22) {
12548
+ upgradePluginAPI(plugin22);
12549
+ plugins.push(plugin22);
12550
12550
  }
12551
- function removePlugin(plugin23) {
12552
- const index = plugins.indexOf(plugin23);
12551
+ function removePlugin(plugin22) {
12552
+ const index = plugins.indexOf(plugin22);
12553
12553
  if (index !== -1) {
12554
12554
  plugins.splice(index, 1);
12555
12555
  }
12556
12556
  }
12557
12557
  function fire(event, args) {
12558
12558
  const cb = event;
12559
- plugins.forEach(function(plugin23) {
12560
- if (plugin23[cb]) {
12561
- plugin23[cb](args);
12559
+ plugins.forEach(function(plugin22) {
12560
+ if (plugin22[cb]) {
12561
+ plugin22[cb](args);
12562
12562
  }
12563
12563
  });
12564
12564
  }
@@ -63444,8 +63444,8 @@ class Settings {
63444
63444
  }
63445
63445
  }
63446
63446
  class Style {
63447
- constructor(id30, size, cramped) {
63448
- this.id = id30;
63447
+ constructor(id28, size, cramped) {
63448
+ this.id = id28;
63449
63449
  this.size = size;
63450
63450
  this.cramped = cramped;
63451
63451
  }
@@ -63773,44 +63773,6 @@ var tallDelim = function tallDelim2(label, midHeight) {
63773
63773
  throw new Error("Unknown stretchy delimiter.");
63774
63774
  }
63775
63775
  };
63776
- class DocumentFragment {
63777
- // Never used; needed for satisfying interface.
63778
- constructor(children2) {
63779
- this.children = children2;
63780
- this.classes = [];
63781
- this.height = 0;
63782
- this.depth = 0;
63783
- this.maxFontSize = 0;
63784
- this.style = {};
63785
- }
63786
- hasClass(className) {
63787
- return this.classes.includes(className);
63788
- }
63789
- /** Convert the fragment into a node. */
63790
- toNode() {
63791
- var frag = document.createDocumentFragment();
63792
- for (var i2 = 0; i2 < this.children.length; i2++) {
63793
- frag.appendChild(this.children[i2].toNode());
63794
- }
63795
- return frag;
63796
- }
63797
- /** Convert the fragment into HTML markup. */
63798
- toMarkup() {
63799
- var markup = "";
63800
- for (var i2 = 0; i2 < this.children.length; i2++) {
63801
- markup += this.children[i2].toMarkup();
63802
- }
63803
- return markup;
63804
- }
63805
- /**
63806
- * Converts the math node into a string, similar to innerText. Applies to
63807
- * MathDomNode's only.
63808
- */
63809
- toText() {
63810
- var toText = (child) => child.toText();
63811
- return this.children.map(toText).join("");
63812
- }
63813
- }
63814
63776
  var ptPerUnit = {
63815
63777
  // https://en.wikibooks.org/wiki/LaTeX/Lengths and
63816
63778
  // https://tex.stackexchange.com/a/8263
@@ -64194,7 +64156,6 @@ function assertSpan(group) {
64194
64156
  throw new Error("Expected span<HtmlDomNode> but got " + String(group) + ".");
64195
64157
  }
64196
64158
  }
64197
- var hasHtmlDomChildren = (node2) => node2 instanceof Span || node2 instanceof Anchor || node2 instanceof DocumentFragment;
64198
64159
  var fontMetricsData = {
64199
64160
  "AMS-Regular": {
64200
64161
  "32": [0, 0, 0, 0, 0.25],
@@ -67302,6 +67263,44 @@ var wideCharacterFont = (wideChar2, mode) => {
67302
67263
  throw new ParseError("Unsupported character: " + wideChar2);
67303
67264
  }
67304
67265
  };
67266
+ class DocumentFragment {
67267
+ // Never used; needed for satisfying interface.
67268
+ constructor(children2) {
67269
+ this.children = children2;
67270
+ this.classes = [];
67271
+ this.height = 0;
67272
+ this.depth = 0;
67273
+ this.maxFontSize = 0;
67274
+ this.style = {};
67275
+ }
67276
+ hasClass(className) {
67277
+ return this.classes.includes(className);
67278
+ }
67279
+ /** Convert the fragment into a node. */
67280
+ toNode() {
67281
+ var frag = document.createDocumentFragment();
67282
+ for (var i2 = 0; i2 < this.children.length; i2++) {
67283
+ frag.appendChild(this.children[i2].toNode());
67284
+ }
67285
+ return frag;
67286
+ }
67287
+ /** Convert the fragment into HTML markup. */
67288
+ toMarkup() {
67289
+ var markup = "";
67290
+ for (var i2 = 0; i2 < this.children.length; i2++) {
67291
+ markup += this.children[i2].toMarkup();
67292
+ }
67293
+ return markup;
67294
+ }
67295
+ /**
67296
+ * Converts the math node into a string, similar to innerText. Applies to
67297
+ * MathDomNode's only.
67298
+ */
67299
+ toText() {
67300
+ var toText = (child) => child.toText();
67301
+ return this.children.map(toText).join("");
67302
+ }
67303
+ }
67305
67304
  var lookupSymbol = function lookupSymbol2(value, fontName, mode) {
67306
67305
  if (symbols[mode][value]) {
67307
67306
  var replacement = symbols[mode][value].replace;
@@ -69002,14 +69001,6 @@ function checkSymbolNodeType(node2) {
69002
69001
  }
69003
69002
  return null;
69004
69003
  }
69005
- var getBaseSymbol = (group) => {
69006
- if (group instanceof SymbolNode) {
69007
- return group;
69008
- }
69009
- if (hasHtmlDomChildren(group) && group.children.length === 1) {
69010
- return getBaseSymbol(group.children[0]);
69011
- }
69012
- };
69013
69004
  var htmlBuilder$a = (grp, options) => {
69014
69005
  var base2;
69015
69006
  var group;
@@ -69028,8 +69019,9 @@ var htmlBuilder$a = (grp, options) => {
69028
69019
  var mustShift = group.isShifty && isCharacterBox(base2);
69029
69020
  var skew2 = 0;
69030
69021
  if (mustShift) {
69031
- var _getBaseSymbol$skew, _getBaseSymbol;
69032
- skew2 = (_getBaseSymbol$skew = (_getBaseSymbol = getBaseSymbol(body)) == null ? void 0 : _getBaseSymbol.skew) != null ? _getBaseSymbol$skew : 0;
69022
+ var baseChar = getBaseElem(base2);
69023
+ var baseGroup = buildGroup$1(baseChar, options.havingCrampedStyle());
69024
+ skew2 = assertSymbolDomNode(baseGroup).skew;
69033
69025
  }
69034
69026
  var accentBelow = group.label === "\\c";
69035
69027
  var clearance = accentBelow ? body.height + body.depth : Math.min(body.height, options.fontMetrics().xHeight);
@@ -77326,7 +77318,7 @@ var renderToHTMLTree = function renderToHTMLTree2(expression, options) {
77326
77318
  return renderError(error2, expression, settings);
77327
77319
  }
77328
77320
  };
77329
- var version = "0.16.38";
77321
+ var version = "0.16.37";
77330
77322
  var __domTree = {
77331
77323
  Span,
77332
77324
  Anchor,
@@ -77556,6 +77548,147 @@ const __vitePreload = function preload(baseModule, deps, importerUrl) {
77556
77548
  return baseModule().catch(handlePreloadError);
77557
77549
  });
77558
77550
  };
77551
+ var package_default = {
77552
+ name: "mermaid",
77553
+ version: "11.12.3",
77554
+ description: "Markdown-ish syntax for generating flowcharts, mindmaps, sequence diagrams, class diagrams, gantt charts, git graphs and more.",
77555
+ type: "module",
77556
+ module: "./dist/mermaid.core.mjs",
77557
+ types: "./dist/mermaid.d.ts",
77558
+ exports: {
77559
+ ".": {
77560
+ types: "./dist/mermaid.d.ts",
77561
+ import: "./dist/mermaid.core.mjs",
77562
+ default: "./dist/mermaid.core.mjs"
77563
+ },
77564
+ "./*": "./*"
77565
+ },
77566
+ keywords: [
77567
+ "diagram",
77568
+ "markdown",
77569
+ "flowchart",
77570
+ "sequence diagram",
77571
+ "gantt",
77572
+ "class diagram",
77573
+ "git graph",
77574
+ "mindmap",
77575
+ "packet diagram",
77576
+ "c4 diagram",
77577
+ "er diagram",
77578
+ "pie chart",
77579
+ "pie diagram",
77580
+ "quadrant chart",
77581
+ "requirement diagram",
77582
+ "graph"
77583
+ ],
77584
+ scripts: {
77585
+ clean: "rimraf dist",
77586
+ dev: "pnpm -w dev",
77587
+ "docs:code": "typedoc src/defaultConfig.ts src/config.ts src/mermaid.ts && prettier --write ./src/docs/config/setup",
77588
+ "docs:build": "rimraf ../../docs && pnpm docs:code && pnpm docs:spellcheck && tsx scripts/docs.cli.mts",
77589
+ "docs:verify": "pnpm docs:code && pnpm docs:spellcheck && tsx scripts/docs.cli.mts --verify",
77590
+ "docs:pre:vitepress": "pnpm --filter ./src/docs prefetch && rimraf src/vitepress && pnpm docs:code && tsx scripts/docs.cli.mts --vitepress && pnpm --filter ./src/vitepress install --no-frozen-lockfile --ignore-scripts",
77591
+ "docs:build:vitepress": "pnpm docs:pre:vitepress && (cd src/vitepress && pnpm run build) && cpy --flat src/docs/landing/ ./src/vitepress/.vitepress/dist/landing",
77592
+ "docs:dev": 'pnpm docs:pre:vitepress && concurrently "pnpm --filter ./src/vitepress dev" "tsx scripts/docs.cli.mts --watch --vitepress"',
77593
+ "docs:dev:docker": 'pnpm docs:pre:vitepress && concurrently "pnpm --filter ./src/vitepress dev:docker" "tsx scripts/docs.cli.mts --watch --vitepress"',
77594
+ "docs:serve": "pnpm docs:build:vitepress && vitepress serve src/vitepress",
77595
+ "docs:spellcheck": 'cspell "src/docs/**/*.md"',
77596
+ "docs:release-version": "tsx scripts/update-release-version.mts",
77597
+ "docs:verify-version": "tsx scripts/update-release-version.mts --verify",
77598
+ "types:build-config": "tsx scripts/create-types-from-json-schema.mts",
77599
+ "types:verify-config": "tsx scripts/create-types-from-json-schema.mts --verify",
77600
+ checkCircle: "npx madge --circular ./src",
77601
+ prepublishOnly: "pnpm docs:verify-version"
77602
+ },
77603
+ repository: {
77604
+ type: "git",
77605
+ url: "https://github.com/mermaid-js/mermaid"
77606
+ },
77607
+ author: "Knut Sveidqvist",
77608
+ license: "MIT",
77609
+ standard: {
77610
+ ignore: [
77611
+ "**/parser/*.js",
77612
+ "dist/**/*.js",
77613
+ "cypress/**/*.js"
77614
+ ],
77615
+ globals: [
77616
+ "page"
77617
+ ]
77618
+ },
77619
+ dependencies: {
77620
+ "@braintree/sanitize-url": "^7.1.1",
77621
+ "@iconify/utils": "^3.0.1",
77622
+ "@mermaid-js/parser": "workspace:^",
77623
+ "@types/d3": "^7.4.3",
77624
+ cytoscape: "^3.29.3",
77625
+ "cytoscape-cose-bilkent": "^4.1.0",
77626
+ "cytoscape-fcose": "^2.2.0",
77627
+ d3: "^7.9.0",
77628
+ "d3-sankey": "^0.12.3",
77629
+ "dagre-d3-es": "7.0.13",
77630
+ dayjs: "^1.11.18",
77631
+ dompurify: "^3.2.5",
77632
+ katex: "^0.16.22",
77633
+ khroma: "^2.1.0",
77634
+ "lodash-es": "^4.17.23",
77635
+ marked: "^16.2.1",
77636
+ roughjs: "^4.6.6",
77637
+ stylis: "^4.3.6",
77638
+ "ts-dedent": "^2.2.0",
77639
+ uuid: "^11.1.0"
77640
+ },
77641
+ devDependencies: {
77642
+ "@adobe/jsonschema2md": "^8.0.5",
77643
+ "@iconify/types": "^2.0.0",
77644
+ "@types/cytoscape": "^3.21.9",
77645
+ "@types/cytoscape-fcose": "^2.2.4",
77646
+ "@types/d3-sankey": "^0.12.4",
77647
+ "@types/d3-scale": "^4.0.9",
77648
+ "@types/d3-scale-chromatic": "^3.1.0",
77649
+ "@types/d3-selection": "^3.0.11",
77650
+ "@types/d3-shape": "^3.1.7",
77651
+ "@types/jsdom": "^21.1.7",
77652
+ "@types/katex": "^0.16.7",
77653
+ "@types/lodash-es": "^4.17.12",
77654
+ "@types/micromatch": "^4.0.9",
77655
+ "@types/stylis": "^4.2.7",
77656
+ "@types/uuid": "^10.0.0",
77657
+ ajv: "^8.17.1",
77658
+ canvas: "^3.1.2",
77659
+ chokidar: "3.6.0",
77660
+ concurrently: "^9.1.2",
77661
+ "csstree-validator": "^4.0.1",
77662
+ globby: "^14.1.0",
77663
+ jison: "^0.4.18",
77664
+ "js-base64": "^3.7.8",
77665
+ jsdom: "^26.1.0",
77666
+ "json-schema-to-typescript": "^15.0.4",
77667
+ micromatch: "^4.0.8",
77668
+ "path-browserify": "^1.0.1",
77669
+ prettier: "^3.5.3",
77670
+ remark: "^15.0.1",
77671
+ "remark-frontmatter": "^5.0.0",
77672
+ "remark-gfm": "^4.0.1",
77673
+ rimraf: "^6.0.1",
77674
+ "start-server-and-test": "^2.0.13",
77675
+ "type-fest": "^4.35.0",
77676
+ typedoc: "^0.28.12",
77677
+ "typedoc-plugin-markdown": "^4.8.1",
77678
+ typescript: "~5.7.3",
77679
+ "unist-util-flatmap": "^1.0.0",
77680
+ "unist-util-visit": "^5.0.0",
77681
+ vitepress: "^1.6.4",
77682
+ "vitepress-plugin-search": "1.0.4-alpha.22"
77683
+ },
77684
+ files: [
77685
+ "dist/",
77686
+ "README.md"
77687
+ ],
77688
+ publishConfig: {
77689
+ access: "public"
77690
+ }
77691
+ };
77559
77692
  var dayjs_min$1 = { exports: {} };
77560
77693
  var dayjs_min = dayjs_min$1.exports;
77561
77694
  var hasRequiredDayjs_min;
@@ -78576,8 +78709,8 @@ var UnknownDiagramError = (_a2 = class extends Error {
78576
78709
  var detectors = {};
78577
78710
  var detectType$1 = /* @__PURE__ */ __name(function(text2, config2) {
78578
78711
  text2 = text2.replace(frontMatterRegex, "").replace(directiveRegex, "").replace(anyCommentRegex, "\n");
78579
- for (const [key, { detector: detector30 }] of Object.entries(detectors)) {
78580
- const diagram2 = detector30(text2, config2);
78712
+ for (const [key, { detector: detector28 }] of Object.entries(detectors)) {
78713
+ const diagram2 = detector28(text2, config2);
78581
78714
  if (diagram2) {
78582
78715
  return key;
78583
78716
  }
@@ -78587,16 +78720,16 @@ var detectType$1 = /* @__PURE__ */ __name(function(text2, config2) {
78587
78720
  );
78588
78721
  }, "detectType");
78589
78722
  var registerLazyLoadedDiagrams = /* @__PURE__ */ __name((...diagrams2) => {
78590
- for (const { id: id30, detector: detector30, loader: loader30 } of diagrams2) {
78591
- addDetector(id30, detector30, loader30);
78723
+ for (const { id: id28, detector: detector28, loader: loader28 } of diagrams2) {
78724
+ addDetector(id28, detector28, loader28);
78592
78725
  }
78593
78726
  }, "registerLazyLoadedDiagrams");
78594
- var addDetector = /* @__PURE__ */ __name((key, detector30, loader30) => {
78727
+ var addDetector = /* @__PURE__ */ __name((key, detector28, loader28) => {
78595
78728
  if (detectors[key]) {
78596
78729
  log.warn(`Detector with key ${key} already exists. Overwriting.`);
78597
78730
  }
78598
- detectors[key] = { detector: detector30, loader: loader30 };
78599
- log.debug(`Detector with key ${key} added${loader30 ? " with loader" : ""}`);
78731
+ detectors[key] = { detector: detector28, loader: loader28 };
78732
+ log.debug(`Detector with key ${key} added${loader28 ? " with loader" : ""}`);
78600
78733
  }, "addDetector");
78601
78734
  var getDiagramLoader = /* @__PURE__ */ __name((key) => {
78602
78735
  return detectors[key].loader;
@@ -78623,7 +78756,7 @@ var assignWithDepth = /* @__PURE__ */ __name((dst, src, { depth = 2, clobber = f
78623
78756
  }
78624
78757
  if (src !== void 0 && typeof dst === "object" && typeof src === "object") {
78625
78758
  Object.keys(src).forEach((key) => {
78626
- if (typeof src[key] === "object" && src[key] !== null && (dst[key] === void 0 || typeof dst[key] === "object")) {
78759
+ if (typeof src[key] === "object" && (dst[key] === void 0 || typeof dst[key] === "object")) {
78627
78760
  if (dst[key] === void 0) {
78628
78761
  dst[key] = Array.isArray(src[key]) ? [] : {};
78629
78762
  }
@@ -78804,16 +78937,6 @@ var Theme = (_b = class {
78804
78937
  this.pieOuterStrokeWidth = this.pieOuterStrokeWidth || "2px";
78805
78938
  this.pieOuterStrokeColor = this.pieOuterStrokeColor || "black";
78806
78939
  this.pieOpacity = this.pieOpacity || "0.7";
78807
- this.venn1 = this.venn1 ?? adjust(this.primaryColor, { l: -30 });
78808
- this.venn2 = this.venn2 ?? adjust(this.secondaryColor, { l: -30 });
78809
- this.venn3 = this.venn3 ?? adjust(this.tertiaryColor, { l: -30 });
78810
- this.venn4 = this.venn4 ?? adjust(this.primaryColor, { h: 60, l: -30 });
78811
- this.venn5 = this.venn5 ?? adjust(this.primaryColor, { h: -60, l: -30 });
78812
- this.venn6 = this.venn6 ?? adjust(this.secondaryColor, { h: 60, l: -30 });
78813
- this.venn7 = this.venn7 ?? adjust(this.primaryColor, { h: 120, l: -30 });
78814
- this.venn8 = this.venn8 ?? adjust(this.secondaryColor, { h: 120, l: -30 });
78815
- this.vennTitleTextColor = this.vennTitleTextColor ?? this.titleColor;
78816
- this.vennSetTextColor = this.vennSetTextColor ?? this.textColor;
78817
78940
  this.radar = {
78818
78941
  axisColor: this.radar?.axisColor || this.lineColor,
78819
78942
  axisStrokeWidth: this.radar?.axisStrokeWidth || 2,
@@ -79055,7 +79178,7 @@ var Theme2 = (_c = class {
79055
79178
  this.taskTextOutsideColor = this.taskTextLightColor;
79056
79179
  this.gridColor = this.mainContrastColor;
79057
79180
  this.doneTaskBkgColor = this.mainContrastColor;
79058
- this.taskTextDarkColor = invert(this.doneTaskBkgColor);
79181
+ this.taskTextDarkColor = this.darkTextColor;
79059
79182
  this.archEdgeColor = this.lineColor;
79060
79183
  this.archEdgeArrowColor = this.lineColor;
79061
79184
  this.transitionColor = this.transitionColor || this.lineColor;
@@ -79121,21 +79244,16 @@ var Theme2 = (_c = class {
79121
79244
  this["pie" + i2] = this["cScale" + i2];
79122
79245
  }
79123
79246
  this.pieTitleTextSize = this.pieTitleTextSize || "25px";
79124
- this.pieTitleTextColor = this.pieTitleTextColor || this.mainContrastColor;
79247
+ this.pieTitleTextColor = this.pieTitleTextColor || this.taskTextDarkColor;
79125
79248
  this.pieSectionTextSize = this.pieSectionTextSize || "17px";
79126
79249
  this.pieSectionTextColor = this.pieSectionTextColor || this.textColor;
79127
79250
  this.pieLegendTextSize = this.pieLegendTextSize || "17px";
79128
- this.pieLegendTextColor = this.pieLegendTextColor || this.mainContrastColor;
79251
+ this.pieLegendTextColor = this.pieLegendTextColor || this.taskTextDarkColor;
79129
79252
  this.pieStrokeColor = this.pieStrokeColor || "black";
79130
79253
  this.pieStrokeWidth = this.pieStrokeWidth || "2px";
79131
79254
  this.pieOuterStrokeWidth = this.pieOuterStrokeWidth || "2px";
79132
79255
  this.pieOuterStrokeColor = this.pieOuterStrokeColor || "black";
79133
79256
  this.pieOpacity = this.pieOpacity || "0.7";
79134
- for (let i2 = 0; i2 < 8; i2++) {
79135
- this["venn" + (i2 + 1)] = this["venn" + (i2 + 1)] ?? lighten(this["cScale" + i2], 30);
79136
- }
79137
- this.vennTitleTextColor = this.vennTitleTextColor ?? this.titleColor;
79138
- this.vennSetTextColor = this.vennSetTextColor ?? this.textColor;
79139
79257
  this.quadrant1Fill = this.quadrant1Fill || this.primaryColor;
79140
79258
  this.quadrant2Fill = this.quadrant2Fill || adjust(this.primaryColor, { r: 5, g: 5, b: 5 });
79141
79259
  this.quadrant3Fill = this.quadrant3Fill || adjust(this.primaryColor, { r: 10, g: 10, b: 10 });
@@ -79454,16 +79572,6 @@ var Theme3 = (_d = class {
79454
79572
  this.pieOuterStrokeWidth = this.pieOuterStrokeWidth || "2px";
79455
79573
  this.pieOuterStrokeColor = this.pieOuterStrokeColor || "black";
79456
79574
  this.pieOpacity = this.pieOpacity || "0.7";
79457
- this.venn1 = this.venn1 ?? adjust(this.primaryColor, { l: -30 });
79458
- this.venn2 = this.venn2 ?? adjust(this.secondaryColor, { l: -30 });
79459
- this.venn3 = this.venn3 ?? adjust(this.tertiaryColor, { l: -40 });
79460
- this.venn4 = this.venn4 ?? adjust(this.primaryColor, { h: 60, l: -30 });
79461
- this.venn5 = this.venn5 ?? adjust(this.primaryColor, { h: -60, l: -30 });
79462
- this.venn6 = this.venn6 ?? adjust(this.secondaryColor, { h: 60, l: -30 });
79463
- this.venn7 = this.venn7 ?? adjust(this.primaryColor, { h: 120, l: -30 });
79464
- this.venn8 = this.venn8 ?? adjust(this.secondaryColor, { h: 120, l: -30 });
79465
- this.vennTitleTextColor = this.vennTitleTextColor ?? this.titleColor;
79466
- this.vennSetTextColor = this.vennSetTextColor ?? this.textColor;
79467
79575
  this.quadrant1Fill = this.quadrant1Fill || this.primaryColor;
79468
79576
  this.quadrant2Fill = this.quadrant2Fill || adjust(this.primaryColor, { r: 5, g: 5, b: 5 });
79469
79577
  this.quadrant3Fill = this.quadrant3Fill || adjust(this.primaryColor, { r: 10, g: 10, b: 10 });
@@ -79765,16 +79873,6 @@ var Theme4 = (_e2 = class {
79765
79873
  this.pieOuterStrokeWidth = this.pieOuterStrokeWidth || "2px";
79766
79874
  this.pieOuterStrokeColor = this.pieOuterStrokeColor || "black";
79767
79875
  this.pieOpacity = this.pieOpacity || "0.7";
79768
- this.venn1 = this.venn1 ?? adjust(this.primaryColor, { l: -30 });
79769
- this.venn2 = this.venn2 ?? adjust(this.secondaryColor, { l: -30 });
79770
- this.venn3 = this.venn3 ?? adjust(this.tertiaryColor, { l: -30 });
79771
- this.venn4 = this.venn4 ?? adjust(this.primaryColor, { h: 60, l: -30 });
79772
- this.venn5 = this.venn5 ?? adjust(this.primaryColor, { h: -60, l: -30 });
79773
- this.venn6 = this.venn6 ?? adjust(this.secondaryColor, { h: 60, l: -30 });
79774
- this.venn7 = this.venn7 ?? adjust(this.primaryColor, { h: 120, l: -30 });
79775
- this.venn8 = this.venn8 ?? adjust(this.secondaryColor, { h: 120, l: -30 });
79776
- this.vennTitleTextColor = this.vennTitleTextColor ?? this.titleColor;
79777
- this.vennSetTextColor = this.vennSetTextColor ?? this.textColor;
79778
79876
  this.quadrant1Fill = this.quadrant1Fill || this.primaryColor;
79779
79877
  this.quadrant2Fill = this.quadrant2Fill || adjust(this.primaryColor, { r: 5, g: 5, b: 5 });
79780
79878
  this.quadrant3Fill = this.quadrant3Fill || adjust(this.primaryColor, { r: 10, g: 10, b: 10 });
@@ -80096,11 +80194,6 @@ var Theme5 = (_f = class {
80096
80194
  this.pieOuterStrokeWidth = this.pieOuterStrokeWidth || "2px";
80097
80195
  this.pieOuterStrokeColor = this.pieOuterStrokeColor || "black";
80098
80196
  this.pieOpacity = this.pieOpacity || "0.7";
80099
- for (let i2 = 0; i2 < 8; i2++) {
80100
- this["venn" + (i2 + 1)] = this["venn" + (i2 + 1)] ?? this["cScale" + i2];
80101
- }
80102
- this.vennTitleTextColor = this.vennTitleTextColor ?? this.titleColor;
80103
- this.vennSetTextColor = this.vennSetTextColor ?? this.textColor;
80104
80197
  this.quadrant1Fill = this.quadrant1Fill || this.primaryColor;
80105
80198
  this.quadrant2Fill = this.quadrant2Fill || adjust(this.primaryColor, { r: 5, g: 5, b: 5 });
80106
80199
  this.quadrant3Fill = this.quadrant3Fill || adjust(this.primaryColor, { r: 10, g: 10, b: 10 });
@@ -80229,7 +80322,7 @@ var config_schema_default = {
80229
80322
  "bottom": 0
80230
80323
  },
80231
80324
  "diagramPadding": 8,
80232
- "htmlLabels": null,
80325
+ "htmlLabels": true,
80233
80326
  "nodeSpacing": 50,
80234
80327
  "rankSpacing": 50,
80235
80328
  "curve": "basis",
@@ -80460,10 +80553,6 @@ var config_schema_default = {
80460
80553
  "maxNodeWidth": 200,
80461
80554
  "layoutAlgorithm": "cose-bilkent"
80462
80555
  },
80463
- "ishikawa": {
80464
- "useMaxWidth": true,
80465
- "diagramPadding": 20
80466
- },
80467
80556
  "kanban": {
80468
80557
  "useMaxWidth": true,
80469
80558
  "padding": 8,
@@ -80691,13 +80780,6 @@ var config_schema_default = {
80691
80780
  "axisLabelFactor": 1.05,
80692
80781
  "curveTension": 0.17
80693
80782
  },
80694
- "venn": {
80695
- "useMaxWidth": true,
80696
- "width": 800,
80697
- "height": 450,
80698
- "padding": 8,
80699
- "useDebugLayout": false
80700
- },
80701
80783
  "theme": "default",
80702
80784
  "look": "classic",
80703
80785
  "handDrawnSeed": 0,
@@ -80954,9 +81036,6 @@ var config = {
80954
81036
  radar: {
80955
81037
  ...config_schema_default.radar
80956
81038
  },
80957
- ishikawa: {
80958
- ...config_schema_default.ishikawa
80959
- },
80960
81039
  treemap: {
80961
81040
  useMaxWidth: true,
80962
81041
  padding: 10,
@@ -80968,9 +81047,6 @@ var config = {
80968
81047
  valueFontSize: 12,
80969
81048
  labelFontSize: 14,
80970
81049
  valueFormat: ","
80971
- },
80972
- venn: {
80973
- ...config_schema_default.venn
80974
81050
  }
80975
81051
  };
80976
81052
  var keyify = /* @__PURE__ */ __name((obj, prefix = "") => Object.keys(obj).reduce((res, el) => {
@@ -81041,7 +81117,6 @@ var sanitizeCss = /* @__PURE__ */ __name((str2) => {
81041
81117
  return str2;
81042
81118
  }, "sanitizeCss");
81043
81119
  var defaultConfig = Object.freeze(defaultConfig_default);
81044
- var evaluate = /* @__PURE__ */ __name((val) => val === false || ["false", "null", "0"].includes(String(val).trim().toLowerCase()) ? false : true, "evaluate");
81045
81120
  var siteConfig = assignWithDepth_default({}, defaultConfig);
81046
81121
  var configFromInitialize;
81047
81122
  var directives = [];
@@ -81136,8 +81211,7 @@ var reset = /* @__PURE__ */ __name((config2 = siteConfig) => {
81136
81211
  updateCurrentConfig(config2, directives);
81137
81212
  }, "reset");
81138
81213
  var ConfigWarning = {
81139
- LAZY_LOAD_DEPRECATED: "The configuration options lazyLoadedDiagrams and loadExternalDiagramsAtStartup are deprecated. Please use registerExternalDiagrams instead.",
81140
- FLOWCHART_HTML_LABELS_DEPRECATED: "flowchart.htmlLabels is deprecated. Please use global htmlLabels instead."
81214
+ LAZY_LOAD_DEPRECATED: "The configuration options lazyLoadedDiagrams and loadExternalDiagramsAtStartup are deprecated. Please use registerExternalDiagrams instead."
81141
81215
  };
81142
81216
  var issuedWarnings = {};
81143
81217
  var issueWarning = /* @__PURE__ */ __name((warning) => {
@@ -81165,12 +81239,6 @@ var getUserDefinedConfig = /* @__PURE__ */ __name(() => {
81165
81239
  }
81166
81240
  return userConfig;
81167
81241
  }, "getUserDefinedConfig");
81168
- var getEffectiveHtmlLabels = /* @__PURE__ */ __name((config2) => {
81169
- if (config2.flowchart?.htmlLabels != void 0) {
81170
- issueWarning("FLOWCHART_HTML_LABELS_DEPRECATED");
81171
- }
81172
- return evaluate(config2.htmlLabels ?? config2.flowchart?.htmlLabels ?? true);
81173
- }, "getEffectiveHtmlLabels");
81174
81242
  var lineBreakRegex = /<br\s*\/?>/gi;
81175
81243
  var getRows = /* @__PURE__ */ __name((s2) => {
81176
81244
  if (!s2) {
@@ -81212,9 +81280,9 @@ var removeScript = /* @__PURE__ */ __name((txt) => {
81212
81280
  return sanitizedText;
81213
81281
  }, "removeScript");
81214
81282
  var sanitizeMore = /* @__PURE__ */ __name((text2, config2) => {
81215
- if (getEffectiveHtmlLabels(config2)) {
81283
+ if (config2.flowchart?.htmlLabels !== false) {
81216
81284
  const level = config2.securityLevel;
81217
- if (level === "antiscript" || level === "strict" || level === "sandbox") {
81285
+ if (level === "antiscript" || level === "strict") {
81218
81286
  text2 = removeScript(text2);
81219
81287
  } else if (level !== "loose") {
81220
81288
  text2 = breakToPlaceholder(text2);
@@ -81264,6 +81332,7 @@ var getUrl = /* @__PURE__ */ __name((useAbsolute) => {
81264
81332
  }
81265
81333
  return url;
81266
81334
  }, "getUrl");
81335
+ var evaluate = /* @__PURE__ */ __name((val) => val === false || ["false", "null", "0"].includes(String(val).trim().toLowerCase()) ? false : true, "evaluate");
81267
81336
  var getMax = /* @__PURE__ */ __name(function(...values) {
81268
81337
  const newValues = values.filter((value) => {
81269
81338
  return !isNaN(value);
@@ -81552,15 +81621,15 @@ var getCommonDb = /* @__PURE__ */ __name(() => {
81552
81621
  return commonDb_exports;
81553
81622
  }, "getCommonDb");
81554
81623
  var diagrams = {};
81555
- var registerDiagram = /* @__PURE__ */ __name((id30, diagram2, detector30) => {
81556
- if (diagrams[id30]) {
81557
- log2.warn(`Diagram with id ${id30} already registered. Overwriting.`);
81624
+ var registerDiagram = /* @__PURE__ */ __name((id28, diagram2, detector28) => {
81625
+ if (diagrams[id28]) {
81626
+ log2.warn(`Diagram with id ${id28} already registered. Overwriting.`);
81558
81627
  }
81559
- diagrams[id30] = diagram2;
81560
- if (detector30) {
81561
- addDetector(id30, detector30);
81628
+ diagrams[id28] = diagram2;
81629
+ if (detector28) {
81630
+ addDetector(id28, detector28);
81562
81631
  }
81563
- addStylesForDiagram(id30, diagram2.styles);
81632
+ addStylesForDiagram(id28, diagram2.styles);
81564
81633
  diagram2.injectUtils?.(
81565
81634
  log2,
81566
81635
  setLogLevel2,
@@ -82961,11 +83030,11 @@ var STARTED = 3;
82961
83030
  var RUNNING = 4;
82962
83031
  var ENDING = 5;
82963
83032
  var ENDED = 6;
82964
- function schedule(node2, name, id30, index, group, timing) {
83033
+ function schedule(node2, name, id28, index, group, timing) {
82965
83034
  var schedules = node2.__transition;
82966
83035
  if (!schedules) node2.__transition = {};
82967
- else if (id30 in schedules) return;
82968
- create(node2, id30, {
83036
+ else if (id28 in schedules) return;
83037
+ create(node2, id28, {
82969
83038
  name,
82970
83039
  index,
82971
83040
  // For context during callback.
@@ -82981,24 +83050,24 @@ function schedule(node2, name, id30, index, group, timing) {
82981
83050
  state: CREATED
82982
83051
  });
82983
83052
  }
82984
- function init$1(node2, id30) {
82985
- var schedule2 = get(node2, id30);
83053
+ function init$1(node2, id28) {
83054
+ var schedule2 = get(node2, id28);
82986
83055
  if (schedule2.state > CREATED) throw new Error("too late; already scheduled");
82987
83056
  return schedule2;
82988
83057
  }
82989
- function set$1(node2, id30) {
82990
- var schedule2 = get(node2, id30);
83058
+ function set$1(node2, id28) {
83059
+ var schedule2 = get(node2, id28);
82991
83060
  if (schedule2.state > STARTED) throw new Error("too late; already running");
82992
83061
  return schedule2;
82993
83062
  }
82994
- function get(node2, id30) {
83063
+ function get(node2, id28) {
82995
83064
  var schedule2 = node2.__transition;
82996
- if (!schedule2 || !(schedule2 = schedule2[id30])) throw new Error("transition not found");
83065
+ if (!schedule2 || !(schedule2 = schedule2[id28])) throw new Error("transition not found");
82997
83066
  return schedule2;
82998
83067
  }
82999
- function create(node2, id30, self2) {
83068
+ function create(node2, id28, self2) {
83000
83069
  var schedules = node2.__transition, tween;
83001
- schedules[id30] = self2;
83070
+ schedules[id28] = self2;
83002
83071
  self2.timer = timer(schedule2, 0, self2.time);
83003
83072
  function schedule2(elapsed) {
83004
83073
  self2.state = SCHEDULED;
@@ -83017,7 +83086,7 @@ function create(node2, id30, self2) {
83017
83086
  o2.timer.stop();
83018
83087
  o2.on.call("interrupt", node2, node2.__data__, o2.index, o2.group);
83019
83088
  delete schedules[i2];
83020
- } else if (+i2 < id30) {
83089
+ } else if (+i2 < id28) {
83021
83090
  o2.state = ENDED;
83022
83091
  o2.timer.stop();
83023
83092
  o2.on.call("cancel", node2, node2.__data__, o2.index, o2.group);
@@ -83056,7 +83125,7 @@ function create(node2, id30, self2) {
83056
83125
  function stop() {
83057
83126
  self2.state = ENDED;
83058
83127
  self2.timer.stop();
83059
- delete schedules[id30];
83128
+ delete schedules[id28];
83060
83129
  for (var i2 in schedules) return;
83061
83130
  delete node2.__transition;
83062
83131
  }
@@ -83083,10 +83152,10 @@ function selection_interrupt(name) {
83083
83152
  interrupt(this, name);
83084
83153
  });
83085
83154
  }
83086
- function tweenRemove(id30, name) {
83155
+ function tweenRemove(id28, name) {
83087
83156
  var tween0, tween1;
83088
83157
  return function() {
83089
- var schedule2 = set$1(this, id30), tween = schedule2.tween;
83158
+ var schedule2 = set$1(this, id28), tween = schedule2.tween;
83090
83159
  if (tween !== tween0) {
83091
83160
  tween1 = tween0 = tween;
83092
83161
  for (var i2 = 0, n2 = tween1.length; i2 < n2; ++i2) {
@@ -83100,11 +83169,11 @@ function tweenRemove(id30, name) {
83100
83169
  schedule2.tween = tween1;
83101
83170
  };
83102
83171
  }
83103
- function tweenFunction(id30, name, value) {
83172
+ function tweenFunction(id28, name, value) {
83104
83173
  var tween0, tween1;
83105
83174
  if (typeof value !== "function") throw new Error();
83106
83175
  return function() {
83107
- var schedule2 = set$1(this, id30), tween = schedule2.tween;
83176
+ var schedule2 = set$1(this, id28), tween = schedule2.tween;
83108
83177
  if (tween !== tween0) {
83109
83178
  tween1 = (tween0 = tween).slice();
83110
83179
  for (var t2 = { name, value }, i2 = 0, n2 = tween1.length; i2 < n2; ++i2) {
@@ -83119,10 +83188,10 @@ function tweenFunction(id30, name, value) {
83119
83188
  };
83120
83189
  }
83121
83190
  function transition_tween(name, value) {
83122
- var id30 = this._id;
83191
+ var id28 = this._id;
83123
83192
  name += "";
83124
83193
  if (arguments.length < 2) {
83125
- var tween = get(this.node(), id30).tween;
83194
+ var tween = get(this.node(), id28).tween;
83126
83195
  for (var i2 = 0, n2 = tween.length, t2; i2 < n2; ++i2) {
83127
83196
  if ((t2 = tween[i2]).name === name) {
83128
83197
  return t2.value;
@@ -83130,16 +83199,16 @@ function transition_tween(name, value) {
83130
83199
  }
83131
83200
  return null;
83132
83201
  }
83133
- return this.each((value == null ? tweenRemove : tweenFunction)(id30, name, value));
83202
+ return this.each((value == null ? tweenRemove : tweenFunction)(id28, name, value));
83134
83203
  }
83135
83204
  function tweenValue(transition, name, value) {
83136
- var id30 = transition._id;
83205
+ var id28 = transition._id;
83137
83206
  transition.each(function() {
83138
- var schedule2 = set$1(this, id30);
83207
+ var schedule2 = set$1(this, id28);
83139
83208
  (schedule2.value || (schedule2.value = {}))[name] = value.apply(this, arguments);
83140
83209
  });
83141
83210
  return function(node2) {
83142
- return get(node2, id30).value[name];
83211
+ return get(node2, id28).value[name];
83143
83212
  };
83144
83213
  }
83145
83214
  function interpolate(a2, b2) {
@@ -83232,49 +83301,49 @@ function transition_attrTween(name, value) {
83232
83301
  var fullname = namespace(name);
83233
83302
  return this.tween(key, (fullname.local ? attrTweenNS : attrTween)(fullname, value));
83234
83303
  }
83235
- function delayFunction(id30, value) {
83304
+ function delayFunction(id28, value) {
83236
83305
  return function() {
83237
- init$1(this, id30).delay = +value.apply(this, arguments);
83306
+ init$1(this, id28).delay = +value.apply(this, arguments);
83238
83307
  };
83239
83308
  }
83240
- function delayConstant(id30, value) {
83309
+ function delayConstant(id28, value) {
83241
83310
  return value = +value, function() {
83242
- init$1(this, id30).delay = value;
83311
+ init$1(this, id28).delay = value;
83243
83312
  };
83244
83313
  }
83245
83314
  function transition_delay(value) {
83246
- var id30 = this._id;
83247
- return arguments.length ? this.each((typeof value === "function" ? delayFunction : delayConstant)(id30, value)) : get(this.node(), id30).delay;
83315
+ var id28 = this._id;
83316
+ return arguments.length ? this.each((typeof value === "function" ? delayFunction : delayConstant)(id28, value)) : get(this.node(), id28).delay;
83248
83317
  }
83249
- function durationFunction(id30, value) {
83318
+ function durationFunction(id28, value) {
83250
83319
  return function() {
83251
- set$1(this, id30).duration = +value.apply(this, arguments);
83320
+ set$1(this, id28).duration = +value.apply(this, arguments);
83252
83321
  };
83253
83322
  }
83254
- function durationConstant(id30, value) {
83323
+ function durationConstant(id28, value) {
83255
83324
  return value = +value, function() {
83256
- set$1(this, id30).duration = value;
83325
+ set$1(this, id28).duration = value;
83257
83326
  };
83258
83327
  }
83259
83328
  function transition_duration(value) {
83260
- var id30 = this._id;
83261
- return arguments.length ? this.each((typeof value === "function" ? durationFunction : durationConstant)(id30, value)) : get(this.node(), id30).duration;
83329
+ var id28 = this._id;
83330
+ return arguments.length ? this.each((typeof value === "function" ? durationFunction : durationConstant)(id28, value)) : get(this.node(), id28).duration;
83262
83331
  }
83263
- function easeConstant(id30, value) {
83332
+ function easeConstant(id28, value) {
83264
83333
  if (typeof value !== "function") throw new Error();
83265
83334
  return function() {
83266
- set$1(this, id30).ease = value;
83335
+ set$1(this, id28).ease = value;
83267
83336
  };
83268
83337
  }
83269
83338
  function transition_ease(value) {
83270
- var id30 = this._id;
83271
- return arguments.length ? this.each(easeConstant(id30, value)) : get(this.node(), id30).ease;
83339
+ var id28 = this._id;
83340
+ return arguments.length ? this.each(easeConstant(id28, value)) : get(this.node(), id28).ease;
83272
83341
  }
83273
- function easeVarying(id30, value) {
83342
+ function easeVarying(id28, value) {
83274
83343
  return function() {
83275
83344
  var v2 = value.apply(this, arguments);
83276
83345
  if (typeof v2 !== "function") throw new Error();
83277
- set$1(this, id30).ease = v2;
83346
+ set$1(this, id28).ease = v2;
83278
83347
  };
83279
83348
  }
83280
83349
  function transition_easeVarying(value) {
@@ -83313,22 +83382,22 @@ function start(name) {
83313
83382
  return !t2 || t2 === "start";
83314
83383
  });
83315
83384
  }
83316
- function onFunction(id30, name, listener) {
83385
+ function onFunction(id28, name, listener) {
83317
83386
  var on0, on1, sit = start(name) ? init$1 : set$1;
83318
83387
  return function() {
83319
- var schedule2 = sit(this, id30), on = schedule2.on;
83388
+ var schedule2 = sit(this, id28), on = schedule2.on;
83320
83389
  if (on !== on0) (on1 = (on0 = on).copy()).on(name, listener);
83321
83390
  schedule2.on = on1;
83322
83391
  };
83323
83392
  }
83324
83393
  function transition_on(name, listener) {
83325
- var id30 = this._id;
83326
- return arguments.length < 2 ? get(this.node(), id30).on.on(name) : this.each(onFunction(id30, name, listener));
83394
+ var id28 = this._id;
83395
+ return arguments.length < 2 ? get(this.node(), id28).on.on(name) : this.each(onFunction(id28, name, listener));
83327
83396
  }
83328
- function removeFunction(id30) {
83397
+ function removeFunction(id28) {
83329
83398
  return function() {
83330
83399
  var parent = this.parentNode;
83331
- for (var i2 in this.__transition) if (+i2 !== id30) return;
83400
+ for (var i2 in this.__transition) if (+i2 !== id28) return;
83332
83401
  if (parent) parent.removeChild(this);
83333
83402
  };
83334
83403
  }
@@ -83336,28 +83405,28 @@ function transition_remove() {
83336
83405
  return this.on("end.remove", removeFunction(this._id));
83337
83406
  }
83338
83407
  function transition_select(select2) {
83339
- var name = this._name, id30 = this._id;
83408
+ var name = this._name, id28 = this._id;
83340
83409
  if (typeof select2 !== "function") select2 = selector(select2);
83341
83410
  for (var groups = this._groups, m2 = groups.length, subgroups = new Array(m2), j2 = 0; j2 < m2; ++j2) {
83342
83411
  for (var group = groups[j2], n2 = group.length, subgroup = subgroups[j2] = new Array(n2), node2, subnode, i2 = 0; i2 < n2; ++i2) {
83343
83412
  if ((node2 = group[i2]) && (subnode = select2.call(node2, node2.__data__, i2, group))) {
83344
83413
  if ("__data__" in node2) subnode.__data__ = node2.__data__;
83345
83414
  subgroup[i2] = subnode;
83346
- schedule(subgroup[i2], name, id30, i2, subgroup, get(node2, id30));
83415
+ schedule(subgroup[i2], name, id28, i2, subgroup, get(node2, id28));
83347
83416
  }
83348
83417
  }
83349
83418
  }
83350
- return new Transition(subgroups, this._parents, name, id30);
83419
+ return new Transition(subgroups, this._parents, name, id28);
83351
83420
  }
83352
83421
  function transition_selectAll(select2) {
83353
- var name = this._name, id30 = this._id;
83422
+ var name = this._name, id28 = this._id;
83354
83423
  if (typeof select2 !== "function") select2 = selectorAll(select2);
83355
83424
  for (var groups = this._groups, m2 = groups.length, subgroups = [], parents = [], j2 = 0; j2 < m2; ++j2) {
83356
83425
  for (var group = groups[j2], n2 = group.length, node2, i2 = 0; i2 < n2; ++i2) {
83357
83426
  if (node2 = group[i2]) {
83358
- for (var children2 = select2.call(node2, node2.__data__, i2, group), child, inherit2 = get(node2, id30), k2 = 0, l4 = children2.length; k2 < l4; ++k2) {
83427
+ for (var children2 = select2.call(node2, node2.__data__, i2, group), child, inherit2 = get(node2, id28), k2 = 0, l4 = children2.length; k2 < l4; ++k2) {
83359
83428
  if (child = children2[k2]) {
83360
- schedule(child, name, id30, k2, children2, inherit2);
83429
+ schedule(child, name, id28, k2, children2, inherit2);
83361
83430
  }
83362
83431
  }
83363
83432
  subgroups.push(children2);
@@ -83365,7 +83434,7 @@ function transition_selectAll(select2) {
83365
83434
  }
83366
83435
  }
83367
83436
  }
83368
- return new Transition(subgroups, parents, name, id30);
83437
+ return new Transition(subgroups, parents, name, id28);
83369
83438
  }
83370
83439
  var Selection = selection.prototype.constructor;
83371
83440
  function transition_selection() {
@@ -83398,10 +83467,10 @@ function styleFunction(name, interpolate2, value) {
83398
83467
  return string0 === string1 ? null : string0 === string00 && string1 === string10 ? interpolate0 : (string10 = string1, interpolate0 = interpolate2(string00 = string0, value1));
83399
83468
  };
83400
83469
  }
83401
- function styleMaybeRemove(id30, name) {
83470
+ function styleMaybeRemove(id28, name) {
83402
83471
  var on0, on1, listener0, key = "style." + name, event = "end." + key, remove2;
83403
83472
  return function() {
83404
- var schedule2 = set$1(this, id30), on = schedule2.on, listener = schedule2.value[key] == null ? remove2 || (remove2 = styleRemove(name)) : void 0;
83473
+ var schedule2 = set$1(this, id28), on = schedule2.on, listener = schedule2.value[key] == null ? remove2 || (remove2 = styleRemove(name)) : void 0;
83405
83474
  if (on !== on0 || listener0 !== listener) (on1 = (on0 = on).copy()).on(event, listener0 = listener);
83406
83475
  schedule2.on = on1;
83407
83476
  };
@@ -83486,13 +83555,13 @@ function transition_transition() {
83486
83555
  return new Transition(groups, this._parents, name, id1);
83487
83556
  }
83488
83557
  function transition_end() {
83489
- var on0, on1, that = this, id30 = that._id, size = that.size();
83558
+ var on0, on1, that = this, id28 = that._id, size = that.size();
83490
83559
  return new Promise(function(resolve, reject) {
83491
83560
  var cancel = { value: reject }, end = { value: function() {
83492
83561
  if (--size === 0) resolve();
83493
83562
  } };
83494
83563
  that.each(function() {
83495
- var schedule2 = set$1(this, id30), on = schedule2.on;
83564
+ var schedule2 = set$1(this, id28), on = schedule2.on;
83496
83565
  if (on !== on0) {
83497
83566
  on1 = (on0 = on).copy();
83498
83567
  on1._.cancel.push(cancel);
@@ -83505,11 +83574,11 @@ function transition_end() {
83505
83574
  });
83506
83575
  }
83507
83576
  var id$2 = 0;
83508
- function Transition(groups, parents, name, id30) {
83577
+ function Transition(groups, parents, name, id28) {
83509
83578
  this._groups = groups;
83510
83579
  this._parents = parents;
83511
83580
  this._name = name;
83512
- this._id = id30;
83581
+ this._id = id28;
83513
83582
  }
83514
83583
  function newId() {
83515
83584
  return ++id$2;
@@ -83557,30 +83626,30 @@ var defaultTiming = {
83557
83626
  duration: 250,
83558
83627
  ease: cubicInOut
83559
83628
  };
83560
- function inherit(node2, id30) {
83629
+ function inherit(node2, id28) {
83561
83630
  var timing;
83562
- while (!(timing = node2.__transition) || !(timing = timing[id30])) {
83631
+ while (!(timing = node2.__transition) || !(timing = timing[id28])) {
83563
83632
  if (!(node2 = node2.parentNode)) {
83564
- throw new Error(`transition ${id30} not found`);
83633
+ throw new Error(`transition ${id28} not found`);
83565
83634
  }
83566
83635
  }
83567
83636
  return timing;
83568
83637
  }
83569
83638
  function selection_transition(name) {
83570
- var id30, timing;
83639
+ var id28, timing;
83571
83640
  if (name instanceof Transition) {
83572
- id30 = name._id, name = name._name;
83641
+ id28 = name._id, name = name._name;
83573
83642
  } else {
83574
- id30 = newId(), (timing = defaultTiming).time = now(), name = name == null ? null : name + "";
83643
+ id28 = newId(), (timing = defaultTiming).time = now(), name = name == null ? null : name + "";
83575
83644
  }
83576
83645
  for (var groups = this._groups, m2 = groups.length, j2 = 0; j2 < m2; ++j2) {
83577
83646
  for (var group = groups[j2], n2 = group.length, node2, i2 = 0; i2 < n2; ++i2) {
83578
83647
  if (node2 = group[i2]) {
83579
- schedule(node2, name, id30, i2, group, timing || inherit(node2, id30));
83648
+ schedule(node2, name, id28, i2, group, timing || inherit(node2, id28));
83580
83649
  }
83581
83650
  }
83582
83651
  }
83583
- return new Transition(groups, this._parents, name, id30);
83652
+ return new Transition(groups, this._parents, name, id28);
83584
83653
  }
83585
83654
  selection.prototype.interrupt = selection_interrupt;
83586
83655
  selection.prototype.transition = selection_transition;
@@ -84685,15 +84754,15 @@ Transform.prototype = {
84685
84754
  }
84686
84755
  };
84687
84756
  Transform.prototype;
84688
- var selectSvgElement = /* @__PURE__ */ __name((id30) => {
84757
+ var selectSvgElement = /* @__PURE__ */ __name((id28) => {
84689
84758
  const { securityLevel } = getConfig2();
84690
84759
  let root2 = select("body");
84691
84760
  if (securityLevel === "sandbox") {
84692
- const sandboxElement = select(`#i${id30}`);
84761
+ const sandboxElement = select(`#i${id28}`);
84693
84762
  const doc = sandboxElement.node()?.contentDocument ?? document;
84694
84763
  root2 = select(doc.body);
84695
84764
  }
84696
- const svg2 = root2.select(`#${id30}`);
84765
+ const svg2 = root2.select(`#${id28}`);
84697
84766
  return svg2;
84698
84767
  }, "selectSvgElement");
84699
84768
  function isNothing(subject) {
@@ -85616,19 +85685,6 @@ function charFromCodepoint(c2) {
85616
85685
  );
85617
85686
  }
85618
85687
  __name(charFromCodepoint, "charFromCodepoint");
85619
- function setProperty(object, key, value) {
85620
- if (key === "__proto__") {
85621
- Object.defineProperty(object, key, {
85622
- configurable: true,
85623
- enumerable: true,
85624
- writable: true,
85625
- value
85626
- });
85627
- } else {
85628
- object[key] = value;
85629
- }
85630
- }
85631
- __name(setProperty, "setProperty");
85632
85688
  var simpleEscapeCheck = new Array(256);
85633
85689
  var simpleEscapeMap = new Array(256);
85634
85690
  for (i$1 = 0; i$1 < 256; i$1++) {
@@ -85753,7 +85809,7 @@ function mergeMappings(state2, destination, source, overridableKeys) {
85753
85809
  for (index = 0, quantity = sourceKeys.length; index < quantity; index += 1) {
85754
85810
  key = sourceKeys[index];
85755
85811
  if (!_hasOwnProperty$1.call(destination, key)) {
85756
- setProperty(destination, key, source[key]);
85812
+ destination[key] = source[key];
85757
85813
  overridableKeys[key] = true;
85758
85814
  }
85759
85815
  }
@@ -85794,7 +85850,16 @@ function storeMappingPair(state2, _result, overridableKeys, keyTag, keyNode, val
85794
85850
  state2.position = startPos || state2.position;
85795
85851
  throwError(state2, "duplicated mapping key");
85796
85852
  }
85797
- setProperty(_result, keyNode, valueNode);
85853
+ if (keyNode === "__proto__") {
85854
+ Object.defineProperty(_result, keyNode, {
85855
+ configurable: true,
85856
+ enumerable: true,
85857
+ writable: true,
85858
+ value: valueNode
85859
+ });
85860
+ } else {
85861
+ _result[keyNode] = valueNode;
85862
+ }
85798
85863
  delete overridableKeys[keyNode];
85799
85864
  }
85800
85865
  return _result;
@@ -87386,14 +87451,6 @@ function renamed(from2, to) {
87386
87451
  __name(renamed, "renamed");
87387
87452
  var JSON_SCHEMA = json;
87388
87453
  var load = loader$1.load;
87389
- var computeLabelTransform = /* @__PURE__ */ __name((bbox, useHtmlLabels) => {
87390
- if (useHtmlLabels) {
87391
- return "translate(" + -bbox.width / 2 + ", " + -bbox.height / 2 + ")";
87392
- }
87393
- const x2 = bbox.x ?? 0;
87394
- const y3 = bbox.y ?? 0;
87395
- return "translate(" + -(x2 + bbox.width / 2) + ", " + -(y3 + bbox.height / 2) + ")";
87396
- }, "computeLabelTransform");
87397
87454
  var markerOffsets = {
87398
87455
  aggregation: 17.25,
87399
87456
  extension: 17.25,
@@ -87503,6 +87560,113 @@ var getLineFunctionsWithOffset = /* @__PURE__ */ __name((edge) => {
87503
87560
  }, "y")
87504
87561
  };
87505
87562
  }, "getLineFunctionsWithOffset");
87563
+ var getSubGraphTitleMargins = /* @__PURE__ */ __name(({
87564
+ flowchart
87565
+ }) => {
87566
+ const subGraphTitleTopMargin = flowchart?.subGraphTitleMargin?.top ?? 0;
87567
+ const subGraphTitleBottomMargin = flowchart?.subGraphTitleMargin?.bottom ?? 0;
87568
+ const subGraphTitleTotalMargin = subGraphTitleTopMargin + subGraphTitleBottomMargin;
87569
+ return {
87570
+ subGraphTitleTopMargin,
87571
+ subGraphTitleBottomMargin,
87572
+ subGraphTitleTotalMargin
87573
+ };
87574
+ }, "getSubGraphTitleMargins");
87575
+ var solidStateFill = /* @__PURE__ */ __name((color2) => {
87576
+ const { handDrawnSeed } = getConfig2();
87577
+ return {
87578
+ fill: color2,
87579
+ hachureAngle: 120,
87580
+ // angle of hachure,
87581
+ hachureGap: 4,
87582
+ fillWeight: 2,
87583
+ roughness: 0.7,
87584
+ stroke: color2,
87585
+ seed: handDrawnSeed
87586
+ };
87587
+ }, "solidStateFill");
87588
+ var compileStyles = /* @__PURE__ */ __name((node2) => {
87589
+ const stylesMap = styles2Map([
87590
+ ...node2.cssCompiledStyles || [],
87591
+ ...node2.cssStyles || [],
87592
+ ...node2.labelStyle || []
87593
+ ]);
87594
+ return { stylesMap, stylesArray: [...stylesMap] };
87595
+ }, "compileStyles");
87596
+ var styles2Map = /* @__PURE__ */ __name((styles2) => {
87597
+ const styleMap2 = /* @__PURE__ */ new Map();
87598
+ styles2.forEach((style2) => {
87599
+ const [key, value] = style2.split(":");
87600
+ styleMap2.set(key.trim(), value?.trim());
87601
+ });
87602
+ return styleMap2;
87603
+ }, "styles2Map");
87604
+ var isLabelStyle = /* @__PURE__ */ __name((key) => {
87605
+ return key === "color" || key === "font-size" || key === "font-family" || key === "font-weight" || key === "font-style" || key === "text-decoration" || key === "text-align" || key === "text-transform" || key === "line-height" || key === "letter-spacing" || key === "word-spacing" || key === "text-shadow" || key === "text-overflow" || key === "white-space" || key === "word-wrap" || key === "word-break" || key === "overflow-wrap" || key === "hyphens";
87606
+ }, "isLabelStyle");
87607
+ var styles2String = /* @__PURE__ */ __name((node2) => {
87608
+ const { stylesArray } = compileStyles(node2);
87609
+ const labelStyles = [];
87610
+ const nodeStyles = [];
87611
+ const borderStyles = [];
87612
+ const backgroundStyles = [];
87613
+ stylesArray.forEach((style2) => {
87614
+ const key = style2[0];
87615
+ if (isLabelStyle(key)) {
87616
+ labelStyles.push(style2.join(":") + " !important");
87617
+ } else {
87618
+ nodeStyles.push(style2.join(":") + " !important");
87619
+ if (key.includes("stroke")) {
87620
+ borderStyles.push(style2.join(":") + " !important");
87621
+ }
87622
+ if (key === "fill") {
87623
+ backgroundStyles.push(style2.join(":") + " !important");
87624
+ }
87625
+ }
87626
+ });
87627
+ return {
87628
+ labelStyles: labelStyles.join(";"),
87629
+ nodeStyles: nodeStyles.join(";"),
87630
+ stylesArray,
87631
+ borderStyles,
87632
+ backgroundStyles
87633
+ };
87634
+ }, "styles2String");
87635
+ var userNodeOverrides = /* @__PURE__ */ __name((node2, options) => {
87636
+ const { themeVariables, handDrawnSeed } = getConfig2();
87637
+ const { nodeBorder, mainBkg } = themeVariables;
87638
+ const { stylesMap } = compileStyles(node2);
87639
+ const result = Object.assign(
87640
+ {
87641
+ roughness: 0.7,
87642
+ fill: stylesMap.get("fill") || mainBkg,
87643
+ fillStyle: "hachure",
87644
+ // solid fill
87645
+ fillWeight: 4,
87646
+ hachureGap: 5.2,
87647
+ stroke: stylesMap.get("stroke") || nodeBorder,
87648
+ seed: handDrawnSeed,
87649
+ strokeWidth: stylesMap.get("stroke-width")?.replace("px", "") || 1.3,
87650
+ fillLineDash: [0, 0],
87651
+ strokeLineDash: getStrokeDashArray(stylesMap.get("stroke-dasharray"))
87652
+ },
87653
+ options
87654
+ );
87655
+ return result;
87656
+ }, "userNodeOverrides");
87657
+ var getStrokeDashArray = /* @__PURE__ */ __name((strokeDasharrayStyle) => {
87658
+ if (!strokeDasharrayStyle) {
87659
+ return [0, 0];
87660
+ }
87661
+ const dashArray = strokeDasharrayStyle.trim().split(/\s+/).map(Number);
87662
+ if (dashArray.length === 1) {
87663
+ const val = isNaN(dashArray[0]) ? 0 : dashArray[0];
87664
+ return [val, val];
87665
+ }
87666
+ const first = isNaN(dashArray[0]) ? 0 : dashArray[0];
87667
+ const second = isNaN(dashArray[1]) ? 0 : dashArray[1];
87668
+ return [first, second];
87669
+ }, "getStrokeDashArray");
87506
87670
  var dist$1 = {};
87507
87671
  var constants = {};
87508
87672
  var hasRequiredConstants;
@@ -88834,9 +88998,9 @@ var getEdgeId = /* @__PURE__ */ __name((from2, to, {
88834
88998
  counter = 0,
88835
88999
  prefix,
88836
89000
  suffix
88837
- }, id30) => {
88838
- if (id30) {
88839
- return id30;
89001
+ }, id28) => {
89002
+ if (id28) {
89003
+ return id28;
88840
89004
  }
88841
89005
  return `${prefix ? `${prefix}_` : ""}${from2}_${to}_${counter}${suffix ? `_${suffix}` : ""}`;
88842
89006
  }, "getEdgeId");
@@ -88854,150 +89018,6 @@ function isLabelCoordinateInPath(point2, dAttr) {
88854
89018
  return sanitizedD.includes(roundedX.toString()) || sanitizedD.includes(roundedY.toString());
88855
89019
  }
88856
89020
  __name(isLabelCoordinateInPath, "isLabelCoordinateInPath");
88857
- var getSubGraphTitleMargins = /* @__PURE__ */ __name(({
88858
- flowchart
88859
- }) => {
88860
- const subGraphTitleTopMargin = flowchart?.subGraphTitleMargin?.top ?? 0;
88861
- const subGraphTitleBottomMargin = flowchart?.subGraphTitleMargin?.bottom ?? 0;
88862
- const subGraphTitleTotalMargin = subGraphTitleTopMargin + subGraphTitleBottomMargin;
88863
- return {
88864
- subGraphTitleTopMargin,
88865
- subGraphTitleBottomMargin,
88866
- subGraphTitleTotalMargin
88867
- };
88868
- }, "getSubGraphTitleMargins");
88869
- async function configureLabelImages(container, labelText) {
88870
- const images = container.getElementsByTagName("img");
88871
- if (!images || images.length === 0) {
88872
- return;
88873
- }
88874
- const noImgText = labelText.replace(/<img[^>]*>/g, "").trim() === "";
88875
- await Promise.all(
88876
- [...images].map(
88877
- (img) => new Promise((res) => {
88878
- function setupImage() {
88879
- img.style.display = "flex";
88880
- img.style.flexDirection = "column";
88881
- if (noImgText) {
88882
- const bodyFontSize = getConfig2().fontSize ? getConfig2().fontSize : window.getComputedStyle(document.body).fontSize;
88883
- const enlargingFactor = 5;
88884
- const [parsedBodyFontSize = defaultConfig_default.fontSize] = parseFontSize(bodyFontSize);
88885
- const width = parsedBodyFontSize * enlargingFactor + "px";
88886
- img.style.minWidth = width;
88887
- img.style.maxWidth = width;
88888
- } else {
88889
- img.style.width = "100%";
88890
- }
88891
- res(img);
88892
- }
88893
- __name(setupImage, "setupImage");
88894
- setTimeout(() => {
88895
- if (img.complete) {
88896
- setupImage();
88897
- }
88898
- });
88899
- img.addEventListener("error", setupImage);
88900
- img.addEventListener("load", setupImage);
88901
- })
88902
- )
88903
- );
88904
- }
88905
- __name(configureLabelImages, "configureLabelImages");
88906
- var solidStateFill = /* @__PURE__ */ __name((color2) => {
88907
- const { handDrawnSeed } = getConfig2();
88908
- return {
88909
- fill: color2,
88910
- hachureAngle: 120,
88911
- // angle of hachure,
88912
- hachureGap: 4,
88913
- fillWeight: 2,
88914
- roughness: 0.7,
88915
- stroke: color2,
88916
- seed: handDrawnSeed
88917
- };
88918
- }, "solidStateFill");
88919
- var compileStyles = /* @__PURE__ */ __name((node2) => {
88920
- const stylesMap = styles2Map([
88921
- ...node2.cssCompiledStyles || [],
88922
- ...node2.cssStyles || [],
88923
- ...node2.labelStyle || []
88924
- ]);
88925
- return { stylesMap, stylesArray: [...stylesMap] };
88926
- }, "compileStyles");
88927
- var styles2Map = /* @__PURE__ */ __name((styles2) => {
88928
- const styleMap2 = /* @__PURE__ */ new Map();
88929
- styles2.forEach((style2) => {
88930
- const [key, value] = style2.split(":");
88931
- styleMap2.set(key.trim(), value?.trim());
88932
- });
88933
- return styleMap2;
88934
- }, "styles2Map");
88935
- var isLabelStyle = /* @__PURE__ */ __name((key) => {
88936
- return key === "color" || key === "font-size" || key === "font-family" || key === "font-weight" || key === "font-style" || key === "text-decoration" || key === "text-align" || key === "text-transform" || key === "line-height" || key === "letter-spacing" || key === "word-spacing" || key === "text-shadow" || key === "text-overflow" || key === "white-space" || key === "word-wrap" || key === "word-break" || key === "overflow-wrap" || key === "hyphens";
88937
- }, "isLabelStyle");
88938
- var styles2String = /* @__PURE__ */ __name((node2) => {
88939
- const { stylesArray } = compileStyles(node2);
88940
- const labelStyles = [];
88941
- const nodeStyles = [];
88942
- const borderStyles = [];
88943
- const backgroundStyles = [];
88944
- stylesArray.forEach((style2) => {
88945
- const key = style2[0];
88946
- if (isLabelStyle(key)) {
88947
- labelStyles.push(style2.join(":") + " !important");
88948
- } else {
88949
- nodeStyles.push(style2.join(":") + " !important");
88950
- if (key.includes("stroke")) {
88951
- borderStyles.push(style2.join(":") + " !important");
88952
- }
88953
- if (key === "fill") {
88954
- backgroundStyles.push(style2.join(":") + " !important");
88955
- }
88956
- }
88957
- });
88958
- return {
88959
- labelStyles: labelStyles.join(";"),
88960
- nodeStyles: nodeStyles.join(";"),
88961
- stylesArray,
88962
- borderStyles,
88963
- backgroundStyles
88964
- };
88965
- }, "styles2String");
88966
- var userNodeOverrides = /* @__PURE__ */ __name((node2, options) => {
88967
- const { themeVariables, handDrawnSeed } = getConfig2();
88968
- const { nodeBorder, mainBkg } = themeVariables;
88969
- const { stylesMap } = compileStyles(node2);
88970
- const result = Object.assign(
88971
- {
88972
- roughness: 0.7,
88973
- fill: stylesMap.get("fill") || mainBkg,
88974
- fillStyle: "hachure",
88975
- // solid fill
88976
- fillWeight: 4,
88977
- hachureGap: 5.2,
88978
- stroke: stylesMap.get("stroke") || nodeBorder,
88979
- seed: handDrawnSeed,
88980
- strokeWidth: stylesMap.get("stroke-width")?.replace("px", "") || 1.3,
88981
- fillLineDash: [0, 0],
88982
- strokeLineDash: getStrokeDashArray(stylesMap.get("stroke-dasharray"))
88983
- },
88984
- options
88985
- );
88986
- return result;
88987
- }, "userNodeOverrides");
88988
- var getStrokeDashArray = /* @__PURE__ */ __name((strokeDasharrayStyle) => {
88989
- if (!strokeDasharrayStyle) {
88990
- return [0, 0];
88991
- }
88992
- const dashArray = strokeDasharrayStyle.trim().split(/\s+/).map(Number);
88993
- if (dashArray.length === 1) {
88994
- const val = isNaN(dashArray[0]) ? 0 : dashArray[0];
88995
- return [val, val];
88996
- }
88997
- const first = isNaN(dashArray[0]) ? 0 : dashArray[0];
88998
- const second = isNaN(dashArray[1]) ? 0 : dashArray[1];
88999
- return [first, second];
89000
- }, "getStrokeDashArray");
89001
89021
  const defaultIconDimensions = Object.freeze({
89002
89022
  left: 0,
89003
89023
  top: 0,
@@ -89260,11 +89280,11 @@ function iconToSVG(icon2, customisations) {
89260
89280
  }
89261
89281
  const regex = /\sid="(\S+)"/g;
89262
89282
  const counters = /* @__PURE__ */ new Map();
89263
- function nextID(id30) {
89264
- id30 = id30.replace(/[0-9]+$/, "") || "a";
89265
- const count = counters.get(id30) || 0;
89266
- counters.set(id30, count + 1);
89267
- return count ? `${id30}${count}` : id30;
89283
+ function nextID(id28) {
89284
+ id28 = id28.replace(/[0-9]+$/, "") || "a";
89285
+ const count = counters.get(id28) || 0;
89286
+ counters.set(id28, count + 1);
89287
+ return count ? `${id28}${count}` : id28;
89268
89288
  }
89269
89289
  function replaceIDs(body) {
89270
89290
  const ids = [];
@@ -89272,9 +89292,9 @@ function replaceIDs(body) {
89272
89292
  while (match2 = regex.exec(body)) ids.push(match2[1]);
89273
89293
  if (!ids.length) return body;
89274
89294
  const suffix = "suffix" + (Math.random() * 16777216 | Date.now()).toString(16);
89275
- ids.forEach((id30) => {
89276
- const newID = nextID(id30);
89277
- const escapedID = id30.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
89295
+ ids.forEach((id28) => {
89296
+ const newID = nextID(id28);
89297
+ const escapedID = id28.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
89278
89298
  body = body.replace(new RegExp('([#;"])(' + escapedID + ')([")]|\\.[a-z])', "g"), "$1" + newID + suffix + "$3");
89279
89299
  });
89280
89300
  body = body.replace(new RegExp(suffix, "g"), "");
@@ -90451,12 +90471,12 @@ var getRegisteredIconData = /* @__PURE__ */ __name(async (iconName, fallbackPref
90451
90471
  }
90452
90472
  let icons = iconsStore.get(prefix);
90453
90473
  if (!icons) {
90454
- const loader30 = loaderStore.get(prefix);
90455
- if (!loader30) {
90474
+ const loader28 = loaderStore.get(prefix);
90475
+ if (!loader28) {
90456
90476
  throw new Error(`Icon set not found: ${data.prefix}`);
90457
90477
  }
90458
90478
  try {
90459
- const loaded = await loader30();
90479
+ const loaded = await loader28();
90460
90480
  icons = { ...loaded, prefix };
90461
90481
  iconsStore.set(prefix, icons);
90462
90482
  } catch (e2) {
@@ -90497,15 +90517,12 @@ function preprocessMarkdown(markdown, { markdownAutoWrap }) {
90497
90517
  const withoutBR = markdown.replace(/<br\/>/g, "\n");
90498
90518
  const withoutMultipleNewlines = withoutBR.replace(/\n{2,}/g, "\n");
90499
90519
  const withoutExtraSpaces = dedent(withoutMultipleNewlines);
90520
+ if (markdownAutoWrap === false) {
90521
+ return withoutExtraSpaces.replace(/ /g, "&nbsp;");
90522
+ }
90500
90523
  return withoutExtraSpaces;
90501
90524
  }
90502
90525
  __name(preprocessMarkdown, "preprocessMarkdown");
90503
- function nonMarkdownToLines(nonMarkdownText) {
90504
- return nonMarkdownText.split(/\\n|\n|<br\s*\/?>/gi).map(
90505
- (line2) => line2.trim().match(/<[^>]+>|[^\s<>]+/g)?.map((word) => ({ content: word, type: "normal" })) ?? []
90506
- );
90507
- }
90508
- __name(nonMarkdownToLines, "nonMarkdownToLines");
90509
90526
  function markdownToLines(markdown, config2 = {}) {
90510
90527
  const preprocessedMarkdown = preprocessMarkdown(markdown, config2);
90511
90528
  const nodes = k$1.lexer(preprocessedMarkdown);
@@ -90549,18 +90566,6 @@ function markdownToLines(markdown, config2 = {}) {
90549
90566
  return lines;
90550
90567
  }
90551
90568
  __name(markdownToLines, "markdownToLines");
90552
- function nonMarkdownToHTML(text2) {
90553
- if (!text2) {
90554
- return "";
90555
- }
90556
- return `<p>${/**
90557
- * Replace new lines with <br /> tags.
90558
- *
90559
- * Unlike in markdown text, `\n` sequences are treated as line breaks here.
90560
- */
90561
- text2.replace(/\\n|\n/g, "<br />")}</p>`;
90562
- }
90563
- __name(nonMarkdownToHTML, "nonMarkdownToHTML");
90564
90569
  function markdownToHTML(markdown, { markdownAutoWrap } = {}) {
90565
90570
  const nodes = k$1.lexer(markdown);
90566
90571
  function output(node2) {
@@ -90664,32 +90669,29 @@ function splitLineToFitWidthRecursion(words, checkFit, lines = [], newLine = [])
90664
90669
  return splitLineToFitWidthRecursion(words, checkFit, lines);
90665
90670
  }
90666
90671
  __name(splitLineToFitWidthRecursion, "splitLineToFitWidthRecursion");
90667
- function applyStyle(dom, styleFn) {
90672
+ function applyStyle$1(dom, styleFn) {
90668
90673
  if (styleFn) {
90669
90674
  dom.attr("style", styleFn);
90670
90675
  }
90671
90676
  }
90672
- __name(applyStyle, "applyStyle");
90673
- var maxSafeSizeForWidth = 16384;
90677
+ __name(applyStyle$1, "applyStyle");
90674
90678
  async function addHtmlSpan(element, node2, width, classes, addBackground = false, config2 = getConfig()) {
90675
90679
  const fo = element.append("foreignObject");
90676
- fo.attr("width", `${Math.min(10 * width, maxSafeSizeForWidth)}px`);
90677
- fo.attr("height", `${Math.min(10 * width, maxSafeSizeForWidth)}px`);
90680
+ fo.attr("width", `${10 * width}px`);
90681
+ fo.attr("height", `${10 * width}px`);
90678
90682
  const div = fo.append("xhtml:div");
90679
90683
  const sanitizedLabel = hasKatex(node2.label) ? await renderKatexSanitized(node2.label.replace(common_default.lineBreakRegex, "\n"), config2) : sanitizeText(node2.label, config2);
90680
90684
  const labelClass = node2.isNode ? "nodeLabel" : "edgeLabel";
90681
90685
  const span = div.append("span");
90682
90686
  span.html(sanitizedLabel);
90683
- applyStyle(span, node2.labelStyle);
90687
+ applyStyle$1(span, node2.labelStyle);
90684
90688
  span.attr("class", `${labelClass} ${classes}`);
90685
- applyStyle(div, node2.labelStyle);
90689
+ applyStyle$1(div, node2.labelStyle);
90686
90690
  div.style("display", "table-cell");
90687
90691
  div.style("white-space", "nowrap");
90688
90692
  div.style("line-height", "1.5");
90689
- if (width !== Number.POSITIVE_INFINITY) {
90690
- div.style("max-width", width + "px");
90691
- div.style("text-align", "center");
90692
- }
90693
+ div.style("max-width", width + "px");
90694
+ div.style("text-align", "center");
90693
90695
  div.attr("xmlns", "http://www.w3.org/1999/xhtml");
90694
90696
  if (addBackground) {
90695
90697
  div.attr("class", "labelBkg");
@@ -90704,12 +90706,8 @@ async function addHtmlSpan(element, node2, width, classes, addBackground = false
90704
90706
  return fo.node();
90705
90707
  }
90706
90708
  __name(addHtmlSpan, "addHtmlSpan");
90707
- function createTspan(textElement, lineIndex, lineHeight, centerText = false) {
90708
- const tspan = textElement.append("tspan").attr("class", "text-outer-tspan").attr("x", 0).attr("y", lineIndex * lineHeight - 0.1 + "em").attr("dy", lineHeight + "em");
90709
- if (centerText) {
90710
- tspan.attr("text-anchor", "middle");
90711
- }
90712
- return tspan;
90709
+ function createTspan(textElement, lineIndex, lineHeight) {
90710
+ return textElement.append("tspan").attr("class", "text-outer-tspan").attr("x", 0).attr("y", lineIndex * lineHeight - 0.1 + "em").attr("dy", lineHeight + "em");
90713
90711
  }
90714
90712
  __name(createTspan, "createTspan");
90715
90713
  function computeWidthOfText(parentNode, lineHeight, line2) {
@@ -90732,20 +90730,17 @@ function computeDimensionOfText(parentNode, lineHeight, text2) {
90732
90730
  return textDimension;
90733
90731
  }
90734
90732
  __name(computeDimensionOfText, "computeDimensionOfText");
90735
- function createFormattedText(width, g2, structuredText, addBackground = false, centerText = false) {
90733
+ function createFormattedText(width, g2, structuredText, addBackground = false) {
90736
90734
  const lineHeight = 1.1;
90737
90735
  const labelGroup = g2.append("g");
90738
90736
  const bkg = labelGroup.insert("rect").attr("class", "background").attr("style", "stroke: none");
90739
90737
  const textElement = labelGroup.append("text").attr("y", "-10.1");
90740
- if (centerText) {
90741
- textElement.attr("text-anchor", "middle");
90742
- }
90743
90738
  let lineIndex = 0;
90744
90739
  for (const line2 of structuredText) {
90745
90740
  const checkWidth = /* @__PURE__ */ __name((line22) => computeWidthOfText(labelGroup, lineHeight, line22) <= width, "checkWidth");
90746
90741
  const linesUnderWidth = checkWidth(line2) ? [line2] : splitLineToFitWidth(line2, checkWidth);
90747
90742
  for (const preparedLine of linesUnderWidth) {
90748
- const tspan = createTspan(textElement, lineIndex, lineHeight, centerText);
90743
+ const tspan = createTspan(textElement, lineIndex, lineHeight);
90749
90744
  updateTextContentAndStyles(tspan, preparedLine);
90750
90745
  lineIndex++;
90751
90746
  }
@@ -90796,11 +90791,7 @@ var createText = /* @__PURE__ */ __name(async (el, text2 = "", {
90796
90791
  isTitle = false,
90797
90792
  classes = "",
90798
90793
  useHtmlLabels = true,
90799
- markdown = true,
90800
90794
  isNode = true,
90801
- /**
90802
- * The width to wrap the text within. Set to `Number.POSITIVE_INFINITY` for no wrapping.
90803
- */
90804
90795
  width = 200,
90805
90796
  addSvgBackground = false
90806
90797
  } = {}, config2) => {
@@ -90816,7 +90807,7 @@ var createText = /* @__PURE__ */ __name(async (el, text2 = "", {
90816
90807
  addSvgBackground
90817
90808
  );
90818
90809
  if (useHtmlLabels) {
90819
- const htmlText = markdown ? markdownToHTML(text2, config2) : nonMarkdownToHTML(text2);
90810
+ const htmlText = markdownToHTML(text2, config2);
90820
90811
  const decodedReplacedText = await replaceIconSubstring(decodeEntities(htmlText), config2);
90821
90812
  const inputForKatex = text2.replace(/\\\\/g, "\\");
90822
90813
  const node2 = {
@@ -90828,13 +90819,12 @@ var createText = /* @__PURE__ */ __name(async (el, text2 = "", {
90828
90819
  return vertexNode;
90829
90820
  } else {
90830
90821
  const sanitizeBR = text2.replace(/<br\s*\/?>/g, "<br/>");
90831
- const structuredText = markdown ? markdownToLines(sanitizeBR.replace("<br>", "<br/>"), config2) : nonMarkdownToLines(sanitizeBR);
90822
+ const structuredText = markdownToLines(sanitizeBR.replace("<br>", "<br/>"), config2);
90832
90823
  const svgLabel = createFormattedText(
90833
90824
  width,
90834
90825
  el,
90835
90826
  structuredText,
90836
- text2 ? addSvgBackground : false,
90837
- !isNode
90827
+ text2 ? addSvgBackground : false
90838
90828
  );
90839
90829
  if (isNode) {
90840
90830
  if (/stroke:/.exec(style2)) {
@@ -90848,11 +90838,6 @@ var createText = /* @__PURE__ */ __name(async (el, text2 = "", {
90848
90838
  const edgeLabelTextStyle = style2.replace(/stroke:[^;]+;?/g, "").replace(/stroke-width:[^;]+;?/g, "").replace(/fill:[^;]+;?/g, "").replace(/color:/g, "fill:");
90849
90839
  select(svgLabel).select("text").attr("style", edgeLabelTextStyle);
90850
90840
  }
90851
- if (isTitle) {
90852
- select(svgLabel).selectAll("tspan.text-outer-tspan").classed("title-row", true);
90853
- } else {
90854
- select(svgLabel).selectAll("tspan.text-outer-tspan").classed("row", true);
90855
- }
90856
90841
  return svgLabel;
90857
90842
  }
90858
90843
  }, "createText");
@@ -91870,28 +91855,52 @@ var labelHelper = /* @__PURE__ */ __name(async (parent, node2, _classes) => {
91870
91855
  } else {
91871
91856
  label = typeof node2.label === "string" ? node2.label : node2.label[0];
91872
91857
  }
91873
- const addBackground = !!node2.icon || !!node2.img;
91874
- const isMarkdown = node2.labelType === "markdown";
91875
- const text2 = await createText(
91876
- labelEl,
91877
- sanitizeText(decodeEntities(label), getConfig2()),
91878
- {
91879
- useHtmlLabels,
91880
- width: node2.width || getConfig2().flowchart?.wrappingWidth,
91881
- // @ts-expect-error -- This is currently not used. Should this be `classes` instead?
91882
- cssClasses: isMarkdown ? "markdown-node-label" : void 0,
91883
- style: node2.labelStyle,
91884
- addSvgBackground: addBackground,
91885
- markdown: isMarkdown
91886
- },
91887
- getConfig2()
91888
- );
91858
+ const text2 = await createText(labelEl, sanitizeText(decodeEntities(label), getConfig2()), {
91859
+ useHtmlLabels,
91860
+ width: node2.width || getConfig2().flowchart?.wrappingWidth,
91861
+ // @ts-expect-error -- This is currently not used. Should this be `classes` instead?
91862
+ cssClasses: "markdown-node-label",
91863
+ style: node2.labelStyle,
91864
+ addSvgBackground: !!node2.icon || !!node2.img
91865
+ });
91889
91866
  let bbox = text2.getBBox();
91890
91867
  const halfPadding = (node2?.padding ?? 0) / 2;
91891
91868
  if (useHtmlLabels) {
91892
91869
  const div = text2.children[0];
91893
91870
  const dv = select(text2);
91894
- await configureLabelImages(div, label);
91871
+ const images = div.getElementsByTagName("img");
91872
+ if (images) {
91873
+ const noImgText = label.replace(/<img[^>]*>/g, "").trim() === "";
91874
+ await Promise.all(
91875
+ [...images].map(
91876
+ (img) => new Promise((res) => {
91877
+ function setupImage() {
91878
+ img.style.display = "flex";
91879
+ img.style.flexDirection = "column";
91880
+ if (noImgText) {
91881
+ const bodyFontSize = getConfig2().fontSize ? getConfig2().fontSize : window.getComputedStyle(document.body).fontSize;
91882
+ const enlargingFactor = 5;
91883
+ const [parsedBodyFontSize = defaultConfig_default.fontSize] = parseFontSize(bodyFontSize);
91884
+ const width = parsedBodyFontSize * enlargingFactor + "px";
91885
+ img.style.minWidth = width;
91886
+ img.style.maxWidth = width;
91887
+ } else {
91888
+ img.style.width = "100%";
91889
+ }
91890
+ res(img);
91891
+ }
91892
+ __name(setupImage, "setupImage");
91893
+ setTimeout(() => {
91894
+ if (img.complete) {
91895
+ setupImage();
91896
+ }
91897
+ });
91898
+ img.addEventListener("error", setupImage);
91899
+ img.addEventListener("load", setupImage);
91900
+ })
91901
+ )
91902
+ );
91903
+ }
91895
91904
  bbox = div.getBoundingClientRect();
91896
91905
  dv.attr("width", bbox.width);
91897
91906
  dv.attr("height", bbox.height);
@@ -91908,7 +91917,7 @@ var labelHelper = /* @__PURE__ */ __name(async (parent, node2, _classes) => {
91908
91917
  return { shapeSvg, bbox, halfPadding, label: labelEl };
91909
91918
  }, "labelHelper");
91910
91919
  var insertLabel = /* @__PURE__ */ __name(async (parent, label, options) => {
91911
- const useHtmlLabels = options.useHtmlLabels ?? getEffectiveHtmlLabels(getConfig2());
91920
+ const useHtmlLabels = options.useHtmlLabels || evaluate(getConfig2()?.flowchart?.htmlLabels);
91912
91921
  const labelEl = parent.insert("g").attr("class", "label").attr("style", options.labelStyle || "");
91913
91922
  const text2 = await createText(labelEl, sanitizeText(decodeEntities(label), getConfig2()), {
91914
91923
  useHtmlLabels,
@@ -91918,7 +91927,7 @@ var insertLabel = /* @__PURE__ */ __name(async (parent, label, options) => {
91918
91927
  });
91919
91928
  let bbox = text2.getBBox();
91920
91929
  const halfPadding = options.padding / 2;
91921
- if (getEffectiveHtmlLabels(getConfig2())) {
91930
+ if (evaluate(getConfig2()?.flowchart?.htmlLabels)) {
91922
91931
  const div = text2.children[0];
91923
91932
  const dv = select(text2);
91924
91933
  bbox = div.getBoundingClientRect();
@@ -92004,26 +92013,76 @@ var intersectRect = /* @__PURE__ */ __name((node2, point2) => {
92004
92013
  return { x: x2 + sx, y: y3 + sy };
92005
92014
  }, "intersectRect");
92006
92015
  var intersect_rect_default = intersectRect;
92007
- var createLabel = /* @__PURE__ */ __name(async (element, _vertexText, style2, isTitle = false, isNode = false) => {
92016
+ function applyStyle(dom, styleFn) {
92017
+ if (styleFn) {
92018
+ dom.attr("style", styleFn);
92019
+ }
92020
+ }
92021
+ __name(applyStyle, "applyStyle");
92022
+ async function addHtmlLabel(node2) {
92023
+ const fo = select(document.createElementNS("http://www.w3.org/2000/svg", "foreignObject"));
92024
+ const div = fo.append("xhtml:div");
92025
+ const config2 = getConfig2();
92026
+ let label = node2.label;
92027
+ if (node2.label && hasKatex(node2.label)) {
92028
+ label = await renderKatexSanitized(node2.label.replace(common_default.lineBreakRegex, "\n"), config2);
92029
+ }
92030
+ const labelClass = node2.isNode ? "nodeLabel" : "edgeLabel";
92031
+ const labelSpan = '<span class="' + labelClass + '" ' + (node2.labelStyle ? 'style="' + node2.labelStyle + '"' : "") + // codeql [js/html-constructed-from-input] : false positive
92032
+ ">" + label + "</span>";
92033
+ div.html(sanitizeText(labelSpan, config2));
92034
+ applyStyle(div, node2.labelStyle);
92035
+ div.style("display", "inline-block");
92036
+ div.style("padding-right", "1px");
92037
+ div.style("white-space", "nowrap");
92038
+ div.attr("xmlns", "http://www.w3.org/1999/xhtml");
92039
+ return fo.node();
92040
+ }
92041
+ __name(addHtmlLabel, "addHtmlLabel");
92042
+ var createLabel = /* @__PURE__ */ __name(async (_vertexText, style2, isTitle, isNode) => {
92008
92043
  let vertexText = _vertexText || "";
92009
92044
  if (typeof vertexText === "object") {
92010
92045
  vertexText = vertexText[0];
92011
92046
  }
92012
- const config2 = getConfig2();
92013
- const useHtmlLabels = getEffectiveHtmlLabels(config2);
92014
- return await createText(
92015
- element,
92016
- vertexText,
92017
- {
92018
- style: style2,
92019
- isTitle,
92020
- useHtmlLabels,
92021
- markdown: false,
92047
+ if (evaluate(getConfig2().flowchart.htmlLabels)) {
92048
+ vertexText = vertexText.replace(/\\n|\n/g, "<br />");
92049
+ log.info("vertexText" + vertexText);
92050
+ const node2 = {
92022
92051
  isNode,
92023
- width: Number.POSITIVE_INFINITY
92024
- },
92025
- config2
92026
- );
92052
+ label: decodeEntities(vertexText).replace(
92053
+ /fa[blrs]?:fa-[\w-]+/g,
92054
+ (s2) => `<i class='${s2.replace(":", " ")}'></i>`
92055
+ ),
92056
+ labelStyle: style2 ? style2.replace("fill:", "color:") : style2
92057
+ };
92058
+ let vertexNode = await addHtmlLabel(node2);
92059
+ return vertexNode;
92060
+ } else {
92061
+ const svgLabel = document.createElementNS("http://www.w3.org/2000/svg", "text");
92062
+ svgLabel.setAttribute("style", style2.replace("color:", "fill:"));
92063
+ let rows = [];
92064
+ if (typeof vertexText === "string") {
92065
+ rows = vertexText.split(/\\n|\n|<br\s*\/?>/gi);
92066
+ } else if (Array.isArray(vertexText)) {
92067
+ rows = vertexText;
92068
+ } else {
92069
+ rows = [];
92070
+ }
92071
+ for (const row of rows) {
92072
+ const tspan = document.createElementNS("http://www.w3.org/2000/svg", "tspan");
92073
+ tspan.setAttributeNS("http://www.w3.org/XML/1998/namespace", "xml:space", "preserve");
92074
+ tspan.setAttribute("dy", "1em");
92075
+ tspan.setAttribute("x", "0");
92076
+ if (isTitle) {
92077
+ tspan.setAttribute("class", "title-row");
92078
+ } else {
92079
+ tspan.setAttribute("class", "row");
92080
+ }
92081
+ tspan.textContent = row.trim();
92082
+ svgLabel.appendChild(tspan);
92083
+ }
92084
+ return svgLabel;
92085
+ }
92027
92086
  }, "createLabel");
92028
92087
  var createLabel_default = createLabel;
92029
92088
  var createRoundedRectPathD = /* @__PURE__ */ __name((x2, y3, totalWidth, totalHeight, radius) => [
@@ -92089,21 +92148,15 @@ var rect = /* @__PURE__ */ __name(async (parent, node2) => {
92089
92148
  const { clusterBkg, clusterBorder } = themeVariables;
92090
92149
  const { labelStyles, nodeStyles, borderStyles, backgroundStyles } = styles2String(node2);
92091
92150
  const shapeSvg = parent.insert("g").attr("class", "cluster " + node2.cssClasses).attr("id", node2.id).attr("data-look", node2.look);
92092
- const useHtmlLabels = getEffectiveHtmlLabels(siteConfig2);
92151
+ const useHtmlLabels = evaluate(siteConfig2.flowchart.htmlLabels);
92093
92152
  const labelEl = shapeSvg.insert("g").attr("class", "cluster-label ");
92094
- let text2;
92095
- if (node2.labelType === "markdown") {
92096
- text2 = await createText(labelEl, node2.label, {
92097
- style: node2.labelStyle,
92098
- useHtmlLabels,
92099
- isNode: true,
92100
- width: node2.width
92101
- });
92102
- } else {
92103
- text2 = await createLabel_default(labelEl, node2.label, node2.labelStyle || "", false, true);
92104
- }
92153
+ const text2 = await createText(labelEl, node2.label, {
92154
+ style: node2.labelStyle,
92155
+ useHtmlLabels,
92156
+ isNode: true
92157
+ });
92105
92158
  let bbox = text2.getBBox();
92106
- if (getEffectiveHtmlLabels(siteConfig2)) {
92159
+ if (evaluate(siteConfig2.flowchart.htmlLabels)) {
92107
92160
  const div = text2.children[0];
92108
92161
  const dv = select(text2);
92109
92162
  bbox = div.getBoundingClientRect();
@@ -92186,9 +92239,9 @@ var roundedWithTitle = /* @__PURE__ */ __name(async (parent, node2) => {
92186
92239
  const outerRectG = shapeSvg.insert("g", ":first-child");
92187
92240
  const label = shapeSvg.insert("g").attr("class", "cluster-label");
92188
92241
  let innerRect = shapeSvg.append("rect");
92189
- const text2 = await createLabel_default(label, node2.label, node2.labelStyle, void 0, true);
92242
+ const text2 = label.node().appendChild(await createLabel_default(node2.label, node2.labelStyle, void 0, true));
92190
92243
  let bbox = text2.getBBox();
92191
- if (getEffectiveHtmlLabels(siteConfig2)) {
92244
+ if (evaluate(siteConfig2.flowchart.htmlLabels)) {
92192
92245
  const div = text2.children[0];
92193
92246
  const dv = select(text2);
92194
92247
  bbox = div.getBoundingClientRect();
@@ -92237,7 +92290,7 @@ var roundedWithTitle = /* @__PURE__ */ __name(async (parent, node2) => {
92237
92290
  }
92238
92291
  label.attr(
92239
92292
  "transform",
92240
- `translate(${node2.x - bbox.width / 2}, ${y3 + 1 - (getEffectiveHtmlLabels(siteConfig2) ? 0 : 3)})`
92293
+ `translate(${node2.x - bbox.width / 2}, ${y3 + 1 - (evaluate(siteConfig2.flowchart.htmlLabels) ? 0 : 3)})`
92241
92294
  );
92242
92295
  const rectBox = rect2.node().getBBox();
92243
92296
  node2.height = rectBox.height;
@@ -92256,7 +92309,7 @@ var kanbanSection = /* @__PURE__ */ __name(async (parent, node2) => {
92256
92309
  const { clusterBkg, clusterBorder } = themeVariables;
92257
92310
  const { labelStyles, nodeStyles, borderStyles, backgroundStyles } = styles2String(node2);
92258
92311
  const shapeSvg = parent.insert("g").attr("class", "cluster " + node2.cssClasses).attr("id", node2.id).attr("data-look", node2.look);
92259
- const useHtmlLabels = getEffectiveHtmlLabels(siteConfig2);
92312
+ const useHtmlLabels = evaluate(siteConfig2.flowchart.htmlLabels);
92260
92313
  const labelEl = shapeSvg.insert("g").attr("class", "cluster-label ");
92261
92314
  const text2 = await createText(labelEl, node2.label, {
92262
92315
  style: node2.labelStyle,
@@ -92265,7 +92318,7 @@ var kanbanSection = /* @__PURE__ */ __name(async (parent, node2) => {
92265
92318
  width: node2.width
92266
92319
  });
92267
92320
  let bbox = text2.getBBox();
92268
- if (getEffectiveHtmlLabels(siteConfig2)) {
92321
+ if (evaluate(siteConfig2.flowchart.htmlLabels)) {
92269
92322
  const div = text2.children[0];
92270
92323
  const dv = select(text2);
92271
92324
  bbox = div.getBoundingClientRect();
@@ -93377,49 +93430,44 @@ async function halfRoundedRectangle(parent, node2) {
93377
93430
  return shapeSvg;
93378
93431
  }
93379
93432
  __name(halfRoundedRectangle, "halfRoundedRectangle");
93380
- var createHexagonPathD = /* @__PURE__ */ __name((x2, y3, width, height, m2) => {
93381
- return [
93382
- `M${x2 + m2},${y3}`,
93383
- `L${x2 + width - m2},${y3}`,
93384
- `L${x2 + width},${y3 - height / 2}`,
93385
- `L${x2 + width - m2},${y3 - height}`,
93386
- `L${x2 + m2},${y3 - height}`,
93387
- `L${x2},${y3 - height / 2}`,
93388
- "Z"
93389
- ].join(" ");
93390
- }, "createHexagonPathD");
93391
93433
  async function hexagon(parent, node2) {
93392
93434
  const { labelStyles, nodeStyles } = styles2String(node2);
93393
93435
  node2.labelStyle = labelStyles;
93394
93436
  const { shapeSvg, bbox } = await labelHelper(parent, node2, getNodeClasses(node2));
93395
- const f2 = 4;
93396
- const h2 = bbox.height + node2.padding;
93397
- const m2 = h2 / f2;
93398
- const w2 = bbox.width + 2 * m2 + node2.padding;
93437
+ const h2 = bbox.height + (node2.padding ?? 0);
93438
+ const w2 = bbox.width + (node2.padding ?? 0) * 2.5;
93439
+ const { cssStyles } = node2;
93440
+ const rc = at.svg(shapeSvg);
93441
+ const options = userNodeOverrides(node2, {});
93442
+ if (node2.look !== "handDrawn") {
93443
+ options.roughness = 0;
93444
+ options.fillStyle = "solid";
93445
+ }
93446
+ let halfWidth = w2 / 2;
93447
+ const m2 = halfWidth / 6;
93448
+ halfWidth = halfWidth + m2;
93449
+ const halfHeight = h2 / 2;
93450
+ const fixedLength = halfHeight / 2;
93451
+ const deducedWidth = halfWidth - fixedLength;
93399
93452
  const points = [
93400
- { x: m2, y: 0 },
93401
- { x: w2 - m2, y: 0 },
93402
- { x: w2, y: -h2 / 2 },
93403
- { x: w2 - m2, y: -h2 },
93404
- { x: m2, y: -h2 },
93405
- { x: 0, y: -h2 / 2 }
93453
+ { x: -deducedWidth, y: -halfHeight },
93454
+ { x: 0, y: -halfHeight },
93455
+ { x: deducedWidth, y: -halfHeight },
93456
+ { x: halfWidth, y: 0 },
93457
+ { x: deducedWidth, y: halfHeight },
93458
+ { x: 0, y: halfHeight },
93459
+ { x: -deducedWidth, y: halfHeight },
93460
+ { x: -halfWidth, y: 0 }
93406
93461
  ];
93407
- let polygon;
93408
- const { cssStyles } = node2;
93409
- if (node2.look === "handDrawn") {
93410
- const rc = at.svg(shapeSvg);
93411
- const options = userNodeOverrides(node2, {});
93412
- const pathData = createHexagonPathD(0, 0, w2, h2, m2);
93413
- const roughNode = rc.path(pathData, options);
93414
- polygon = shapeSvg.insert(() => roughNode, ":first-child").attr("transform", `translate(${-w2 / 2}, ${h2 / 2})`);
93415
- if (cssStyles) {
93416
- polygon.attr("style", cssStyles);
93417
- }
93418
- } else {
93419
- polygon = insertPolygonShape(shapeSvg, w2, h2, points);
93462
+ const pathData = createPathFromPoints(points);
93463
+ const shapeNode = rc.path(pathData, options);
93464
+ const polygon = shapeSvg.insert(() => shapeNode, ":first-child");
93465
+ polygon.attr("class", "basic label-container");
93466
+ if (cssStyles && node2.look !== "handDrawn") {
93467
+ polygon.selectChildren("path").attr("style", cssStyles);
93420
93468
  }
93421
- if (nodeStyles) {
93422
- polygon.attr("style", nodeStyles);
93469
+ if (nodeStyles && node2.look !== "handDrawn") {
93470
+ polygon.selectChildren("path").attr("style", nodeStyles);
93423
93471
  }
93424
93472
  node2.width = w2;
93425
93473
  node2.height = h2;
@@ -94438,7 +94486,7 @@ __name(multiWaveEdgedRectangle, "multiWaveEdgedRectangle");
94438
94486
  async function note(parent, node2, { config: { themeVariables } }) {
94439
94487
  const { labelStyles, nodeStyles } = styles2String(node2);
94440
94488
  node2.labelStyle = labelStyles;
94441
- const useHtmlLabels = node2.useHtmlLabels || getEffectiveHtmlLabels(getConfig());
94489
+ const useHtmlLabels = node2.useHtmlLabels || getConfig().flowchart?.htmlLabels !== false;
94442
94490
  if (!useHtmlLabels) {
94443
94491
  node2.centerLabel = true;
94444
94492
  }
@@ -94595,9 +94643,9 @@ async function rectWithTitle(parent, node2) {
94595
94643
  const label = shapeSvg.insert("g").attr("class", "label").attr("style", nodeStyles);
94596
94644
  const description = node2.description;
94597
94645
  const title = node2.label;
94598
- const text2 = await createLabel_default(label, title, node2.labelStyle, true, true);
94646
+ const text2 = label.node().appendChild(await createLabel_default(title, node2.labelStyle, true, true));
94599
94647
  let bbox = { width: 0, height: 0 };
94600
- if (getEffectiveHtmlLabels(getConfig2())) {
94648
+ if (evaluate(getConfig2()?.flowchart?.htmlLabels)) {
94601
94649
  const div2 = text2.children[0];
94602
94650
  const dv2 = select(text2);
94603
94651
  bbox = div2.getBoundingClientRect();
@@ -94607,12 +94655,13 @@ async function rectWithTitle(parent, node2) {
94607
94655
  log.info("Text 2", description);
94608
94656
  const textRows = description || [];
94609
94657
  const titleBox = text2.getBBox();
94610
- const descr = await createLabel_default(
94611
- label,
94612
- Array.isArray(textRows) ? textRows.join("<br/>") : textRows,
94613
- node2.labelStyle,
94614
- true,
94615
- true
94658
+ const descr = label.node().appendChild(
94659
+ await createLabel_default(
94660
+ textRows.join ? textRows.join("<br/>") : textRows,
94661
+ node2.labelStyle,
94662
+ true,
94663
+ true
94664
+ )
94616
94665
  );
94617
94666
  const div = descr.children[0];
94618
94667
  const dv = select(descr);
@@ -94674,14 +94723,108 @@ async function rectWithTitle(parent, node2) {
94674
94723
  return shapeSvg;
94675
94724
  }
94676
94725
  __name(rectWithTitle, "rectWithTitle");
94726
+ function generateArcPoints2(x1, y1, x2, y22, rx, ry, clockwise) {
94727
+ const numPoints = 20;
94728
+ const midX = (x1 + x2) / 2;
94729
+ const midY = (y1 + y22) / 2;
94730
+ const angle = Math.atan2(y22 - y1, x2 - x1);
94731
+ const dx = (x2 - x1) / 2;
94732
+ const dy = (y22 - y1) / 2;
94733
+ const transformedX = dx / rx;
94734
+ const transformedY = dy / ry;
94735
+ const distance2 = Math.sqrt(transformedX ** 2 + transformedY ** 2);
94736
+ if (distance2 > 1) {
94737
+ throw new Error("The given radii are too small to create an arc between the points.");
94738
+ }
94739
+ const scaledCenterDistance = Math.sqrt(1 - distance2 ** 2);
94740
+ const centerX = midX + scaledCenterDistance * ry * Math.sin(angle) * (clockwise ? -1 : 1);
94741
+ const centerY = midY - scaledCenterDistance * rx * Math.cos(angle) * (clockwise ? -1 : 1);
94742
+ const startAngle = Math.atan2((y1 - centerY) / ry, (x1 - centerX) / rx);
94743
+ const endAngle = Math.atan2((y22 - centerY) / ry, (x2 - centerX) / rx);
94744
+ let angleRange = endAngle - startAngle;
94745
+ if (clockwise && angleRange < 0) {
94746
+ angleRange += 2 * Math.PI;
94747
+ }
94748
+ if (!clockwise && angleRange > 0) {
94749
+ angleRange -= 2 * Math.PI;
94750
+ }
94751
+ const points = [];
94752
+ for (let i2 = 0; i2 < numPoints; i2++) {
94753
+ const t2 = i2 / (numPoints - 1);
94754
+ const angle2 = startAngle + t2 * angleRange;
94755
+ const x3 = centerX + rx * Math.cos(angle2);
94756
+ const y3 = centerY + ry * Math.sin(angle2);
94757
+ points.push({ x: x3, y: y3 });
94758
+ }
94759
+ return points;
94760
+ }
94761
+ __name(generateArcPoints2, "generateArcPoints");
94677
94762
  async function roundedRect(parent, node2) {
94678
- const options = {
94679
- rx: 5,
94680
- ry: 5,
94681
- labelPaddingX: (node2?.padding || 0) * 1,
94682
- labelPaddingY: (node2?.padding || 0) * 1
94763
+ const { labelStyles, nodeStyles } = styles2String(node2);
94764
+ node2.labelStyle = labelStyles;
94765
+ const { shapeSvg, bbox } = await labelHelper(parent, node2, getNodeClasses(node2));
94766
+ const labelPaddingX = node2?.padding ?? 0;
94767
+ const labelPaddingY = node2?.padding ?? 0;
94768
+ const w2 = (node2?.width ? node2?.width : bbox.width) + labelPaddingX * 2;
94769
+ const h2 = (node2?.height ? node2?.height : bbox.height) + labelPaddingY * 2;
94770
+ const radius = node2.radius || 5;
94771
+ const taper = node2.taper || 5;
94772
+ const { cssStyles } = node2;
94773
+ const rc = at.svg(shapeSvg);
94774
+ const options = userNodeOverrides(node2, {});
94775
+ if (node2.stroke) {
94776
+ options.stroke = node2.stroke;
94777
+ }
94778
+ if (node2.look !== "handDrawn") {
94779
+ options.roughness = 0;
94780
+ options.fillStyle = "solid";
94781
+ }
94782
+ const points = [
94783
+ // Top edge (left to right)
94784
+ { x: -w2 / 2 + taper, y: -h2 / 2 },
94785
+ // Top-left corner start (1)
94786
+ { x: w2 / 2 - taper, y: -h2 / 2 },
94787
+ // Top-right corner start (2)
94788
+ ...generateArcPoints2(w2 / 2 - taper, -h2 / 2, w2 / 2, -h2 / 2 + taper, radius, radius, true),
94789
+ // Top-left arc (2 to 3)
94790
+ // Right edge (top to bottom)
94791
+ { x: w2 / 2, y: -h2 / 2 + taper },
94792
+ // Top-right taper point (3)
94793
+ { x: w2 / 2, y: h2 / 2 - taper },
94794
+ // Bottom-right taper point (4)
94795
+ ...generateArcPoints2(w2 / 2, h2 / 2 - taper, w2 / 2 - taper, h2 / 2, radius, radius, true),
94796
+ // Top-left arc (4 to 5)
94797
+ // Bottom edge (right to left)
94798
+ { x: w2 / 2 - taper, y: h2 / 2 },
94799
+ // Bottom-right corner start (5)
94800
+ { x: -w2 / 2 + taper, y: h2 / 2 },
94801
+ // Bottom-left corner start (6)
94802
+ ...generateArcPoints2(-w2 / 2 + taper, h2 / 2, -w2 / 2, h2 / 2 - taper, radius, radius, true),
94803
+ // Top-left arc (4 to 5)
94804
+ // Left edge (bottom to top)
94805
+ { x: -w2 / 2, y: h2 / 2 - taper },
94806
+ // Bottom-left taper point (7)
94807
+ { x: -w2 / 2, y: -h2 / 2 + taper },
94808
+ // Top-left taper point (8)
94809
+ ...generateArcPoints2(-w2 / 2, -h2 / 2 + taper, -w2 / 2 + taper, -h2 / 2, radius, radius, true)
94810
+ // Top-left arc (4 to 5)
94811
+ ];
94812
+ const pathData = createPathFromPoints(points);
94813
+ const shapeNode = rc.path(pathData, options);
94814
+ const polygon = shapeSvg.insert(() => shapeNode, ":first-child");
94815
+ polygon.attr("class", "basic label-container outer-path");
94816
+ if (cssStyles && node2.look !== "handDrawn") {
94817
+ polygon.selectChildren("path").attr("style", cssStyles);
94818
+ }
94819
+ if (nodeStyles && node2.look !== "handDrawn") {
94820
+ polygon.selectChildren("path").attr("style", nodeStyles);
94821
+ }
94822
+ updateNodeBounds(node2, polygon);
94823
+ node2.intersect = function(point2) {
94824
+ const pos = intersect_default.polygon(node2, points, point2);
94825
+ return pos;
94683
94826
  };
94684
- return drawRect(parent, node2, options);
94827
+ return shapeSvg;
94685
94828
  }
94686
94829
  __name(roundedRect, "roundedRect");
94687
94830
  async function shadedProcess(parent, node2) {
@@ -95247,7 +95390,7 @@ async function triangle(parent, node2) {
95247
95390
  const { labelStyles, nodeStyles } = styles2String(node2);
95248
95391
  node2.labelStyle = labelStyles;
95249
95392
  const { shapeSvg, bbox, label } = await labelHelper(parent, node2, getNodeClasses(node2));
95250
- const useHtmlLabels = node2.useHtmlLabels || getEffectiveHtmlLabels(getConfig2());
95393
+ const useHtmlLabels = evaluate(getConfig2().flowchart?.htmlLabels);
95251
95394
  const w2 = bbox.width + (node2.padding ?? 0);
95252
95395
  const h2 = w2 + bbox.height;
95253
95396
  const tw = w2 + bbox.height;
@@ -96905,12 +97048,12 @@ var positionNode = /* @__PURE__ */ __name((node2) => {
96905
97048
  }
96906
97049
  return diff;
96907
97050
  }, "positionNode");
96908
- var addEdgeMarkers = /* @__PURE__ */ __name((svgPath, edge, url, id30, diagramType, strokeColor) => {
97051
+ var addEdgeMarkers = /* @__PURE__ */ __name((svgPath, edge, url, id28, diagramType, strokeColor) => {
96909
97052
  if (edge.arrowTypeStart) {
96910
- addEdgeMarker(svgPath, "start", edge.arrowTypeStart, url, id30, diagramType, strokeColor);
97053
+ addEdgeMarker(svgPath, "start", edge.arrowTypeStart, url, id28, diagramType, strokeColor);
96911
97054
  }
96912
97055
  if (edge.arrowTypeEnd) {
96913
- addEdgeMarker(svgPath, "end", edge.arrowTypeEnd, url, id30, diagramType, strokeColor);
97056
+ addEdgeMarker(svgPath, "end", edge.arrowTypeEnd, url, id28, diagramType, strokeColor);
96914
97057
  }
96915
97058
  }, "addEdgeMarkers");
96916
97059
  var arrowTypesMap = {
@@ -96930,7 +97073,7 @@ var arrowTypesMap = {
96930
97073
  requirement_arrow: { type: "requirement_arrow", fill: false },
96931
97074
  requirement_contains: { type: "requirement_contains", fill: false }
96932
97075
  };
96933
- var addEdgeMarker = /* @__PURE__ */ __name((svgPath, position2, arrowType, url, id30, diagramType, strokeColor) => {
97076
+ var addEdgeMarker = /* @__PURE__ */ __name((svgPath, position2, arrowType, url, id28, diagramType, strokeColor) => {
96934
97077
  const arrowTypeInfo = arrowTypesMap[arrowType];
96935
97078
  if (!arrowTypeInfo) {
96936
97079
  log.warn(`Unknown arrow type: ${arrowType}`);
@@ -96938,7 +97081,7 @@ var addEdgeMarker = /* @__PURE__ */ __name((svgPath, position2, arrowType, url,
96938
97081
  }
96939
97082
  const endMarkerType = arrowTypeInfo.type;
96940
97083
  const suffix = position2 === "start" ? "Start" : "End";
96941
- const originalMarkerId = `${id30}_${diagramType}-${endMarkerType}${suffix}`;
97084
+ const originalMarkerId = `${id28}_${diagramType}-${endMarkerType}${suffix}`;
96942
97085
  if (strokeColor && strokeColor.trim() !== "") {
96943
97086
  const colorId = strokeColor.replace(/[^\dA-Za-z]/g, "_");
96944
97087
  const coloredMarkerId = `${originalMarkerId}_${colorId}`;
@@ -96962,9 +97105,6 @@ var addEdgeMarker = /* @__PURE__ */ __name((svgPath, position2, arrowType, url,
96962
97105
  svgPath.attr(`marker-${position2}`, `url(${url}#${originalMarkerId})`);
96963
97106
  }
96964
97107
  }, "addEdgeMarker");
96965
- var resolveEdgeCurveType = /* @__PURE__ */ __name((edgeCurve) => {
96966
- return typeof edgeCurve === "string" ? edgeCurve : getConfig2()?.flowchart?.curve;
96967
- }, "resolveEdgeCurveType");
96968
97108
  var edgeLabels = /* @__PURE__ */ new Map();
96969
97109
  var terminalLabels = /* @__PURE__ */ new Map();
96970
97110
  var clear = /* @__PURE__ */ __name(() => {
@@ -96972,79 +97112,46 @@ var clear = /* @__PURE__ */ __name(() => {
96972
97112
  terminalLabels.clear();
96973
97113
  }, "clear");
96974
97114
  var getLabelStyles = /* @__PURE__ */ __name((styleArray) => {
96975
- if (!styleArray) {
96976
- return "";
96977
- }
96978
- if (typeof styleArray === "string") {
96979
- return styleArray;
96980
- }
96981
- return styleArray.reduce((acc, style2) => acc + ";" + style2, "");
97115
+ let styles2 = styleArray ? styleArray.reduce((acc, style2) => acc + ";" + style2, "") : "";
97116
+ return styles2;
96982
97117
  }, "getLabelStyles");
96983
97118
  var insertEdgeLabel = /* @__PURE__ */ __name(async (elem, edge) => {
96984
- const config2 = getConfig2();
96985
- let useHtmlLabels = getEffectiveHtmlLabels(config2);
97119
+ let useHtmlLabels = evaluate(getConfig2().flowchart.htmlLabels);
96986
97120
  const { labelStyles } = styles2String(edge);
96987
97121
  edge.labelStyle = labelStyles;
97122
+ const labelElement = await createText(elem, edge.label, {
97123
+ style: edge.labelStyle,
97124
+ useHtmlLabels,
97125
+ addSvgBackground: true,
97126
+ isNode: false
97127
+ });
97128
+ log.info("abc82", edge, edge.labelType);
96988
97129
  const edgeLabel = elem.insert("g").attr("class", "edgeLabel");
96989
97130
  const label = edgeLabel.insert("g").attr("class", "label").attr("data-id", edge.id);
96990
- const isMarkdown = edge.labelType === "markdown";
96991
- const markdownWidth = void 0;
96992
- const labelElement = await createText(
96993
- elem,
96994
- edge.label,
96995
- {
96996
- style: getLabelStyles(edge.labelStyle),
96997
- useHtmlLabels,
96998
- addSvgBackground: true,
96999
- isNode: false,
97000
- markdown: isMarkdown,
97001
- // Plain text edge labels should auto-wrap, markdown edge labels respect markdownAutoWrap config
97002
- width: isMarkdown ? markdownWidth : void 0
97003
- },
97004
- config2
97005
- );
97006
97131
  label.node().appendChild(labelElement);
97007
- log.info("abc82", edge, edge.labelType);
97008
97132
  let bbox = labelElement.getBBox();
97009
- let transformBbox = bbox;
97010
97133
  if (useHtmlLabels) {
97011
97134
  const div = labelElement.children[0];
97012
97135
  const dv = select(labelElement);
97013
97136
  bbox = div.getBoundingClientRect();
97014
- transformBbox = bbox;
97015
97137
  dv.attr("width", bbox.width);
97016
97138
  dv.attr("height", bbox.height);
97017
- } else {
97018
- const textEl = select(labelElement).select("text").node();
97019
- if (textEl && typeof textEl.getBBox === "function") {
97020
- transformBbox = textEl.getBBox();
97021
- }
97022
97139
  }
97023
- label.attr("transform", computeLabelTransform(transformBbox, useHtmlLabels));
97140
+ label.attr("transform", "translate(" + -bbox.width / 2 + ", " + -bbox.height / 2 + ")");
97024
97141
  edgeLabels.set(edge.id, edgeLabel);
97025
97142
  edge.width = bbox.width;
97026
97143
  edge.height = bbox.height;
97027
97144
  let fo;
97028
97145
  if (edge.startLabelLeft) {
97029
- const startEdgeLabelLeft = elem.insert("g").attr("class", "edgeTerminals");
97030
- const inner2 = startEdgeLabelLeft.insert("g").attr("class", "inner");
97031
97146
  const startLabelElement = await createLabel_default(
97032
- inner2,
97033
97147
  edge.startLabelLeft,
97034
- getLabelStyles(edge.labelStyle) || "",
97035
- false,
97036
- false
97148
+ getLabelStyles(edge.labelStyle)
97037
97149
  );
97038
- fo = startLabelElement;
97039
- let slBox = startLabelElement.getBBox();
97040
- if (useHtmlLabels) {
97041
- const div = startLabelElement.children[0];
97042
- const dv = select(startLabelElement);
97043
- slBox = div.getBoundingClientRect();
97044
- dv.attr("width", slBox.width);
97045
- dv.attr("height", slBox.height);
97046
- }
97047
- inner2.attr("transform", computeLabelTransform(slBox, useHtmlLabels));
97150
+ const startEdgeLabelLeft = elem.insert("g").attr("class", "edgeTerminals");
97151
+ const inner2 = startEdgeLabelLeft.insert("g").attr("class", "inner");
97152
+ fo = inner2.node().appendChild(startLabelElement);
97153
+ const slBox = startLabelElement.getBBox();
97154
+ inner2.attr("transform", "translate(" + -slBox.width / 2 + ", " + -slBox.height / 2 + ")");
97048
97155
  if (!terminalLabels.get(edge.id)) {
97049
97156
  terminalLabels.set(edge.id, {});
97050
97157
  }
@@ -97052,26 +97159,16 @@ var insertEdgeLabel = /* @__PURE__ */ __name(async (elem, edge) => {
97052
97159
  setTerminalWidth(fo, edge.startLabelLeft);
97053
97160
  }
97054
97161
  if (edge.startLabelRight) {
97055
- const startEdgeLabelRight = elem.insert("g").attr("class", "edgeTerminals");
97056
- const inner2 = startEdgeLabelRight.insert("g").attr("class", "inner");
97057
97162
  const startLabelElement = await createLabel_default(
97058
- inner2,
97059
97163
  edge.startLabelRight,
97060
- getLabelStyles(edge.labelStyle) || "",
97061
- false,
97062
- false
97164
+ getLabelStyles(edge.labelStyle)
97063
97165
  );
97064
- fo = startLabelElement;
97166
+ const startEdgeLabelRight = elem.insert("g").attr("class", "edgeTerminals");
97167
+ const inner2 = startEdgeLabelRight.insert("g").attr("class", "inner");
97168
+ fo = startEdgeLabelRight.node().appendChild(startLabelElement);
97065
97169
  inner2.node().appendChild(startLabelElement);
97066
- let slBox = startLabelElement.getBBox();
97067
- if (useHtmlLabels) {
97068
- const div = startLabelElement.children[0];
97069
- const dv = select(startLabelElement);
97070
- slBox = div.getBoundingClientRect();
97071
- dv.attr("width", slBox.width);
97072
- dv.attr("height", slBox.height);
97073
- }
97074
- inner2.attr("transform", computeLabelTransform(slBox, useHtmlLabels));
97170
+ const slBox = startLabelElement.getBBox();
97171
+ inner2.attr("transform", "translate(" + -slBox.width / 2 + ", " + -slBox.height / 2 + ")");
97075
97172
  if (!terminalLabels.get(edge.id)) {
97076
97173
  terminalLabels.set(edge.id, {});
97077
97174
  }
@@ -97079,25 +97176,12 @@ var insertEdgeLabel = /* @__PURE__ */ __name(async (elem, edge) => {
97079
97176
  setTerminalWidth(fo, edge.startLabelRight);
97080
97177
  }
97081
97178
  if (edge.endLabelLeft) {
97179
+ const endLabelElement = await createLabel_default(edge.endLabelLeft, getLabelStyles(edge.labelStyle));
97082
97180
  const endEdgeLabelLeft = elem.insert("g").attr("class", "edgeTerminals");
97083
97181
  const inner2 = endEdgeLabelLeft.insert("g").attr("class", "inner");
97084
- const endLabelElement = await createLabel_default(
97085
- inner2,
97086
- edge.endLabelLeft,
97087
- getLabelStyles(edge.labelStyle) || "",
97088
- false,
97089
- false
97090
- );
97091
- fo = endLabelElement;
97092
- let slBox = endLabelElement.getBBox();
97093
- if (useHtmlLabels) {
97094
- const div = endLabelElement.children[0];
97095
- const dv = select(endLabelElement);
97096
- slBox = div.getBoundingClientRect();
97097
- dv.attr("width", slBox.width);
97098
- dv.attr("height", slBox.height);
97099
- }
97100
- inner2.attr("transform", computeLabelTransform(slBox, useHtmlLabels));
97182
+ fo = inner2.node().appendChild(endLabelElement);
97183
+ const slBox = endLabelElement.getBBox();
97184
+ inner2.attr("transform", "translate(" + -slBox.width / 2 + ", " + -slBox.height / 2 + ")");
97101
97185
  endEdgeLabelLeft.node().appendChild(endLabelElement);
97102
97186
  if (!terminalLabels.get(edge.id)) {
97103
97187
  terminalLabels.set(edge.id, {});
@@ -97106,25 +97190,12 @@ var insertEdgeLabel = /* @__PURE__ */ __name(async (elem, edge) => {
97106
97190
  setTerminalWidth(fo, edge.endLabelLeft);
97107
97191
  }
97108
97192
  if (edge.endLabelRight) {
97193
+ const endLabelElement = await createLabel_default(edge.endLabelRight, getLabelStyles(edge.labelStyle));
97109
97194
  const endEdgeLabelRight = elem.insert("g").attr("class", "edgeTerminals");
97110
97195
  const inner2 = endEdgeLabelRight.insert("g").attr("class", "inner");
97111
- const endLabelElement = await createLabel_default(
97112
- inner2,
97113
- edge.endLabelRight,
97114
- getLabelStyles(edge.labelStyle) || "",
97115
- false,
97116
- false
97117
- );
97118
- fo = endLabelElement;
97119
- let slBox = endLabelElement.getBBox();
97120
- if (useHtmlLabels) {
97121
- const div = endLabelElement.children[0];
97122
- const dv = select(endLabelElement);
97123
- slBox = div.getBoundingClientRect();
97124
- dv.attr("width", slBox.width);
97125
- dv.attr("height", slBox.height);
97126
- }
97127
- inner2.attr("transform", computeLabelTransform(slBox, useHtmlLabels));
97196
+ fo = inner2.node().appendChild(endLabelElement);
97197
+ const slBox = endLabelElement.getBBox();
97198
+ inner2.attr("transform", "translate(" + -slBox.width / 2 + ", " + -slBox.height / 2 + ")");
97128
97199
  endEdgeLabelRight.node().appendChild(endLabelElement);
97129
97200
  if (!terminalLabels.get(edge.id)) {
97130
97201
  terminalLabels.set(edge.id, {});
@@ -97135,7 +97206,7 @@ var insertEdgeLabel = /* @__PURE__ */ __name(async (elem, edge) => {
97135
97206
  return labelElement;
97136
97207
  }, "insertEdgeLabel");
97137
97208
  function setTerminalWidth(fo, value) {
97138
- if (getEffectiveHtmlLabels(getConfig2()) && fo) {
97209
+ if (getConfig2().flowchart.htmlLabels && fo) {
97139
97210
  fo.style.width = value.length * 9 + "px";
97140
97211
  fo.style.height = "12px";
97141
97212
  }
@@ -97397,7 +97468,7 @@ var generateDashArray = /* @__PURE__ */ __name((len, oValueS, oValueE) => {
97397
97468
  const dashArray = `0 ${oValueS} ${middlePattern} ${oValueE}`;
97398
97469
  return dashArray;
97399
97470
  }, "generateDashArray");
97400
- var insertEdge = /* @__PURE__ */ __name(function(elem, edge, clusterDb, diagramType, startNode, endNode, id30, skipIntersect = false) {
97471
+ var insertEdge = /* @__PURE__ */ __name(function(elem, edge, clusterDb, diagramType, startNode, endNode, id28, skipIntersect = false) {
97401
97472
  const { handDrawnSeed } = getConfig2();
97402
97473
  let points = edge.points;
97403
97474
  let pointsHasChanged = false;
@@ -97441,12 +97512,10 @@ var insertEdge = /* @__PURE__ */ __name(function(elem, edge, clusterDb, diagramT
97441
97512
  pointsHasChanged = true;
97442
97513
  }
97443
97514
  let lineData = points.filter((p2) => !Number.isNaN(p2.y));
97444
- const edgeCurveType = resolveEdgeCurveType(edge.curve);
97445
- if (edgeCurveType !== "rounded") {
97446
- lineData = fixCorners(lineData);
97447
- }
97448
- let curve = curveLinear;
97449
- switch (edgeCurveType) {
97515
+ lineData = fixCorners(lineData);
97516
+ let curve = curveBasis;
97517
+ curve = curveLinear;
97518
+ switch (edge.curve) {
97450
97519
  case "linear":
97451
97520
  curve = curveLinear;
97452
97521
  break;
@@ -97483,9 +97552,6 @@ var insertEdge = /* @__PURE__ */ __name(function(elem, edge, clusterDb, diagramT
97483
97552
  case "stepBefore":
97484
97553
  curve = stepBefore;
97485
97554
  break;
97486
- case "rounded":
97487
- curve = curveLinear;
97488
- break;
97489
97555
  default:
97490
97556
  curve = curveBasis;
97491
97557
  }
@@ -97519,16 +97585,9 @@ var insertEdge = /* @__PURE__ */ __name(function(elem, edge, clusterDb, diagramT
97519
97585
  strokeClasses += " edge-pattern-solid";
97520
97586
  }
97521
97587
  let svgPath;
97522
- let linePath = edgeCurveType === "rounded" ? generateRoundedPath(applyMarkerOffsetsToPoints(lineData, edge), 5) : lineFunction(lineData);
97588
+ let linePath = edge.curve === "rounded" ? generateRoundedPath(applyMarkerOffsetsToPoints(lineData, edge), 5) : lineFunction(lineData);
97523
97589
  const edgeStyles = Array.isArray(edge.style) ? edge.style : [edge.style];
97524
97590
  let strokeColor = edgeStyles.find((style2) => style2?.startsWith("stroke:"));
97525
- let animationClass = "";
97526
- if (edge.animate) {
97527
- animationClass = "edge-animation-fast";
97528
- }
97529
- if (edge.animation) {
97530
- animationClass = "edge-animation-" + edge.animation;
97531
- }
97532
97591
  let animatedEdge = false;
97533
97592
  if (edge.look === "handDrawn") {
97534
97593
  const rc = at.svg(elem);
@@ -97538,20 +97597,24 @@ var insertEdge = /* @__PURE__ */ __name(function(elem, edge, clusterDb, diagramT
97538
97597
  seed: handDrawnSeed
97539
97598
  });
97540
97599
  strokeClasses += " transition";
97541
- svgPath = select(svgPathNode).select("path").attr("id", edge.id).attr(
97542
- "class",
97543
- " " + strokeClasses + (edge.classes ? " " + edge.classes : "") + (animationClass ? " " + animationClass : "")
97544
- ).attr("style", edgeStyles ? edgeStyles.reduce((acc, style2) => acc + ";" + style2, "") : "");
97600
+ svgPath = select(svgPathNode).select("path").attr("id", edge.id).attr("class", " " + strokeClasses + (edge.classes ? " " + edge.classes : "")).attr("style", edgeStyles ? edgeStyles.reduce((acc, style2) => acc + ";" + style2, "") : "");
97545
97601
  let d2 = svgPath.attr("d");
97546
97602
  svgPath.attr("d", d2);
97547
97603
  elem.node().appendChild(svgPath.node());
97548
97604
  } else {
97549
97605
  const stylesFromClasses = edgeClassStyles.join(";");
97550
97606
  const styles2 = edgeStyles ? edgeStyles.reduce((acc, style2) => acc + style2 + ";", "") : "";
97607
+ let animationClass = "";
97608
+ if (edge.animate) {
97609
+ animationClass = " edge-animation-fast";
97610
+ }
97611
+ if (edge.animation) {
97612
+ animationClass = " edge-animation-" + edge.animation;
97613
+ }
97551
97614
  const pathStyle = (stylesFromClasses ? stylesFromClasses + ";" + styles2 + ";" : styles2) + ";" + (edgeStyles ? edgeStyles.reduce((acc, style2) => acc + ";" + style2, "") : "");
97552
97615
  svgPath = elem.append("path").attr("d", linePath).attr("id", edge.id).attr(
97553
97616
  "class",
97554
- " " + strokeClasses + (edge.classes ? " " + edge.classes : "") + (animationClass ? " " + animationClass : "")
97617
+ " " + strokeClasses + (edge.classes ? " " + edge.classes : "") + (animationClass ?? "")
97555
97618
  ).attr("style", pathStyle);
97556
97619
  strokeColor = pathStyle.match(/stroke:([^;]+)/)?.[1];
97557
97620
  animatedEdge = edge.animate === true || !!edge.animation || stylesFromClasses.includes("animation");
@@ -97581,7 +97644,7 @@ var insertEdge = /* @__PURE__ */ __name(function(elem, edge, clusterDb, diagramT
97581
97644
  }
97582
97645
  log.info("arrowTypeStart", edge.arrowTypeStart);
97583
97646
  log.info("arrowTypeEnd", edge.arrowTypeEnd);
97584
- addEdgeMarkers(svgPath, edge, url, id30, diagramType, strokeColor);
97647
+ addEdgeMarkers(svgPath, edge, url, id28, diagramType, strokeColor);
97585
97648
  const midIndex = Math.floor(points.length / 2);
97586
97649
  const point2 = points[midIndex];
97587
97650
  if (!utils_default.isLabelCoordinateInPath(point2, svgPath.attr("d"))) {
@@ -97679,73 +97742,73 @@ function applyMarkerOffsetsToPoints(points, edge) {
97679
97742
  return newPoints;
97680
97743
  }
97681
97744
  __name(applyMarkerOffsetsToPoints, "applyMarkerOffsetsToPoints");
97682
- var insertMarkers = /* @__PURE__ */ __name((elem, markerArray, type2, id30) => {
97745
+ var insertMarkers = /* @__PURE__ */ __name((elem, markerArray, type2, id28) => {
97683
97746
  markerArray.forEach((markerName) => {
97684
- markers[markerName](elem, type2, id30);
97747
+ markers[markerName](elem, type2, id28);
97685
97748
  });
97686
97749
  }, "insertMarkers");
97687
- var extension = /* @__PURE__ */ __name((elem, type2, id30) => {
97688
- log.trace("Making markers for ", id30);
97689
- elem.append("defs").append("marker").attr("id", id30 + "_" + type2 + "-extensionStart").attr("class", "marker extension " + type2).attr("refX", 18).attr("refY", 7).attr("markerWidth", 190).attr("markerHeight", 240).attr("orient", "auto").append("path").attr("d", "M 1,7 L18,13 V 1 Z");
97690
- elem.append("defs").append("marker").attr("id", id30 + "_" + type2 + "-extensionEnd").attr("class", "marker extension " + type2).attr("refX", 1).attr("refY", 7).attr("markerWidth", 20).attr("markerHeight", 28).attr("orient", "auto").append("path").attr("d", "M 1,1 V 13 L18,7 Z");
97750
+ var extension = /* @__PURE__ */ __name((elem, type2, id28) => {
97751
+ log.trace("Making markers for ", id28);
97752
+ elem.append("defs").append("marker").attr("id", id28 + "_" + type2 + "-extensionStart").attr("class", "marker extension " + type2).attr("refX", 18).attr("refY", 7).attr("markerWidth", 190).attr("markerHeight", 240).attr("orient", "auto").append("path").attr("d", "M 1,7 L18,13 V 1 Z");
97753
+ elem.append("defs").append("marker").attr("id", id28 + "_" + type2 + "-extensionEnd").attr("class", "marker extension " + type2).attr("refX", 1).attr("refY", 7).attr("markerWidth", 20).attr("markerHeight", 28).attr("orient", "auto").append("path").attr("d", "M 1,1 V 13 L18,7 Z");
97691
97754
  }, "extension");
97692
- var composition = /* @__PURE__ */ __name((elem, type2, id30) => {
97693
- elem.append("defs").append("marker").attr("id", id30 + "_" + type2 + "-compositionStart").attr("class", "marker composition " + type2).attr("refX", 18).attr("refY", 7).attr("markerWidth", 190).attr("markerHeight", 240).attr("orient", "auto").append("path").attr("d", "M 18,7 L9,13 L1,7 L9,1 Z");
97694
- elem.append("defs").append("marker").attr("id", id30 + "_" + type2 + "-compositionEnd").attr("class", "marker composition " + type2).attr("refX", 1).attr("refY", 7).attr("markerWidth", 20).attr("markerHeight", 28).attr("orient", "auto").append("path").attr("d", "M 18,7 L9,13 L1,7 L9,1 Z");
97755
+ var composition = /* @__PURE__ */ __name((elem, type2, id28) => {
97756
+ elem.append("defs").append("marker").attr("id", id28 + "_" + type2 + "-compositionStart").attr("class", "marker composition " + type2).attr("refX", 18).attr("refY", 7).attr("markerWidth", 190).attr("markerHeight", 240).attr("orient", "auto").append("path").attr("d", "M 18,7 L9,13 L1,7 L9,1 Z");
97757
+ elem.append("defs").append("marker").attr("id", id28 + "_" + type2 + "-compositionEnd").attr("class", "marker composition " + type2).attr("refX", 1).attr("refY", 7).attr("markerWidth", 20).attr("markerHeight", 28).attr("orient", "auto").append("path").attr("d", "M 18,7 L9,13 L1,7 L9,1 Z");
97695
97758
  }, "composition");
97696
- var aggregation = /* @__PURE__ */ __name((elem, type2, id30) => {
97697
- elem.append("defs").append("marker").attr("id", id30 + "_" + type2 + "-aggregationStart").attr("class", "marker aggregation " + type2).attr("refX", 18).attr("refY", 7).attr("markerWidth", 190).attr("markerHeight", 240).attr("orient", "auto").append("path").attr("d", "M 18,7 L9,13 L1,7 L9,1 Z");
97698
- elem.append("defs").append("marker").attr("id", id30 + "_" + type2 + "-aggregationEnd").attr("class", "marker aggregation " + type2).attr("refX", 1).attr("refY", 7).attr("markerWidth", 20).attr("markerHeight", 28).attr("orient", "auto").append("path").attr("d", "M 18,7 L9,13 L1,7 L9,1 Z");
97759
+ var aggregation = /* @__PURE__ */ __name((elem, type2, id28) => {
97760
+ elem.append("defs").append("marker").attr("id", id28 + "_" + type2 + "-aggregationStart").attr("class", "marker aggregation " + type2).attr("refX", 18).attr("refY", 7).attr("markerWidth", 190).attr("markerHeight", 240).attr("orient", "auto").append("path").attr("d", "M 18,7 L9,13 L1,7 L9,1 Z");
97761
+ elem.append("defs").append("marker").attr("id", id28 + "_" + type2 + "-aggregationEnd").attr("class", "marker aggregation " + type2).attr("refX", 1).attr("refY", 7).attr("markerWidth", 20).attr("markerHeight", 28).attr("orient", "auto").append("path").attr("d", "M 18,7 L9,13 L1,7 L9,1 Z");
97699
97762
  }, "aggregation");
97700
- var dependency = /* @__PURE__ */ __name((elem, type2, id30) => {
97701
- elem.append("defs").append("marker").attr("id", id30 + "_" + type2 + "-dependencyStart").attr("class", "marker dependency " + type2).attr("refX", 6).attr("refY", 7).attr("markerWidth", 190).attr("markerHeight", 240).attr("orient", "auto").append("path").attr("d", "M 5,7 L9,13 L1,7 L9,1 Z");
97702
- elem.append("defs").append("marker").attr("id", id30 + "_" + type2 + "-dependencyEnd").attr("class", "marker dependency " + type2).attr("refX", 13).attr("refY", 7).attr("markerWidth", 20).attr("markerHeight", 28).attr("orient", "auto").append("path").attr("d", "M 18,7 L9,13 L14,7 L9,1 Z");
97763
+ var dependency = /* @__PURE__ */ __name((elem, type2, id28) => {
97764
+ elem.append("defs").append("marker").attr("id", id28 + "_" + type2 + "-dependencyStart").attr("class", "marker dependency " + type2).attr("refX", 6).attr("refY", 7).attr("markerWidth", 190).attr("markerHeight", 240).attr("orient", "auto").append("path").attr("d", "M 5,7 L9,13 L1,7 L9,1 Z");
97765
+ elem.append("defs").append("marker").attr("id", id28 + "_" + type2 + "-dependencyEnd").attr("class", "marker dependency " + type2).attr("refX", 13).attr("refY", 7).attr("markerWidth", 20).attr("markerHeight", 28).attr("orient", "auto").append("path").attr("d", "M 18,7 L9,13 L14,7 L9,1 Z");
97703
97766
  }, "dependency");
97704
- var lollipop = /* @__PURE__ */ __name((elem, type2, id30) => {
97705
- elem.append("defs").append("marker").attr("id", id30 + "_" + type2 + "-lollipopStart").attr("class", "marker lollipop " + type2).attr("refX", 13).attr("refY", 7).attr("markerWidth", 190).attr("markerHeight", 240).attr("orient", "auto").append("circle").attr("fill", "transparent").attr("cx", 7).attr("cy", 7).attr("r", 6);
97706
- elem.append("defs").append("marker").attr("id", id30 + "_" + type2 + "-lollipopEnd").attr("class", "marker lollipop " + type2).attr("refX", 1).attr("refY", 7).attr("markerWidth", 190).attr("markerHeight", 240).attr("orient", "auto").append("circle").attr("fill", "transparent").attr("cx", 7).attr("cy", 7).attr("r", 6);
97767
+ var lollipop = /* @__PURE__ */ __name((elem, type2, id28) => {
97768
+ elem.append("defs").append("marker").attr("id", id28 + "_" + type2 + "-lollipopStart").attr("class", "marker lollipop " + type2).attr("refX", 13).attr("refY", 7).attr("markerWidth", 190).attr("markerHeight", 240).attr("orient", "auto").append("circle").attr("stroke", "black").attr("fill", "transparent").attr("cx", 7).attr("cy", 7).attr("r", 6);
97769
+ elem.append("defs").append("marker").attr("id", id28 + "_" + type2 + "-lollipopEnd").attr("class", "marker lollipop " + type2).attr("refX", 1).attr("refY", 7).attr("markerWidth", 190).attr("markerHeight", 240).attr("orient", "auto").append("circle").attr("stroke", "black").attr("fill", "transparent").attr("cx", 7).attr("cy", 7).attr("r", 6);
97707
97770
  }, "lollipop");
97708
- var point = /* @__PURE__ */ __name((elem, type2, id30) => {
97709
- elem.append("marker").attr("id", id30 + "_" + type2 + "-pointEnd").attr("class", "marker " + type2).attr("viewBox", "0 0 10 10").attr("refX", 5).attr("refY", 5).attr("markerUnits", "userSpaceOnUse").attr("markerWidth", 8).attr("markerHeight", 8).attr("orient", "auto").append("path").attr("d", "M 0 0 L 10 5 L 0 10 z").attr("class", "arrowMarkerPath").style("stroke-width", 1).style("stroke-dasharray", "1,0");
97710
- elem.append("marker").attr("id", id30 + "_" + type2 + "-pointStart").attr("class", "marker " + type2).attr("viewBox", "0 0 10 10").attr("refX", 4.5).attr("refY", 5).attr("markerUnits", "userSpaceOnUse").attr("markerWidth", 8).attr("markerHeight", 8).attr("orient", "auto").append("path").attr("d", "M 0 5 L 10 10 L 10 0 z").attr("class", "arrowMarkerPath").style("stroke-width", 1).style("stroke-dasharray", "1,0");
97771
+ var point = /* @__PURE__ */ __name((elem, type2, id28) => {
97772
+ elem.append("marker").attr("id", id28 + "_" + type2 + "-pointEnd").attr("class", "marker " + type2).attr("viewBox", "0 0 10 10").attr("refX", 5).attr("refY", 5).attr("markerUnits", "userSpaceOnUse").attr("markerWidth", 8).attr("markerHeight", 8).attr("orient", "auto").append("path").attr("d", "M 0 0 L 10 5 L 0 10 z").attr("class", "arrowMarkerPath").style("stroke-width", 1).style("stroke-dasharray", "1,0");
97773
+ elem.append("marker").attr("id", id28 + "_" + type2 + "-pointStart").attr("class", "marker " + type2).attr("viewBox", "0 0 10 10").attr("refX", 4.5).attr("refY", 5).attr("markerUnits", "userSpaceOnUse").attr("markerWidth", 8).attr("markerHeight", 8).attr("orient", "auto").append("path").attr("d", "M 0 5 L 10 10 L 10 0 z").attr("class", "arrowMarkerPath").style("stroke-width", 1).style("stroke-dasharray", "1,0");
97711
97774
  }, "point");
97712
- var circle = /* @__PURE__ */ __name((elem, type2, id30) => {
97713
- elem.append("marker").attr("id", id30 + "_" + type2 + "-circleEnd").attr("class", "marker " + type2).attr("viewBox", "0 0 10 10").attr("refX", 11).attr("refY", 5).attr("markerUnits", "userSpaceOnUse").attr("markerWidth", 11).attr("markerHeight", 11).attr("orient", "auto").append("circle").attr("cx", "5").attr("cy", "5").attr("r", "5").attr("class", "arrowMarkerPath").style("stroke-width", 1).style("stroke-dasharray", "1,0");
97714
- elem.append("marker").attr("id", id30 + "_" + type2 + "-circleStart").attr("class", "marker " + type2).attr("viewBox", "0 0 10 10").attr("refX", -1).attr("refY", 5).attr("markerUnits", "userSpaceOnUse").attr("markerWidth", 11).attr("markerHeight", 11).attr("orient", "auto").append("circle").attr("cx", "5").attr("cy", "5").attr("r", "5").attr("class", "arrowMarkerPath").style("stroke-width", 1).style("stroke-dasharray", "1,0");
97775
+ var circle = /* @__PURE__ */ __name((elem, type2, id28) => {
97776
+ elem.append("marker").attr("id", id28 + "_" + type2 + "-circleEnd").attr("class", "marker " + type2).attr("viewBox", "0 0 10 10").attr("refX", 11).attr("refY", 5).attr("markerUnits", "userSpaceOnUse").attr("markerWidth", 11).attr("markerHeight", 11).attr("orient", "auto").append("circle").attr("cx", "5").attr("cy", "5").attr("r", "5").attr("class", "arrowMarkerPath").style("stroke-width", 1).style("stroke-dasharray", "1,0");
97777
+ elem.append("marker").attr("id", id28 + "_" + type2 + "-circleStart").attr("class", "marker " + type2).attr("viewBox", "0 0 10 10").attr("refX", -1).attr("refY", 5).attr("markerUnits", "userSpaceOnUse").attr("markerWidth", 11).attr("markerHeight", 11).attr("orient", "auto").append("circle").attr("cx", "5").attr("cy", "5").attr("r", "5").attr("class", "arrowMarkerPath").style("stroke-width", 1).style("stroke-dasharray", "1,0");
97715
97778
  }, "circle");
97716
- var cross = /* @__PURE__ */ __name((elem, type2, id30) => {
97717
- elem.append("marker").attr("id", id30 + "_" + type2 + "-crossEnd").attr("class", "marker cross " + type2).attr("viewBox", "0 0 11 11").attr("refX", 12).attr("refY", 5.2).attr("markerUnits", "userSpaceOnUse").attr("markerWidth", 11).attr("markerHeight", 11).attr("orient", "auto").append("path").attr("d", "M 1,1 l 9,9 M 10,1 l -9,9").attr("class", "arrowMarkerPath").style("stroke-width", 2).style("stroke-dasharray", "1,0");
97718
- elem.append("marker").attr("id", id30 + "_" + type2 + "-crossStart").attr("class", "marker cross " + type2).attr("viewBox", "0 0 11 11").attr("refX", -1).attr("refY", 5.2).attr("markerUnits", "userSpaceOnUse").attr("markerWidth", 11).attr("markerHeight", 11).attr("orient", "auto").append("path").attr("d", "M 1,1 l 9,9 M 10,1 l -9,9").attr("class", "arrowMarkerPath").style("stroke-width", 2).style("stroke-dasharray", "1,0");
97779
+ var cross = /* @__PURE__ */ __name((elem, type2, id28) => {
97780
+ elem.append("marker").attr("id", id28 + "_" + type2 + "-crossEnd").attr("class", "marker cross " + type2).attr("viewBox", "0 0 11 11").attr("refX", 12).attr("refY", 5.2).attr("markerUnits", "userSpaceOnUse").attr("markerWidth", 11).attr("markerHeight", 11).attr("orient", "auto").append("path").attr("d", "M 1,1 l 9,9 M 10,1 l -9,9").attr("class", "arrowMarkerPath").style("stroke-width", 2).style("stroke-dasharray", "1,0");
97781
+ elem.append("marker").attr("id", id28 + "_" + type2 + "-crossStart").attr("class", "marker cross " + type2).attr("viewBox", "0 0 11 11").attr("refX", -1).attr("refY", 5.2).attr("markerUnits", "userSpaceOnUse").attr("markerWidth", 11).attr("markerHeight", 11).attr("orient", "auto").append("path").attr("d", "M 1,1 l 9,9 M 10,1 l -9,9").attr("class", "arrowMarkerPath").style("stroke-width", 2).style("stroke-dasharray", "1,0");
97719
97782
  }, "cross");
97720
- var barb = /* @__PURE__ */ __name((elem, type2, id30) => {
97721
- elem.append("defs").append("marker").attr("id", id30 + "_" + type2 + "-barbEnd").attr("refX", 19).attr("refY", 7).attr("markerWidth", 20).attr("markerHeight", 14).attr("markerUnits", "userSpaceOnUse").attr("orient", "auto").append("path").attr("d", "M 19,7 L9,13 L14,7 L9,1 Z");
97783
+ var barb = /* @__PURE__ */ __name((elem, type2, id28) => {
97784
+ elem.append("defs").append("marker").attr("id", id28 + "_" + type2 + "-barbEnd").attr("refX", 19).attr("refY", 7).attr("markerWidth", 20).attr("markerHeight", 14).attr("markerUnits", "userSpaceOnUse").attr("orient", "auto").append("path").attr("d", "M 19,7 L9,13 L14,7 L9,1 Z");
97722
97785
  }, "barb");
97723
- var only_one = /* @__PURE__ */ __name((elem, type2, id30) => {
97724
- elem.append("defs").append("marker").attr("id", id30 + "_" + type2 + "-onlyOneStart").attr("class", "marker onlyOne " + type2).attr("refX", 0).attr("refY", 9).attr("markerWidth", 18).attr("markerHeight", 18).attr("orient", "auto").append("path").attr("d", "M9,0 L9,18 M15,0 L15,18");
97725
- elem.append("defs").append("marker").attr("id", id30 + "_" + type2 + "-onlyOneEnd").attr("class", "marker onlyOne " + type2).attr("refX", 18).attr("refY", 9).attr("markerWidth", 18).attr("markerHeight", 18).attr("orient", "auto").append("path").attr("d", "M3,0 L3,18 M9,0 L9,18");
97786
+ var only_one = /* @__PURE__ */ __name((elem, type2, id28) => {
97787
+ elem.append("defs").append("marker").attr("id", id28 + "_" + type2 + "-onlyOneStart").attr("class", "marker onlyOne " + type2).attr("refX", 0).attr("refY", 9).attr("markerWidth", 18).attr("markerHeight", 18).attr("orient", "auto").append("path").attr("d", "M9,0 L9,18 M15,0 L15,18");
97788
+ elem.append("defs").append("marker").attr("id", id28 + "_" + type2 + "-onlyOneEnd").attr("class", "marker onlyOne " + type2).attr("refX", 18).attr("refY", 9).attr("markerWidth", 18).attr("markerHeight", 18).attr("orient", "auto").append("path").attr("d", "M3,0 L3,18 M9,0 L9,18");
97726
97789
  }, "only_one");
97727
- var zero_or_one = /* @__PURE__ */ __name((elem, type2, id30) => {
97728
- const startMarker = elem.append("defs").append("marker").attr("id", id30 + "_" + type2 + "-zeroOrOneStart").attr("class", "marker zeroOrOne " + type2).attr("refX", 0).attr("refY", 9).attr("markerWidth", 30).attr("markerHeight", 18).attr("orient", "auto");
97790
+ var zero_or_one = /* @__PURE__ */ __name((elem, type2, id28) => {
97791
+ const startMarker = elem.append("defs").append("marker").attr("id", id28 + "_" + type2 + "-zeroOrOneStart").attr("class", "marker zeroOrOne " + type2).attr("refX", 0).attr("refY", 9).attr("markerWidth", 30).attr("markerHeight", 18).attr("orient", "auto");
97729
97792
  startMarker.append("circle").attr("fill", "white").attr("cx", 21).attr("cy", 9).attr("r", 6);
97730
97793
  startMarker.append("path").attr("d", "M9,0 L9,18");
97731
- const endMarker = elem.append("defs").append("marker").attr("id", id30 + "_" + type2 + "-zeroOrOneEnd").attr("class", "marker zeroOrOne " + type2).attr("refX", 30).attr("refY", 9).attr("markerWidth", 30).attr("markerHeight", 18).attr("orient", "auto");
97794
+ const endMarker = elem.append("defs").append("marker").attr("id", id28 + "_" + type2 + "-zeroOrOneEnd").attr("class", "marker zeroOrOne " + type2).attr("refX", 30).attr("refY", 9).attr("markerWidth", 30).attr("markerHeight", 18).attr("orient", "auto");
97732
97795
  endMarker.append("circle").attr("fill", "white").attr("cx", 9).attr("cy", 9).attr("r", 6);
97733
97796
  endMarker.append("path").attr("d", "M21,0 L21,18");
97734
97797
  }, "zero_or_one");
97735
- var one_or_more = /* @__PURE__ */ __name((elem, type2, id30) => {
97736
- elem.append("defs").append("marker").attr("id", id30 + "_" + type2 + "-oneOrMoreStart").attr("class", "marker oneOrMore " + type2).attr("refX", 18).attr("refY", 18).attr("markerWidth", 45).attr("markerHeight", 36).attr("orient", "auto").append("path").attr("d", "M0,18 Q 18,0 36,18 Q 18,36 0,18 M42,9 L42,27");
97737
- elem.append("defs").append("marker").attr("id", id30 + "_" + type2 + "-oneOrMoreEnd").attr("class", "marker oneOrMore " + type2).attr("refX", 27).attr("refY", 18).attr("markerWidth", 45).attr("markerHeight", 36).attr("orient", "auto").append("path").attr("d", "M3,9 L3,27 M9,18 Q27,0 45,18 Q27,36 9,18");
97798
+ var one_or_more = /* @__PURE__ */ __name((elem, type2, id28) => {
97799
+ elem.append("defs").append("marker").attr("id", id28 + "_" + type2 + "-oneOrMoreStart").attr("class", "marker oneOrMore " + type2).attr("refX", 18).attr("refY", 18).attr("markerWidth", 45).attr("markerHeight", 36).attr("orient", "auto").append("path").attr("d", "M0,18 Q 18,0 36,18 Q 18,36 0,18 M42,9 L42,27");
97800
+ elem.append("defs").append("marker").attr("id", id28 + "_" + type2 + "-oneOrMoreEnd").attr("class", "marker oneOrMore " + type2).attr("refX", 27).attr("refY", 18).attr("markerWidth", 45).attr("markerHeight", 36).attr("orient", "auto").append("path").attr("d", "M3,9 L3,27 M9,18 Q27,0 45,18 Q27,36 9,18");
97738
97801
  }, "one_or_more");
97739
- var zero_or_more = /* @__PURE__ */ __name((elem, type2, id30) => {
97740
- const startMarker = elem.append("defs").append("marker").attr("id", id30 + "_" + type2 + "-zeroOrMoreStart").attr("class", "marker zeroOrMore " + type2).attr("refX", 18).attr("refY", 18).attr("markerWidth", 57).attr("markerHeight", 36).attr("orient", "auto");
97802
+ var zero_or_more = /* @__PURE__ */ __name((elem, type2, id28) => {
97803
+ const startMarker = elem.append("defs").append("marker").attr("id", id28 + "_" + type2 + "-zeroOrMoreStart").attr("class", "marker zeroOrMore " + type2).attr("refX", 18).attr("refY", 18).attr("markerWidth", 57).attr("markerHeight", 36).attr("orient", "auto");
97741
97804
  startMarker.append("circle").attr("fill", "white").attr("cx", 48).attr("cy", 18).attr("r", 6);
97742
97805
  startMarker.append("path").attr("d", "M0,18 Q18,0 36,18 Q18,36 0,18");
97743
- const endMarker = elem.append("defs").append("marker").attr("id", id30 + "_" + type2 + "-zeroOrMoreEnd").attr("class", "marker zeroOrMore " + type2).attr("refX", 39).attr("refY", 18).attr("markerWidth", 57).attr("markerHeight", 36).attr("orient", "auto");
97806
+ const endMarker = elem.append("defs").append("marker").attr("id", id28 + "_" + type2 + "-zeroOrMoreEnd").attr("class", "marker zeroOrMore " + type2).attr("refX", 39).attr("refY", 18).attr("markerWidth", 57).attr("markerHeight", 36).attr("orient", "auto");
97744
97807
  endMarker.append("circle").attr("fill", "white").attr("cx", 9).attr("cy", 18).attr("r", 6);
97745
97808
  endMarker.append("path").attr("d", "M21,18 Q39,0 57,18 Q39,36 21,18");
97746
97809
  }, "zero_or_more");
97747
- var requirement_arrow = /* @__PURE__ */ __name((elem, type2, id30) => {
97748
- elem.append("defs").append("marker").attr("id", id30 + "_" + type2 + "-requirement_arrowEnd").attr("refX", 20).attr("refY", 10).attr("markerWidth", 20).attr("markerHeight", 20).attr("orient", "auto").append("path").attr(
97810
+ var requirement_arrow = /* @__PURE__ */ __name((elem, type2, id28) => {
97811
+ elem.append("defs").append("marker").attr("id", id28 + "_" + type2 + "-requirement_arrowEnd").attr("refX", 20).attr("refY", 10).attr("markerWidth", 20).attr("markerHeight", 20).attr("orient", "auto").append("path").attr(
97749
97812
  "d",
97750
97813
  `M0,0
97751
97814
  L20,10
@@ -97753,8 +97816,8 @@ var requirement_arrow = /* @__PURE__ */ __name((elem, type2, id30) => {
97753
97816
  L0,20`
97754
97817
  );
97755
97818
  }, "requirement_arrow");
97756
- var requirement_contains = /* @__PURE__ */ __name((elem, type2, id30) => {
97757
- const containsNode = elem.append("defs").append("marker").attr("id", id30 + "_" + type2 + "-requirement_containsStart").attr("refX", 0).attr("refY", 10).attr("markerWidth", 20).attr("markerHeight", 20).attr("orient", "auto").append("g");
97819
+ var requirement_contains = /* @__PURE__ */ __name((elem, type2, id28) => {
97820
+ const containsNode = elem.append("defs").append("marker").attr("id", id28 + "_" + type2 + "-requirement_containsStart").attr("refX", 0).attr("refY", 10).attr("markerWidth", 20).attr("markerHeight", 20).attr("orient", "auto").append("g");
97758
97821
  containsNode.append("circle").attr("cx", 10).attr("cy", 10).attr("r", 9).attr("fill", "none");
97759
97822
  containsNode.append("line").attr("x1", 1).attr("x2", 19).attr("y1", 10).attr("y2", 10);
97760
97823
  containsNode.append("line").attr("y1", 1).attr("y2", 19).attr("x1", 10).attr("x2", 10);
@@ -97792,20 +97855,20 @@ var internalHelpers = {
97792
97855
  };
97793
97856
  var layoutAlgorithms = {};
97794
97857
  var registerLayoutLoaders = /* @__PURE__ */ __name((loaders) => {
97795
- for (const loader30 of loaders) {
97796
- layoutAlgorithms[loader30.name] = loader30;
97858
+ for (const loader28 of loaders) {
97859
+ layoutAlgorithms[loader28.name] = loader28;
97797
97860
  }
97798
97861
  }, "registerLayoutLoaders");
97799
97862
  var registerDefaultLayoutLoaders = /* @__PURE__ */ __name(() => {
97800
97863
  registerLayoutLoaders([
97801
97864
  {
97802
97865
  name: "dagre",
97803
- loader: /* @__PURE__ */ __name(async () => await __vitePreload(() => import("./dagre-KLK3FWXG-ETpwT3pg.js"), true ? __vite__mapDeps([0,1,2,3,4,5]) : void 0), "loader")
97866
+ loader: /* @__PURE__ */ __name(async () => await __vitePreload(() => import("./dagre-6UL2VRFP-VF-xGhAf.js"), true ? __vite__mapDeps([0,1,2,3,4,5]) : void 0), "loader")
97804
97867
  },
97805
97868
  ...[
97806
97869
  {
97807
97870
  name: "cose-bilkent",
97808
- loader: /* @__PURE__ */ __name(async () => await __vitePreload(() => import("./cose-bilkent-S5V4N54A-CfkPOIie.js"), true ? __vite__mapDeps([6,7]) : void 0), "loader")
97871
+ loader: /* @__PURE__ */ __name(async () => await __vitePreload(() => import("./cose-bilkent-S5V4N54A-BjJnzB2N.js"), true ? __vite__mapDeps([6,7]) : void 0), "loader")
97809
97872
  }
97810
97873
  ]
97811
97874
  ]);
@@ -98245,7 +98308,7 @@ var detector = /* @__PURE__ */ __name((txt) => {
98245
98308
  }, "detector");
98246
98309
  var loader = /* @__PURE__ */ __name(async () => {
98247
98310
  const { diagram: diagram2 } = await __vitePreload(async () => {
98248
- const { diagram: diagram22 } = await import("./c4Diagram-IC4MRINW-D_lhLw36.js");
98311
+ const { diagram: diagram22 } = await import("./c4Diagram-YG6GDRKO-CR7zJ2_u.js");
98249
98312
  return { diagram: diagram22 };
98250
98313
  }, true ? __vite__mapDeps([8,9]) : void 0);
98251
98314
  return { id: id$1, diagram: diagram2 };
@@ -98265,9 +98328,9 @@ var detector2 = /* @__PURE__ */ __name((txt, config2) => {
98265
98328
  }, "detector");
98266
98329
  var loader2 = /* @__PURE__ */ __name(async () => {
98267
98330
  const { diagram: diagram2 } = await __vitePreload(async () => {
98268
- const { diagram: diagram22 } = await import("./flowDiagram-PKNHOUZH-CBmrK8ST.js");
98331
+ const { diagram: diagram22 } = await import("./flowDiagram-NV44I4VS-wOdPUQ7Y.js");
98269
98332
  return { diagram: diagram22 };
98270
- }, true ? __vite__mapDeps([10,11,9,12,13,14]) : void 0);
98333
+ }, true ? __vite__mapDeps([10,11,12,13,14]) : void 0);
98271
98334
  return { id: id2, diagram: diagram2 };
98272
98335
  }, "loader");
98273
98336
  var plugin2 = {
@@ -98291,9 +98354,9 @@ var detector3 = /* @__PURE__ */ __name((txt, config2) => {
98291
98354
  }, "detector");
98292
98355
  var loader3 = /* @__PURE__ */ __name(async () => {
98293
98356
  const { diagram: diagram2 } = await __vitePreload(async () => {
98294
- const { diagram: diagram22 } = await import("./flowDiagram-PKNHOUZH-CBmrK8ST.js");
98357
+ const { diagram: diagram22 } = await import("./flowDiagram-NV44I4VS-wOdPUQ7Y.js");
98295
98358
  return { diagram: diagram22 };
98296
- }, true ? __vite__mapDeps([10,11,9,12,13,14]) : void 0);
98359
+ }, true ? __vite__mapDeps([10,11,12,13,14]) : void 0);
98297
98360
  return { id: id3, diagram: diagram2 };
98298
98361
  }, "loader");
98299
98362
  var plugin3 = {
@@ -98308,7 +98371,7 @@ var detector4 = /* @__PURE__ */ __name((txt) => {
98308
98371
  }, "detector");
98309
98372
  var loader4 = /* @__PURE__ */ __name(async () => {
98310
98373
  const { diagram: diagram2 } = await __vitePreload(async () => {
98311
- const { diagram: diagram22 } = await import("./erDiagram-INFDFZHY-Cjpy0ose.js");
98374
+ const { diagram: diagram22 } = await import("./erDiagram-Q2GNP2WA-DkI5eYww.js");
98312
98375
  return { diagram: diagram22 };
98313
98376
  }, true ? __vite__mapDeps([15,12,13,14]) : void 0);
98314
98377
  return { id: id4, diagram: diagram2 };
@@ -98325,7 +98388,7 @@ var detector5 = /* @__PURE__ */ __name((txt) => {
98325
98388
  }, "detector");
98326
98389
  var loader5 = /* @__PURE__ */ __name(async () => {
98327
98390
  const { diagram: diagram2 } = await __vitePreload(async () => {
98328
- const { diagram: diagram22 } = await import("./gitGraphDiagram-K3NZZRJ6-DcAa_Q3i.js");
98391
+ const { diagram: diagram22 } = await import("./gitGraphDiagram-V2S2FVAM-Bsz7u1vi.js");
98329
98392
  return { diagram: diagram22 };
98330
98393
  }, true ? __vite__mapDeps([16,17,18,19,2,4,5]) : void 0);
98331
98394
  return { id: id5, diagram: diagram2 };
@@ -98342,7 +98405,7 @@ var detector6 = /* @__PURE__ */ __name((txt) => {
98342
98405
  }, "detector");
98343
98406
  var loader6 = /* @__PURE__ */ __name(async () => {
98344
98407
  const { diagram: diagram2 } = await __vitePreload(async () => {
98345
- const { diagram: diagram22 } = await import("./ganttDiagram-A5KZAMGK-CLoJRKb7.js");
98408
+ const { diagram: diagram22 } = await import("./ganttDiagram-JELNMOA3-BtRWgkUH.js");
98346
98409
  return { diagram: diagram22 };
98347
98410
  }, true ? __vite__mapDeps([20,21,22,23]) : void 0);
98348
98411
  return { id: id6, diagram: diagram2 };
@@ -98359,7 +98422,7 @@ var detector7 = /* @__PURE__ */ __name((txt) => {
98359
98422
  }, "detector");
98360
98423
  var loader7 = /* @__PURE__ */ __name(async () => {
98361
98424
  const { diagram: diagram2 } = await __vitePreload(async () => {
98362
- const { diagram: diagram22 } = await import("./infoDiagram-LFFYTUFH-CXY1BDG-.js");
98425
+ const { diagram: diagram22 } = await import("./infoDiagram-HS3SLOUP-BMaxCvH5.js");
98363
98426
  return { diagram: diagram22 };
98364
98427
  }, true ? __vite__mapDeps([24,19,2,4,5]) : void 0);
98365
98428
  return { id: id7, diagram: diagram2 };
@@ -98375,7 +98438,7 @@ var detector8 = /* @__PURE__ */ __name((txt) => {
98375
98438
  }, "detector");
98376
98439
  var loader8 = /* @__PURE__ */ __name(async () => {
98377
98440
  const { diagram: diagram2 } = await __vitePreload(async () => {
98378
- const { diagram: diagram22 } = await import("./pieDiagram-SKSYHLDU-BVfKuFkc.js");
98441
+ const { diagram: diagram22 } = await import("./pieDiagram-ADFJNKIX-CLQjpmAG.js");
98379
98442
  return { diagram: diagram22 };
98380
98443
  }, true ? __vite__mapDeps([25,17,19,2,4,5,26,27,22]) : void 0);
98381
98444
  return { id: id8, diagram: diagram2 };
@@ -98391,7 +98454,7 @@ var detector9 = /* @__PURE__ */ __name((txt) => {
98391
98454
  }, "detector");
98392
98455
  var loader9 = /* @__PURE__ */ __name(async () => {
98393
98456
  const { diagram: diagram2 } = await __vitePreload(async () => {
98394
- const { diagram: diagram22 } = await import("./quadrantDiagram-337W2JSQ-DjOan1Ul.js");
98457
+ const { diagram: diagram22 } = await import("./quadrantDiagram-AYHSOK5B-ClD_bz7z.js");
98395
98458
  return { diagram: diagram22 };
98396
98459
  }, true ? __vite__mapDeps([28,21,22,23]) : void 0);
98397
98460
  return { id: id9, diagram: diagram2 };
@@ -98408,7 +98471,7 @@ var detector10 = /* @__PURE__ */ __name((txt) => {
98408
98471
  }, "detector");
98409
98472
  var loader10 = /* @__PURE__ */ __name(async () => {
98410
98473
  const { diagram: diagram2 } = await __vitePreload(async () => {
98411
- const { diagram: diagram22 } = await import("./xychartDiagram-JWTSCODW-KYLvRsLH.js");
98474
+ const { diagram: diagram22 } = await import("./xychartDiagram-PRI3JC2R-CS5RAtQE.js");
98412
98475
  return { diagram: diagram22 };
98413
98476
  }, true ? __vite__mapDeps([29,22,27,21,23]) : void 0);
98414
98477
  return { id: id10, diagram: diagram2 };
@@ -98425,7 +98488,7 @@ var detector11 = /* @__PURE__ */ __name((txt) => {
98425
98488
  }, "detector");
98426
98489
  var loader11 = /* @__PURE__ */ __name(async () => {
98427
98490
  const { diagram: diagram2 } = await __vitePreload(async () => {
98428
- const { diagram: diagram22 } = await import("./requirementDiagram-Z7DCOOCP-CdkkhNJu.js");
98491
+ const { diagram: diagram22 } = await import("./requirementDiagram-UZGBJVZJ-DOpb-TWH.js");
98429
98492
  return { diagram: diagram22 };
98430
98493
  }, true ? __vite__mapDeps([30,12,13]) : void 0);
98431
98494
  return { id: id11, diagram: diagram2 };
@@ -98442,7 +98505,7 @@ var detector12 = /* @__PURE__ */ __name((txt) => {
98442
98505
  }, "detector");
98443
98506
  var loader12 = /* @__PURE__ */ __name(async () => {
98444
98507
  const { diagram: diagram2 } = await __vitePreload(async () => {
98445
- const { diagram: diagram22 } = await import("./sequenceDiagram-2WXFIKYE-CAf-TzzV.js");
98508
+ const { diagram: diagram22 } = await import("./sequenceDiagram-WL72ISMW-CFMNjBER.js");
98446
98509
  return { diagram: diagram22 };
98447
98510
  }, true ? __vite__mapDeps([31,9,18]) : void 0);
98448
98511
  return { id: id12, diagram: diagram2 };
@@ -98462,9 +98525,9 @@ var detector13 = /* @__PURE__ */ __name((txt, config2) => {
98462
98525
  }, "detector");
98463
98526
  var loader13 = /* @__PURE__ */ __name(async () => {
98464
98527
  const { diagram: diagram2 } = await __vitePreload(async () => {
98465
- const { diagram: diagram22 } = await import("./classDiagram-VBA2DB6C-CGVpNFjf.js");
98528
+ const { diagram: diagram22 } = await import("./classDiagram-2ON5EDUG-BTTGianr.js");
98466
98529
  return { diagram: diagram22 };
98467
- }, true ? __vite__mapDeps([32,33,11,9,12,13]) : void 0);
98530
+ }, true ? __vite__mapDeps([32,33,11,12,13]) : void 0);
98468
98531
  return { id: id13, diagram: diagram2 };
98469
98532
  }, "loader");
98470
98533
  var plugin11 = {
@@ -98482,9 +98545,9 @@ var detector14 = /* @__PURE__ */ __name((txt, config2) => {
98482
98545
  }, "detector");
98483
98546
  var loader14 = /* @__PURE__ */ __name(async () => {
98484
98547
  const { diagram: diagram2 } = await __vitePreload(async () => {
98485
- const { diagram: diagram22 } = await import("./classDiagram-v2-RAHNMMFH-CGVpNFjf.js");
98548
+ const { diagram: diagram22 } = await import("./classDiagram-v2-WZHVMYZB-BTTGianr.js");
98486
98549
  return { diagram: diagram22 };
98487
- }, true ? __vite__mapDeps([34,33,11,9,12,13]) : void 0);
98550
+ }, true ? __vite__mapDeps([34,33,11,12,13]) : void 0);
98488
98551
  return { id: id14, diagram: diagram2 };
98489
98552
  }, "loader");
98490
98553
  var plugin12 = {
@@ -98502,7 +98565,7 @@ var detector15 = /* @__PURE__ */ __name((txt, config2) => {
98502
98565
  }, "detector");
98503
98566
  var loader15 = /* @__PURE__ */ __name(async () => {
98504
98567
  const { diagram: diagram2 } = await __vitePreload(async () => {
98505
- const { diagram: diagram22 } = await import("./stateDiagram-RAJIS63D-CjQh2yGU.js");
98568
+ const { diagram: diagram22 } = await import("./stateDiagram-FKZM4ZOC-BQeDlw0P.js");
98506
98569
  return { diagram: diagram22 };
98507
98570
  }, true ? __vite__mapDeps([35,36,12,13,1,2,3,4]) : void 0);
98508
98571
  return { id: id15, diagram: diagram2 };
@@ -98525,7 +98588,7 @@ var detector16 = /* @__PURE__ */ __name((txt, config2) => {
98525
98588
  }, "detector");
98526
98589
  var loader16 = /* @__PURE__ */ __name(async () => {
98527
98590
  const { diagram: diagram2 } = await __vitePreload(async () => {
98528
- const { diagram: diagram22 } = await import("./stateDiagram-v2-FVOUBMTO-BINESHF-.js");
98591
+ const { diagram: diagram22 } = await import("./stateDiagram-v2-4FDKWEC3-DscX61Rs.js");
98529
98592
  return { diagram: diagram22 };
98530
98593
  }, true ? __vite__mapDeps([37,36,12,13]) : void 0);
98531
98594
  return { id: id16, diagram: diagram2 };
@@ -98542,9 +98605,9 @@ var detector17 = /* @__PURE__ */ __name((txt) => {
98542
98605
  }, "detector");
98543
98606
  var loader17 = /* @__PURE__ */ __name(async () => {
98544
98607
  const { diagram: diagram2 } = await __vitePreload(async () => {
98545
- const { diagram: diagram22 } = await import("./journeyDiagram-4ABVD52K-jFEOb3_9.js");
98608
+ const { diagram: diagram22 } = await import("./journeyDiagram-XKPGCS4Q-ejyerzmG.js");
98546
98609
  return { diagram: diagram22 };
98547
- }, true ? __vite__mapDeps([38,11,9,26]) : void 0);
98610
+ }, true ? __vite__mapDeps([38,9,11,26]) : void 0);
98548
98611
  return { id: id17, diagram: diagram2 };
98549
98612
  }, "loader");
98550
98613
  var plugin15 = {
@@ -98553,9 +98616,9 @@ var plugin15 = {
98553
98616
  loader: loader17
98554
98617
  };
98555
98618
  var journeyDetector_default = plugin15;
98556
- var draw = /* @__PURE__ */ __name((_text, id30, version2) => {
98619
+ var draw = /* @__PURE__ */ __name((_text, id28, version2) => {
98557
98620
  log.debug("rendering svg for syntax error\n");
98558
- const svg2 = selectSvgElement(id30);
98621
+ const svg2 = selectSvgElement(id28);
98559
98622
  const g2 = svg2.append("g");
98560
98623
  svg2.attr("viewBox", "0 0 2412 512");
98561
98624
  configureSvgSize(svg2, 100, 512, true);
@@ -98612,9 +98675,9 @@ var detector18 = /* @__PURE__ */ __name((txt, config2 = {}) => {
98612
98675
  }, "detector");
98613
98676
  var loader18 = /* @__PURE__ */ __name(async () => {
98614
98677
  const { diagram: diagram2 } = await __vitePreload(async () => {
98615
- const { diagram: diagram22 } = await import("./flowDiagram-PKNHOUZH-CBmrK8ST.js");
98678
+ const { diagram: diagram22 } = await import("./flowDiagram-NV44I4VS-wOdPUQ7Y.js");
98616
98679
  return { diagram: diagram22 };
98617
- }, true ? __vite__mapDeps([10,11,9,12,13,14]) : void 0);
98680
+ }, true ? __vite__mapDeps([10,11,12,13,14]) : void 0);
98618
98681
  return { id: id18, diagram: diagram2 };
98619
98682
  }, "loader");
98620
98683
  var plugin16 = {
@@ -98629,7 +98692,7 @@ var detector19 = /* @__PURE__ */ __name((txt) => {
98629
98692
  }, "detector");
98630
98693
  var loader19 = /* @__PURE__ */ __name(async () => {
98631
98694
  const { diagram: diagram2 } = await __vitePreload(async () => {
98632
- const { diagram: diagram22 } = await import("./timeline-definition-YZTLITO2-FCh1aV2p.js");
98695
+ const { diagram: diagram22 } = await import("./timeline-definition-IT6M3QCI-BcXPSTiw.js");
98633
98696
  return { diagram: diagram22 };
98634
98697
  }, true ? __vite__mapDeps([39,26]) : void 0);
98635
98698
  return { id: id19, diagram: diagram2 };
@@ -98646,7 +98709,7 @@ var detector20 = /* @__PURE__ */ __name((txt) => {
98646
98709
  }, "detector");
98647
98710
  var loader20 = /* @__PURE__ */ __name(async () => {
98648
98711
  const { diagram: diagram2 } = await __vitePreload(async () => {
98649
- const { diagram: diagram22 } = await import("./mindmap-definition-YRQLILUH-BXxTVKab.js");
98712
+ const { diagram: diagram22 } = await import("./mindmap-definition-VGOIOE7T-DOpxjGVo.js");
98650
98713
  return { diagram: diagram22 };
98651
98714
  }, true ? __vite__mapDeps([40,12,13]) : void 0);
98652
98715
  return { id: id20, diagram: diagram2 };
@@ -98663,7 +98726,7 @@ var detector21 = /* @__PURE__ */ __name((txt) => {
98663
98726
  }, "detector");
98664
98727
  var loader21 = /* @__PURE__ */ __name(async () => {
98665
98728
  const { diagram: diagram2 } = await __vitePreload(async () => {
98666
- const { diagram: diagram22 } = await import("./kanban-definition-K7BYSVSG-g9DIRWk3.js");
98729
+ const { diagram: diagram22 } = await import("./kanban-definition-3W4ZIXB7-CYj35TEs.js");
98667
98730
  return { diagram: diagram22 };
98668
98731
  }, true ? __vite__mapDeps([41,11]) : void 0);
98669
98732
  return { id: id21, diagram: diagram2 };
@@ -98680,7 +98743,7 @@ var detector22 = /* @__PURE__ */ __name((txt) => {
98680
98743
  }, "detector");
98681
98744
  var loader22 = /* @__PURE__ */ __name(async () => {
98682
98745
  const { diagram: diagram2 } = await __vitePreload(async () => {
98683
- const { diagram: diagram22 } = await import("./sankeyDiagram-WA2Y5GQK-Cc7UCE1M.js");
98746
+ const { diagram: diagram22 } = await import("./sankeyDiagram-TZEHDZUN-D8Hsj3yx.js");
98684
98747
  return { diagram: diagram22 };
98685
98748
  }, true ? __vite__mapDeps([42,27,22]) : void 0);
98686
98749
  return { id: id22, diagram: diagram2 };
@@ -98697,7 +98760,7 @@ var detector23 = /* @__PURE__ */ __name((txt) => {
98697
98760
  }, "detector");
98698
98761
  var loader23 = /* @__PURE__ */ __name(async () => {
98699
98762
  const { diagram: diagram2 } = await __vitePreload(async () => {
98700
- const { diagram: diagram22 } = await import("./diagram-P4PSJMXO-CITRT5KI.js");
98763
+ const { diagram: diagram22 } = await import("./diagram-S2PKOQOG-CkK4SRyE.js");
98701
98764
  return { diagram: diagram22 };
98702
98765
  }, true ? __vite__mapDeps([43,17,19,2,4,5]) : void 0);
98703
98766
  return { id: id23, diagram: diagram2 };
@@ -98713,7 +98776,7 @@ var detector24 = /* @__PURE__ */ __name((txt) => {
98713
98776
  }, "detector");
98714
98777
  var loader24 = /* @__PURE__ */ __name(async () => {
98715
98778
  const { diagram: diagram2 } = await __vitePreload(async () => {
98716
- const { diagram: diagram22 } = await import("./diagram-IFDJBPK2-BUoOrHGY.js");
98779
+ const { diagram: diagram22 } = await import("./diagram-QEK2KX5R-DoYCnEw_.js");
98717
98780
  return { diagram: diagram22 };
98718
98781
  }, true ? __vite__mapDeps([44,17,19,2,4,5]) : void 0);
98719
98782
  return { id: id24, diagram: diagram2 };
@@ -98729,7 +98792,7 @@ var detector25 = /* @__PURE__ */ __name((txt) => {
98729
98792
  }, "detector");
98730
98793
  var loader25 = /* @__PURE__ */ __name(async () => {
98731
98794
  const { diagram: diagram2 } = await __vitePreload(async () => {
98732
- const { diagram: diagram22 } = await import("./blockDiagram-WCTKOSBZ-D8_SVEGn.js");
98795
+ const { diagram: diagram22 } = await import("./blockDiagram-VD42YOAC-DvE0lybt.js");
98733
98796
  return { diagram: diagram22 };
98734
98797
  }, true ? __vite__mapDeps([45,11,5,2,1,14]) : void 0);
98735
98798
  return { id: id25, diagram: diagram2 };
@@ -98746,7 +98809,7 @@ var detector26 = /* @__PURE__ */ __name((txt) => {
98746
98809
  }, "detector");
98747
98810
  var loader26 = /* @__PURE__ */ __name(async () => {
98748
98811
  const { diagram: diagram2 } = await __vitePreload(async () => {
98749
- const { diagram: diagram22 } = await import("./architectureDiagram-2XIMDMQ5-CsuG-Xa3.js");
98812
+ const { diagram: diagram22 } = await import("./architectureDiagram-VXUJARFQ-CNmygmp3.js");
98750
98813
  return { diagram: diagram22 };
98751
98814
  }, true ? __vite__mapDeps([46,17,19,2,4,5,7]) : void 0);
98752
98815
  return { id: id26, diagram: diagram2 };
@@ -98757,55 +98820,22 @@ var architecture = {
98757
98820
  loader: loader26
98758
98821
  };
98759
98822
  var architectureDetector_default = architecture;
98760
- var id27 = "ishikawa";
98823
+ var id27 = "treemap";
98761
98824
  var detector27 = /* @__PURE__ */ __name((txt) => {
98762
- return /^\s*ishikawa(-beta)?\b/i.test(txt);
98825
+ return /^\s*treemap/.test(txt);
98763
98826
  }, "detector");
98764
98827
  var loader27 = /* @__PURE__ */ __name(async () => {
98765
98828
  const { diagram: diagram2 } = await __vitePreload(async () => {
98766
- const { diagram: diagram22 } = await import("./ishikawaDiagram-PHBUUO56-CCgHez0F.js");
98829
+ const { diagram: diagram22 } = await import("./diagram-PSM6KHXK-Ba5U0oRY.js");
98767
98830
  return { diagram: diagram22 };
98768
- }, true ? [] : void 0);
98831
+ }, true ? __vite__mapDeps([47,13,17,19,2,4,5,23,27,22]) : void 0);
98769
98832
  return { id: id27, diagram: diagram2 };
98770
98833
  }, "loader");
98771
- var ishikawa = {
98834
+ var treemap = {
98772
98835
  id: id27,
98773
98836
  detector: detector27,
98774
98837
  loader: loader27
98775
98838
  };
98776
- var id28 = "venn";
98777
- var detector28 = /* @__PURE__ */ __name((txt) => {
98778
- return /^\s*venn-beta/.test(txt);
98779
- }, "detector");
98780
- var loader28 = /* @__PURE__ */ __name(async () => {
98781
- const { diagram: diagram2 } = await __vitePreload(async () => {
98782
- const { diagram: diagram22 } = await import("./vennDiagram-LZ73GAT5-T1yQlS2L.js");
98783
- return { diagram: diagram22 };
98784
- }, true ? [] : void 0);
98785
- return { id: id28, diagram: diagram2 };
98786
- }, "loader");
98787
- var plugin22 = {
98788
- id: id28,
98789
- detector: detector28,
98790
- loader: loader28
98791
- };
98792
- var vennDetector_default = plugin22;
98793
- var id29 = "treemap";
98794
- var detector29 = /* @__PURE__ */ __name((txt) => {
98795
- return /^\s*treemap/.test(txt);
98796
- }, "detector");
98797
- var loader29 = /* @__PURE__ */ __name(async () => {
98798
- const { diagram: diagram2 } = await __vitePreload(async () => {
98799
- const { diagram: diagram22 } = await import("./diagram-E7M64L7V-CAkt3_Wu.js");
98800
- return { diagram: diagram22 };
98801
- }, true ? __vite__mapDeps([47,13,17,19,2,4,5,23,27,22]) : void 0);
98802
- return { id: id29, diagram: diagram2 };
98803
- }, "loader");
98804
- var treemap = {
98805
- id: id29,
98806
- detector: detector29,
98807
- loader: loader29
98808
- };
98809
98839
  var hasLoadedDiagrams = false;
98810
98840
  var addDiagrams = /* @__PURE__ */ __name(() => {
98811
98841
  if (hasLoadedDiagrams) {
@@ -98870,24 +98900,22 @@ var addDiagrams = /* @__PURE__ */ __name(() => {
98870
98900
  xychartDetector_default,
98871
98901
  blockDetector_default,
98872
98902
  radar,
98873
- ishikawa,
98874
- treemap,
98875
- vennDetector_default
98903
+ treemap
98876
98904
  );
98877
98905
  }, "addDiagrams");
98878
98906
  var loadRegisteredDiagrams = /* @__PURE__ */ __name(async () => {
98879
98907
  log.debug(`Loading registered diagrams`);
98880
98908
  const results = await Promise.allSettled(
98881
- Object.entries(detectors).map(async ([key, { detector: detector30, loader: loader30 }]) => {
98882
- if (!loader30) {
98909
+ Object.entries(detectors).map(async ([key, { detector: detector28, loader: loader28 }]) => {
98910
+ if (!loader28) {
98883
98911
  return;
98884
98912
  }
98885
98913
  try {
98886
98914
  getDiagram(key);
98887
98915
  } catch {
98888
98916
  try {
98889
- const { diagram: diagram2, id: id30 } = await loader30();
98890
- registerDiagram(id30, diagram2, detector30);
98917
+ const { diagram: diagram2, id: id28 } = await loader28();
98918
+ registerDiagram(id28, diagram2, detector28);
98891
98919
  } catch (err) {
98892
98920
  log.error(`Failed to load external diagram with key ${key}. Removing from detectors.`);
98893
98921
  delete detectors[key];
@@ -98944,12 +98972,12 @@ var Diagram = (_j = class {
98944
98972
  try {
98945
98973
  getDiagram(type2);
98946
98974
  } catch {
98947
- const loader30 = getDiagramLoader(type2);
98948
- if (!loader30) {
98975
+ const loader28 = getDiagramLoader(type2);
98976
+ if (!loader28) {
98949
98977
  throw new UnknownDiagramError(`Diagram ${type2} not found.`);
98950
98978
  }
98951
- const { id: id30, diagram: diagram2 } = await loader30();
98952
- registerDiagram(id30, diagram2);
98979
+ const { id: id28, diagram: diagram2 } = await loader28();
98980
+ registerDiagram(id28, diagram2);
98953
98981
  }
98954
98982
  const { db, parser, renderer: renderer2, init: init2 } = getDiagram(type2);
98955
98983
  if (parser.parser) {
@@ -98963,8 +98991,8 @@ var Diagram = (_j = class {
98963
98991
  await parser.parse(text2);
98964
98992
  return new _j(type2, text2, db, parser, renderer2);
98965
98993
  }
98966
- async render(id30, version2) {
98967
- await this.renderer.draw(this.text, id30, version2, this);
98994
+ async render(id28, version2) {
98995
+ await this.renderer.draw(this.text, id28, version2, this);
98968
98996
  }
98969
98997
  getParser() {
98970
98998
  return this.parser;
@@ -99117,7 +99145,7 @@ ${config2.themeCSS}`;
99117
99145
  :root { --mermaid-alt-font-family: ${config2.altFontFamily}}`;
99118
99146
  }
99119
99147
  if (classDefs instanceof Map) {
99120
- const htmlLabels = getEffectiveHtmlLabels(config2);
99148
+ const htmlLabels = config2.htmlLabels ?? config2.flowchart?.htmlLabels;
99121
99149
  const cssHtmlElements = ["> *", "span"];
99122
99150
  const cssShapeElements = ["rect", "polygon", "ellipse", "circle", "path"];
99123
99151
  const cssElements = htmlLabels ? cssHtmlElements : cssShapeElements;
@@ -99162,13 +99190,13 @@ var putIntoIFrame = /* @__PURE__ */ __name((svgCode = "", svgElement) => {
99162
99190
  ${IFRAME_NOT_SUPPORTED_MSG}
99163
99191
  </iframe>`;
99164
99192
  }, "putIntoIFrame");
99165
- var appendDivSvgG = /* @__PURE__ */ __name((parentRoot, id30, enclosingDivId, divStyle, svgXlink) => {
99193
+ var appendDivSvgG = /* @__PURE__ */ __name((parentRoot, id28, enclosingDivId, divStyle, svgXlink) => {
99166
99194
  const enclosingDiv = parentRoot.append("div");
99167
99195
  enclosingDiv.attr("id", enclosingDivId);
99168
99196
  if (divStyle) {
99169
99197
  enclosingDiv.attr("style", divStyle);
99170
99198
  }
99171
- const svgNode2 = enclosingDiv.append("svg").attr("id", id30).attr("width", "100%").attr("xmlns", XMLNS_SVG_STD);
99199
+ const svgNode2 = enclosingDiv.append("svg").attr("id", id28).attr("width", "100%").attr("xmlns", XMLNS_SVG_STD);
99172
99200
  if (svgXlink) {
99173
99201
  svgNode2.attr("xmlns:xlink", svgXlink);
99174
99202
  }
@@ -99179,12 +99207,12 @@ function sandboxedIframe(parentNode, iFrameId) {
99179
99207
  return parentNode.append("iframe").attr("id", iFrameId).attr("style", "width: 100%; height: 100%;").attr("sandbox", "");
99180
99208
  }
99181
99209
  __name(sandboxedIframe, "sandboxedIframe");
99182
- var removeExistingElements = /* @__PURE__ */ __name((doc, id30, divId, iFrameId) => {
99183
- doc.getElementById(id30)?.remove();
99210
+ var removeExistingElements = /* @__PURE__ */ __name((doc, id28, divId, iFrameId) => {
99211
+ doc.getElementById(id28)?.remove();
99184
99212
  doc.getElementById(divId)?.remove();
99185
99213
  doc.getElementById(iFrameId)?.remove();
99186
99214
  }, "removeExistingElements");
99187
- var render2 = /* @__PURE__ */ __name(async function(id30, text2, svgContainingElement) {
99215
+ var render2 = /* @__PURE__ */ __name(async function(id28, text2, svgContainingElement) {
99188
99216
  addDiagrams();
99189
99217
  const processed = processAndSetConfigs(text2);
99190
99218
  text2 = processed.code;
@@ -99193,10 +99221,10 @@ var render2 = /* @__PURE__ */ __name(async function(id30, text2, svgContainingEl
99193
99221
  if (text2.length > (config2?.maxTextSize ?? MAX_TEXTLENGTH)) {
99194
99222
  text2 = MAX_TEXTLENGTH_EXCEEDED_MSG;
99195
99223
  }
99196
- const idSelector = "#" + id30;
99197
- const iFrameID = "i" + id30;
99224
+ const idSelector = "#" + id28;
99225
+ const iFrameID = "i" + id28;
99198
99226
  const iFrameID_selector = "#" + iFrameID;
99199
- const enclosingDivID = "d" + id30;
99227
+ const enclosingDivID = "d" + id28;
99200
99228
  const enclosingDivID_selector = "#" + enclosingDivID;
99201
99229
  const removeTempElements = /* @__PURE__ */ __name(() => {
99202
99230
  const tmpElementSelector = isSandboxed ? iFrameID_selector : enclosingDivID_selector;
@@ -99220,9 +99248,9 @@ var render2 = /* @__PURE__ */ __name(async function(id30, text2, svgContainingEl
99220
99248
  } else {
99221
99249
  root2 = select(svgContainingElement);
99222
99250
  }
99223
- appendDivSvgG(root2, id30, enclosingDivID, `font-family: ${fontFamily}`, XMLNS_XLINK_STD);
99251
+ appendDivSvgG(root2, id28, enclosingDivID, `font-family: ${fontFamily}`, XMLNS_XLINK_STD);
99224
99252
  } else {
99225
- removeExistingElements(document, id30, enclosingDivID, iFrameID);
99253
+ removeExistingElements(document, id28, enclosingDivID, iFrameID);
99226
99254
  if (isSandboxed) {
99227
99255
  const iframe = sandboxedIframe(select("body"), iFrameID);
99228
99256
  root2 = select(iframe.nodes()[0].contentDocument.body);
@@ -99230,7 +99258,7 @@ var render2 = /* @__PURE__ */ __name(async function(id30, text2, svgContainingEl
99230
99258
  } else {
99231
99259
  root2 = select("body");
99232
99260
  }
99233
- appendDivSvgG(root2, id30, enclosingDivID);
99261
+ appendDivSvgG(root2, id28, enclosingDivID);
99234
99262
  }
99235
99263
  let diag;
99236
99264
  let parseEncounteredException;
@@ -99254,12 +99282,12 @@ var render2 = /* @__PURE__ */ __name(async function(id30, text2, svgContainingEl
99254
99282
  style1.innerHTML = rules;
99255
99283
  svg2.insertBefore(style1, firstChild);
99256
99284
  try {
99257
- await diag.renderer.draw(text2, id30, "11.13.0", diag);
99285
+ await diag.renderer.draw(text2, id28, package_default.version, diag);
99258
99286
  } catch (e2) {
99259
99287
  if (config2.suppressErrorRendering) {
99260
99288
  removeTempElements();
99261
99289
  } else {
99262
- errorRenderer_default.draw(text2, id30, "11.13.0");
99290
+ errorRenderer_default.draw(text2, id28, package_default.version);
99263
99291
  }
99264
99292
  throw e2;
99265
99293
  }
@@ -99267,7 +99295,7 @@ var render2 = /* @__PURE__ */ __name(async function(id30, text2, svgContainingEl
99267
99295
  const a11yTitle = diag.db.getAccTitle?.();
99268
99296
  const a11yDescr = diag.db.getAccDescription?.();
99269
99297
  addA11yInfo(diagramType, svgNode2, a11yTitle, a11yDescr);
99270
- root2.select(`[id="${id30}"]`).selectAll("foreignobject > *").attr("xmlns", XMLNS_XHTML_STD);
99298
+ root2.select(`[id="${id28}"]`).selectAll("foreignobject > *").attr("xmlns", XMLNS_XHTML_STD);
99271
99299
  let svgCode = root2.select(enclosingDivID_selector).node().innerHTML;
99272
99300
  log.debug("config.arrowMarkerAbsolute", config2.arrowMarkerAbsolute);
99273
99301
  svgCode = cleanUpSvgCode(svgCode, isSandboxed, evaluate(config2.arrowMarkerAbsolute));
@@ -99407,7 +99435,7 @@ var runThrowsErrors = /* @__PURE__ */ __name(async function({ postRenderCallback
99407
99435
  continue;
99408
99436
  }
99409
99437
  element.setAttribute("data-processed", "true");
99410
- const id30 = `mermaid-${idGenerator.next()}`;
99438
+ const id28 = `mermaid-${idGenerator.next()}`;
99411
99439
  txt = element.innerHTML;
99412
99440
  txt = dedent(utils_default.entityDecode(txt)).trim().replace(/<br\s*\/?>/gi, "<br/>");
99413
99441
  const init2 = utils_default.detectInit(txt);
@@ -99415,10 +99443,10 @@ var runThrowsErrors = /* @__PURE__ */ __name(async function({ postRenderCallback
99415
99443
  log.debug("Detected early reinit: ", init2);
99416
99444
  }
99417
99445
  try {
99418
- const { svg: svg2, bindFunctions } = await render22(id30, txt, element);
99446
+ const { svg: svg2, bindFunctions } = await render22(id28, txt, element);
99419
99447
  element.innerHTML = svg2;
99420
99448
  if (postRenderCallback) {
99421
- await postRenderCallback(id30);
99449
+ await postRenderCallback(id28);
99422
99450
  }
99423
99451
  if (bindFunctions) {
99424
99452
  bindFunctions(element);
@@ -99513,10 +99541,10 @@ var parse2 = /* @__PURE__ */ __name(async (text2, parseOptions) => {
99513
99541
  executeQueue().catch(reject);
99514
99542
  });
99515
99543
  }, "parse");
99516
- var render22 = /* @__PURE__ */ __name((id30, text2, container) => {
99544
+ var render22 = /* @__PURE__ */ __name((id28, text2, container) => {
99517
99545
  return new Promise((resolve, reject) => {
99518
99546
  const performCall = /* @__PURE__ */ __name(() => new Promise((res, rej) => {
99519
- mermaidAPI.render(id30, text2, container).then(
99547
+ mermaidAPI.render(id28, text2, container).then(
99520
99548
  (r2) => {
99521
99549
  res(r2);
99522
99550
  resolve(r2);
@@ -99534,8 +99562,8 @@ var render22 = /* @__PURE__ */ __name((id30, text2, container) => {
99534
99562
  });
99535
99563
  }, "render");
99536
99564
  var getRegisteredDiagramsMetadata = /* @__PURE__ */ __name(() => {
99537
- return Object.keys(detectors).map((id30) => ({
99538
- id: id30
99565
+ return Object.keys(detectors).map((id28) => ({
99566
+ id: id28
99539
99567
  }));
99540
99568
  }, "getRegisteredDiagramsMetadata");
99541
99569
  var mermaid = {
@@ -99568,13 +99596,13 @@ class DomindsMermaidBlock extends HTMLElement {
99568
99596
  return normalizedNewlines.replace(
99569
99597
  /(\b[\w-]+)\[([^\]\n]*?)\]/g,
99570
99598
  (_full, rawId, rawLabel) => {
99571
- const id30 = String(rawId);
99599
+ const id28 = String(rawId);
99572
99600
  const label = String(rawLabel).trim();
99573
- if (!label) return `${id30}[]`;
99574
- if (label.startsWith('"') || label.startsWith("'")) return `${id30}[${label}]`;
99575
- if (!/[<>()|]/.test(label)) return `${id30}[${label}]`;
99601
+ if (!label) return `${id28}[]`;
99602
+ if (label.startsWith('"') || label.startsWith("'")) return `${id28}[${label}]`;
99603
+ if (!/[<>()|]/.test(label)) return `${id28}[${label}]`;
99576
99604
  const escaped = label.replace(/\\/g, "\\\\").replace(/"/g, '\\"');
99577
- return `${id30}["${escaped}"]`;
99605
+ return `${id28}["${escaped}"]`;
99578
99606
  }
99579
99607
  );
99580
99608
  }
@@ -100015,14 +100043,14 @@ md.core.ruler.push("dominds_heading_ids", (state2) => {
100015
100043
  const rawText = inline2.content;
100016
100044
  const base2 = slugifyHeadingId(rawText);
100017
100045
  if (!base2) continue;
100018
- let id30 = base2;
100046
+ let id28 = base2;
100019
100047
  let attempt = 2;
100020
- while (used.has(id30)) {
100021
- id30 = `${base2}-${attempt}`;
100048
+ while (used.has(id28)) {
100049
+ id28 = `${base2}-${attempt}`;
100022
100050
  attempt += 1;
100023
100051
  }
100024
- used.add(id30);
100025
- token2.attrSet("id", id30);
100052
+ used.add(id28);
100053
+ token2.attrSet("id", id28);
100026
100054
  }
100027
100055
  });
100028
100056
  installDomindsMathBlockRule(md);
@@ -100943,7 +100971,7 @@ class DomindsDialogContainer extends HTMLElement {
100943
100971
  this.teamConfiguration = {
100944
100972
  memberDefaults: { icon: cfg.memberDefaults.icon, name: cfg.memberDefaults.name },
100945
100973
  members: Object.fromEntries(
100946
- Object.entries(cfg.members).map(([id30, m2]) => [id30, { icon: m2.icon, name: m2.name }])
100974
+ Object.entries(cfg.members).map(([id28, m2]) => [id28, { icon: m2.icon, name: m2.name }])
100947
100975
  )
100948
100976
  };
100949
100977
  } catch (error2) {
@@ -101926,9 +101954,9 @@ class DomindsDialogContainer extends HTMLElement {
101926
101954
  const seen2 = /* @__PURE__ */ new Set();
101927
101955
  const out = [];
101928
101956
  for (const match2 of headline.matchAll(re2)) {
101929
- const id30 = (match2[1] ?? "").trim();
101930
- if (id30 === "") continue;
101931
- const mention = `@${id30}`;
101957
+ const id28 = (match2[1] ?? "").trim();
101958
+ if (id28 === "") continue;
101959
+ const mention = `@${id28}`;
101932
101960
  if (seen2.has(mention)) continue;
101933
101961
  seen2.add(mention);
101934
101962
  out.push(mention);
@@ -102824,14 +102852,33 @@ ${event.content}`;
102824
102852
  el.setAttribute("data-origin-course", String(Math.floor(event.originCourse)));
102825
102853
  const safeTimestamp = this.escapeHtml(event.timestamp ?? "");
102826
102854
  const originCourse = Math.floor(event.originCourse);
102827
- const titleText = this.uiLanguage === "zh" ? `旧程诉请结果补入 · C ${String(originCourse)}` : `Carry-over tellask result · C ${String(originCourse)}`;
102855
+ const responderLabel = event.agentId && event.agentId.trim() !== "" ? this.formatAgentLabel(event.agentId) : this.formatAgentLabel(event.responderId);
102856
+ const requesterLabel = event.originMemberId && event.originMemberId.trim() !== "" ? this.formatAgentLabel(event.originMemberId) : this.currentDialog?.agentId && this.currentDialog.agentId.trim() !== "" ? this.formatAgentLabel(this.currentDialog.agentId) : "Assistant";
102857
+ const carryoverLabel = this.uiLanguage === "zh" ? `旧程结果补入 · C${String(originCourse)}` : `Carry-over result · C${String(originCourse)}`;
102858
+ const normalizedSessionSlug = (() => {
102859
+ switch (event.callName) {
102860
+ case "tellask":
102861
+ return event.sessionSlug.trim();
102862
+ case "tellaskSessionless":
102863
+ case "freshBootsReasoning":
102864
+ return "";
102865
+ }
102866
+ })();
102867
+ const sessionSlugHtml = normalizedSessionSlug === "" ? "" : `<span class="teammate-session-slug">· ${this.escapeHtml(normalizedSessionSlug)}</span>`;
102868
+ const visibleResponse = event.response;
102828
102869
  el.innerHTML = `
102829
102870
  <div class="bubble-content">
102830
102871
  <div class="bubble-header">
102831
102872
  <div class="bubble-title">
102832
102873
  <div class="title-row">
102833
102874
  <div class="title-left">
102834
- <span class="author-name">${this.escapeHtml(titleText)}</span>
102875
+ <span class="teammate-kind-label">${this.escapeHtml(carryoverLabel)}</span>
102876
+ <span class="teammate-meta">
102877
+ <span class="requester-name">${this.escapeHtml(requesterLabel)}</span>
102878
+ <span class="response-arrow" aria-hidden="true">←</span>
102879
+ <span class="author-name">${this.escapeHtml(responderLabel)}</span>
102880
+ </span>
102881
+ ${sessionSlugHtml}
102835
102882
  </div>
102836
102883
  <div class="title-right">
102837
102884
  <div class="bubble-title-actions" data-call-id="${this.escapeHtml(event.callId)}">
@@ -102861,7 +102908,7 @@ ${event.content}`;
102861
102908
  const contentEl = el.querySelector(".teammate-content");
102862
102909
  if (contentEl) {
102863
102910
  const md2 = this.createMarkdownSection();
102864
- md2.setRawMarkdown(event.content);
102911
+ md2.setRawMarkdown(visibleResponse);
102865
102912
  contentEl.appendChild(md2);
102866
102913
  }
102867
102914
  const internalBtn = el.querySelector(
@@ -103597,6 +103644,7 @@ ${event.content}`;
103597
103644
  genseq: event.genseq,
103598
103645
  attempt: event.attempt,
103599
103646
  totalAttempts: event.totalAttempts,
103647
+ retryForever: event.retryForever,
103600
103648
  provider: event.provider,
103601
103649
  failureLabel,
103602
103650
  error: errorText,
@@ -103608,6 +103656,7 @@ ${event.content}`;
103608
103656
  genseq: event.genseq,
103609
103657
  attempt: event.attempt,
103610
103658
  totalAttempts: event.totalAttempts,
103659
+ retryForever: event.retryForever,
103611
103660
  provider: event.provider,
103612
103661
  failureLabel,
103613
103662
  error: errorText
@@ -103709,19 +103758,19 @@ ${event.content}`;
103709
103758
  // User messages are now handled by 'end_of_user_saying_evt' event - see handleDialogEvent()
103710
103759
  getAuthorLabel(role, responderId) {
103711
103760
  if (role === "user") return "Human";
103712
- const id30 = responderId || this.currentDialog?.agentId || "";
103713
- if (!id30) return "🤖 Assistant";
103714
- if (this.teamConfiguration?.members?.[id30]) {
103715
- const member = this.teamConfiguration.members[id30];
103761
+ const id28 = responderId || this.currentDialog?.agentId || "";
103762
+ if (!id28) return "🤖 Assistant";
103763
+ if (this.teamConfiguration?.members?.[id28]) {
103764
+ const member = this.teamConfiguration.members[id28];
103716
103765
  const icon2 = member.icon || this.teamConfiguration.memberDefaults?.icon || "🤖";
103717
- const name = member.name || `@${id30}`;
103766
+ const name = member.name || `@${id28}`;
103718
103767
  return `${icon2} ${name}`;
103719
103768
  }
103720
103769
  if (this.teamConfiguration?.memberDefaults) {
103721
103770
  const icon2 = this.teamConfiguration.memberDefaults.icon || "🤖";
103722
- return `${icon2} @${id30}`;
103771
+ return `${icon2} @${id28}`;
103723
103772
  }
103724
- return `🤖 @${id30}`;
103773
+ return `🤖 @${id28}`;
103725
103774
  }
103726
103775
  escapeHtml(text2) {
103727
103776
  return text2.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;").replace(/'/g, "&#39;");
@@ -105347,16 +105396,16 @@ class DomindsDocsPanel extends HTMLElement {
105347
105396
  }
105348
105397
  scrollToPendingAnchorIfAny() {
105349
105398
  if (!this.pendingScrollAnchorId) return;
105350
- const id30 = this.pendingScrollAnchorId;
105399
+ const id28 = this.pendingScrollAnchorId;
105351
105400
  this.pendingScrollAnchorId = null;
105352
- this.scrollToAnchorId(id30);
105401
+ this.scrollToAnchorId(id28);
105353
105402
  }
105354
- scrollToAnchorId(id30) {
105403
+ scrollToAnchorId(id28) {
105355
105404
  const root2 = this.shadowRoot;
105356
105405
  if (!root2) return;
105357
105406
  const body = root2.querySelector(".docs-body");
105358
105407
  if (!(body instanceof HTMLElement)) return;
105359
- const anchor2 = body.querySelector(`#${CSS.escape(id30)}`);
105408
+ const anchor2 = body.querySelector(`#${CSS.escape(id28)}`);
105360
105409
  if (!(anchor2 instanceof HTMLElement)) return;
105361
105410
  anchor2.scrollIntoView({ behavior: "smooth", block: "start" });
105362
105411
  }
@@ -105407,13 +105456,13 @@ class DomindsDocsPanel extends HTMLElement {
105407
105456
  if (href.startsWith("#")) {
105408
105457
  const idRaw = href.slice(1);
105409
105458
  if (!idRaw) return;
105410
- let id30 = idRaw;
105459
+ let id28 = idRaw;
105411
105460
  try {
105412
- id30 = decodeURIComponent(idRaw);
105461
+ id28 = decodeURIComponent(idRaw);
105413
105462
  } catch {
105414
105463
  }
105415
- if (!id30) return;
105416
- this.scrollToAnchorId(id30);
105464
+ if (!id28) return;
105465
+ this.scrollToAnchorId(id28);
105417
105466
  return;
105418
105467
  }
105419
105468
  if (href.startsWith("/f/") || href === "/f" || href === "/workspace" || href.startsWith("/workspace/") || href === "/rtws" || href.startsWith("/rtws/")) {
@@ -106777,8 +106826,8 @@ class DomindsQ4HPanel extends HTMLElement {
106777
106826
  if (!root2) return;
106778
106827
  const selectedId = this.selectedQuestionId;
106779
106828
  root2.querySelectorAll(".q4h-question-card").forEach((card2) => {
106780
- const id30 = card2.getAttribute("data-question-id");
106781
- const selected = selectedId !== null && id30 === selectedId;
106829
+ const id28 = card2.getAttribute("data-question-id");
106830
+ const selected = selectedId !== null && id28 === selectedId;
106782
106831
  card2.classList.toggle("selected", selected);
106783
106832
  });
106784
106833
  if (selectedId !== null) {
@@ -107916,20 +107965,20 @@ class DomindsSnippetsPanel extends HTMLElement {
107916
107965
  const target = e2.target;
107917
107966
  if (target instanceof Element && target.closest("button")) return;
107918
107967
  if (this.state.kind !== "ready") return;
107919
- const id30 = card2.getAttribute("data-id");
107920
- if (typeof id30 !== "string" || id30 === "") return;
107968
+ const id28 = card2.getAttribute("data-id");
107969
+ if (typeof id28 !== "string" || id28 === "") return;
107921
107970
  const all = this.state.groups.flatMap((g2) => g2.templates);
107922
- const snippet2 = all.find((x2) => x2.id === id30);
107971
+ const snippet2 = all.find((x2) => x2.id === id28);
107923
107972
  this.selectSnippet(snippet2 ?? null);
107924
107973
  });
107925
107974
  card2.addEventListener("keydown", (e2) => {
107926
107975
  if (e2.key !== "Enter" && e2.key !== " ") return;
107927
107976
  e2.preventDefault();
107928
107977
  if (this.state.kind !== "ready") return;
107929
- const id30 = card2.getAttribute("data-id");
107930
- if (typeof id30 !== "string" || id30 === "") return;
107978
+ const id28 = card2.getAttribute("data-id");
107979
+ if (typeof id28 !== "string" || id28 === "") return;
107931
107980
  const all = this.state.groups.flatMap((g2) => g2.templates);
107932
- const snippet2 = all.find((x2) => x2.id === id30);
107981
+ const snippet2 = all.find((x2) => x2.id === id28);
107933
107982
  this.selectSnippet(snippet2 ?? null);
107934
107983
  });
107935
107984
  });
@@ -108126,8 +108175,8 @@ function requireAppJson() {
108126
108175
  function parseToolsetJson(v2, at2) {
108127
108176
  if (!isRecord(v2))
108128
108177
  return { ok: false, errorText: `Invalid ${at2}: expected object` };
108129
- const id30 = asString(v2["id"]);
108130
- if (!id30 || id30.trim() === "")
108178
+ const id28 = asString(v2["id"]);
108179
+ if (!id28 || id28.trim() === "")
108131
108180
  return { ok: false, errorText: `Invalid ${at2}.id: required` };
108132
108181
  const descriptionI18n = v2["descriptionI18n"];
108133
108182
  if (descriptionI18n !== void 0 && !isI18nText(descriptionI18n)) {
@@ -108146,7 +108195,7 @@ function requireAppJson() {
108146
108195
  return {
108147
108196
  ok: true,
108148
108197
  toolset: {
108149
- id: id30,
108198
+ id: id28,
108150
108199
  descriptionI18n,
108151
108200
  tools
108152
108201
  }
@@ -108155,8 +108204,8 @@ function requireAppJson() {
108155
108204
  function parseDialogRunControlJson(v2, at2) {
108156
108205
  if (!isRecord(v2))
108157
108206
  return { ok: false, errorText: `Invalid ${at2}: expected object` };
108158
- const id30 = asString(v2["id"]);
108159
- if (!id30 || id30.trim() === "")
108207
+ const id28 = asString(v2["id"]);
108208
+ if (!id28 || id28.trim() === "")
108160
108209
  return { ok: false, errorText: `Invalid ${at2}.id: required` };
108161
108210
  const descriptionI18n = v2["descriptionI18n"];
108162
108211
  if (descriptionI18n !== void 0 && !isI18nText(descriptionI18n)) {
@@ -108165,7 +108214,7 @@ function requireAppJson() {
108165
108214
  return {
108166
108215
  ok: true,
108167
108216
  control: {
108168
- id: id30,
108217
+ id: id28,
108169
108218
  descriptionI18n
108170
108219
  }
108171
108220
  };
@@ -108789,16 +108838,16 @@ class DomindsTeamManualPanel extends HTMLElement {
108789
108838
  const href = link2.getAttribute("href");
108790
108839
  if (typeof href !== "string") return;
108791
108840
  if (!href.startsWith("#")) return;
108792
- let id30 = href.slice(1);
108841
+ let id28 = href.slice(1);
108793
108842
  try {
108794
- id30 = decodeURIComponent(id30);
108843
+ id28 = decodeURIComponent(id28);
108795
108844
  } catch {
108796
108845
  }
108797
- if (!id30) {
108846
+ if (!id28) {
108798
108847
  e2.preventDefault();
108799
108848
  return;
108800
108849
  }
108801
- const anchor2 = body.querySelector(`#${CSS.escape(id30)}`);
108850
+ const anchor2 = body.querySelector(`#${CSS.escape(id28)}`);
108802
108851
  e2.preventDefault();
108803
108852
  if (!(anchor2 instanceof HTMLElement)) return;
108804
108853
  anchor2.scrollIntoView({ behavior: "smooth", block: "start" });
@@ -120725,7 +120774,8 @@ ${content}`;
120725
120774
  }
120726
120775
  buildRetryWaitingSummary(state2) {
120727
120776
  const t2 = getUiStrings(this.uiLanguage);
120728
- const attemptText = `${t2.retryPanelAttemptPrefix}${state2.attempt}${t2.retryPanelAttemptConnector}${state2.totalAttempts}${t2.retryPanelAttemptSuffix}`;
120777
+ const totalAttemptsText = state2.retryForever ? "∞" : String(state2.totalAttempts);
120778
+ const attemptText = `${t2.retryPanelAttemptPrefix}${state2.attempt}${t2.retryPanelAttemptConnector}${totalAttemptsText}${t2.retryPanelAttemptSuffix}`;
120729
120779
  const providerText = state2.provider.trim();
120730
120780
  const failureText = providerText === "" ? state2.failureLabel : `${providerText} · ${state2.failureLabel}`;
120731
120781
  const remainingMs = Math.max(0, state2.nextRetryAtMs - Date.now());
@@ -121264,13 +121314,13 @@ ${content}`;
121264
121314
  for (const item of value) {
121265
121315
  if (typeof item !== "object" || item === null) continue;
121266
121316
  const rec = item;
121267
- const id30 = typeof rec["id"] === "string" ? rec["id"] : "";
121317
+ const id28 = typeof rec["id"] === "string" ? rec["id"] : "";
121268
121318
  const timestamp2 = typeof rec["timestamp"] === "string" ? rec["timestamp"] : "";
121269
121319
  const kind = rec["kind"];
121270
121320
  const message = typeof rec["message"] === "string" ? rec["message"] : "";
121271
- if (!id30 || !timestamp2 || !message) continue;
121321
+ if (!id28 || !timestamp2 || !message) continue;
121272
121322
  if (kind !== "error" && kind !== "warning" && kind !== "info") continue;
121273
- next2.push({ id: id30, timestamp: timestamp2, kind, message });
121323
+ next2.push({ id: id28, timestamp: timestamp2, kind, message });
121274
121324
  }
121275
121325
  return next2;
121276
121326
  }
@@ -121287,11 +121337,11 @@ ${content}`;
121287
121337
  pushToastHistoryEntry(entry) {
121288
121338
  this.loadToastHistoryFromStorage();
121289
121339
  const now2 = /* @__PURE__ */ new Date();
121290
- const id30 = `${String(now2.getTime())}-${String(this.toastHistorySeq += 1)}`;
121340
+ const id28 = `${String(now2.getTime())}-${String(this.toastHistorySeq += 1)}`;
121291
121341
  const trimmed = entry.message.trim();
121292
121342
  if (trimmed === "") return;
121293
121343
  const next2 = {
121294
- id: id30,
121344
+ id: id28,
121295
121345
  timestamp: now2.toISOString(),
121296
121346
  kind: entry.kind,
121297
121347
  message: trimmed
@@ -122727,28 +122777,28 @@ ${t2.commandLabel}: ${commandStr}`;
122727
122777
  const next2 = [];
122728
122778
  const seenIds = /* @__PURE__ */ new Set();
122729
122779
  for (const existing of this.q4hQuestions) {
122730
- const id30 = typeof existing.id === "string" ? existing.id : "";
122731
- if (!id30) {
122780
+ const id28 = typeof existing.id === "string" ? existing.id : "";
122781
+ if (!id28) {
122732
122782
  throw new Error("Q4H client cache violation: existing question has invalid id");
122733
122783
  }
122734
- if (seenIds.has(id30)) {
122735
- throw new Error(`Q4H client cache violation: duplicate cached question id (${id30})`);
122784
+ if (seenIds.has(id28)) {
122785
+ throw new Error(`Q4H client cache violation: duplicate cached question id (${id28})`);
122736
122786
  }
122737
- seenIds.add(id30);
122787
+ seenIds.add(id28);
122738
122788
  const existingWithDialog = existing;
122739
122789
  const selfId = typeof existingWithDialog.selfId === "string" ? existingWithDialog.selfId : null;
122740
122790
  if (!selfId) {
122741
- const incoming2 = incomingById.get(id30);
122791
+ const incoming2 = incomingById.get(id28);
122742
122792
  next2.push(incoming2 ?? existing);
122743
- if (incoming2) incomingById.delete(id30);
122793
+ if (incoming2) incomingById.delete(id28);
122744
122794
  continue;
122745
122795
  }
122746
122796
  const rootId = typeof existingWithDialog.rootId === "string" && existingWithDialog.rootId ? existingWithDialog.rootId : selfId;
122747
122797
  const status = this.resolveDialogStatusByIds(rootId, selfId);
122748
- const incoming = incomingById.get(id30);
122798
+ const incoming = incomingById.get(id28);
122749
122799
  if (incoming) {
122750
122800
  next2.push(incoming);
122751
- incomingById.delete(id30);
122801
+ incomingById.delete(id28);
122752
122802
  continue;
122753
122803
  }
122754
122804
  if (status === "running") {
@@ -122756,11 +122806,11 @@ ${t2.commandLabel}: ${commandStr}`;
122756
122806
  }
122757
122807
  next2.push(existing);
122758
122808
  }
122759
- for (const [id30, q2] of incomingById.entries()) {
122760
- if (seenIds.has(id30)) {
122761
- throw new Error(`Q4H state merge violation: duplicate id during merge (${id30})`);
122809
+ for (const [id28, q2] of incomingById.entries()) {
122810
+ if (seenIds.has(id28)) {
122811
+ throw new Error(`Q4H state merge violation: duplicate id during merge (${id28})`);
122762
122812
  }
122763
- seenIds.add(id30);
122813
+ seenIds.add(id28);
122764
122814
  next2.push(q2);
122765
122815
  }
122766
122816
  this.q4hQuestions = next2;
@@ -124688,15 +124738,15 @@ document.addEventListener("DOMContentLoaded", async () => {
124688
124738
  });
124689
124739
  export {
124690
124740
  commonDb_exports as $,
124691
- defaultConfig2 as A,
124692
- rgba$1 as B,
124693
- __export as C,
124694
- setupGraphViewbox2 as D,
124695
- cleanAndMerge as E,
124696
- defaultConfig_default as F,
124697
- getConfig as G,
124698
- random as H,
124699
- selectSvgElement as I,
124741
+ rgba$1 as A,
124742
+ __export as B,
124743
+ setupGraphViewbox2 as C,
124744
+ cleanAndMerge as D,
124745
+ defaultConfig_default as E,
124746
+ getConfig as F,
124747
+ random as G,
124748
+ selectSvgElement as H,
124749
+ package_default as I,
124700
124750
  JSON_SCHEMA as J,
124701
124751
  getThemeVariables3 as K,
124702
124752
  hasKatex as L,
@@ -124716,7 +124766,7 @@ export {
124716
124766
  ZERO_WIDTH_SPACE as Z,
124717
124767
  __name as _,
124718
124768
  getAccTitle as a,
124719
- isIndex as a$,
124769
+ isLabelStyle as a$,
124720
124770
  withPath as a0,
124721
124771
  halfPi as a1,
124722
124772
  epsilon as a2,
@@ -124727,33 +124777,33 @@ export {
124727
124777
  abs$1 as a7,
124728
124778
  pi as a8,
124729
124779
  sqrt as a9,
124730
- positionEdgeLabel as aA,
124731
- insertEdgeLabel as aB,
124732
- baseRest as aC,
124733
- isArrayLikeObject as aD,
124734
- constant as aE,
124735
- isFunction as aF,
124736
- isEmpty2 as aG,
124737
- computeDimensionOfText as aH,
124738
- adjustChannel as aI,
124739
- array as aJ,
124740
- getUserDefinedConfig as aK,
124741
- getDefaultExportFromCjs as aL,
124742
- getIconSVG as aM,
124743
- registerIconPacks as aN,
124744
- unknownIcon as aO,
124745
- constant$2 as aP,
124746
- interpolateNumber as aQ,
124747
- color as aR,
124748
- interpolateRgb as aS,
124749
- interpolateString as aT,
124750
- isObject as aU,
124751
- isIterateeCall as aV,
124752
- keysIn as aW,
124753
- eq as aX,
124754
- isArrayLike as aY,
124755
- isArray as aZ,
124756
- identity as a_,
124780
+ baseRest as aA,
124781
+ isArrayLikeObject as aB,
124782
+ constant as aC,
124783
+ isFunction as aD,
124784
+ isEmpty2 as aE,
124785
+ computeDimensionOfText as aF,
124786
+ array as aG,
124787
+ getUserDefinedConfig as aH,
124788
+ getDefaultExportFromCjs as aI,
124789
+ getIconSVG as aJ,
124790
+ registerIconPacks as aK,
124791
+ unknownIcon as aL,
124792
+ constant$2 as aM,
124793
+ interpolateNumber as aN,
124794
+ color as aO,
124795
+ interpolateRgb as aP,
124796
+ interpolateString as aQ,
124797
+ isObject as aR,
124798
+ isIterateeCall as aS,
124799
+ keysIn as aT,
124800
+ eq as aU,
124801
+ isArrayLike as aV,
124802
+ isArray as aW,
124803
+ identity as aX,
124804
+ isIndex as aY,
124805
+ assignValue as aZ,
124806
+ styles2String as a_,
124757
124807
  atan2 as aa,
124758
124808
  constant$1 as ab,
124759
124809
  asin as ac,
@@ -124763,68 +124813,65 @@ export {
124763
124813
  insertNode as ag,
124764
124814
  positionNode as ah,
124765
124815
  getLineFunctionsWithOffset as ai,
124766
- getEffectiveHtmlLabels as aj,
124816
+ evaluate as aj,
124767
124817
  createText as ak,
124768
- computeLabelTransform as al,
124769
- getSubGraphTitleMargins as am,
124770
- getStylesFromArray as an,
124771
- decodeEntities as ao,
124772
- configureLabelImages as ap,
124773
- Utils as aq,
124774
- Color$1 as ar,
124775
- at as as,
124776
- markers_default as at,
124777
- clear2 as au,
124778
- clear as av,
124779
- clear$1 as aw,
124780
- updateNodeBounds as ax,
124781
- setNodeElem as ay,
124782
- insertEdge as az,
124818
+ getSubGraphTitleMargins as al,
124819
+ replaceIconSubstring as am,
124820
+ decodeEntities as an,
124821
+ getStylesFromArray as ao,
124822
+ Utils as ap,
124823
+ Color$1 as aq,
124824
+ markers_default as ar,
124825
+ clear2 as as,
124826
+ clear as at,
124827
+ clear$1 as au,
124828
+ updateNodeBounds as av,
124829
+ setNodeElem as aw,
124830
+ insertEdge as ax,
124831
+ positionEdgeLabel as ay,
124832
+ insertEdgeLabel as az,
124783
124833
  setAccTitle as b,
124784
- assignValue as b0,
124785
- styles2String as b1,
124786
- isLabelStyle as b2,
124787
- Rgb as b3,
124788
- rgbConvert as b4,
124789
- define as b5,
124790
- extend$1 as b6,
124791
- Color as b7,
124792
- nogamma as b8,
124793
- hue as b9,
124794
- Uint8Array$1 as bA,
124795
- isTypedArray as bB,
124796
- isLength as bC,
124797
- Set$1 as bD,
124798
- createAssigner as bE,
124799
- isPrototype as bF,
124800
- getAugmentedNamespace as bG,
124801
- __vitePreload as bH,
124802
- dayjs2 as ba,
124803
- setToString as bb,
124804
- overRest as bc,
124805
- baseFor as bd,
124806
- baseAssignValue as be,
124807
- baseUnary as bf,
124808
- merge as bg,
124809
- isObjectLike as bh,
124810
- baseGetTag as bi,
124811
- Symbol$1 as bj,
124812
- arrayLikeKeys as bk,
124813
- baseKeys as bl,
124814
- memoize as bm,
124815
- isArguments as bn,
124816
- copyObject as bo,
124817
- getPrototype as bp,
124818
- cloneArrayBuffer as bq,
124819
- cloneTypedArray as br,
124820
- getTag as bs,
124821
- nodeUtil as bt,
124822
- copyArray as bu,
124823
- isBuffer as bv,
124824
- cloneBuffer as bw,
124825
- initCloneObject as bx,
124826
- Stack as by,
124827
- MapCache as bz,
124834
+ Rgb as b0,
124835
+ rgbConvert as b1,
124836
+ define as b2,
124837
+ extend$1 as b3,
124838
+ Color as b4,
124839
+ nogamma as b5,
124840
+ hue as b6,
124841
+ dayjs2 as b7,
124842
+ setToString as b8,
124843
+ overRest as b9,
124844
+ Set$1 as bA,
124845
+ createAssigner as bB,
124846
+ isPrototype as bC,
124847
+ getAugmentedNamespace as bD,
124848
+ __vitePreload as bE,
124849
+ baseFor as ba,
124850
+ baseAssignValue as bb,
124851
+ baseUnary as bc,
124852
+ merge as bd,
124853
+ isObjectLike as be,
124854
+ baseGetTag as bf,
124855
+ Symbol$1 as bg,
124856
+ arrayLikeKeys as bh,
124857
+ baseKeys as bi,
124858
+ memoize as bj,
124859
+ isArguments as bk,
124860
+ copyObject as bl,
124861
+ getPrototype as bm,
124862
+ cloneArrayBuffer as bn,
124863
+ cloneTypedArray as bo,
124864
+ getTag as bp,
124865
+ nodeUtil as bq,
124866
+ copyArray as br,
124867
+ isBuffer as bs,
124868
+ cloneBuffer as bt,
124869
+ initCloneObject as bu,
124870
+ Stack as bv,
124871
+ MapCache as bw,
124872
+ Uint8Array$1 as bx,
124873
+ isTypedArray as by,
124874
+ isLength as bz,
124828
124875
  getConfig2 as c,
124829
124876
  select as d,
124830
124877
  configureSvgSize as e,
@@ -124847,7 +124894,7 @@ export {
124847
124894
  isValidShape as v,
124848
124895
  wrapLabel as w,
124849
124896
  getEdgeId as x,
124850
- purify as y,
124851
- clear$2 as z
124897
+ clear$2 as y,
124898
+ defaultConfig2 as z
124852
124899
  };
124853
- //# sourceMappingURL=index-B219Q97D.js.map
124900
+ //# sourceMappingURL=index-rYmIohM_.js.map