@aiquants/markdown 1.14.0 → 1.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (459) hide show
  1. package/dist/{abnfDiagram-VRR7QNED-BQ20Rpd9.js → abnfDiagram-VRR7QNED-BFXo0_Rw.js} +4 -4
  2. package/dist/{abnfDiagram-VRR7QNED-BQ20Rpd9.js.map → abnfDiagram-VRR7QNED-BFXo0_Rw.js.map} +1 -1
  3. package/dist/{abnfDiagram-VRR7QNED-DXbiql1c.cjs → abnfDiagram-VRR7QNED-DYyzQv8B.cjs} +2 -2
  4. package/dist/{abnfDiagram-VRR7QNED-DXbiql1c.cjs.map → abnfDiagram-VRR7QNED-DYyzQv8B.cjs.map} +1 -1
  5. package/dist/{arc-xMVBdqQn.js → arc-BSbHy9Ve.js} +33 -33
  6. package/dist/{arc-xMVBdqQn.js.map → arc-BSbHy9Ve.js.map} +1 -1
  7. package/dist/{arc-CBvogfHH.cjs → arc-BbQigYvM.cjs} +2 -2
  8. package/dist/{arc-CBvogfHH.cjs.map → arc-BbQigYvM.cjs.map} +1 -1
  9. package/dist/{architectureDiagram-ZJ3FMSHR-BpT6mBK5.cjs → architectureDiagram-ZJ3FMSHR-D89qc4rH.cjs} +2 -2
  10. package/dist/{architectureDiagram-ZJ3FMSHR-BpT6mBK5.cjs.map → architectureDiagram-ZJ3FMSHR-D89qc4rH.cjs.map} +1 -1
  11. package/dist/{architectureDiagram-ZJ3FMSHR-DLa31UWc.js → architectureDiagram-ZJ3FMSHR-DULOzPH9.js} +3 -3
  12. package/dist/{architectureDiagram-ZJ3FMSHR-DLa31UWc.js.map → architectureDiagram-ZJ3FMSHR-DULOzPH9.js.map} +1 -1
  13. package/dist/{blockDiagram-677ZJIJ3-Dz6y7puB.cjs → blockDiagram-677ZJIJ3-BwDAkIzg.cjs} +2 -2
  14. package/dist/{blockDiagram-677ZJIJ3-Dz6y7puB.cjs.map → blockDiagram-677ZJIJ3-BwDAkIzg.cjs.map} +1 -1
  15. package/dist/{blockDiagram-677ZJIJ3-041yX0FM.js → blockDiagram-677ZJIJ3-_zyxqXKw.js} +167 -167
  16. package/dist/{blockDiagram-677ZJIJ3-041yX0FM.js.map → blockDiagram-677ZJIJ3-_zyxqXKw.js.map} +1 -1
  17. package/dist/{c4Diagram-LMCZKHZV-DkGXIoOO.cjs → c4Diagram-LMCZKHZV-D6q9_C4Z.cjs} +2 -2
  18. package/dist/{c4Diagram-LMCZKHZV-DkGXIoOO.cjs.map → c4Diagram-LMCZKHZV-D6q9_C4Z.cjs.map} +1 -1
  19. package/dist/{c4Diagram-LMCZKHZV-zI4AGK5P.js → c4Diagram-LMCZKHZV-DEbKHI3H.js} +3 -3
  20. package/dist/{c4Diagram-LMCZKHZV-zI4AGK5P.js.map → c4Diagram-LMCZKHZV-DEbKHI3H.js.map} +1 -1
  21. package/dist/channel-ORmMkVPz.js +6 -0
  22. package/dist/{channel-D-9RLPfN.js.map → channel-ORmMkVPz.js.map} +1 -1
  23. package/dist/channel-uZjKtK8D.cjs +2 -0
  24. package/dist/{channel-BcZa3FxI.cjs.map → channel-uZjKtK8D.cjs.map} +1 -1
  25. package/dist/{chunk-2Q5K7J3B-D7d0n786.js → chunk-2Q5K7J3B-9lSW6YLs.js} +2 -2
  26. package/dist/{chunk-2Q5K7J3B-D7d0n786.js.map → chunk-2Q5K7J3B-9lSW6YLs.js.map} +1 -1
  27. package/dist/{chunk-2Q5K7J3B-CFt_Nv0P.cjs → chunk-2Q5K7J3B-DaavRM9R.cjs} +2 -2
  28. package/dist/{chunk-2Q5K7J3B-CFt_Nv0P.cjs.map → chunk-2Q5K7J3B-DaavRM9R.cjs.map} +1 -1
  29. package/dist/{chunk-32BRIVSS-CyRN3ENZ.cjs → chunk-32BRIVSS-BP6N4esd.cjs} +2 -2
  30. package/dist/{chunk-32BRIVSS-CyRN3ENZ.cjs.map → chunk-32BRIVSS-BP6N4esd.cjs.map} +1 -1
  31. package/dist/{chunk-32BRIVSS-CqgDRgE_.js → chunk-32BRIVSS-INLcYiZK.js} +2 -2
  32. package/dist/{chunk-32BRIVSS-CqgDRgE_.js.map → chunk-32BRIVSS-INLcYiZK.js.map} +1 -1
  33. package/dist/{chunk-5VM5RSS4-CYLLsvXq.js → chunk-5VM5RSS4-BoACDebX.js} +2 -2
  34. package/dist/{chunk-5VM5RSS4-CYLLsvXq.js.map → chunk-5VM5RSS4-BoACDebX.js.map} +1 -1
  35. package/dist/{chunk-5VM5RSS4-Dnsn1NCH.cjs → chunk-5VM5RSS4-v-LRLmmB.cjs} +2 -2
  36. package/dist/{chunk-5VM5RSS4-Dnsn1NCH.cjs.map → chunk-5VM5RSS4-v-LRLmmB.cjs.map} +1 -1
  37. package/dist/{chunk-EX3LRPZG-DJvO-9bX.js → chunk-EX3LRPZG-CdhOcCKK.js} +38 -38
  38. package/dist/{chunk-EX3LRPZG-DJvO-9bX.js.map → chunk-EX3LRPZG-CdhOcCKK.js.map} +1 -1
  39. package/dist/{chunk-EX3LRPZG-NbTYWi98.cjs → chunk-EX3LRPZG-DuCkmN-C.cjs} +2 -2
  40. package/dist/{chunk-EX3LRPZG-NbTYWi98.cjs.map → chunk-EX3LRPZG-DuCkmN-C.cjs.map} +1 -1
  41. package/dist/{chunk-JWPE2WC7-zoOgS5u9.cjs → chunk-JWPE2WC7-BULRo7xk.cjs} +2 -2
  42. package/dist/{chunk-JWPE2WC7-zoOgS5u9.cjs.map → chunk-JWPE2WC7-BULRo7xk.cjs.map} +1 -1
  43. package/dist/{chunk-JWPE2WC7-DuVveRXZ.js → chunk-JWPE2WC7-CahtrkX1.js} +2 -2
  44. package/dist/{chunk-JWPE2WC7-DuVveRXZ.js.map → chunk-JWPE2WC7-CahtrkX1.js.map} +1 -1
  45. package/dist/{chunk-MOJQB5TN-C3rAriR0.js → chunk-MOJQB5TN-Dvq34gwS.js} +9 -9
  46. package/dist/{chunk-MOJQB5TN-C3rAriR0.js.map → chunk-MOJQB5TN-Dvq34gwS.js.map} +1 -1
  47. package/dist/{chunk-MOJQB5TN-nhexYepW.cjs → chunk-MOJQB5TN-XQ1uAuGg.cjs} +2 -2
  48. package/dist/{chunk-MOJQB5TN-nhexYepW.cjs.map → chunk-MOJQB5TN-XQ1uAuGg.cjs.map} +1 -1
  49. package/dist/{chunk-PUDLZKDR-Bbejhl-5.js → chunk-PUDLZKDR-Dz33TggK.js} +7 -7
  50. package/dist/{chunk-PUDLZKDR-Bbejhl-5.js.map → chunk-PUDLZKDR-Dz33TggK.js.map} +1 -1
  51. package/dist/{chunk-PUDLZKDR-Eircwert.cjs → chunk-PUDLZKDR-IggJYnJQ.cjs} +2 -2
  52. package/dist/{chunk-PUDLZKDR-Eircwert.cjs.map → chunk-PUDLZKDR-IggJYnJQ.cjs.map} +1 -1
  53. package/dist/{chunk-RYQCIY6F-CK0xCpaZ.js → chunk-RYQCIY6F-Bg7Dy3nS.js} +13 -13
  54. package/dist/{chunk-RYQCIY6F-CK0xCpaZ.js.map → chunk-RYQCIY6F-Bg7Dy3nS.js.map} +1 -1
  55. package/dist/{chunk-RYQCIY6F-CZfHzKoN.cjs → chunk-RYQCIY6F-QJ2duqI8.cjs} +2 -2
  56. package/dist/{chunk-RYQCIY6F-CZfHzKoN.cjs.map → chunk-RYQCIY6F-QJ2duqI8.cjs.map} +1 -1
  57. package/dist/{chunk-V7JOEXUC-CV1kVAxo.js → chunk-V7JOEXUC-CIr3reuT.js} +6 -6
  58. package/dist/{chunk-V7JOEXUC-CV1kVAxo.js.map → chunk-V7JOEXUC-CIr3reuT.js.map} +1 -1
  59. package/dist/{chunk-V7JOEXUC-DdpIiu9X.cjs → chunk-V7JOEXUC-CgZ7nn5l.cjs} +2 -2
  60. package/dist/{chunk-V7JOEXUC-DdpIiu9X.cjs.map → chunk-V7JOEXUC-CgZ7nn5l.cjs.map} +1 -1
  61. package/dist/{chunk-VR4S4FIN-4jDL-QKj.js → chunk-VR4S4FIN-C0I_5MtA.js} +4 -4
  62. package/dist/{chunk-VR4S4FIN-4jDL-QKj.js.map → chunk-VR4S4FIN-C0I_5MtA.js.map} +1 -1
  63. package/dist/{chunk-VR4S4FIN-IWf-fx8G.cjs → chunk-VR4S4FIN-DrrMUc7U.cjs} +2 -2
  64. package/dist/{chunk-VR4S4FIN-IWf-fx8G.cjs.map → chunk-VR4S4FIN-DrrMUc7U.cjs.map} +1 -1
  65. package/dist/{chunk-XXDRQBXY-OsB0vyxH.js → chunk-XXDRQBXY-BCR17bLv.js} +2 -2
  66. package/dist/{chunk-XXDRQBXY-OsB0vyxH.js.map → chunk-XXDRQBXY-BCR17bLv.js.map} +1 -1
  67. package/dist/{chunk-XXDRQBXY-DXvqbMKA.cjs → chunk-XXDRQBXY-CBOe3-a7.cjs} +2 -2
  68. package/dist/{chunk-XXDRQBXY-DXvqbMKA.cjs.map → chunk-XXDRQBXY-CBOe3-a7.cjs.map} +1 -1
  69. package/dist/{classDiagram-OUVF2IWQ-Byz5-eQE.js → classDiagram-OUVF2IWQ-5wAo9Yii.js} +3 -3
  70. package/dist/{classDiagram-OUVF2IWQ-Byz5-eQE.js.map → classDiagram-OUVF2IWQ-5wAo9Yii.js.map} +1 -1
  71. package/dist/{classDiagram-OUVF2IWQ-C9Zj8XrO.cjs → classDiagram-OUVF2IWQ-CcviK6lg.cjs} +2 -2
  72. package/dist/{classDiagram-OUVF2IWQ-C9Zj8XrO.cjs.map → classDiagram-OUVF2IWQ-CcviK6lg.cjs.map} +1 -1
  73. package/dist/{classDiagram-v2-EOCWNBFH-Byz5-eQE.js → classDiagram-v2-EOCWNBFH-5wAo9Yii.js} +3 -3
  74. package/dist/{classDiagram-v2-EOCWNBFH-Byz5-eQE.js.map → classDiagram-v2-EOCWNBFH-5wAo9Yii.js.map} +1 -1
  75. package/dist/{classDiagram-v2-EOCWNBFH-C9Zj8XrO.cjs → classDiagram-v2-EOCWNBFH-CcviK6lg.cjs} +2 -2
  76. package/dist/{classDiagram-v2-EOCWNBFH-C9Zj8XrO.cjs.map → classDiagram-v2-EOCWNBFH-CcviK6lg.cjs.map} +1 -1
  77. package/dist/cli.d.ts.map +1 -0
  78. package/dist/components/MarkdownRenderer.d.ts.map +1 -0
  79. package/dist/{src/components → components}/MarkdownViewer.d.ts +23 -3
  80. package/dist/components/MarkdownViewer.d.ts.map +1 -0
  81. package/dist/components/MermaidDiagram.d.ts.map +1 -0
  82. package/dist/components/NodesRenderer.d.ts.map +1 -0
  83. package/dist/components/TableOfContents.d.ts.map +1 -0
  84. package/dist/components/mdastNodes/BlockLinkNode.d.ts.map +1 -0
  85. package/dist/components/mdastNodes/BlockquoteNode.d.ts.map +1 -0
  86. package/dist/components/mdastNodes/CodeNode.d.ts.map +1 -0
  87. package/dist/components/mdastNodes/DeleteNode.d.ts.map +1 -0
  88. package/dist/components/mdastNodes/EmphasisNode.d.ts.map +1 -0
  89. package/dist/components/mdastNodes/FootnoteBackLinkNode.d.ts.map +1 -0
  90. package/dist/components/mdastNodes/HTMLBlockContainerNode.d.ts.map +1 -0
  91. package/dist/components/mdastNodes/HTMLNode.d.ts.map +1 -0
  92. package/dist/components/mdastNodes/HeadingNode.d.ts.map +1 -0
  93. package/dist/components/mdastNodes/ImageNode.d.ts.map +1 -0
  94. package/dist/components/mdastNodes/InlineCodeNode.d.ts.map +1 -0
  95. package/dist/components/mdastNodes/InlineMathNode.d.ts.map +1 -0
  96. package/dist/components/mdastNodes/LinkNode.d.ts.map +1 -0
  97. package/dist/components/mdastNodes/ListItemNode.d.ts.map +1 -0
  98. package/dist/components/mdastNodes/ListNode.d.ts.map +1 -0
  99. package/dist/components/mdastNodes/MarkNode.d.ts.map +1 -0
  100. package/dist/components/mdastNodes/MathNode.d.ts.map +1 -0
  101. package/dist/components/mdastNodes/ParagraphNode.d.ts.map +1 -0
  102. package/dist/components/mdastNodes/RichLinkCard.d.ts.map +1 -0
  103. package/dist/components/mdastNodes/StrongNode.d.ts.map +1 -0
  104. package/dist/components/mdastNodes/SubscriptNode.d.ts.map +1 -0
  105. package/dist/components/mdastNodes/SuperscriptNode.d.ts.map +1 -0
  106. package/dist/components/mdastNodes/TableNode.d.ts.map +1 -0
  107. package/dist/components/mdastNodes/TextNode.d.ts.map +1 -0
  108. package/dist/components/mdastNodes/ThematicBreakNode.d.ts.map +1 -0
  109. package/dist/components/mdastNodes/TwitterEmbedNode.d.ts.map +1 -0
  110. package/dist/components/mdastNodes/YouTubeEmbedNode.d.ts.map +1 -0
  111. package/dist/components/mdastNodes/ZennDetailsNode.d.ts.map +1 -0
  112. package/dist/components/mdastNodes/ZennMessageNode.d.ts.map +1 -0
  113. package/dist/components/mermaidInteraction.d.ts.map +1 -0
  114. package/dist/components/plugins/DifyIFramePlugin.d.ts.map +1 -0
  115. package/dist/components/plugins/IFramePluginRegistry.d.ts.map +1 -0
  116. package/dist/components/plugins/index.d.ts.map +1 -0
  117. package/dist/{cose-bilkent-JH36ORCC-CCqB1qiX.js → cose-bilkent-JH36ORCC-Dcfk-Ecg.js} +2 -2
  118. package/dist/{cose-bilkent-JH36ORCC-CCqB1qiX.js.map → cose-bilkent-JH36ORCC-Dcfk-Ecg.js.map} +1 -1
  119. package/dist/{cose-bilkent-JH36ORCC-B_b-_8U5.cjs → cose-bilkent-JH36ORCC-e4iy6tnF.cjs} +2 -2
  120. package/dist/{cose-bilkent-JH36ORCC-B_b-_8U5.cjs.map → cose-bilkent-JH36ORCC-e4iy6tnF.cjs.map} +1 -1
  121. package/dist/{cynefinDiagram-TSTJHNR4-BmxTcdFW.js → cynefinDiagram-TSTJHNR4-BFpetF_m.js} +8 -8
  122. package/dist/{cynefinDiagram-TSTJHNR4-BmxTcdFW.js.map → cynefinDiagram-TSTJHNR4-BFpetF_m.js.map} +1 -1
  123. package/dist/{cynefinDiagram-TSTJHNR4-BGsQELZI.cjs → cynefinDiagram-TSTJHNR4-DUCIfteT.cjs} +2 -2
  124. package/dist/{cynefinDiagram-TSTJHNR4-BGsQELZI.cjs.map → cynefinDiagram-TSTJHNR4-DUCIfteT.cjs.map} +1 -1
  125. package/dist/{dagre-VKFMJZFB-BMJn8PTf.cjs → dagre-VKFMJZFB--JH4XxhX.cjs} +2 -2
  126. package/dist/{dagre-VKFMJZFB-BMJn8PTf.cjs.map → dagre-VKFMJZFB--JH4XxhX.cjs.map} +1 -1
  127. package/dist/{dagre-VKFMJZFB-T0EpCTvx.js → dagre-VKFMJZFB-PARAHqM5.js} +3 -3
  128. package/dist/{dagre-VKFMJZFB-T0EpCTvx.js.map → dagre-VKFMJZFB-PARAHqM5.js.map} +1 -1
  129. package/dist/{diagram-FQU43EPY-BqlZFcVg.js → diagram-FQU43EPY-Cs6yk5Is.js} +83 -83
  130. package/dist/{diagram-FQU43EPY-BqlZFcVg.js.map → diagram-FQU43EPY-Cs6yk5Is.js.map} +1 -1
  131. package/dist/{diagram-FQU43EPY-ogw45cxB.cjs → diagram-FQU43EPY-QluW14DN.cjs} +2 -2
  132. package/dist/{diagram-FQU43EPY-ogw45cxB.cjs.map → diagram-FQU43EPY-QluW14DN.cjs.map} +1 -1
  133. package/dist/{diagram-G47NLZAW-BKEHdu5F.js → diagram-G47NLZAW-DN5G1l3g.js} +23 -23
  134. package/dist/{diagram-G47NLZAW-BKEHdu5F.js.map → diagram-G47NLZAW-DN5G1l3g.js.map} +1 -1
  135. package/dist/{diagram-G47NLZAW-YfpzfmMk.cjs → diagram-G47NLZAW-D_E8st8L.cjs} +2 -2
  136. package/dist/{diagram-G47NLZAW-YfpzfmMk.cjs.map → diagram-G47NLZAW-D_E8st8L.cjs.map} +1 -1
  137. package/dist/{diagram-NH7WQ7WH-BB78MPum.js → diagram-NH7WQ7WH-C10vpuej.js} +10 -10
  138. package/dist/{diagram-NH7WQ7WH-BB78MPum.js.map → diagram-NH7WQ7WH-C10vpuej.js.map} +1 -1
  139. package/dist/{diagram-NH7WQ7WH-uXWQSyUK.cjs → diagram-NH7WQ7WH-pASxdUhu.cjs} +2 -2
  140. package/dist/{diagram-NH7WQ7WH-uXWQSyUK.cjs.map → diagram-NH7WQ7WH-pASxdUhu.cjs.map} +1 -1
  141. package/dist/{diagram-OA4YK3LP-BNY_Gt2v.cjs → diagram-OA4YK3LP-B9dlgYg5.cjs} +2 -2
  142. package/dist/{diagram-OA4YK3LP-BNY_Gt2v.cjs.map → diagram-OA4YK3LP-B9dlgYg5.cjs.map} +1 -1
  143. package/dist/{diagram-OA4YK3LP-CPynpf0h.js → diagram-OA4YK3LP-BUE4c8aR.js} +6 -6
  144. package/dist/{diagram-OA4YK3LP-CPynpf0h.js.map → diagram-OA4YK3LP-BUE4c8aR.js.map} +1 -1
  145. package/dist/{diagram-WEI45ONY-CfxXnEBp.js → diagram-WEI45ONY-1EaKbEDp.js} +16 -16
  146. package/dist/{diagram-WEI45ONY-CfxXnEBp.js.map → diagram-WEI45ONY-1EaKbEDp.js.map} +1 -1
  147. package/dist/{diagram-WEI45ONY-C1jbWTWA.cjs → diagram-WEI45ONY-BOVrX9CR.cjs} +2 -2
  148. package/dist/{diagram-WEI45ONY-C1jbWTWA.cjs.map → diagram-WEI45ONY-BOVrX9CR.cjs.map} +1 -1
  149. package/dist/{ebnfDiagram-CCIWWBDH-DP4bvDHl.js → ebnfDiagram-CCIWWBDH-BFCYtxqV.js} +6 -6
  150. package/dist/{ebnfDiagram-CCIWWBDH-DP4bvDHl.js.map → ebnfDiagram-CCIWWBDH-BFCYtxqV.js.map} +1 -1
  151. package/dist/{ebnfDiagram-CCIWWBDH-CKgI2cvY.cjs → ebnfDiagram-CCIWWBDH-djDcqT9S.cjs} +2 -2
  152. package/dist/{ebnfDiagram-CCIWWBDH-CKgI2cvY.cjs.map → ebnfDiagram-CCIWWBDH-djDcqT9S.cjs.map} +1 -1
  153. package/dist/{erDiagram-Q63AITRT-Cg6xCVR_.js → erDiagram-Q63AITRT-CJ41MCeP.js} +5 -5
  154. package/dist/{erDiagram-Q63AITRT-Cg6xCVR_.js.map → erDiagram-Q63AITRT-CJ41MCeP.js.map} +1 -1
  155. package/dist/{erDiagram-Q63AITRT-B4rtHiL0.cjs → erDiagram-Q63AITRT-C__SqdWW.cjs} +2 -2
  156. package/dist/{erDiagram-Q63AITRT-B4rtHiL0.cjs.map → erDiagram-Q63AITRT-C__SqdWW.cjs.map} +1 -1
  157. package/dist/{extractHeadings-B9zWU8Hp.js → extractHeadings-Btke90la.js} +5097 -5024
  158. package/dist/extractHeadings-Btke90la.js.map +1 -0
  159. package/dist/extractHeadings-CbOVIBS0.cjs +311 -0
  160. package/dist/extractHeadings-CbOVIBS0.cjs.map +1 -0
  161. package/dist/flowDiagram-23GEKE2U-B6jkoyrN.cjs +2 -0
  162. package/dist/flowDiagram-23GEKE2U-B6jkoyrN.cjs.map +1 -0
  163. package/dist/flowDiagram-23GEKE2U-matdv2oR.js +8 -0
  164. package/dist/flowDiagram-23GEKE2U-matdv2oR.js.map +1 -0
  165. package/dist/{ganttDiagram-NO4QXBWP-DytKD5ib.js → ganttDiagram-NO4QXBWP-CGgtAec-.js} +3 -3
  166. package/dist/{ganttDiagram-NO4QXBWP-DytKD5ib.js.map → ganttDiagram-NO4QXBWP-CGgtAec-.js.map} +1 -1
  167. package/dist/{ganttDiagram-NO4QXBWP-DtRUI9CI.cjs → ganttDiagram-NO4QXBWP-a55V-nKT.cjs} +2 -2
  168. package/dist/{ganttDiagram-NO4QXBWP-DtRUI9CI.cjs.map → ganttDiagram-NO4QXBWP-a55V-nKT.cjs.map} +1 -1
  169. package/dist/gen/markdown/v1/markdown_connect.d.ts.map +1 -0
  170. package/dist/gen/markdown/v1/markdown_pb.d.ts.map +1 -0
  171. package/dist/{gitGraphDiagram-IHSO6WYX-BO23TPQ8.js → gitGraphDiagram-IHSO6WYX-B1TK7FF8.js} +4 -4
  172. package/dist/{gitGraphDiagram-IHSO6WYX-BO23TPQ8.js.map → gitGraphDiagram-IHSO6WYX-B1TK7FF8.js.map} +1 -1
  173. package/dist/{gitGraphDiagram-IHSO6WYX-DnErhH_Y.cjs → gitGraphDiagram-IHSO6WYX-DlDNCHo6.cjs} +2 -2
  174. package/dist/{gitGraphDiagram-IHSO6WYX-DnErhH_Y.cjs.map → gitGraphDiagram-IHSO6WYX-DlDNCHo6.cjs.map} +1 -1
  175. package/dist/index.cjs +1 -1
  176. package/dist/index.client.cjs +1 -1
  177. package/dist/index.client.d.ts +44 -2
  178. package/dist/index.client.d.ts.map +1 -0
  179. package/dist/index.client.js +32 -31
  180. package/dist/index.d.ts +2 -2
  181. package/dist/{src/index.d.ts.map → index.d.ts.map} +1 -1
  182. package/dist/index.js +32 -31
  183. package/dist/index.server.d.ts +9 -2
  184. package/dist/index.server.d.ts.map +1 -0
  185. package/dist/{infoDiagram-FWYZ7A6U-4syrAmyj.cjs → infoDiagram-FWYZ7A6U-BiRsBv1q.cjs} +2 -2
  186. package/dist/{infoDiagram-FWYZ7A6U-4syrAmyj.cjs.map → infoDiagram-FWYZ7A6U-BiRsBv1q.cjs.map} +1 -1
  187. package/dist/{infoDiagram-FWYZ7A6U-B9uxXFIw.js → infoDiagram-FWYZ7A6U-hH0LVzym.js} +8 -8
  188. package/dist/{infoDiagram-FWYZ7A6U-B9uxXFIw.js.map → infoDiagram-FWYZ7A6U-hH0LVzym.js.map} +1 -1
  189. package/dist/{ishikawaDiagram-FXEZZL3T-BiUwMJgc.cjs → ishikawaDiagram-FXEZZL3T-BnDsgkjC.cjs} +2 -2
  190. package/dist/{ishikawaDiagram-FXEZZL3T-BiUwMJgc.cjs.map → ishikawaDiagram-FXEZZL3T-BnDsgkjC.cjs.map} +1 -1
  191. package/dist/{ishikawaDiagram-FXEZZL3T-BYwWtePo.js → ishikawaDiagram-FXEZZL3T-CfYrF5ko.js} +25 -25
  192. package/dist/{ishikawaDiagram-FXEZZL3T-BYwWtePo.js.map → ishikawaDiagram-FXEZZL3T-CfYrF5ko.js.map} +1 -1
  193. package/dist/{journeyDiagram-5HDEW3XC-GCMUbSH7.cjs → journeyDiagram-5HDEW3XC-D4bTwTTh.cjs} +2 -2
  194. package/dist/{journeyDiagram-5HDEW3XC-GCMUbSH7.cjs.map → journeyDiagram-5HDEW3XC-D4bTwTTh.cjs.map} +1 -1
  195. package/dist/{journeyDiagram-5HDEW3XC-Boew_-SU.js → journeyDiagram-5HDEW3XC-HfmZo7OK.js} +5 -5
  196. package/dist/{journeyDiagram-5HDEW3XC-Boew_-SU.js.map → journeyDiagram-5HDEW3XC-HfmZo7OK.js.map} +1 -1
  197. package/dist/{kanban-definition-HUTT4EX6-QtPgRFBx.js → kanban-definition-HUTT4EX6-CkG7ZIp9.js} +106 -106
  198. package/dist/{kanban-definition-HUTT4EX6-QtPgRFBx.js.map → kanban-definition-HUTT4EX6-CkG7ZIp9.js.map} +1 -1
  199. package/dist/{kanban-definition-HUTT4EX6-ByqPSoS4.cjs → kanban-definition-HUTT4EX6-D7AfbiL-.cjs} +2 -2
  200. package/dist/{kanban-definition-HUTT4EX6-ByqPSoS4.cjs.map → kanban-definition-HUTT4EX6-D7AfbiL-.cjs.map} +1 -1
  201. package/dist/{linear-D-NvxS9T.js → linear-DCJsIP88.js} +35 -35
  202. package/dist/{linear-D-NvxS9T.js.map → linear-DCJsIP88.js.map} +1 -1
  203. package/dist/{linear-C6OlRBoL.cjs → linear-udg5RJk-.cjs} +2 -2
  204. package/dist/{linear-C6OlRBoL.cjs.map → linear-udg5RJk-.cjs.map} +1 -1
  205. package/dist/markdown.css +1 -1
  206. package/dist/{mindmap-definition-LN4V7U3C-BXEmhige.cjs → mindmap-definition-LN4V7U3C-CesYL4mv.cjs} +2 -2
  207. package/dist/{mindmap-definition-LN4V7U3C-BXEmhige.cjs.map → mindmap-definition-LN4V7U3C-CesYL4mv.cjs.map} +1 -1
  208. package/dist/{mindmap-definition-LN4V7U3C-AuDA6bik.js → mindmap-definition-LN4V7U3C-zoeVrmB8.js} +29 -29
  209. package/dist/{mindmap-definition-LN4V7U3C-AuDA6bik.js.map → mindmap-definition-LN4V7U3C-zoeVrmB8.js.map} +1 -1
  210. package/dist/{pegDiagram-2B236MQR-BRedOzpf.js → pegDiagram-2B236MQR-B7kSpg_A.js} +6 -6
  211. package/dist/{pegDiagram-2B236MQR-BRedOzpf.js.map → pegDiagram-2B236MQR-B7kSpg_A.js.map} +1 -1
  212. package/dist/{pegDiagram-2B236MQR-D9yxMYRK.cjs → pegDiagram-2B236MQR-G4fth76F.cjs} +2 -2
  213. package/dist/{pegDiagram-2B236MQR-D9yxMYRK.cjs.map → pegDiagram-2B236MQR-G4fth76F.cjs.map} +1 -1
  214. package/dist/{pieDiagram-ENE6RG2P-CfMAyyLr.cjs → pieDiagram-ENE6RG2P-KA7xendU.cjs} +2 -2
  215. package/dist/{pieDiagram-ENE6RG2P-CfMAyyLr.cjs.map → pieDiagram-ENE6RG2P-KA7xendU.cjs.map} +1 -1
  216. package/dist/{pieDiagram-ENE6RG2P-CYHOjNgc.js → pieDiagram-ENE6RG2P-oLvMmdVW.js} +59 -59
  217. package/dist/{pieDiagram-ENE6RG2P-CYHOjNgc.js.map → pieDiagram-ENE6RG2P-oLvMmdVW.js.map} +1 -1
  218. package/dist/plugins/createIntentTweetLink.d.ts.map +1 -0
  219. package/dist/plugins/extractYouTubeVideoId.d.ts.map +1 -0
  220. package/dist/plugins/fetchSiteMetadata.d.ts.map +1 -0
  221. package/dist/plugins/remark-auto-heading-id.d.ts.map +1 -0
  222. package/dist/plugins/remark-block-link-metadata.d.ts.map +1 -0
  223. package/dist/plugins/remark-block-link.d.ts.map +1 -0
  224. package/dist/plugins/remark-custom-heading-id.d.ts.map +1 -0
  225. package/dist/plugins/remark-footnote-back-link.d.ts.map +1 -0
  226. package/dist/plugins/remark-html-anchor-to-link.d.ts.map +1 -0
  227. package/dist/plugins/remark-html-in-html.d.ts.map +1 -0
  228. package/dist/plugins/remark-image-size.d.ts.map +1 -0
  229. package/dist/plugins/remark-import-directive.async.server.d.ts.map +1 -0
  230. package/dist/plugins/remark-mark.d.ts.map +1 -0
  231. package/dist/plugins/remark-parent-node.d.ts.map +1 -0
  232. package/dist/plugins/remark-resolve-uri.async.d.ts.map +1 -0
  233. package/dist/plugins/remark-subscript.d.ts.map +1 -0
  234. package/dist/plugins/remark-superscript.d.ts.map +1 -0
  235. package/dist/plugins/remark-table-merge.d.ts.map +1 -0
  236. package/dist/plugins/remark-twitter-embed.d.ts.map +1 -0
  237. package/dist/plugins/remark-unwrap-block-html.d.ts.map +1 -0
  238. package/dist/plugins/remark-youtube-embed.d.ts.map +1 -0
  239. package/dist/plugins/remark-zenn-message.d.ts.map +1 -0
  240. package/dist/plugins/transformUri.async.server.d.ts.map +1 -0
  241. package/dist/{quadrantDiagram-ABIIQ3AL-CLJfxi7Q.cjs → quadrantDiagram-ABIIQ3AL-CX8sF8GP.cjs} +2 -2
  242. package/dist/{quadrantDiagram-ABIIQ3AL-CLJfxi7Q.cjs.map → quadrantDiagram-ABIIQ3AL-CX8sF8GP.cjs.map} +1 -1
  243. package/dist/{quadrantDiagram-ABIIQ3AL-n6QV6adE.js → quadrantDiagram-ABIIQ3AL-DtUT-XzJ.js} +3 -3
  244. package/dist/{quadrantDiagram-ABIIQ3AL-n6QV6adE.js.map → quadrantDiagram-ABIIQ3AL-DtUT-XzJ.js.map} +1 -1
  245. package/dist/{railroadDiagram-RFXS5EU6-Dum26NsB.js → railroadDiagram-RFXS5EU6-Cm7FdIMs.js} +4 -4
  246. package/dist/{railroadDiagram-RFXS5EU6-Dum26NsB.js.map → railroadDiagram-RFXS5EU6-Cm7FdIMs.js.map} +1 -1
  247. package/dist/{railroadDiagram-RFXS5EU6-CZoR0XYh.cjs → railroadDiagram-RFXS5EU6-DiQg7p_4.cjs} +2 -2
  248. package/dist/{railroadDiagram-RFXS5EU6-CZoR0XYh.cjs.map → railroadDiagram-RFXS5EU6-DiQg7p_4.cjs.map} +1 -1
  249. package/dist/remarkProcessor.server.d.ts.map +1 -0
  250. package/dist/{requirementDiagram-TGXJPOKE-8lWqfUou.js → requirementDiagram-TGXJPOKE-BW1d5uhf.js} +4 -4
  251. package/dist/{requirementDiagram-TGXJPOKE-8lWqfUou.js.map → requirementDiagram-TGXJPOKE-BW1d5uhf.js.map} +1 -1
  252. package/dist/{requirementDiagram-TGXJPOKE-1fza5CDh.cjs → requirementDiagram-TGXJPOKE-BzEjbwNB.cjs} +2 -2
  253. package/dist/{requirementDiagram-TGXJPOKE-1fza5CDh.cjs.map → requirementDiagram-TGXJPOKE-BzEjbwNB.cjs.map} +1 -1
  254. package/dist/{sankeyDiagram-HTMAVEWB-BLRRlYIu.cjs → sankeyDiagram-HTMAVEWB-B885RMhw.cjs} +2 -2
  255. package/dist/{sankeyDiagram-HTMAVEWB-BLRRlYIu.cjs.map → sankeyDiagram-HTMAVEWB-B885RMhw.cjs.map} +1 -1
  256. package/dist/{sankeyDiagram-HTMAVEWB-C4NdHXvR.js → sankeyDiagram-HTMAVEWB-BK6I2TQT.js} +24 -24
  257. package/dist/{sankeyDiagram-HTMAVEWB-C4NdHXvR.js.map → sankeyDiagram-HTMAVEWB-BK6I2TQT.js.map} +1 -1
  258. package/dist/{sequenceDiagram-DBY2YBRQ-CORurNjC.js → sequenceDiagram-DBY2YBRQ-Bsp-ywhW.js} +48 -48
  259. package/dist/{sequenceDiagram-DBY2YBRQ-CORurNjC.js.map → sequenceDiagram-DBY2YBRQ-Bsp-ywhW.js.map} +1 -1
  260. package/dist/{sequenceDiagram-DBY2YBRQ-DtVYcAp0.cjs → sequenceDiagram-DBY2YBRQ-Z2baRB6B.cjs} +2 -2
  261. package/dist/{sequenceDiagram-DBY2YBRQ-DtVYcAp0.cjs.map → sequenceDiagram-DBY2YBRQ-Z2baRB6B.cjs.map} +1 -1
  262. package/dist/{sizeCapture-X5ZJPWSS-DWkG146w.js → sizeCapture-X5ZJPWSS-B7HslO1e.js} +2 -2
  263. package/dist/{sizeCapture-X5ZJPWSS-DWkG146w.js.map → sizeCapture-X5ZJPWSS-B7HslO1e.js.map} +1 -1
  264. package/dist/{sizeCapture-X5ZJPWSS-DVickuSI.cjs → sizeCapture-X5ZJPWSS-C8fp0zsl.cjs} +2 -2
  265. package/dist/{sizeCapture-X5ZJPWSS-DVickuSI.cjs.map → sizeCapture-X5ZJPWSS-C8fp0zsl.cjs.map} +1 -1
  266. package/dist/{stateDiagram-2N3HPSRC-BknEdRtj.cjs → stateDiagram-2N3HPSRC-B8_7Qpkd.cjs} +2 -2
  267. package/dist/{stateDiagram-2N3HPSRC-BknEdRtj.cjs.map → stateDiagram-2N3HPSRC-B8_7Qpkd.cjs.map} +1 -1
  268. package/dist/{stateDiagram-2N3HPSRC-Cfx8fgeN.js → stateDiagram-2N3HPSRC-Bs6b44bi.js} +14 -14
  269. package/dist/{stateDiagram-2N3HPSRC-Cfx8fgeN.js.map → stateDiagram-2N3HPSRC-Bs6b44bi.js.map} +1 -1
  270. package/dist/{stateDiagram-v2-6OUMAXLB-DeDkN5NL.js → stateDiagram-v2-6OUMAXLB-APHKV9T_.js} +5 -5
  271. package/dist/{stateDiagram-v2-6OUMAXLB-DeDkN5NL.js.map → stateDiagram-v2-6OUMAXLB-APHKV9T_.js.map} +1 -1
  272. package/dist/{stateDiagram-v2-6OUMAXLB-C45X7LJs.cjs → stateDiagram-v2-6OUMAXLB-DKhyOgS0.cjs} +2 -2
  273. package/dist/{stateDiagram-v2-6OUMAXLB-C45X7LJs.cjs.map → stateDiagram-v2-6OUMAXLB-DKhyOgS0.cjs.map} +1 -1
  274. package/dist/styles/markdown.css +1 -1
  275. package/dist/{swimlanes-5IMT3BWC-CcosnJe6.cjs → swimlanes-5IMT3BWC-BSNl-c3F.cjs} +2 -2
  276. package/dist/{swimlanes-5IMT3BWC-CcosnJe6.cjs.map → swimlanes-5IMT3BWC-BSNl-c3F.cjs.map} +1 -1
  277. package/dist/{swimlanes-5IMT3BWC-CjWgy5Nl.js → swimlanes-5IMT3BWC-COXHt-s7.js} +4 -4
  278. package/dist/{swimlanes-5IMT3BWC-CjWgy5Nl.js.map → swimlanes-5IMT3BWC-COXHt-s7.js.map} +1 -1
  279. package/dist/{swimlanesDiagram-G3AALYLV-C7K0ECob.js → swimlanesDiagram-G3AALYLV-D1WaZVYp.js} +3 -3
  280. package/dist/{swimlanesDiagram-G3AALYLV-C7K0ECob.js.map → swimlanesDiagram-G3AALYLV-D1WaZVYp.js.map} +1 -1
  281. package/dist/{swimlanesDiagram-G3AALYLV-CQ4pFZ7c.cjs → swimlanesDiagram-G3AALYLV-Def6nx2Z.cjs} +2 -2
  282. package/dist/{swimlanesDiagram-G3AALYLV-CQ4pFZ7c.cjs.map → swimlanesDiagram-G3AALYLV-Def6nx2Z.cjs.map} +1 -1
  283. package/dist/test-setup.d.ts.map +1 -0
  284. package/dist/{timeline-definition-FHXFAJF6-BpHq7pCq.js → timeline-definition-FHXFAJF6-Bf7P0d3T.js} +32 -32
  285. package/dist/{timeline-definition-FHXFAJF6-BpHq7pCq.js.map → timeline-definition-FHXFAJF6-Bf7P0d3T.js.map} +1 -1
  286. package/dist/{timeline-definition-FHXFAJF6-BhUes2U0.cjs → timeline-definition-FHXFAJF6-Cp68oXkU.cjs} +2 -2
  287. package/dist/{timeline-definition-FHXFAJF6-BhUes2U0.cjs.map → timeline-definition-FHXFAJF6-Cp68oXkU.cjs.map} +1 -1
  288. package/dist/utils/extractHeadings.d.ts.map +1 -0
  289. package/dist/utils/getFaviconUrl.d.ts.map +1 -0
  290. package/dist/utils/headingText.d.ts.map +1 -0
  291. package/dist/utils/simple-logger.d.ts.map +1 -0
  292. package/dist/{vennDiagram-L72KCM5P-CViCZQE_.js → vennDiagram-L72KCM5P-DGGMA-GI.js} +39 -39
  293. package/dist/{vennDiagram-L72KCM5P-CViCZQE_.js.map → vennDiagram-L72KCM5P-DGGMA-GI.js.map} +1 -1
  294. package/dist/{vennDiagram-L72KCM5P-MipLCwdh.cjs → vennDiagram-L72KCM5P-DqFV-kpk.cjs} +2 -2
  295. package/dist/{vennDiagram-L72KCM5P-MipLCwdh.cjs.map → vennDiagram-L72KCM5P-DqFV-kpk.cjs.map} +1 -1
  296. package/dist/{wardleyDiagram-EHGQE667-fp0RsUhv.cjs → wardleyDiagram-EHGQE667-CObr4iwQ.cjs} +2 -2
  297. package/dist/{wardleyDiagram-EHGQE667-fp0RsUhv.cjs.map → wardleyDiagram-EHGQE667-CObr4iwQ.cjs.map} +1 -1
  298. package/dist/{wardleyDiagram-EHGQE667-BE-NasW6.js → wardleyDiagram-EHGQE667-kL5n4suF.js} +83 -83
  299. package/dist/{wardleyDiagram-EHGQE667-BE-NasW6.js.map → wardleyDiagram-EHGQE667-kL5n4suF.js.map} +1 -1
  300. package/dist/{xychartDiagram-FW5EYKEG-crv7LyAW.cjs → xychartDiagram-FW5EYKEG-C-TCKUxt.cjs} +2 -2
  301. package/dist/{xychartDiagram-FW5EYKEG-crv7LyAW.cjs.map → xychartDiagram-FW5EYKEG-C-TCKUxt.cjs.map} +1 -1
  302. package/dist/{xychartDiagram-FW5EYKEG-BqgTl_sX.js → xychartDiagram-FW5EYKEG-n90ZGQyA.js} +20 -20
  303. package/dist/{xychartDiagram-FW5EYKEG-BqgTl_sX.js.map → xychartDiagram-FW5EYKEG-n90ZGQyA.js.map} +1 -1
  304. package/package.json +7 -7
  305. package/dist/channel-BcZa3FxI.cjs +0 -2
  306. package/dist/channel-D-9RLPfN.js +0 -6
  307. package/dist/extractHeadings-B9zWU8Hp.js.map +0 -1
  308. package/dist/extractHeadings-D0Yt1_JR.cjs +0 -311
  309. package/dist/extractHeadings-D0Yt1_JR.cjs.map +0 -1
  310. package/dist/flowDiagram-23GEKE2U-BEXMT81S.js +0 -8
  311. package/dist/flowDiagram-23GEKE2U-BEXMT81S.js.map +0 -1
  312. package/dist/flowDiagram-23GEKE2U-DOgzSs1K.cjs +0 -2
  313. package/dist/flowDiagram-23GEKE2U-DOgzSs1K.cjs.map +0 -1
  314. package/dist/src/cli.d.ts.map +0 -1
  315. package/dist/src/components/MarkdownRenderer.d.ts.map +0 -1
  316. package/dist/src/components/MarkdownViewer.d.ts.map +0 -1
  317. package/dist/src/components/MermaidDiagram.d.ts.map +0 -1
  318. package/dist/src/components/NodesRenderer.d.ts.map +0 -1
  319. package/dist/src/components/TableOfContents.d.ts.map +0 -1
  320. package/dist/src/components/mdastNodes/BlockLinkNode.d.ts.map +0 -1
  321. package/dist/src/components/mdastNodes/BlockquoteNode.d.ts.map +0 -1
  322. package/dist/src/components/mdastNodes/CodeNode.d.ts.map +0 -1
  323. package/dist/src/components/mdastNodes/DeleteNode.d.ts.map +0 -1
  324. package/dist/src/components/mdastNodes/EmphasisNode.d.ts.map +0 -1
  325. package/dist/src/components/mdastNodes/FootnoteBackLinkNode.d.ts.map +0 -1
  326. package/dist/src/components/mdastNodes/HTMLBlockContainerNode.d.ts.map +0 -1
  327. package/dist/src/components/mdastNodes/HTMLNode.d.ts.map +0 -1
  328. package/dist/src/components/mdastNodes/HeadingNode.d.ts.map +0 -1
  329. package/dist/src/components/mdastNodes/ImageNode.d.ts.map +0 -1
  330. package/dist/src/components/mdastNodes/InlineCodeNode.d.ts.map +0 -1
  331. package/dist/src/components/mdastNodes/InlineMathNode.d.ts.map +0 -1
  332. package/dist/src/components/mdastNodes/LinkNode.d.ts.map +0 -1
  333. package/dist/src/components/mdastNodes/ListItemNode.d.ts.map +0 -1
  334. package/dist/src/components/mdastNodes/ListNode.d.ts.map +0 -1
  335. package/dist/src/components/mdastNodes/MarkNode.d.ts.map +0 -1
  336. package/dist/src/components/mdastNodes/MathNode.d.ts.map +0 -1
  337. package/dist/src/components/mdastNodes/ParagraphNode.d.ts.map +0 -1
  338. package/dist/src/components/mdastNodes/RichLinkCard.d.ts.map +0 -1
  339. package/dist/src/components/mdastNodes/StrongNode.d.ts.map +0 -1
  340. package/dist/src/components/mdastNodes/SubscriptNode.d.ts.map +0 -1
  341. package/dist/src/components/mdastNodes/SuperscriptNode.d.ts.map +0 -1
  342. package/dist/src/components/mdastNodes/TableNode.d.ts.map +0 -1
  343. package/dist/src/components/mdastNodes/TextNode.d.ts.map +0 -1
  344. package/dist/src/components/mdastNodes/ThematicBreakNode.d.ts.map +0 -1
  345. package/dist/src/components/mdastNodes/TwitterEmbedNode.d.ts.map +0 -1
  346. package/dist/src/components/mdastNodes/YouTubeEmbedNode.d.ts.map +0 -1
  347. package/dist/src/components/mdastNodes/ZennDetailsNode.d.ts.map +0 -1
  348. package/dist/src/components/mdastNodes/ZennMessageNode.d.ts.map +0 -1
  349. package/dist/src/components/mermaidInteraction.d.ts.map +0 -1
  350. package/dist/src/components/plugins/DifyIFramePlugin.d.ts.map +0 -1
  351. package/dist/src/components/plugins/IFramePluginRegistry.d.ts.map +0 -1
  352. package/dist/src/components/plugins/index.d.ts.map +0 -1
  353. package/dist/src/gen/markdown/v1/markdown_connect.d.ts.map +0 -1
  354. package/dist/src/gen/markdown/v1/markdown_pb.d.ts.map +0 -1
  355. package/dist/src/index.client.d.ts +0 -44
  356. package/dist/src/index.client.d.ts.map +0 -1
  357. package/dist/src/index.d.ts +0 -2
  358. package/dist/src/index.server.d.ts +0 -9
  359. package/dist/src/index.server.d.ts.map +0 -1
  360. package/dist/src/plugins/createIntentTweetLink.d.ts.map +0 -1
  361. package/dist/src/plugins/extractYouTubeVideoId.d.ts.map +0 -1
  362. package/dist/src/plugins/fetchSiteMetadata.d.ts.map +0 -1
  363. package/dist/src/plugins/remark-auto-heading-id.d.ts.map +0 -1
  364. package/dist/src/plugins/remark-block-link-metadata.d.ts.map +0 -1
  365. package/dist/src/plugins/remark-block-link.d.ts.map +0 -1
  366. package/dist/src/plugins/remark-custom-heading-id.d.ts.map +0 -1
  367. package/dist/src/plugins/remark-footnote-back-link.d.ts.map +0 -1
  368. package/dist/src/plugins/remark-html-anchor-to-link.d.ts.map +0 -1
  369. package/dist/src/plugins/remark-html-in-html.d.ts.map +0 -1
  370. package/dist/src/plugins/remark-image-size.d.ts.map +0 -1
  371. package/dist/src/plugins/remark-import-directive.async.server.d.ts.map +0 -1
  372. package/dist/src/plugins/remark-mark.d.ts.map +0 -1
  373. package/dist/src/plugins/remark-parent-node.d.ts.map +0 -1
  374. package/dist/src/plugins/remark-resolve-uri.async.d.ts.map +0 -1
  375. package/dist/src/plugins/remark-subscript.d.ts.map +0 -1
  376. package/dist/src/plugins/remark-superscript.d.ts.map +0 -1
  377. package/dist/src/plugins/remark-table-merge.d.ts.map +0 -1
  378. package/dist/src/plugins/remark-twitter-embed.d.ts.map +0 -1
  379. package/dist/src/plugins/remark-unwrap-block-html.d.ts.map +0 -1
  380. package/dist/src/plugins/remark-youtube-embed.d.ts.map +0 -1
  381. package/dist/src/plugins/remark-zenn-message.d.ts.map +0 -1
  382. package/dist/src/plugins/transformUri.async.server.d.ts.map +0 -1
  383. package/dist/src/remarkProcessor.server.d.ts.map +0 -1
  384. package/dist/src/test-setup.d.ts.map +0 -1
  385. package/dist/src/utils/extractHeadings.d.ts.map +0 -1
  386. package/dist/src/utils/getFaviconUrl.d.ts.map +0 -1
  387. package/dist/src/utils/headingText.d.ts.map +0 -1
  388. package/dist/src/utils/simple-logger.d.ts.map +0 -1
  389. package/dist/vite.config.d.ts +0 -3
  390. package/dist/vite.config.d.ts.map +0 -1
  391. /package/dist/{src/cli.d.ts → cli.d.ts} +0 -0
  392. /package/dist/{src/components → components}/MarkdownRenderer.d.ts +0 -0
  393. /package/dist/{src/components → components}/MermaidDiagram.d.ts +0 -0
  394. /package/dist/{src/components → components}/NodesRenderer.d.ts +0 -0
  395. /package/dist/{src/components → components}/TableOfContents.d.ts +0 -0
  396. /package/dist/{src/components → components}/mdastNodes/BlockLinkNode.d.ts +0 -0
  397. /package/dist/{src/components → components}/mdastNodes/BlockquoteNode.d.ts +0 -0
  398. /package/dist/{src/components → components}/mdastNodes/CodeNode.d.ts +0 -0
  399. /package/dist/{src/components → components}/mdastNodes/DeleteNode.d.ts +0 -0
  400. /package/dist/{src/components → components}/mdastNodes/EmphasisNode.d.ts +0 -0
  401. /package/dist/{src/components → components}/mdastNodes/FootnoteBackLinkNode.d.ts +0 -0
  402. /package/dist/{src/components → components}/mdastNodes/HTMLBlockContainerNode.d.ts +0 -0
  403. /package/dist/{src/components → components}/mdastNodes/HTMLNode.d.ts +0 -0
  404. /package/dist/{src/components → components}/mdastNodes/HeadingNode.d.ts +0 -0
  405. /package/dist/{src/components → components}/mdastNodes/ImageNode.d.ts +0 -0
  406. /package/dist/{src/components → components}/mdastNodes/InlineCodeNode.d.ts +0 -0
  407. /package/dist/{src/components → components}/mdastNodes/InlineMathNode.d.ts +0 -0
  408. /package/dist/{src/components → components}/mdastNodes/LinkNode.d.ts +0 -0
  409. /package/dist/{src/components → components}/mdastNodes/ListItemNode.d.ts +0 -0
  410. /package/dist/{src/components → components}/mdastNodes/ListNode.d.ts +0 -0
  411. /package/dist/{src/components → components}/mdastNodes/MarkNode.d.ts +0 -0
  412. /package/dist/{src/components → components}/mdastNodes/MathNode.d.ts +0 -0
  413. /package/dist/{src/components → components}/mdastNodes/ParagraphNode.d.ts +0 -0
  414. /package/dist/{src/components → components}/mdastNodes/RichLinkCard.d.ts +0 -0
  415. /package/dist/{src/components → components}/mdastNodes/StrongNode.d.ts +0 -0
  416. /package/dist/{src/components → components}/mdastNodes/SubscriptNode.d.ts +0 -0
  417. /package/dist/{src/components → components}/mdastNodes/SuperscriptNode.d.ts +0 -0
  418. /package/dist/{src/components → components}/mdastNodes/TableNode.d.ts +0 -0
  419. /package/dist/{src/components → components}/mdastNodes/TextNode.d.ts +0 -0
  420. /package/dist/{src/components → components}/mdastNodes/ThematicBreakNode.d.ts +0 -0
  421. /package/dist/{src/components → components}/mdastNodes/TwitterEmbedNode.d.ts +0 -0
  422. /package/dist/{src/components → components}/mdastNodes/YouTubeEmbedNode.d.ts +0 -0
  423. /package/dist/{src/components → components}/mdastNodes/ZennDetailsNode.d.ts +0 -0
  424. /package/dist/{src/components → components}/mdastNodes/ZennMessageNode.d.ts +0 -0
  425. /package/dist/{src/components → components}/mermaidInteraction.d.ts +0 -0
  426. /package/dist/{src/components → components}/plugins/DifyIFramePlugin.d.ts +0 -0
  427. /package/dist/{src/components → components}/plugins/IFramePluginRegistry.d.ts +0 -0
  428. /package/dist/{src/components → components}/plugins/index.d.ts +0 -0
  429. /package/dist/{src/gen → gen}/markdown/v1/markdown_connect.d.ts +0 -0
  430. /package/dist/{src/gen → gen}/markdown/v1/markdown_pb.d.ts +0 -0
  431. /package/dist/{src/plugins → plugins}/createIntentTweetLink.d.ts +0 -0
  432. /package/dist/{src/plugins → plugins}/extractYouTubeVideoId.d.ts +0 -0
  433. /package/dist/{src/plugins → plugins}/fetchSiteMetadata.d.ts +0 -0
  434. /package/dist/{src/plugins → plugins}/remark-auto-heading-id.d.ts +0 -0
  435. /package/dist/{src/plugins → plugins}/remark-block-link-metadata.d.ts +0 -0
  436. /package/dist/{src/plugins → plugins}/remark-block-link.d.ts +0 -0
  437. /package/dist/{src/plugins → plugins}/remark-custom-heading-id.d.ts +0 -0
  438. /package/dist/{src/plugins → plugins}/remark-footnote-back-link.d.ts +0 -0
  439. /package/dist/{src/plugins → plugins}/remark-html-anchor-to-link.d.ts +0 -0
  440. /package/dist/{src/plugins → plugins}/remark-html-in-html.d.ts +0 -0
  441. /package/dist/{src/plugins → plugins}/remark-image-size.d.ts +0 -0
  442. /package/dist/{src/plugins → plugins}/remark-import-directive.async.server.d.ts +0 -0
  443. /package/dist/{src/plugins → plugins}/remark-mark.d.ts +0 -0
  444. /package/dist/{src/plugins → plugins}/remark-parent-node.d.ts +0 -0
  445. /package/dist/{src/plugins → plugins}/remark-resolve-uri.async.d.ts +0 -0
  446. /package/dist/{src/plugins → plugins}/remark-subscript.d.ts +0 -0
  447. /package/dist/{src/plugins → plugins}/remark-superscript.d.ts +0 -0
  448. /package/dist/{src/plugins → plugins}/remark-table-merge.d.ts +0 -0
  449. /package/dist/{src/plugins → plugins}/remark-twitter-embed.d.ts +0 -0
  450. /package/dist/{src/plugins → plugins}/remark-unwrap-block-html.d.ts +0 -0
  451. /package/dist/{src/plugins → plugins}/remark-youtube-embed.d.ts +0 -0
  452. /package/dist/{src/plugins → plugins}/remark-zenn-message.d.ts +0 -0
  453. /package/dist/{src/plugins → plugins}/transformUri.async.server.d.ts +0 -0
  454. /package/dist/{src/remarkProcessor.server.d.ts → remarkProcessor.server.d.ts} +0 -0
  455. /package/dist/{src/test-setup.d.ts → test-setup.d.ts} +0 -0
  456. /package/dist/{src/utils → utils}/extractHeadings.d.ts +0 -0
  457. /package/dist/{src/utils → utils}/getFaviconUrl.d.ts +0 -0
  458. /package/dist/{src/utils → utils}/headingText.d.ts +0 -0
  459. /package/dist/{src/utils → utils}/simple-logger.d.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"dagre-VKFMJZFB-BMJn8PTf.cjs","sources":["../../../node_modules/.pnpm/mermaid@11.16.0/node_modules/mermaid/dist/chunks/mermaid.core/dagre-VKFMJZFB.mjs"],"sourcesContent":["import {\n adjustClustersAndEdges,\n clear as clear4,\n clusterDb,\n findNonClusterChild,\n sortNodesByHierarchy\n} from \"./chunk-RYQCIY6F.mjs\";\nimport {\n clear as clear2,\n insertEdge,\n insertEdgeLabel,\n markers_default,\n positionEdgeLabel\n} from \"./chunk-52WLFC77.mjs\";\nimport {\n clear,\n clear2 as clear3,\n insertCluster,\n insertNode,\n positionNode,\n setNodeElem,\n updateNodeBounds\n} from \"./chunk-ZGVPDNZ5.mjs\";\nimport \"./chunk-C7G6YPKG.mjs\";\nimport \"./chunk-7BUUIJ7U.mjs\";\nimport {\n getSubGraphTitleMargins\n} from \"./chunk-OGEWGWER.mjs\";\nimport \"./chunk-Q4XR5HBZ.mjs\";\nimport \"./chunk-HOUHSVGY.mjs\";\nimport \"./chunk-ICXQ74PX.mjs\";\nimport {\n getConfig2 as getConfig\n} from \"./chunk-WYO6CB5R.mjs\";\nimport {\n log\n} from \"./chunk-X3CZISLH.mjs\";\nimport {\n __name\n} from \"./chunk-Y2CYZVJY.mjs\";\n\n// src/rendering-util/layout-algorithms/dagre/index.js\nimport { layout as dagreLayout } from \"dagre-d3-es/src/dagre/index.js\";\nimport * as graphlibJson from \"dagre-d3-es/src/graphlib/json.js\";\nimport * as graphlib from \"dagre-d3-es/src/graphlib/index.js\";\nvar clamp = /* @__PURE__ */ __name((value, min, max) => Math.max(min, Math.min(max, value)), \"clamp\");\nvar getDefaultSelfLoopSide = /* @__PURE__ */ __name((rankdir = \"TB\") => {\n switch (rankdir) {\n case \"BT\":\n return \"bottom\";\n case \"LR\":\n return \"right\";\n case \"RL\":\n return \"left\";\n case \"TB\":\n default:\n return \"top\";\n }\n}, \"getDefaultSelfLoopSide\");\nvar shouldMergeSelfLoopSegments = /* @__PURE__ */ __name((diagramType) => diagramType === \"flowchart\" || diagramType === \"flowchart-v2\" || diagramType === \"stateDiagram\", \"shouldMergeSelfLoopSegments\");\nvar getSelfLoopSide = /* @__PURE__ */ __name((graph, node, segments, originalNodeId, rankdir) => {\n const layoutHints = [];\n const dummyNodeIds = /* @__PURE__ */ new Set();\n segments.forEach(({ start, end }) => {\n if (start !== originalNodeId) {\n dummyNodeIds.add(start);\n }\n if (end !== originalNodeId) {\n dummyNodeIds.add(end);\n }\n });\n dummyNodeIds.forEach((id) => {\n const dummyNode = graph.node(id);\n if (typeof dummyNode?.x === \"number\" && typeof dummyNode?.y === \"number\") {\n layoutHints.push(dummyNode);\n }\n });\n if (layoutHints.length === 0) {\n segments.forEach(({ edge }) => {\n (edge.points ?? []).forEach((point) => {\n if (typeof point?.x === \"number\" && typeof point?.y === \"number\") {\n layoutHints.push(point);\n }\n });\n });\n }\n if (layoutHints.length === 0) {\n return getDefaultSelfLoopSide(rankdir);\n }\n const center = layoutHints.reduce(\n (acc, point) => ({\n x: acc.x + point.x / layoutHints.length,\n y: acc.y + point.y / layoutHints.length\n }),\n { x: 0, y: 0 }\n );\n const dx = center.x - node.x;\n const dy = center.y - node.y;\n if (Math.abs(dx) > Math.abs(dy)) {\n return dx > 0 ? \"right\" : \"left\";\n }\n if (Math.abs(dy) > 0) {\n return dy > 0 ? \"bottom\" : \"top\";\n }\n return getDefaultSelfLoopSide(rankdir);\n}, \"getSelfLoopSide\");\nvar getSelfLoopPoints = /* @__PURE__ */ __name((node, side = \"top\", yOffset = 0, labelWidth = 0) => {\n const x = node.x;\n const y = node.y - yOffset;\n const halfWidth = node.width / 2;\n const halfHeight = node.height / 2;\n const maxSpan = Math.max(36, Math.min(100, node.width * 0.8));\n const span = clamp(Math.max(labelWidth, node.width * 0.35), 36, maxSpan);\n const depth = clamp(Math.min(node.width, node.height) * 0.45, 24, 48);\n switch (side) {\n case \"bottom\": {\n const bottom = y + halfHeight;\n return [\n { x: x - span / 2, y: bottom },\n { x: x - span / 2, y: bottom + depth },\n { x: x + span / 2, y: bottom + depth },\n { x: x + span / 2, y: bottom }\n ];\n }\n case \"right\": {\n const right = x + halfWidth;\n return [\n { x: right, y: y - span / 2 },\n { x: right + depth, y: y - span / 2 },\n { x: right + depth, y: y + span / 2 },\n { x: right, y: y + span / 2 }\n ];\n }\n case \"left\": {\n const left = x - halfWidth;\n return [\n { x: left, y: y - span / 2 },\n { x: left - depth, y: y - span / 2 },\n { x: left - depth, y: y + span / 2 },\n { x: left, y: y + span / 2 }\n ];\n }\n case \"top\":\n default: {\n const top = y - halfHeight;\n return [\n { x: x - span / 2, y: top },\n { x: x - span / 2, y: top - depth },\n { x: x + span / 2, y: top - depth },\n { x: x + span / 2, y: top }\n ];\n }\n }\n}, \"getSelfLoopPoints\");\nvar getSelfLoopLabelPosition = /* @__PURE__ */ __name((node, points, side = \"top\", yOffset = 0, label = {}) => {\n const gap = 4;\n const x = node.x;\n const y = node.y - yOffset;\n const labelWidth = label.width ?? 0;\n const labelHeight = label.height ?? 0;\n switch (side) {\n case \"bottom\":\n return { x, y: Math.max(...points.map((point) => point.y)) + labelHeight / 2 + gap };\n case \"right\":\n return { x: Math.max(...points.map((point) => point.x)) + labelWidth / 2 + gap, y };\n case \"left\":\n return { x: Math.min(...points.map((point) => point.x)) - labelWidth / 2 - gap, y };\n case \"top\":\n default:\n return { x, y: Math.min(...points.map((point) => point.y)) - labelHeight / 2 - gap };\n }\n}, \"getSelfLoopLabelPosition\");\nvar getEdgesToRender = /* @__PURE__ */ __name((graph, yOffset = 0, { mergeSelfLoops = true } = {}) => {\n const selfLoopEdgeGroups = /* @__PURE__ */ new Map();\n const edgesToRender = [];\n const rankdir = graph.graph()?.rankdir;\n graph.edges().forEach((e) => {\n const edge = graph.edge(e);\n if (mergeSelfLoops && edge.selfLoop) {\n const key = edge.selfLoop.id;\n if (!selfLoopEdgeGroups.has(key)) {\n selfLoopEdgeGroups.set(key, []);\n }\n selfLoopEdgeGroups.get(key).push({ edge, start: e.v, end: e.w });\n } else {\n edgesToRender.push({ edge, start: e.v, end: e.w });\n }\n });\n selfLoopEdgeGroups.forEach((segments) => {\n if (segments.length !== 3) {\n segments.forEach((segment) => edgesToRender.push(segment));\n return;\n }\n segments.sort((a, b) => a.edge.selfLoop.order - b.edge.selfLoop.order);\n const [firstSegment, middleSegment, lastSegment] = segments;\n const originalEdge = firstSegment.edge.originalEdge ?? middleSegment.edge.originalEdge ?? lastSegment.edge.originalEdge ?? middleSegment.edge;\n const node = graph.node(originalEdge.start);\n if (!node) {\n segments.forEach((segment) => edgesToRender.push(segment));\n return;\n }\n const label = {\n width: middleSegment.edge.width,\n height: middleSegment.edge.height\n };\n const side = getSelfLoopSide(graph, node, segments, originalEdge.start, rankdir);\n const points = getSelfLoopPoints(node, side, yOffset, label.width ?? 0);\n const labelPosition = getSelfLoopLabelPosition(node, points, side, yOffset, label);\n const mergedEdge = {\n ...middleSegment.edge,\n ...originalEdge,\n id: originalEdge.id,\n points,\n start: originalEdge.start,\n end: originalEdge.end,\n x: labelPosition.x,\n y: labelPosition.y,\n width: label.width,\n height: label.height,\n labelStyle: middleSegment.edge.labelStyle,\n fromCluster: firstSegment.edge.fromCluster ?? middleSegment.edge.fromCluster ?? lastSegment.edge.fromCluster,\n toCluster: firstSegment.edge.toCluster ?? middleSegment.edge.toCluster ?? lastSegment.edge.toCluster\n };\n delete mergedEdge.selfLoop;\n delete mergedEdge.originalEdge;\n edgesToRender.push({ edge: mergedEdge, start: mergedEdge.start, end: mergedEdge.end });\n });\n return edgesToRender;\n}, \"getEdgesToRender\");\nvar recursiveRender = /* @__PURE__ */ __name(async (_elem, graph, diagramType, id, parentCluster, siteConfig) => {\n log.warn(\"Graph in recursive render:XAX\", graphlibJson.write(graph), parentCluster);\n const dir = graph.graph().rankdir;\n log.trace(\"Dir in recursive render - dir:\", dir);\n const elem = _elem.insert(\"g\").attr(\"class\", \"root\");\n if (!graph.nodes()) {\n log.info(\"No nodes found for\", graph);\n } else {\n log.info(\"Recursive render XXX\", graph.nodes());\n }\n if (graph.edges().length > 0) {\n log.info(\"Recursive edges\", graph.edge(graph.edges()[0]));\n }\n const clusters = elem.insert(\"g\").attr(\"class\", \"clusters\");\n const edgePaths = elem.insert(\"g\").attr(\"class\", \"edgePaths\");\n const edgeLabels = elem.insert(\"g\").attr(\"class\", \"edgeLabels\");\n const nodes = elem.insert(\"g\").attr(\"class\", \"nodes\");\n const mergeSelfLoops = shouldMergeSelfLoopSegments(diagramType);\n await Promise.all(\n graph.nodes().map(async function(v) {\n const node = graph.node(v);\n if (parentCluster !== void 0) {\n const data = JSON.parse(JSON.stringify(parentCluster.clusterData));\n log.trace(\n \"Setting data for parent cluster XXX\\n Node.id = \",\n v,\n \"\\n data=\",\n data.height,\n \"\\nParent cluster\",\n parentCluster.height\n );\n graph.setNode(parentCluster.id, data);\n if (!graph.parent(v)) {\n log.trace(\"Setting parent\", v, parentCluster.id);\n graph.setParent(v, parentCluster.id, data);\n }\n }\n log.info(\"(Insert) Node XXX\" + v + \": \" + JSON.stringify(graph.node(v)));\n if (node?.clusterNode) {\n log.info(\"Cluster identified XBX\", v, node.width, graph.node(v));\n const { ranksep, nodesep } = graph.graph();\n node.graph.setGraph({\n ...node.graph.graph(),\n ranksep: ranksep + 25,\n nodesep\n });\n const o = await recursiveRender(\n nodes,\n node.graph,\n diagramType,\n id,\n graph.node(v),\n siteConfig\n );\n const newEl = o.elem;\n updateNodeBounds(node, newEl);\n node.diff = o.diff || 0;\n log.info(\n \"New compound node after recursive render XAX\",\n v,\n \"width\",\n // node,\n node.width,\n \"height\",\n node.height\n // node.x,\n // node.y\n );\n setNodeElem(newEl, node);\n } else {\n if (graph.children(v).length > 0) {\n log.trace(\n \"Cluster - the non recursive path XBX\",\n v,\n node.id,\n node,\n node.width,\n \"Graph:\",\n graph\n );\n log.trace(findNonClusterChild(node.id, graph));\n clusterDb.set(node.id, { id: findNonClusterChild(node.id, graph), node });\n } else {\n log.trace(\"Node - the non recursive path XAX\", v, nodes, graph.node(v), dir);\n await insertNode(nodes, graph.node(v), { config: siteConfig, dir });\n }\n }\n })\n );\n const processEdges = /* @__PURE__ */ __name(async () => {\n const edgePromises = graph.edges().map(async function(e) {\n const edge = graph.edge(e.v, e.w, e.name);\n log.info(\"Edge \" + e.v + \" -> \" + e.w + \": \" + JSON.stringify(e));\n log.info(\"Edge \" + e.v + \" -> \" + e.w + \": \", e, \" \", JSON.stringify(graph.edge(e)));\n log.info(\n \"Fix\",\n clusterDb,\n \"ids:\",\n e.v,\n e.w,\n \"Translating: \",\n clusterDb.get(e.v),\n clusterDb.get(e.w)\n );\n if (mergeSelfLoops && edge.selfLoop) {\n if (edge.selfLoop.order !== 1) {\n return;\n }\n const segmentId = edge.id;\n edge.id = edge.selfLoop.id;\n await insertEdgeLabel(edgeLabels, edge);\n edge.id = segmentId;\n return;\n }\n await insertEdgeLabel(edgeLabels, edge);\n });\n await Promise.all(edgePromises);\n }, \"processEdges\");\n await processEdges();\n log.info(\"Graph before layout:\", JSON.stringify(graphlibJson.write(graph)));\n log.info(\"############################################# XXX\");\n log.info(\"### Layout ### XXX\");\n log.info(\"############################################# XXX\");\n dagreLayout(graph);\n log.info(\"Graph after layout:\", JSON.stringify(graphlibJson.write(graph)));\n let diff = 0;\n let { subGraphTitleTotalMargin } = getSubGraphTitleMargins(siteConfig);\n await Promise.all(\n sortNodesByHierarchy(graph).map(async function(v) {\n const node = graph.node(v);\n log.info(\n \"Position XBX => \" + v + \": (\" + node.x,\n \",\" + node.y,\n \") width: \",\n node.width,\n \" height: \",\n node.height\n );\n if (node?.clusterNode) {\n node.y += subGraphTitleTotalMargin;\n log.info(\n \"A tainted cluster node XBX1\",\n v,\n node.id,\n node.width,\n node.height,\n node.x,\n node.y,\n graph.parent(v)\n );\n clusterDb.get(node.id).node = node;\n positionNode(node);\n } else {\n if (graph.children(v).length > 0) {\n log.info(\n \"A pure cluster node XBX1\",\n v,\n node.id,\n node.x,\n node.y,\n node.width,\n node.height,\n graph.parent(v)\n );\n node.height += subGraphTitleTotalMargin;\n graph.node(node.parentId);\n const halfPadding = node?.padding / 2 || 0;\n const labelHeight = node?.labelBBox?.height || 0;\n const offsetY = labelHeight - halfPadding || 0;\n log.debug(\"OffsetY\", offsetY, \"labelHeight\", labelHeight, \"halfPadding\", halfPadding);\n await insertCluster(clusters, node);\n clusterDb.get(node.id).node = node;\n } else {\n const parent = graph.node(node.parentId);\n node.y += subGraphTitleTotalMargin / 2;\n log.info(\n \"A regular node XBX1 - using the padding\",\n node.id,\n \"parent\",\n node.parentId,\n node.width,\n node.height,\n node.x,\n node.y,\n \"offsetY\",\n node.offsetY,\n \"parent\",\n parent,\n parent?.offsetY,\n node\n );\n positionNode(node);\n }\n }\n })\n );\n const edgeOffsetY = subGraphTitleTotalMargin / 2;\n const edgesToRender = getEdgesToRender(graph, edgeOffsetY, { mergeSelfLoops });\n edgesToRender.forEach(function({ edge, start, end }) {\n log.info(\"Edge \" + start + \" -> \" + end + \": \" + JSON.stringify(edge), edge);\n edge.points.forEach((point) => point.y += edgeOffsetY);\n const startNode = graph.node(start);\n const endNode = graph.node(end);\n const paths = insertEdge(edgePaths, edge, clusterDb, diagramType, startNode, endNode, id);\n positionEdgeLabel(edge, paths);\n });\n graph.nodes().forEach(function(v) {\n const n = graph.node(v);\n log.info(v, n.type, n.diff);\n if (n.isGroup) {\n diff = n.diff;\n }\n });\n log.warn(\"Returning from recursive render XAX\", elem, diff);\n return { elem, diff };\n}, \"recursiveRender\");\nvar render = /* @__PURE__ */ __name(async (data4Layout, svg) => {\n const graph = new graphlib.Graph({\n multigraph: true,\n compound: true\n }).setGraph({\n rankdir: data4Layout.direction,\n nodesep: data4Layout.config?.nodeSpacing || data4Layout.config?.flowchart?.nodeSpacing || data4Layout.nodeSpacing,\n ranksep: data4Layout.config?.rankSpacing || data4Layout.config?.flowchart?.rankSpacing || data4Layout.rankSpacing,\n marginx: 8,\n marginy: 8\n }).setDefaultEdgeLabel(function() {\n return {};\n });\n const element = svg.select(\"g\");\n markers_default(element, data4Layout.markers, data4Layout.type, data4Layout.diagramId);\n clear3();\n clear2();\n clear();\n clear4();\n data4Layout.nodes.forEach((node) => {\n graph.setNode(node.id, { ...node });\n if (node.parentId) {\n graph.setParent(node.id, node.parentId);\n }\n });\n log.debug(\"Edges:\", data4Layout.edges);\n data4Layout.edges.forEach((edge) => {\n if (edge.start === edge.end) {\n const nodeId = edge.start;\n const specialId1 = nodeId + \"---\" + nodeId + \"---1\";\n const specialId2 = nodeId + \"---\" + nodeId + \"---2\";\n const node = graph.node(nodeId);\n graph.setNode(specialId1, {\n domId: specialId1,\n id: specialId1,\n parentId: node.parentId,\n labelStyle: \"\",\n label: \"\",\n padding: 0,\n shape: \"labelRect\",\n // shape: 'rect',\n style: \"\",\n width: 10,\n height: 10\n });\n graph.setParent(specialId1, node.parentId);\n graph.setNode(specialId2, {\n domId: specialId2,\n id: specialId2,\n parentId: node.parentId,\n labelStyle: \"\",\n padding: 0,\n // shape: 'rect',\n shape: \"labelRect\",\n label: \"\",\n style: \"\",\n width: 10,\n height: 10\n });\n graph.setParent(specialId2, node.parentId);\n const originalEdge = structuredClone(edge);\n const edge1 = structuredClone(edge);\n const edgeMid = structuredClone(edge);\n const edge2 = structuredClone(edge);\n edge1.originalEdge = originalEdge;\n edge1.selfLoop = { id: originalEdge.id, order: 0 };\n edgeMid.originalEdge = originalEdge;\n edgeMid.selfLoop = { id: originalEdge.id, order: 1 };\n edge2.originalEdge = originalEdge;\n edge2.selfLoop = { id: originalEdge.id, order: 2 };\n edge1.label = \"\";\n edge1.arrowTypeEnd = \"none\";\n edge1.endLabelLeft = \"\";\n edge1.endLabelRight = \"\";\n edge1.startLabelLeft = \"\";\n edge1.id = nodeId + \"-cyclic-special-1\";\n edgeMid.startLabelRight = \"\";\n edgeMid.startLabelLeft = \"\";\n edgeMid.endLabelLeft = \"\";\n edgeMid.endLabelRight = \"\";\n edgeMid.arrowTypeStart = \"none\";\n edgeMid.arrowTypeEnd = \"none\";\n edgeMid.id = nodeId + \"-cyclic-special-mid\";\n edge2.label = \"\";\n edge2.startLabelRight = \"\";\n edge2.startLabelLeft = \"\";\n edge2.arrowTypeStart = \"none\";\n if (node.isGroup) {\n edge1.fromCluster = nodeId;\n edge2.toCluster = nodeId;\n }\n edge2.id = nodeId + \"-cyclic-special-2\";\n edge2.arrowTypeStart = \"none\";\n graph.setEdge(nodeId, specialId1, edge1, nodeId + \"-cyclic-special-0\");\n graph.setEdge(specialId1, specialId2, edgeMid, nodeId + \"-cyclic-special-1\");\n graph.setEdge(specialId2, nodeId, edge2, nodeId + \"-cyclic-special-2\");\n } else {\n graph.setEdge(edge.start, edge.end, { ...edge }, edge.id);\n }\n });\n log.warn(\"Graph at first:\", JSON.stringify(graphlibJson.write(graph)));\n adjustClustersAndEdges(graph);\n log.warn(\"Graph after XAX:\", JSON.stringify(graphlibJson.write(graph)));\n const siteConfig = getConfig();\n await recursiveRender(\n element,\n graph,\n data4Layout.type,\n data4Layout.diagramId,\n void 0,\n siteConfig\n );\n}, \"render\");\nexport {\n getEdgesToRender,\n render\n};\n"],"names":["clamp","__name","value","min","max","getDefaultSelfLoopSide","rankdir","shouldMergeSelfLoopSegments","diagramType","getSelfLoopSide","graph","node","segments","originalNodeId","layoutHints","dummyNodeIds","start","end","id","dummyNode","edge","point","center","acc","dx","dy","getSelfLoopPoints","side","yOffset","labelWidth","x","y","halfWidth","halfHeight","maxSpan","span","depth","bottom","right","left","top","getSelfLoopLabelPosition","points","label","labelHeight","getEdgesToRender","mergeSelfLoops","selfLoopEdgeGroups","edgesToRender","e","key","segment","a","b","firstSegment","middleSegment","lastSegment","originalEdge","labelPosition","mergedEdge","recursiveRender","_elem","parentCluster","siteConfig","log","graphlibJson.write","dir","elem","clusters","edgePaths","edgeLabels","nodes","v","data","ranksep","nodesep","o","newEl","updateNodeBounds","setNodeElem","findNonClusterChild","clusterDb","insertNode","edgePromises","segmentId","insertEdgeLabel","dagreLayout","diff","subGraphTitleTotalMargin","getSubGraphTitleMargins","sortNodesByHierarchy","positionNode","halfPadding","offsetY","insertCluster","parent","edgeOffsetY","startNode","endNode","paths","insertEdge","positionEdgeLabel","n","render","data4Layout","svg","graphlib.Graph","element","markers_default","clear3","clear2","clear","clear4","nodeId","specialId1","specialId2","edge1","edgeMid","edge2","adjustClustersAndEdges","getConfig"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"dagre-VKFMJZFB--JH4XxhX.cjs","sources":["../../../node_modules/.pnpm/mermaid@11.16.0/node_modules/mermaid/dist/chunks/mermaid.core/dagre-VKFMJZFB.mjs"],"sourcesContent":["import {\n adjustClustersAndEdges,\n clear as clear4,\n clusterDb,\n findNonClusterChild,\n sortNodesByHierarchy\n} from \"./chunk-RYQCIY6F.mjs\";\nimport {\n clear as clear2,\n insertEdge,\n insertEdgeLabel,\n markers_default,\n positionEdgeLabel\n} from \"./chunk-52WLFC77.mjs\";\nimport {\n clear,\n clear2 as clear3,\n insertCluster,\n insertNode,\n positionNode,\n setNodeElem,\n updateNodeBounds\n} from \"./chunk-ZGVPDNZ5.mjs\";\nimport \"./chunk-C7G6YPKG.mjs\";\nimport \"./chunk-7BUUIJ7U.mjs\";\nimport {\n getSubGraphTitleMargins\n} from \"./chunk-OGEWGWER.mjs\";\nimport \"./chunk-Q4XR5HBZ.mjs\";\nimport \"./chunk-HOUHSVGY.mjs\";\nimport \"./chunk-ICXQ74PX.mjs\";\nimport {\n getConfig2 as getConfig\n} from \"./chunk-WYO6CB5R.mjs\";\nimport {\n log\n} from \"./chunk-X3CZISLH.mjs\";\nimport {\n __name\n} from \"./chunk-Y2CYZVJY.mjs\";\n\n// src/rendering-util/layout-algorithms/dagre/index.js\nimport { layout as dagreLayout } from \"dagre-d3-es/src/dagre/index.js\";\nimport * as graphlibJson from \"dagre-d3-es/src/graphlib/json.js\";\nimport * as graphlib from \"dagre-d3-es/src/graphlib/index.js\";\nvar clamp = /* @__PURE__ */ __name((value, min, max) => Math.max(min, Math.min(max, value)), \"clamp\");\nvar getDefaultSelfLoopSide = /* @__PURE__ */ __name((rankdir = \"TB\") => {\n switch (rankdir) {\n case \"BT\":\n return \"bottom\";\n case \"LR\":\n return \"right\";\n case \"RL\":\n return \"left\";\n case \"TB\":\n default:\n return \"top\";\n }\n}, \"getDefaultSelfLoopSide\");\nvar shouldMergeSelfLoopSegments = /* @__PURE__ */ __name((diagramType) => diagramType === \"flowchart\" || diagramType === \"flowchart-v2\" || diagramType === \"stateDiagram\", \"shouldMergeSelfLoopSegments\");\nvar getSelfLoopSide = /* @__PURE__ */ __name((graph, node, segments, originalNodeId, rankdir) => {\n const layoutHints = [];\n const dummyNodeIds = /* @__PURE__ */ new Set();\n segments.forEach(({ start, end }) => {\n if (start !== originalNodeId) {\n dummyNodeIds.add(start);\n }\n if (end !== originalNodeId) {\n dummyNodeIds.add(end);\n }\n });\n dummyNodeIds.forEach((id) => {\n const dummyNode = graph.node(id);\n if (typeof dummyNode?.x === \"number\" && typeof dummyNode?.y === \"number\") {\n layoutHints.push(dummyNode);\n }\n });\n if (layoutHints.length === 0) {\n segments.forEach(({ edge }) => {\n (edge.points ?? []).forEach((point) => {\n if (typeof point?.x === \"number\" && typeof point?.y === \"number\") {\n layoutHints.push(point);\n }\n });\n });\n }\n if (layoutHints.length === 0) {\n return getDefaultSelfLoopSide(rankdir);\n }\n const center = layoutHints.reduce(\n (acc, point) => ({\n x: acc.x + point.x / layoutHints.length,\n y: acc.y + point.y / layoutHints.length\n }),\n { x: 0, y: 0 }\n );\n const dx = center.x - node.x;\n const dy = center.y - node.y;\n if (Math.abs(dx) > Math.abs(dy)) {\n return dx > 0 ? \"right\" : \"left\";\n }\n if (Math.abs(dy) > 0) {\n return dy > 0 ? \"bottom\" : \"top\";\n }\n return getDefaultSelfLoopSide(rankdir);\n}, \"getSelfLoopSide\");\nvar getSelfLoopPoints = /* @__PURE__ */ __name((node, side = \"top\", yOffset = 0, labelWidth = 0) => {\n const x = node.x;\n const y = node.y - yOffset;\n const halfWidth = node.width / 2;\n const halfHeight = node.height / 2;\n const maxSpan = Math.max(36, Math.min(100, node.width * 0.8));\n const span = clamp(Math.max(labelWidth, node.width * 0.35), 36, maxSpan);\n const depth = clamp(Math.min(node.width, node.height) * 0.45, 24, 48);\n switch (side) {\n case \"bottom\": {\n const bottom = y + halfHeight;\n return [\n { x: x - span / 2, y: bottom },\n { x: x - span / 2, y: bottom + depth },\n { x: x + span / 2, y: bottom + depth },\n { x: x + span / 2, y: bottom }\n ];\n }\n case \"right\": {\n const right = x + halfWidth;\n return [\n { x: right, y: y - span / 2 },\n { x: right + depth, y: y - span / 2 },\n { x: right + depth, y: y + span / 2 },\n { x: right, y: y + span / 2 }\n ];\n }\n case \"left\": {\n const left = x - halfWidth;\n return [\n { x: left, y: y - span / 2 },\n { x: left - depth, y: y - span / 2 },\n { x: left - depth, y: y + span / 2 },\n { x: left, y: y + span / 2 }\n ];\n }\n case \"top\":\n default: {\n const top = y - halfHeight;\n return [\n { x: x - span / 2, y: top },\n { x: x - span / 2, y: top - depth },\n { x: x + span / 2, y: top - depth },\n { x: x + span / 2, y: top }\n ];\n }\n }\n}, \"getSelfLoopPoints\");\nvar getSelfLoopLabelPosition = /* @__PURE__ */ __name((node, points, side = \"top\", yOffset = 0, label = {}) => {\n const gap = 4;\n const x = node.x;\n const y = node.y - yOffset;\n const labelWidth = label.width ?? 0;\n const labelHeight = label.height ?? 0;\n switch (side) {\n case \"bottom\":\n return { x, y: Math.max(...points.map((point) => point.y)) + labelHeight / 2 + gap };\n case \"right\":\n return { x: Math.max(...points.map((point) => point.x)) + labelWidth / 2 + gap, y };\n case \"left\":\n return { x: Math.min(...points.map((point) => point.x)) - labelWidth / 2 - gap, y };\n case \"top\":\n default:\n return { x, y: Math.min(...points.map((point) => point.y)) - labelHeight / 2 - gap };\n }\n}, \"getSelfLoopLabelPosition\");\nvar getEdgesToRender = /* @__PURE__ */ __name((graph, yOffset = 0, { mergeSelfLoops = true } = {}) => {\n const selfLoopEdgeGroups = /* @__PURE__ */ new Map();\n const edgesToRender = [];\n const rankdir = graph.graph()?.rankdir;\n graph.edges().forEach((e) => {\n const edge = graph.edge(e);\n if (mergeSelfLoops && edge.selfLoop) {\n const key = edge.selfLoop.id;\n if (!selfLoopEdgeGroups.has(key)) {\n selfLoopEdgeGroups.set(key, []);\n }\n selfLoopEdgeGroups.get(key).push({ edge, start: e.v, end: e.w });\n } else {\n edgesToRender.push({ edge, start: e.v, end: e.w });\n }\n });\n selfLoopEdgeGroups.forEach((segments) => {\n if (segments.length !== 3) {\n segments.forEach((segment) => edgesToRender.push(segment));\n return;\n }\n segments.sort((a, b) => a.edge.selfLoop.order - b.edge.selfLoop.order);\n const [firstSegment, middleSegment, lastSegment] = segments;\n const originalEdge = firstSegment.edge.originalEdge ?? middleSegment.edge.originalEdge ?? lastSegment.edge.originalEdge ?? middleSegment.edge;\n const node = graph.node(originalEdge.start);\n if (!node) {\n segments.forEach((segment) => edgesToRender.push(segment));\n return;\n }\n const label = {\n width: middleSegment.edge.width,\n height: middleSegment.edge.height\n };\n const side = getSelfLoopSide(graph, node, segments, originalEdge.start, rankdir);\n const points = getSelfLoopPoints(node, side, yOffset, label.width ?? 0);\n const labelPosition = getSelfLoopLabelPosition(node, points, side, yOffset, label);\n const mergedEdge = {\n ...middleSegment.edge,\n ...originalEdge,\n id: originalEdge.id,\n points,\n start: originalEdge.start,\n end: originalEdge.end,\n x: labelPosition.x,\n y: labelPosition.y,\n width: label.width,\n height: label.height,\n labelStyle: middleSegment.edge.labelStyle,\n fromCluster: firstSegment.edge.fromCluster ?? middleSegment.edge.fromCluster ?? lastSegment.edge.fromCluster,\n toCluster: firstSegment.edge.toCluster ?? middleSegment.edge.toCluster ?? lastSegment.edge.toCluster\n };\n delete mergedEdge.selfLoop;\n delete mergedEdge.originalEdge;\n edgesToRender.push({ edge: mergedEdge, start: mergedEdge.start, end: mergedEdge.end });\n });\n return edgesToRender;\n}, \"getEdgesToRender\");\nvar recursiveRender = /* @__PURE__ */ __name(async (_elem, graph, diagramType, id, parentCluster, siteConfig) => {\n log.warn(\"Graph in recursive render:XAX\", graphlibJson.write(graph), parentCluster);\n const dir = graph.graph().rankdir;\n log.trace(\"Dir in recursive render - dir:\", dir);\n const elem = _elem.insert(\"g\").attr(\"class\", \"root\");\n if (!graph.nodes()) {\n log.info(\"No nodes found for\", graph);\n } else {\n log.info(\"Recursive render XXX\", graph.nodes());\n }\n if (graph.edges().length > 0) {\n log.info(\"Recursive edges\", graph.edge(graph.edges()[0]));\n }\n const clusters = elem.insert(\"g\").attr(\"class\", \"clusters\");\n const edgePaths = elem.insert(\"g\").attr(\"class\", \"edgePaths\");\n const edgeLabels = elem.insert(\"g\").attr(\"class\", \"edgeLabels\");\n const nodes = elem.insert(\"g\").attr(\"class\", \"nodes\");\n const mergeSelfLoops = shouldMergeSelfLoopSegments(diagramType);\n await Promise.all(\n graph.nodes().map(async function(v) {\n const node = graph.node(v);\n if (parentCluster !== void 0) {\n const data = JSON.parse(JSON.stringify(parentCluster.clusterData));\n log.trace(\n \"Setting data for parent cluster XXX\\n Node.id = \",\n v,\n \"\\n data=\",\n data.height,\n \"\\nParent cluster\",\n parentCluster.height\n );\n graph.setNode(parentCluster.id, data);\n if (!graph.parent(v)) {\n log.trace(\"Setting parent\", v, parentCluster.id);\n graph.setParent(v, parentCluster.id, data);\n }\n }\n log.info(\"(Insert) Node XXX\" + v + \": \" + JSON.stringify(graph.node(v)));\n if (node?.clusterNode) {\n log.info(\"Cluster identified XBX\", v, node.width, graph.node(v));\n const { ranksep, nodesep } = graph.graph();\n node.graph.setGraph({\n ...node.graph.graph(),\n ranksep: ranksep + 25,\n nodesep\n });\n const o = await recursiveRender(\n nodes,\n node.graph,\n diagramType,\n id,\n graph.node(v),\n siteConfig\n );\n const newEl = o.elem;\n updateNodeBounds(node, newEl);\n node.diff = o.diff || 0;\n log.info(\n \"New compound node after recursive render XAX\",\n v,\n \"width\",\n // node,\n node.width,\n \"height\",\n node.height\n // node.x,\n // node.y\n );\n setNodeElem(newEl, node);\n } else {\n if (graph.children(v).length > 0) {\n log.trace(\n \"Cluster - the non recursive path XBX\",\n v,\n node.id,\n node,\n node.width,\n \"Graph:\",\n graph\n );\n log.trace(findNonClusterChild(node.id, graph));\n clusterDb.set(node.id, { id: findNonClusterChild(node.id, graph), node });\n } else {\n log.trace(\"Node - the non recursive path XAX\", v, nodes, graph.node(v), dir);\n await insertNode(nodes, graph.node(v), { config: siteConfig, dir });\n }\n }\n })\n );\n const processEdges = /* @__PURE__ */ __name(async () => {\n const edgePromises = graph.edges().map(async function(e) {\n const edge = graph.edge(e.v, e.w, e.name);\n log.info(\"Edge \" + e.v + \" -> \" + e.w + \": \" + JSON.stringify(e));\n log.info(\"Edge \" + e.v + \" -> \" + e.w + \": \", e, \" \", JSON.stringify(graph.edge(e)));\n log.info(\n \"Fix\",\n clusterDb,\n \"ids:\",\n e.v,\n e.w,\n \"Translating: \",\n clusterDb.get(e.v),\n clusterDb.get(e.w)\n );\n if (mergeSelfLoops && edge.selfLoop) {\n if (edge.selfLoop.order !== 1) {\n return;\n }\n const segmentId = edge.id;\n edge.id = edge.selfLoop.id;\n await insertEdgeLabel(edgeLabels, edge);\n edge.id = segmentId;\n return;\n }\n await insertEdgeLabel(edgeLabels, edge);\n });\n await Promise.all(edgePromises);\n }, \"processEdges\");\n await processEdges();\n log.info(\"Graph before layout:\", JSON.stringify(graphlibJson.write(graph)));\n log.info(\"############################################# XXX\");\n log.info(\"### Layout ### XXX\");\n log.info(\"############################################# XXX\");\n dagreLayout(graph);\n log.info(\"Graph after layout:\", JSON.stringify(graphlibJson.write(graph)));\n let diff = 0;\n let { subGraphTitleTotalMargin } = getSubGraphTitleMargins(siteConfig);\n await Promise.all(\n sortNodesByHierarchy(graph).map(async function(v) {\n const node = graph.node(v);\n log.info(\n \"Position XBX => \" + v + \": (\" + node.x,\n \",\" + node.y,\n \") width: \",\n node.width,\n \" height: \",\n node.height\n );\n if (node?.clusterNode) {\n node.y += subGraphTitleTotalMargin;\n log.info(\n \"A tainted cluster node XBX1\",\n v,\n node.id,\n node.width,\n node.height,\n node.x,\n node.y,\n graph.parent(v)\n );\n clusterDb.get(node.id).node = node;\n positionNode(node);\n } else {\n if (graph.children(v).length > 0) {\n log.info(\n \"A pure cluster node XBX1\",\n v,\n node.id,\n node.x,\n node.y,\n node.width,\n node.height,\n graph.parent(v)\n );\n node.height += subGraphTitleTotalMargin;\n graph.node(node.parentId);\n const halfPadding = node?.padding / 2 || 0;\n const labelHeight = node?.labelBBox?.height || 0;\n const offsetY = labelHeight - halfPadding || 0;\n log.debug(\"OffsetY\", offsetY, \"labelHeight\", labelHeight, \"halfPadding\", halfPadding);\n await insertCluster(clusters, node);\n clusterDb.get(node.id).node = node;\n } else {\n const parent = graph.node(node.parentId);\n node.y += subGraphTitleTotalMargin / 2;\n log.info(\n \"A regular node XBX1 - using the padding\",\n node.id,\n \"parent\",\n node.parentId,\n node.width,\n node.height,\n node.x,\n node.y,\n \"offsetY\",\n node.offsetY,\n \"parent\",\n parent,\n parent?.offsetY,\n node\n );\n positionNode(node);\n }\n }\n })\n );\n const edgeOffsetY = subGraphTitleTotalMargin / 2;\n const edgesToRender = getEdgesToRender(graph, edgeOffsetY, { mergeSelfLoops });\n edgesToRender.forEach(function({ edge, start, end }) {\n log.info(\"Edge \" + start + \" -> \" + end + \": \" + JSON.stringify(edge), edge);\n edge.points.forEach((point) => point.y += edgeOffsetY);\n const startNode = graph.node(start);\n const endNode = graph.node(end);\n const paths = insertEdge(edgePaths, edge, clusterDb, diagramType, startNode, endNode, id);\n positionEdgeLabel(edge, paths);\n });\n graph.nodes().forEach(function(v) {\n const n = graph.node(v);\n log.info(v, n.type, n.diff);\n if (n.isGroup) {\n diff = n.diff;\n }\n });\n log.warn(\"Returning from recursive render XAX\", elem, diff);\n return { elem, diff };\n}, \"recursiveRender\");\nvar render = /* @__PURE__ */ __name(async (data4Layout, svg) => {\n const graph = new graphlib.Graph({\n multigraph: true,\n compound: true\n }).setGraph({\n rankdir: data4Layout.direction,\n nodesep: data4Layout.config?.nodeSpacing || data4Layout.config?.flowchart?.nodeSpacing || data4Layout.nodeSpacing,\n ranksep: data4Layout.config?.rankSpacing || data4Layout.config?.flowchart?.rankSpacing || data4Layout.rankSpacing,\n marginx: 8,\n marginy: 8\n }).setDefaultEdgeLabel(function() {\n return {};\n });\n const element = svg.select(\"g\");\n markers_default(element, data4Layout.markers, data4Layout.type, data4Layout.diagramId);\n clear3();\n clear2();\n clear();\n clear4();\n data4Layout.nodes.forEach((node) => {\n graph.setNode(node.id, { ...node });\n if (node.parentId) {\n graph.setParent(node.id, node.parentId);\n }\n });\n log.debug(\"Edges:\", data4Layout.edges);\n data4Layout.edges.forEach((edge) => {\n if (edge.start === edge.end) {\n const nodeId = edge.start;\n const specialId1 = nodeId + \"---\" + nodeId + \"---1\";\n const specialId2 = nodeId + \"---\" + nodeId + \"---2\";\n const node = graph.node(nodeId);\n graph.setNode(specialId1, {\n domId: specialId1,\n id: specialId1,\n parentId: node.parentId,\n labelStyle: \"\",\n label: \"\",\n padding: 0,\n shape: \"labelRect\",\n // shape: 'rect',\n style: \"\",\n width: 10,\n height: 10\n });\n graph.setParent(specialId1, node.parentId);\n graph.setNode(specialId2, {\n domId: specialId2,\n id: specialId2,\n parentId: node.parentId,\n labelStyle: \"\",\n padding: 0,\n // shape: 'rect',\n shape: \"labelRect\",\n label: \"\",\n style: \"\",\n width: 10,\n height: 10\n });\n graph.setParent(specialId2, node.parentId);\n const originalEdge = structuredClone(edge);\n const edge1 = structuredClone(edge);\n const edgeMid = structuredClone(edge);\n const edge2 = structuredClone(edge);\n edge1.originalEdge = originalEdge;\n edge1.selfLoop = { id: originalEdge.id, order: 0 };\n edgeMid.originalEdge = originalEdge;\n edgeMid.selfLoop = { id: originalEdge.id, order: 1 };\n edge2.originalEdge = originalEdge;\n edge2.selfLoop = { id: originalEdge.id, order: 2 };\n edge1.label = \"\";\n edge1.arrowTypeEnd = \"none\";\n edge1.endLabelLeft = \"\";\n edge1.endLabelRight = \"\";\n edge1.startLabelLeft = \"\";\n edge1.id = nodeId + \"-cyclic-special-1\";\n edgeMid.startLabelRight = \"\";\n edgeMid.startLabelLeft = \"\";\n edgeMid.endLabelLeft = \"\";\n edgeMid.endLabelRight = \"\";\n edgeMid.arrowTypeStart = \"none\";\n edgeMid.arrowTypeEnd = \"none\";\n edgeMid.id = nodeId + \"-cyclic-special-mid\";\n edge2.label = \"\";\n edge2.startLabelRight = \"\";\n edge2.startLabelLeft = \"\";\n edge2.arrowTypeStart = \"none\";\n if (node.isGroup) {\n edge1.fromCluster = nodeId;\n edge2.toCluster = nodeId;\n }\n edge2.id = nodeId + \"-cyclic-special-2\";\n edge2.arrowTypeStart = \"none\";\n graph.setEdge(nodeId, specialId1, edge1, nodeId + \"-cyclic-special-0\");\n graph.setEdge(specialId1, specialId2, edgeMid, nodeId + \"-cyclic-special-1\");\n graph.setEdge(specialId2, nodeId, edge2, nodeId + \"-cyclic-special-2\");\n } else {\n graph.setEdge(edge.start, edge.end, { ...edge }, edge.id);\n }\n });\n log.warn(\"Graph at first:\", JSON.stringify(graphlibJson.write(graph)));\n adjustClustersAndEdges(graph);\n log.warn(\"Graph after XAX:\", JSON.stringify(graphlibJson.write(graph)));\n const siteConfig = getConfig();\n await recursiveRender(\n element,\n graph,\n data4Layout.type,\n data4Layout.diagramId,\n void 0,\n siteConfig\n );\n}, \"render\");\nexport {\n getEdgesToRender,\n render\n};\n"],"names":["clamp","__name","value","min","max","getDefaultSelfLoopSide","rankdir","shouldMergeSelfLoopSegments","diagramType","getSelfLoopSide","graph","node","segments","originalNodeId","layoutHints","dummyNodeIds","start","end","id","dummyNode","edge","point","center","acc","dx","dy","getSelfLoopPoints","side","yOffset","labelWidth","x","y","halfWidth","halfHeight","maxSpan","span","depth","bottom","right","left","top","getSelfLoopLabelPosition","points","label","labelHeight","getEdgesToRender","mergeSelfLoops","selfLoopEdgeGroups","edgesToRender","e","key","segment","a","b","firstSegment","middleSegment","lastSegment","originalEdge","labelPosition","mergedEdge","recursiveRender","_elem","parentCluster","siteConfig","log","graphlibJson.write","dir","elem","clusters","edgePaths","edgeLabels","nodes","v","data","ranksep","nodesep","o","newEl","updateNodeBounds","setNodeElem","findNonClusterChild","clusterDb","insertNode","edgePromises","segmentId","insertEdgeLabel","dagreLayout","diff","subGraphTitleTotalMargin","getSubGraphTitleMargins","sortNodesByHierarchy","positionNode","halfPadding","offsetY","insertCluster","parent","edgeOffsetY","startNode","endNode","paths","insertEdge","positionEdgeLabel","n","render","data4Layout","svg","graphlib.Graph","element","markers_default","clear3","clear2","clear","clear4","nodeId","specialId1","specialId2","edge1","edgeMid","edge2","adjustClustersAndEdges","getConfig"],"mappings":"kPA6CA,IAAIA,EAAwBC,EAAAA,OAAO,CAACC,EAAOC,EAAKC,IAAQ,KAAK,IAAID,EAAK,KAAK,IAAIC,EAAKF,CAAK,CAAC,EAAG,OAAO,EAChGG,EAAyCJ,EAAAA,OAAO,CAACK,EAAU,OAAS,CACtE,OAAQA,EAAO,CACb,IAAK,KACH,MAAO,SACT,IAAK,KACH,MAAO,QACT,IAAK,KACH,MAAO,OAET,QACE,MAAO,KACb,CACA,EAAG,wBAAwB,EACvBC,EAA8CN,EAAAA,OAAQO,GAAgBA,IAAgB,aAAeA,IAAgB,gBAAkBA,IAAgB,eAAgB,6BAA6B,EACpMC,EAAkCR,EAAAA,OAAO,CAACS,EAAOC,EAAMC,EAAUC,EAAgBP,IAAY,CAC/F,MAAMQ,EAAc,CAAA,EACdC,EAA+B,IAAI,IAwBzC,GAvBAH,EAAS,QAAQ,CAAC,CAAE,MAAAI,EAAO,IAAAC,CAAG,IAAO,CAC/BD,IAAUH,GACZE,EAAa,IAAIC,CAAK,EAEpBC,IAAQJ,GACVE,EAAa,IAAIE,CAAG,CAExB,CAAC,EACDF,EAAa,QAASG,GAAO,CAC3B,MAAMC,EAAYT,EAAM,KAAKQ,CAAE,EAC3B,OAAOC,GAAW,GAAM,UAAY,OAAOA,GAAW,GAAM,UAC9DL,EAAY,KAAKK,CAAS,CAE9B,CAAC,EACGL,EAAY,SAAW,GACzBF,EAAS,QAAQ,CAAC,CAAE,KAAAQ,KAAW,EAC5BA,EAAK,QAAU,CAAA,GAAI,QAASC,GAAU,CACjC,OAAOA,GAAO,GAAM,UAAY,OAAOA,GAAO,GAAM,UACtDP,EAAY,KAAKO,CAAK,CAE1B,CAAC,CACH,CAAC,EAECP,EAAY,SAAW,EACzB,OAAOT,EAAuBC,CAAO,EAEvC,MAAMgB,EAASR,EAAY,OACzB,CAACS,EAAKF,KAAW,CACf,EAAGE,EAAI,EAAIF,EAAM,EAAIP,EAAY,OACjC,EAAGS,EAAI,EAAIF,EAAM,EAAIP,EAAY,MACvC,GACI,CAAE,EAAG,EAAG,EAAG,CAAC,CAChB,EACQU,EAAKF,EAAO,EAAIX,EAAK,EACrBc,EAAKH,EAAO,EAAIX,EAAK,EAC3B,OAAI,KAAK,IAAIa,CAAE,EAAI,KAAK,IAAIC,CAAE,EACrBD,EAAK,EAAI,QAAU,OAExB,KAAK,IAAIC,CAAE,EAAI,EACVA,EAAK,EAAI,SAAW,MAEtBpB,EAAuBC,CAAO,CACvC,EAAG,iBAAiB,EAChBoB,EAAoCzB,EAAAA,OAAO,CAACU,EAAMgB,EAAO,MAAOC,EAAU,EAAGC,EAAa,IAAM,CAClG,MAAMC,EAAInB,EAAK,EACToB,EAAIpB,EAAK,EAAIiB,EACbI,EAAYrB,EAAK,MAAQ,EACzBsB,EAAatB,EAAK,OAAS,EAC3BuB,EAAU,KAAK,IAAI,GAAI,KAAK,IAAI,IAAKvB,EAAK,MAAQ,EAAG,CAAC,EACtDwB,EAAOnC,EAAM,KAAK,IAAI6B,EAAYlB,EAAK,MAAQ,GAAI,EAAG,GAAIuB,CAAO,EACjEE,EAAQpC,EAAM,KAAK,IAAIW,EAAK,MAAOA,EAAK,MAAM,EAAI,IAAM,GAAI,EAAE,EACpE,OAAQgB,EAAI,CACV,IAAK,SAAU,CACb,MAAMU,EAASN,EAAIE,EACnB,MAAO,CACL,CAAE,EAAGH,EAAIK,EAAO,EAAG,EAAGE,CAAM,EAC5B,CAAE,EAAGP,EAAIK,EAAO,EAAG,EAAGE,EAASD,CAAK,EACpC,CAAE,EAAGN,EAAIK,EAAO,EAAG,EAAGE,EAASD,CAAK,EACpC,CAAE,EAAGN,EAAIK,EAAO,EAAG,EAAGE,CAAM,CACpC,CACI,CACA,IAAK,QAAS,CACZ,MAAMC,EAAQR,EAAIE,EAClB,MAAO,CACL,CAAE,EAAGM,EAAO,EAAGP,EAAII,EAAO,CAAC,EAC3B,CAAE,EAAGG,EAAQF,EAAO,EAAGL,EAAII,EAAO,CAAC,EACnC,CAAE,EAAGG,EAAQF,EAAO,EAAGL,EAAII,EAAO,CAAC,EACnC,CAAE,EAAGG,EAAO,EAAGP,EAAII,EAAO,CAAC,CACnC,CACI,CACA,IAAK,OAAQ,CACX,MAAMI,EAAOT,EAAIE,EACjB,MAAO,CACL,CAAE,EAAGO,EAAM,EAAGR,EAAII,EAAO,CAAC,EAC1B,CAAE,EAAGI,EAAOH,EAAO,EAAGL,EAAII,EAAO,CAAC,EAClC,CAAE,EAAGI,EAAOH,EAAO,EAAGL,EAAII,EAAO,CAAC,EAClC,CAAE,EAAGI,EAAM,EAAGR,EAAII,EAAO,CAAC,CAClC,CACI,CAEA,QAAS,CACP,MAAMK,EAAMT,EAAIE,EAChB,MAAO,CACL,CAAE,EAAGH,EAAIK,EAAO,EAAG,EAAGK,CAAG,EACzB,CAAE,EAAGV,EAAIK,EAAO,EAAG,EAAGK,EAAMJ,CAAK,EACjC,CAAE,EAAGN,EAAIK,EAAO,EAAG,EAAGK,EAAMJ,CAAK,EACjC,CAAE,EAAGN,EAAIK,EAAO,EAAG,EAAGK,CAAG,CACjC,CACI,CACJ,CACA,EAAG,mBAAmB,EAClBC,EAA2CxC,EAAAA,OAAO,CAACU,EAAM+B,EAAQf,EAAO,MAAOC,EAAU,EAAGe,EAAQ,KAAO,CAE7G,MAAMb,EAAInB,EAAK,EACToB,EAAIpB,EAAK,EAAIiB,EACbC,EAAac,EAAM,OAAS,EAC5BC,EAAcD,EAAM,QAAU,EACpC,OAAQhB,EAAI,CACV,IAAK,SACH,MAAO,CAAE,EAAAG,EAAG,EAAG,KAAK,IAAI,GAAGY,EAAO,IAAKrB,GAAUA,EAAM,CAAC,CAAC,EAAIuB,EAAc,EAAI,CAAG,EACpF,IAAK,QACH,MAAO,CAAE,EAAG,KAAK,IAAI,GAAGF,EAAO,IAAKrB,GAAUA,EAAM,CAAC,CAAC,EAAIQ,EAAa,EAAI,EAAK,EAAAE,CAAC,EACnF,IAAK,OACH,MAAO,CAAE,EAAG,KAAK,IAAI,GAAGW,EAAO,IAAKrB,GAAUA,EAAM,CAAC,CAAC,EAAIQ,EAAa,EAAI,EAAK,EAAAE,CAAC,EAEnF,QACE,MAAO,CAAE,EAAAD,EAAG,EAAG,KAAK,IAAI,GAAGY,EAAO,IAAKrB,GAAUA,EAAM,CAAC,CAAC,EAAIuB,EAAc,EAAI,CAAG,CACxF,CACA,EAAG,0BAA0B,EACzBC,EAAmC5C,EAAAA,OAAO,CAACS,EAAOkB,EAAU,EAAG,CAAE,eAAAkB,EAAiB,EAAI,EAAK,KAAO,CACpG,MAAMC,EAAqC,IAAI,IACzCC,EAAgB,CAAA,EAChB1C,EAAUI,EAAM,MAAK,GAAI,QAC/B,OAAAA,EAAM,MAAK,EAAG,QAASuC,GAAM,CAC3B,MAAM7B,EAAOV,EAAM,KAAKuC,CAAC,EACzB,GAAIH,GAAkB1B,EAAK,SAAU,CACnC,MAAM8B,EAAM9B,EAAK,SAAS,GACrB2B,EAAmB,IAAIG,CAAG,GAC7BH,EAAmB,IAAIG,EAAK,EAAE,EAEhCH,EAAmB,IAAIG,CAAG,EAAE,KAAK,CAAE,KAAA9B,EAAM,MAAO6B,EAAE,EAAG,IAAKA,EAAE,CAAC,CAAE,CACjE,MACED,EAAc,KAAK,CAAE,KAAA5B,EAAM,MAAO6B,EAAE,EAAG,IAAKA,EAAE,EAAG,CAErD,CAAC,EACDF,EAAmB,QAASnC,GAAa,CACvC,GAAIA,EAAS,SAAW,EAAG,CACzBA,EAAS,QAASuC,GAAYH,EAAc,KAAKG,CAAO,CAAC,EACzD,MACF,CACAvC,EAAS,KAAK,CAACwC,EAAGC,IAAMD,EAAE,KAAK,SAAS,MAAQC,EAAE,KAAK,SAAS,KAAK,EACrE,KAAM,CAACC,EAAcC,EAAeC,CAAW,EAAI5C,EAC7C6C,EAAeH,EAAa,KAAK,cAAgBC,EAAc,KAAK,cAAgBC,EAAY,KAAK,cAAgBD,EAAc,KACnI5C,EAAOD,EAAM,KAAK+C,EAAa,KAAK,EAC1C,GAAI,CAAC9C,EAAM,CACTC,EAAS,QAASuC,GAAYH,EAAc,KAAKG,CAAO,CAAC,EACzD,MACF,CACA,MAAMR,EAAQ,CACZ,MAAOY,EAAc,KAAK,MAC1B,OAAQA,EAAc,KAAK,MACjC,EACU5B,EAAOlB,EAAgBC,EAAOC,EAAMC,EAAU6C,EAAa,MAAOnD,CAAO,EACzEoC,EAAShB,EAAkBf,EAAMgB,EAAMC,EAASe,EAAM,OAAS,CAAC,EAChEe,EAAgBjB,EAAyB9B,EAAM+B,EAAQf,EAAMC,EAASe,CAAK,EAC3EgB,EAAa,CACjB,GAAGJ,EAAc,KACjB,GAAGE,EACH,GAAIA,EAAa,GACjB,OAAAf,EACA,MAAOe,EAAa,MACpB,IAAKA,EAAa,IAClB,EAAGC,EAAc,EACjB,EAAGA,EAAc,EACjB,MAAOf,EAAM,MACb,OAAQA,EAAM,OACd,WAAYY,EAAc,KAAK,WAC/B,YAAaD,EAAa,KAAK,aAAeC,EAAc,KAAK,aAAeC,EAAY,KAAK,YACjG,UAAWF,EAAa,KAAK,WAAaC,EAAc,KAAK,WAAaC,EAAY,KAAK,SACjG,EACI,OAAOG,EAAW,SAClB,OAAOA,EAAW,aAClBX,EAAc,KAAK,CAAE,KAAMW,EAAY,MAAOA,EAAW,MAAO,IAAKA,EAAW,GAAG,CAAE,CACvF,CAAC,EACMX,CACT,EAAG,kBAAkB,EACjBY,EAAkC3D,EAAAA,OAAO,MAAO4D,EAAOnD,EAAOF,EAAaU,EAAI4C,EAAeC,IAAe,CAC/GC,EAAAA,IAAI,KAAK,gCAAiCC,EAAAA,MAAmBvD,CAAK,EAAGoD,CAAa,EAClF,MAAMI,EAAMxD,EAAM,MAAK,EAAG,QAC1BsD,MAAI,MAAM,iCAAkCE,CAAG,EAC/C,MAAMC,EAAON,EAAM,OAAO,GAAG,EAAE,KAAK,QAAS,MAAM,EAC9CnD,EAAM,QAGTsD,EAAAA,IAAI,KAAK,uBAAwBtD,EAAM,MAAK,CAAE,EAF9CsD,MAAI,KAAK,qBAAsBtD,CAAK,EAIlCA,EAAM,QAAQ,OAAS,GACzBsD,MAAI,KAAK,kBAAmBtD,EAAM,KAAKA,EAAM,MAAK,EAAG,CAAC,CAAC,CAAC,EAE1D,MAAM0D,EAAWD,EAAK,OAAO,GAAG,EAAE,KAAK,QAAS,UAAU,EACpDE,EAAYF,EAAK,OAAO,GAAG,EAAE,KAAK,QAAS,WAAW,EACtDG,EAAaH,EAAK,OAAO,GAAG,EAAE,KAAK,QAAS,YAAY,EACxDI,EAAQJ,EAAK,OAAO,GAAG,EAAE,KAAK,QAAS,OAAO,EAC9CrB,EAAiBvC,EAA4BC,CAAW,EAC9D,MAAM,QAAQ,IACZE,EAAM,MAAK,EAAG,IAAI,eAAe8D,EAAG,CAClC,MAAM7D,EAAOD,EAAM,KAAK8D,CAAC,EACzB,GAAIV,IAAkB,OAAQ,CAC5B,MAAMW,EAAO,KAAK,MAAM,KAAK,UAAUX,EAAc,WAAW,CAAC,EACjEE,EAAAA,IAAI,MACF;AAAA,aACAQ,EACA;AAAA,QACAC,EAAK,OACL;AAAA,gBACAX,EAAc,MACxB,EACQpD,EAAM,QAAQoD,EAAc,GAAIW,CAAI,EAC/B/D,EAAM,OAAO8D,CAAC,IACjBR,EAAAA,IAAI,MAAM,iBAAkBQ,EAAGV,EAAc,EAAE,EAC/CpD,EAAM,UAAU8D,EAAGV,EAAc,GAAIW,CAAI,EAE7C,CAEA,GADAT,EAAAA,IAAI,KAAK,oBAAsBQ,EAAI,KAAO,KAAK,UAAU9D,EAAM,KAAK8D,CAAC,CAAC,CAAC,EACnE7D,GAAM,YAAa,CACrBqD,MAAI,KAAK,yBAA0BQ,EAAG7D,EAAK,MAAOD,EAAM,KAAK8D,CAAC,CAAC,EAC/D,KAAM,CAAE,QAAAE,EAAS,QAAAC,GAAYjE,EAAM,MAAK,EACxCC,EAAK,MAAM,SAAS,CAClB,GAAGA,EAAK,MAAM,MAAK,EACnB,QAAS+D,EAAU,GACnB,QAAAC,CACV,CAAS,EACD,MAAMC,EAAI,MAAMhB,EACdW,EACA5D,EAAK,MACLH,EACAU,EACAR,EAAM,KAAK8D,CAAC,EACZT,CACV,EACcc,EAAQD,EAAE,KAChBE,EAAAA,iBAAiBnE,EAAMkE,CAAK,EAC5BlE,EAAK,KAAOiE,EAAE,MAAQ,EACtBZ,EAAAA,IAAI,KACF,+CACAQ,EACA,QAEA7D,EAAK,MACL,SACAA,EAAK,MAGf,EACQoE,EAAAA,YAAYF,EAAOlE,CAAI,CACzB,MACMD,EAAM,SAAS8D,CAAC,EAAE,OAAS,GAC7BR,EAAAA,IAAI,MACF,uCACAQ,EACA7D,EAAK,GACLA,EACAA,EAAK,MACL,SACAD,CACZ,EACUsD,EAAAA,IAAI,MAAMgB,EAAAA,oBAAoBrE,EAAK,GAAID,CAAK,CAAC,EAC7CuE,EAAAA,UAAU,IAAItE,EAAK,GAAI,CAAE,GAAIqE,sBAAoBrE,EAAK,GAAID,CAAK,EAAG,KAAAC,CAAI,CAAE,IAExEqD,MAAI,MAAM,oCAAqCQ,EAAGD,EAAO7D,EAAM,KAAK8D,CAAC,EAAGN,CAAG,EAC3E,MAAMgB,EAAAA,WAAWX,EAAO7D,EAAM,KAAK8D,CAAC,EAAG,CAAE,OAAQT,EAAY,IAAAG,EAAK,EAGxE,CAAC,CACL,EA8BE,MA7BqCjE,EAAAA,OAAO,SAAY,CACtD,MAAMkF,EAAezE,EAAM,MAAK,EAAG,IAAI,eAAe,EAAG,CACvD,MAAMU,EAAOV,EAAM,KAAK,EAAE,EAAG,EAAE,EAAG,EAAE,IAAI,EAaxC,GAZAsD,EAAAA,IAAI,KAAK,QAAU,EAAE,EAAI,OAAS,EAAE,EAAI,KAAO,KAAK,UAAU,CAAC,CAAC,EAChEA,EAAAA,IAAI,KAAK,QAAU,EAAE,EAAI,OAAS,EAAE,EAAI,KAAM,EAAG,IAAK,KAAK,UAAUtD,EAAM,KAAK,CAAC,CAAC,CAAC,EACnFsD,EAAAA,IAAI,KACF,MACAiB,EAAAA,UACA,OACA,EAAE,EACF,EAAE,EACF,gBACAA,YAAU,IAAI,EAAE,CAAC,EACjBA,YAAU,IAAI,EAAE,CAAC,CACzB,EACUnC,GAAkB1B,EAAK,SAAU,CACnC,GAAIA,EAAK,SAAS,QAAU,EAC1B,OAEF,MAAMgE,EAAYhE,EAAK,GACvBA,EAAK,GAAKA,EAAK,SAAS,GACxB,MAAMiE,EAAAA,gBAAgBf,EAAYlD,CAAI,EACtCA,EAAK,GAAKgE,EACV,MACF,CACA,MAAMC,EAAAA,gBAAgBf,EAAYlD,CAAI,CACxC,CAAC,EACD,MAAM,QAAQ,IAAI+D,CAAY,CAChC,EAAG,cAAc,EACC,EAClBnB,EAAAA,IAAI,KAAK,uBAAwB,KAAK,UAAUC,EAAAA,MAAmBvD,CAAK,CAAC,CAAC,EAC1EsD,EAAAA,IAAI,KAAK,mDAAmD,EAC5DA,EAAAA,IAAI,KAAK,mDAAmD,EAC5DA,EAAAA,IAAI,KAAK,mDAAmD,EAC5DsB,EAAAA,OAAY5E,CAAK,EACjBsD,EAAAA,IAAI,KAAK,sBAAuB,KAAK,UAAUC,EAAAA,MAAmBvD,CAAK,CAAC,CAAC,EACzE,IAAI6E,EAAO,EACP,CAAE,yBAAAC,CAAwB,EAAKC,EAAAA,wBAAwB1B,CAAU,EACrE,MAAM,QAAQ,IACZ2B,EAAAA,qBAAqBhF,CAAK,EAAE,IAAI,eAAe8D,EAAG,CAChD,MAAM7D,EAAOD,EAAM,KAAK8D,CAAC,EASzB,GARAR,EAAAA,IAAI,KACF,mBAAqBQ,EAAI,MAAQ7D,EAAK,EACtC,IAAMA,EAAK,EACX,YACAA,EAAK,MACL,YACAA,EAAK,MACb,EACUA,GAAM,YACRA,EAAK,GAAK6E,EACVxB,EAAAA,IAAI,KACF,8BACAQ,EACA7D,EAAK,GACLA,EAAK,MACLA,EAAK,OACLA,EAAK,EACLA,EAAK,EACLD,EAAM,OAAO8D,CAAC,CACxB,EACQS,EAAAA,UAAU,IAAItE,EAAK,EAAE,EAAE,KAAOA,EAC9BgF,EAAAA,aAAahF,CAAI,UAEbD,EAAM,SAAS8D,CAAC,EAAE,OAAS,EAAG,CAChCR,EAAAA,IAAI,KACF,2BACAQ,EACA7D,EAAK,GACLA,EAAK,EACLA,EAAK,EACLA,EAAK,MACLA,EAAK,OACLD,EAAM,OAAO8D,CAAC,CAC1B,EACU7D,EAAK,QAAU6E,EACf9E,EAAM,KAAKC,EAAK,QAAQ,EACxB,MAAMiF,EAAcjF,GAAM,QAAU,GAAK,EACnCiC,EAAcjC,GAAM,WAAW,QAAU,EACzCkF,EAAUjD,EAAcgD,GAAe,EAC7C5B,EAAAA,IAAI,MAAM,UAAW6B,EAAS,cAAejD,EAAa,cAAegD,CAAW,EACpF,MAAME,EAAAA,cAAc1B,EAAUzD,CAAI,EAClCsE,EAAAA,UAAU,IAAItE,EAAK,EAAE,EAAE,KAAOA,CAChC,KAAO,CACL,MAAMoF,EAASrF,EAAM,KAAKC,EAAK,QAAQ,EACvCA,EAAK,GAAK6E,EAA2B,EACrCxB,EAAAA,IAAI,KACF,0CACArD,EAAK,GACL,SACAA,EAAK,SACLA,EAAK,MACLA,EAAK,OACLA,EAAK,EACLA,EAAK,EACL,UACAA,EAAK,QACL,SACAoF,EACAA,GAAQ,QACRpF,CACZ,EACUgF,EAAAA,aAAahF,CAAI,CACnB,CAEJ,CAAC,CACL,EACE,MAAMqF,EAAcR,EAA2B,EAE/C,OADsB3C,EAAiBnC,EAAOsF,EAAa,CAAE,eAAAlD,CAAc,CAAE,EAC/D,QAAQ,SAAS,CAAE,KAAA1B,EAAM,MAAAJ,EAAO,IAAAC,CAAG,EAAI,CACnD+C,EAAAA,IAAI,KAAK,QAAUhD,EAAQ,OAASC,EAAM,KAAO,KAAK,UAAUG,CAAI,EAAGA,CAAI,EAC3EA,EAAK,OAAO,QAASC,GAAUA,EAAM,GAAK2E,CAAW,EACrD,MAAMC,EAAYvF,EAAM,KAAKM,CAAK,EAC5BkF,EAAUxF,EAAM,KAAKO,CAAG,EACxBkF,EAAQC,aAAW/B,EAAWjD,EAAM6D,EAAAA,UAAWzE,EAAayF,EAAWC,EAAShF,CAAE,EACxFmF,EAAAA,kBAAkBjF,EAAM+E,CAAK,CAC/B,CAAC,EACDzF,EAAM,MAAK,EAAG,QAAQ,SAAS8D,EAAG,CAChC,MAAM8B,EAAI5F,EAAM,KAAK8D,CAAC,EACtBR,EAAAA,IAAI,KAAKQ,EAAG8B,EAAE,KAAMA,EAAE,IAAI,EACtBA,EAAE,UACJf,EAAOe,EAAE,KAEb,CAAC,EACDtC,EAAAA,IAAI,KAAK,sCAAuCG,EAAMoB,CAAI,EACnD,CAAE,KAAApB,EAAM,KAAAoB,CAAI,CACrB,EAAG,iBAAiB,EAChBgB,EAAyBtG,EAAAA,OAAO,MAAOuG,EAAaC,IAAQ,CAC9D,MAAM/F,EAAQ,IAAIgG,QAAe,CAC/B,WAAY,GACZ,SAAU,EACd,CAAG,EAAE,SAAS,CACV,QAASF,EAAY,UACrB,QAASA,EAAY,QAAQ,aAAeA,EAAY,QAAQ,WAAW,aAAeA,EAAY,YACtG,QAASA,EAAY,QAAQ,aAAeA,EAAY,QAAQ,WAAW,aAAeA,EAAY,YACtG,QAAS,EACT,QAAS,CACb,CAAG,EAAE,oBAAoB,UAAW,CAChC,MAAO,CAAA,CACT,CAAC,EACKG,EAAUF,EAAI,OAAO,GAAG,EAC9BG,EAAAA,gBAAgBD,EAASH,EAAY,QAASA,EAAY,KAAMA,EAAY,SAAS,EACrFK,SAAM,EACNC,UAAM,EACNC,UAAK,EACLC,QAAM,EACNR,EAAY,MAAM,QAAS7F,GAAS,CAClCD,EAAM,QAAQC,EAAK,GAAI,CAAE,GAAGA,CAAI,CAAE,EAC9BA,EAAK,UACPD,EAAM,UAAUC,EAAK,GAAIA,EAAK,QAAQ,CAE1C,CAAC,EACDqD,EAAAA,IAAI,MAAM,SAAUwC,EAAY,KAAK,EACrCA,EAAY,MAAM,QAASpF,GAAS,CAClC,GAAIA,EAAK,QAAUA,EAAK,IAAK,CAC3B,MAAM6F,EAAS7F,EAAK,MACd8F,EAAaD,EAAS,MAAQA,EAAS,OACvCE,EAAaF,EAAS,MAAQA,EAAS,OACvCtG,EAAOD,EAAM,KAAKuG,CAAM,EAC9BvG,EAAM,QAAQwG,EAAY,CACxB,MAAOA,EACP,GAAIA,EACJ,SAAUvG,EAAK,SACf,WAAY,GACZ,MAAO,GACP,QAAS,EACT,MAAO,YAEP,MAAO,GACP,MAAO,GACP,OAAQ,EAChB,CAAO,EACDD,EAAM,UAAUwG,EAAYvG,EAAK,QAAQ,EACzCD,EAAM,QAAQyG,EAAY,CACxB,MAAOA,EACP,GAAIA,EACJ,SAAUxG,EAAK,SACf,WAAY,GACZ,QAAS,EAET,MAAO,YACP,MAAO,GACP,MAAO,GACP,MAAO,GACP,OAAQ,EAChB,CAAO,EACDD,EAAM,UAAUyG,EAAYxG,EAAK,QAAQ,EACzC,MAAM8C,EAAe,gBAAgBrC,CAAI,EACnCgG,EAAQ,gBAAgBhG,CAAI,EAC5BiG,EAAU,gBAAgBjG,CAAI,EAC9BkG,EAAQ,gBAAgBlG,CAAI,EAClCgG,EAAM,aAAe3D,EACrB2D,EAAM,SAAW,CAAE,GAAI3D,EAAa,GAAI,MAAO,CAAC,EAChD4D,EAAQ,aAAe5D,EACvB4D,EAAQ,SAAW,CAAE,GAAI5D,EAAa,GAAI,MAAO,CAAC,EAClD6D,EAAM,aAAe7D,EACrB6D,EAAM,SAAW,CAAE,GAAI7D,EAAa,GAAI,MAAO,CAAC,EAChD2D,EAAM,MAAQ,GACdA,EAAM,aAAe,OACrBA,EAAM,aAAe,GACrBA,EAAM,cAAgB,GACtBA,EAAM,eAAiB,GACvBA,EAAM,GAAKH,EAAS,oBACpBI,EAAQ,gBAAkB,GAC1BA,EAAQ,eAAiB,GACzBA,EAAQ,aAAe,GACvBA,EAAQ,cAAgB,GACxBA,EAAQ,eAAiB,OACzBA,EAAQ,aAAe,OACvBA,EAAQ,GAAKJ,EAAS,sBACtBK,EAAM,MAAQ,GACdA,EAAM,gBAAkB,GACxBA,EAAM,eAAiB,GACvBA,EAAM,eAAiB,OACnB3G,EAAK,UACPyG,EAAM,YAAcH,EACpBK,EAAM,UAAYL,GAEpBK,EAAM,GAAKL,EAAS,oBACpBK,EAAM,eAAiB,OACvB5G,EAAM,QAAQuG,EAAQC,EAAYE,EAAOH,EAAS,mBAAmB,EACrEvG,EAAM,QAAQwG,EAAYC,EAAYE,EAASJ,EAAS,mBAAmB,EAC3EvG,EAAM,QAAQyG,EAAYF,EAAQK,EAAOL,EAAS,mBAAmB,CACvE,MACEvG,EAAM,QAAQU,EAAK,MAAOA,EAAK,IAAK,CAAE,GAAGA,CAAI,EAAIA,EAAK,EAAE,CAE5D,CAAC,EACD4C,EAAAA,IAAI,KAAK,kBAAmB,KAAK,UAAUC,EAAAA,MAAmBvD,CAAK,CAAC,CAAC,EACrE6G,EAAAA,uBAAuB7G,CAAK,EAC5BsD,EAAAA,IAAI,KAAK,mBAAoB,KAAK,UAAUC,EAAAA,MAAmBvD,CAAK,CAAC,CAAC,EACtE,MAAMqD,EAAayD,EAAAA,WAAS,EAC5B,MAAM5D,EACJ+C,EACAjG,EACA8F,EAAY,KACZA,EAAY,UACZ,OACAzC,CACJ,CACA,EAAG,QAAQ","x_google_ignoreList":[0]}
