@aiquants/markdown 1.17.4 → 2.0.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 (247) hide show
  1. package/dist/{abnfDiagram-VRR7QNED-DA16g2La.cjs → abnfDiagram-VRR7QNED-BBmog1I4.cjs} +2 -2
  2. package/dist/{abnfDiagram-VRR7QNED-DA16g2La.cjs.map → abnfDiagram-VRR7QNED-BBmog1I4.cjs.map} +1 -1
  3. package/dist/{abnfDiagram-VRR7QNED-DX13PCMc.js → abnfDiagram-VRR7QNED-CxfTrgXf.js} +4 -4
  4. package/dist/{abnfDiagram-VRR7QNED-DX13PCMc.js.map → abnfDiagram-VRR7QNED-CxfTrgXf.js.map} +1 -1
  5. package/dist/{arc-6qASHEoU.js → arc-ClGqtl_2.js} +33 -33
  6. package/dist/{arc-6qASHEoU.js.map → arc-ClGqtl_2.js.map} +1 -1
  7. package/dist/{arc-wW7j3gvo.cjs → arc-DKsAswGe.cjs} +2 -2
  8. package/dist/{arc-wW7j3gvo.cjs.map → arc-DKsAswGe.cjs.map} +1 -1
  9. package/dist/{architectureDiagram-ZJ3FMSHR-D5kaurkM.cjs → architectureDiagram-ZJ3FMSHR-BLhnaJyB.cjs} +2 -2
  10. package/dist/{architectureDiagram-ZJ3FMSHR-D5kaurkM.cjs.map → architectureDiagram-ZJ3FMSHR-BLhnaJyB.cjs.map} +1 -1
  11. package/dist/{architectureDiagram-ZJ3FMSHR-COTmquXj.js → architectureDiagram-ZJ3FMSHR-Dild3kjN.js} +3 -3
  12. package/dist/{architectureDiagram-ZJ3FMSHR-COTmquXj.js.map → architectureDiagram-ZJ3FMSHR-Dild3kjN.js.map} +1 -1
  13. package/dist/{blockDiagram-677ZJIJ3-BK0UI-j7.cjs → blockDiagram-677ZJIJ3-D72bpMhN.cjs} +2 -2
  14. package/dist/{blockDiagram-677ZJIJ3-BK0UI-j7.cjs.map → blockDiagram-677ZJIJ3-D72bpMhN.cjs.map} +1 -1
  15. package/dist/{blockDiagram-677ZJIJ3-CJIR-mk3.js → blockDiagram-677ZJIJ3-DD1l8WOn.js} +167 -167
  16. package/dist/{blockDiagram-677ZJIJ3-CJIR-mk3.js.map → blockDiagram-677ZJIJ3-DD1l8WOn.js.map} +1 -1
  17. package/dist/{c4Diagram-LMCZKHZV-D9nMfRhz.js → c4Diagram-LMCZKHZV-BJkJh-kC.js} +3 -3
  18. package/dist/{c4Diagram-LMCZKHZV-D9nMfRhz.js.map → c4Diagram-LMCZKHZV-BJkJh-kC.js.map} +1 -1
  19. package/dist/{c4Diagram-LMCZKHZV-DEvjxLqy.cjs → c4Diagram-LMCZKHZV-D3d1d4zO.cjs} +2 -2
  20. package/dist/{c4Diagram-LMCZKHZV-DEvjxLqy.cjs.map → c4Diagram-LMCZKHZV-D3d1d4zO.cjs.map} +1 -1
  21. package/dist/channel-DE5LXIMm.cjs +2 -0
  22. package/dist/{channel-BpIdowqO.cjs.map → channel-DE5LXIMm.cjs.map} +1 -1
  23. package/dist/channel-DaGDswnD.js +6 -0
  24. package/dist/{channel-DGDNA7RK.js.map → channel-DaGDswnD.js.map} +1 -1
  25. package/dist/{chunk-2Q5K7J3B-C9tb4Ct7.cjs → chunk-2Q5K7J3B-BrnUlAaZ.cjs} +2 -2
  26. package/dist/{chunk-2Q5K7J3B-C9tb4Ct7.cjs.map → chunk-2Q5K7J3B-BrnUlAaZ.cjs.map} +1 -1
  27. package/dist/{chunk-2Q5K7J3B-CXoKJ2zL.js → chunk-2Q5K7J3B-DejpXtzn.js} +2 -2
  28. package/dist/{chunk-2Q5K7J3B-CXoKJ2zL.js.map → chunk-2Q5K7J3B-DejpXtzn.js.map} +1 -1
  29. package/dist/{chunk-32BRIVSS-BsmIXWWd.js → chunk-32BRIVSS-BCAuSjpE.js} +2 -2
  30. package/dist/{chunk-32BRIVSS-BsmIXWWd.js.map → chunk-32BRIVSS-BCAuSjpE.js.map} +1 -1
  31. package/dist/{chunk-32BRIVSS-C2deE16j.cjs → chunk-32BRIVSS-CDxbP_I9.cjs} +2 -2
  32. package/dist/{chunk-32BRIVSS-C2deE16j.cjs.map → chunk-32BRIVSS-CDxbP_I9.cjs.map} +1 -1
  33. package/dist/{chunk-5VM5RSS4-BB5C4pQd.cjs → chunk-5VM5RSS4-C-cBAbST.cjs} +2 -2
  34. package/dist/{chunk-5VM5RSS4-BB5C4pQd.cjs.map → chunk-5VM5RSS4-C-cBAbST.cjs.map} +1 -1
  35. package/dist/{chunk-5VM5RSS4-8uhmWNYU.js → chunk-5VM5RSS4-DI1kbCYB.js} +2 -2
  36. package/dist/{chunk-5VM5RSS4-8uhmWNYU.js.map → chunk-5VM5RSS4-DI1kbCYB.js.map} +1 -1
  37. package/dist/{chunk-EX3LRPZG-BU7kj60F.js → chunk-EX3LRPZG-CVTsVkLX.js} +38 -38
  38. package/dist/{chunk-EX3LRPZG-BU7kj60F.js.map → chunk-EX3LRPZG-CVTsVkLX.js.map} +1 -1
  39. package/dist/{chunk-EX3LRPZG-DiJSOd35.cjs → chunk-EX3LRPZG-uKd75-FB.cjs} +2 -2
  40. package/dist/{chunk-EX3LRPZG-DiJSOd35.cjs.map → chunk-EX3LRPZG-uKd75-FB.cjs.map} +1 -1
  41. package/dist/{chunk-JWPE2WC7-CF2MvshB.cjs → chunk-JWPE2WC7-CNFRDah7.cjs} +2 -2
  42. package/dist/{chunk-JWPE2WC7-CF2MvshB.cjs.map → chunk-JWPE2WC7-CNFRDah7.cjs.map} +1 -1
  43. package/dist/{chunk-JWPE2WC7-CMI2UtKP.js → chunk-JWPE2WC7-Cu3ql0Gi.js} +2 -2
  44. package/dist/{chunk-JWPE2WC7-CMI2UtKP.js.map → chunk-JWPE2WC7-Cu3ql0Gi.js.map} +1 -1
  45. package/dist/{chunk-MOJQB5TN-1fb215ZL.js → chunk-MOJQB5TN-BZ0Sok4l.js} +12 -12
  46. package/dist/{chunk-MOJQB5TN-1fb215ZL.js.map → chunk-MOJQB5TN-BZ0Sok4l.js.map} +1 -1
  47. package/dist/{chunk-MOJQB5TN-DLz0IiiD.cjs → chunk-MOJQB5TN-Bs5Jj3Zh.cjs} +2 -2
  48. package/dist/{chunk-MOJQB5TN-DLz0IiiD.cjs.map → chunk-MOJQB5TN-Bs5Jj3Zh.cjs.map} +1 -1
  49. package/dist/{chunk-PUDLZKDR-BwE-M2dR.js → chunk-PUDLZKDR-3RVC5ezN.js} +7 -7
  50. package/dist/{chunk-PUDLZKDR-BwE-M2dR.js.map → chunk-PUDLZKDR-3RVC5ezN.js.map} +1 -1
  51. package/dist/{chunk-PUDLZKDR-C8mkuWDP.cjs → chunk-PUDLZKDR-DisfuynB.cjs} +2 -2
  52. package/dist/{chunk-PUDLZKDR-C8mkuWDP.cjs.map → chunk-PUDLZKDR-DisfuynB.cjs.map} +1 -1
  53. package/dist/{chunk-RYQCIY6F-Bje2GI9K.js → chunk-RYQCIY6F-CSpf1fBI.js} +13 -13
  54. package/dist/{chunk-RYQCIY6F-Bje2GI9K.js.map → chunk-RYQCIY6F-CSpf1fBI.js.map} +1 -1
  55. package/dist/{chunk-RYQCIY6F-C-CFpAHC.cjs → chunk-RYQCIY6F-xFTrTO6v.cjs} +2 -2
  56. package/dist/{chunk-RYQCIY6F-C-CFpAHC.cjs.map → chunk-RYQCIY6F-xFTrTO6v.cjs.map} +1 -1
  57. package/dist/{chunk-V7JOEXUC-7qyR9Bsr.js → chunk-V7JOEXUC-BnwuCkOT.js} +13 -13
  58. package/dist/{chunk-V7JOEXUC-7qyR9Bsr.js.map → chunk-V7JOEXUC-BnwuCkOT.js.map} +1 -1
  59. package/dist/{chunk-V7JOEXUC-D0cvK7qG.cjs → chunk-V7JOEXUC-BvkxRSjK.cjs} +2 -2
  60. package/dist/{chunk-V7JOEXUC-D0cvK7qG.cjs.map → chunk-V7JOEXUC-BvkxRSjK.cjs.map} +1 -1
  61. package/dist/{chunk-VR4S4FIN-D5ATG3nh.cjs → chunk-VR4S4FIN-DAwCjhU3.cjs} +2 -2
  62. package/dist/{chunk-VR4S4FIN-D5ATG3nh.cjs.map → chunk-VR4S4FIN-DAwCjhU3.cjs.map} +1 -1
  63. package/dist/{chunk-VR4S4FIN-B50Vp5sn.js → chunk-VR4S4FIN-DSW2sQDL.js} +4 -4
  64. package/dist/{chunk-VR4S4FIN-B50Vp5sn.js.map → chunk-VR4S4FIN-DSW2sQDL.js.map} +1 -1
  65. package/dist/{chunk-XXDRQBXY-Csz5m9Q0.cjs → chunk-XXDRQBXY-B7vX1DJv.cjs} +2 -2
  66. package/dist/{chunk-XXDRQBXY-Csz5m9Q0.cjs.map → chunk-XXDRQBXY-B7vX1DJv.cjs.map} +1 -1
  67. package/dist/{chunk-XXDRQBXY-C5GJuDGM.js → chunk-XXDRQBXY-DrE4gFtL.js} +2 -2
  68. package/dist/{chunk-XXDRQBXY-C5GJuDGM.js.map → chunk-XXDRQBXY-DrE4gFtL.js.map} +1 -1
  69. package/dist/{classDiagram-OUVF2IWQ-haL9UyE3.cjs → classDiagram-OUVF2IWQ-BxIt89EK.cjs} +2 -2
  70. package/dist/{classDiagram-OUVF2IWQ-haL9UyE3.cjs.map → classDiagram-OUVF2IWQ-BxIt89EK.cjs.map} +1 -1
  71. package/dist/{classDiagram-OUVF2IWQ-JmvsYqNb.js → classDiagram-OUVF2IWQ-DlER_wIi.js} +3 -3
  72. package/dist/{classDiagram-OUVF2IWQ-JmvsYqNb.js.map → classDiagram-OUVF2IWQ-DlER_wIi.js.map} +1 -1
  73. package/dist/{classDiagram-v2-EOCWNBFH-haL9UyE3.cjs → classDiagram-v2-EOCWNBFH-BxIt89EK.cjs} +2 -2
  74. package/dist/{classDiagram-v2-EOCWNBFH-haL9UyE3.cjs.map → classDiagram-v2-EOCWNBFH-BxIt89EK.cjs.map} +1 -1
  75. package/dist/{classDiagram-v2-EOCWNBFH-JmvsYqNb.js → classDiagram-v2-EOCWNBFH-DlER_wIi.js} +3 -3
  76. package/dist/{classDiagram-v2-EOCWNBFH-JmvsYqNb.js.map → classDiagram-v2-EOCWNBFH-DlER_wIi.js.map} +1 -1
  77. package/dist/{cose-bilkent-JH36ORCC-dEzYTN0Y.js → cose-bilkent-JH36ORCC-BvnlFiZm.js} +2 -2
  78. package/dist/{cose-bilkent-JH36ORCC-dEzYTN0Y.js.map → cose-bilkent-JH36ORCC-BvnlFiZm.js.map} +1 -1
  79. package/dist/{cose-bilkent-JH36ORCC-CctQ6RmA.cjs → cose-bilkent-JH36ORCC-BzL-a0Zv.cjs} +2 -2
  80. package/dist/{cose-bilkent-JH36ORCC-CctQ6RmA.cjs.map → cose-bilkent-JH36ORCC-BzL-a0Zv.cjs.map} +1 -1
  81. package/dist/{cynefinDiagram-TSTJHNR4-Dc593JI7.cjs → cynefinDiagram-TSTJHNR4-B1lNDIu_.cjs} +2 -2
  82. package/dist/{cynefinDiagram-TSTJHNR4-Dc593JI7.cjs.map → cynefinDiagram-TSTJHNR4-B1lNDIu_.cjs.map} +1 -1
  83. package/dist/{cynefinDiagram-TSTJHNR4-DA0IbaOf.js → cynefinDiagram-TSTJHNR4-CUwuCyMp.js} +14 -14
  84. package/dist/{cynefinDiagram-TSTJHNR4-DA0IbaOf.js.map → cynefinDiagram-TSTJHNR4-CUwuCyMp.js.map} +1 -1
  85. package/dist/{dagre-VKFMJZFB-UlVWPHEF.cjs → dagre-VKFMJZFB-COYURQTh.cjs} +2 -2
  86. package/dist/{dagre-VKFMJZFB-UlVWPHEF.cjs.map → dagre-VKFMJZFB-COYURQTh.cjs.map} +1 -1
  87. package/dist/{dagre-VKFMJZFB-BZ4KqiTp.js → dagre-VKFMJZFB-Ct0vbIs9.js} +3 -3
  88. package/dist/{dagre-VKFMJZFB-BZ4KqiTp.js.map → dagre-VKFMJZFB-Ct0vbIs9.js.map} +1 -1
  89. package/dist/{diagram-FQU43EPY-BUkX2dwX.js → diagram-FQU43EPY-B5HmiJPw.js} +89 -89
  90. package/dist/{diagram-FQU43EPY-BUkX2dwX.js.map → diagram-FQU43EPY-B5HmiJPw.js.map} +1 -1
  91. package/dist/{diagram-FQU43EPY-Cz9HQsDB.cjs → diagram-FQU43EPY-DkgdwwAT.cjs} +2 -2
  92. package/dist/{diagram-FQU43EPY-Cz9HQsDB.cjs.map → diagram-FQU43EPY-DkgdwwAT.cjs.map} +1 -1
  93. package/dist/{diagram-G47NLZAW-BHYy7jE3.js → diagram-G47NLZAW-C-nfBNGF.js} +131 -131
  94. package/dist/{diagram-G47NLZAW-BHYy7jE3.js.map → diagram-G47NLZAW-C-nfBNGF.js.map} +1 -1
  95. package/dist/{diagram-G47NLZAW-BCRCFiSM.cjs → diagram-G47NLZAW-CcXcBx81.cjs} +2 -2
  96. package/dist/{diagram-G47NLZAW-BCRCFiSM.cjs.map → diagram-G47NLZAW-CcXcBx81.cjs.map} +1 -1
  97. package/dist/{diagram-NH7WQ7WH-CerCbpUu.cjs → diagram-NH7WQ7WH-BMYzS0pm.cjs} +2 -2
  98. package/dist/{diagram-NH7WQ7WH-CerCbpUu.cjs.map → diagram-NH7WQ7WH-BMYzS0pm.cjs.map} +1 -1
  99. package/dist/{diagram-NH7WQ7WH-IhqPJd1s.js → diagram-NH7WQ7WH-yu8B8Q4y.js} +7 -7
  100. package/dist/{diagram-NH7WQ7WH-IhqPJd1s.js.map → diagram-NH7WQ7WH-yu8B8Q4y.js.map} +1 -1
  101. package/dist/{diagram-OA4YK3LP-C3WyYBi_.js → diagram-OA4YK3LP-CROsfore.js} +16 -16
  102. package/dist/{diagram-OA4YK3LP-C3WyYBi_.js.map → diagram-OA4YK3LP-CROsfore.js.map} +1 -1
  103. package/dist/{diagram-OA4YK3LP-B8TMBlbb.cjs → diagram-OA4YK3LP-DSeI6RLe.cjs} +2 -2
  104. package/dist/{diagram-OA4YK3LP-B8TMBlbb.cjs.map → diagram-OA4YK3LP-DSeI6RLe.cjs.map} +1 -1
  105. package/dist/{diagram-WEI45ONY-Be4piikM.cjs → diagram-WEI45ONY-CCJwQ42c.cjs} +2 -2
  106. package/dist/{diagram-WEI45ONY-Be4piikM.cjs.map → diagram-WEI45ONY-CCJwQ42c.cjs.map} +1 -1
  107. package/dist/{diagram-WEI45ONY-DIwaS9Jo.js → diagram-WEI45ONY-DmPpMglv.js} +21 -21
  108. package/dist/{diagram-WEI45ONY-DIwaS9Jo.js.map → diagram-WEI45ONY-DmPpMglv.js.map} +1 -1
  109. package/dist/{ebnfDiagram-CCIWWBDH-BjmRWGfS.js → ebnfDiagram-CCIWWBDH-B2ck9j39.js} +6 -6
  110. package/dist/{ebnfDiagram-CCIWWBDH-BjmRWGfS.js.map → ebnfDiagram-CCIWWBDH-B2ck9j39.js.map} +1 -1
  111. package/dist/{ebnfDiagram-CCIWWBDH-C5MvxXmd.cjs → ebnfDiagram-CCIWWBDH-D_nz1FvR.cjs} +2 -2
  112. package/dist/{ebnfDiagram-CCIWWBDH-C5MvxXmd.cjs.map → ebnfDiagram-CCIWWBDH-D_nz1FvR.cjs.map} +1 -1
  113. package/dist/{erDiagram-Q63AITRT-CGL15E8G.cjs → erDiagram-Q63AITRT-2r-lfgSt.cjs} +2 -2
  114. package/dist/{erDiagram-Q63AITRT-CGL15E8G.cjs.map → erDiagram-Q63AITRT-2r-lfgSt.cjs.map} +1 -1
  115. package/dist/{erDiagram-Q63AITRT-DxHlesHD.js → erDiagram-Q63AITRT-BfpyxqAV.js} +13 -13
  116. package/dist/{erDiagram-Q63AITRT-DxHlesHD.js.map → erDiagram-Q63AITRT-BfpyxqAV.js.map} +1 -1
  117. package/dist/{extractHeadings-DLMipVtZ.cjs → extractHeadings-BrLI2qQF.cjs} +57 -57
  118. package/dist/extractHeadings-BrLI2qQF.cjs.map +1 -0
  119. package/dist/{extractHeadings-DXqyEdSz.js → extractHeadings-Dgzd324l.js} +4982 -5024
  120. package/dist/extractHeadings-Dgzd324l.js.map +1 -0
  121. package/dist/flowDiagram-23GEKE2U-D3w55eDA.cjs +2 -0
  122. package/dist/flowDiagram-23GEKE2U-D3w55eDA.cjs.map +1 -0
  123. package/dist/flowDiagram-23GEKE2U-LZTzy0Rx.js +8 -0
  124. package/dist/flowDiagram-23GEKE2U-LZTzy0Rx.js.map +1 -0
  125. package/dist/{ganttDiagram-NO4QXBWP-DJ3jv8Rd.cjs → ganttDiagram-NO4QXBWP-CNhgpKSH.cjs} +2 -2
  126. package/dist/{ganttDiagram-NO4QXBWP-DJ3jv8Rd.cjs.map → ganttDiagram-NO4QXBWP-CNhgpKSH.cjs.map} +1 -1
  127. package/dist/{ganttDiagram-NO4QXBWP-Cr3YBegW.js → ganttDiagram-NO4QXBWP-DR3YQ-Kd.js} +3 -3
  128. package/dist/{ganttDiagram-NO4QXBWP-Cr3YBegW.js.map → ganttDiagram-NO4QXBWP-DR3YQ-Kd.js.map} +1 -1
  129. package/dist/{gitGraphDiagram-IHSO6WYX-DLtw9G3h.js → gitGraphDiagram-IHSO6WYX-CzLNLS8W.js} +15 -15
  130. package/dist/{gitGraphDiagram-IHSO6WYX-DLtw9G3h.js.map → gitGraphDiagram-IHSO6WYX-CzLNLS8W.js.map} +1 -1
  131. package/dist/{gitGraphDiagram-IHSO6WYX-DfeTcKQn.cjs → gitGraphDiagram-IHSO6WYX-D5IYosEF.cjs} +2 -2
  132. package/dist/{gitGraphDiagram-IHSO6WYX-DfeTcKQn.cjs.map → gitGraphDiagram-IHSO6WYX-D5IYosEF.cjs.map} +1 -1
  133. package/dist/index.cjs +1 -1
  134. package/dist/index.client.cjs +1 -1
  135. package/dist/index.client.d.ts +1 -2
  136. package/dist/index.client.d.ts.map +1 -1
  137. package/dist/index.client.js +37 -39
  138. package/dist/index.js +37 -39
  139. package/dist/index.server.cjs +1 -1
  140. package/dist/index.server.cjs.map +1 -1
  141. package/dist/index.server.d.ts +11 -3
  142. package/dist/index.server.d.ts.map +1 -1
  143. package/dist/index.server.js +159 -220
  144. package/dist/index.server.js.map +1 -1
  145. package/dist/{infoDiagram-FWYZ7A6U-Ce8j8jph.js → infoDiagram-FWYZ7A6U-CBcx5GhE.js} +6 -6
  146. package/dist/{infoDiagram-FWYZ7A6U-Ce8j8jph.js.map → infoDiagram-FWYZ7A6U-CBcx5GhE.js.map} +1 -1
  147. package/dist/{infoDiagram-FWYZ7A6U-CW4-d4rX.cjs → infoDiagram-FWYZ7A6U-U2OiliOP.cjs} +2 -2
  148. package/dist/{infoDiagram-FWYZ7A6U-CW4-d4rX.cjs.map → infoDiagram-FWYZ7A6U-U2OiliOP.cjs.map} +1 -1
  149. package/dist/{ishikawaDiagram-FXEZZL3T-L8-waBZb.js → ishikawaDiagram-FXEZZL3T-CWXT_3xh.js} +29 -29
  150. package/dist/{ishikawaDiagram-FXEZZL3T-L8-waBZb.js.map → ishikawaDiagram-FXEZZL3T-CWXT_3xh.js.map} +1 -1
  151. package/dist/{ishikawaDiagram-FXEZZL3T-B12HxQJc.cjs → ishikawaDiagram-FXEZZL3T-DK3M6wrz.cjs} +2 -2
  152. package/dist/{ishikawaDiagram-FXEZZL3T-B12HxQJc.cjs.map → ishikawaDiagram-FXEZZL3T-DK3M6wrz.cjs.map} +1 -1
  153. package/dist/{journeyDiagram-5HDEW3XC-D8Grjliz.cjs → journeyDiagram-5HDEW3XC-B-BfhPr4.cjs} +2 -2
  154. package/dist/{journeyDiagram-5HDEW3XC-D8Grjliz.cjs.map → journeyDiagram-5HDEW3XC-B-BfhPr4.cjs.map} +1 -1
  155. package/dist/{journeyDiagram-5HDEW3XC-DT-oySwM.js → journeyDiagram-5HDEW3XC-DRbAj2Yz.js} +21 -21
  156. package/dist/{journeyDiagram-5HDEW3XC-DT-oySwM.js.map → journeyDiagram-5HDEW3XC-DRbAj2Yz.js.map} +1 -1
  157. package/dist/{kanban-definition-HUTT4EX6-CPeA5sWR.cjs → kanban-definition-HUTT4EX6-BvnLv2HN.cjs} +2 -2
  158. package/dist/{kanban-definition-HUTT4EX6-CPeA5sWR.cjs.map → kanban-definition-HUTT4EX6-BvnLv2HN.cjs.map} +1 -1
  159. package/dist/{kanban-definition-HUTT4EX6-Cu3hSZTf.js → kanban-definition-HUTT4EX6-DtRSv2_P.js} +122 -122
  160. package/dist/{kanban-definition-HUTT4EX6-Cu3hSZTf.js.map → kanban-definition-HUTT4EX6-DtRSv2_P.js.map} +1 -1
  161. package/dist/{linear-Dva-3TNI.cjs → linear-B9JMAP1U.cjs} +2 -2
  162. package/dist/{linear-Dva-3TNI.cjs.map → linear-B9JMAP1U.cjs.map} +1 -1
  163. package/dist/{linear-Cxhgo9L6.js → linear-HTaGrbQh.js} +16 -16
  164. package/dist/{linear-Cxhgo9L6.js.map → linear-HTaGrbQh.js.map} +1 -1
  165. package/dist/{mindmap-definition-LN4V7U3C-C6J9DUEU.js → mindmap-definition-LN4V7U3C-4cN-VjxO.js} +12 -12
  166. package/dist/{mindmap-definition-LN4V7U3C-C6J9DUEU.js.map → mindmap-definition-LN4V7U3C-4cN-VjxO.js.map} +1 -1
  167. package/dist/{mindmap-definition-LN4V7U3C-DA8vudfE.cjs → mindmap-definition-LN4V7U3C-asDDR5DU.cjs} +2 -2
  168. package/dist/{mindmap-definition-LN4V7U3C-DA8vudfE.cjs.map → mindmap-definition-LN4V7U3C-asDDR5DU.cjs.map} +1 -1
  169. package/dist/{pegDiagram-2B236MQR-Co6RWobn.cjs → pegDiagram-2B236MQR-C3qJlDiV.cjs} +2 -2
  170. package/dist/{pegDiagram-2B236MQR-Co6RWobn.cjs.map → pegDiagram-2B236MQR-C3qJlDiV.cjs.map} +1 -1
  171. package/dist/{pegDiagram-2B236MQR-SWh4hb5t.js → pegDiagram-2B236MQR-cMLC3Ggy.js} +6 -6
  172. package/dist/{pegDiagram-2B236MQR-SWh4hb5t.js.map → pegDiagram-2B236MQR-cMLC3Ggy.js.map} +1 -1
  173. package/dist/{pieDiagram-ENE6RG2P-B7DL32tJ.cjs → pieDiagram-ENE6RG2P-D5-meW-_.cjs} +2 -2
  174. package/dist/{pieDiagram-ENE6RG2P-B7DL32tJ.cjs.map → pieDiagram-ENE6RG2P-D5-meW-_.cjs.map} +1 -1
  175. package/dist/{pieDiagram-ENE6RG2P-CF-fsN5x.js → pieDiagram-ENE6RG2P-nk_3VO3x.js} +51 -51
  176. package/dist/{pieDiagram-ENE6RG2P-CF-fsN5x.js.map → pieDiagram-ENE6RG2P-nk_3VO3x.js.map} +1 -1
  177. package/dist/{quadrantDiagram-ABIIQ3AL-DwC6GYSw.cjs → quadrantDiagram-ABIIQ3AL-CmqrHJ4C.cjs} +2 -2
  178. package/dist/{quadrantDiagram-ABIIQ3AL-DwC6GYSw.cjs.map → quadrantDiagram-ABIIQ3AL-CmqrHJ4C.cjs.map} +1 -1
  179. package/dist/{quadrantDiagram-ABIIQ3AL-Bb9z5l9a.js → quadrantDiagram-ABIIQ3AL-Ctdfu4Qk.js} +3 -3
  180. package/dist/{quadrantDiagram-ABIIQ3AL-Bb9z5l9a.js.map → quadrantDiagram-ABIIQ3AL-Ctdfu4Qk.js.map} +1 -1
  181. package/dist/{railroadDiagram-RFXS5EU6-JArFWsDe.js → railroadDiagram-RFXS5EU6-2rLqmvj_.js} +4 -4
  182. package/dist/{railroadDiagram-RFXS5EU6-JArFWsDe.js.map → railroadDiagram-RFXS5EU6-2rLqmvj_.js.map} +1 -1
  183. package/dist/{railroadDiagram-RFXS5EU6-cKqfMCU4.cjs → railroadDiagram-RFXS5EU6-a-pSoUg2.cjs} +2 -2
  184. package/dist/{railroadDiagram-RFXS5EU6-cKqfMCU4.cjs.map → railroadDiagram-RFXS5EU6-a-pSoUg2.cjs.map} +1 -1
  185. package/dist/{requirementDiagram-TGXJPOKE-ADs_L_fO.cjs → requirementDiagram-TGXJPOKE-BaKLflmx.cjs} +2 -2
  186. package/dist/{requirementDiagram-TGXJPOKE-ADs_L_fO.cjs.map → requirementDiagram-TGXJPOKE-BaKLflmx.cjs.map} +1 -1
  187. package/dist/{requirementDiagram-TGXJPOKE-DhRBCdRa.js → requirementDiagram-TGXJPOKE-BlCu380H.js} +4 -4
  188. package/dist/{requirementDiagram-TGXJPOKE-DhRBCdRa.js.map → requirementDiagram-TGXJPOKE-BlCu380H.js.map} +1 -1
  189. package/dist/{sankeyDiagram-HTMAVEWB-BOS4mbGH.js → sankeyDiagram-HTMAVEWB-6lNyI55x.js} +24 -24
  190. package/dist/{sankeyDiagram-HTMAVEWB-BOS4mbGH.js.map → sankeyDiagram-HTMAVEWB-6lNyI55x.js.map} +1 -1
  191. package/dist/{sankeyDiagram-HTMAVEWB-DgIU2lNe.cjs → sankeyDiagram-HTMAVEWB-DuUzdIP0.cjs} +2 -2
  192. package/dist/{sankeyDiagram-HTMAVEWB-DgIU2lNe.cjs.map → sankeyDiagram-HTMAVEWB-DuUzdIP0.cjs.map} +1 -1
  193. package/dist/{sequenceDiagram-DBY2YBRQ-Dw2RmEIK.cjs → sequenceDiagram-DBY2YBRQ-B29fl34a.cjs} +2 -2
  194. package/dist/{sequenceDiagram-DBY2YBRQ-Dw2RmEIK.cjs.map → sequenceDiagram-DBY2YBRQ-B29fl34a.cjs.map} +1 -1
  195. package/dist/{sequenceDiagram-DBY2YBRQ-Digq5Uh2.js → sequenceDiagram-DBY2YBRQ-sgwpzZWi.js} +87 -87
  196. package/dist/{sequenceDiagram-DBY2YBRQ-Digq5Uh2.js.map → sequenceDiagram-DBY2YBRQ-sgwpzZWi.js.map} +1 -1
  197. package/dist/{sizeCapture-X5ZJPWSS-B-_sHCun.cjs → sizeCapture-X5ZJPWSS-DAiqtb_j.cjs} +2 -2
  198. package/dist/{sizeCapture-X5ZJPWSS-B-_sHCun.cjs.map → sizeCapture-X5ZJPWSS-DAiqtb_j.cjs.map} +1 -1
  199. package/dist/{sizeCapture-X5ZJPWSS-DrnV9G4V.js → sizeCapture-X5ZJPWSS-DMDy-RCU.js} +2 -2
  200. package/dist/{sizeCapture-X5ZJPWSS-DrnV9G4V.js.map → sizeCapture-X5ZJPWSS-DMDy-RCU.js.map} +1 -1
  201. package/dist/{stateDiagram-2N3HPSRC-BT1p37Yr.cjs → stateDiagram-2N3HPSRC-BXIH2aOp.cjs} +2 -2
  202. package/dist/{stateDiagram-2N3HPSRC-BT1p37Yr.cjs.map → stateDiagram-2N3HPSRC-BXIH2aOp.cjs.map} +1 -1
  203. package/dist/{stateDiagram-2N3HPSRC-z0szyb-H.js → stateDiagram-2N3HPSRC-DAN7ei1t.js} +25 -25
  204. package/dist/{stateDiagram-2N3HPSRC-z0szyb-H.js.map → stateDiagram-2N3HPSRC-DAN7ei1t.js.map} +1 -1
  205. package/dist/{stateDiagram-v2-6OUMAXLB-CrvSrtvg.js → stateDiagram-v2-6OUMAXLB--pCo5CzX.js} +5 -5
  206. package/dist/{stateDiagram-v2-6OUMAXLB-CrvSrtvg.js.map → stateDiagram-v2-6OUMAXLB--pCo5CzX.js.map} +1 -1
  207. package/dist/{stateDiagram-v2-6OUMAXLB-B_8yre-X.cjs → stateDiagram-v2-6OUMAXLB-8XTokhrn.cjs} +2 -2
  208. package/dist/{stateDiagram-v2-6OUMAXLB-B_8yre-X.cjs.map → stateDiagram-v2-6OUMAXLB-8XTokhrn.cjs.map} +1 -1
  209. package/dist/{swimlanes-5IMT3BWC-BlFH2q78.js → swimlanes-5IMT3BWC-B-sXtUgS.js} +4 -4
  210. package/dist/{swimlanes-5IMT3BWC-BlFH2q78.js.map → swimlanes-5IMT3BWC-B-sXtUgS.js.map} +1 -1
  211. package/dist/{swimlanes-5IMT3BWC-CoZRjeam.cjs → swimlanes-5IMT3BWC-BnT290KL.cjs} +2 -2
  212. package/dist/{swimlanes-5IMT3BWC-CoZRjeam.cjs.map → swimlanes-5IMT3BWC-BnT290KL.cjs.map} +1 -1
  213. package/dist/{swimlanesDiagram-G3AALYLV-k0jDcHWE.cjs → swimlanesDiagram-G3AALYLV-CAEjADeH.cjs} +2 -2
  214. package/dist/{swimlanesDiagram-G3AALYLV-k0jDcHWE.cjs.map → swimlanesDiagram-G3AALYLV-CAEjADeH.cjs.map} +1 -1
  215. package/dist/{swimlanesDiagram-G3AALYLV-DODB_7JB.js → swimlanesDiagram-G3AALYLV-CkxURj6O.js} +3 -3
  216. package/dist/{swimlanesDiagram-G3AALYLV-DODB_7JB.js.map → swimlanesDiagram-G3AALYLV-CkxURj6O.js.map} +1 -1
  217. package/dist/{timeline-definition-FHXFAJF6-Bf643DeG.js → timeline-definition-FHXFAJF6-D47CoBOm.js} +26 -26
  218. package/dist/{timeline-definition-FHXFAJF6-Bf643DeG.js.map → timeline-definition-FHXFAJF6-D47CoBOm.js.map} +1 -1
  219. package/dist/{timeline-definition-FHXFAJF6-CQpVzyuC.cjs → timeline-definition-FHXFAJF6-Dqdftl5b.cjs} +2 -2
  220. package/dist/{timeline-definition-FHXFAJF6-CQpVzyuC.cjs.map → timeline-definition-FHXFAJF6-Dqdftl5b.cjs.map} +1 -1
  221. package/dist/{vennDiagram-L72KCM5P-C0Qj1Ye9.cjs → vennDiagram-L72KCM5P-BxjgXNwH.cjs} +2 -2
  222. package/dist/{vennDiagram-L72KCM5P-C0Qj1Ye9.cjs.map → vennDiagram-L72KCM5P-BxjgXNwH.cjs.map} +1 -1
  223. package/dist/{vennDiagram-L72KCM5P-BHnPQYAv.js → vennDiagram-L72KCM5P-DzcOxkzh.js} +58 -58
  224. package/dist/{vennDiagram-L72KCM5P-BHnPQYAv.js.map → vennDiagram-L72KCM5P-DzcOxkzh.js.map} +1 -1
  225. package/dist/{wardleyDiagram-EHGQE667-BhRakVW4.cjs → wardleyDiagram-EHGQE667-CurWRCjn.cjs} +2 -2
  226. package/dist/{wardleyDiagram-EHGQE667-BhRakVW4.cjs.map → wardleyDiagram-EHGQE667-CurWRCjn.cjs.map} +1 -1
  227. package/dist/{wardleyDiagram-EHGQE667-QDSPpILj.js → wardleyDiagram-EHGQE667-tZJBiyrP.js} +87 -87
  228. package/dist/{wardleyDiagram-EHGQE667-QDSPpILj.js.map → wardleyDiagram-EHGQE667-tZJBiyrP.js.map} +1 -1
  229. package/dist/{xychartDiagram-FW5EYKEG-C7LGE11p.cjs → xychartDiagram-FW5EYKEG-D0ltrZo8.cjs} +2 -2
  230. package/dist/{xychartDiagram-FW5EYKEG-C7LGE11p.cjs.map → xychartDiagram-FW5EYKEG-D0ltrZo8.cjs.map} +1 -1
  231. package/dist/{xychartDiagram-FW5EYKEG-8socgV_y.js → xychartDiagram-FW5EYKEG-DRQ_o9WV.js} +20 -20
  232. package/dist/{xychartDiagram-FW5EYKEG-8socgV_y.js.map → xychartDiagram-FW5EYKEG-DRQ_o9WV.js.map} +1 -1
  233. package/package.json +7 -9
  234. package/dist/channel-BpIdowqO.cjs +0 -2
  235. package/dist/channel-DGDNA7RK.js +0 -6
  236. package/dist/extractHeadings-DLMipVtZ.cjs.map +0 -1
  237. package/dist/extractHeadings-DXqyEdSz.js.map +0 -1
  238. package/dist/flowDiagram-23GEKE2U-B4xwo9xK.cjs +0 -2
  239. package/dist/flowDiagram-23GEKE2U-B4xwo9xK.cjs.map +0 -1
  240. package/dist/flowDiagram-23GEKE2U-DdN3jXSO.js +0 -8
  241. package/dist/flowDiagram-23GEKE2U-DdN3jXSO.js.map +0 -1
  242. package/dist/plugins/remark-import-directive.async.server.d.ts +0 -16
  243. package/dist/plugins/remark-import-directive.async.server.d.ts.map +0 -1
  244. package/dist/plugins/remark-resolve-uri.async.d.ts +0 -13
  245. package/dist/plugins/remark-resolve-uri.async.d.ts.map +0 -1
  246. package/dist/plugins/transformUri.async.server.d.ts +0 -13
  247. package/dist/plugins/transformUri.async.server.d.ts.map +0 -1