@@ -1,5 +1,5 @@
1
- import { c as O, w as I, a as J, f as P, b as E, s as A } from "./chunk-RYQCIY6F-CK0xCpaZ.js";
2
- import { _ as b, b8 as v, b9 as D, ba as H, bb as Y, a1 as l, $ as _, bc as $, bd as W, b0 as j, be as F, b1 as R, a$ as q, bf as z, bg as K, bh as G } from "./extractHeadings-B9zWU8Hp.js";
1
+ import { c as O, w as I, a as J, f as P, b as E, s as A } from "./chunk-RYQCIY6F-Bg7Dy3nS.js";
2
+ import { $ as b, b9 as v, ba as D, bb as H, bc as Y, a2 as l, a0 as _, bd as $, be as W, b1 as j, bf as F, b2 as R, b0 as q, bg as z, bh as K, bi as G } from "./extractHeadings-Btke90la.js";
3
3
  import { G as Q } from "./graph-DAHC4kPm.js";
4
4
  import { l as U } from "./layout-DBbo_M5I.js";
5
5
  var C = /* @__PURE__ */ b((s, t, g) => Math.max(t, Math.min(g, s)), "clamp"), B = /* @__PURE__ */ b((s = "TB") => {
@@ -338,4 +338,4 @@ export {
338
338
  ne as getEdgesToRender,
339
339
  de as render
340
340
  };
341
- //# sourceMappingURL=dagre-VKFMJZFB-T0EpCTvx.js.map
341
+ //# sourceMappingURL=dagre-VKFMJZFB-PARAHqM5.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dagre-VKFMJZFB-T0EpCTvx.js","sources":["../../../node_modules/.pnpm/mermaid@11.16.0/node_modules/mermaid/dist/chunks/mermaid.core/dagre-VKFMJZFB.mjs"],"sourcesContent":["import {\n adjustClustersAndEdges,\n clear as clear4,\n clusterDb,\n findNonClusterChild,\n sortNodesByHierarchy\n} from \"./chunk-RYQCIY6F.mjs\";\nimport {\n clear as clear2,\n insertEdge,\n insertEdgeLabel,\n markers_default,\n positionEdgeLabel\n} from \"./chunk-52WLFC77.mjs\";\nimport {\n clear,\n clear2 as clear3,\n insertCluster,\n insertNode,\n positionNode,\n setNodeElem,\n updateNodeBounds\n} from \"./chunk-ZGVPDNZ5.mjs\";\nimport \"./chunk-C7G6YPKG.mjs\";\nimport \"./chunk-7BUUIJ7U.mjs\";\nimport {\n getSubGraphTitleMargins\n} from \"./chunk-OGEWGWER.mjs\";\nimport \"./chunk-Q4XR5HBZ.mjs\";\nimport \"./chunk-HOUHSVGY.mjs\";\nimport \"./chunk-ICXQ74PX.mjs\";\nimport {\n getConfig2 as getConfig\n} from \"./chunk-WYO6CB5R.mjs\";\nimport {\n log\n} from \"./chunk-X3CZISLH.mjs\";\nimport {\n __name\n} from \"./chunk-Y2CYZVJY.mjs\";\n\n// src/rendering-util/layout-algorithms/dagre/index.js\nimport { layout as dagreLayout } from \"dagre-d3-es/src/dagre/index.js\";\nimport * as graphlibJson from \"dagre-d3-es/src/graphlib/json.js\";\nimport * as graphlib from \"dagre-d3-es/src/graphlib/index.js\";\nvar clamp = /* @__PURE__ */ __name((value, min, max) => Math.max(min, Math.min(max, value)), \"clamp\");\nvar getDefaultSelfLoopSide = /* @__PURE__ */ __name((rankdir = \"TB\") => {\n switch (rankdir) {\n case \"BT\":\n return \"bottom\";\n case \"LR\":\n return \"right\";\n case \"RL\":\n return \"left\";\n case \"TB\":\n default:\n return \"top\";\n }\n}, \"getDefaultSelfLoopSide\");\nvar shouldMergeSelfLoopSegments = /* @__PURE__ */ __name((diagramType) => diagramType === \"flowchart\" || diagramType === \"flowchart-v2\" || diagramType === \"stateDiagram\", \"shouldMergeSelfLoopSegments\");\nvar getSelfLoopSide = /* @__PURE__ */ __name((graph, node, segments, originalNodeId, rankdir) => {\n const layoutHints = [];\n const dummyNodeIds = /* @__PURE__ */ new Set();\n segments.forEach(({ start, end }) => {\n if (start !== originalNodeId) {\n dummyNodeIds.add(start);\n }\n if (end !== originalNodeId) {\n dummyNodeIds.add(end);\n }\n });\n dummyNodeIds.forEach((id) => {\n const dummyNode = graph.node(id);\n if (typeof dummyNode?.x === \"number\" && typeof dummyNode?.y === \"number\") {\n layoutHints.push(dummyNode);\n }\n });\n if (layoutHints.length === 0) {\n segments.forEach(({ edge }) => {\n (edge.points ?? []).forEach((point) => {\n if (typeof point?.x === \"number\" && typeof point?.y === \"number\") {\n layoutHints.push(point);\n }\n });\n });\n }\n if (layoutHints.length === 0) {\n return getDefaultSelfLoopSide(rankdir);\n }\n const center = layoutHints.reduce(\n (acc, point) => ({\n x: acc.x + point.x / layoutHints.length,\n y: acc.y + point.y / layoutHints.length\n }),\n { x: 0, y: 0 }\n );\n const dx = center.x - node.x;\n const dy = center.y - node.y;\n if (Math.abs(dx) > Math.abs(dy)) {\n return dx > 0 ? \"right\" : \"left\";\n }\n if (Math.abs(dy) > 0) {\n return dy > 0 ? \"bottom\" : \"top\";\n }\n return getDefaultSelfLoopSide(rankdir);\n}, \"getSelfLoopSide\");\nvar getSelfLoopPoints = /* @__PURE__ */ __name((node, side = \"top\", yOffset = 0, labelWidth = 0) => {\n const x = node.x;\n const y = node.y - yOffset;\n const halfWidth = node.width / 2;\n const halfHeight = node.height / 2;\n const maxSpan = Math.max(36, Math.min(100, node.width * 0.8));\n const span = clamp(Math.max(labelWidth, node.width * 0.35), 36, maxSpan);\n const depth = clamp(Math.min(node.width, node.height) * 0.45, 24, 48);\n switch (side) {\n case \"bottom\": {\n const bottom = y + halfHeight;\n return [\n { x: x - span / 2, y: bottom },\n { x: x - span / 2, y: bottom + depth },\n { x: x + span / 2, y: bottom + depth },\n { x: x + span / 2, y: bottom }\n ];\n }\n case \"right\": {\n const right = x + halfWidth;\n return [\n { x: right, y: y - span / 2 },\n { x: right + depth, y: y - span / 2 },\n { x: right + depth, y: y + span / 2 },\n { x: right, y: y + span / 2 }\n ];\n }\n case \"left\": {\n const left = x - halfWidth;\n return [\n { x: left, y: y - span / 2 },\n { x: left - depth, y: y - span / 2 },\n { x: left - depth, y: y + span / 2 },\n { x: left, y: y + span / 2 }\n ];\n }\n case \"top\":\n default: {\n const top = y - halfHeight;\n return [\n { x: x - span / 2, y: top },\n { x: x - span / 2, y: top - depth },\n { x: x + span / 2, y: top - depth },\n { x: x + span / 2, y: top }\n ];\n }\n }\n}, \"getSelfLoopPoints\");\nvar getSelfLoopLabelPosition = /* @__PURE__ */ __name((node, points, side = \"top\", yOffset = 0, label = {}) => {\n const gap = 4;\n const x = node.x;\n const y = node.y - yOffset;\n const labelWidth = label.width ?? 0;\n const labelHeight = label.height ?? 0;\n switch (side) {\n case \"bottom\":\n return { x, y: Math.max(...points.map((point) => point.y)) + labelHeight / 2 + gap };\n case \"right\":\n return { x: Math.max(...points.map((point) => point.x)) + labelWidth / 2 + gap, y };\n case \"left\":\n return { x: Math.min(...points.map((point) => point.x)) - labelWidth / 2 - gap, y };\n case \"top\":\n default:\n return { x, y: Math.min(...points.map((point) => point.y)) - labelHeight / 2 - gap };\n }\n}, \"getSelfLoopLabelPosition\");\nvar getEdgesToRender = /* @__PURE__ */ __name((graph, yOffset = 0, { mergeSelfLoops = true } = {}) => {\n const selfLoopEdgeGroups = /* @__PURE__ */ new Map();\n const edgesToRender = [];\n const rankdir = graph.graph()?.rankdir;\n graph.edges().forEach((e) => {\n const edge = graph.edge(e);\n if (mergeSelfLoops && edge.selfLoop) {\n const key = edge.selfLoop.id;\n if (!selfLoopEdgeGroups.has(key)) {\n selfLoopEdgeGroups.set(key, []);\n }\n selfLoopEdgeGroups.get(key).push({ edge, start: e.v, end: e.w });\n } else {\n edgesToRender.push({ edge, start: e.v, end: e.w });\n }\n });\n selfLoopEdgeGroups.forEach((segments) => {\n if (segments.length !== 3) {\n segments.forEach((segment) => edgesToRender.push(segment));\n return;\n }\n segments.sort((a, b) => a.edge.selfLoop.order - b.edge.selfLoop.order);\n const [firstSegment, middleSegment, lastSegment] = segments;\n const originalEdge = firstSegment.edge.originalEdge ?? middleSegment.edge.originalEdge ?? lastSegment.edge.originalEdge ?? middleSegment.edge;\n const node = graph.node(originalEdge.start);\n if (!node) {\n segments.forEach((segment) => edgesToRender.push(segment));\n return;\n }\n const label = {\n width: middleSegment.edge.width,\n height: middleSegment.edge.height\n };\n const side = getSelfLoopSide(graph, node, segments, originalEdge.start, rankdir);\n const points = getSelfLoopPoints(node, side, yOffset, label.width ?? 0);\n const labelPosition = getSelfLoopLabelPosition(node, points, side, yOffset, label);\n const mergedEdge = {\n ...middleSegment.edge,\n ...originalEdge,\n id: originalEdge.id,\n points,\n start: originalEdge.start,\n end: originalEdge.end,\n x: labelPosition.x,\n y: labelPosition.y,\n width: label.width,\n height: label.height,\n labelStyle: middleSegment.edge.labelStyle,\n fromCluster: firstSegment.edge.fromCluster ?? middleSegment.edge.fromCluster ?? lastSegment.edge.fromCluster,\n toCluster: firstSegment.edge.toCluster ?? middleSegment.edge.toCluster ?? lastSegment.edge.toCluster\n };\n delete mergedEdge.selfLoop;\n delete mergedEdge.originalEdge;\n edgesToRender.push({ edge: mergedEdge, start: mergedEdge.start, end: mergedEdge.end });\n });\n return edgesToRender;\n}, \"getEdgesToRender\");\nvar recursiveRender = /* @__PURE__ */ __name(async (_elem, graph, diagramType, id, parentCluster, siteConfig) => {\n log.warn(\"Graph in recursive render:XAX\", graphlibJson.write(graph), parentCluster);\n const dir = graph.graph().rankdir;\n log.trace(\"Dir in recursive render - dir:\", dir);\n const elem = _elem.insert(\"g\").attr(\"class\", \"root\");\n if (!graph.nodes()) {\n log.info(\"No nodes found for\", graph);\n } else {\n log.info(\"Recursive render XXX\", graph.nodes());\n }\n if (graph.edges().length > 0) {\n log.info(\"Recursive edges\", graph.edge(graph.edges()[0]));\n }\n const clusters = elem.insert(\"g\").attr(\"class\", \"clusters\");\n const edgePaths = elem.insert(\"g\").attr(\"class\", \"edgePaths\");\n const edgeLabels = elem.insert(\"g\").attr(\"class\", \"edgeLabels\");\n const nodes = elem.insert(\"g\").attr(\"class\", \"nodes\");\n const mergeSelfLoops = shouldMergeSelfLoopSegments(diagramType);\n await Promise.all(\n graph.nodes().map(async function(v) {\n const node = graph.node(v);\n if (parentCluster !== void 0) {\n const data = JSON.parse(JSON.stringify(parentCluster.clusterData));\n log.trace(\n \"Setting data for parent cluster XXX\\n Node.id = \",\n v,\n \"\\n data=\",\n data.height,\n \"\\nParent cluster\",\n parentCluster.height\n );\n graph.setNode(parentCluster.id, data);\n if (!graph.parent(v)) {\n log.trace(\"Setting parent\", v, parentCluster.id);\n graph.setParent(v, parentCluster.id, data);\n }\n }\n log.info(\"(Insert) Node XXX\" + v + \": \" + JSON.stringify(graph.node(v)));\n if (node?.clusterNode) {\n log.info(\"Cluster identified XBX\", v, node.width, graph.node(v));\n const { ranksep, nodesep } = graph.graph();\n node.graph.setGraph({\n ...node.graph.graph(),\n ranksep: ranksep + 25,\n nodesep\n });\n const o = await recursiveRender(\n nodes,\n node.graph,\n diagramType,\n id,\n graph.node(v),\n siteConfig\n );\n const newEl = o.elem;\n updateNodeBounds(node, newEl);\n node.diff = o.diff || 0;\n log.info(\n \"New compound node after recursive render XAX\",\n v,\n \"width\",\n // node,\n node.width,\n \"height\",\n node.height\n // node.x,\n // node.y\n );\n setNodeElem(newEl, node);\n } else {\n if (graph.children(v).length > 0) {\n log.trace(\n \"Cluster - the non recursive path XBX\",\n v,\n node.id,\n node,\n node.width,\n \"Graph:\",\n graph\n );\n log.trace(findNonClusterChild(node.id, graph));\n clusterDb.set(node.id, { id: findNonClusterChild(node.id, graph), node });\n } else {\n log.trace(\"Node - the non recursive path XAX\", v, nodes, graph.node(v), dir);\n await insertNode(nodes, graph.node(v), { config: siteConfig, dir });\n }\n }\n })\n );\n const processEdges = /* @__PURE__ */ __name(async () => {\n const edgePromises = graph.edges().map(async function(e) {\n const edge = graph.edge(e.v, e.w, e.name);\n log.info(\"Edge \" + e.v + \" -> \" + e.w + \": \" + JSON.stringify(e));\n log.info(\"Edge \" + e.v + \" -> \" + e.w + \": \", e, \" \", JSON.stringify(graph.edge(e)));\n log.info(\n \"Fix\",\n clusterDb,\n \"ids:\",\n e.v,\n e.w,\n \"Translating: \",\n clusterDb.get(e.v),\n clusterDb.get(e.w)\n );\n if (mergeSelfLoops && edge.selfLoop) {\n if (edge.selfLoop.order !== 1) {\n return;\n }\n const segmentId = edge.id;\n edge.id = edge.selfLoop.id;\n await insertEdgeLabel(edgeLabels, edge);\n edge.id = segmentId;\n return;\n }\n await insertEdgeLabel(edgeLabels, edge);\n });\n await Promise.all(edgePromises);\n }, \"processEdges\");\n await processEdges();\n log.info(\"Graph before layout:\", JSON.stringify(graphlibJson.write(graph)));\n log.info(\"############################################# XXX\");\n log.info(\"### Layout ### XXX\");\n log.info(\"############################################# XXX\");\n dagreLayout(graph);\n log.info(\"Graph after layout:\", JSON.stringify(graphlibJson.write(graph)));\n let diff = 0;\n let { subGraphTitleTotalMargin } = getSubGraphTitleMargins(siteConfig);\n await Promise.all(\n sortNodesByHierarchy(graph).map(async function(v) {\n const node = graph.node(v);\n log.info(\n \"Position XBX => \" + v + \": (\" + node.x,\n \",\" + node.y,\n \") width: \",\n node.width,\n \" height: \",\n node.height\n );\n if (node?.clusterNode) {\n node.y += subGraphTitleTotalMargin;\n log.info(\n \"A tainted cluster node XBX1\",\n v,\n node.id,\n node.width,\n node.height,\n node.x,\n node.y,\n graph.parent(v)\n );\n clusterDb.get(node.id).node = node;\n positionNode(node);\n } else {\n if (graph.children(v).length > 0) {\n log.info(\n \"A pure cluster node XBX1\",\n v,\n node.id,\n node.x,\n node.y,\n node.width,\n node.height,\n graph.parent(v)\n );\n node.height += subGraphTitleTotalMargin;\n graph.node(node.parentId);\n const halfPadding = node?.padding / 2 || 0;\n const labelHeight = node?.labelBBox?.height || 0;\n const offsetY = labelHeight - halfPadding || 0;\n log.debug(\"OffsetY\", offsetY, \"labelHeight\", labelHeight, \"halfPadding\", halfPadding);\n await insertCluster(clusters, node);\n clusterDb.get(node.id).node = node;\n } else {\n const parent = graph.node(node.parentId);\n node.y += subGraphTitleTotalMargin / 2;\n log.info(\n \"A regular node XBX1 - using the padding\",\n node.id,\n \"parent\",\n node.parentId,\n node.width,\n node.height,\n node.x,\n node.y,\n \"offsetY\",\n node.offsetY,\n \"parent\",\n parent,\n parent?.offsetY,\n node\n );\n positionNode(node);\n }\n }\n })\n );\n const edgeOffsetY = subGraphTitleTotalMargin / 2;\n const edgesToRender = getEdgesToRender(graph, edgeOffsetY, { mergeSelfLoops });\n edgesToRender.forEach(function({ edge, start, end }) {\n log.info(\"Edge \" + start + \" -> \" + end + \": \" + JSON.stringify(edge), edge);\n edge.points.forEach((point) => point.y += edgeOffsetY);\n const startNode = graph.node(start);\n const endNode = graph.node(end);\n const paths = insertEdge(edgePaths, edge, clusterDb, diagramType, startNode, endNode, id);\n positionEdgeLabel(edge, paths);\n });\n graph.nodes().forEach(function(v) {\n const n = graph.node(v);\n log.info(v, n.type, n.diff);\n if (n.isGroup) {\n diff = n.diff;\n }\n });\n log.warn(\"Returning from recursive render XAX\", elem, diff);\n return { elem, diff };\n}, \"recursiveRender\");\nvar render = /* @__PURE__ */ __name(async (data4Layout, svg) => {\n const graph = new graphlib.Graph({\n multigraph: true,\n compound: true\n }).setGraph({\n rankdir: data4Layout.direction,\n nodesep: data4Layout.config?.nodeSpacing || data4Layout.config?.flowchart?.nodeSpacing || data4Layout.nodeSpacing,\n ranksep: data4Layout.config?.rankSpacing || data4Layout.config?.flowchart?.rankSpacing || data4Layout.rankSpacing,\n marginx: 8,\n marginy: 8\n }).setDefaultEdgeLabel(function() {\n return {};\n });\n const element = svg.select(\"g\");\n markers_default(element, data4Layout.markers, data4Layout.type, data4Layout.diagramId);\n clear3();\n clear2();\n clear();\n clear4();\n data4Layout.nodes.forEach((node) => {\n graph.setNode(node.id, { ...node });\n if (node.parentId) {\n graph.setParent(node.id, node.parentId);\n }\n });\n log.debug(\"Edges:\", data4Layout.edges);\n data4Layout.edges.forEach((edge) => {\n if (edge.start === edge.end) {\n const nodeId = edge.start;\n const specialId1 = nodeId + \"---\" + nodeId + \"---1\";\n const specialId2 = nodeId + \"---\" + nodeId + \"---2\";\n const node = graph.node(nodeId);\n graph.setNode(specialId1, {\n domId: specialId1,\n id: specialId1,\n parentId: node.parentId,\n labelStyle: \"\",\n label: \"\",\n padding: 0,\n shape: \"labelRect\",\n // shape: 'rect',\n style: \"\",\n width: 10,\n height: 10\n });\n graph.setParent(specialId1, node.parentId);\n graph.setNode(specialId2, {\n domId: specialId2,\n id: specialId2,\n parentId: node.parentId,\n labelStyle: \"\",\n padding: 0,\n // shape: 'rect',\n shape: \"labelRect\",\n label: \"\",\n style: \"\",\n width: 10,\n height: 10\n });\n graph.setParent(specialId2, node.parentId);\n const originalEdge = structuredClone(edge);\n const edge1 = structuredClone(edge);\n const edgeMid = structuredClone(edge);\n const edge2 = structuredClone(edge);\n edge1.originalEdge = originalEdge;\n edge1.selfLoop = { id: originalEdge.id, order: 0 };\n edgeMid.originalEdge = originalEdge;\n edgeMid.selfLoop = { id: originalEdge.id, order: 1 };\n edge2.originalEdge = originalEdge;\n edge2.selfLoop = { id: originalEdge.id, order: 2 };\n edge1.label = \"\";\n edge1.arrowTypeEnd = \"none\";\n edge1.endLabelLeft = \"\";\n edge1.endLabelRight = \"\";\n edge1.startLabelLeft = \"\";\n edge1.id = nodeId + \"-cyclic-special-1\";\n edgeMid.startLabelRight = \"\";\n edgeMid.startLabelLeft = \"\";\n edgeMid.endLabelLeft = \"\";\n edgeMid.endLabelRight = \"\";\n edgeMid.arrowTypeStart = \"none\";\n edgeMid.arrowTypeEnd = \"none\";\n edgeMid.id = nodeId + \"-cyclic-special-mid\";\n edge2.label = \"\";\n edge2.startLabelRight = \"\";\n edge2.startLabelLeft = \"\";\n edge2.arrowTypeStart = \"none\";\n if (node.isGroup) {\n edge1.fromCluster = nodeId;\n edge2.toCluster = nodeId;\n }\n edge2.id = nodeId + \"-cyclic-special-2\";\n edge2.arrowTypeStart = \"none\";\n graph.setEdge(nodeId, specialId1, edge1, nodeId + \"-cyclic-special-0\");\n graph.setEdge(specialId1, specialId2, edgeMid, nodeId + \"-cyclic-special-1\");\n graph.setEdge(specialId2, nodeId, edge2, nodeId + \"-cyclic-special-2\");\n } else {\n graph.setEdge(edge.start, edge.end, { ...edge }, edge.id);\n }\n });\n log.warn(\"Graph at first:\", JSON.stringify(graphlibJson.write(graph)));\n adjustClustersAndEdges(graph);\n log.warn(\"Graph after XAX:\", JSON.stringify(graphlibJson.write(graph)));\n const siteConfig = getConfig();\n await recursiveRender(\n element,\n graph,\n data4Layout.type,\n data4Layout.diagramId,\n void 0,\n siteConfig\n );\n}, \"render\");\nexport {\n getEdgesToRender,\n render\n};\n"],"names":["clamp","__name","value","min","max","getDefaultSelfLoopSide","rankdir","shouldMergeSelfLoopSegments","diagramType","getSelfLoopSide","graph","node","segments","originalNodeId","layoutHints","dummyNodeIds","start","end","id","dummyNode","edge","point","center","acc","dx","dy","getSelfLoopPoints","side","yOffset","labelWidth","x","y","halfWidth","halfHeight","maxSpan","span","depth","bottom","right","left","top","getSelfLoopLabelPosition","points","label","labelHeight","getEdgesToRender","mergeSelfLoops","selfLoopEdgeGroups","edgesToRender","e","key","segment","a","b","firstSegment","middleSegment","lastSegment","originalEdge","labelPosition","mergedEdge","recursiveRender","_elem","parentCluster","siteConfig","log","graphlibJson.write","dir","elem","clusters","edgePaths","edgeLabels","nodes","v","data","ranksep","nodesep","o","newEl","updateNodeBounds","setNodeElem","findNonClusterChild","clusterDb","insertNode","edgePromises","segmentId","insertEdgeLabel","dagreLayout","diff","subGraphTitleTotalMargin","getSubGraphTitleMargins","sortNodesByHierarchy","positionNode","halfPadding","offsetY","insertCluster","parent","edgeOffsetY","startNode","endNode","paths","insertEdge","positionEdgeLabel","n","render","data4Layout","svg","graphlib.Graph","element","markers_default","clear3","clear2","clear","clear4","nodeId","specialId1","specialId2","edge1","edgeMid","edge2","adjustClustersAndEdges","getConfig"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"dagre-VKFMJZFB-PARAHqM5.js","sources":["../../../node_modules/.pnpm/mermaid@11.16.0/node_modules/mermaid/dist/chunks/mermaid.core/dagre-VKFMJZFB.mjs"],"sourcesContent":["import {\n adjustClustersAndEdges,\n clear as clear4,\n clusterDb,\n findNonClusterChild,\n sortNodesByHierarchy\n} from \"./chunk-RYQCIY6F.mjs\";\nimport {\n clear as clear2,\n insertEdge,\n insertEdgeLabel,\n markers_default,\n positionEdgeLabel\n} from \"./chunk-52WLFC77.mjs\";\nimport {\n clear,\n clear2 as clear3,\n insertCluster,\n insertNode,\n positionNode,\n setNodeElem,\n updateNodeBounds\n} from \"./chunk-ZGVPDNZ5.mjs\";\nimport \"./chunk-C7G6YPKG.mjs\";\nimport \"./chunk-7BUUIJ7U.mjs\";\nimport {\n getSubGraphTitleMargins\n} from \"./chunk-OGEWGWER.mjs\";\nimport \"./chunk-Q4XR5HBZ.mjs\";\nimport \"./chunk-HOUHSVGY.mjs\";\nimport \"./chunk-ICXQ74PX.mjs\";\nimport {\n getConfig2 as getConfig\n} from \"./chunk-WYO6CB5R.mjs\";\nimport {\n log\n} from \"./chunk-X3CZISLH.mjs\";\nimport {\n __name\n} from \"./chunk-Y2CYZVJY.mjs\";\n\n// src/rendering-util/layout-algorithms/dagre/index.js\nimport { layout as dagreLayout } from \"dagre-d3-es/src/dagre/index.js\";\nimport * as graphlibJson from \"dagre-d3-es/src/graphlib/json.js\";\nimport * as graphlib from \"dagre-d3-es/src/graphlib/index.js\";\nvar clamp = /* @__PURE__ */ __name((value, min, max) => Math.max(min, Math.min(max, value)), \"clamp\");\nvar getDefaultSelfLoopSide = /* @__PURE__ */ __name((rankdir = \"TB\") => {\n switch (rankdir) {\n case \"BT\":\n return \"bottom\";\n case \"LR\":\n return \"right\";\n case \"RL\":\n return \"left\";\n case \"TB\":\n default:\n return \"top\";\n }\n}, \"getDefaultSelfLoopSide\");\nvar shouldMergeSelfLoopSegments = /* @__PURE__ */ __name((diagramType) => diagramType === \"flowchart\" || diagramType === \"flowchart-v2\" || diagramType === \"stateDiagram\", \"shouldMergeSelfLoopSegments\");\nvar getSelfLoopSide = /* @__PURE__ */ __name((graph, node, segments, originalNodeId, rankdir) => {\n const layoutHints = [];\n const dummyNodeIds = /* @__PURE__ */ new Set();\n segments.forEach(({ start, end }) => {\n if (start !== originalNodeId) {\n dummyNodeIds.add(start);\n }\n if (end !== originalNodeId) {\n dummyNodeIds.add(end);\n }\n });\n dummyNodeIds.forEach((id) => {\n const dummyNode = graph.node(id);\n if (typeof dummyNode?.x === \"number\" && typeof dummyNode?.y === \"number\") {\n layoutHints.push(dummyNode);\n }\n });\n if (layoutHints.length === 0) {\n segments.forEach(({ edge }) => {\n (edge.points ?? []).forEach((point) => {\n if (typeof point?.x === \"number\" && typeof point?.y === \"number\") {\n layoutHints.push(point);\n }\n });\n });\n }\n if (layoutHints.length === 0) {\n return getDefaultSelfLoopSide(rankdir);\n }\n const center = layoutHints.reduce(\n (acc, point) => ({\n x: acc.x + point.x / layoutHints.length,\n y: acc.y + point.y / layoutHints.length\n }),\n { x: 0, y: 0 }\n );\n const dx = center.x - node.x;\n const dy = center.y - node.y;\n if (Math.abs(dx) > Math.abs(dy)) {\n return dx > 0 ? \"right\" : \"left\";\n }\n if (Math.abs(dy) > 0) {\n return dy > 0 ? \"bottom\" : \"top\";\n }\n return getDefaultSelfLoopSide(rankdir);\n}, \"getSelfLoopSide\");\nvar getSelfLoopPoints = /* @__PURE__ */ __name((node, side = \"top\", yOffset = 0, labelWidth = 0) => {\n const x = node.x;\n const y = node.y - yOffset;\n const halfWidth = node.width / 2;\n const halfHeight = node.height / 2;\n const maxSpan = Math.max(36, Math.min(100, node.width * 0.8));\n const span = clamp(Math.max(labelWidth, node.width * 0.35), 36, maxSpan);\n const depth = clamp(Math.min(node.width, node.height) * 0.45, 24, 48);\n switch (side) {\n case \"bottom\": {\n const bottom = y + halfHeight;\n return [\n { x: x - span / 2, y: bottom },\n { x: x - span / 2, y: bottom + depth },\n { x: x + span / 2, y: bottom + depth },\n { x: x + span / 2, y: bottom }\n ];\n }\n case \"right\": {\n const right = x + halfWidth;\n return [\n { x: right, y: y - span / 2 },\n { x: right + depth, y: y - span / 2 },\n { x: right + depth, y: y + span / 2 },\n { x: right, y: y + span / 2 }\n ];\n }\n case \"left\": {\n const left = x - halfWidth;\n return [\n { x: left, y: y - span / 2 },\n { x: left - depth, y: y - span / 2 },\n { x: left - depth, y: y + span / 2 },\n { x: left, y: y + span / 2 }\n ];\n }\n case \"top\":\n default: {\n const top = y - halfHeight;\n return [\n { x: x - span / 2, y: top },\n { x: x - span / 2, y: top - depth },\n { x: x + span / 2, y: top - depth },\n { x: x + span / 2, y: top }\n ];\n }\n }\n}, \"getSelfLoopPoints\");\nvar getSelfLoopLabelPosition = /* @__PURE__ */ __name((node, points, side = \"top\", yOffset = 0, label = {}) => {\n const gap = 4;\n const x = node.x;\n const y = node.y - yOffset;\n const labelWidth = label.width ?? 0;\n const labelHeight = label.height ?? 0;\n switch (side) {\n case \"bottom\":\n return { x, y: Math.max(...points.map((point) => point.y)) + labelHeight / 2 + gap };\n case \"right\":\n return { x: Math.max(...points.map((point) => point.x)) + labelWidth / 2 + gap, y };\n case \"left\":\n return { x: Math.min(...points.map((point) => point.x)) - labelWidth / 2 - gap, y };\n case \"top\":\n default:\n return { x, y: Math.min(...points.map((point) => point.y)) - labelHeight / 2 - gap };\n }\n}, \"getSelfLoopLabelPosition\");\nvar getEdgesToRender = /* @__PURE__ */ __name((graph, yOffset = 0, { mergeSelfLoops = true } = {}) => {\n const selfLoopEdgeGroups = /* @__PURE__ */ new Map();\n const edgesToRender = [];\n const rankdir = graph.graph()?.rankdir;\n graph.edges().forEach((e) => {\n const edge = graph.edge(e);\n if (mergeSelfLoops && edge.selfLoop) {\n const key = edge.selfLoop.id;\n if (!selfLoopEdgeGroups.has(key)) {\n selfLoopEdgeGroups.set(key, []);\n }\n selfLoopEdgeGroups.get(key).push({ edge, start: e.v, end: e.w });\n } else {\n edgesToRender.push({ edge, start: e.v, end: e.w });\n }\n });\n selfLoopEdgeGroups.forEach((segments) => {\n if (segments.length !== 3) {\n segments.forEach((segment) => edgesToRender.push(segment));\n return;\n }\n segments.sort((a, b) => a.edge.selfLoop.order - b.edge.selfLoop.order);\n const [firstSegment, middleSegment, lastSegment] = segments;\n const originalEdge = firstSegment.edge.originalEdge ?? middleSegment.edge.originalEdge ?? lastSegment.edge.originalEdge ?? middleSegment.edge;\n const node = graph.node(originalEdge.start);\n if (!node) {\n segments.forEach((segment) => edgesToRender.push(segment));\n return;\n }\n const label = {\n width: middleSegment.edge.width,\n height: middleSegment.edge.height\n };\n const side = getSelfLoopSide(graph, node, segments, originalEdge.start, rankdir);\n const points = getSelfLoopPoints(node, side, yOffset, label.width ?? 0);\n const labelPosition = getSelfLoopLabelPosition(node, points, side, yOffset, label);\n const mergedEdge = {\n ...middleSegment.edge,\n ...originalEdge,\n id: originalEdge.id,\n points,\n start: originalEdge.start,\n end: originalEdge.end,\n x: labelPosition.x,\n y: labelPosition.y,\n width: label.width,\n height: label.height,\n labelStyle: middleSegment.edge.labelStyle,\n fromCluster: firstSegment.edge.fromCluster ?? middleSegment.edge.fromCluster ?? lastSegment.edge.fromCluster,\n toCluster: firstSegment.edge.toCluster ?? middleSegment.edge.toCluster ?? lastSegment.edge.toCluster\n };\n delete mergedEdge.selfLoop;\n delete mergedEdge.originalEdge;\n edgesToRender.push({ edge: mergedEdge, start: mergedEdge.start, end: mergedEdge.end });\n });\n return edgesToRender;\n}, \"getEdgesToRender\");\nvar recursiveRender = /* @__PURE__ */ __name(async (_elem, graph, diagramType, id, parentCluster, siteConfig) => {\n log.warn(\"Graph in recursive render:XAX\", graphlibJson.write(graph), parentCluster);\n const dir = graph.graph().rankdir;\n log.trace(\"Dir in recursive render - dir:\", dir);\n const elem = _elem.insert(\"g\").attr(\"class\", \"root\");\n if (!graph.nodes()) {\n log.info(\"No nodes found for\", graph);\n } else {\n log.info(\"Recursive render XXX\", graph.nodes());\n }\n if (graph.edges().length > 0) {\n log.info(\"Recursive edges\", graph.edge(graph.edges()[0]));\n }\n const clusters = elem.insert(\"g\").attr(\"class\", \"clusters\");\n const edgePaths = elem.insert(\"g\").attr(\"class\", \"edgePaths\");\n const edgeLabels = elem.insert(\"g\").attr(\"class\", \"edgeLabels\");\n const nodes = elem.insert(\"g\").attr(\"class\", \"nodes\");\n const mergeSelfLoops = shouldMergeSelfLoopSegments(diagramType);\n await Promise.all(\n graph.nodes().map(async function(v) {\n const node = graph.node(v);\n if (parentCluster !== void 0) {\n const data = JSON.parse(JSON.stringify(parentCluster.clusterData));\n log.trace(\n \"Setting data for parent cluster XXX\\n Node.id = \",\n v,\n \"\\n data=\",\n data.height,\n \"\\nParent cluster\",\n parentCluster.height\n );\n graph.setNode(parentCluster.id, data);\n if (!graph.parent(v)) {\n log.trace(\"Setting parent\", v, parentCluster.id);\n graph.setParent(v, parentCluster.id, data);\n }\n }\n log.info(\"(Insert) Node XXX\" + v + \": \" + JSON.stringify(graph.node(v)));\n if (node?.clusterNode) {\n log.info(\"Cluster identified XBX\", v, node.width, graph.node(v));\n const { ranksep, nodesep } = graph.graph();\n node.graph.setGraph({\n ...node.graph.graph(),\n ranksep: ranksep + 25,\n nodesep\n });\n const o = await recursiveRender(\n nodes,\n node.graph,\n diagramType,\n id,\n graph.node(v),\n siteConfig\n );\n const newEl = o.elem;\n updateNodeBounds(node, newEl);\n node.diff = o.diff || 0;\n log.info(\n \"New compound node after recursive render XAX\",\n v,\n \"width\",\n // node,\n node.width,\n \"height\",\n node.height\n // node.x,\n // node.y\n );\n setNodeElem(newEl, node);\n } else {\n if (graph.children(v).length > 0) {\n log.trace(\n \"Cluster - the non recursive path XBX\",\n v,\n node.id,\n node,\n node.width,\n \"Graph:\",\n graph\n );\n log.trace(findNonClusterChild(node.id, graph));\n clusterDb.set(node.id, { id: findNonClusterChild(node.id, graph), node });\n } else {\n log.trace(\"Node - the non recursive path XAX\", v, nodes, graph.node(v), dir);\n await insertNode(nodes, graph.node(v), { config: siteConfig, dir });\n }\n }\n })\n );\n const processEdges = /* @__PURE__ */ __name(async () => {\n const edgePromises = graph.edges().map(async function(e) {\n const edge = graph.edge(e.v, e.w, e.name);\n log.info(\"Edge \" + e.v + \" -> \" + e.w + \": \" + JSON.stringify(e));\n log.info(\"Edge \" + e.v + \" -> \" + e.w + \": \", e, \" \", JSON.stringify(graph.edge(e)));\n log.info(\n \"Fix\",\n clusterDb,\n \"ids:\",\n e.v,\n e.w,\n \"Translating: \",\n clusterDb.get(e.v),\n clusterDb.get(e.w)\n );\n if (mergeSelfLoops && edge.selfLoop) {\n if (edge.selfLoop.order !== 1) {\n return;\n }\n const segmentId = edge.id;\n edge.id = edge.selfLoop.id;\n await insertEdgeLabel(edgeLabels, edge);\n edge.id = segmentId;\n return;\n }\n await insertEdgeLabel(edgeLabels, edge);\n });\n await Promise.all(edgePromises);\n }, \"processEdges\");\n await processEdges();\n log.info(\"Graph before layout:\", JSON.stringify(graphlibJson.write(graph)));\n log.info(\"############################################# XXX\");\n log.info(\"### Layout ### XXX\");\n log.info(\"############################################# XXX\");\n dagreLayout(graph);\n log.info(\"Graph after layout:\", JSON.stringify(graphlibJson.write(graph)));\n let diff = 0;\n let { subGraphTitleTotalMargin } = getSubGraphTitleMargins(siteConfig);\n await Promise.all(\n sortNodesByHierarchy(graph).map(async function(v) {\n const node = graph.node(v);\n log.info(\n \"Position XBX => \" + v + \": (\" + node.x,\n \",\" + node.y,\n \") width: \",\n node.width,\n \" height: \",\n node.height\n );\n if (node?.clusterNode) {\n node.y += subGraphTitleTotalMargin;\n log.info(\n \"A tainted cluster node XBX1\",\n v,\n node.id,\n node.width,\n node.height,\n node.x,\n node.y,\n graph.parent(v)\n );\n clusterDb.get(node.id).node = node;\n positionNode(node);\n } else {\n if (graph.children(v).length > 0) {\n log.info(\n \"A pure cluster node XBX1\",\n v,\n node.id,\n node.x,\n node.y,\n node.width,\n node.height,\n graph.parent(v)\n );\n node.height += subGraphTitleTotalMargin;\n graph.node(node.parentId);\n const halfPadding = node?.padding / 2 || 0;\n const labelHeight = node?.labelBBox?.height || 0;\n const offsetY = labelHeight - halfPadding || 0;\n log.debug(\"OffsetY\", offsetY, \"labelHeight\", labelHeight, \"halfPadding\", halfPadding);\n await insertCluster(clusters, node);\n clusterDb.get(node.id).node = node;\n } else {\n const parent = graph.node(node.parentId);\n node.y += subGraphTitleTotalMargin / 2;\n log.info(\n \"A regular node XBX1 - using the padding\",\n node.id,\n \"parent\",\n node.parentId,\n node.width,\n node.height,\n node.x,\n node.y,\n \"offsetY\",\n node.offsetY,\n \"parent\",\n parent,\n parent?.offsetY,\n node\n );\n positionNode(node);\n }\n }\n })\n );\n const edgeOffsetY = subGraphTitleTotalMargin / 2;\n const edgesToRender = getEdgesToRender(graph, edgeOffsetY, { mergeSelfLoops });\n edgesToRender.forEach(function({ edge, start, end }) {\n log.info(\"Edge \" + start + \" -> \" + end + \": \" + JSON.stringify(edge), edge);\n edge.points.forEach((point) => point.y += edgeOffsetY);\n const startNode = graph.node(start);\n const endNode = graph.node(end);\n const paths = insertEdge(edgePaths, edge, clusterDb, diagramType, startNode, endNode, id);\n positionEdgeLabel(edge, paths);\n });\n graph.nodes().forEach(function(v) {\n const n = graph.node(v);\n log.info(v, n.type, n.diff);\n if (n.isGroup) {\n diff = n.diff;\n }\n });\n log.warn(\"Returning from recursive render XAX\", elem, diff);\n return { elem, diff };\n}, \"recursiveRender\");\nvar render = /* @__PURE__ */ __name(async (data4Layout, svg) => {\n const graph = new graphlib.Graph({\n multigraph: true,\n compound: true\n }).setGraph({\n rankdir: data4Layout.direction,\n nodesep: data4Layout.config?.nodeSpacing || data4Layout.config?.flowchart?.nodeSpacing || data4Layout.nodeSpacing,\n ranksep: data4Layout.config?.rankSpacing || data4Layout.config?.flowchart?.rankSpacing || data4Layout.rankSpacing,\n marginx: 8,\n marginy: 8\n }).setDefaultEdgeLabel(function() {\n return {};\n });\n const element = svg.select(\"g\");\n markers_default(element, data4Layout.markers, data4Layout.type, data4Layout.diagramId);\n clear3();\n clear2();\n clear();\n clear4();\n data4Layout.nodes.forEach((node) => {\n graph.setNode(node.id, { ...node });\n if (node.parentId) {\n graph.setParent(node.id, node.parentId);\n }\n });\n log.debug(\"Edges:\", data4Layout.edges);\n data4Layout.edges.forEach((edge) => {\n if (edge.start === edge.end) {\n const nodeId = edge.start;\n const specialId1 = nodeId + \"---\" + nodeId + \"---1\";\n const specialId2 = nodeId + \"---\" + nodeId + \"---2\";\n const node = graph.node(nodeId);\n graph.setNode(specialId1, {\n domId: specialId1,\n id: specialId1,\n parentId: node.parentId,\n labelStyle: \"\",\n label: \"\",\n padding: 0,\n shape: \"labelRect\",\n // shape: 'rect',\n style: \"\",\n width: 10,\n height: 10\n });\n graph.setParent(specialId1, node.parentId);\n graph.setNode(specialId2, {\n domId: specialId2,\n id: specialId2,\n parentId: node.parentId,\n labelStyle: \"\",\n padding: 0,\n // shape: 'rect',\n shape: \"labelRect\",\n label: \"\",\n style: \"\",\n width: 10,\n height: 10\n });\n graph.setParent(specialId2, node.parentId);\n const originalEdge = structuredClone(edge);\n const edge1 = structuredClone(edge);\n const edgeMid = structuredClone(edge);\n const edge2 = structuredClone(edge);\n edge1.originalEdge = originalEdge;\n edge1.selfLoop = { id: originalEdge.id, order: 0 };\n edgeMid.originalEdge = originalEdge;\n edgeMid.selfLoop = { id: originalEdge.id, order: 1 };\n edge2.originalEdge = originalEdge;\n edge2.selfLoop = { id: originalEdge.id, order: 2 };\n edge1.label = \"\";\n edge1.arrowTypeEnd = \"none\";\n edge1.endLabelLeft = \"\";\n edge1.endLabelRight = \"\";\n edge1.startLabelLeft = \"\";\n edge1.id = nodeId + \"-cyclic-special-1\";\n edgeMid.startLabelRight = \"\";\n edgeMid.startLabelLeft = \"\";\n edgeMid.endLabelLeft = \"\";\n edgeMid.endLabelRight = \"\";\n edgeMid.arrowTypeStart = \"none\";\n edgeMid.arrowTypeEnd = \"none\";\n edgeMid.id = nodeId + \"-cyclic-special-mid\";\n edge2.label = \"\";\n edge2.startLabelRight = \"\";\n edge2.startLabelLeft = \"\";\n edge2.arrowTypeStart = \"none\";\n if (node.isGroup) {\n edge1.fromCluster = nodeId;\n edge2.toCluster = nodeId;\n }\n edge2.id = nodeId + \"-cyclic-special-2\";\n edge2.arrowTypeStart = \"none\";\n graph.setEdge(nodeId, specialId1, edge1, nodeId + \"-cyclic-special-0\");\n graph.setEdge(specialId1, specialId2, edgeMid, nodeId + \"-cyclic-special-1\");\n graph.setEdge(specialId2, nodeId, edge2, nodeId + \"-cyclic-special-2\");\n } else {\n graph.setEdge(edge.start, edge.end, { ...edge }, edge.id);\n }\n });\n log.warn(\"Graph at first:\", JSON.stringify(graphlibJson.write(graph)));\n adjustClustersAndEdges(graph);\n log.warn(\"Graph after XAX:\", JSON.stringify(graphlibJson.write(graph)));\n const siteConfig = getConfig();\n await recursiveRender(\n element,\n graph,\n data4Layout.type,\n data4Layout.diagramId,\n void 0,\n siteConfig\n );\n}, \"render\");\nexport {\n getEdgesToRender,\n render\n};\n"],"names":["clamp","__name","value","min","max","getDefaultSelfLoopSide","rankdir","shouldMergeSelfLoopSegments","diagramType","getSelfLoopSide","graph","node","segments","originalNodeId","layoutHints","dummyNodeIds","start","end","id","dummyNode","edge","point","center","acc","dx","dy","getSelfLoopPoints","side","yOffset","labelWidth","x","y","halfWidth","halfHeight","maxSpan","span","depth","bottom","right","left","top","getSelfLoopLabelPosition","points","label","labelHeight","getEdgesToRender","mergeSelfLoops","selfLoopEdgeGroups","edgesToRender","e","key","segment","a","b","firstSegment","middleSegment","lastSegment","originalEdge","labelPosition","mergedEdge","recursiveRender","_elem","parentCluster","siteConfig","log","graphlibJson.write","dir","elem","clusters","edgePaths","edgeLabels","nodes","v","data","ranksep","nodesep","o","newEl","updateNodeBounds","setNodeElem","findNonClusterChild","clusterDb","insertNode","edgePromises","segmentId","insertEdgeLabel","dagreLayout","diff","subGraphTitleTotalMargin","getSubGraphTitleMargins","sortNodesByHierarchy","positionNode","halfPadding","offsetY","insertCluster","parent","edgeOffsetY","startNode","endNode","paths","insertEdge","positionEdgeLabel","n","render","data4Layout","svg","graphlib.Graph","element","markers_default","clear3","clear2","clear","clear4","nodeId","specialId1","specialId2","edge1","edgeMid","edge2","adjustClustersAndEdges","getConfig"],"mappings":"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","x_google_ignoreList":[0]}