@@ -1,9 +1,9 @@
1
- import { $ as u, a2 as i } from "./extractHeadings-DXqyEdSz.js";
1
+ import { _ as u, a0 as i } from "./extractHeadings-Dgzd324l.js";
2
2
  import { i as m, G as y } from "./graph-DAHC4kPm.js";
3
- import { b as j, m as X } from "./map-DRdzG8Ho.js";
4
- var p = 4;
5
- function F(e) {
6
- return j(e, p);
3
+ import { b as _, m as X } from "./map-DRdzG8Ho.js";
4
+ var j = 4;
5
+ function p(e) {
6
+ return _(e, j);
7
7
  }
8
8
  function C(e) {
9
9
  var r = {
@@ -12,18 +12,18 @@ function C(e) {
12
12
  multigraph: e.isMultigraph(),
13
13
  compound: e.isCompound()
14
14
  },
15
- nodes: M(e),
16
- edges: R(e)
15
+ nodes: F(e),
16
+ edges: M(e)
17
17
  };
18
- return m(e.graph()) || (r.value = F(e.graph())), r;
18
+ return m(e.graph()) || (r.value = p(e.graph())), r;
19
19
  }
20
- function M(e) {
20
+ function F(e) {
21
21
  return X(e.nodes(), function(r) {
22
22
  var n = e.node(r), s = e.parent(r), t = { v: r };
23
23
  return m(n) || (t.value = n), m(s) || (t.parent = s), t;
24
24
  });
25
25
  }
26
- function R(e) {
26
+ function M(e) {
27
27
  return X(e.edges(), function(r) {
28
28
  var n = e.edge(r), s = { v: r.v, w: r.w };
29
29
  return m(r.name) || (s.name = r.name), m(n) || (s.value = n), s;
@@ -34,7 +34,7 @@ var c = /* @__PURE__ */ new Map(), w = /* @__PURE__ */ new Map(), A = /* @__PURE
34
34
  }, "clear"), v = /* @__PURE__ */ u((e, r) => {
35
35
  const n = w.get(r) || [];
36
36
  return i.trace("In isDescendant", r, " ", e, " = ", n.includes(e)), n.includes(e);
37
- }, "isDescendant"), _ = /* @__PURE__ */ u((e, r) => {
37
+ }, "isDescendant"), R = /* @__PURE__ */ u((e, r) => {
38
38
  const n = w.get(r) || [];
39
39
  return i.info("Descendants of ", r, " is ", n), i.info("Edge is ", e), e.v === r || e.w === r ? !1 : n ? n.includes(e.v) || v(e.v, r) || v(e.w, r) || n.includes(e.w) : (i.debug("Tilt, ", r, ",not in descendants"), !1);
40
40
  }, "edgeInCluster"), b = /* @__PURE__ */ u((e, r, n, s) => {
@@ -67,7 +67,7 @@ var c = /* @__PURE__ */ new Map(), w = /* @__PURE__ */ new Map(), A = /* @__PURE
67
67
  const d = r.edge(a.v, a.w, a.name);
68
68
  i.info("Edge data", d, s);
69
69
  try {
70
- if (_(a, s)) {
70
+ if (R(a, s)) {
71
71
  const g = w.get(s) || [], E = g.includes(a.v) || v(a.v, s) || a.v === s, x = g.includes(a.w) || v(a.w, s) || a.w === s;
72
72
  if (E && x)
73
73
  i.info("Copying as ", a.v, a.w, d, a.name), n.setEdge(a.v, a.w, d, a.name), i.info("newGraph edges ", n.edges(), n.edge(n.edges()[0]));
@@ -311,4 +311,4 @@ export {
311
311
  W as s,
312
312
  C as w
313
313
  };
314
- //# sourceMappingURL=chunk-RYQCIY6F-Bje2GI9K.js.map
314
+ //# sourceMappingURL=chunk-RYQCIY6F-CSpf1fBI.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chunk-RYQCIY6F-Bje2GI9K.js","sources":["../../../node_modules/.pnpm/lodash-es@4.18.1/node_modules/lodash-es/clone.js","../../../node_modules/.pnpm/dagre-d3-es@7.0.14/node_modules/dagre-d3-es/src/graphlib/json.js","../../../node_modules/.pnpm/mermaid@11.16.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-RYQCIY6F.mjs"],"sourcesContent":["import baseClone from './_baseClone.js';\n\n/** Used to compose bitmasks for cloning. */\nvar CLONE_SYMBOLS_FLAG = 4;\n\n/**\n * Creates a shallow clone of `value`.\n *\n * **Note:** This method is loosely based on the\n * [structured clone algorithm](https://mdn.io/Structured_clone_algorithm)\n * and supports cloning arrays, array buffers, booleans, date objects, maps,\n * numbers, `Object` objects, regexes, sets, strings, symbols, and typed\n * arrays. The own enumerable properties of `arguments` objects are cloned\n * as plain objects. An empty object is returned for uncloneable values such\n * as error objects, functions, DOM nodes, and WeakMaps.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to clone.\n * @returns {*} Returns the cloned value.\n * @see _.cloneDeep\n * @example\n *\n * var objects = [{ 'a': 1 }, { 'b': 2 }];\n *\n * var shallow = _.clone(objects);\n * console.log(shallow[0] === objects[0]);\n * // => true\n */\nfunction clone(value) {\n return baseClone(value, CLONE_SYMBOLS_FLAG);\n}\n\nexport default clone;\n","import * as _ from 'lodash-es';\nimport { Graph } from './graph.js';\n\n/**\n * @import { NodeID, EdgeObj, GraphOptions } from './graph.js';\n */\n\nexport { write, read };\n\n/**\n * @template [GraphLabel=any] - Label of the graph.\n * @template [NodeLabel=any] - Label of a node.\n * @template [EdgeLabel=any] - Label of an edge.\n *\n * @typedef {object} GraphJSON\n * @property {Required<GraphOptions>} options - The options used to create the graph.\n * @property {Array<{ v: NodeID; value?: NodeLabel; parent?: NodeID }>} nodes - The nodes in the graph.\n * @property {Array<EdgeObj & { value?: EdgeLabel }>} edges - The edges in the graph.\n * @property {GraphLabel} [value] - The graph's value, if any.\n */\n\n/**\n * Creates a JSON representation of the graph that can be serialized to a\n * string with\n * [JSON.stringify](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify).\n * The graph can later be restored using {@link read}.\n *\n * @example\n *\n * ```js\n * var g = new graphlib.Graph();\n * g.setNode(\"a\", { label: \"node a\" });\n * g.setNode(\"b\", { label: \"node b\" });\n * g.setEdge(\"a\", \"b\", { label: \"edge a->b\" });\n * graphlib.json.write(g);\n * // Returns the object:\n * //\n * // {\n * // \"options\": {\n * // \"directed\": true,\n * // \"multigraph\": false,\n * // \"compound\": false\n * // },\n * // \"nodes\": [\n * // { \"v\": \"a\", \"value\": { \"label\": \"node a\" } },\n * // { \"v\": \"b\", \"value\": { \"label\": \"node b\" } }\n * // ],\n * // \"edges\": [\n * // { \"v\": \"a\", \"w\": \"b\", \"value\": { \"label\": \"edge a->b\" } }\n * // ]\n * // }\n * ```\n *\n * @template [GraphLabel=any] - Label of the graph.\n * @template [NodeLabel=any] - Label of a node.\n * @template [EdgeLabel=any] - Label of an edge.\n * @param {Graph<GraphLabel, NodeLabel, EdgeLabel>} g - The graph to serialize.\n * @returns {GraphJSON<GraphLabel, NodeLabel, EdgeLabel>} The JSON representation of the graph.\n */\nfunction write(g) {\n /** @type {GraphJSON<GraphLabel, NodeLabel, EdgeLabel>} */\n var json = {\n options: {\n directed: g.isDirected(),\n multigraph: g.isMultigraph(),\n compound: g.isCompound(),\n },\n nodes: writeNodes(g),\n edges: writeEdges(g),\n };\n if (!_.isUndefined(g.graph())) {\n json.value = _.clone(g.graph());\n }\n return json;\n}\n\n/**\n * @template NodeLabel - Label of a node.\n *\n * @param {Graph<unknown, NodeLabel, unknown>} g - The graph to serialize.\n * @returns {Array<{ v: NodeID; value?: NodeLabel; parent?: NodeID }>} The nodes in the graph.\n */\nfunction writeNodes(g) {\n return _.map(g.nodes(), function (v) {\n var nodeValue = g.node(v);\n var parent = g.parent(v);\n /** @type {{ v: NodeID; value?: NodeLabel; parent?: NodeID }} */\n var node = { v: v };\n if (!_.isUndefined(nodeValue)) {\n node.value = nodeValue;\n }\n if (!_.isUndefined(parent)) {\n node.parent = parent;\n }\n return node;\n });\n}\n\n/**\n * @template EdgeLabel - Label of a node.\n *\n * @param {Graph<unknown, unknown, EdgeLabel>} g - The graph to serialize.\n * @returns {Array<EdgeObj & { value?: EdgeLabel }>} The edges in the graph.\n */\nfunction writeEdges(g) {\n return _.map(g.edges(), function (e) {\n var edgeValue = g.edge(e);\n /** @type {EdgeObj & { value?: EdgeLabel }} */\n var edge = { v: e.v, w: e.w };\n if (!_.isUndefined(e.name)) {\n edge.name = e.name;\n }\n if (!_.isUndefined(edgeValue)) {\n edge.value = edgeValue;\n }\n return edge;\n });\n}\n\n/**\n * Takes JSON as input and returns the graph representation.\n *\n * @example\n *\n * For example, if we have serialized the graph in {@link write}\n * to a string named `str`, we can restore it to a graph as follows:\n *\n * ```js\n * var g2 = graphlib.json.read(JSON.parse(str));\n * // or, in order to copy the graph\n * var g3 = graphlib.json.read(graphlib.json.write(g))\n *\n * g2.nodes();\n * // ['a', 'b']\n * g2.edges()\n * // [ { v: 'a', w: 'b' } ]\n * ```\n *\n * @template [GraphLabel=any] - Label of the graph.\n * @template [NodeLabel=any] - Label of a node.\n * @template [EdgeLabel=any] - Label of an edge.\n * @param {GraphJSON<GraphLabel, NodeLabel, EdgeLabel>} json - The JSON representation of the graph.\n * @returns {Graph<GraphLabel, NodeLabel, EdgeLabel>} The restored graph.\n */\nfunction read(json) {\n var g = new Graph(json.options).setGraph(json.value);\n _.each(json.nodes, function (entry) {\n g.setNode(entry.v, entry.value);\n if (entry.parent) {\n g.setParent(entry.v, entry.parent);\n }\n });\n _.each(json.edges, function (entry) {\n g.setEdge({ v: entry.v, w: entry.w, name: entry.name }, entry.value);\n });\n return g;\n}\n","import {\n log\n} from \"./chunk-X3CZISLH.mjs\";\nimport {\n __name\n} from \"./chunk-Y2CYZVJY.mjs\";\n\n// src/rendering-util/layout-algorithms/dagre/mermaid-graphlib.js\nimport * as graphlib from \"dagre-d3-es/src/graphlib/index.js\";\nimport * as graphlibJson from \"dagre-d3-es/src/graphlib/json.js\";\nvar clusterDb = /* @__PURE__ */ new Map();\nvar descendants = /* @__PURE__ */ new Map();\nvar parents = /* @__PURE__ */ new Map();\nvar clear = /* @__PURE__ */ __name(() => {\n descendants.clear();\n parents.clear();\n clusterDb.clear();\n}, \"clear\");\nvar isDescendant = /* @__PURE__ */ __name((id, ancestorId) => {\n const ancestorDescendants = descendants.get(ancestorId) || [];\n log.trace(\"In isDescendant\", ancestorId, \" \", id, \" = \", ancestorDescendants.includes(id));\n return ancestorDescendants.includes(id);\n}, \"isDescendant\");\nvar edgeInCluster = /* @__PURE__ */ __name((edge, clusterId) => {\n const clusterDescendants = descendants.get(clusterId) || [];\n log.info(\"Descendants of \", clusterId, \" is \", clusterDescendants);\n log.info(\"Edge is \", edge);\n if (edge.v === clusterId || edge.w === clusterId) {\n return false;\n }\n if (!clusterDescendants) {\n log.debug(\"Tilt, \", clusterId, \",not in descendants\");\n return false;\n }\n return clusterDescendants.includes(edge.v) || isDescendant(edge.v, clusterId) || isDescendant(edge.w, clusterId) || clusterDescendants.includes(edge.w);\n}, \"edgeInCluster\");\nvar copy = /* @__PURE__ */ __name((clusterId, graph, newGraph, rootId) => {\n log.warn(\n \"Copying children of \",\n clusterId,\n \"root\",\n rootId,\n \"data\",\n graph.node(clusterId),\n rootId\n );\n const nodes = graph.children(clusterId) || [];\n if (clusterId !== rootId) {\n nodes.push(clusterId);\n }\n log.warn(\"Copying (nodes) clusterId\", clusterId, \"nodes\", nodes);\n nodes.forEach((node) => {\n if (graph.children(node).length > 0) {\n copy(node, graph, newGraph, rootId);\n } else {\n const data = graph.node(node);\n log.info(\"cp \", node, \" to \", rootId, \" with parent \", clusterId);\n newGraph.setNode(node, data);\n if (rootId !== graph.parent(node)) {\n log.warn(\"Setting parent\", node, graph.parent(node));\n newGraph.setParent(node, graph.parent(node));\n }\n if (clusterId !== rootId && node !== clusterId) {\n log.debug(\"Setting parent\", node, clusterId);\n newGraph.setParent(node, clusterId);\n } else {\n log.info(\"In copy \", clusterId, \"root\", rootId, \"data\", graph.node(clusterId), rootId);\n log.debug(\n \"Not Setting parent for node=\",\n node,\n \"cluster!==rootId\",\n clusterId !== rootId,\n \"node!==clusterId\",\n node !== clusterId\n );\n }\n const edges = graph.edges(node);\n log.debug(\"Copying Edges\", edges);\n edges.forEach((edge) => {\n log.info(\"Edge\", edge);\n const data2 = graph.edge(edge.v, edge.w, edge.name);\n log.info(\"Edge data\", data2, rootId);\n try {\n if (edgeInCluster(edge, rootId)) {\n const rootDescendants = descendants.get(rootId) || [];\n const vIn = rootDescendants.includes(edge.v) || isDescendant(edge.v, rootId) || edge.v === rootId;\n const wIn = rootDescendants.includes(edge.w) || isDescendant(edge.w, rootId) || edge.w === rootId;\n if (vIn && wIn) {\n log.info(\"Copying as \", edge.v, edge.w, data2, edge.name);\n newGraph.setEdge(edge.v, edge.w, data2, edge.name);\n log.info(\"newGraph edges \", newGraph.edges(), newGraph.edge(newGraph.edges()[0]));\n } else {\n const newV = vIn ? rootId : edge.v;\n const newW = wIn ? rootId : edge.w;\n log.info(\"Rebinding cross-boundary edge as \", newV, newW, data2, edge.name);\n graph.setEdge(newV, newW, data2, edge.name);\n }\n } else {\n log.info(\n \"Skipping copy of edge \",\n edge.v,\n \"-->\",\n edge.w,\n \" rootId: \",\n rootId,\n \" clusterId:\",\n clusterId\n );\n }\n } catch (e) {\n log.error(e);\n }\n });\n }\n log.debug(\"Removing node\", node);\n graph.removeNode(node);\n });\n}, \"copy\");\nvar extractDescendants = /* @__PURE__ */ __name((id, graph) => {\n const children = graph.children(id);\n let res = [...children];\n for (const child of children) {\n parents.set(child, id);\n res = [...res, ...extractDescendants(child, graph)];\n }\n return res;\n}, \"extractDescendants\");\nvar findCommonEdges = /* @__PURE__ */ __name((graph, id1, id2) => {\n const edges1 = graph.edges().filter((edge) => edge.v === id1 || edge.w === id1);\n const edges2 = graph.edges().filter((edge) => edge.v === id2 || edge.w === id2);\n const edges1Prim = edges1.map((edge) => {\n return { v: edge.v === id1 ? id2 : edge.v, w: edge.w === id1 ? id1 : edge.w };\n });\n const edges2Prim = edges2.map((edge) => {\n return { v: edge.v, w: edge.w };\n });\n const result = edges1Prim.filter((edgeIn1) => {\n return edges2Prim.some((edge) => edgeIn1.v === edge.v && edgeIn1.w === edge.w);\n });\n return result;\n}, \"findCommonEdges\");\nvar findNonClusterChild = /* @__PURE__ */ __name((id, graph, clusterId) => {\n const children = graph.children(id);\n log.trace(\"Searching children of id \", id, children);\n if (children.length < 1) {\n return id;\n }\n let reserve;\n for (const child of children) {\n const _id = findNonClusterChild(child, graph, clusterId);\n const commonEdges = findCommonEdges(graph, clusterId, _id);\n if (_id) {\n if (commonEdges.length > 0) {\n reserve = _id;\n } else {\n return _id;\n }\n }\n }\n return reserve;\n}, \"findNonClusterChild\");\nvar getAnchorId = /* @__PURE__ */ __name((id) => {\n if (!clusterDb.has(id)) {\n return id;\n }\n if (!clusterDb.get(id).externalConnections) {\n return id;\n }\n if (clusterDb.has(id)) {\n return clusterDb.get(id).id;\n }\n return id;\n}, \"getAnchorId\");\nvar adjustClustersAndEdges = /* @__PURE__ */ __name((graph, depth) => {\n if (!graph || depth > 10) {\n log.debug(\"Opting out, no graph \");\n return;\n } else {\n log.debug(\"Opting in, graph \");\n }\n graph.nodes().forEach(function(id) {\n const children = graph.children(id);\n if (children.length > 0) {\n log.warn(\n \"Cluster identified\",\n id,\n \" Replacement id in edges: \",\n findNonClusterChild(id, graph, id)\n );\n descendants.set(id, extractDescendants(id, graph));\n clusterDb.set(id, { id: findNonClusterChild(id, graph, id), clusterData: graph.node(id) });\n }\n });\n graph.nodes().forEach(function(id) {\n const children = graph.children(id);\n const edges = graph.edges();\n if (children.length > 0) {\n log.debug(\"Cluster identified\", id, descendants);\n edges.forEach((edge) => {\n const d1 = isDescendant(edge.v, id);\n const d2 = isDescendant(edge.w, id);\n if (d1 ^ d2) {\n log.warn(\"Edge: \", edge, \" leaves cluster \", id);\n log.warn(\"Descendants of XXX \", id, \": \", descendants.get(id));\n clusterDb.get(id).externalConnections = true;\n }\n });\n } else {\n log.debug(\"Not a cluster \", id, descendants);\n }\n });\n for (let id of clusterDb.keys()) {\n const nonClusterChild = clusterDb.get(id).id;\n const parent = graph.parent(nonClusterChild);\n if (parent !== id && clusterDb.has(parent) && !clusterDb.get(parent).externalConnections) {\n clusterDb.get(id).id = parent;\n }\n const hasDirectOutgoingEdge = graph.edges().some((edge) => edge.v === id);\n if (nonClusterChild && clusterDb.get(id)?.externalConnections && hasDirectOutgoingEdge && isNodeInExtractableCluster(graph, nonClusterChild, id)) {\n const safeAnchor = findSafeAnchorNode(graph, id, graph.parent(nonClusterChild));\n if (safeAnchor) {\n clusterDb.get(id).id = safeAnchor;\n }\n }\n }\n graph.edges().forEach(function(e) {\n const edge = graph.edge(e);\n log.warn(\"Edge \" + e.v + \" -> \" + e.w + \": \" + JSON.stringify(e));\n log.warn(\"Edge \" + e.v + \" -> \" + e.w + \": \" + JSON.stringify(graph.edge(e)));\n let v = e.v;\n let w = e.w;\n log.warn(\n \"Fix XXX\",\n clusterDb,\n \"ids:\",\n e.v,\n e.w,\n \"Translating: \",\n clusterDb.get(e.v),\n \" --- \",\n clusterDb.get(e.w)\n );\n if (clusterDb.get(e.v) || clusterDb.get(e.w)) {\n log.warn(\"Fixing and trying - removing XXX\", e.v, e.w, e.name);\n v = getAnchorId(e.v);\n w = getAnchorId(e.w);\n graph.removeEdge(e.v, e.w, e.name);\n if (v !== e.v) {\n const parent = graph.parent(v);\n clusterDb.get(parent).externalConnections = true;\n edge.fromCluster = e.v;\n }\n if (w !== e.w) {\n const parent = graph.parent(w);\n clusterDb.get(parent).externalConnections = true;\n edge.toCluster = e.w;\n }\n log.warn(\"Fix Replacing with XXX\", v, w, e.name);\n graph.setEdge(v, w, edge, e.name);\n }\n });\n log.warn(\"Adjusted Graph\", graphlibJson.write(graph));\n extractor(graph, 0);\n log.trace(clusterDb);\n}, \"adjustClustersAndEdges\");\nvar extractor = /* @__PURE__ */ __name((graph, depth) => {\n log.warn(\"extractor - \", depth, graphlibJson.write(graph), graph.children(\"D\"));\n if (depth > 10) {\n log.error(\"Bailing out\");\n return;\n }\n let nodes = graph.nodes();\n let hasChildren = false;\n for (const node of nodes) {\n const children = graph.children(node);\n hasChildren = hasChildren || children.length > 0;\n }\n if (!hasChildren) {\n log.debug(\"Done, no node has children\", graph.nodes());\n return;\n }\n log.debug(\"Nodes = \", nodes, depth);\n for (const node of nodes) {\n log.debug(\n \"Extracting node\",\n node,\n clusterDb,\n clusterDb.has(node) && !clusterDb.get(node).externalConnections,\n !graph.parent(node),\n graph.node(node),\n graph.children(\"D\"),\n \" Depth \",\n depth\n );\n if (!clusterDb.has(node)) {\n log.debug(\"Not a cluster\", node, depth);\n } else if (clusterDb.get(node)?.clusterData?.explicitDir && graph.children(node) && graph.children(node).length > 0) {\n log.warn(\"Cluster with explicit dir, creating subgraph for children\", node, depth);\n const dir = clusterDb.get(node).clusterData.dir;\n const clusterGraph = new graphlib.Graph({\n multigraph: true,\n compound: true\n }).setGraph({\n rankdir: dir,\n nodesep: 50,\n ranksep: 50,\n marginx: 8,\n marginy: 8\n }).setDefaultEdgeLabel(function() {\n return {};\n });\n copy(node, graph, clusterGraph, node);\n const clusterNodeData = graph.node(node) || {};\n graph.setNode(node, {\n ...clusterNodeData,\n clusterNode: true,\n id: node,\n clusterData: clusterDb.get(node).clusterData,\n label: clusterDb.get(node).label,\n graph: clusterGraph\n });\n log.warn(\n \"Subgraph for cluster with explicit dir created:\",\n node,\n graphlibJson.write(clusterGraph)\n );\n } else if (!clusterDb.get(node).externalConnections && graph.children(node) && graph.children(node).length > 0) {\n log.warn(\n \"Cluster without external connections, without a parent and with children\",\n node,\n depth\n );\n const graphSettings = graph.graph();\n let dir = graphSettings.rankdir === \"TB\" ? \"LR\" : \"TB\";\n if (clusterDb.get(node)?.clusterData?.dir) {\n dir = clusterDb.get(node).clusterData.dir;\n log.warn(\"Fixing dir\", clusterDb.get(node).clusterData.dir, dir);\n }\n const clusterGraph = new graphlib.Graph({\n multigraph: true,\n compound: true\n }).setGraph({\n rankdir: dir,\n nodesep: 50,\n ranksep: 50,\n marginx: 8,\n marginy: 8\n }).setDefaultEdgeLabel(function() {\n return {};\n });\n copy(node, graph, clusterGraph, node);\n const clusterNodeData = graph.node(node) || {};\n graph.setNode(node, {\n ...clusterNodeData,\n clusterNode: true,\n id: node,\n clusterData: clusterDb.get(node).clusterData,\n label: clusterDb.get(node).label,\n graph: clusterGraph\n });\n log.debug(\"Old graph after copy\", graphlibJson.write(graph));\n } else {\n log.warn(\n \"Cluster ** \",\n node,\n \" **not meeting the criteria !externalConnections:\",\n !clusterDb.get(node).externalConnections,\n \" no parent: \",\n !graph.parent(node),\n \" children \",\n graph.children(node) && graph.children(node).length > 0,\n graph.children(\"D\"),\n depth\n );\n log.debug(clusterDb);\n }\n }\n nodes = graph.nodes();\n log.warn(\"New list of nodes\", nodes);\n for (const node of nodes) {\n const data = graph.node(node);\n log.warn(\" Now next level\", node, data);\n if (data?.clusterNode) {\n extractor(data.graph, depth + 1);\n }\n }\n}, \"extractor\");\nvar sorter = /* @__PURE__ */ __name((graph, nodes) => {\n if (nodes.length === 0) {\n return [];\n }\n let result = Object.assign([], nodes);\n nodes.forEach((node) => {\n const children = graph.children(node);\n const sorted = sorter(graph, children);\n result = [...result, ...sorted];\n });\n return result;\n}, \"sorter\");\nvar sortNodesByHierarchy = /* @__PURE__ */ __name((graph) => sorter(graph, graph.children()), \"sortNodesByHierarchy\");\nvar isNodeInExtractableCluster = /* @__PURE__ */ __name((graph, node, rootId) => {\n let parent = graph.parent(node);\n while (parent && parent !== rootId) {\n const cluster = clusterDb.get(parent);\n if (cluster && !cluster.externalConnections) {\n return true;\n }\n parent = graph.parent(parent);\n }\n return false;\n}, \"isNodeInExtractableCluster\");\nvar findSafeAnchorNode = /* @__PURE__ */ __name((graph, clusterId, excludedCluster) => {\n const children = graph.children(clusterId) ?? [];\n for (const child of children) {\n if (child === excludedCluster || isDescendant(child, excludedCluster)) {\n continue;\n }\n const candidate = findNonClusterChild(child, graph, clusterId);\n if (!candidate) {\n continue;\n }\n if (!isNodeInExtractableCluster(graph, candidate, clusterId)) {\n return candidate;\n }\n }\n return null;\n}, \"findSafeAnchorNode\");\n\nexport {\n clusterDb,\n clear,\n findNonClusterChild,\n adjustClustersAndEdges,\n sortNodesByHierarchy\n};\n"],"names":["CLONE_SYMBOLS_FLAG","clone","value","baseClone","write","g","json","writeNodes","writeEdges","_.isUndefined","_.clone","_.map","v","nodeValue","parent","node","e","edgeValue","edge","clusterDb","descendants","parents","clear","__name","isDescendant","id","ancestorId","ancestorDescendants","log","edgeInCluster","clusterId","clusterDescendants","copy","graph","newGraph","rootId","nodes","data","edges","data2","rootDescendants","vIn","wIn","newV","newW","extractDescendants","children","res","child","findCommonEdges","id1","id2","edges1","edges2","edges1Prim","edges2Prim","edgeIn1","findNonClusterChild","reserve","_id","commonEdges","getAnchorId","adjustClustersAndEdges","depth","d1","d2","nonClusterChild","hasDirectOutgoingEdge","isNodeInExtractableCluster","safeAnchor","findSafeAnchorNode","w","graphlibJson.write","extractor","hasChildren","dir","clusterGraph","graphlib.Graph","clusterNodeData","sorter","result","sorted","sortNodesByHierarchy","cluster","excludedCluster","candidate"],"mappings":";;;AAGA,IAAIA,IAAqB;AA4BzB,SAASC,EAAMC,GAAO;AACpB,SAAOC,EAAUD,GAAOF,CAAkB;AAC5C;AC0BA,SAASI,EAAMC,GAAG;AAEhB,MAAIC,IAAO;AAAA,IACT,SAAS;AAAA,MACP,UAAUD,EAAE,WAAU;AAAA,MACtB,YAAYA,EAAE,aAAY;AAAA,MAC1B,UAAUA,EAAE,WAAU;AAAA,IAC5B;AAAA,IACI,OAAOE,EAAWF,CAAC;AAAA,IACnB,OAAOG,EAAWH,CAAC;AAAA,EACvB;AACE,SAAKI,EAAcJ,EAAE,MAAK,CAAE,MAC1BC,EAAK,QAAQI,EAAQL,EAAE,MAAK,CAAE,IAEzBC;AACT;AAQA,SAASC,EAAWF,GAAG;AACrB,SAAOM,EAAMN,EAAE,MAAK,GAAI,SAAUO,GAAG;AACnC,QAAIC,IAAYR,EAAE,KAAKO,CAAC,GACpBE,IAAST,EAAE,OAAOO,CAAC,GAEnBG,IAAO,EAAE,GAAGH,EAAC;AACjB,WAAKH,EAAcI,CAAS,MAC1BE,EAAK,QAAQF,IAEVJ,EAAcK,CAAM,MACvBC,EAAK,SAASD,IAETC;AAAA,EACT,CAAC;AACH;AAQA,SAASP,EAAWH,GAAG;AACrB,SAAOM,EAAMN,EAAE,MAAK,GAAI,SAAUW,GAAG;AACnC,QAAIC,IAAYZ,EAAE,KAAKW,CAAC,GAEpBE,IAAO,EAAE,GAAGF,EAAE,GAAG,GAAGA,EAAE,EAAC;AAC3B,WAAKP,EAAcO,EAAE,IAAI,MACvBE,EAAK,OAAOF,EAAE,OAEXP,EAAcQ,CAAS,MAC1BC,EAAK,QAAQD,IAERC;AAAA,EACT,CAAC;AACH;AC3GG,IAACC,IAA4B,oBAAI,IAAG,GACnCC,IAA8B,oBAAI,IAAG,GACrCC,IAA0B,oBAAI,IAAG,GACjCC,IAAwB,gBAAAC,EAAO,MAAM;AACvC,EAAAH,EAAY,MAAK,GACjBC,EAAQ,MAAK,GACbF,EAAU,MAAK;AACjB,GAAG,OAAO,GACNK,IAA+B,gBAAAD,EAAO,CAACE,GAAIC,MAAe;AAC5D,QAAMC,IAAsBP,EAAY,IAAIM,CAAU,KAAK,CAAA;AAC3D,SAAAE,EAAI,MAAM,mBAAmBF,GAAY,KAAKD,GAAI,OAAOE,EAAoB,SAASF,CAAE,CAAC,GAClFE,EAAoB,SAASF,CAAE;AACxC,GAAG,cAAc,GACbI,IAAgC,gBAAAN,EAAO,CAACL,GAAMY,MAAc;AAC9D,QAAMC,IAAqBX,EAAY,IAAIU,CAAS,KAAK,CAAA;AAGzD,SAFAF,EAAI,KAAK,mBAAmBE,GAAW,QAAQC,CAAkB,GACjEH,EAAI,KAAK,YAAYV,CAAI,GACrBA,EAAK,MAAMY,KAAaZ,EAAK,MAAMY,IAC9B,KAEJC,IAIEA,EAAmB,SAASb,EAAK,CAAC,KAAKM,EAAaN,EAAK,GAAGY,CAAS,KAAKN,EAAaN,EAAK,GAAGY,CAAS,KAAKC,EAAmB,SAASb,EAAK,CAAC,KAHpJU,EAAI,MAAM,UAAUE,GAAW,qBAAqB,GAC7C;AAGX,GAAG,eAAe,GACdE,IAAuB,gBAAAT,EAAO,CAACO,GAAWG,GAAOC,GAAUC,MAAW;AACxE,EAAAP,EAAI;AAAA,IACF;AAAA,IACAE;AAAA,IACA;AAAA,IACAK;AAAA,IACA;AAAA,IACAF,EAAM,KAAKH,CAAS;AAAA,IACpBK;AAAA,EACJ;AACE,QAAMC,IAAQH,EAAM,SAASH,CAAS,KAAK,CAAA;AAC3C,EAAIA,MAAcK,KAChBC,EAAM,KAAKN,CAAS,GAEtBF,EAAI,KAAK,6BAA6BE,GAAW,SAASM,CAAK,GAC/DA,EAAM,QAAQ,CAACrB,MAAS;AACtB,QAAIkB,EAAM,SAASlB,CAAI,EAAE,SAAS;AAChC,MAAAiB,EAAKjB,GAAMkB,GAAOC,GAAUC,CAAM;AAAA,SAC7B;AACL,YAAME,IAAOJ,EAAM,KAAKlB,CAAI;AAC5B,MAAAa,EAAI,KAAK,OAAOb,GAAM,QAAQoB,GAAQ,iBAAiBL,CAAS,GAChEI,EAAS,QAAQnB,GAAMsB,CAAI,GACvBF,MAAWF,EAAM,OAAOlB,CAAI,MAC9Ba,EAAI,KAAK,kBAAkBb,GAAMkB,EAAM,OAAOlB,CAAI,CAAC,GACnDmB,EAAS,UAAUnB,GAAMkB,EAAM,OAAOlB,CAAI,CAAC,IAEzCe,MAAcK,KAAUpB,MAASe,KACnCF,EAAI,MAAM,kBAAkBb,GAAMe,CAAS,GAC3CI,EAAS,UAAUnB,GAAMe,CAAS,MAElCF,EAAI,KAAK,YAAYE,GAAW,QAAQK,GAAQ,QAAQF,EAAM,KAAKH,CAAS,GAAGK,CAAM,GACrFP,EAAI;AAAA,QACF;AAAA,QACAb;AAAA,QACA;AAAA,QACAe,MAAcK;AAAA,QACd;AAAA,QACApB,MAASe;AAAA,MACnB;AAEM,YAAMQ,IAAQL,EAAM,MAAMlB,CAAI;AAC9B,MAAAa,EAAI,MAAM,iBAAiBU,CAAK,GAChCA,EAAM,QAAQ,CAACpB,MAAS;AACtB,QAAAU,EAAI,KAAK,QAAQV,CAAI;AACrB,cAAMqB,IAAQN,EAAM,KAAKf,EAAK,GAAGA,EAAK,GAAGA,EAAK,IAAI;AAClD,QAAAU,EAAI,KAAK,aAAaW,GAAOJ,CAAM;AACnC,YAAI;AACF,cAAIN,EAAcX,GAAMiB,CAAM,GAAG;AAC/B,kBAAMK,IAAkBpB,EAAY,IAAIe,CAAM,KAAK,CAAA,GAC7CM,IAAMD,EAAgB,SAAStB,EAAK,CAAC,KAAKM,EAAaN,EAAK,GAAGiB,CAAM,KAAKjB,EAAK,MAAMiB,GACrFO,IAAMF,EAAgB,SAAStB,EAAK,CAAC,KAAKM,EAAaN,EAAK,GAAGiB,CAAM,KAAKjB,EAAK,MAAMiB;AAC3F,gBAAIM,KAAOC;AACT,cAAAd,EAAI,KAAK,eAAeV,EAAK,GAAGA,EAAK,GAAGqB,GAAOrB,EAAK,IAAI,GACxDgB,EAAS,QAAQhB,EAAK,GAAGA,EAAK,GAAGqB,GAAOrB,EAAK,IAAI,GACjDU,EAAI,KAAK,mBAAmBM,EAAS,MAAK,GAAIA,EAAS,KAAKA,EAAS,QAAQ,CAAC,CAAC,CAAC;AAAA,iBAC3E;AACL,oBAAMS,IAAOF,IAAMN,IAASjB,EAAK,GAC3B0B,IAAOF,IAAMP,IAASjB,EAAK;AACjC,cAAAU,EAAI,KAAK,qCAAqCe,GAAMC,GAAML,GAAOrB,EAAK,IAAI,GAC1Ee,EAAM,QAAQU,GAAMC,GAAML,GAAOrB,EAAK,IAAI;AAAA,YAC5C;AAAA,UACF;AACE,YAAAU,EAAI;AAAA,cACF;AAAA,cACAV,EAAK;AAAA,cACL;AAAA,cACAA,EAAK;AAAA,cACL;AAAA,cACAiB;AAAA,cACA;AAAA,cACAL;AAAA,YACd;AAAA,QAEQ,SAASd,GAAG;AACV,UAAAY,EAAI,MAAMZ,CAAC;AAAA,QACb;AAAA,MACF,CAAC;AAAA,IACH;AACA,IAAAY,EAAI,MAAM,iBAAiBb,CAAI,GAC/BkB,EAAM,WAAWlB,CAAI;AAAA,EACvB,CAAC;AACH,GAAG,MAAM,GACL8B,IAAqC,gBAAAtB,EAAO,CAACE,GAAIQ,MAAU;AAC7D,QAAMa,IAAWb,EAAM,SAASR,CAAE;AAClC,MAAIsB,IAAM,CAAC,GAAGD,CAAQ;AACtB,aAAWE,KAASF;AAClB,IAAAzB,EAAQ,IAAI2B,GAAOvB,CAAE,GACrBsB,IAAM,CAAC,GAAGA,GAAK,GAAGF,EAAmBG,GAAOf,CAAK,CAAC;AAEpD,SAAOc;AACT,GAAG,oBAAoB,GACnBE,IAAkC,gBAAA1B,EAAO,CAACU,GAAOiB,GAAKC,MAAQ;AAChE,QAAMC,IAASnB,EAAM,MAAK,EAAG,OAAO,CAACf,MAASA,EAAK,MAAMgC,KAAOhC,EAAK,MAAMgC,CAAG,GACxEG,IAASpB,EAAM,MAAK,EAAG,OAAO,CAACf,MAASA,EAAK,MAAMiC,KAAOjC,EAAK,MAAMiC,CAAG,GACxEG,IAAaF,EAAO,IAAI,CAAClC,OACtB,EAAE,GAAGA,EAAK,MAAMgC,IAAMC,IAAMjC,EAAK,GAAG,GAAGA,EAAK,MAAMgC,IAAMA,IAAMhC,EAAK,EAAC,EAC5E,GACKqC,IAAaF,EAAO,IAAI,CAACnC,OACtB,EAAE,GAAGA,EAAK,GAAG,GAAGA,EAAK,EAAC,EAC9B;AAID,SAHeoC,EAAW,OAAO,CAACE,MACzBD,EAAW,KAAK,CAACrC,MAASsC,EAAQ,MAAMtC,EAAK,KAAKsC,EAAQ,MAAMtC,EAAK,CAAC,CAC9E;AAEH,GAAG,iBAAiB,GAChBuC,IAAsC,gBAAAlC,EAAO,CAACE,GAAIQ,GAAOH,MAAc;AACzE,QAAMgB,IAAWb,EAAM,SAASR,CAAE;AAElC,MADAG,EAAI,MAAM,6BAA6BH,GAAIqB,CAAQ,GAC/CA,EAAS,SAAS;AACpB,WAAOrB;AAET,MAAIiC;AACJ,aAAWV,KAASF,GAAU;AAC5B,UAAMa,IAAMF,EAAoBT,GAAOf,GAAOH,CAAS,GACjD8B,IAAcX,EAAgBhB,GAAOH,GAAW6B,CAAG;AACzD,QAAIA;AACF,UAAIC,EAAY,SAAS;AACvB,QAAAF,IAAUC;AAAA;AAEV,eAAOA;AAAA,EAGb;AACA,SAAOD;AACT,GAAG,qBAAqB,GACpBG,IAA8B,gBAAAtC,EAAO,CAACE,MACpC,CAACN,EAAU,IAAIM,CAAE,KAGjB,CAACN,EAAU,IAAIM,CAAE,EAAE,sBACdA,IAELN,EAAU,IAAIM,CAAE,IACXN,EAAU,IAAIM,CAAE,EAAE,KAEpBA,GACN,aAAa,GACZqC,IAAyC,gBAAAvC,EAAO,CAACU,GAAO8B,MAAU;AACpE,MAAI,CAAC9B,KAAS8B,IAAQ,IAAI;AACxB,IAAAnC,EAAI,MAAM,uBAAuB;AACjC;AAAA,EACF;AACE,IAAAA,EAAI,MAAM,mBAAmB;AAE/B,EAAAK,EAAM,MAAK,EAAG,QAAQ,SAASR,GAAI;AAEjC,IADiBQ,EAAM,SAASR,CAAE,EACrB,SAAS,MACpBG,EAAI;AAAA,MACF;AAAA,MACAH;AAAA,MACA;AAAA,MACAgC,EAAoBhC,GAAIQ,GAAOR,CAAE;AAAA,IACzC,GACML,EAAY,IAAIK,GAAIoB,EAAmBpB,GAAIQ,CAAK,CAAC,GACjDd,EAAU,IAAIM,GAAI,EAAE,IAAIgC,EAAoBhC,GAAIQ,GAAOR,CAAE,GAAG,aAAaQ,EAAM,KAAKR,CAAE,EAAC,CAAE;AAAA,EAE7F,CAAC,GACDQ,EAAM,MAAK,EAAG,QAAQ,SAASR,GAAI;AACjC,UAAMqB,IAAWb,EAAM,SAASR,CAAE,GAC5Ba,IAAQL,EAAM,MAAK;AACzB,IAAIa,EAAS,SAAS,KACpBlB,EAAI,MAAM,sBAAsBH,GAAIL,CAAW,GAC/CkB,EAAM,QAAQ,CAACpB,MAAS;AACtB,YAAM8C,IAAKxC,EAAaN,EAAK,GAAGO,CAAE,GAC5BwC,IAAKzC,EAAaN,EAAK,GAAGO,CAAE;AAClC,MAAIuC,IAAKC,MACPrC,EAAI,KAAK,UAAUV,GAAM,oBAAoBO,CAAE,GAC/CG,EAAI,KAAK,uBAAuBH,GAAI,MAAML,EAAY,IAAIK,CAAE,CAAC,GAC7DN,EAAU,IAAIM,CAAE,EAAE,sBAAsB;AAAA,IAE5C,CAAC,KAEDG,EAAI,MAAM,kBAAkBH,GAAIL,CAAW;AAAA,EAE/C,CAAC;AACD,WAASK,KAAMN,EAAU,QAAQ;AAC/B,UAAM+C,IAAkB/C,EAAU,IAAIM,CAAE,EAAE,IACpCX,IAASmB,EAAM,OAAOiC,CAAe;AAC3C,IAAIpD,MAAWW,KAAMN,EAAU,IAAIL,CAAM,KAAK,CAACK,EAAU,IAAIL,CAAM,EAAE,wBACnEK,EAAU,IAAIM,CAAE,EAAE,KAAKX;AAEzB,UAAMqD,IAAwBlC,EAAM,QAAQ,KAAK,CAACf,MAASA,EAAK,MAAMO,CAAE;AACxE,QAAIyC,KAAmB/C,EAAU,IAAIM,CAAE,GAAG,uBAAuB0C,KAAyBC,EAA2BnC,GAAOiC,GAAiBzC,CAAE,GAAG;AAChJ,YAAM4C,IAAaC,EAAmBrC,GAAOR,GAAIQ,EAAM,OAAOiC,CAAe,CAAC;AAC9E,MAAIG,MACFlD,EAAU,IAAIM,CAAE,EAAE,KAAK4C;AAAA,IAE3B;AAAA,EACF;AACA,EAAApC,EAAM,MAAK,EAAG,QAAQ,SAASjB,GAAG;AAChC,UAAME,IAAOe,EAAM,KAAKjB,CAAC;AACzB,IAAAY,EAAI,KAAK,UAAUZ,EAAE,IAAI,SAASA,EAAE,IAAI,OAAO,KAAK,UAAUA,CAAC,CAAC,GAChEY,EAAI,KAAK,UAAUZ,EAAE,IAAI,SAASA,EAAE,IAAI,OAAO,KAAK,UAAUiB,EAAM,KAAKjB,CAAC,CAAC,CAAC;AAC5E,QAAIJ,IAAII,EAAE,GACNuD,IAAIvD,EAAE;AAYV,QAXAY,EAAI;AAAA,MACF;AAAA,MACAT;AAAA,MACA;AAAA,MACAH,EAAE;AAAA,MACFA,EAAE;AAAA,MACF;AAAA,MACAG,EAAU,IAAIH,EAAE,CAAC;AAAA,MACjB;AAAA,MACAG,EAAU,IAAIH,EAAE,CAAC;AAAA,IACvB,GACQG,EAAU,IAAIH,EAAE,CAAC,KAAKG,EAAU,IAAIH,EAAE,CAAC,GAAG;AAK5C,UAJAY,EAAI,KAAK,oCAAoCZ,EAAE,GAAGA,EAAE,GAAGA,EAAE,IAAI,GAC7DJ,IAAIiD,EAAY7C,EAAE,CAAC,GACnBuD,IAAIV,EAAY7C,EAAE,CAAC,GACnBiB,EAAM,WAAWjB,EAAE,GAAGA,EAAE,GAAGA,EAAE,IAAI,GAC7BJ,MAAMI,EAAE,GAAG;AACb,cAAMF,IAASmB,EAAM,OAAOrB,CAAC;AAC7B,QAAAO,EAAU,IAAIL,CAAM,EAAE,sBAAsB,IAC5CI,EAAK,cAAcF,EAAE;AAAA,MACvB;AACA,UAAIuD,MAAMvD,EAAE,GAAG;AACb,cAAMF,IAASmB,EAAM,OAAOsC,CAAC;AAC7B,QAAApD,EAAU,IAAIL,CAAM,EAAE,sBAAsB,IAC5CI,EAAK,YAAYF,EAAE;AAAA,MACrB;AACA,MAAAY,EAAI,KAAK,0BAA0BhB,GAAG2D,GAAGvD,EAAE,IAAI,GAC/CiB,EAAM,QAAQrB,GAAG2D,GAAGrD,GAAMF,EAAE,IAAI;AAAA,IAClC;AAAA,EACF,CAAC,GACDY,EAAI,KAAK,kBAAkB4C,EAAmBvC,CAAK,CAAC,GACpDwC,EAAUxC,GAAO,CAAC,GAClBL,EAAI,MAAMT,CAAS;AACrB,GAAG,wBAAwB,GACvBsD,IAA4B,gBAAAlD,EAAO,CAACU,GAAO8B,MAAU;AAEvD,MADAnC,EAAI,KAAK,gBAAgBmC,GAAOS,EAAmBvC,CAAK,GAAGA,EAAM,SAAS,GAAG,CAAC,GAC1E8B,IAAQ,IAAI;AACd,IAAAnC,EAAI,MAAM,aAAa;AACvB;AAAA,EACF;AACA,MAAIQ,IAAQH,EAAM,MAAK,GACnByC,IAAc;AAClB,aAAW3D,KAAQqB,GAAO;AACxB,UAAMU,IAAWb,EAAM,SAASlB,CAAI;AACpC,IAAA2D,IAAcA,KAAe5B,EAAS,SAAS;AAAA,EACjD;AACA,MAAI,CAAC4B,GAAa;AAChB,IAAA9C,EAAI,MAAM,8BAA8BK,EAAM,MAAK,CAAE;AACrD;AAAA,EACF;AACA,EAAAL,EAAI,MAAM,YAAYQ,GAAO2B,CAAK;AAClC,aAAWhD,KAAQqB;AAYjB,QAXAR,EAAI;AAAA,MACF;AAAA,MACAb;AAAA,MACAI;AAAA,MACAA,EAAU,IAAIJ,CAAI,KAAK,CAACI,EAAU,IAAIJ,CAAI,EAAE;AAAA,MAC5C,CAACkB,EAAM,OAAOlB,CAAI;AAAA,MAClBkB,EAAM,KAAKlB,CAAI;AAAA,MACfkB,EAAM,SAAS,GAAG;AAAA,MAClB;AAAA,MACA8B;AAAA,IACN,GACQ,CAAC5C,EAAU,IAAIJ,CAAI;AACrB,MAAAa,EAAI,MAAM,iBAAiBb,GAAMgD,CAAK;AAAA,aAC7B5C,EAAU,IAAIJ,CAAI,GAAG,aAAa,eAAekB,EAAM,SAASlB,CAAI,KAAKkB,EAAM,SAASlB,CAAI,EAAE,SAAS,GAAG;AACnH,MAAAa,EAAI,KAAK,6DAA6Db,GAAMgD,CAAK;AACjF,YAAMY,IAAMxD,EAAU,IAAIJ,CAAI,EAAE,YAAY,KACtC6D,IAAe,IAAIC,EAAe;AAAA,QACtC,YAAY;AAAA,QACZ,UAAU;AAAA,MAClB,CAAO,EAAE,SAAS;AAAA,QACV,SAASF;AAAA,QACT,SAAS;AAAA,QACT,SAAS;AAAA,QACT,SAAS;AAAA,QACT,SAAS;AAAA,MACjB,CAAO,EAAE,oBAAoB,WAAW;AAChC,eAAO,CAAA;AAAA,MACT,CAAC;AACD,MAAA3C,EAAKjB,GAAMkB,GAAO2C,GAAc7D,CAAI;AACpC,YAAM+D,IAAkB7C,EAAM,KAAKlB,CAAI,KAAK,CAAA;AAC5C,MAAAkB,EAAM,QAAQlB,GAAM;AAAA,QAClB,GAAG+D;AAAA,QACH,aAAa;AAAA,QACb,IAAI/D;AAAA,QACJ,aAAaI,EAAU,IAAIJ,CAAI,EAAE;AAAA,QACjC,OAAOI,EAAU,IAAIJ,CAAI,EAAE;AAAA,QAC3B,OAAO6D;AAAA,MACf,CAAO,GACDhD,EAAI;AAAA,QACF;AAAA,QACAb;AAAA,QACAyD,EAAmBI,CAAY;AAAA,MACvC;AAAA,IACI,WAAW,CAACzD,EAAU,IAAIJ,CAAI,EAAE,uBAAuBkB,EAAM,SAASlB,CAAI,KAAKkB,EAAM,SAASlB,CAAI,EAAE,SAAS,GAAG;AAC9G,MAAAa,EAAI;AAAA,QACF;AAAA,QACAb;AAAA,QACAgD;AAAA,MACR;AAEM,UAAIY,IADkB1C,EAAM,MAAK,EACT,YAAY,OAAO,OAAO;AAClD,MAAId,EAAU,IAAIJ,CAAI,GAAG,aAAa,QACpC4D,IAAMxD,EAAU,IAAIJ,CAAI,EAAE,YAAY,KACtCa,EAAI,KAAK,cAAcT,EAAU,IAAIJ,CAAI,EAAE,YAAY,KAAK4D,CAAG;AAEjE,YAAMC,IAAe,IAAIC,EAAe;AAAA,QACtC,YAAY;AAAA,QACZ,UAAU;AAAA,MAClB,CAAO,EAAE,SAAS;AAAA,QACV,SAASF;AAAA,QACT,SAAS;AAAA,QACT,SAAS;AAAA,QACT,SAAS;AAAA,QACT,SAAS;AAAA,MACjB,CAAO,EAAE,oBAAoB,WAAW;AAChC,eAAO,CAAA;AAAA,MACT,CAAC;AACD,MAAA3C,EAAKjB,GAAMkB,GAAO2C,GAAc7D,CAAI;AACpC,YAAM+D,IAAkB7C,EAAM,KAAKlB,CAAI,KAAK,CAAA;AAC5C,MAAAkB,EAAM,QAAQlB,GAAM;AAAA,QAClB,GAAG+D;AAAA,QACH,aAAa;AAAA,QACb,IAAI/D;AAAA,QACJ,aAAaI,EAAU,IAAIJ,CAAI,EAAE;AAAA,QACjC,OAAOI,EAAU,IAAIJ,CAAI,EAAE;AAAA,QAC3B,OAAO6D;AAAA,MACf,CAAO,GACDhD,EAAI,MAAM,wBAAwB4C,EAAmBvC,CAAK,CAAC;AAAA,IAC7D;AACE,MAAAL,EAAI;AAAA,QACF;AAAA,QACAb;AAAA,QACA;AAAA,QACA,CAACI,EAAU,IAAIJ,CAAI,EAAE;AAAA,QACrB;AAAA,QACA,CAACkB,EAAM,OAAOlB,CAAI;AAAA,QAClB;AAAA,QACAkB,EAAM,SAASlB,CAAI,KAAKkB,EAAM,SAASlB,CAAI,EAAE,SAAS;AAAA,QACtDkB,EAAM,SAAS,GAAG;AAAA,QAClB8B;AAAA,MACR,GACMnC,EAAI,MAAMT,CAAS;AAGvB,EAAAiB,IAAQH,EAAM,MAAK,GACnBL,EAAI,KAAK,qBAAqBQ,CAAK;AACnC,aAAWrB,KAAQqB,GAAO;AACxB,UAAMC,IAAOJ,EAAM,KAAKlB,CAAI;AAC5B,IAAAa,EAAI,KAAK,mBAAmBb,GAAMsB,CAAI,GAClCA,GAAM,eACRoC,EAAUpC,EAAK,OAAO0B,IAAQ,CAAC;AAAA,EAEnC;AACF,GAAG,WAAW,GACVgB,IAAyB,gBAAAxD,EAAO,CAACU,GAAOG,MAAU;AACpD,MAAIA,EAAM,WAAW;AACnB,WAAO,CAAA;AAET,MAAI4C,IAAS,OAAO,OAAO,CAAA,GAAI5C,CAAK;AACpC,SAAAA,EAAM,QAAQ,CAACrB,MAAS;AACtB,UAAM+B,IAAWb,EAAM,SAASlB,CAAI,GAC9BkE,IAASF,EAAO9C,GAAOa,CAAQ;AACrC,IAAAkC,IAAS,CAAC,GAAGA,GAAQ,GAAGC,CAAM;AAAA,EAChC,CAAC,GACMD;AACT,GAAG,QAAQ,GACPE,IAAuC,gBAAA3D,EAAO,CAACU,MAAU8C,EAAO9C,GAAOA,EAAM,SAAQ,CAAE,GAAG,sBAAsB,GAChHmC,IAA6C,gBAAA7C,EAAO,CAACU,GAAOlB,GAAMoB,MAAW;AAC/E,MAAIrB,IAASmB,EAAM,OAAOlB,CAAI;AAC9B,SAAOD,KAAUA,MAAWqB,KAAQ;AAClC,UAAMgD,IAAUhE,EAAU,IAAIL,CAAM;AACpC,QAAIqE,KAAW,CAACA,EAAQ;AACtB,aAAO;AAET,IAAArE,IAASmB,EAAM,OAAOnB,CAAM;AAAA,EAC9B;AACA,SAAO;AACT,GAAG,4BAA4B,GAC3BwD,IAAqC,gBAAA/C,EAAO,CAACU,GAAOH,GAAWsD,MAAoB;AACrF,QAAMtC,IAAWb,EAAM,SAASH,CAAS,KAAK,CAAA;AAC9C,aAAWkB,KAASF,GAAU;AAC5B,QAAIE,MAAUoC,KAAmB5D,EAAawB,GAAOoC,CAAe;AAClE;AAEF,UAAMC,IAAY5B,EAAoBT,GAAOf,GAAOH,CAAS;AAC7D,QAAKuD,KAGD,CAACjB,EAA2BnC,GAAOoD,GAAWvD,CAAS;AACzD,aAAOuD;AAAA,EAEX;AACA,SAAO;AACT,GAAG,oBAAoB;","x_google_ignoreList":[0,1,2]}
1
+ {"version":3,"file":"chunk-RYQCIY6F-CSpf1fBI.js","sources":["../../../node_modules/.pnpm/lodash-es@4.18.1/node_modules/lodash-es/clone.js","../../../node_modules/.pnpm/dagre-d3-es@7.0.14/node_modules/dagre-d3-es/src/graphlib/json.js","../../../node_modules/.pnpm/mermaid@11.16.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-RYQCIY6F.mjs"],"sourcesContent":["import baseClone from './_baseClone.js';\n\n/** Used to compose bitmasks for cloning. */\nvar CLONE_SYMBOLS_FLAG = 4;\n\n/**\n * Creates a shallow clone of `value`.\n *\n * **Note:** This method is loosely based on the\n * [structured clone algorithm](https://mdn.io/Structured_clone_algorithm)\n * and supports cloning arrays, array buffers, booleans, date objects, maps,\n * numbers, `Object` objects, regexes, sets, strings, symbols, and typed\n * arrays. The own enumerable properties of `arguments` objects are cloned\n * as plain objects. An empty object is returned for uncloneable values such\n * as error objects, functions, DOM nodes, and WeakMaps.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to clone.\n * @returns {*} Returns the cloned value.\n * @see _.cloneDeep\n * @example\n *\n * var objects = [{ 'a': 1 }, { 'b': 2 }];\n *\n * var shallow = _.clone(objects);\n * console.log(shallow[0] === objects[0]);\n * // => true\n */\nfunction clone(value) {\n return baseClone(value, CLONE_SYMBOLS_FLAG);\n}\n\nexport default clone;\n","import * as _ from 'lodash-es';\nimport { Graph } from './graph.js';\n\n/**\n * @import { NodeID, EdgeObj, GraphOptions } from './graph.js';\n */\n\nexport { write, read };\n\n/**\n * @template [GraphLabel=any] - Label of the graph.\n * @template [NodeLabel=any] - Label of a node.\n * @template [EdgeLabel=any] - Label of an edge.\n *\n * @typedef {object} GraphJSON\n * @property {Required<GraphOptions>} options - The options used to create the graph.\n * @property {Array<{ v: NodeID; value?: NodeLabel; parent?: NodeID }>} nodes - The nodes in the graph.\n * @property {Array<EdgeObj & { value?: EdgeLabel }>} edges - The edges in the graph.\n * @property {GraphLabel} [value] - The graph's value, if any.\n */\n\n/**\n * Creates a JSON representation of the graph that can be serialized to a\n * string with\n * [JSON.stringify](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify).\n * The graph can later be restored using {@link read}.\n *\n * @example\n *\n * ```js\n * var g = new graphlib.Graph();\n * g.setNode(\"a\", { label: \"node a\" });\n * g.setNode(\"b\", { label: \"node b\" });\n * g.setEdge(\"a\", \"b\", { label: \"edge a->b\" });\n * graphlib.json.write(g);\n * // Returns the object:\n * //\n * // {\n * // \"options\": {\n * // \"directed\": true,\n * // \"multigraph\": false,\n * // \"compound\": false\n * // },\n * // \"nodes\": [\n * // { \"v\": \"a\", \"value\": { \"label\": \"node a\" } },\n * // { \"v\": \"b\", \"value\": { \"label\": \"node b\" } }\n * // ],\n * // \"edges\": [\n * // { \"v\": \"a\", \"w\": \"b\", \"value\": { \"label\": \"edge a->b\" } }\n * // ]\n * // }\n * ```\n *\n * @template [GraphLabel=any] - Label of the graph.\n * @template [NodeLabel=any] - Label of a node.\n * @template [EdgeLabel=any] - Label of an edge.\n * @param {Graph<GraphLabel, NodeLabel, EdgeLabel>} g - The graph to serialize.\n * @returns {GraphJSON<GraphLabel, NodeLabel, EdgeLabel>} The JSON representation of the graph.\n */\nfunction write(g) {\n /** @type {GraphJSON<GraphLabel, NodeLabel, EdgeLabel>} */\n var json = {\n options: {\n directed: g.isDirected(),\n multigraph: g.isMultigraph(),\n compound: g.isCompound(),\n },\n nodes: writeNodes(g),\n edges: writeEdges(g),\n };\n if (!_.isUndefined(g.graph())) {\n json.value = _.clone(g.graph());\n }\n return json;\n}\n\n/**\n * @template NodeLabel - Label of a node.\n *\n * @param {Graph<unknown, NodeLabel, unknown>} g - The graph to serialize.\n * @returns {Array<{ v: NodeID; value?: NodeLabel; parent?: NodeID }>} The nodes in the graph.\n */\nfunction writeNodes(g) {\n return _.map(g.nodes(), function (v) {\n var nodeValue = g.node(v);\n var parent = g.parent(v);\n /** @type {{ v: NodeID; value?: NodeLabel; parent?: NodeID }} */\n var node = { v: v };\n if (!_.isUndefined(nodeValue)) {\n node.value = nodeValue;\n }\n if (!_.isUndefined(parent)) {\n node.parent = parent;\n }\n return node;\n });\n}\n\n/**\n * @template EdgeLabel - Label of a node.\n *\n * @param {Graph<unknown, unknown, EdgeLabel>} g - The graph to serialize.\n * @returns {Array<EdgeObj & { value?: EdgeLabel }>} The edges in the graph.\n */\nfunction writeEdges(g) {\n return _.map(g.edges(), function (e) {\n var edgeValue = g.edge(e);\n /** @type {EdgeObj & { value?: EdgeLabel }} */\n var edge = { v: e.v, w: e.w };\n if (!_.isUndefined(e.name)) {\n edge.name = e.name;\n }\n if (!_.isUndefined(edgeValue)) {\n edge.value = edgeValue;\n }\n return edge;\n });\n}\n\n/**\n * Takes JSON as input and returns the graph representation.\n *\n * @example\n *\n * For example, if we have serialized the graph in {@link write}\n * to a string named `str`, we can restore it to a graph as follows:\n *\n * ```js\n * var g2 = graphlib.json.read(JSON.parse(str));\n * // or, in order to copy the graph\n * var g3 = graphlib.json.read(graphlib.json.write(g))\n *\n * g2.nodes();\n * // ['a', 'b']\n * g2.edges()\n * // [ { v: 'a', w: 'b' } ]\n * ```\n *\n * @template [GraphLabel=any] - Label of the graph.\n * @template [NodeLabel=any] - Label of a node.\n * @template [EdgeLabel=any] - Label of an edge.\n * @param {GraphJSON<GraphLabel, NodeLabel, EdgeLabel>} json - The JSON representation of the graph.\n * @returns {Graph<GraphLabel, NodeLabel, EdgeLabel>} The restored graph.\n */\nfunction read(json) {\n var g = new Graph(json.options).setGraph(json.value);\n _.each(json.nodes, function (entry) {\n g.setNode(entry.v, entry.value);\n if (entry.parent) {\n g.setParent(entry.v, entry.parent);\n }\n });\n _.each(json.edges, function (entry) {\n g.setEdge({ v: entry.v, w: entry.w, name: entry.name }, entry.value);\n });\n return g;\n}\n","import {\n log\n} from \"./chunk-X3CZISLH.mjs\";\nimport {\n __name\n} from \"./chunk-Y2CYZVJY.mjs\";\n\n// src/rendering-util/layout-algorithms/dagre/mermaid-graphlib.js\nimport * as graphlib from \"dagre-d3-es/src/graphlib/index.js\";\nimport * as graphlibJson from \"dagre-d3-es/src/graphlib/json.js\";\nvar clusterDb = /* @__PURE__ */ new Map();\nvar descendants = /* @__PURE__ */ new Map();\nvar parents = /* @__PURE__ */ new Map();\nvar clear = /* @__PURE__ */ __name(() => {\n descendants.clear();\n parents.clear();\n clusterDb.clear();\n}, \"clear\");\nvar isDescendant = /* @__PURE__ */ __name((id, ancestorId) => {\n const ancestorDescendants = descendants.get(ancestorId) || [];\n log.trace(\"In isDescendant\", ancestorId, \" \", id, \" = \", ancestorDescendants.includes(id));\n return ancestorDescendants.includes(id);\n}, \"isDescendant\");\nvar edgeInCluster = /* @__PURE__ */ __name((edge, clusterId) => {\n const clusterDescendants = descendants.get(clusterId) || [];\n log.info(\"Descendants of \", clusterId, \" is \", clusterDescendants);\n log.info(\"Edge is \", edge);\n if (edge.v === clusterId || edge.w === clusterId) {\n return false;\n }\n if (!clusterDescendants) {\n log.debug(\"Tilt, \", clusterId, \",not in descendants\");\n return false;\n }\n return clusterDescendants.includes(edge.v) || isDescendant(edge.v, clusterId) || isDescendant(edge.w, clusterId) || clusterDescendants.includes(edge.w);\n}, \"edgeInCluster\");\nvar copy = /* @__PURE__ */ __name((clusterId, graph, newGraph, rootId) => {\n log.warn(\n \"Copying children of \",\n clusterId,\n \"root\",\n rootId,\n \"data\",\n graph.node(clusterId),\n rootId\n );\n const nodes = graph.children(clusterId) || [];\n if (clusterId !== rootId) {\n nodes.push(clusterId);\n }\n log.warn(\"Copying (nodes) clusterId\", clusterId, \"nodes\", nodes);\n nodes.forEach((node) => {\n if (graph.children(node).length > 0) {\n copy(node, graph, newGraph, rootId);\n } else {\n const data = graph.node(node);\n log.info(\"cp \", node, \" to \", rootId, \" with parent \", clusterId);\n newGraph.setNode(node, data);\n if (rootId !== graph.parent(node)) {\n log.warn(\"Setting parent\", node, graph.parent(node));\n newGraph.setParent(node, graph.parent(node));\n }\n if (clusterId !== rootId && node !== clusterId) {\n log.debug(\"Setting parent\", node, clusterId);\n newGraph.setParent(node, clusterId);\n } else {\n log.info(\"In copy \", clusterId, \"root\", rootId, \"data\", graph.node(clusterId), rootId);\n log.debug(\n \"Not Setting parent for node=\",\n node,\n \"cluster!==rootId\",\n clusterId !== rootId,\n \"node!==clusterId\",\n node !== clusterId\n );\n }\n const edges = graph.edges(node);\n log.debug(\"Copying Edges\", edges);\n edges.forEach((edge) => {\n log.info(\"Edge\", edge);\n const data2 = graph.edge(edge.v, edge.w, edge.name);\n log.info(\"Edge data\", data2, rootId);\n try {\n if (edgeInCluster(edge, rootId)) {\n const rootDescendants = descendants.get(rootId) || [];\n const vIn = rootDescendants.includes(edge.v) || isDescendant(edge.v, rootId) || edge.v === rootId;\n const wIn = rootDescendants.includes(edge.w) || isDescendant(edge.w, rootId) || edge.w === rootId;\n if (vIn && wIn) {\n log.info(\"Copying as \", edge.v, edge.w, data2, edge.name);\n newGraph.setEdge(edge.v, edge.w, data2, edge.name);\n log.info(\"newGraph edges \", newGraph.edges(), newGraph.edge(newGraph.edges()[0]));\n } else {\n const newV = vIn ? rootId : edge.v;\n const newW = wIn ? rootId : edge.w;\n log.info(\"Rebinding cross-boundary edge as \", newV, newW, data2, edge.name);\n graph.setEdge(newV, newW, data2, edge.name);\n }\n } else {\n log.info(\n \"Skipping copy of edge \",\n edge.v,\n \"-->\",\n edge.w,\n \" rootId: \",\n rootId,\n \" clusterId:\",\n clusterId\n );\n }\n } catch (e) {\n log.error(e);\n }\n });\n }\n log.debug(\"Removing node\", node);\n graph.removeNode(node);\n });\n}, \"copy\");\nvar extractDescendants = /* @__PURE__ */ __name((id, graph) => {\n const children = graph.children(id);\n let res = [...children];\n for (const child of children) {\n parents.set(child, id);\n res = [...res, ...extractDescendants(child, graph)];\n }\n return res;\n}, \"extractDescendants\");\nvar findCommonEdges = /* @__PURE__ */ __name((graph, id1, id2) => {\n const edges1 = graph.edges().filter((edge) => edge.v === id1 || edge.w === id1);\n const edges2 = graph.edges().filter((edge) => edge.v === id2 || edge.w === id2);\n const edges1Prim = edges1.map((edge) => {\n return { v: edge.v === id1 ? id2 : edge.v, w: edge.w === id1 ? id1 : edge.w };\n });\n const edges2Prim = edges2.map((edge) => {\n return { v: edge.v, w: edge.w };\n });\n const result = edges1Prim.filter((edgeIn1) => {\n return edges2Prim.some((edge) => edgeIn1.v === edge.v && edgeIn1.w === edge.w);\n });\n return result;\n}, \"findCommonEdges\");\nvar findNonClusterChild = /* @__PURE__ */ __name((id, graph, clusterId) => {\n const children = graph.children(id);\n log.trace(\"Searching children of id \", id, children);\n if (children.length < 1) {\n return id;\n }\n let reserve;\n for (const child of children) {\n const _id = findNonClusterChild(child, graph, clusterId);\n const commonEdges = findCommonEdges(graph, clusterId, _id);\n if (_id) {\n if (commonEdges.length > 0) {\n reserve = _id;\n } else {\n return _id;\n }\n }\n }\n return reserve;\n}, \"findNonClusterChild\");\nvar getAnchorId = /* @__PURE__ */ __name((id) => {\n if (!clusterDb.has(id)) {\n return id;\n }\n if (!clusterDb.get(id).externalConnections) {\n return id;\n }\n if (clusterDb.has(id)) {\n return clusterDb.get(id).id;\n }\n return id;\n}, \"getAnchorId\");\nvar adjustClustersAndEdges = /* @__PURE__ */ __name((graph, depth) => {\n if (!graph || depth > 10) {\n log.debug(\"Opting out, no graph \");\n return;\n } else {\n log.debug(\"Opting in, graph \");\n }\n graph.nodes().forEach(function(id) {\n const children = graph.children(id);\n if (children.length > 0) {\n log.warn(\n \"Cluster identified\",\n id,\n \" Replacement id in edges: \",\n findNonClusterChild(id, graph, id)\n );\n descendants.set(id, extractDescendants(id, graph));\n clusterDb.set(id, { id: findNonClusterChild(id, graph, id), clusterData: graph.node(id) });\n }\n });\n graph.nodes().forEach(function(id) {\n const children = graph.children(id);\n const edges = graph.edges();\n if (children.length > 0) {\n log.debug(\"Cluster identified\", id, descendants);\n edges.forEach((edge) => {\n const d1 = isDescendant(edge.v, id);\n const d2 = isDescendant(edge.w, id);\n if (d1 ^ d2) {\n log.warn(\"Edge: \", edge, \" leaves cluster \", id);\n log.warn(\"Descendants of XXX \", id, \": \", descendants.get(id));\n clusterDb.get(id).externalConnections = true;\n }\n });\n } else {\n log.debug(\"Not a cluster \", id, descendants);\n }\n });\n for (let id of clusterDb.keys()) {\n const nonClusterChild = clusterDb.get(id).id;\n const parent = graph.parent(nonClusterChild);\n if (parent !== id && clusterDb.has(parent) && !clusterDb.get(parent).externalConnections) {\n clusterDb.get(id).id = parent;\n }\n const hasDirectOutgoingEdge = graph.edges().some((edge) => edge.v === id);\n if (nonClusterChild && clusterDb.get(id)?.externalConnections && hasDirectOutgoingEdge && isNodeInExtractableCluster(graph, nonClusterChild, id)) {\n const safeAnchor = findSafeAnchorNode(graph, id, graph.parent(nonClusterChild));\n if (safeAnchor) {\n clusterDb.get(id).id = safeAnchor;\n }\n }\n }\n graph.edges().forEach(function(e) {\n const edge = graph.edge(e);\n log.warn(\"Edge \" + e.v + \" -> \" + e.w + \": \" + JSON.stringify(e));\n log.warn(\"Edge \" + e.v + \" -> \" + e.w + \": \" + JSON.stringify(graph.edge(e)));\n let v = e.v;\n let w = e.w;\n log.warn(\n \"Fix XXX\",\n clusterDb,\n \"ids:\",\n e.v,\n e.w,\n \"Translating: \",\n clusterDb.get(e.v),\n \" --- \",\n clusterDb.get(e.w)\n );\n if (clusterDb.get(e.v) || clusterDb.get(e.w)) {\n log.warn(\"Fixing and trying - removing XXX\", e.v, e.w, e.name);\n v = getAnchorId(e.v);\n w = getAnchorId(e.w);\n graph.removeEdge(e.v, e.w, e.name);\n if (v !== e.v) {\n const parent = graph.parent(v);\n clusterDb.get(parent).externalConnections = true;\n edge.fromCluster = e.v;\n }\n if (w !== e.w) {\n const parent = graph.parent(w);\n clusterDb.get(parent).externalConnections = true;\n edge.toCluster = e.w;\n }\n log.warn(\"Fix Replacing with XXX\", v, w, e.name);\n graph.setEdge(v, w, edge, e.name);\n }\n });\n log.warn(\"Adjusted Graph\", graphlibJson.write(graph));\n extractor(graph, 0);\n log.trace(clusterDb);\n}, \"adjustClustersAndEdges\");\nvar extractor = /* @__PURE__ */ __name((graph, depth) => {\n log.warn(\"extractor - \", depth, graphlibJson.write(graph), graph.children(\"D\"));\n if (depth > 10) {\n log.error(\"Bailing out\");\n return;\n }\n let nodes = graph.nodes();\n let hasChildren = false;\n for (const node of nodes) {\n const children = graph.children(node);\n hasChildren = hasChildren || children.length > 0;\n }\n if (!hasChildren) {\n log.debug(\"Done, no node has children\", graph.nodes());\n return;\n }\n log.debug(\"Nodes = \", nodes, depth);\n for (const node of nodes) {\n log.debug(\n \"Extracting node\",\n node,\n clusterDb,\n clusterDb.has(node) && !clusterDb.get(node).externalConnections,\n !graph.parent(node),\n graph.node(node),\n graph.children(\"D\"),\n \" Depth \",\n depth\n );\n if (!clusterDb.has(node)) {\n log.debug(\"Not a cluster\", node, depth);\n } else if (clusterDb.get(node)?.clusterData?.explicitDir && graph.children(node) && graph.children(node).length > 0) {\n log.warn(\"Cluster with explicit dir, creating subgraph for children\", node, depth);\n const dir = clusterDb.get(node).clusterData.dir;\n const clusterGraph = new graphlib.Graph({\n multigraph: true,\n compound: true\n }).setGraph({\n rankdir: dir,\n nodesep: 50,\n ranksep: 50,\n marginx: 8,\n marginy: 8\n }).setDefaultEdgeLabel(function() {\n return {};\n });\n copy(node, graph, clusterGraph, node);\n const clusterNodeData = graph.node(node) || {};\n graph.setNode(node, {\n ...clusterNodeData,\n clusterNode: true,\n id: node,\n clusterData: clusterDb.get(node).clusterData,\n label: clusterDb.get(node).label,\n graph: clusterGraph\n });\n log.warn(\n \"Subgraph for cluster with explicit dir created:\",\n node,\n graphlibJson.write(clusterGraph)\n );\n } else if (!clusterDb.get(node).externalConnections && graph.children(node) && graph.children(node).length > 0) {\n log.warn(\n \"Cluster without external connections, without a parent and with children\",\n node,\n depth\n );\n const graphSettings = graph.graph();\n let dir = graphSettings.rankdir === \"TB\" ? \"LR\" : \"TB\";\n if (clusterDb.get(node)?.clusterData?.dir) {\n dir = clusterDb.get(node).clusterData.dir;\n log.warn(\"Fixing dir\", clusterDb.get(node).clusterData.dir, dir);\n }\n const clusterGraph = new graphlib.Graph({\n multigraph: true,\n compound: true\n }).setGraph({\n rankdir: dir,\n nodesep: 50,\n ranksep: 50,\n marginx: 8,\n marginy: 8\n }).setDefaultEdgeLabel(function() {\n return {};\n });\n copy(node, graph, clusterGraph, node);\n const clusterNodeData = graph.node(node) || {};\n graph.setNode(node, {\n ...clusterNodeData,\n clusterNode: true,\n id: node,\n clusterData: clusterDb.get(node).clusterData,\n label: clusterDb.get(node).label,\n graph: clusterGraph\n });\n log.debug(\"Old graph after copy\", graphlibJson.write(graph));\n } else {\n log.warn(\n \"Cluster ** \",\n node,\n \" **not meeting the criteria !externalConnections:\",\n !clusterDb.get(node).externalConnections,\n \" no parent: \",\n !graph.parent(node),\n \" children \",\n graph.children(node) && graph.children(node).length > 0,\n graph.children(\"D\"),\n depth\n );\n log.debug(clusterDb);\n }\n }\n nodes = graph.nodes();\n log.warn(\"New list of nodes\", nodes);\n for (const node of nodes) {\n const data = graph.node(node);\n log.warn(\" Now next level\", node, data);\n if (data?.clusterNode) {\n extractor(data.graph, depth + 1);\n }\n }\n}, \"extractor\");\nvar sorter = /* @__PURE__ */ __name((graph, nodes) => {\n if (nodes.length === 0) {\n return [];\n }\n let result = Object.assign([], nodes);\n nodes.forEach((node) => {\n const children = graph.children(node);\n const sorted = sorter(graph, children);\n result = [...result, ...sorted];\n });\n return result;\n}, \"sorter\");\nvar sortNodesByHierarchy = /* @__PURE__ */ __name((graph) => sorter(graph, graph.children()), \"sortNodesByHierarchy\");\nvar isNodeInExtractableCluster = /* @__PURE__ */ __name((graph, node, rootId) => {\n let parent = graph.parent(node);\n while (parent && parent !== rootId) {\n const cluster = clusterDb.get(parent);\n if (cluster && !cluster.externalConnections) {\n return true;\n }\n parent = graph.parent(parent);\n }\n return false;\n}, \"isNodeInExtractableCluster\");\nvar findSafeAnchorNode = /* @__PURE__ */ __name((graph, clusterId, excludedCluster) => {\n const children = graph.children(clusterId) ?? [];\n for (const child of children) {\n if (child === excludedCluster || isDescendant(child, excludedCluster)) {\n continue;\n }\n const candidate = findNonClusterChild(child, graph, clusterId);\n if (!candidate) {\n continue;\n }\n if (!isNodeInExtractableCluster(graph, candidate, clusterId)) {\n return candidate;\n }\n }\n return null;\n}, \"findSafeAnchorNode\");\n\nexport {\n clusterDb,\n clear,\n findNonClusterChild,\n adjustClustersAndEdges,\n sortNodesByHierarchy\n};\n"],"names":["CLONE_SYMBOLS_FLAG","clone","value","baseClone","write","g","json","writeNodes","writeEdges","_.isUndefined","_.clone","_.map","v","nodeValue","parent","node","e","edgeValue","edge","clusterDb","descendants","parents","clear","__name","isDescendant","id","ancestorId","ancestorDescendants","log","edgeInCluster","clusterId","clusterDescendants","copy","graph","newGraph","rootId","nodes","data","edges","data2","rootDescendants","vIn","wIn","newV","newW","extractDescendants","children","res","child","findCommonEdges","id1","id2","edges1","edges2","edges1Prim","edges2Prim","edgeIn1","findNonClusterChild","reserve","_id","commonEdges","getAnchorId","adjustClustersAndEdges","depth","d1","d2","nonClusterChild","hasDirectOutgoingEdge","isNodeInExtractableCluster","safeAnchor","findSafeAnchorNode","w","graphlibJson.write","extractor","hasChildren","dir","clusterGraph","graphlib.Graph","clusterNodeData","sorter","result","sorted","sortNodesByHierarchy","cluster","excludedCluster","candidate"],"mappings":"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","x_google_ignoreList":[0,1,2]}
@@ -1,2 +1,2 @@
1
- "use strict";const o=require("./extractHeadings-DLMipVtZ.cjs"),g=require("./graph-BgRih2Qv.cjs"),E=require("./map-BvScllSQ.cjs");var k=4;function B(e){return E.baseClone(e,k)}function v(e){var r={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:j(e),edges:L(e)};return g.isUndefined(e.graph())||(r.value=B(e.graph())),r}function j(e){return E.map(e.nodes(),function(r){var n=e.node(r),s=e.parent(r),t={v:r};return g.isUndefined(n)||(t.value=n),g.isUndefined(s)||(t.parent=s),t})}function L(e){return E.map(e.edges(),function(r){var n=e.edge(r),s={v:r.v,w:r.w};return g.isUndefined(r.name)||(s.name=r.name),g.isUndefined(n)||(s.value=n),s})}var a=new Map,d=new Map,y=new Map,p=o.__name(()=>{d.clear(),y.clear(),a.clear()},"clear"),w=o.__name((e,r)=>{const n=d.get(r)||[];return o.log.trace("In isDescendant",r," ",e," = ",n.includes(e)),n.includes(e)},"isDescendant"),F=o.__name((e,r)=>{const n=d.get(r)||[];return o.log.info("Descendants of ",r," is ",n),o.log.info("Edge is ",e),e.v===r||e.w===r?!1:n?n.includes(e.v)||w(e.v,r)||w(e.w,r)||n.includes(e.w):(o.log.debug("Tilt, ",r,",not in descendants"),!1)},"edgeInCluster"),D=o.__name((e,r,n,s)=>{o.log.warn("Copying children of ",e,"root",s,"data",r.node(e),s);const t=r.children(e)||[];e!==s&&t.push(e),o.log.warn("Copying (nodes) clusterId",e,"nodes",t),t.forEach(i=>{if(r.children(i).length>0)D(i,r,n,s);else{const c=r.node(i);o.log.info("cp ",i," to ",s," with parent ",e),n.setNode(i,c),s!==r.parent(i)&&(o.log.warn("Setting parent",i,r.parent(i)),n.setParent(i,r.parent(i))),e!==s&&i!==e?(o.log.debug("Setting parent",i,e),n.setParent(i,e)):(o.log.info("In copy ",e,"root",s,"data",r.node(e),s),o.log.debug("Not Setting parent for node=",i,"cluster!==rootId",e!==s,"node!==clusterId",i!==e));const u=r.edges(i);o.log.debug("Copying Edges",u),u.forEach(l=>{o.log.info("Edge",l);const f=r.edge(l.v,l.w,l.name);o.log.info("Edge data",f,s);try{if(F(l,s)){const C=d.get(s)||[],b=C.includes(l.v)||w(l.v,s)||l.v===s,_=C.includes(l.w)||w(l.w,s)||l.w===s;if(b&&_)o.log.info("Copying as ",l.v,l.w,f,l.name),n.setEdge(l.v,l.w,f,l.name),o.log.info("newGraph edges ",n.edges(),n.edge(n.edges()[0]));else{const x=b?s:l.v,h=_?s:l.w;o.log.info("Rebinding cross-boundary edge as ",x,h,f,l.name),r.setEdge(x,h,f,l.name)}}else o.log.info("Skipping copy of edge ",l.v,"-->",l.w," rootId: ",s," clusterId:",e)}catch(C){o.log.error(C)}})}o.log.debug("Removing node",i),r.removeNode(i)})},"copy"),S=o.__name((e,r)=>{const n=r.children(e);let s=[...n];for(const t of n)y.set(t,e),s=[...s,...S(t,r)];return s},"extractDescendants"),M=o.__name((e,r,n)=>{const s=e.edges().filter(l=>l.v===r||l.w===r),t=e.edges().filter(l=>l.v===n||l.w===n),i=s.map(l=>({v:l.v===r?n:l.v,w:l.w===r?r:l.w})),c=t.map(l=>({v:l.v,w:l.w}));return i.filter(l=>c.some(f=>l.v===f.v&&l.w===f.w))},"findCommonEdges"),m=o.__name((e,r,n)=>{const s=r.children(e);if(o.log.trace("Searching children of id ",e,s),s.length<1)return e;let t;for(const i of s){const c=m(i,r,n),u=M(r,n,c);if(c)if(u.length>0)t=c;else return c}return t},"findNonClusterChild"),N=o.__name(e=>!a.has(e)||!a.get(e).externalConnections?e:a.has(e)?a.get(e).id:e,"getAnchorId"),R=o.__name((e,r)=>{if(!e||r>10){o.log.debug("Opting out, no graph ");return}else o.log.debug("Opting in, graph ");e.nodes().forEach(function(n){e.children(n).length>0&&(o.log.warn("Cluster identified",n," Replacement id in edges: ",m(n,e,n)),d.set(n,S(n,e)),a.set(n,{id:m(n,e,n),clusterData:e.node(n)}))}),e.nodes().forEach(function(n){const s=e.children(n),t=e.edges();s.length>0?(o.log.debug("Cluster identified",n,d),t.forEach(i=>{const c=w(i.v,n),u=w(i.w,n);c^u&&(o.log.warn("Edge: ",i," leaves cluster ",n),o.log.warn("Descendants of XXX ",n,": ",d.get(n)),a.get(n).externalConnections=!0)})):o.log.debug("Not a cluster ",n,d)});for(let n of a.keys()){const s=a.get(n).id,t=e.parent(s);t!==n&&a.has(t)&&!a.get(t).externalConnections&&(a.get(n).id=t);const i=e.edges().some(c=>c.v===n);if(s&&a.get(n)?.externalConnections&&i&&O(e,s,n)){const c=H(e,n,e.parent(s));c&&(a.get(n).id=c)}}e.edges().forEach(function(n){const s=e.edge(n);o.log.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(n)),o.log.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(e.edge(n)));let t=n.v,i=n.w;if(o.log.warn("Fix XXX",a,"ids:",n.v,n.w,"Translating: ",a.get(n.v)," --- ",a.get(n.w)),a.get(n.v)||a.get(n.w)){if(o.log.warn("Fixing and trying - removing XXX",n.v,n.w,n.name),t=N(n.v),i=N(n.w),e.removeEdge(n.v,n.w,n.name),t!==n.v){const c=e.parent(t);a.get(c).externalConnections=!0,s.fromCluster=n.v}if(i!==n.w){const c=e.parent(i);a.get(c).externalConnections=!0,s.toCluster=n.w}o.log.warn("Fix Replacing with XXX",t,i,n.name),e.setEdge(t,i,s,n.name)}}),o.log.warn("Adjusted Graph",v(e)),X(e,0),o.log.trace(a)},"adjustClustersAndEdges"),X=o.__name((e,r)=>{if(o.log.warn("extractor - ",r,v(e),e.children("D")),r>10){o.log.error("Bailing out");return}let n=e.nodes(),s=!1;for(const t of n){const i=e.children(t);s=s||i.length>0}if(!s){o.log.debug("Done, no node has children",e.nodes());return}o.log.debug("Nodes = ",n,r);for(const t of n)if(o.log.debug("Extracting node",t,a,a.has(t)&&!a.get(t).externalConnections,!e.parent(t),e.node(t),e.children("D")," Depth ",r),!a.has(t))o.log.debug("Not a cluster",t,r);else if(a.get(t)?.clusterData?.explicitDir&&e.children(t)&&e.children(t).length>0){o.log.warn("Cluster with explicit dir, creating subgraph for children",t,r);const i=a.get(t).clusterData.dir,c=new g.Graph({multigraph:!0,compound:!0}).setGraph({rankdir:i,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});D(t,e,c,t);const u=e.node(t)||{};e.setNode(t,{...u,clusterNode:!0,id:t,clusterData:a.get(t).clusterData,label:a.get(t).label,graph:c}),o.log.warn("Subgraph for cluster with explicit dir created:",t,v(c))}else if(!a.get(t).externalConnections&&e.children(t)&&e.children(t).length>0){o.log.warn("Cluster without external connections, without a parent and with children",t,r);let c=e.graph().rankdir==="TB"?"LR":"TB";a.get(t)?.clusterData?.dir&&(c=a.get(t).clusterData.dir,o.log.warn("Fixing dir",a.get(t).clusterData.dir,c));const u=new g.Graph({multigraph:!0,compound:!0}).setGraph({rankdir:c,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});D(t,e,u,t);const l=e.node(t)||{};e.setNode(t,{...l,clusterNode:!0,id:t,clusterData:a.get(t).clusterData,label:a.get(t).label,graph:u}),o.log.debug("Old graph after copy",v(e))}else o.log.warn("Cluster ** ",t," **not meeting the criteria !externalConnections:",!a.get(t).externalConnections," no parent: ",!e.parent(t)," children ",e.children(t)&&e.children(t).length>0,e.children("D"),r),o.log.debug(a);n=e.nodes(),o.log.warn("New list of nodes",n);for(const t of n){const i=e.node(t);o.log.warn(" Now next level",t,i),i?.clusterNode&&X(i.graph,r+1)}},"extractor"),A=o.__name((e,r)=>{if(r.length===0)return[];let n=Object.assign([],r);return r.forEach(s=>{const t=e.children(s),i=A(e,t);n=[...n,...i]}),n},"sorter"),U=o.__name(e=>A(e,e.children()),"sortNodesByHierarchy"),O=o.__name((e,r,n)=>{let s=e.parent(r);for(;s&&s!==n;){const t=a.get(s);if(t&&!t.externalConnections)return!0;s=e.parent(s)}return!1},"isNodeInExtractableCluster"),H=o.__name((e,r,n)=>{const s=e.children(r)??[];for(const t of s){if(t===n||w(t,n))continue;const i=m(t,e,r);if(i&&!O(e,i,r))return i}return null},"findSafeAnchorNode");exports.adjustClustersAndEdges=R;exports.clear=p;exports.clusterDb=a;exports.findNonClusterChild=m;exports.sortNodesByHierarchy=U;exports.write=v;
2
- //# sourceMappingURL=chunk-RYQCIY6F-C-CFpAHC.cjs.map
1
+ "use strict";const o=require("./extractHeadings-BrLI2qQF.cjs"),g=require("./graph-BgRih2Qv.cjs"),E=require("./map-BvScllSQ.cjs");var k=4;function B(e){return E.baseClone(e,k)}function v(e){var r={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:j(e),edges:L(e)};return g.isUndefined(e.graph())||(r.value=B(e.graph())),r}function j(e){return E.map(e.nodes(),function(r){var n=e.node(r),s=e.parent(r),t={v:r};return g.isUndefined(n)||(t.value=n),g.isUndefined(s)||(t.parent=s),t})}function L(e){return E.map(e.edges(),function(r){var n=e.edge(r),s={v:r.v,w:r.w};return g.isUndefined(r.name)||(s.name=r.name),g.isUndefined(n)||(s.value=n),s})}var a=new Map,d=new Map,y=new Map,p=o.__name(()=>{d.clear(),y.clear(),a.clear()},"clear"),w=o.__name((e,r)=>{const n=d.get(r)||[];return o.log.trace("In isDescendant",r," ",e," = ",n.includes(e)),n.includes(e)},"isDescendant"),F=o.__name((e,r)=>{const n=d.get(r)||[];return o.log.info("Descendants of ",r," is ",n),o.log.info("Edge is ",e),e.v===r||e.w===r?!1:n?n.includes(e.v)||w(e.v,r)||w(e.w,r)||n.includes(e.w):(o.log.debug("Tilt, ",r,",not in descendants"),!1)},"edgeInCluster"),D=o.__name((e,r,n,s)=>{o.log.warn("Copying children of ",e,"root",s,"data",r.node(e),s);const t=r.children(e)||[];e!==s&&t.push(e),o.log.warn("Copying (nodes) clusterId",e,"nodes",t),t.forEach(i=>{if(r.children(i).length>0)D(i,r,n,s);else{const c=r.node(i);o.log.info("cp ",i," to ",s," with parent ",e),n.setNode(i,c),s!==r.parent(i)&&(o.log.warn("Setting parent",i,r.parent(i)),n.setParent(i,r.parent(i))),e!==s&&i!==e?(o.log.debug("Setting parent",i,e),n.setParent(i,e)):(o.log.info("In copy ",e,"root",s,"data",r.node(e),s),o.log.debug("Not Setting parent for node=",i,"cluster!==rootId",e!==s,"node!==clusterId",i!==e));const u=r.edges(i);o.log.debug("Copying Edges",u),u.forEach(l=>{o.log.info("Edge",l);const f=r.edge(l.v,l.w,l.name);o.log.info("Edge data",f,s);try{if(F(l,s)){const C=d.get(s)||[],b=C.includes(l.v)||w(l.v,s)||l.v===s,_=C.includes(l.w)||w(l.w,s)||l.w===s;if(b&&_)o.log.info("Copying as ",l.v,l.w,f,l.name),n.setEdge(l.v,l.w,f,l.name),o.log.info("newGraph edges ",n.edges(),n.edge(n.edges()[0]));else{const x=b?s:l.v,h=_?s:l.w;o.log.info("Rebinding cross-boundary edge as ",x,h,f,l.name),r.setEdge(x,h,f,l.name)}}else o.log.info("Skipping copy of edge ",l.v,"-->",l.w," rootId: ",s," clusterId:",e)}catch(C){o.log.error(C)}})}o.log.debug("Removing node",i),r.removeNode(i)})},"copy"),S=o.__name((e,r)=>{const n=r.children(e);let s=[...n];for(const t of n)y.set(t,e),s=[...s,...S(t,r)];return s},"extractDescendants"),M=o.__name((e,r,n)=>{const s=e.edges().filter(l=>l.v===r||l.w===r),t=e.edges().filter(l=>l.v===n||l.w===n),i=s.map(l=>({v:l.v===r?n:l.v,w:l.w===r?r:l.w})),c=t.map(l=>({v:l.v,w:l.w}));return i.filter(l=>c.some(f=>l.v===f.v&&l.w===f.w))},"findCommonEdges"),m=o.__name((e,r,n)=>{const s=r.children(e);if(o.log.trace("Searching children of id ",e,s),s.length<1)return e;let t;for(const i of s){const c=m(i,r,n),u=M(r,n,c);if(c)if(u.length>0)t=c;else return c}return t},"findNonClusterChild"),N=o.__name(e=>!a.has(e)||!a.get(e).externalConnections?e:a.has(e)?a.get(e).id:e,"getAnchorId"),R=o.__name((e,r)=>{if(!e||r>10){o.log.debug("Opting out, no graph ");return}else o.log.debug("Opting in, graph ");e.nodes().forEach(function(n){e.children(n).length>0&&(o.log.warn("Cluster identified",n," Replacement id in edges: ",m(n,e,n)),d.set(n,S(n,e)),a.set(n,{id:m(n,e,n),clusterData:e.node(n)}))}),e.nodes().forEach(function(n){const s=e.children(n),t=e.edges();s.length>0?(o.log.debug("Cluster identified",n,d),t.forEach(i=>{const c=w(i.v,n),u=w(i.w,n);c^u&&(o.log.warn("Edge: ",i," leaves cluster ",n),o.log.warn("Descendants of XXX ",n,": ",d.get(n)),a.get(n).externalConnections=!0)})):o.log.debug("Not a cluster ",n,d)});for(let n of a.keys()){const s=a.get(n).id,t=e.parent(s);t!==n&&a.has(t)&&!a.get(t).externalConnections&&(a.get(n).id=t);const i=e.edges().some(c=>c.v===n);if(s&&a.get(n)?.externalConnections&&i&&O(e,s,n)){const c=H(e,n,e.parent(s));c&&(a.get(n).id=c)}}e.edges().forEach(function(n){const s=e.edge(n);o.log.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(n)),o.log.warn("Edge "+n.v+" -> "+n.w+": "+JSON.stringify(e.edge(n)));let t=n.v,i=n.w;if(o.log.warn("Fix XXX",a,"ids:",n.v,n.w,"Translating: ",a.get(n.v)," --- ",a.get(n.w)),a.get(n.v)||a.get(n.w)){if(o.log.warn("Fixing and trying - removing XXX",n.v,n.w,n.name),t=N(n.v),i=N(n.w),e.removeEdge(n.v,n.w,n.name),t!==n.v){const c=e.parent(t);a.get(c).externalConnections=!0,s.fromCluster=n.v}if(i!==n.w){const c=e.parent(i);a.get(c).externalConnections=!0,s.toCluster=n.w}o.log.warn("Fix Replacing with XXX",t,i,n.name),e.setEdge(t,i,s,n.name)}}),o.log.warn("Adjusted Graph",v(e)),X(e,0),o.log.trace(a)},"adjustClustersAndEdges"),X=o.__name((e,r)=>{if(o.log.warn("extractor - ",r,v(e),e.children("D")),r>10){o.log.error("Bailing out");return}let n=e.nodes(),s=!1;for(const t of n){const i=e.children(t);s=s||i.length>0}if(!s){o.log.debug("Done, no node has children",e.nodes());return}o.log.debug("Nodes = ",n,r);for(const t of n)if(o.log.debug("Extracting node",t,a,a.has(t)&&!a.get(t).externalConnections,!e.parent(t),e.node(t),e.children("D")," Depth ",r),!a.has(t))o.log.debug("Not a cluster",t,r);else if(a.get(t)?.clusterData?.explicitDir&&e.children(t)&&e.children(t).length>0){o.log.warn("Cluster with explicit dir, creating subgraph for children",t,r);const i=a.get(t).clusterData.dir,c=new g.Graph({multigraph:!0,compound:!0}).setGraph({rankdir:i,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});D(t,e,c,t);const u=e.node(t)||{};e.setNode(t,{...u,clusterNode:!0,id:t,clusterData:a.get(t).clusterData,label:a.get(t).label,graph:c}),o.log.warn("Subgraph for cluster with explicit dir created:",t,v(c))}else if(!a.get(t).externalConnections&&e.children(t)&&e.children(t).length>0){o.log.warn("Cluster without external connections, without a parent and with children",t,r);let c=e.graph().rankdir==="TB"?"LR":"TB";a.get(t)?.clusterData?.dir&&(c=a.get(t).clusterData.dir,o.log.warn("Fixing dir",a.get(t).clusterData.dir,c));const u=new g.Graph({multigraph:!0,compound:!0}).setGraph({rankdir:c,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});D(t,e,u,t);const l=e.node(t)||{};e.setNode(t,{...l,clusterNode:!0,id:t,clusterData:a.get(t).clusterData,label:a.get(t).label,graph:u}),o.log.debug("Old graph after copy",v(e))}else o.log.warn("Cluster ** ",t," **not meeting the criteria !externalConnections:",!a.get(t).externalConnections," no parent: ",!e.parent(t)," children ",e.children(t)&&e.children(t).length>0,e.children("D"),r),o.log.debug(a);n=e.nodes(),o.log.warn("New list of nodes",n);for(const t of n){const i=e.node(t);o.log.warn(" Now next level",t,i),i?.clusterNode&&X(i.graph,r+1)}},"extractor"),A=o.__name((e,r)=>{if(r.length===0)return[];let n=Object.assign([],r);return r.forEach(s=>{const t=e.children(s),i=A(e,t);n=[...n,...i]}),n},"sorter"),U=o.__name(e=>A(e,e.children()),"sortNodesByHierarchy"),O=o.__name((e,r,n)=>{let s=e.parent(r);for(;s&&s!==n;){const t=a.get(s);if(t&&!t.externalConnections)return!0;s=e.parent(s)}return!1},"isNodeInExtractableCluster"),H=o.__name((e,r,n)=>{const s=e.children(r)??[];for(const t of s){if(t===n||w(t,n))continue;const i=m(t,e,r);if(i&&!O(e,i,r))return i}return null},"findSafeAnchorNode");exports.adjustClustersAndEdges=R;exports.clear=p;exports.clusterDb=a;exports.findNonClusterChild=m;exports.sortNodesByHierarchy=U;exports.write=v;
2
+ //# sourceMappingURL=chunk-RYQCIY6F-xFTrTO6v.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"chunk-RYQCIY6F-C-CFpAHC.cjs","sources":["../../../node_modules/.pnpm/lodash-es@4.18.1/node_modules/lodash-es/clone.js","../../../node_modules/.pnpm/dagre-d3-es@7.0.14/node_modules/dagre-d3-es/src/graphlib/json.js","../../../node_modules/.pnpm/mermaid@11.16.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-RYQCIY6F.mjs"],"sourcesContent":["import baseClone from './_baseClone.js';\n\n/** Used to compose bitmasks for cloning. */\nvar CLONE_SYMBOLS_FLAG = 4;\n\n/**\n * Creates a shallow clone of `value`.\n *\n * **Note:** This method is loosely based on the\n * [structured clone algorithm](https://mdn.io/Structured_clone_algorithm)\n * and supports cloning arrays, array buffers, booleans, date objects, maps,\n * numbers, `Object` objects, regexes, sets, strings, symbols, and typed\n * arrays. The own enumerable properties of `arguments` objects are cloned\n * as plain objects. An empty object is returned for uncloneable values such\n * as error objects, functions, DOM nodes, and WeakMaps.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to clone.\n * @returns {*} Returns the cloned value.\n * @see _.cloneDeep\n * @example\n *\n * var objects = [{ 'a': 1 }, { 'b': 2 }];\n *\n * var shallow = _.clone(objects);\n * console.log(shallow[0] === objects[0]);\n * // => true\n */\nfunction clone(value) {\n return baseClone(value, CLONE_SYMBOLS_FLAG);\n}\n\nexport default clone;\n","import * as _ from 'lodash-es';\nimport { Graph } from './graph.js';\n\n/**\n * @import { NodeID, EdgeObj, GraphOptions } from './graph.js';\n */\n\nexport { write, read };\n\n/**\n * @template [GraphLabel=any] - Label of the graph.\n * @template [NodeLabel=any] - Label of a node.\n * @template [EdgeLabel=any] - Label of an edge.\n *\n * @typedef {object} GraphJSON\n * @property {Required<GraphOptions>} options - The options used to create the graph.\n * @property {Array<{ v: NodeID; value?: NodeLabel; parent?: NodeID }>} nodes - The nodes in the graph.\n * @property {Array<EdgeObj & { value?: EdgeLabel }>} edges - The edges in the graph.\n * @property {GraphLabel} [value] - The graph's value, if any.\n */\n\n/**\n * Creates a JSON representation of the graph that can be serialized to a\n * string with\n * [JSON.stringify](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify).\n * The graph can later be restored using {@link read}.\n *\n * @example\n *\n * ```js\n * var g = new graphlib.Graph();\n * g.setNode(\"a\", { label: \"node a\" });\n * g.setNode(\"b\", { label: \"node b\" });\n * g.setEdge(\"a\", \"b\", { label: \"edge a->b\" });\n * graphlib.json.write(g);\n * // Returns the object:\n * //\n * // {\n * // \"options\": {\n * // \"directed\": true,\n * // \"multigraph\": false,\n * // \"compound\": false\n * // },\n * // \"nodes\": [\n * // { \"v\": \"a\", \"value\": { \"label\": \"node a\" } },\n * // { \"v\": \"b\", \"value\": { \"label\": \"node b\" } }\n * // ],\n * // \"edges\": [\n * // { \"v\": \"a\", \"w\": \"b\", \"value\": { \"label\": \"edge a->b\" } }\n * // ]\n * // }\n * ```\n *\n * @template [GraphLabel=any] - Label of the graph.\n * @template [NodeLabel=any] - Label of a node.\n * @template [EdgeLabel=any] - Label of an edge.\n * @param {Graph<GraphLabel, NodeLabel, EdgeLabel>} g - The graph to serialize.\n * @returns {GraphJSON<GraphLabel, NodeLabel, EdgeLabel>} The JSON representation of the graph.\n */\nfunction write(g) {\n /** @type {GraphJSON<GraphLabel, NodeLabel, EdgeLabel>} */\n var json = {\n options: {\n directed: g.isDirected(),\n multigraph: g.isMultigraph(),\n compound: g.isCompound(),\n },\n nodes: writeNodes(g),\n edges: writeEdges(g),\n };\n if (!_.isUndefined(g.graph())) {\n json.value = _.clone(g.graph());\n }\n return json;\n}\n\n/**\n * @template NodeLabel - Label of a node.\n *\n * @param {Graph<unknown, NodeLabel, unknown>} g - The graph to serialize.\n * @returns {Array<{ v: NodeID; value?: NodeLabel; parent?: NodeID }>} The nodes in the graph.\n */\nfunction writeNodes(g) {\n return _.map(g.nodes(), function (v) {\n var nodeValue = g.node(v);\n var parent = g.parent(v);\n /** @type {{ v: NodeID; value?: NodeLabel; parent?: NodeID }} */\n var node = { v: v };\n if (!_.isUndefined(nodeValue)) {\n node.value = nodeValue;\n }\n if (!_.isUndefined(parent)) {\n node.parent = parent;\n }\n return node;\n });\n}\n\n/**\n * @template EdgeLabel - Label of a node.\n *\n * @param {Graph<unknown, unknown, EdgeLabel>} g - The graph to serialize.\n * @returns {Array<EdgeObj & { value?: EdgeLabel }>} The edges in the graph.\n */\nfunction writeEdges(g) {\n return _.map(g.edges(), function (e) {\n var edgeValue = g.edge(e);\n /** @type {EdgeObj & { value?: EdgeLabel }} */\n var edge = { v: e.v, w: e.w };\n if (!_.isUndefined(e.name)) {\n edge.name = e.name;\n }\n if (!_.isUndefined(edgeValue)) {\n edge.value = edgeValue;\n }\n return edge;\n });\n}\n\n/**\n * Takes JSON as input and returns the graph representation.\n *\n * @example\n *\n * For example, if we have serialized the graph in {@link write}\n * to a string named `str`, we can restore it to a graph as follows:\n *\n * ```js\n * var g2 = graphlib.json.read(JSON.parse(str));\n * // or, in order to copy the graph\n * var g3 = graphlib.json.read(graphlib.json.write(g))\n *\n * g2.nodes();\n * // ['a', 'b']\n * g2.edges()\n * // [ { v: 'a', w: 'b' } ]\n * ```\n *\n * @template [GraphLabel=any] - Label of the graph.\n * @template [NodeLabel=any] - Label of a node.\n * @template [EdgeLabel=any] - Label of an edge.\n * @param {GraphJSON<GraphLabel, NodeLabel, EdgeLabel>} json - The JSON representation of the graph.\n * @returns {Graph<GraphLabel, NodeLabel, EdgeLabel>} The restored graph.\n */\nfunction read(json) {\n var g = new Graph(json.options).setGraph(json.value);\n _.each(json.nodes, function (entry) {\n g.setNode(entry.v, entry.value);\n if (entry.parent) {\n g.setParent(entry.v, entry.parent);\n }\n });\n _.each(json.edges, function (entry) {\n g.setEdge({ v: entry.v, w: entry.w, name: entry.name }, entry.value);\n });\n return g;\n}\n","import {\n log\n} from \"./chunk-X3CZISLH.mjs\";\nimport {\n __name\n} from \"./chunk-Y2CYZVJY.mjs\";\n\n// src/rendering-util/layout-algorithms/dagre/mermaid-graphlib.js\nimport * as graphlib from \"dagre-d3-es/src/graphlib/index.js\";\nimport * as graphlibJson from \"dagre-d3-es/src/graphlib/json.js\";\nvar clusterDb = /* @__PURE__ */ new Map();\nvar descendants = /* @__PURE__ */ new Map();\nvar parents = /* @__PURE__ */ new Map();\nvar clear = /* @__PURE__ */ __name(() => {\n descendants.clear();\n parents.clear();\n clusterDb.clear();\n}, \"clear\");\nvar isDescendant = /* @__PURE__ */ __name((id, ancestorId) => {\n const ancestorDescendants = descendants.get(ancestorId) || [];\n log.trace(\"In isDescendant\", ancestorId, \" \", id, \" = \", ancestorDescendants.includes(id));\n return ancestorDescendants.includes(id);\n}, \"isDescendant\");\nvar edgeInCluster = /* @__PURE__ */ __name((edge, clusterId) => {\n const clusterDescendants = descendants.get(clusterId) || [];\n log.info(\"Descendants of \", clusterId, \" is \", clusterDescendants);\n log.info(\"Edge is \", edge);\n if (edge.v === clusterId || edge.w === clusterId) {\n return false;\n }\n if (!clusterDescendants) {\n log.debug(\"Tilt, \", clusterId, \",not in descendants\");\n return false;\n }\n return clusterDescendants.includes(edge.v) || isDescendant(edge.v, clusterId) || isDescendant(edge.w, clusterId) || clusterDescendants.includes(edge.w);\n}, \"edgeInCluster\");\nvar copy = /* @__PURE__ */ __name((clusterId, graph, newGraph, rootId) => {\n log.warn(\n \"Copying children of \",\n clusterId,\n \"root\",\n rootId,\n \"data\",\n graph.node(clusterId),\n rootId\n );\n const nodes = graph.children(clusterId) || [];\n if (clusterId !== rootId) {\n nodes.push(clusterId);\n }\n log.warn(\"Copying (nodes) clusterId\", clusterId, \"nodes\", nodes);\n nodes.forEach((node) => {\n if (graph.children(node).length > 0) {\n copy(node, graph, newGraph, rootId);\n } else {\n const data = graph.node(node);\n log.info(\"cp \", node, \" to \", rootId, \" with parent \", clusterId);\n newGraph.setNode(node, data);\n if (rootId !== graph.parent(node)) {\n log.warn(\"Setting parent\", node, graph.parent(node));\n newGraph.setParent(node, graph.parent(node));\n }\n if (clusterId !== rootId && node !== clusterId) {\n log.debug(\"Setting parent\", node, clusterId);\n newGraph.setParent(node, clusterId);\n } else {\n log.info(\"In copy \", clusterId, \"root\", rootId, \"data\", graph.node(clusterId), rootId);\n log.debug(\n \"Not Setting parent for node=\",\n node,\n \"cluster!==rootId\",\n clusterId !== rootId,\n \"node!==clusterId\",\n node !== clusterId\n );\n }\n const edges = graph.edges(node);\n log.debug(\"Copying Edges\", edges);\n edges.forEach((edge) => {\n log.info(\"Edge\", edge);\n const data2 = graph.edge(edge.v, edge.w, edge.name);\n log.info(\"Edge data\", data2, rootId);\n try {\n if (edgeInCluster(edge, rootId)) {\n const rootDescendants = descendants.get(rootId) || [];\n const vIn = rootDescendants.includes(edge.v) || isDescendant(edge.v, rootId) || edge.v === rootId;\n const wIn = rootDescendants.includes(edge.w) || isDescendant(edge.w, rootId) || edge.w === rootId;\n if (vIn && wIn) {\n log.info(\"Copying as \", edge.v, edge.w, data2, edge.name);\n newGraph.setEdge(edge.v, edge.w, data2, edge.name);\n log.info(\"newGraph edges \", newGraph.edges(), newGraph.edge(newGraph.edges()[0]));\n } else {\n const newV = vIn ? rootId : edge.v;\n const newW = wIn ? rootId : edge.w;\n log.info(\"Rebinding cross-boundary edge as \", newV, newW, data2, edge.name);\n graph.setEdge(newV, newW, data2, edge.name);\n }\n } else {\n log.info(\n \"Skipping copy of edge \",\n edge.v,\n \"-->\",\n edge.w,\n \" rootId: \",\n rootId,\n \" clusterId:\",\n clusterId\n );\n }\n } catch (e) {\n log.error(e);\n }\n });\n }\n log.debug(\"Removing node\", node);\n graph.removeNode(node);\n });\n}, \"copy\");\nvar extractDescendants = /* @__PURE__ */ __name((id, graph) => {\n const children = graph.children(id);\n let res = [...children];\n for (const child of children) {\n parents.set(child, id);\n res = [...res, ...extractDescendants(child, graph)];\n }\n return res;\n}, \"extractDescendants\");\nvar findCommonEdges = /* @__PURE__ */ __name((graph, id1, id2) => {\n const edges1 = graph.edges().filter((edge) => edge.v === id1 || edge.w === id1);\n const edges2 = graph.edges().filter((edge) => edge.v === id2 || edge.w === id2);\n const edges1Prim = edges1.map((edge) => {\n return { v: edge.v === id1 ? id2 : edge.v, w: edge.w === id1 ? id1 : edge.w };\n });\n const edges2Prim = edges2.map((edge) => {\n return { v: edge.v, w: edge.w };\n });\n const result = edges1Prim.filter((edgeIn1) => {\n return edges2Prim.some((edge) => edgeIn1.v === edge.v && edgeIn1.w === edge.w);\n });\n return result;\n}, \"findCommonEdges\");\nvar findNonClusterChild = /* @__PURE__ */ __name((id, graph, clusterId) => {\n const children = graph.children(id);\n log.trace(\"Searching children of id \", id, children);\n if (children.length < 1) {\n return id;\n }\n let reserve;\n for (const child of children) {\n const _id = findNonClusterChild(child, graph, clusterId);\n const commonEdges = findCommonEdges(graph, clusterId, _id);\n if (_id) {\n if (commonEdges.length > 0) {\n reserve = _id;\n } else {\n return _id;\n }\n }\n }\n return reserve;\n}, \"findNonClusterChild\");\nvar getAnchorId = /* @__PURE__ */ __name((id) => {\n if (!clusterDb.has(id)) {\n return id;\n }\n if (!clusterDb.get(id).externalConnections) {\n return id;\n }\n if (clusterDb.has(id)) {\n return clusterDb.get(id).id;\n }\n return id;\n}, \"getAnchorId\");\nvar adjustClustersAndEdges = /* @__PURE__ */ __name((graph, depth) => {\n if (!graph || depth > 10) {\n log.debug(\"Opting out, no graph \");\n return;\n } else {\n log.debug(\"Opting in, graph \");\n }\n graph.nodes().forEach(function(id) {\n const children = graph.children(id);\n if (children.length > 0) {\n log.warn(\n \"Cluster identified\",\n id,\n \" Replacement id in edges: \",\n findNonClusterChild(id, graph, id)\n );\n descendants.set(id, extractDescendants(id, graph));\n clusterDb.set(id, { id: findNonClusterChild(id, graph, id), clusterData: graph.node(id) });\n }\n });\n graph.nodes().forEach(function(id) {\n const children = graph.children(id);\n const edges = graph.edges();\n if (children.length > 0) {\n log.debug(\"Cluster identified\", id, descendants);\n edges.forEach((edge) => {\n const d1 = isDescendant(edge.v, id);\n const d2 = isDescendant(edge.w, id);\n if (d1 ^ d2) {\n log.warn(\"Edge: \", edge, \" leaves cluster \", id);\n log.warn(\"Descendants of XXX \", id, \": \", descendants.get(id));\n clusterDb.get(id).externalConnections = true;\n }\n });\n } else {\n log.debug(\"Not a cluster \", id, descendants);\n }\n });\n for (let id of clusterDb.keys()) {\n const nonClusterChild = clusterDb.get(id).id;\n const parent = graph.parent(nonClusterChild);\n if (parent !== id && clusterDb.has(parent) && !clusterDb.get(parent).externalConnections) {\n clusterDb.get(id).id = parent;\n }\n const hasDirectOutgoingEdge = graph.edges().some((edge) => edge.v === id);\n if (nonClusterChild && clusterDb.get(id)?.externalConnections && hasDirectOutgoingEdge && isNodeInExtractableCluster(graph, nonClusterChild, id)) {\n const safeAnchor = findSafeAnchorNode(graph, id, graph.parent(nonClusterChild));\n if (safeAnchor) {\n clusterDb.get(id).id = safeAnchor;\n }\n }\n }\n graph.edges().forEach(function(e) {\n const edge = graph.edge(e);\n log.warn(\"Edge \" + e.v + \" -> \" + e.w + \": \" + JSON.stringify(e));\n log.warn(\"Edge \" + e.v + \" -> \" + e.w + \": \" + JSON.stringify(graph.edge(e)));\n let v = e.v;\n let w = e.w;\n log.warn(\n \"Fix XXX\",\n clusterDb,\n \"ids:\",\n e.v,\n e.w,\n \"Translating: \",\n clusterDb.get(e.v),\n \" --- \",\n clusterDb.get(e.w)\n );\n if (clusterDb.get(e.v) || clusterDb.get(e.w)) {\n log.warn(\"Fixing and trying - removing XXX\", e.v, e.w, e.name);\n v = getAnchorId(e.v);\n w = getAnchorId(e.w);\n graph.removeEdge(e.v, e.w, e.name);\n if (v !== e.v) {\n const parent = graph.parent(v);\n clusterDb.get(parent).externalConnections = true;\n edge.fromCluster = e.v;\n }\n if (w !== e.w) {\n const parent = graph.parent(w);\n clusterDb.get(parent).externalConnections = true;\n edge.toCluster = e.w;\n }\n log.warn(\"Fix Replacing with XXX\", v, w, e.name);\n graph.setEdge(v, w, edge, e.name);\n }\n });\n log.warn(\"Adjusted Graph\", graphlibJson.write(graph));\n extractor(graph, 0);\n log.trace(clusterDb);\n}, \"adjustClustersAndEdges\");\nvar extractor = /* @__PURE__ */ __name((graph, depth) => {\n log.warn(\"extractor - \", depth, graphlibJson.write(graph), graph.children(\"D\"));\n if (depth > 10) {\n log.error(\"Bailing out\");\n return;\n }\n let nodes = graph.nodes();\n let hasChildren = false;\n for (const node of nodes) {\n const children = graph.children(node);\n hasChildren = hasChildren || children.length > 0;\n }\n if (!hasChildren) {\n log.debug(\"Done, no node has children\", graph.nodes());\n return;\n }\n log.debug(\"Nodes = \", nodes, depth);\n for (const node of nodes) {\n log.debug(\n \"Extracting node\",\n node,\n clusterDb,\n clusterDb.has(node) && !clusterDb.get(node).externalConnections,\n !graph.parent(node),\n graph.node(node),\n graph.children(\"D\"),\n \" Depth \",\n depth\n );\n if (!clusterDb.has(node)) {\n log.debug(\"Not a cluster\", node, depth);\n } else if (clusterDb.get(node)?.clusterData?.explicitDir && graph.children(node) && graph.children(node).length > 0) {\n log.warn(\"Cluster with explicit dir, creating subgraph for children\", node, depth);\n const dir = clusterDb.get(node).clusterData.dir;\n const clusterGraph = new graphlib.Graph({\n multigraph: true,\n compound: true\n }).setGraph({\n rankdir: dir,\n nodesep: 50,\n ranksep: 50,\n marginx: 8,\n marginy: 8\n }).setDefaultEdgeLabel(function() {\n return {};\n });\n copy(node, graph, clusterGraph, node);\n const clusterNodeData = graph.node(node) || {};\n graph.setNode(node, {\n ...clusterNodeData,\n clusterNode: true,\n id: node,\n clusterData: clusterDb.get(node).clusterData,\n label: clusterDb.get(node).label,\n graph: clusterGraph\n });\n log.warn(\n \"Subgraph for cluster with explicit dir created:\",\n node,\n graphlibJson.write(clusterGraph)\n );\n } else if (!clusterDb.get(node).externalConnections && graph.children(node) && graph.children(node).length > 0) {\n log.warn(\n \"Cluster without external connections, without a parent and with children\",\n node,\n depth\n );\n const graphSettings = graph.graph();\n let dir = graphSettings.rankdir === \"TB\" ? \"LR\" : \"TB\";\n if (clusterDb.get(node)?.clusterData?.dir) {\n dir = clusterDb.get(node).clusterData.dir;\n log.warn(\"Fixing dir\", clusterDb.get(node).clusterData.dir, dir);\n }\n const clusterGraph = new graphlib.Graph({\n multigraph: true,\n compound: true\n }).setGraph({\n rankdir: dir,\n nodesep: 50,\n ranksep: 50,\n marginx: 8,\n marginy: 8\n }).setDefaultEdgeLabel(function() {\n return {};\n });\n copy(node, graph, clusterGraph, node);\n const clusterNodeData = graph.node(node) || {};\n graph.setNode(node, {\n ...clusterNodeData,\n clusterNode: true,\n id: node,\n clusterData: clusterDb.get(node).clusterData,\n label: clusterDb.get(node).label,\n graph: clusterGraph\n });\n log.debug(\"Old graph after copy\", graphlibJson.write(graph));\n } else {\n log.warn(\n \"Cluster ** \",\n node,\n \" **not meeting the criteria !externalConnections:\",\n !clusterDb.get(node).externalConnections,\n \" no parent: \",\n !graph.parent(node),\n \" children \",\n graph.children(node) && graph.children(node).length > 0,\n graph.children(\"D\"),\n depth\n );\n log.debug(clusterDb);\n }\n }\n nodes = graph.nodes();\n log.warn(\"New list of nodes\", nodes);\n for (const node of nodes) {\n const data = graph.node(node);\n log.warn(\" Now next level\", node, data);\n if (data?.clusterNode) {\n extractor(data.graph, depth + 1);\n }\n }\n}, \"extractor\");\nvar sorter = /* @__PURE__ */ __name((graph, nodes) => {\n if (nodes.length === 0) {\n return [];\n }\n let result = Object.assign([], nodes);\n nodes.forEach((node) => {\n const children = graph.children(node);\n const sorted = sorter(graph, children);\n result = [...result, ...sorted];\n });\n return result;\n}, \"sorter\");\nvar sortNodesByHierarchy = /* @__PURE__ */ __name((graph) => sorter(graph, graph.children()), \"sortNodesByHierarchy\");\nvar isNodeInExtractableCluster = /* @__PURE__ */ __name((graph, node, rootId) => {\n let parent = graph.parent(node);\n while (parent && parent !== rootId) {\n const cluster = clusterDb.get(parent);\n if (cluster && !cluster.externalConnections) {\n return true;\n }\n parent = graph.parent(parent);\n }\n return false;\n}, \"isNodeInExtractableCluster\");\nvar findSafeAnchorNode = /* @__PURE__ */ __name((graph, clusterId, excludedCluster) => {\n const children = graph.children(clusterId) ?? [];\n for (const child of children) {\n if (child === excludedCluster || isDescendant(child, excludedCluster)) {\n continue;\n }\n const candidate = findNonClusterChild(child, graph, clusterId);\n if (!candidate) {\n continue;\n }\n if (!isNodeInExtractableCluster(graph, candidate, clusterId)) {\n return candidate;\n }\n }\n return null;\n}, \"findSafeAnchorNode\");\n\nexport {\n clusterDb,\n clear,\n findNonClusterChild,\n adjustClustersAndEdges,\n sortNodesByHierarchy\n};\n"],"names":["CLONE_SYMBOLS_FLAG","clone","value","baseClone","write","g","json","writeNodes","writeEdges","_.isUndefined","_.clone","_.map","v","nodeValue","parent","node","e","edgeValue","edge","clusterDb","descendants","parents","clear","__name","isDescendant","id","ancestorId","ancestorDescendants","log","edgeInCluster","clusterId","clusterDescendants","copy","graph","newGraph","rootId","nodes","data","edges","data2","rootDescendants","vIn","wIn","newV","newW","extractDescendants","children","res","child","findCommonEdges","id1","id2","edges1","edges2","edges1Prim","edges2Prim","edgeIn1","findNonClusterChild","reserve","_id","commonEdges","getAnchorId","adjustClustersAndEdges","depth","d1","d2","nonClusterChild","hasDirectOutgoingEdge","isNodeInExtractableCluster","safeAnchor","findSafeAnchorNode","w","graphlibJson.write","extractor","hasChildren","dir","clusterGraph","graphlib.Graph","clusterNodeData","sorter","result","sorted","sortNodesByHierarchy","cluster","excludedCluster","candidate"],"mappings":"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","x_google_ignoreList":[0,1,2]}
1
+ {"version":3,"file":"chunk-RYQCIY6F-xFTrTO6v.cjs","sources":["../../../node_modules/.pnpm/lodash-es@4.18.1/node_modules/lodash-es/clone.js","../../../node_modules/.pnpm/dagre-d3-es@7.0.14/node_modules/dagre-d3-es/src/graphlib/json.js","../../../node_modules/.pnpm/mermaid@11.16.0/node_modules/mermaid/dist/chunks/mermaid.core/chunk-RYQCIY6F.mjs"],"sourcesContent":["import baseClone from './_baseClone.js';\n\n/** Used to compose bitmasks for cloning. */\nvar CLONE_SYMBOLS_FLAG = 4;\n\n/**\n * Creates a shallow clone of `value`.\n *\n * **Note:** This method is loosely based on the\n * [structured clone algorithm](https://mdn.io/Structured_clone_algorithm)\n * and supports cloning arrays, array buffers, booleans, date objects, maps,\n * numbers, `Object` objects, regexes, sets, strings, symbols, and typed\n * arrays. The own enumerable properties of `arguments` objects are cloned\n * as plain objects. An empty object is returned for uncloneable values such\n * as error objects, functions, DOM nodes, and WeakMaps.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to clone.\n * @returns {*} Returns the cloned value.\n * @see _.cloneDeep\n * @example\n *\n * var objects = [{ 'a': 1 }, { 'b': 2 }];\n *\n * var shallow = _.clone(objects);\n * console.log(shallow[0] === objects[0]);\n * // => true\n */\nfunction clone(value) {\n return baseClone(value, CLONE_SYMBOLS_FLAG);\n}\n\nexport default clone;\n","import * as _ from 'lodash-es';\nimport { Graph } from './graph.js';\n\n/**\n * @import { NodeID, EdgeObj, GraphOptions } from './graph.js';\n */\n\nexport { write, read };\n\n/**\n * @template [GraphLabel=any] - Label of the graph.\n * @template [NodeLabel=any] - Label of a node.\n * @template [EdgeLabel=any] - Label of an edge.\n *\n * @typedef {object} GraphJSON\n * @property {Required<GraphOptions>} options - The options used to create the graph.\n * @property {Array<{ v: NodeID; value?: NodeLabel; parent?: NodeID }>} nodes - The nodes in the graph.\n * @property {Array<EdgeObj & { value?: EdgeLabel }>} edges - The edges in the graph.\n * @property {GraphLabel} [value] - The graph's value, if any.\n */\n\n/**\n * Creates a JSON representation of the graph that can be serialized to a\n * string with\n * [JSON.stringify](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify).\n * The graph can later be restored using {@link read}.\n *\n * @example\n *\n * ```js\n * var g = new graphlib.Graph();\n * g.setNode(\"a\", { label: \"node a\" });\n * g.setNode(\"b\", { label: \"node b\" });\n * g.setEdge(\"a\", \"b\", { label: \"edge a->b\" });\n * graphlib.json.write(g);\n * // Returns the object:\n * //\n * // {\n * // \"options\": {\n * // \"directed\": true,\n * // \"multigraph\": false,\n * // \"compound\": false\n * // },\n * // \"nodes\": [\n * // { \"v\": \"a\", \"value\": { \"label\": \"node a\" } },\n * // { \"v\": \"b\", \"value\": { \"label\": \"node b\" } }\n * // ],\n * // \"edges\": [\n * // { \"v\": \"a\", \"w\": \"b\", \"value\": { \"label\": \"edge a->b\" } }\n * // ]\n * // }\n * ```\n *\n * @template [GraphLabel=any] - Label of the graph.\n * @template [NodeLabel=any] - Label of a node.\n * @template [EdgeLabel=any] - Label of an edge.\n * @param {Graph<GraphLabel, NodeLabel, EdgeLabel>} g - The graph to serialize.\n * @returns {GraphJSON<GraphLabel, NodeLabel, EdgeLabel>} The JSON representation of the graph.\n */\nfunction write(g) {\n /** @type {GraphJSON<GraphLabel, NodeLabel, EdgeLabel>} */\n var json = {\n options: {\n directed: g.isDirected(),\n multigraph: g.isMultigraph(),\n compound: g.isCompound(),\n },\n nodes: writeNodes(g),\n edges: writeEdges(g),\n };\n if (!_.isUndefined(g.graph())) {\n json.value = _.clone(g.graph());\n }\n return json;\n}\n\n/**\n * @template NodeLabel - Label of a node.\n *\n * @param {Graph<unknown, NodeLabel, unknown>} g - The graph to serialize.\n * @returns {Array<{ v: NodeID; value?: NodeLabel; parent?: NodeID }>} The nodes in the graph.\n */\nfunction writeNodes(g) {\n return _.map(g.nodes(), function (v) {\n var nodeValue = g.node(v);\n var parent = g.parent(v);\n /** @type {{ v: NodeID; value?: NodeLabel; parent?: NodeID }} */\n var node = { v: v };\n if (!_.isUndefined(nodeValue)) {\n node.value = nodeValue;\n }\n if (!_.isUndefined(parent)) {\n node.parent = parent;\n }\n return node;\n });\n}\n\n/**\n * @template EdgeLabel - Label of a node.\n *\n * @param {Graph<unknown, unknown, EdgeLabel>} g - The graph to serialize.\n * @returns {Array<EdgeObj & { value?: EdgeLabel }>} The edges in the graph.\n */\nfunction writeEdges(g) {\n return _.map(g.edges(), function (e) {\n var edgeValue = g.edge(e);\n /** @type {EdgeObj & { value?: EdgeLabel }} */\n var edge = { v: e.v, w: e.w };\n if (!_.isUndefined(e.name)) {\n edge.name = e.name;\n }\n if (!_.isUndefined(edgeValue)) {\n edge.value = edgeValue;\n }\n return edge;\n });\n}\n\n/**\n * Takes JSON as input and returns the graph representation.\n *\n * @example\n *\n * For example, if we have serialized the graph in {@link write}\n * to a string named `str`, we can restore it to a graph as follows:\n *\n * ```js\n * var g2 = graphlib.json.read(JSON.parse(str));\n * // or, in order to copy the graph\n * var g3 = graphlib.json.read(graphlib.json.write(g))\n *\n * g2.nodes();\n * // ['a', 'b']\n * g2.edges()\n * // [ { v: 'a', w: 'b' } ]\n * ```\n *\n * @template [GraphLabel=any] - Label of the graph.\n * @template [NodeLabel=any] - Label of a node.\n * @template [EdgeLabel=any] - Label of an edge.\n * @param {GraphJSON<GraphLabel, NodeLabel, EdgeLabel>} json - The JSON representation of the graph.\n * @returns {Graph<GraphLabel, NodeLabel, EdgeLabel>} The restored graph.\n */\nfunction read(json) {\n var g = new Graph(json.options).setGraph(json.value);\n _.each(json.nodes, function (entry) {\n g.setNode(entry.v, entry.value);\n if (entry.parent) {\n g.setParent(entry.v, entry.parent);\n }\n });\n _.each(json.edges, function (entry) {\n g.setEdge({ v: entry.v, w: entry.w, name: entry.name }, entry.value);\n });\n return g;\n}\n","import {\n log\n} from \"./chunk-X3CZISLH.mjs\";\nimport {\n __name\n} from \"./chunk-Y2CYZVJY.mjs\";\n\n// src/rendering-util/layout-algorithms/dagre/mermaid-graphlib.js\nimport * as graphlib from \"dagre-d3-es/src/graphlib/index.js\";\nimport * as graphlibJson from \"dagre-d3-es/src/graphlib/json.js\";\nvar clusterDb = /* @__PURE__ */ new Map();\nvar descendants = /* @__PURE__ */ new Map();\nvar parents = /* @__PURE__ */ new Map();\nvar clear = /* @__PURE__ */ __name(() => {\n descendants.clear();\n parents.clear();\n clusterDb.clear();\n}, \"clear\");\nvar isDescendant = /* @__PURE__ */ __name((id, ancestorId) => {\n const ancestorDescendants = descendants.get(ancestorId) || [];\n log.trace(\"In isDescendant\", ancestorId, \" \", id, \" = \", ancestorDescendants.includes(id));\n return ancestorDescendants.includes(id);\n}, \"isDescendant\");\nvar edgeInCluster = /* @__PURE__ */ __name((edge, clusterId) => {\n const clusterDescendants = descendants.get(clusterId) || [];\n log.info(\"Descendants of \", clusterId, \" is \", clusterDescendants);\n log.info(\"Edge is \", edge);\n if (edge.v === clusterId || edge.w === clusterId) {\n return false;\n }\n if (!clusterDescendants) {\n log.debug(\"Tilt, \", clusterId, \",not in descendants\");\n return false;\n }\n return clusterDescendants.includes(edge.v) || isDescendant(edge.v, clusterId) || isDescendant(edge.w, clusterId) || clusterDescendants.includes(edge.w);\n}, \"edgeInCluster\");\nvar copy = /* @__PURE__ */ __name((clusterId, graph, newGraph, rootId) => {\n log.warn(\n \"Copying children of \",\n clusterId,\n \"root\",\n rootId,\n \"data\",\n graph.node(clusterId),\n rootId\n );\n const nodes = graph.children(clusterId) || [];\n if (clusterId !== rootId) {\n nodes.push(clusterId);\n }\n log.warn(\"Copying (nodes) clusterId\", clusterId, \"nodes\", nodes);\n nodes.forEach((node) => {\n if (graph.children(node).length > 0) {\n copy(node, graph, newGraph, rootId);\n } else {\n const data = graph.node(node);\n log.info(\"cp \", node, \" to \", rootId, \" with parent \", clusterId);\n newGraph.setNode(node, data);\n if (rootId !== graph.parent(node)) {\n log.warn(\"Setting parent\", node, graph.parent(node));\n newGraph.setParent(node, graph.parent(node));\n }\n if (clusterId !== rootId && node !== clusterId) {\n log.debug(\"Setting parent\", node, clusterId);\n newGraph.setParent(node, clusterId);\n } else {\n log.info(\"In copy \", clusterId, \"root\", rootId, \"data\", graph.node(clusterId), rootId);\n log.debug(\n \"Not Setting parent for node=\",\n node,\n \"cluster!==rootId\",\n clusterId !== rootId,\n \"node!==clusterId\",\n node !== clusterId\n );\n }\n const edges = graph.edges(node);\n log.debug(\"Copying Edges\", edges);\n edges.forEach((edge) => {\n log.info(\"Edge\", edge);\n const data2 = graph.edge(edge.v, edge.w, edge.name);\n log.info(\"Edge data\", data2, rootId);\n try {\n if (edgeInCluster(edge, rootId)) {\n const rootDescendants = descendants.get(rootId) || [];\n const vIn = rootDescendants.includes(edge.v) || isDescendant(edge.v, rootId) || edge.v === rootId;\n const wIn = rootDescendants.includes(edge.w) || isDescendant(edge.w, rootId) || edge.w === rootId;\n if (vIn && wIn) {\n log.info(\"Copying as \", edge.v, edge.w, data2, edge.name);\n newGraph.setEdge(edge.v, edge.w, data2, edge.name);\n log.info(\"newGraph edges \", newGraph.edges(), newGraph.edge(newGraph.edges()[0]));\n } else {\n const newV = vIn ? rootId : edge.v;\n const newW = wIn ? rootId : edge.w;\n log.info(\"Rebinding cross-boundary edge as \", newV, newW, data2, edge.name);\n graph.setEdge(newV, newW, data2, edge.name);\n }\n } else {\n log.info(\n \"Skipping copy of edge \",\n edge.v,\n \"-->\",\n edge.w,\n \" rootId: \",\n rootId,\n \" clusterId:\",\n clusterId\n );\n }\n } catch (e) {\n log.error(e);\n }\n });\n }\n log.debug(\"Removing node\", node);\n graph.removeNode(node);\n });\n}, \"copy\");\nvar extractDescendants = /* @__PURE__ */ __name((id, graph) => {\n const children = graph.children(id);\n let res = [...children];\n for (const child of children) {\n parents.set(child, id);\n res = [...res, ...extractDescendants(child, graph)];\n }\n return res;\n}, \"extractDescendants\");\nvar findCommonEdges = /* @__PURE__ */ __name((graph, id1, id2) => {\n const edges1 = graph.edges().filter((edge) => edge.v === id1 || edge.w === id1);\n const edges2 = graph.edges().filter((edge) => edge.v === id2 || edge.w === id2);\n const edges1Prim = edges1.map((edge) => {\n return { v: edge.v === id1 ? id2 : edge.v, w: edge.w === id1 ? id1 : edge.w };\n });\n const edges2Prim = edges2.map((edge) => {\n return { v: edge.v, w: edge.w };\n });\n const result = edges1Prim.filter((edgeIn1) => {\n return edges2Prim.some((edge) => edgeIn1.v === edge.v && edgeIn1.w === edge.w);\n });\n return result;\n}, \"findCommonEdges\");\nvar findNonClusterChild = /* @__PURE__ */ __name((id, graph, clusterId) => {\n const children = graph.children(id);\n log.trace(\"Searching children of id \", id, children);\n if (children.length < 1) {\n return id;\n }\n let reserve;\n for (const child of children) {\n const _id = findNonClusterChild(child, graph, clusterId);\n const commonEdges = findCommonEdges(graph, clusterId, _id);\n if (_id) {\n if (commonEdges.length > 0) {\n reserve = _id;\n } else {\n return _id;\n }\n }\n }\n return reserve;\n}, \"findNonClusterChild\");\nvar getAnchorId = /* @__PURE__ */ __name((id) => {\n if (!clusterDb.has(id)) {\n return id;\n }\n if (!clusterDb.get(id).externalConnections) {\n return id;\n }\n if (clusterDb.has(id)) {\n return clusterDb.get(id).id;\n }\n return id;\n}, \"getAnchorId\");\nvar adjustClustersAndEdges = /* @__PURE__ */ __name((graph, depth) => {\n if (!graph || depth > 10) {\n log.debug(\"Opting out, no graph \");\n return;\n } else {\n log.debug(\"Opting in, graph \");\n }\n graph.nodes().forEach(function(id) {\n const children = graph.children(id);\n if (children.length > 0) {\n log.warn(\n \"Cluster identified\",\n id,\n \" Replacement id in edges: \",\n findNonClusterChild(id, graph, id)\n );\n descendants.set(id, extractDescendants(id, graph));\n clusterDb.set(id, { id: findNonClusterChild(id, graph, id), clusterData: graph.node(id) });\n }\n });\n graph.nodes().forEach(function(id) {\n const children = graph.children(id);\n const edges = graph.edges();\n if (children.length > 0) {\n log.debug(\"Cluster identified\", id, descendants);\n edges.forEach((edge) => {\n const d1 = isDescendant(edge.v, id);\n const d2 = isDescendant(edge.w, id);\n if (d1 ^ d2) {\n log.warn(\"Edge: \", edge, \" leaves cluster \", id);\n log.warn(\"Descendants of XXX \", id, \": \", descendants.get(id));\n clusterDb.get(id).externalConnections = true;\n }\n });\n } else {\n log.debug(\"Not a cluster \", id, descendants);\n }\n });\n for (let id of clusterDb.keys()) {\n const nonClusterChild = clusterDb.get(id).id;\n const parent = graph.parent(nonClusterChild);\n if (parent !== id && clusterDb.has(parent) && !clusterDb.get(parent).externalConnections) {\n clusterDb.get(id).id = parent;\n }\n const hasDirectOutgoingEdge = graph.edges().some((edge) => edge.v === id);\n if (nonClusterChild && clusterDb.get(id)?.externalConnections && hasDirectOutgoingEdge && isNodeInExtractableCluster(graph, nonClusterChild, id)) {\n const safeAnchor = findSafeAnchorNode(graph, id, graph.parent(nonClusterChild));\n if (safeAnchor) {\n clusterDb.get(id).id = safeAnchor;\n }\n }\n }\n graph.edges().forEach(function(e) {\n const edge = graph.edge(e);\n log.warn(\"Edge \" + e.v + \" -> \" + e.w + \": \" + JSON.stringify(e));\n log.warn(\"Edge \" + e.v + \" -> \" + e.w + \": \" + JSON.stringify(graph.edge(e)));\n let v = e.v;\n let w = e.w;\n log.warn(\n \"Fix XXX\",\n clusterDb,\n \"ids:\",\n e.v,\n e.w,\n \"Translating: \",\n clusterDb.get(e.v),\n \" --- \",\n clusterDb.get(e.w)\n );\n if (clusterDb.get(e.v) || clusterDb.get(e.w)) {\n log.warn(\"Fixing and trying - removing XXX\", e.v, e.w, e.name);\n v = getAnchorId(e.v);\n w = getAnchorId(e.w);\n graph.removeEdge(e.v, e.w, e.name);\n if (v !== e.v) {\n const parent = graph.parent(v);\n clusterDb.get(parent).externalConnections = true;\n edge.fromCluster = e.v;\n }\n if (w !== e.w) {\n const parent = graph.parent(w);\n clusterDb.get(parent).externalConnections = true;\n edge.toCluster = e.w;\n }\n log.warn(\"Fix Replacing with XXX\", v, w, e.name);\n graph.setEdge(v, w, edge, e.name);\n }\n });\n log.warn(\"Adjusted Graph\", graphlibJson.write(graph));\n extractor(graph, 0);\n log.trace(clusterDb);\n}, \"adjustClustersAndEdges\");\nvar extractor = /* @__PURE__ */ __name((graph, depth) => {\n log.warn(\"extractor - \", depth, graphlibJson.write(graph), graph.children(\"D\"));\n if (depth > 10) {\n log.error(\"Bailing out\");\n return;\n }\n let nodes = graph.nodes();\n let hasChildren = false;\n for (const node of nodes) {\n const children = graph.children(node);\n hasChildren = hasChildren || children.length > 0;\n }\n if (!hasChildren) {\n log.debug(\"Done, no node has children\", graph.nodes());\n return;\n }\n log.debug(\"Nodes = \", nodes, depth);\n for (const node of nodes) {\n log.debug(\n \"Extracting node\",\n node,\n clusterDb,\n clusterDb.has(node) && !clusterDb.get(node).externalConnections,\n !graph.parent(node),\n graph.node(node),\n graph.children(\"D\"),\n \" Depth \",\n depth\n );\n if (!clusterDb.has(node)) {\n log.debug(\"Not a cluster\", node, depth);\n } else if (clusterDb.get(node)?.clusterData?.explicitDir && graph.children(node) && graph.children(node).length > 0) {\n log.warn(\"Cluster with explicit dir, creating subgraph for children\", node, depth);\n const dir = clusterDb.get(node).clusterData.dir;\n const clusterGraph = new graphlib.Graph({\n multigraph: true,\n compound: true\n }).setGraph({\n rankdir: dir,\n nodesep: 50,\n ranksep: 50,\n marginx: 8,\n marginy: 8\n }).setDefaultEdgeLabel(function() {\n return {};\n });\n copy(node, graph, clusterGraph, node);\n const clusterNodeData = graph.node(node) || {};\n graph.setNode(node, {\n ...clusterNodeData,\n clusterNode: true,\n id: node,\n clusterData: clusterDb.get(node).clusterData,\n label: clusterDb.get(node).label,\n graph: clusterGraph\n });\n log.warn(\n \"Subgraph for cluster with explicit dir created:\",\n node,\n graphlibJson.write(clusterGraph)\n );\n } else if (!clusterDb.get(node).externalConnections && graph.children(node) && graph.children(node).length > 0) {\n log.warn(\n \"Cluster without external connections, without a parent and with children\",\n node,\n depth\n );\n const graphSettings = graph.graph();\n let dir = graphSettings.rankdir === \"TB\" ? \"LR\" : \"TB\";\n if (clusterDb.get(node)?.clusterData?.dir) {\n dir = clusterDb.get(node).clusterData.dir;\n log.warn(\"Fixing dir\", clusterDb.get(node).clusterData.dir, dir);\n }\n const clusterGraph = new graphlib.Graph({\n multigraph: true,\n compound: true\n }).setGraph({\n rankdir: dir,\n nodesep: 50,\n ranksep: 50,\n marginx: 8,\n marginy: 8\n }).setDefaultEdgeLabel(function() {\n return {};\n });\n copy(node, graph, clusterGraph, node);\n const clusterNodeData = graph.node(node) || {};\n graph.setNode(node, {\n ...clusterNodeData,\n clusterNode: true,\n id: node,\n clusterData: clusterDb.get(node).clusterData,\n label: clusterDb.get(node).label,\n graph: clusterGraph\n });\n log.debug(\"Old graph after copy\", graphlibJson.write(graph));\n } else {\n log.warn(\n \"Cluster ** \",\n node,\n \" **not meeting the criteria !externalConnections:\",\n !clusterDb.get(node).externalConnections,\n \" no parent: \",\n !graph.parent(node),\n \" children \",\n graph.children(node) && graph.children(node).length > 0,\n graph.children(\"D\"),\n depth\n );\n log.debug(clusterDb);\n }\n }\n nodes = graph.nodes();\n log.warn(\"New list of nodes\", nodes);\n for (const node of nodes) {\n const data = graph.node(node);\n log.warn(\" Now next level\", node, data);\n if (data?.clusterNode) {\n extractor(data.graph, depth + 1);\n }\n }\n}, \"extractor\");\nvar sorter = /* @__PURE__ */ __name((graph, nodes) => {\n if (nodes.length === 0) {\n return [];\n }\n let result = Object.assign([], nodes);\n nodes.forEach((node) => {\n const children = graph.children(node);\n const sorted = sorter(graph, children);\n result = [...result, ...sorted];\n });\n return result;\n}, \"sorter\");\nvar sortNodesByHierarchy = /* @__PURE__ */ __name((graph) => sorter(graph, graph.children()), \"sortNodesByHierarchy\");\nvar isNodeInExtractableCluster = /* @__PURE__ */ __name((graph, node, rootId) => {\n let parent = graph.parent(node);\n while (parent && parent !== rootId) {\n const cluster = clusterDb.get(parent);\n if (cluster && !cluster.externalConnections) {\n return true;\n }\n parent = graph.parent(parent);\n }\n return false;\n}, \"isNodeInExtractableCluster\");\nvar findSafeAnchorNode = /* @__PURE__ */ __name((graph, clusterId, excludedCluster) => {\n const children = graph.children(clusterId) ?? [];\n for (const child of children) {\n if (child === excludedCluster || isDescendant(child, excludedCluster)) {\n continue;\n }\n const candidate = findNonClusterChild(child, graph, clusterId);\n if (!candidate) {\n continue;\n }\n if (!isNodeInExtractableCluster(graph, candidate, clusterId)) {\n return candidate;\n }\n }\n return null;\n}, \"findSafeAnchorNode\");\n\nexport {\n clusterDb,\n clear,\n findNonClusterChild,\n adjustClustersAndEdges,\n sortNodesByHierarchy\n};\n"],"names":["CLONE_SYMBOLS_FLAG","clone","value","baseClone","write","g","json","writeNodes","writeEdges","_.isUndefined","_.clone","_.map","v","nodeValue","parent","node","e","edgeValue","edge","clusterDb","descendants","parents","clear","__name","isDescendant","id","ancestorId","ancestorDescendants","log","edgeInCluster","clusterId","clusterDescendants","copy","graph","newGraph","rootId","nodes","data","edges","data2","rootDescendants","vIn","wIn","newV","newW","extractDescendants","children","res","child","findCommonEdges","id1","id2","edges1","edges2","edges1Prim","edges2Prim","edgeIn1","findNonClusterChild","reserve","_id","commonEdges","getAnchorId","adjustClustersAndEdges","depth","d1","d2","nonClusterChild","hasDirectOutgoingEdge","isNodeInExtractableCluster","safeAnchor","findSafeAnchorNode","w","graphlibJson.write","extractor","hasChildren","dir","clusterGraph","graphlib.Graph","clusterNodeData","sorter","result","sorted","sortNodesByHierarchy","cluster","excludedCluster","candidate"],"mappings":"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","x_google_ignoreList":[0,1,2]}
@@ -1,14 +1,14 @@
1
- import { g as st } from "./chunk-5VM5RSS4-8uhmWNYU.js";
2
- import { g as it } from "./chunk-XXDRQBXY-C5GJuDGM.js";
3
- import { s as at } from "./chunk-VR4S4FIN-B50Vp5sn.js";
4
- import { $ as f, a2 as we, a0 as F, ad as nt, ae as rt, af as Ve, a1 as Ae, _ as ut, X as lt, V as ct, W as ot, ag as ht, ah as dt, a9 as I, am as pt, al as At, a6 as ft, aD as U } from "./extractHeadings-DXqyEdSz.js";
5
- import { c as gt } from "./chunk-32BRIVSS-BsmIXWWd.js";
1
+ import { g as st } from "./chunk-5VM5RSS4-DI1kbCYB.js";
2
+ import { g as it } from "./chunk-XXDRQBXY-DrE4gFtL.js";
3
+ import { s as at } from "./chunk-VR4S4FIN-DSW2sQDL.js";
4
+ import { _ as f, a0 as we, X as F, ab as nt, ac as rt, ad as Ve, $ as Ae, W as ut, V as lt, Q as ct, U as ot, ae as ht, af as dt, a7 as I, ak as pt, aj as At, a4 as ft, aB as U } from "./extractHeadings-Dgzd324l.js";
5
+ import { c as gt } from "./chunk-32BRIVSS-BCAuSjpE.js";
6
6
  import mt from "dompurify";
7
7
  var Pe = (function() {
8
8
  var s = /* @__PURE__ */ f(function(O, o, h, p) {
9
9
  for (h = h || {}, p = O.length; p--; h[O[p]] = o) ;
10
10
  return h;
11
- }, "o"), i = [1, 18], a = [1, 19], n = [1, 20], r = [1, 41], c = [1, 26], u = [1, 42], d = [1, 24], m = [1, 25], g = [1, 32], N = [1, 33], ge = [1, 34], b = [1, 45], me = [1, 35], Ce = [1, 36], be = [1, 37], ke = [1, 38], Ee = [1, 27], Te = [1, 28], ye = [1, 29], De = [1, 30], Fe = [1, 31], k = [1, 44], E = [1, 46], T = [1, 43], y = [1, 47], Be = [1, 9], A = [1, 8, 9], ee = [1, 58], te = [1, 59], se = [1, 60], ie = [1, 61], ae = [1, 62], _e = [1, 63], Se = [1, 64], _ = [1, 8, 9, 41], Me = [1, 77], R = [1, 8, 9, 12, 13, 22, 39, 41, 44, 46, 68, 69, 70, 71, 72, 73, 74, 79, 81], ne = [1, 8, 9, 12, 13, 18, 20, 22, 39, 41, 44, 46, 47, 60, 68, 69, 70, 71, 72, 73, 74, 79, 81, 86, 100, 102, 103], re = [13, 60, 86, 100, 102, 103], Y = [13, 60, 73, 74, 86, 100, 102, 103], Re = [13, 60, 68, 69, 70, 71, 72, 86, 100, 102, 103], ue = [1, 103], K = [1, 121], W = [1, 117], Q = [1, 113], X = [1, 119], j = [1, 114], q = [1, 115], H = [1, 116], J = [1, 118], Z = [1, 120], Ge = [22, 50, 60, 61, 82, 86, 87, 88, 89, 90], Ue = [1, 128], le = [12, 39], Ne = [1, 8, 9, 39, 41, 44, 46], ce = [1, 8, 9, 22], ze = [1, 153], Ye = [1, 8, 9, 61], x = [1, 8, 9, 22, 50, 60, 61, 82, 86, 87, 88, 89, 90], Le = {
11
+ }, "o"), i = [1, 18], a = [1, 19], n = [1, 20], r = [1, 41], c = [1, 26], u = [1, 42], d = [1, 24], m = [1, 25], g = [1, 32], N = [1, 33], ge = [1, 34], b = [1, 45], me = [1, 35], Ce = [1, 36], be = [1, 37], ke = [1, 38], Ee = [1, 27], Te = [1, 28], ye = [1, 29], De = [1, 30], Fe = [1, 31], k = [1, 44], E = [1, 46], T = [1, 43], y = [1, 47], Be = [1, 9], A = [1, 8, 9], ee = [1, 58], te = [1, 59], se = [1, 60], ie = [1, 61], ae = [1, 62], _e = [1, 63], Se = [1, 64], _ = [1, 8, 9, 41], Me = [1, 77], R = [1, 8, 9, 12, 13, 22, 39, 41, 44, 46, 68, 69, 70, 71, 72, 73, 74, 79, 81], ne = [1, 8, 9, 12, 13, 18, 20, 22, 39, 41, 44, 46, 47, 60, 68, 69, 70, 71, 72, 73, 74, 79, 81, 86, 100, 102, 103], re = [13, 60, 86, 100, 102, 103], Y = [13, 60, 73, 74, 86, 100, 102, 103], Re = [13, 60, 68, 69, 70, 71, 72, 86, 100, 102, 103], ue = [1, 103], K = [1, 121], W = [1, 117], Q = [1, 113], j = [1, 119], X = [1, 114], q = [1, 115], H = [1, 116], J = [1, 118], Z = [1, 120], Ge = [22, 50, 60, 61, 82, 86, 87, 88, 89, 90], Ue = [1, 128], le = [12, 39], Ne = [1, 8, 9, 39, 41, 44, 46], ce = [1, 8, 9, 22], ze = [1, 153], Ye = [1, 8, 9, 61], x = [1, 8, 9, 22, 50, 60, 61, 82, 86, 87, 88, 89, 90], Le = {
12
12
  trace: /* @__PURE__ */ f(function() {
13
13
  }, "trace"),
14
14
  yy: {},
@@ -256,7 +256,7 @@ var Pe = (function() {
256
256
  break;
257
257
  }
258
258
  }, "anonymous"),
259
- table: [{ 3: 1, 4: 2, 5: 3, 6: 4, 7: [1, 6], 10: 5, 16: 39, 17: 40, 19: 21, 21: 7, 23: 8, 24: 9, 25: 10, 26: 11, 27: 12, 28: 13, 29: 14, 30: 15, 31: 16, 32: 17, 33: i, 35: a, 37: n, 38: 22, 42: r, 43: 23, 46: c, 48: u, 51: d, 52: m, 54: g, 56: N, 57: ge, 60: b, 62: me, 63: Ce, 64: be, 65: ke, 75: Ee, 76: Te, 78: ye, 82: De, 83: Fe, 86: k, 100: E, 102: T, 103: y }, { 1: [3] }, { 1: [2, 1] }, { 1: [2, 2] }, { 1: [2, 3] }, s(Be, [2, 5], { 8: [1, 48] }), { 8: [1, 49] }, s(A, [2, 19], { 22: [1, 50] }), s(A, [2, 21]), s(A, [2, 22]), s(A, [2, 23]), s(A, [2, 24]), s(A, [2, 25]), s(A, [2, 26]), s(A, [2, 27]), s(A, [2, 28]), s(A, [2, 29]), s(A, [2, 30]), { 34: [1, 51] }, { 36: [1, 52] }, s(A, [2, 33]), s(A, [2, 63], { 53: 53, 66: 56, 67: 57, 13: [1, 54], 22: [1, 55], 68: ee, 69: te, 70: se, 71: ie, 72: ae, 73: _e, 74: Se }), { 39: [1, 65] }, s(_, [2, 47], { 39: [1, 67], 44: [1, 66], 46: [1, 68] }), s(A, [2, 65]), s(A, [2, 66]), { 16: 69, 60: b, 86: k, 100: E, 102: T }, { 16: 39, 17: 40, 19: 70, 60: b, 86: k, 100: E, 102: T, 103: y }, { 16: 39, 17: 40, 19: 71, 60: b, 86: k, 100: E, 102: T, 103: y }, { 16: 39, 17: 40, 19: 72, 60: b, 86: k, 100: E, 102: T, 103: y }, { 60: [1, 73] }, { 13: [1, 74] }, { 16: 39, 17: 40, 19: 75, 60: b, 86: k, 100: E, 102: T, 103: y }, { 13: Me, 55: 76 }, { 58: 78, 60: [1, 79] }, s(A, [2, 76]), s(A, [2, 77]), s(A, [2, 78]), s(A, [2, 79]), s(R, [2, 13], { 16: 39, 17: 40, 19: 81, 18: [1, 80], 20: [1, 82], 60: b, 86: k, 100: E, 102: T, 103: y }), s(R, [2, 15], { 20: [1, 83] }), { 15: 84, 16: 85, 17: 86, 60: b, 86: k, 100: E, 102: T, 103: y }, { 16: 39, 17: 40, 19: 87, 60: b, 86: k, 100: E, 102: T, 103: y }, s(ne, [2, 133]), s(ne, [2, 134]), s(ne, [2, 135]), s(ne, [2, 136]), s([1, 8, 9, 12, 13, 20, 22, 39, 41, 44, 46, 68, 69, 70, 71, 72, 73, 74, 79, 81], [2, 137]), s(Be, [2, 6], { 10: 5, 21: 7, 23: 8, 24: 9, 25: 10, 26: 11, 27: 12, 28: 13, 29: 14, 30: 15, 31: 16, 32: 17, 19: 21, 38: 22, 43: 23, 16: 39, 17: 40, 5: 88, 33: i, 35: a, 37: n, 42: r, 46: c, 48: u, 51: d, 52: m, 54: g, 56: N, 57: ge, 60: b, 62: me, 63: Ce, 64: be, 65: ke, 75: Ee, 76: Te, 78: ye, 82: De, 83: Fe, 86: k, 100: E, 102: T, 103: y }), { 5: 89, 10: 5, 16: 39, 17: 40, 19: 21, 21: 7, 23: 8, 24: 9, 25: 10, 26: 11, 27: 12, 28: 13, 29: 14, 30: 15, 31: 16, 32: 17, 33: i, 35: a, 37: n, 38: 22, 42: r, 43: 23, 46: c, 48: u, 51: d, 52: m, 54: g, 56: N, 57: ge, 60: b, 62: me, 63: Ce, 64: be, 65: ke, 75: Ee, 76: Te, 78: ye, 82: De, 83: Fe, 86: k, 100: E, 102: T, 103: y }, s(A, [2, 20]), s(A, [2, 31]), s(A, [2, 32]), { 13: [1, 91], 16: 39, 17: 40, 19: 90, 60: b, 86: k, 100: E, 102: T, 103: y }, { 53: 92, 66: 56, 67: 57, 68: ee, 69: te, 70: se, 71: ie, 72: ae, 73: _e, 74: Se }, s(A, [2, 64]), { 67: 93, 73: _e, 74: Se }, s(re, [2, 83], { 66: 94, 68: ee, 69: te, 70: se, 71: ie, 72: ae }), s(Y, [2, 84]), s(Y, [2, 85]), s(Y, [2, 86]), s(Y, [2, 87]), s(Y, [2, 88]), s(Re, [2, 89]), s(Re, [2, 90]), { 8: [1, 96], 23: 99, 24: 97, 30: 98, 38: 22, 40: 95, 42: r, 43: 23, 48: u, 54: g, 56: N }, { 16: 100, 60: b, 86: k, 100: E, 102: T }, { 41: [1, 102], 45: 101, 51: ue }, { 16: 104, 60: b, 86: k, 100: E, 102: T }, { 47: [1, 105] }, { 13: [1, 106] }, { 13: [1, 107] }, { 79: [1, 108], 81: [1, 109] }, { 22: K, 50: W, 59: 110, 60: Q, 82: X, 84: 111, 85: 112, 86: j, 87: q, 88: H, 89: J, 90: Z }, { 60: [1, 122] }, { 13: Me, 55: 123 }, s(_, [2, 72]), s(_, [2, 138]), { 22: K, 50: W, 59: 124, 60: Q, 61: [1, 125], 82: X, 84: 111, 85: 112, 86: j, 87: q, 88: H, 89: J, 90: Z }, s(Ge, [2, 74]), { 16: 39, 17: 40, 19: 126, 60: b, 86: k, 100: E, 102: T, 103: y }, s(R, [2, 16]), s(R, [2, 17]), s(R, [2, 18]), { 11: 127, 12: Ue, 39: [2, 36] }, s(le, [2, 9], { 16: 85, 17: 86, 15: 130, 18: [1, 129], 60: b, 86: k, 100: E, 102: T, 103: y }), s(le, [2, 10]), s(Ne, [2, 55], { 11: 131, 12: Ue }), s(Be, [2, 7]), { 9: [1, 132] }, s(ce, [2, 67]), { 16: 39, 17: 40, 19: 133, 60: b, 86: k, 100: E, 102: T, 103: y }, { 13: [1, 135], 16: 39, 17: 40, 19: 134, 60: b, 86: k, 100: E, 102: T, 103: y }, s(re, [2, 82], { 66: 136, 68: ee, 69: te, 70: se, 71: ie, 72: ae }), s(re, [2, 81]), { 41: [1, 137] }, { 23: 99, 24: 97, 30: 98, 38: 22, 40: 138, 42: r, 43: 23, 48: u, 54: g, 56: N }, { 8: [1, 139], 41: [2, 38] }, { 8: [1, 140], 41: [2, 41] }, { 8: [1, 141], 41: [2, 44] }, s(_, [2, 48], { 39: [1, 142] }), { 41: [1, 143] }, s(_, [2, 50]), { 41: [2, 61], 45: 144, 51: ue }, { 47: [1, 145] }, { 16: 39, 17: 40, 19: 146, 60: b, 86: k, 100: E, 102: T, 103: y }, s(A, [2, 91], { 13: [1, 147] }), s(A, [2, 93], { 13: [1, 149], 77: [1, 148] }), s(A, [2, 97], { 13: [1, 150], 80: [1, 151] }), { 13: [1, 152] }, s(A, [2, 105], { 61: ze }), s(Ye, [2, 107], { 85: 154, 22: K, 50: W, 60: Q, 82: X, 86: j, 87: q, 88: H, 89: J, 90: Z }), s(x, [2, 109]), s(x, [2, 111]), s(x, [2, 112]), s(x, [2, 113]), s(x, [2, 114]), s(x, [2, 115]), s(x, [2, 116]), s(x, [2, 117]), s(x, [2, 118]), s(x, [2, 119]), s(A, [2, 106]), s(_, [2, 71]), s(A, [2, 73], { 61: ze }), { 60: [1, 155] }, s(R, [2, 14]), { 39: [2, 37] }, { 13: [1, 156] }, { 15: 157, 16: 85, 17: 86, 60: b, 86: k, 100: E, 102: T, 103: y }, s(le, [2, 12]), s(Ne, [2, 56]), { 1: [2, 4] }, s(ce, [2, 69]), s(ce, [2, 68]), { 16: 39, 17: 40, 19: 158, 60: b, 86: k, 100: E, 102: T, 103: y }, s(re, [2, 80]), s(_, [2, 34]), { 41: [1, 159] }, { 23: 99, 24: 97, 30: 98, 38: 22, 40: 160, 41: [2, 39], 42: r, 43: 23, 48: u, 54: g, 56: N }, { 23: 99, 24: 97, 30: 98, 38: 22, 40: 161, 41: [2, 42], 42: r, 43: 23, 48: u, 54: g, 56: N }, { 23: 99, 24: 97, 30: 98, 38: 22, 40: 162, 41: [2, 45], 42: r, 43: 23, 48: u, 54: g, 56: N }, { 45: 163, 51: ue }, s(_, [2, 49]), { 41: [2, 62] }, s(_, [2, 52], { 39: [1, 164] }), s(A, [2, 60]), s(A, [2, 92]), s(A, [2, 94]), s(A, [2, 95], { 77: [1, 165] }), s(A, [2, 98]), s(A, [2, 99], { 13: [1, 166] }), s(A, [2, 101], { 13: [1, 168], 77: [1, 167] }), { 22: K, 50: W, 60: Q, 82: X, 84: 169, 85: 112, 86: j, 87: q, 88: H, 89: J, 90: Z }, s(x, [2, 110]), s(Ge, [2, 75]), { 14: [1, 170] }, s(le, [2, 11]), s(ce, [2, 70]), s(_, [2, 35]), { 41: [2, 40] }, { 41: [2, 43] }, { 41: [2, 46] }, { 41: [1, 171] }, { 41: [1, 173], 45: 172, 51: ue }, s(A, [2, 96]), s(A, [2, 100]), s(A, [2, 102]), s(A, [2, 103], { 77: [1, 174] }), s(Ye, [2, 108], { 85: 154, 22: K, 50: W, 60: Q, 82: X, 86: j, 87: q, 88: H, 89: J, 90: Z }), s(Ne, [2, 8]), s(_, [2, 51]), { 41: [1, 175] }, s(_, [2, 54]), s(A, [2, 104]), s(_, [2, 53])],
259
+ table: [{ 3: 1, 4: 2, 5: 3, 6: 4, 7: [1, 6], 10: 5, 16: 39, 17: 40, 19: 21, 21: 7, 23: 8, 24: 9, 25: 10, 26: 11, 27: 12, 28: 13, 29: 14, 30: 15, 31: 16, 32: 17, 33: i, 35: a, 37: n, 38: 22, 42: r, 43: 23, 46: c, 48: u, 51: d, 52: m, 54: g, 56: N, 57: ge, 60: b, 62: me, 63: Ce, 64: be, 65: ke, 75: Ee, 76: Te, 78: ye, 82: De, 83: Fe, 86: k, 100: E, 102: T, 103: y }, { 1: [3] }, { 1: [2, 1] }, { 1: [2, 2] }, { 1: [2, 3] }, s(Be, [2, 5], { 8: [1, 48] }), { 8: [1, 49] }, s(A, [2, 19], { 22: [1, 50] }), s(A, [2, 21]), s(A, [2, 22]), s(A, [2, 23]), s(A, [2, 24]), s(A, [2, 25]), s(A, [2, 26]), s(A, [2, 27]), s(A, [2, 28]), s(A, [2, 29]), s(A, [2, 30]), { 34: [1, 51] }, { 36: [1, 52] }, s(A, [2, 33]), s(A, [2, 63], { 53: 53, 66: 56, 67: 57, 13: [1, 54], 22: [1, 55], 68: ee, 69: te, 70: se, 71: ie, 72: ae, 73: _e, 74: Se }), { 39: [1, 65] }, s(_, [2, 47], { 39: [1, 67], 44: [1, 66], 46: [1, 68] }), s(A, [2, 65]), s(A, [2, 66]), { 16: 69, 60: b, 86: k, 100: E, 102: T }, { 16: 39, 17: 40, 19: 70, 60: b, 86: k, 100: E, 102: T, 103: y }, { 16: 39, 17: 40, 19: 71, 60: b, 86: k, 100: E, 102: T, 103: y }, { 16: 39, 17: 40, 19: 72, 60: b, 86: k, 100: E, 102: T, 103: y }, { 60: [1, 73] }, { 13: [1, 74] }, { 16: 39, 17: 40, 19: 75, 60: b, 86: k, 100: E, 102: T, 103: y }, { 13: Me, 55: 76 }, { 58: 78, 60: [1, 79] }, s(A, [2, 76]), s(A, [2, 77]), s(A, [2, 78]), s(A, [2, 79]), s(R, [2, 13], { 16: 39, 17: 40, 19: 81, 18: [1, 80], 20: [1, 82], 60: b, 86: k, 100: E, 102: T, 103: y }), s(R, [2, 15], { 20: [1, 83] }), { 15: 84, 16: 85, 17: 86, 60: b, 86: k, 100: E, 102: T, 103: y }, { 16: 39, 17: 40, 19: 87, 60: b, 86: k, 100: E, 102: T, 103: y }, s(ne, [2, 133]), s(ne, [2, 134]), s(ne, [2, 135]), s(ne, [2, 136]), s([1, 8, 9, 12, 13, 20, 22, 39, 41, 44, 46, 68, 69, 70, 71, 72, 73, 74, 79, 81], [2, 137]), s(Be, [2, 6], { 10: 5, 21: 7, 23: 8, 24: 9, 25: 10, 26: 11, 27: 12, 28: 13, 29: 14, 30: 15, 31: 16, 32: 17, 19: 21, 38: 22, 43: 23, 16: 39, 17: 40, 5: 88, 33: i, 35: a, 37: n, 42: r, 46: c, 48: u, 51: d, 52: m, 54: g, 56: N, 57: ge, 60: b, 62: me, 63: Ce, 64: be, 65: ke, 75: Ee, 76: Te, 78: ye, 82: De, 83: Fe, 86: k, 100: E, 102: T, 103: y }), { 5: 89, 10: 5, 16: 39, 17: 40, 19: 21, 21: 7, 23: 8, 24: 9, 25: 10, 26: 11, 27: 12, 28: 13, 29: 14, 30: 15, 31: 16, 32: 17, 33: i, 35: a, 37: n, 38: 22, 42: r, 43: 23, 46: c, 48: u, 51: d, 52: m, 54: g, 56: N, 57: ge, 60: b, 62: me, 63: Ce, 64: be, 65: ke, 75: Ee, 76: Te, 78: ye, 82: De, 83: Fe, 86: k, 100: E, 102: T, 103: y }, s(A, [2, 20]), s(A, [2, 31]), s(A, [2, 32]), { 13: [1, 91], 16: 39, 17: 40, 19: 90, 60: b, 86: k, 100: E, 102: T, 103: y }, { 53: 92, 66: 56, 67: 57, 68: ee, 69: te, 70: se, 71: ie, 72: ae, 73: _e, 74: Se }, s(A, [2, 64]), { 67: 93, 73: _e, 74: Se }, s(re, [2, 83], { 66: 94, 68: ee, 69: te, 70: se, 71: ie, 72: ae }), s(Y, [2, 84]), s(Y, [2, 85]), s(Y, [2, 86]), s(Y, [2, 87]), s(Y, [2, 88]), s(Re, [2, 89]), s(Re, [2, 90]), { 8: [1, 96], 23: 99, 24: 97, 30: 98, 38: 22, 40: 95, 42: r, 43: 23, 48: u, 54: g, 56: N }, { 16: 100, 60: b, 86: k, 100: E, 102: T }, { 41: [1, 102], 45: 101, 51: ue }, { 16: 104, 60: b, 86: k, 100: E, 102: T }, { 47: [1, 105] }, { 13: [1, 106] }, { 13: [1, 107] }, { 79: [1, 108], 81: [1, 109] }, { 22: K, 50: W, 59: 110, 60: Q, 82: j, 84: 111, 85: 112, 86: X, 87: q, 88: H, 89: J, 90: Z }, { 60: [1, 122] }, { 13: Me, 55: 123 }, s(_, [2, 72]), s(_, [2, 138]), { 22: K, 50: W, 59: 124, 60: Q, 61: [1, 125], 82: j, 84: 111, 85: 112, 86: X, 87: q, 88: H, 89: J, 90: Z }, s(Ge, [2, 74]), { 16: 39, 17: 40, 19: 126, 60: b, 86: k, 100: E, 102: T, 103: y }, s(R, [2, 16]), s(R, [2, 17]), s(R, [2, 18]), { 11: 127, 12: Ue, 39: [2, 36] }, s(le, [2, 9], { 16: 85, 17: 86, 15: 130, 18: [1, 129], 60: b, 86: k, 100: E, 102: T, 103: y }), s(le, [2, 10]), s(Ne, [2, 55], { 11: 131, 12: Ue }), s(Be, [2, 7]), { 9: [1, 132] }, s(ce, [2, 67]), { 16: 39, 17: 40, 19: 133, 60: b, 86: k, 100: E, 102: T, 103: y }, { 13: [1, 135], 16: 39, 17: 40, 19: 134, 60: b, 86: k, 100: E, 102: T, 103: y }, s(re, [2, 82], { 66: 136, 68: ee, 69: te, 70: se, 71: ie, 72: ae }), s(re, [2, 81]), { 41: [1, 137] }, { 23: 99, 24: 97, 30: 98, 38: 22, 40: 138, 42: r, 43: 23, 48: u, 54: g, 56: N }, { 8: [1, 139], 41: [2, 38] }, { 8: [1, 140], 41: [2, 41] }, { 8: [1, 141], 41: [2, 44] }, s(_, [2, 48], { 39: [1, 142] }), { 41: [1, 143] }, s(_, [2, 50]), { 41: [2, 61], 45: 144, 51: ue }, { 47: [1, 145] }, { 16: 39, 17: 40, 19: 146, 60: b, 86: k, 100: E, 102: T, 103: y }, s(A, [2, 91], { 13: [1, 147] }), s(A, [2, 93], { 13: [1, 149], 77: [1, 148] }), s(A, [2, 97], { 13: [1, 150], 80: [1, 151] }), { 13: [1, 152] }, s(A, [2, 105], { 61: ze }), s(Ye, [2, 107], { 85: 154, 22: K, 50: W, 60: Q, 82: j, 86: X, 87: q, 88: H, 89: J, 90: Z }), s(x, [2, 109]), s(x, [2, 111]), s(x, [2, 112]), s(x, [2, 113]), s(x, [2, 114]), s(x, [2, 115]), s(x, [2, 116]), s(x, [2, 117]), s(x, [2, 118]), s(x, [2, 119]), s(A, [2, 106]), s(_, [2, 71]), s(A, [2, 73], { 61: ze }), { 60: [1, 155] }, s(R, [2, 14]), { 39: [2, 37] }, { 13: [1, 156] }, { 15: 157, 16: 85, 17: 86, 60: b, 86: k, 100: E, 102: T, 103: y }, s(le, [2, 12]), s(Ne, [2, 56]), { 1: [2, 4] }, s(ce, [2, 69]), s(ce, [2, 68]), { 16: 39, 17: 40, 19: 158, 60: b, 86: k, 100: E, 102: T, 103: y }, s(re, [2, 80]), s(_, [2, 34]), { 41: [1, 159] }, { 23: 99, 24: 97, 30: 98, 38: 22, 40: 160, 41: [2, 39], 42: r, 43: 23, 48: u, 54: g, 56: N }, { 23: 99, 24: 97, 30: 98, 38: 22, 40: 161, 41: [2, 42], 42: r, 43: 23, 48: u, 54: g, 56: N }, { 23: 99, 24: 97, 30: 98, 38: 22, 40: 162, 41: [2, 45], 42: r, 43: 23, 48: u, 54: g, 56: N }, { 45: 163, 51: ue }, s(_, [2, 49]), { 41: [2, 62] }, s(_, [2, 52], { 39: [1, 164] }), s(A, [2, 60]), s(A, [2, 92]), s(A, [2, 94]), s(A, [2, 95], { 77: [1, 165] }), s(A, [2, 98]), s(A, [2, 99], { 13: [1, 166] }), s(A, [2, 101], { 13: [1, 168], 77: [1, 167] }), { 22: K, 50: W, 60: Q, 82: j, 84: 169, 85: 112, 86: X, 87: q, 88: H, 89: J, 90: Z }, s(x, [2, 110]), s(Ge, [2, 75]), { 14: [1, 170] }, s(le, [2, 11]), s(ce, [2, 70]), s(_, [2, 35]), { 41: [2, 40] }, { 41: [2, 43] }, { 41: [2, 46] }, { 41: [1, 171] }, { 41: [1, 173], 45: 172, 51: ue }, s(A, [2, 96]), s(A, [2, 100]), s(A, [2, 102]), s(A, [2, 103], { 77: [1, 174] }), s(Ye, [2, 108], { 85: 154, 22: K, 50: W, 60: Q, 82: j, 86: X, 87: q, 88: H, 89: J, 90: Z }), s(Ne, [2, 8]), s(_, [2, 51]), { 41: [1, 175] }, s(_, [2, 54]), s(A, [2, 104]), s(_, [2, 53])],
260
260
  defaultActions: { 2: [2, 1], 3: [2, 2], 4: [2, 3], 127: [2, 37], 132: [2, 4], 144: [2, 62], 160: [2, 40], 161: [2, 43], 162: [2, 46] },
261
261
  parseError: /* @__PURE__ */ f(function(o, h) {
262
262
  if (h.recoverable)
@@ -284,7 +284,7 @@ var Pe = (function() {
284
284
  return S = l.pop() || D.lex() || We, typeof S != "number" && (S instanceof Array && (l = S, S = l.pop()), S = h.symbols_[S] || S), S;
285
285
  }
286
286
  f(Qe, "lex");
287
- for (var B, P, L, Ie, G = {}, de, v, Xe, pe; ; ) {
287
+ for (var B, P, L, Ie, G = {}, de, v, je, pe; ; ) {
288
288
  if (P = p[p.length - 1], this.defaultActions[P] ? L = this.defaultActions[P] : ((B === null || typeof B > "u") && (B = Qe()), L = $[P] && $[P][B]), typeof L > "u" || !L.length || !L[0]) {
289
289
  var Oe = "";
290
290
  pe = [];
@@ -325,7 +325,7 @@ Expecting ` + pe.join(", ") + ", got '" + (this.terminals_[B] || B) + "'" : Oe =
325
325
  e
326
326
  ].concat($e)), typeof Ie < "u")
327
327
  return Ie;
328
- v && (p = p.slice(0, -1 * v * 2), C = C.slice(0, -1 * v), e = e.slice(0, -1 * v)), p.push(this.productions_[L[1]][0]), C.push(G.$), e.push(G._$), Xe = $[p[p.length - 2]][p[p.length - 1]], p.push(Xe);
328
+ v && (p = p.slice(0, -1 * v * 2), C = C.slice(0, -1 * v), e = e.slice(0, -1 * v)), p.push(this.productions_[L[1]][0]), C.push(G.$), e.push(G._$), je = $[p[p.length - 2]][p[p.length - 1]], p.push(je);
329
329
  break;
330
330
  case 3:
331
331
  return !0;
@@ -730,7 +730,7 @@ Expecting ` + pe.join(", ") + ", got '" + (this.terminals_[B] || B) + "'" : Oe =
730
730
  return f(oe, "Parser"), oe.prototype = Le, Le.Parser = oe, new oe();
731
731
  })();
732
732
  Pe.parser = Pe;
733
- var St = Pe, je = ["#", "+", "~", "-", ""], z, qe = (z = class {
733
+ var St = Pe, Xe = ["#", "+", "~", "-", ""], z, qe = (z = class {
734
734
  constructor(i, a) {
735
735
  this.memberType = a, this.visibility = "", this.classifier = "", this.text = "";
736
736
  const n = ft(i, F());
@@ -751,14 +751,14 @@ var St = Pe, je = ["#", "+", "~", "-", ""], z, qe = (z = class {
751
751
  const c = /([#+~-])?(.+)\((.*)\)([\s$*])?(.*)([$*])?/.exec(i);
752
752
  if (c) {
753
753
  const u = c[1] ? c[1].trim() : "";
754
- if (je.includes(u) && (this.visibility = u), this.id = c[2], this.parameters = c[3] ? c[3].trim() : "", a = c[4] ? c[4].trim() : "", this.returnType = c[5] ? c[5].trim() : "", a === "") {
754
+ if (Xe.includes(u) && (this.visibility = u), this.id = c[2], this.parameters = c[3] ? c[3].trim() : "", a = c[4] ? c[4].trim() : "", this.returnType = c[5] ? c[5].trim() : "", a === "") {
755
755
  const d = this.returnType.substring(this.returnType.length - 1);
756
756
  /[$*]/.exec(d) && (a = d, this.returnType = this.returnType.substring(0, this.returnType.length - 1));
757
757
  }
758
758
  }
759
759
  } else {
760
760
  const r = i.length, c = i.substring(0, 1), u = i.substring(r - 1);
761
- je.includes(c) && (this.visibility = c), /[$*]/.exec(u) && (a = u), this.id = i.substring(
761
+ Xe.includes(c) && (this.visibility = c), /[$*]/.exec(u) && (a = u), this.id = i.substring(
762
762
  this.visibility === "" ? 0 : 1,
763
763
  a === "" ? r : r - 1
764
764
  );
@@ -1532,4 +1532,4 @@ export {
1532
1532
  xt as c,
1533
1533
  Lt as s
1534
1534
  };
1535
- //# sourceMappingURL=chunk-V7JOEXUC-7qyR9Bsr.js.map
1535
+ //# sourceMappingURL=chunk-V7JOEXUC-BnwuCkOT.js.map