@aiquants/markdown 1.5.0 → 1.6.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 (231) hide show
  1. package/README.md +67 -13
  2. package/dist/arc-BoCDCi7a.js +84 -0
  3. package/dist/{arc-CEt7sPHR.js.map → arc-BoCDCi7a.js.map} +1 -1
  4. package/dist/{arc-DIzHZzU-.cjs → arc-De-Zv-A5.cjs} +2 -2
  5. package/dist/{arc-DIzHZzU-.cjs.map → arc-De-Zv-A5.cjs.map} +1 -1
  6. package/dist/{architectureDiagram-3BPJPVTR-BwXrmOEe.js → architectureDiagram-3BPJPVTR--B7uWkzb.js} +3 -3
  7. package/dist/{architectureDiagram-3BPJPVTR-BwXrmOEe.js.map → architectureDiagram-3BPJPVTR--B7uWkzb.js.map} +1 -1
  8. package/dist/{architectureDiagram-3BPJPVTR-BObLtWhv.cjs → architectureDiagram-3BPJPVTR-BU8vezuK.cjs} +2 -2
  9. package/dist/{architectureDiagram-3BPJPVTR-BObLtWhv.cjs.map → architectureDiagram-3BPJPVTR-BU8vezuK.cjs.map} +1 -1
  10. package/dist/{blockDiagram-GPEHLZMM-DlSz5bgX.cjs → blockDiagram-GPEHLZMM-BgMaQKJL.cjs} +2 -2
  11. package/dist/{blockDiagram-GPEHLZMM-DlSz5bgX.cjs.map → blockDiagram-GPEHLZMM-BgMaQKJL.cjs.map} +1 -1
  12. package/dist/{blockDiagram-GPEHLZMM-CuNIZgrH.js → blockDiagram-GPEHLZMM-D9Qu4RmQ.js} +4 -4
  13. package/dist/{blockDiagram-GPEHLZMM-CuNIZgrH.js.map → blockDiagram-GPEHLZMM-D9Qu4RmQ.js.map} +1 -1
  14. package/dist/{c4Diagram-AAUBKEIU-yYGK7jpN.js → c4Diagram-AAUBKEIU-B_S1FVg0.js} +3 -3
  15. package/dist/{c4Diagram-AAUBKEIU-yYGK7jpN.js.map → c4Diagram-AAUBKEIU-B_S1FVg0.js.map} +1 -1
  16. package/dist/{c4Diagram-AAUBKEIU-BeW_zC3n.cjs → c4Diagram-AAUBKEIU-DdYus-OD.cjs} +2 -2
  17. package/dist/{c4Diagram-AAUBKEIU-BeW_zC3n.cjs.map → c4Diagram-AAUBKEIU-DdYus-OD.cjs.map} +1 -1
  18. package/dist/channel-CL-Jpcy1.cjs +2 -0
  19. package/dist/{channel-DJV0Dpb7.cjs.map → channel-CL-Jpcy1.cjs.map} +1 -1
  20. package/dist/channel-K4LsZJQ3.js +6 -0
  21. package/dist/{channel-D_k9IBco.js.map → channel-K4LsZJQ3.js.map} +1 -1
  22. package/dist/{chunk-2J33WTMH-_yO_LcWk.js → chunk-2J33WTMH-DRQXzgFz.js} +5 -5
  23. package/dist/{chunk-2J33WTMH-_yO_LcWk.js.map → chunk-2J33WTMH-DRQXzgFz.js.map} +1 -1
  24. package/dist/{chunk-2J33WTMH-Cowi4nma.cjs → chunk-2J33WTMH-DwPHxvbM.cjs} +2 -2
  25. package/dist/{chunk-2J33WTMH-Cowi4nma.cjs.map → chunk-2J33WTMH-DwPHxvbM.cjs.map} +1 -1
  26. package/dist/{chunk-4BX2VUAB-Bfs3RK7t.js → chunk-4BX2VUAB-D9XJDecT.js} +2 -2
  27. package/dist/{chunk-4BX2VUAB-Bfs3RK7t.js.map → chunk-4BX2VUAB-D9XJDecT.js.map} +1 -1
  28. package/dist/{chunk-4BX2VUAB-CvWrfkZa.cjs → chunk-4BX2VUAB-dlb1zwjz.cjs} +2 -2
  29. package/dist/{chunk-4BX2VUAB-CvWrfkZa.cjs.map → chunk-4BX2VUAB-dlb1zwjz.cjs.map} +1 -1
  30. package/dist/chunk-55IACEB6-D6SBdsxQ.js +9 -0
  31. package/dist/{chunk-55IACEB6-DJuAcFli.js.map → chunk-55IACEB6-D6SBdsxQ.js.map} +1 -1
  32. package/dist/{chunk-55IACEB6-B0mU27TO.cjs → chunk-55IACEB6-DsigtXV5.cjs} +2 -2
  33. package/dist/{chunk-55IACEB6-B0mU27TO.cjs.map → chunk-55IACEB6-DsigtXV5.cjs.map} +1 -1
  34. package/dist/{chunk-727SXJPM-CVzH4wV5.js → chunk-727SXJPM-BPMnljJt.js} +6 -6
  35. package/dist/{chunk-727SXJPM-CVzH4wV5.js.map → chunk-727SXJPM-BPMnljJt.js.map} +1 -1
  36. package/dist/{chunk-727SXJPM-B5m5LYHV.cjs → chunk-727SXJPM-e9WFwXOz.cjs} +2 -2
  37. package/dist/{chunk-727SXJPM-B5m5LYHV.cjs.map → chunk-727SXJPM-e9WFwXOz.cjs.map} +1 -1
  38. package/dist/{chunk-AQP2D5EJ-BQmegdYZ.js → chunk-AQP2D5EJ-BpywKue8.js} +24 -24
  39. package/dist/{chunk-AQP2D5EJ-BQmegdYZ.js.map → chunk-AQP2D5EJ-BpywKue8.js.map} +1 -1
  40. package/dist/{chunk-AQP2D5EJ-D8g3xVfY.cjs → chunk-AQP2D5EJ-CfVceSH6.cjs} +2 -2
  41. package/dist/{chunk-AQP2D5EJ-D8g3xVfY.cjs.map → chunk-AQP2D5EJ-CfVceSH6.cjs.map} +1 -1
  42. package/dist/{chunk-FMBD7UC4-DOp7_K1e.cjs → chunk-FMBD7UC4-BGnaELVV.cjs} +2 -2
  43. package/dist/{chunk-FMBD7UC4-DOp7_K1e.cjs.map → chunk-FMBD7UC4-BGnaELVV.cjs.map} +1 -1
  44. package/dist/{chunk-FMBD7UC4-A9cVBrbN.js → chunk-FMBD7UC4-Ceyg9OFV.js} +2 -2
  45. package/dist/{chunk-FMBD7UC4-A9cVBrbN.js.map → chunk-FMBD7UC4-Ceyg9OFV.js.map} +1 -1
  46. package/dist/{chunk-ND2GUHAM-D25Z9Pku.cjs → chunk-ND2GUHAM-Di1_ImUP.cjs} +2 -2
  47. package/dist/{chunk-ND2GUHAM-D25Z9Pku.cjs.map → chunk-ND2GUHAM-Di1_ImUP.cjs.map} +1 -1
  48. package/dist/{chunk-ND2GUHAM-zG18UJLV.js → chunk-ND2GUHAM-_KS2U3Xd.js} +2 -2
  49. package/dist/{chunk-ND2GUHAM-zG18UJLV.js.map → chunk-ND2GUHAM-_KS2U3Xd.js.map} +1 -1
  50. package/dist/{chunk-QZHKN3VN-CzUmAQ1N.cjs → chunk-QZHKN3VN-37Dnf6ph.cjs} +2 -2
  51. package/dist/{chunk-QZHKN3VN-CzUmAQ1N.cjs.map → chunk-QZHKN3VN-37Dnf6ph.cjs.map} +1 -1
  52. package/dist/{chunk-QZHKN3VN-TMR0u28S.js → chunk-QZHKN3VN-BmwSf22H.js} +2 -2
  53. package/dist/{chunk-QZHKN3VN-TMR0u28S.js.map → chunk-QZHKN3VN-BmwSf22H.js.map} +1 -1
  54. package/dist/{classDiagram-4FO5ZUOK-B6q8R48h.js → classDiagram-4FO5ZUOK-BWqlCTLp.js} +3 -3
  55. package/dist/{classDiagram-4FO5ZUOK-B6q8R48h.js.map → classDiagram-4FO5ZUOK-BWqlCTLp.js.map} +1 -1
  56. package/dist/{classDiagram-4FO5ZUOK-AWKMUU6E.cjs → classDiagram-4FO5ZUOK-C4BU4T62.cjs} +2 -2
  57. package/dist/{classDiagram-4FO5ZUOK-AWKMUU6E.cjs.map → classDiagram-4FO5ZUOK-C4BU4T62.cjs.map} +1 -1
  58. package/dist/{classDiagram-v2-Q7XG4LA2-B6q8R48h.js → classDiagram-v2-Q7XG4LA2-BWqlCTLp.js} +3 -3
  59. package/dist/{classDiagram-v2-Q7XG4LA2-B6q8R48h.js.map → classDiagram-v2-Q7XG4LA2-BWqlCTLp.js.map} +1 -1
  60. package/dist/{classDiagram-v2-Q7XG4LA2-AWKMUU6E.cjs → classDiagram-v2-Q7XG4LA2-C4BU4T62.cjs} +2 -2
  61. package/dist/{classDiagram-v2-Q7XG4LA2-AWKMUU6E.cjs.map → classDiagram-v2-Q7XG4LA2-C4BU4T62.cjs.map} +1 -1
  62. package/dist/{cose-bilkent-S5V4N54A-CmOvtbW1.js → cose-bilkent-S5V4N54A-XubnkySi.js} +25 -25
  63. package/dist/{cose-bilkent-S5V4N54A-CmOvtbW1.js.map → cose-bilkent-S5V4N54A-XubnkySi.js.map} +1 -1
  64. package/dist/{cose-bilkent-S5V4N54A-Be0WGYzv.cjs → cose-bilkent-S5V4N54A-i82zh9MZ.cjs} +2 -2
  65. package/dist/{cose-bilkent-S5V4N54A-Be0WGYzv.cjs.map → cose-bilkent-S5V4N54A-i82zh9MZ.cjs.map} +1 -1
  66. package/dist/{dagre-BM42HDAG-Cj9S9AJL.cjs → dagre-BM42HDAG-BnI0bbQQ.cjs} +2 -2
  67. package/dist/{dagre-BM42HDAG-Cj9S9AJL.cjs.map → dagre-BM42HDAG-BnI0bbQQ.cjs.map} +1 -1
  68. package/dist/{dagre-BM42HDAG-BdMc_uQ_.js → dagre-BM42HDAG-dbwMNqTJ.js} +20 -20
  69. package/dist/{dagre-BM42HDAG-BdMc_uQ_.js.map → dagre-BM42HDAG-dbwMNqTJ.js.map} +1 -1
  70. package/dist/{diagram-2AECGRRQ-BoIVObSX.js → diagram-2AECGRRQ-Dq3jgteK.js} +9 -9
  71. package/dist/{diagram-2AECGRRQ-BoIVObSX.js.map → diagram-2AECGRRQ-Dq3jgteK.js.map} +1 -1
  72. package/dist/{diagram-2AECGRRQ-pClFOcCf.cjs → diagram-2AECGRRQ-LK0WewmW.cjs} +2 -2
  73. package/dist/{diagram-2AECGRRQ-pClFOcCf.cjs.map → diagram-2AECGRRQ-LK0WewmW.cjs.map} +1 -1
  74. package/dist/{diagram-5GNKFQAL-B4QZF1L-.cjs → diagram-5GNKFQAL-Cjn8C55h.cjs} +2 -2
  75. package/dist/{diagram-5GNKFQAL-B4QZF1L-.cjs.map → diagram-5GNKFQAL-Cjn8C55h.cjs.map} +1 -1
  76. package/dist/{diagram-5GNKFQAL-CF9CayfA.js → diagram-5GNKFQAL-Dee1SqZg.js} +23 -23
  77. package/dist/{diagram-5GNKFQAL-CF9CayfA.js.map → diagram-5GNKFQAL-Dee1SqZg.js.map} +1 -1
  78. package/dist/{diagram-KO2AKTUF-DpJGYqyH.js → diagram-KO2AKTUF-CrPdYBLO.js} +14 -14
  79. package/dist/{diagram-KO2AKTUF-DpJGYqyH.js.map → diagram-KO2AKTUF-CrPdYBLO.js.map} +1 -1
  80. package/dist/{diagram-KO2AKTUF-OcgLlHLQ.cjs → diagram-KO2AKTUF-DoIuQ47y.cjs} +2 -2
  81. package/dist/{diagram-KO2AKTUF-OcgLlHLQ.cjs.map → diagram-KO2AKTUF-DoIuQ47y.cjs.map} +1 -1
  82. package/dist/{diagram-LMA3HP47-E2tXDlPZ.js → diagram-LMA3HP47-B04Q5TTr.js} +12 -12
  83. package/dist/{diagram-LMA3HP47-E2tXDlPZ.js.map → diagram-LMA3HP47-B04Q5TTr.js.map} +1 -1
  84. package/dist/{diagram-LMA3HP47-DLDXNgwR.cjs → diagram-LMA3HP47-DMo-Du0O.cjs} +2 -2
  85. package/dist/{diagram-LMA3HP47-DLDXNgwR.cjs.map → diagram-LMA3HP47-DMo-Du0O.cjs.map} +1 -1
  86. package/dist/{diagram-OG6HWLK6-D39m55l2.cjs → diagram-OG6HWLK6-CYAVH4wV.cjs} +2 -2
  87. package/dist/{diagram-OG6HWLK6-D39m55l2.cjs.map → diagram-OG6HWLK6-CYAVH4wV.cjs.map} +1 -1
  88. package/dist/{diagram-OG6HWLK6-DrX6SniD.js → diagram-OG6HWLK6-DttOCE5a.js} +31 -31
  89. package/dist/{diagram-OG6HWLK6-DrX6SniD.js.map → diagram-OG6HWLK6-DttOCE5a.js.map} +1 -1
  90. package/dist/{erDiagram-TEJ5UH35-DHpUNAJP.cjs → erDiagram-TEJ5UH35-Od4ZN_Jj.cjs} +2 -2
  91. package/dist/{erDiagram-TEJ5UH35-DHpUNAJP.cjs.map → erDiagram-TEJ5UH35-Od4ZN_Jj.cjs.map} +1 -1
  92. package/dist/{erDiagram-TEJ5UH35-Dv81-v_G.js → erDiagram-TEJ5UH35-l6r2moWp.js} +13 -13
  93. package/dist/{erDiagram-TEJ5UH35-Dv81-v_G.js.map → erDiagram-TEJ5UH35-l6r2moWp.js.map} +1 -1
  94. package/dist/extractHeadings-BCDkDiAF.cjs +306 -0
  95. package/dist/extractHeadings-BCDkDiAF.cjs.map +1 -0
  96. package/dist/{extractHeadings-BIH0osfd.js → extractHeadings-CvNjLb_I.js} +7799 -6950
  97. package/dist/extractHeadings-CvNjLb_I.js.map +1 -0
  98. package/dist/{flowDiagram-I6XJVG4X-ClmjxIFB.js → flowDiagram-I6XJVG4X-BSY6idek.js} +22 -22
  99. package/dist/{flowDiagram-I6XJVG4X-ClmjxIFB.js.map → flowDiagram-I6XJVG4X-BSY6idek.js.map} +1 -1
  100. package/dist/{flowDiagram-I6XJVG4X-DYouWDNV.cjs → flowDiagram-I6XJVG4X-DqFjV_FQ.cjs} +2 -2
  101. package/dist/{flowDiagram-I6XJVG4X-DYouWDNV.cjs.map → flowDiagram-I6XJVG4X-DqFjV_FQ.cjs.map} +1 -1
  102. package/dist/{ganttDiagram-6RSMTGT7-Me5Zb7D7.cjs → ganttDiagram-6RSMTGT7-Ch-is2L9.cjs} +2 -2
  103. package/dist/{ganttDiagram-6RSMTGT7-Me5Zb7D7.cjs.map → ganttDiagram-6RSMTGT7-Ch-is2L9.cjs.map} +1 -1
  104. package/dist/{ganttDiagram-6RSMTGT7-BA96mVrd.js → ganttDiagram-6RSMTGT7-NbUTajI9.js} +114 -114
  105. package/dist/{ganttDiagram-6RSMTGT7-BA96mVrd.js.map → ganttDiagram-6RSMTGT7-NbUTajI9.js.map} +1 -1
  106. package/dist/{gitGraphDiagram-PVQCEYII-DyCea4nE.js → gitGraphDiagram-PVQCEYII-BON2AIjh.js} +4 -4
  107. package/dist/{gitGraphDiagram-PVQCEYII-DyCea4nE.js.map → gitGraphDiagram-PVQCEYII-BON2AIjh.js.map} +1 -1
  108. package/dist/{gitGraphDiagram-PVQCEYII-D9wpFJGN.cjs → gitGraphDiagram-PVQCEYII-CsKS4JsX.cjs} +2 -2
  109. package/dist/{gitGraphDiagram-PVQCEYII-D9wpFJGN.cjs.map → gitGraphDiagram-PVQCEYII-CsKS4JsX.cjs.map} +1 -1
  110. package/dist/index.cjs +1 -1
  111. package/dist/index.client.cjs +1 -1
  112. package/dist/index.client.js +43 -39
  113. package/dist/index.client.js.map +1 -1
  114. package/dist/index.js +43 -39
  115. package/dist/index.js.map +1 -1
  116. package/dist/index.server.cjs +1 -1
  117. package/dist/index.server.cjs.map +1 -1
  118. package/dist/index.server.js +303 -372
  119. package/dist/index.server.js.map +1 -1
  120. package/dist/{infoDiagram-5YYISTIA-Bm90rqIU.js → infoDiagram-5YYISTIA-D9ZSyMlU.js} +8 -8
  121. package/dist/{infoDiagram-5YYISTIA-Bm90rqIU.js.map → infoDiagram-5YYISTIA-D9ZSyMlU.js.map} +1 -1
  122. package/dist/{infoDiagram-5YYISTIA-CFhVEX_s.cjs → infoDiagram-5YYISTIA-DPFwfg1u.cjs} +2 -2
  123. package/dist/{infoDiagram-5YYISTIA-CFhVEX_s.cjs.map → infoDiagram-5YYISTIA-DPFwfg1u.cjs.map} +1 -1
  124. package/dist/{ishikawaDiagram-YF4QCWOH-ClcY08Tk.cjs → ishikawaDiagram-YF4QCWOH-7n8wfnaJ.cjs} +2 -2
  125. package/dist/{ishikawaDiagram-YF4QCWOH-ClcY08Tk.cjs.map → ishikawaDiagram-YF4QCWOH-7n8wfnaJ.cjs.map} +1 -1
  126. package/dist/{ishikawaDiagram-YF4QCWOH-Dn_SmX9S.js → ishikawaDiagram-YF4QCWOH-Bwmaj36v.js} +23 -23
  127. package/dist/{ishikawaDiagram-YF4QCWOH-Dn_SmX9S.js.map → ishikawaDiagram-YF4QCWOH-Bwmaj36v.js.map} +1 -1
  128. package/dist/{journeyDiagram-JHISSGLW-DGgZLT-L.cjs → journeyDiagram-JHISSGLW-CU1EWMDk.cjs} +2 -2
  129. package/dist/{journeyDiagram-JHISSGLW-DGgZLT-L.cjs.map → journeyDiagram-JHISSGLW-CU1EWMDk.cjs.map} +1 -1
  130. package/dist/{journeyDiagram-JHISSGLW-CoQTbK-P.js → journeyDiagram-JHISSGLW-Cs1W2gPR.js} +14 -14
  131. package/dist/{journeyDiagram-JHISSGLW-CoQTbK-P.js.map → journeyDiagram-JHISSGLW-Cs1W2gPR.js.map} +1 -1
  132. package/dist/{kanban-definition-UN3LZRKU-UqgCo7Db.js → kanban-definition-UN3LZRKU-BPKrIETE.js} +37 -37
  133. package/dist/{kanban-definition-UN3LZRKU-UqgCo7Db.js.map → kanban-definition-UN3LZRKU-BPKrIETE.js.map} +1 -1
  134. package/dist/{kanban-definition-UN3LZRKU-5akhNSgA.cjs → kanban-definition-UN3LZRKU-BaNd7N3-.cjs} +2 -2
  135. package/dist/{kanban-definition-UN3LZRKU-5akhNSgA.cjs.map → kanban-definition-UN3LZRKU-BaNd7N3-.cjs.map} +1 -1
  136. package/dist/{linear-D3Fuq7G8.js → linear-ChMxHyCK.js} +32 -32
  137. package/dist/{linear-D3Fuq7G8.js.map → linear-ChMxHyCK.js.map} +1 -1
  138. package/dist/{linear-CwRbgLja.cjs → linear-DZcdO2vJ.cjs} +2 -2
  139. package/dist/{linear-CwRbgLja.cjs.map → linear-DZcdO2vJ.cjs.map} +1 -1
  140. package/dist/markdown.css +1 -1
  141. package/dist/{mindmap-definition-RKZ34NQL-Bii9VbaK.js → mindmap-definition-RKZ34NQL-C8nxZGNS.js} +77 -77
  142. package/dist/{mindmap-definition-RKZ34NQL-Bii9VbaK.js.map → mindmap-definition-RKZ34NQL-C8nxZGNS.js.map} +1 -1
  143. package/dist/{mindmap-definition-RKZ34NQL-DXADpvuA.cjs → mindmap-definition-RKZ34NQL-DChglGn7.cjs} +2 -2
  144. package/dist/{mindmap-definition-RKZ34NQL-DXADpvuA.cjs.map → mindmap-definition-RKZ34NQL-DChglGn7.cjs.map} +1 -1
  145. package/dist/{pieDiagram-4H26LBE5-IxhnJJ7L.js → pieDiagram-4H26LBE5-CV6cejpg.js} +36 -36
  146. package/dist/{pieDiagram-4H26LBE5-IxhnJJ7L.js.map → pieDiagram-4H26LBE5-CV6cejpg.js.map} +1 -1
  147. package/dist/{pieDiagram-4H26LBE5-fogswTcl.cjs → pieDiagram-4H26LBE5-md6Jk-kX.cjs} +2 -2
  148. package/dist/{pieDiagram-4H26LBE5-fogswTcl.cjs.map → pieDiagram-4H26LBE5-md6Jk-kX.cjs.map} +1 -1
  149. package/dist/{quadrantDiagram-W4KKPZXB-BVTHzx2l.cjs → quadrantDiagram-W4KKPZXB-BiJ3bFZn.cjs} +2 -2
  150. package/dist/{quadrantDiagram-W4KKPZXB-BVTHzx2l.cjs.map → quadrantDiagram-W4KKPZXB-BiJ3bFZn.cjs.map} +1 -1
  151. package/dist/{quadrantDiagram-W4KKPZXB-C8_GeFoe.js → quadrantDiagram-W4KKPZXB-CWoZo1iQ.js} +5 -5
  152. package/dist/{quadrantDiagram-W4KKPZXB-C8_GeFoe.js.map → quadrantDiagram-W4KKPZXB-CWoZo1iQ.js.map} +1 -1
  153. package/dist/{requirementDiagram-4Y6WPE33-BAt5yldj.cjs → requirementDiagram-4Y6WPE33-BJMM1_nL.cjs} +2 -2
  154. package/dist/{requirementDiagram-4Y6WPE33-BAt5yldj.cjs.map → requirementDiagram-4Y6WPE33-BJMM1_nL.cjs.map} +1 -1
  155. package/dist/{requirementDiagram-4Y6WPE33-Ce1YmqAJ.js → requirementDiagram-4Y6WPE33-BOwFaREr.js} +4 -4
  156. package/dist/{requirementDiagram-4Y6WPE33-Ce1YmqAJ.js.map → requirementDiagram-4Y6WPE33-BOwFaREr.js.map} +1 -1
  157. package/dist/{sankeyDiagram-5OEKKPKP-CPzjKU9I.js → sankeyDiagram-5OEKKPKP-D_Y2fiVv.js} +27 -27
  158. package/dist/{sankeyDiagram-5OEKKPKP-CPzjKU9I.js.map → sankeyDiagram-5OEKKPKP-D_Y2fiVv.js.map} +1 -1
  159. package/dist/{sankeyDiagram-5OEKKPKP-DKAhIIn6.cjs → sankeyDiagram-5OEKKPKP-DkhPTPSt.cjs} +2 -2
  160. package/dist/{sankeyDiagram-5OEKKPKP-DKAhIIn6.cjs.map → sankeyDiagram-5OEKKPKP-DkhPTPSt.cjs.map} +1 -1
  161. package/dist/{sequenceDiagram-3UESZ5HK-CgPqURJr.cjs → sequenceDiagram-3UESZ5HK-BRU7h4Ho.cjs} +2 -2
  162. package/dist/{sequenceDiagram-3UESZ5HK-CgPqURJr.cjs.map → sequenceDiagram-3UESZ5HK-BRU7h4Ho.cjs.map} +1 -1
  163. package/dist/{sequenceDiagram-3UESZ5HK-BpwEIPSR.js → sequenceDiagram-3UESZ5HK-DxWSY6ex.js} +43 -43
  164. package/dist/{sequenceDiagram-3UESZ5HK-BpwEIPSR.js.map → sequenceDiagram-3UESZ5HK-DxWSY6ex.js.map} +1 -1
  165. package/dist/simple-logger-DIfMY3fH.js +102 -0
  166. package/dist/simple-logger-DIfMY3fH.js.map +1 -0
  167. package/dist/simple-logger-DZxBpX7v.cjs +2 -0
  168. package/dist/simple-logger-DZxBpX7v.cjs.map +1 -0
  169. package/dist/src/components/MarkdownRenderer.d.ts +8 -12
  170. package/dist/src/components/MarkdownRenderer.d.ts.map +1 -1
  171. package/dist/src/components/MarkdownViewer.d.ts +133 -0
  172. package/dist/src/components/MarkdownViewer.d.ts.map +1 -0
  173. package/dist/src/components/MermaidDiagram.d.ts +9 -1
  174. package/dist/src/components/MermaidDiagram.d.ts.map +1 -1
  175. package/dist/src/components/mdastNodes/CodeNode.d.ts +8 -3
  176. package/dist/src/components/mdastNodes/CodeNode.d.ts.map +1 -1
  177. package/dist/src/components/mdastNodes/HTMLNode.d.ts.map +1 -1
  178. package/dist/src/components/mdastNodes/MathNode.d.ts +8 -0
  179. package/dist/src/components/mdastNodes/MathNode.d.ts.map +1 -1
  180. package/dist/src/components/mdastNodes/RichLinkCard.d.ts.map +1 -1
  181. package/dist/src/components/mermaidInteraction.d.ts +57 -0
  182. package/dist/src/components/mermaidInteraction.d.ts.map +1 -0
  183. package/dist/src/components/plugins/DifyIFramePlugin.d.ts.map +1 -1
  184. package/dist/src/gen/markdown/v1/markdown_connect.d.ts +20 -0
  185. package/dist/src/gen/markdown/v1/markdown_connect.d.ts.map +1 -0
  186. package/dist/src/gen/markdown/v1/markdown_pb.d.ts +101 -0
  187. package/dist/src/gen/markdown/v1/markdown_pb.d.ts.map +1 -0
  188. package/dist/src/index.client.d.ts +2 -1
  189. package/dist/src/index.client.d.ts.map +1 -1
  190. package/dist/src/index.server.d.ts +1 -1
  191. package/dist/src/index.server.d.ts.map +1 -1
  192. package/dist/src/remarkProcessor.server.d.ts +18 -2
  193. package/dist/src/remarkProcessor.server.d.ts.map +1 -1
  194. package/dist/{stateDiagram-AJRCARHV-OpWhWbqI.cjs → stateDiagram-AJRCARHV-CqtM_wb7.cjs} +2 -2
  195. package/dist/{stateDiagram-AJRCARHV-OpWhWbqI.cjs.map → stateDiagram-AJRCARHV-CqtM_wb7.cjs.map} +1 -1
  196. package/dist/{stateDiagram-AJRCARHV-OtsOxzY2.js → stateDiagram-AJRCARHV-DSsrJMAA.js} +13 -13
  197. package/dist/{stateDiagram-AJRCARHV-OtsOxzY2.js.map → stateDiagram-AJRCARHV-DSsrJMAA.js.map} +1 -1
  198. package/dist/{stateDiagram-v2-BHNVJYJU-CAvz3uwY.js → stateDiagram-v2-BHNVJYJU-BZ0QjYK7.js} +3 -3
  199. package/dist/{stateDiagram-v2-BHNVJYJU-CAvz3uwY.js.map → stateDiagram-v2-BHNVJYJU-BZ0QjYK7.js.map} +1 -1
  200. package/dist/{stateDiagram-v2-BHNVJYJU-DEkcCy3a.cjs → stateDiagram-v2-BHNVJYJU-CQp1esNj.cjs} +2 -2
  201. package/dist/{stateDiagram-v2-BHNVJYJU-DEkcCy3a.cjs.map → stateDiagram-v2-BHNVJYJU-CQp1esNj.cjs.map} +1 -1
  202. package/dist/styles/markdown.css +1 -1
  203. package/dist/{timeline-definition-PNZ67QCA-PRJCyjVm.cjs → timeline-definition-PNZ67QCA-B9RmAqqi.cjs} +2 -2
  204. package/dist/{timeline-definition-PNZ67QCA-PRJCyjVm.cjs.map → timeline-definition-PNZ67QCA-B9RmAqqi.cjs.map} +1 -1
  205. package/dist/{timeline-definition-PNZ67QCA-CCZVlXOO.js → timeline-definition-PNZ67QCA-CoFHhgLp.js} +38 -38
  206. package/dist/{timeline-definition-PNZ67QCA-CCZVlXOO.js.map → timeline-definition-PNZ67QCA-CoFHhgLp.js.map} +1 -1
  207. package/dist/{vennDiagram-CIIHVFJN-CJIbwKdq.cjs → vennDiagram-CIIHVFJN-BLhG-NNC.cjs} +2 -2
  208. package/dist/{vennDiagram-CIIHVFJN-CJIbwKdq.cjs.map → vennDiagram-CIIHVFJN-BLhG-NNC.cjs.map} +1 -1
  209. package/dist/{vennDiagram-CIIHVFJN-DjW1FsID.js → vennDiagram-CIIHVFJN-DWsjrahp.js} +98 -98
  210. package/dist/{vennDiagram-CIIHVFJN-DjW1FsID.js.map → vennDiagram-CIIHVFJN-DWsjrahp.js.map} +1 -1
  211. package/dist/vite.config.d.ts.map +1 -1
  212. package/dist/{wardleyDiagram-YWT4CUSO-FRB5Ve3j.cjs → wardleyDiagram-YWT4CUSO-C21VhlO9.cjs} +2 -2
  213. package/dist/{wardleyDiagram-YWT4CUSO-FRB5Ve3j.cjs.map → wardleyDiagram-YWT4CUSO-C21VhlO9.cjs.map} +1 -1
  214. package/dist/{wardleyDiagram-YWT4CUSO-opnMU0cO.js → wardleyDiagram-YWT4CUSO-Dcw9yeY5.js} +24 -24
  215. package/dist/{wardleyDiagram-YWT4CUSO-opnMU0cO.js.map → wardleyDiagram-YWT4CUSO-Dcw9yeY5.js.map} +1 -1
  216. package/dist/{xychartDiagram-2RQKCTM6-CQh5pyBs.js → xychartDiagram-2RQKCTM6-BwcFF2Mu.js} +3 -3
  217. package/dist/{xychartDiagram-2RQKCTM6-CQh5pyBs.js.map → xychartDiagram-2RQKCTM6-BwcFF2Mu.js.map} +1 -1
  218. package/dist/{xychartDiagram-2RQKCTM6-DjDxwlNx.cjs → xychartDiagram-2RQKCTM6-NS9IkwEv.cjs} +2 -2
  219. package/dist/{xychartDiagram-2RQKCTM6-DjDxwlNx.cjs.map → xychartDiagram-2RQKCTM6-NS9IkwEv.cjs.map} +1 -1
  220. package/package.json +6 -1
  221. package/dist/arc-CEt7sPHR.js +0 -84
  222. package/dist/channel-DJV0Dpb7.cjs +0 -2
  223. package/dist/channel-D_k9IBco.js +0 -6
  224. package/dist/chunk-55IACEB6-DJuAcFli.js +0 -9
  225. package/dist/extractHeadings-BIH0osfd.js.map +0 -1
  226. package/dist/extractHeadings-C519p0PM.cjs +0 -306
  227. package/dist/extractHeadings-C519p0PM.cjs.map +0 -1
  228. package/dist/remark-zenn-message-B-AEffpD.js +0 -408
  229. package/dist/remark-zenn-message-B-AEffpD.js.map +0 -1
  230. package/dist/remark-zenn-message-B5yftsqg.cjs +0 -2
  231. package/dist/remark-zenn-message-B5yftsqg.cjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"diagram-KO2AKTUF-OcgLlHLQ.cjs","sources":["../../../node_modules/.pnpm/mermaid@11.15.0/node_modules/mermaid/dist/chunks/mermaid.core/diagram-KO2AKTUF.mjs"],"sourcesContent":["import {\n populateCommonDb\n} from \"./chunk-4BX2VUAB.mjs\";\nimport {\n calculateTextDimensions,\n cleanAndMerge,\n wrapLabel\n} from \"./chunk-5ZQYHXKU.mjs\";\nimport {\n clear,\n defaultConfig_default,\n getAccDescription,\n getAccTitle,\n getConfig,\n getConfig2,\n getDiagramTitle,\n sanitizeText,\n setAccDescription,\n setAccTitle,\n setDiagramTitle,\n setupGraphViewbox2 as setupGraphViewbox\n} from \"./chunk-CSCIHK7Q.mjs\";\nimport {\n __name,\n log\n} from \"./chunk-AGHRB4JF.mjs\";\n\n// src/diagrams/eventmodeling/parser.ts\nimport { parse } from \"@mermaid-js/parser\";\n\n// src/diagrams/eventmodeling/db.ts\nimport { isEmResetFrame } from \"@mermaid-js/parser\";\n\n// src/diagrams/eventmodeling/types.ts\nvar PositionFrameKind = \"position frame\";\nvar FramePositionedKind = \"frame positioned\";\nvar PositionRelationKind = \"position relation\";\nvar RelationPositionedKind = \"relation positioned\";\n\n// src/diagrams/eventmodeling/db.ts\nvar setOptions = /* @__PURE__ */ __name(function(_rawOptString) {\n log.debug(\"options str\", _rawOptString);\n}, \"setOptions\");\nvar getOptions = /* @__PURE__ */ __name(function() {\n return {};\n}, \"getOptions\");\nvar clear2 = /* @__PURE__ */ __name(function() {\n reset();\n clear();\n}, \"clear\");\nfunction reset() {\n store = {};\n}\n__name(reset, \"reset\");\nvar DEFAULT_EVENTMODELING_CONFIG = defaultConfig_default.eventmodeling;\nvar getConfig3 = /* @__PURE__ */ __name(() => {\n const config = cleanAndMerge({\n ...DEFAULT_EVENTMODELING_CONFIG,\n ...getConfig().eventmodeling\n });\n return config;\n}, \"getConfig\");\nvar store = {};\nfunction getState() {\n let state = initial;\n const { ast } = store;\n const diagramProps2 = getDiagramProps();\n if (!ast) {\n throw new Error(\"No data for EventModel\");\n }\n ast.frames.forEach((frame, index) => {\n const textProps = calculateTextProps(frame, ast.dataEntities, diagramProps2);\n state = dispatch(state, {\n $kind: PositionFrameKind,\n index,\n frame,\n textProps\n });\n let sourceFrames = void 0;\n if (hasSourceFrame(frame)) {\n log.debug(`source frame`, frame.sourceFrames);\n sourceFrames = ast.frames.filter((currentFrame) => {\n return frame.sourceFrames.some((sf) => sf.$refText === currentFrame.name);\n });\n sourceFrames.forEach((sourceFrame) => {\n state = dispatch(state, {\n $kind: PositionRelationKind,\n index,\n frame,\n sourceFrame\n });\n });\n } else {\n state = dispatch(state, {\n $kind: PositionRelationKind,\n index,\n frame\n });\n }\n });\n state = {\n ...state,\n sortedSwimlanesArray: sortedSwimlanesArray(state.swimlanes)\n };\n return state;\n}\n__name(getState, \"getState\");\nfunction setAst(ast) {\n store.ast = ast;\n}\n__name(setAst, \"setAst\");\nvar diagramProps = {\n swimlaneMinHeight: 70,\n swimlanePadding: 15,\n swimlaneGap: 10,\n boxPadding: 10,\n boxOverlap: 90,\n boxDefaultY: 0,\n boxMinWidth: 80,\n boxMaxWidth: 450,\n boxMinHeight: 80,\n boxMaxHeight: 750,\n contentStartX: 250,\n textMaxWidth: 450 - 2 * 10,\n boxTextFontWeight: \"bold\",\n boxTextPadding: 10,\n swimlaneTextFontWeight: \"bold\",\n labelUiAutomation: \"UI/Automation\",\n labelUiAutomationPrefix: \"UI/A: \",\n labelCommandReadModel: \"Command/Read Model\",\n labelCommandReadModelPrefix: \"C/RM: \",\n labelEvents: \"Events\",\n labelEventsPrefix: \"Stream: \"\n};\nfunction getDiagramProps() {\n return diagramProps;\n}\n__name(getDiagramProps, \"getDiagramProps\");\nvar initial = {\n boxes: [],\n swimlanes: {},\n relations: [],\n maxR: 0,\n sortedSwimlanesArray: []\n};\nfunction extractNamespace(entityIdentifier) {\n const spl = entityIdentifier.split(\".\");\n if (spl.length === 2) {\n return spl[0];\n }\n return void 0;\n}\n__name(extractNamespace, \"extractNamespace\");\nfunction extractName(entityIdentifier) {\n const spl = entityIdentifier.split(\".\");\n if (spl.length === 2) {\n return spl[1];\n }\n return entityIdentifier;\n}\n__name(extractName, \"extractName\");\nfunction findSwimlaneByNamespace(swimlanes, namespace) {\n if (!namespace || namespace.length === 0) {\n return void 0;\n }\n return Object.values(swimlanes).find((swimlane) => swimlane.namespace === namespace);\n}\n__name(findSwimlaneByNamespace, \"findSwimlaneByNamespace\");\nfunction findNextAvailableIndex(swimlanes, boundaryMin, boundaryMax) {\n return Math.max(\n boundaryMin,\n ...Object.keys(swimlanes).filter((key) => {\n const index = Number.parseInt(key);\n return index > boundaryMin && index < boundaryMax;\n }).map((key) => Number.parseInt(key))\n ) + 1;\n}\n__name(findNextAvailableIndex, \"findNextAvailableIndex\");\nfunction calculateSwimlaneProps(frame, swimlanes) {\n const namespace = extractNamespace(frame.entityIdentifier);\n const sw = findSwimlaneByNamespace(swimlanes, namespace);\n switch (frame.modelEntityType) {\n case \"ui\":\n case \"pcr\":\n case \"processor\":\n if (sw) {\n return {\n index: sw.index,\n label: sw.namespace || diagramProps.labelUiAutomation\n };\n } else if (namespace) {\n return {\n index: findNextAvailableIndex(swimlanes, 0, 100),\n label: diagramProps.labelUiAutomationPrefix + namespace\n };\n }\n return { index: 0, label: diagramProps.labelUiAutomation };\n case \"rmo\":\n case \"readmodel\":\n case \"cmd\":\n case \"command\":\n if (sw) {\n return {\n index: sw.index,\n label: sw.namespace || diagramProps.labelCommandReadModel\n };\n } else if (namespace) {\n return {\n index: findNextAvailableIndex(swimlanes, 100, 200),\n label: diagramProps.labelCommandReadModelPrefix + namespace\n };\n }\n return { index: 100, label: diagramProps.labelCommandReadModel };\n case \"evt\":\n case \"event\":\n default:\n if (sw) {\n return {\n index: sw.index,\n label: sw.namespace || diagramProps.labelEvents\n };\n } else if (namespace) {\n return {\n index: findNextAvailableIndex(swimlanes, 200, 300),\n label: diagramProps.labelEventsPrefix + namespace\n };\n }\n return { index: 200, label: diagramProps.labelEvents };\n }\n}\n__name(calculateSwimlaneProps, \"calculateSwimlaneProps\");\nfunction calculateEntityVisualProps(frame) {\n const { themeVariables } = getConfig();\n switch (frame.modelEntityType) {\n case \"ui\":\n return {\n fill: themeVariables.emUiFill ?? \"white\",\n stroke: themeVariables.emUiStroke ?? \"#dbdada\"\n };\n case \"pcr\":\n case \"processor\":\n return {\n fill: themeVariables.emProcessorFill ?? \"#edb3f6\",\n stroke: themeVariables.emProcessorStroke ?? \"#b88cbf\"\n };\n case \"rmo\":\n case \"readmodel\":\n return {\n fill: themeVariables.emReadModelFill ?? \"#d3f1a2\",\n stroke: themeVariables.emReadModelStroke ?? \"#a3b732\"\n };\n case \"cmd\":\n case \"command\":\n return {\n fill: themeVariables.emCommandFill ?? \"#bcd6fe\",\n stroke: themeVariables.emCommandStroke ?? \"#679ac3\"\n };\n case \"evt\":\n case \"event\":\n return {\n fill: themeVariables.emEventFill ?? \"#ffb778\",\n stroke: themeVariables.emEventStroke ?? \"#c19a0f\"\n };\n default:\n return {\n fill: \"red\",\n stroke: \"black\"\n };\n }\n}\n__name(calculateEntityVisualProps, \"calculateEntityVisualProps\");\nfunction calculateTextProps(frame, dataEntities, diagramProps2) {\n const config = getConfig();\n const name = sanitizeText(extractName(frame.entityIdentifier) ?? \"\", config);\n let toHtml;\n const wrapLabelConfig = {\n fontSize: 16,\n fontWeight: 700,\n fontFamily: '\"trebuchet ms\", verdana, arial, sans-serif',\n joinWith: \"<br/>\"\n };\n const wrappedName = wrapLabel(name, diagramProps2.textMaxWidth, wrapLabelConfig);\n let content = `<b>${wrappedName}</b>`;\n if (frame.dataInlineValue) {\n toHtml = frame.dataInlineValue;\n toHtml = toHtml.substring(toHtml.indexOf(\"{\") + 1);\n toHtml = toHtml.substring(0, toHtml.lastIndexOf(\"}\") - 1);\n toHtml = sanitizeText(toHtml, config);\n toHtml = wrapLabel(toHtml, diagramProps2.textMaxWidth, wrapLabelConfig);\n toHtml = toHtml.replaceAll(\" \", \"&nbsp;\");\n }\n if (frame.dataReference) {\n const dataEntity = dataEntities.find(\n (dataEntity2) => dataEntity2.name === frame.dataReference?.$refText\n );\n if (dataEntity) {\n toHtml = dataEntity.dataBlockValue;\n toHtml = toHtml.substring(toHtml.indexOf(\"{\\n\") + 2);\n toHtml = toHtml.substring(0, toHtml.lastIndexOf(\"}\") - 1);\n toHtml = sanitizeText(toHtml, config);\n toHtml = wrapLabel(toHtml, diagramProps2.textMaxWidth, wrapLabelConfig);\n toHtml = toHtml.replaceAll(\" \", \"&nbsp;\");\n toHtml += `<br/>`;\n }\n }\n const hasRenderedData = toHtml !== void 0;\n if (hasRenderedData) {\n content += `<br/><br/><code style=\"text-align: left; display: block;max-width:${diagramProps2.textMaxWidth}px\">${toHtml}</code>`;\n }\n const textDimensionConfig = {\n fontSize: wrapLabelConfig.fontSize,\n fontWeight: wrapLabelConfig.fontWeight,\n fontFamily: wrapLabelConfig.fontFamily\n };\n const dimensions = calculateTextDimensions(content, textDimensionConfig);\n const calculatedWidthFix = hasRenderedData ? dimensions.width / 3 : dimensions.width;\n const props = {\n content,\n width: calculatedWidthFix,\n height: dimensions.height\n };\n log.debug(`[${frame.name}] ${frame.entityIdentifier} text`, props);\n return props;\n}\n__name(calculateTextProps, \"calculateTextProps\");\nfunction decidePositionFrame(state, _command) {\n const command = _command;\n const visual = calculateEntityVisualProps(command.frame);\n const dimension = {\n width: command.textProps.width + 2 * diagramProps.boxTextPadding,\n height: command.textProps.height + 2 * diagramProps.boxTextPadding\n };\n const event = {\n $kind: FramePositionedKind,\n frame: command.frame,\n index: command.index,\n visual,\n dimension,\n textProps: command.textProps\n };\n return [event];\n}\n__name(decidePositionFrame, \"decidePositionFrame\");\nfunction calculateX(swimlane, previousSwimlane, lastBox) {\n if (previousSwimlane === void 0) {\n return diagramProps.contentStartX;\n }\n if (previousSwimlane.index === swimlane.index && swimlane.r) {\n return swimlane.r + diagramProps.boxPadding;\n }\n if (lastBox === void 0) {\n return diagramProps.contentStartX;\n }\n return lastBox.r - diagramProps.boxOverlap + diagramProps.boxPadding;\n}\n__name(calculateX, \"calculateX\");\nfunction calculateMaxRight(swimlanes, swimlaneR) {\n const rs = [...swimlanes.map((s) => s.r), swimlaneR];\n return Math.max(...rs);\n}\n__name(calculateMaxRight, \"calculateMaxRight\");\nfunction sortedSwimlanesArray(swimlanes) {\n return Object.values(swimlanes).sort((a, b) => a.index - b.index);\n}\n__name(sortedSwimlanesArray, \"sortedSwimlanesArray\");\nfunction evolveFramePositioned(state, _event) {\n const event = _event;\n const swimlaneProps = calculateSwimlaneProps(event.frame, state.swimlanes);\n let swimlane;\n if (swimlaneProps.index in state.swimlanes) {\n swimlane = state.swimlanes[swimlaneProps.index];\n } else {\n swimlane = {\n index: swimlaneProps.index,\n label: swimlaneProps.label,\n r: 0,\n y: swimlaneProps.index * diagramProps.swimlaneMinHeight + diagramProps.swimlaneGap,\n height: diagramProps.swimlaneMinHeight,\n maxHeight: diagramProps.swimlaneMinHeight\n };\n }\n const lastBox = state.boxes.length > 0 ? state.boxes[state.boxes.length - 1] : void 0;\n const previousSwimlane = state.previousSwimlaneNumber !== void 0 ? state.swimlanes[state.previousSwimlaneNumber] : void 0;\n const dimension = {\n width: Math.max(\n diagramProps.boxMinWidth,\n Math.min(diagramProps.boxMaxWidth, event.dimension.width)\n ) + 2 * diagramProps.boxPadding,\n height: Math.max(\n diagramProps.boxMinHeight,\n Math.min(diagramProps.boxMaxHeight, event.dimension.height)\n ) + 2 * diagramProps.boxPadding\n };\n const x = calculateX(swimlane, previousSwimlane, lastBox);\n const r = x + dimension.width + diagramProps.boxPadding;\n const maxR = calculateMaxRight(Object.values(state.swimlanes), r);\n swimlane.r = x + dimension.width;\n swimlane.maxHeight = Math.max(swimlane.maxHeight, dimension.height);\n swimlane.height = Math.max(diagramProps.swimlaneMinHeight, swimlane.maxHeight) + 2 * diagramProps.swimlanePadding;\n const box = {\n x,\n y: diagramProps.swimlanePadding + swimlane.y,\n // y: diagramProps.swimlanePadding + (swimlane.y || diagramProps.boxDefaultY),\n r,\n dimension,\n leftSibling: false,\n swimlane,\n visual: event.visual,\n text: event.textProps.content,\n frame: event.frame,\n index: event.index\n };\n const newState = {\n ...state,\n boxes: [...state.boxes, box],\n swimlanes: {\n ...state.swimlanes,\n [`${swimlane.index}`]: swimlane\n },\n previousSwimlaneNumber: swimlaneProps.index,\n previousFrame: event.frame,\n maxR\n };\n const swimlanes = sortedSwimlanesArray(newState.swimlanes);\n if (swimlanes.length > 0) {\n swimlanes[0].y = 0;\n }\n for (let i = 1; i < swimlanes.length; i++) {\n const sw = swimlanes[i];\n const prevSw = swimlanes[i - 1];\n sw.y = prevSw.y + prevSw.height + diagramProps.swimlaneGap;\n }\n return newState;\n}\n__name(evolveFramePositioned, \"evolveFramePositioned\");\nfunction isFirstFrame(index, frame) {\n if (index === 0 && frame.sourceFrames.length === 0) {\n return true;\n }\n return false;\n}\n__name(isFirstFrame, \"isFirstFrame\");\nfunction hasSourceFrame(frame) {\n return frame.sourceFrames !== void 0 && frame.sourceFrames !== null && frame.sourceFrames.length > 0;\n}\n__name(hasSourceFrame, \"hasSourceFrame\");\nfunction findBoxByFrame(boxes, frame) {\n if (frame === void 0 || frame === null) {\n return void 0;\n }\n return boxes.find((box) => box.frame.name === frame.name);\n}\n__name(findBoxByFrame, \"findBoxByFrame\");\nfunction findBoxByLineIndex(boxes, targetSwimlane, lineIndex) {\n if (lineIndex < 0) {\n return void 0;\n }\n for (let i = lineIndex; i >= 0; i--) {\n const box = boxes[i];\n if (box.swimlane.index !== targetSwimlane) {\n return box;\n }\n }\n return void 0;\n}\n__name(findBoxByLineIndex, \"findBoxByLineIndex\");\nfunction decidePositionRelation(state, _command) {\n const command = _command;\n if (isEmResetFrame(command.frame) || isFirstFrame(command.index, command.frame)) {\n return [];\n }\n const targetBox = findBoxByFrame(state.boxes, command.frame);\n if (targetBox === void 0) {\n throw new Error(`Target box not found for frame ${command.frame.name}`);\n }\n let sourceBox;\n if (command.sourceFrame) {\n sourceBox = findBoxByFrame(state.boxes, command.sourceFrame);\n } else {\n sourceBox = findBoxByLineIndex(state.boxes, targetBox.swimlane.index, command.index - 1);\n }\n if (sourceBox === void 0) {\n return [];\n }\n const event = {\n $kind: RelationPositionedKind,\n frame: command.frame,\n index: command.index,\n sourceBox,\n targetBox\n };\n return [event];\n}\n__name(decidePositionRelation, \"decidePositionRelation\");\nfunction evolveRelationPositioned(state, _event) {\n const event = _event;\n const relation = {\n visual: {\n fill: \"none\",\n stroke: \"#000\"\n },\n source: {\n x: event.sourceBox.x,\n y: event.sourceBox.y\n },\n target: {\n x: event.targetBox.x,\n y: event.targetBox.y\n },\n sourceBox: event.sourceBox,\n targetBox: event.targetBox\n };\n const newState = {\n ...state,\n relations: [...state.relations, relation]\n };\n return newState;\n}\n__name(evolveRelationPositioned, \"evolveRelationPositioned\");\nvar deciders = {\n [PositionFrameKind]: decidePositionFrame,\n [PositionRelationKind]: decidePositionRelation\n};\nvar evolvers = {\n [FramePositionedKind]: evolveFramePositioned,\n [RelationPositionedKind]: evolveRelationPositioned\n};\nfunction decide(state, command) {\n const fn = deciders[command.$kind];\n if (fn === void 0 || fn === null) {\n return [];\n }\n const events = fn(state, command);\n log.debug(`decided events`, events);\n return events;\n}\n__name(decide, \"decide\");\nfunction evolve(state, events) {\n const newState = events.reduce((previousState, event) => {\n const fn = evolvers[event.$kind];\n if (fn === void 0 || fn === null) {\n return previousState;\n }\n return fn(previousState, event);\n }, state);\n log.debug(`evolve events`, { state, newState, events });\n return newState;\n}\n__name(evolve, \"evolve\");\nfunction dispatch(state, command) {\n const events = decide(state, command);\n const newState = evolve(state, events);\n return newState;\n}\n__name(dispatch, \"dispatch\");\nvar db = {\n getConfig: getConfig3,\n setOptions,\n getOptions,\n clear: clear2,\n setAccTitle,\n getAccTitle,\n getAccDescription,\n setAccDescription,\n setDiagramTitle,\n getDiagramTitle,\n setAst,\n getDiagramProps,\n getState\n};\n\n// src/diagrams/eventmodeling/parser.ts\nvar parser = {\n parse: /* @__PURE__ */ __name(async (input) => {\n const ast = await parse(\"eventmodeling\", input);\n log.debug(ast);\n db.setAst(ast);\n populateCommonDb(ast, db);\n }, \"parse\")\n};\nif (void 0) {\n const { it, expect, describe } = void 0;\n describe(\"EventModeling Parser\", () => {\n it(\"should parse simple model\", () => {\n const result = parser.parse(`eventmodeling\n tf 01 evt Start\n\n `);\n expect(result !== void 0);\n });\n });\n}\n\n// src/diagrams/eventmodeling/renderer.ts\nimport { select } from \"d3\";\nvar DEFAULT_CONFIG = getConfig2();\nvar DEFAULT_EVENTMODELING_CONFIG2 = DEFAULT_CONFIG?.eventmodeling;\nfunction renderD3Box(diagram2, diagramProps2) {\n return (box) => {\n const y = box.swimlane.y + diagramProps2.swimlanePadding;\n const g = diagram2.append(\"g\").attr(\"class\", \"em-box\");\n g.append(\"rect\").attr(\"x\", box.x).attr(\"y\", y).attr(\"rx\", \"3\").attr(\"width\", box.dimension.width).attr(\"height\", box.dimension.height).attr(\"stroke\", box.visual.stroke).attr(\"fill\", box.visual.fill);\n const f = g.append(\"foreignObject\").attr(\"x\", box.x + diagramProps2.boxPadding).attr(\"y\", y + 10).attr(\"width\", box.dimension.width - 2 * diagramProps2.boxPadding).attr(\"height\", box.dimension.height - 2 * diagramProps2.boxPadding);\n const text = f.append(\"xhtml:div\").style(\"display\", \"table\").style(\"height\", \"100%\").style(\"width\", \"100%\");\n text.append(\"span\").style(\"display\", \"table-cell\").style(\"text-align\", \"center\").style(\"vertical-align\", \"middle\").html(box.text);\n };\n}\n__name(renderD3Box, \"renderD3Box\");\nfunction dirUpwards(sourceY, targetY) {\n return sourceY > targetY;\n}\n__name(dirUpwards, \"dirUpwards\");\nfunction renderD3Relation(diagram2, diagramProps2, arrowheadId, themeVariables) {\n return (relation) => {\n const sourceBoxY = relation.sourceBox.swimlane.y + diagramProps2.swimlanePadding;\n const targetBoxY = relation.targetBox.swimlane.y + diagramProps2.swimlanePadding;\n const upwards = dirUpwards(sourceBoxY, targetBoxY);\n const sourceX = relation.sourceBox.x + relation.sourceBox.dimension.width * 2 / 3;\n const targetX = relation.targetBox.x + relation.targetBox.dimension.width / 3;\n let sourceY;\n let targetY;\n log.debug(`rendering relation up=${upwards} for `, {\n sourceBox: relation.sourceBox,\n targetBox: relation.targetBox\n });\n if (upwards) {\n sourceY = sourceBoxY;\n targetY = targetBoxY + relation.targetBox.dimension.height;\n } else {\n sourceY = sourceBoxY + relation.sourceBox.dimension.height;\n targetY = targetBoxY;\n }\n const relationStroke = themeVariables.emRelationStroke ?? relation.visual.stroke;\n diagram2.append(\"path\").attr(\"class\", \"em-relation\").attr(\"fill\", relation.visual.fill).attr(\"stroke\", relationStroke).attr(\"stroke-width\", \"1\").attr(\"marker-end\", `url(#${arrowheadId})`).attr(\"d\", `M${sourceX} ${sourceY} L${targetX} ${targetY}`);\n };\n}\n__name(renderD3Relation, \"renderD3Relation\");\nfunction renderD3Swimlane(diagram2, maxR, diagramProps2, themeVariables) {\n return (swimlane) => {\n const g = diagram2.append(\"g\").attr(\"class\", \"em-swimlane\");\n const oddBackground = themeVariables.emSwimlaneBackgroundOdd ?? \"rgb(250,250,250)\";\n const backgroundStroke = themeVariables.emSwimlaneBackgroundStroke ?? \"rgb(240,240,240)\";\n g.append(\"rect\").attr(\"x\", 0).attr(\"y\", swimlane.y).attr(\"rx\", \"3\").attr(\"width\", maxR + diagramProps2.swimlanePadding).attr(\"height\", swimlane.height).attr(\"fill\", oddBackground).attr(\"stroke\", backgroundStroke);\n g.append(\"text\").attr(\"font-weight\", diagramProps2.swimlaneTextFontWeight).attr(\"x\", 30).attr(\"y\", swimlane.y + 30).text(swimlane.label);\n };\n}\n__name(renderD3Swimlane, \"renderD3Swimlane\");\nvar draw = /* @__PURE__ */ __name(function(txt, id, ver, diagObj) {\n log.debug(\"in eventmodeling renderer\", txt + \"\\n\", \"id:\", id, ver);\n if (!DEFAULT_EVENTMODELING_CONFIG2) {\n throw new Error(\"EventModeling config not found\");\n }\n const db2 = diagObj.db;\n const { themeVariables, eventmodeling: config } = getConfig2();\n const diagram2 = select(`[id=\"${id}\"]`);\n const diagramProps2 = db2.getDiagramProps();\n const state = db2.getState();\n const arrowheadId = `em-arrowhead-${id}`;\n const arrowheadColor = themeVariables.emArrowhead ?? \"#000000\";\n state.sortedSwimlanesArray.forEach(\n renderD3Swimlane(diagram2, state.maxR, diagramProps2, themeVariables)\n );\n state.boxes.forEach(renderD3Box(diagram2, diagramProps2));\n state.relations.forEach(renderD3Relation(diagram2, diagramProps2, arrowheadId, themeVariables));\n const marker = diagram2.append(\"defs\").append(\"marker\").attr(\"id\", arrowheadId).attr(\"markerWidth\", \"10\").attr(\"markerHeight\", \"7\").attr(\"refX\", \"10\").attr(\"refY\", \"3.5\").attr(\"orient\", \"auto\");\n marker.append(\"polygon\").attr(\"points\", \"0 0, 10 3.5, 0 7\").attr(\"fill\", arrowheadColor);\n setupGraphViewbox(void 0, diagram2, config?.padding ?? 30, config?.useMaxWidth);\n}, \"draw\");\nvar renderer_default = {\n draw\n};\n\n// src/diagrams/eventmodeling/styles.js\nvar getStyles = /* @__PURE__ */ __name((_options) => ``, \"getStyles\");\nvar styles_default = getStyles;\n\n// src/diagrams/eventmodeling/diagram.ts\nvar diagram = {\n parser,\n db,\n renderer: renderer_default,\n styles: styles_default\n};\nexport {\n diagram\n};\n"],"names":["PositionFrameKind","FramePositionedKind","PositionRelationKind","RelationPositionedKind","setOptions","__name","_rawOptString","log","getOptions","clear2","reset","clear","store","DEFAULT_EVENTMODELING_CONFIG","defaultConfig_default","getConfig3","cleanAndMerge","getConfig","getState","state","initial","ast","diagramProps2","getDiagramProps","frame","index","textProps","calculateTextProps","dispatch","sourceFrames","hasSourceFrame","currentFrame","sf","sourceFrame","sortedSwimlanesArray","setAst","diagramProps","extractNamespace","entityIdentifier","spl","extractName","findSwimlaneByNamespace","swimlanes","namespace","swimlane","findNextAvailableIndex","boundaryMin","boundaryMax","key","calculateSwimlaneProps","sw","calculateEntityVisualProps","themeVariables","dataEntities","config","name","sanitizeText","toHtml","wrapLabelConfig","content","wrapLabel","dataEntity","dataEntity2","hasRenderedData","textDimensionConfig","dimensions","calculateTextDimensions","calculatedWidthFix","props","decidePositionFrame","_command","command","visual","dimension","calculateX","previousSwimlane","lastBox","calculateMaxRight","swimlaneR","rs","s","a","b","evolveFramePositioned","_event","event","swimlaneProps","x","r","maxR","box","newState","i","prevSw","isFirstFrame","findBoxByFrame","boxes","findBoxByLineIndex","targetSwimlane","lineIndex","decidePositionRelation","isEmResetFrame","targetBox","sourceBox","evolveRelationPositioned","relation","deciders","evolvers","decide","fn","events","evolve","previousState","db","setAccTitle","getAccTitle","getAccDescription","setAccDescription","setDiagramTitle","getDiagramTitle","parser","input","parse","populateCommonDb","DEFAULT_CONFIG","getConfig2","DEFAULT_EVENTMODELING_CONFIG2","renderD3Box","diagram2","y","g","dirUpwards","sourceY","targetY","renderD3Relation","arrowheadId","sourceBoxY","targetBoxY","upwards","sourceX","targetX","relationStroke","renderD3Swimlane","oddBackground","backgroundStroke","draw","txt","id","ver","diagObj","db2","select","arrowheadColor","setupGraphViewbox","renderer_default","getStyles","_options","styles_default","diagram"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"diagram-KO2AKTUF-DoIuQ47y.cjs","sources":["../../../node_modules/.pnpm/mermaid@11.15.0/node_modules/mermaid/dist/chunks/mermaid.core/diagram-KO2AKTUF.mjs"],"sourcesContent":["import {\n populateCommonDb\n} from \"./chunk-4BX2VUAB.mjs\";\nimport {\n calculateTextDimensions,\n cleanAndMerge,\n wrapLabel\n} from \"./chunk-5ZQYHXKU.mjs\";\nimport {\n clear,\n defaultConfig_default,\n getAccDescription,\n getAccTitle,\n getConfig,\n getConfig2,\n getDiagramTitle,\n sanitizeText,\n setAccDescription,\n setAccTitle,\n setDiagramTitle,\n setupGraphViewbox2 as setupGraphViewbox\n} from \"./chunk-CSCIHK7Q.mjs\";\nimport {\n __name,\n log\n} from \"./chunk-AGHRB4JF.mjs\";\n\n// src/diagrams/eventmodeling/parser.ts\nimport { parse } from \"@mermaid-js/parser\";\n\n// src/diagrams/eventmodeling/db.ts\nimport { isEmResetFrame } from \"@mermaid-js/parser\";\n\n// src/diagrams/eventmodeling/types.ts\nvar PositionFrameKind = \"position frame\";\nvar FramePositionedKind = \"frame positioned\";\nvar PositionRelationKind = \"position relation\";\nvar RelationPositionedKind = \"relation positioned\";\n\n// src/diagrams/eventmodeling/db.ts\nvar setOptions = /* @__PURE__ */ __name(function(_rawOptString) {\n log.debug(\"options str\", _rawOptString);\n}, \"setOptions\");\nvar getOptions = /* @__PURE__ */ __name(function() {\n return {};\n}, \"getOptions\");\nvar clear2 = /* @__PURE__ */ __name(function() {\n reset();\n clear();\n}, \"clear\");\nfunction reset() {\n store = {};\n}\n__name(reset, \"reset\");\nvar DEFAULT_EVENTMODELING_CONFIG = defaultConfig_default.eventmodeling;\nvar getConfig3 = /* @__PURE__ */ __name(() => {\n const config = cleanAndMerge({\n ...DEFAULT_EVENTMODELING_CONFIG,\n ...getConfig().eventmodeling\n });\n return config;\n}, \"getConfig\");\nvar store = {};\nfunction getState() {\n let state = initial;\n const { ast } = store;\n const diagramProps2 = getDiagramProps();\n if (!ast) {\n throw new Error(\"No data for EventModel\");\n }\n ast.frames.forEach((frame, index) => {\n const textProps = calculateTextProps(frame, ast.dataEntities, diagramProps2);\n state = dispatch(state, {\n $kind: PositionFrameKind,\n index,\n frame,\n textProps\n });\n let sourceFrames = void 0;\n if (hasSourceFrame(frame)) {\n log.debug(`source frame`, frame.sourceFrames);\n sourceFrames = ast.frames.filter((currentFrame) => {\n return frame.sourceFrames.some((sf) => sf.$refText === currentFrame.name);\n });\n sourceFrames.forEach((sourceFrame) => {\n state = dispatch(state, {\n $kind: PositionRelationKind,\n index,\n frame,\n sourceFrame\n });\n });\n } else {\n state = dispatch(state, {\n $kind: PositionRelationKind,\n index,\n frame\n });\n }\n });\n state = {\n ...state,\n sortedSwimlanesArray: sortedSwimlanesArray(state.swimlanes)\n };\n return state;\n}\n__name(getState, \"getState\");\nfunction setAst(ast) {\n store.ast = ast;\n}\n__name(setAst, \"setAst\");\nvar diagramProps = {\n swimlaneMinHeight: 70,\n swimlanePadding: 15,\n swimlaneGap: 10,\n boxPadding: 10,\n boxOverlap: 90,\n boxDefaultY: 0,\n boxMinWidth: 80,\n boxMaxWidth: 450,\n boxMinHeight: 80,\n boxMaxHeight: 750,\n contentStartX: 250,\n textMaxWidth: 450 - 2 * 10,\n boxTextFontWeight: \"bold\",\n boxTextPadding: 10,\n swimlaneTextFontWeight: \"bold\",\n labelUiAutomation: \"UI/Automation\",\n labelUiAutomationPrefix: \"UI/A: \",\n labelCommandReadModel: \"Command/Read Model\",\n labelCommandReadModelPrefix: \"C/RM: \",\n labelEvents: \"Events\",\n labelEventsPrefix: \"Stream: \"\n};\nfunction getDiagramProps() {\n return diagramProps;\n}\n__name(getDiagramProps, \"getDiagramProps\");\nvar initial = {\n boxes: [],\n swimlanes: {},\n relations: [],\n maxR: 0,\n sortedSwimlanesArray: []\n};\nfunction extractNamespace(entityIdentifier) {\n const spl = entityIdentifier.split(\".\");\n if (spl.length === 2) {\n return spl[0];\n }\n return void 0;\n}\n__name(extractNamespace, \"extractNamespace\");\nfunction extractName(entityIdentifier) {\n const spl = entityIdentifier.split(\".\");\n if (spl.length === 2) {\n return spl[1];\n }\n return entityIdentifier;\n}\n__name(extractName, \"extractName\");\nfunction findSwimlaneByNamespace(swimlanes, namespace) {\n if (!namespace || namespace.length === 0) {\n return void 0;\n }\n return Object.values(swimlanes).find((swimlane) => swimlane.namespace === namespace);\n}\n__name(findSwimlaneByNamespace, \"findSwimlaneByNamespace\");\nfunction findNextAvailableIndex(swimlanes, boundaryMin, boundaryMax) {\n return Math.max(\n boundaryMin,\n ...Object.keys(swimlanes).filter((key) => {\n const index = Number.parseInt(key);\n return index > boundaryMin && index < boundaryMax;\n }).map((key) => Number.parseInt(key))\n ) + 1;\n}\n__name(findNextAvailableIndex, \"findNextAvailableIndex\");\nfunction calculateSwimlaneProps(frame, swimlanes) {\n const namespace = extractNamespace(frame.entityIdentifier);\n const sw = findSwimlaneByNamespace(swimlanes, namespace);\n switch (frame.modelEntityType) {\n case \"ui\":\n case \"pcr\":\n case \"processor\":\n if (sw) {\n return {\n index: sw.index,\n label: sw.namespace || diagramProps.labelUiAutomation\n };\n } else if (namespace) {\n return {\n index: findNextAvailableIndex(swimlanes, 0, 100),\n label: diagramProps.labelUiAutomationPrefix + namespace\n };\n }\n return { index: 0, label: diagramProps.labelUiAutomation };\n case \"rmo\":\n case \"readmodel\":\n case \"cmd\":\n case \"command\":\n if (sw) {\n return {\n index: sw.index,\n label: sw.namespace || diagramProps.labelCommandReadModel\n };\n } else if (namespace) {\n return {\n index: findNextAvailableIndex(swimlanes, 100, 200),\n label: diagramProps.labelCommandReadModelPrefix + namespace\n };\n }\n return { index: 100, label: diagramProps.labelCommandReadModel };\n case \"evt\":\n case \"event\":\n default:\n if (sw) {\n return {\n index: sw.index,\n label: sw.namespace || diagramProps.labelEvents\n };\n } else if (namespace) {\n return {\n index: findNextAvailableIndex(swimlanes, 200, 300),\n label: diagramProps.labelEventsPrefix + namespace\n };\n }\n return { index: 200, label: diagramProps.labelEvents };\n }\n}\n__name(calculateSwimlaneProps, \"calculateSwimlaneProps\");\nfunction calculateEntityVisualProps(frame) {\n const { themeVariables } = getConfig();\n switch (frame.modelEntityType) {\n case \"ui\":\n return {\n fill: themeVariables.emUiFill ?? \"white\",\n stroke: themeVariables.emUiStroke ?? \"#dbdada\"\n };\n case \"pcr\":\n case \"processor\":\n return {\n fill: themeVariables.emProcessorFill ?? \"#edb3f6\",\n stroke: themeVariables.emProcessorStroke ?? \"#b88cbf\"\n };\n case \"rmo\":\n case \"readmodel\":\n return {\n fill: themeVariables.emReadModelFill ?? \"#d3f1a2\",\n stroke: themeVariables.emReadModelStroke ?? \"#a3b732\"\n };\n case \"cmd\":\n case \"command\":\n return {\n fill: themeVariables.emCommandFill ?? \"#bcd6fe\",\n stroke: themeVariables.emCommandStroke ?? \"#679ac3\"\n };\n case \"evt\":\n case \"event\":\n return {\n fill: themeVariables.emEventFill ?? \"#ffb778\",\n stroke: themeVariables.emEventStroke ?? \"#c19a0f\"\n };\n default:\n return {\n fill: \"red\",\n stroke: \"black\"\n };\n }\n}\n__name(calculateEntityVisualProps, \"calculateEntityVisualProps\");\nfunction calculateTextProps(frame, dataEntities, diagramProps2) {\n const config = getConfig();\n const name = sanitizeText(extractName(frame.entityIdentifier) ?? \"\", config);\n let toHtml;\n const wrapLabelConfig = {\n fontSize: 16,\n fontWeight: 700,\n fontFamily: '\"trebuchet ms\", verdana, arial, sans-serif',\n joinWith: \"<br/>\"\n };\n const wrappedName = wrapLabel(name, diagramProps2.textMaxWidth, wrapLabelConfig);\n let content = `<b>${wrappedName}</b>`;\n if (frame.dataInlineValue) {\n toHtml = frame.dataInlineValue;\n toHtml = toHtml.substring(toHtml.indexOf(\"{\") + 1);\n toHtml = toHtml.substring(0, toHtml.lastIndexOf(\"}\") - 1);\n toHtml = sanitizeText(toHtml, config);\n toHtml = wrapLabel(toHtml, diagramProps2.textMaxWidth, wrapLabelConfig);\n toHtml = toHtml.replaceAll(\" \", \"&nbsp;\");\n }\n if (frame.dataReference) {\n const dataEntity = dataEntities.find(\n (dataEntity2) => dataEntity2.name === frame.dataReference?.$refText\n );\n if (dataEntity) {\n toHtml = dataEntity.dataBlockValue;\n toHtml = toHtml.substring(toHtml.indexOf(\"{\\n\") + 2);\n toHtml = toHtml.substring(0, toHtml.lastIndexOf(\"}\") - 1);\n toHtml = sanitizeText(toHtml, config);\n toHtml = wrapLabel(toHtml, diagramProps2.textMaxWidth, wrapLabelConfig);\n toHtml = toHtml.replaceAll(\" \", \"&nbsp;\");\n toHtml += `<br/>`;\n }\n }\n const hasRenderedData = toHtml !== void 0;\n if (hasRenderedData) {\n content += `<br/><br/><code style=\"text-align: left; display: block;max-width:${diagramProps2.textMaxWidth}px\">${toHtml}</code>`;\n }\n const textDimensionConfig = {\n fontSize: wrapLabelConfig.fontSize,\n fontWeight: wrapLabelConfig.fontWeight,\n fontFamily: wrapLabelConfig.fontFamily\n };\n const dimensions = calculateTextDimensions(content, textDimensionConfig);\n const calculatedWidthFix = hasRenderedData ? dimensions.width / 3 : dimensions.width;\n const props = {\n content,\n width: calculatedWidthFix,\n height: dimensions.height\n };\n log.debug(`[${frame.name}] ${frame.entityIdentifier} text`, props);\n return props;\n}\n__name(calculateTextProps, \"calculateTextProps\");\nfunction decidePositionFrame(state, _command) {\n const command = _command;\n const visual = calculateEntityVisualProps(command.frame);\n const dimension = {\n width: command.textProps.width + 2 * diagramProps.boxTextPadding,\n height: command.textProps.height + 2 * diagramProps.boxTextPadding\n };\n const event = {\n $kind: FramePositionedKind,\n frame: command.frame,\n index: command.index,\n visual,\n dimension,\n textProps: command.textProps\n };\n return [event];\n}\n__name(decidePositionFrame, \"decidePositionFrame\");\nfunction calculateX(swimlane, previousSwimlane, lastBox) {\n if (previousSwimlane === void 0) {\n return diagramProps.contentStartX;\n }\n if (previousSwimlane.index === swimlane.index && swimlane.r) {\n return swimlane.r + diagramProps.boxPadding;\n }\n if (lastBox === void 0) {\n return diagramProps.contentStartX;\n }\n return lastBox.r - diagramProps.boxOverlap + diagramProps.boxPadding;\n}\n__name(calculateX, \"calculateX\");\nfunction calculateMaxRight(swimlanes, swimlaneR) {\n const rs = [...swimlanes.map((s) => s.r), swimlaneR];\n return Math.max(...rs);\n}\n__name(calculateMaxRight, \"calculateMaxRight\");\nfunction sortedSwimlanesArray(swimlanes) {\n return Object.values(swimlanes).sort((a, b) => a.index - b.index);\n}\n__name(sortedSwimlanesArray, \"sortedSwimlanesArray\");\nfunction evolveFramePositioned(state, _event) {\n const event = _event;\n const swimlaneProps = calculateSwimlaneProps(event.frame, state.swimlanes);\n let swimlane;\n if (swimlaneProps.index in state.swimlanes) {\n swimlane = state.swimlanes[swimlaneProps.index];\n } else {\n swimlane = {\n index: swimlaneProps.index,\n label: swimlaneProps.label,\n r: 0,\n y: swimlaneProps.index * diagramProps.swimlaneMinHeight + diagramProps.swimlaneGap,\n height: diagramProps.swimlaneMinHeight,\n maxHeight: diagramProps.swimlaneMinHeight\n };\n }\n const lastBox = state.boxes.length > 0 ? state.boxes[state.boxes.length - 1] : void 0;\n const previousSwimlane = state.previousSwimlaneNumber !== void 0 ? state.swimlanes[state.previousSwimlaneNumber] : void 0;\n const dimension = {\n width: Math.max(\n diagramProps.boxMinWidth,\n Math.min(diagramProps.boxMaxWidth, event.dimension.width)\n ) + 2 * diagramProps.boxPadding,\n height: Math.max(\n diagramProps.boxMinHeight,\n Math.min(diagramProps.boxMaxHeight, event.dimension.height)\n ) + 2 * diagramProps.boxPadding\n };\n const x = calculateX(swimlane, previousSwimlane, lastBox);\n const r = x + dimension.width + diagramProps.boxPadding;\n const maxR = calculateMaxRight(Object.values(state.swimlanes), r);\n swimlane.r = x + dimension.width;\n swimlane.maxHeight = Math.max(swimlane.maxHeight, dimension.height);\n swimlane.height = Math.max(diagramProps.swimlaneMinHeight, swimlane.maxHeight) + 2 * diagramProps.swimlanePadding;\n const box = {\n x,\n y: diagramProps.swimlanePadding + swimlane.y,\n // y: diagramProps.swimlanePadding + (swimlane.y || diagramProps.boxDefaultY),\n r,\n dimension,\n leftSibling: false,\n swimlane,\n visual: event.visual,\n text: event.textProps.content,\n frame: event.frame,\n index: event.index\n };\n const newState = {\n ...state,\n boxes: [...state.boxes, box],\n swimlanes: {\n ...state.swimlanes,\n [`${swimlane.index}`]: swimlane\n },\n previousSwimlaneNumber: swimlaneProps.index,\n previousFrame: event.frame,\n maxR\n };\n const swimlanes = sortedSwimlanesArray(newState.swimlanes);\n if (swimlanes.length > 0) {\n swimlanes[0].y = 0;\n }\n for (let i = 1; i < swimlanes.length; i++) {\n const sw = swimlanes[i];\n const prevSw = swimlanes[i - 1];\n sw.y = prevSw.y + prevSw.height + diagramProps.swimlaneGap;\n }\n return newState;\n}\n__name(evolveFramePositioned, \"evolveFramePositioned\");\nfunction isFirstFrame(index, frame) {\n if (index === 0 && frame.sourceFrames.length === 0) {\n return true;\n }\n return false;\n}\n__name(isFirstFrame, \"isFirstFrame\");\nfunction hasSourceFrame(frame) {\n return frame.sourceFrames !== void 0 && frame.sourceFrames !== null && frame.sourceFrames.length > 0;\n}\n__name(hasSourceFrame, \"hasSourceFrame\");\nfunction findBoxByFrame(boxes, frame) {\n if (frame === void 0 || frame === null) {\n return void 0;\n }\n return boxes.find((box) => box.frame.name === frame.name);\n}\n__name(findBoxByFrame, \"findBoxByFrame\");\nfunction findBoxByLineIndex(boxes, targetSwimlane, lineIndex) {\n if (lineIndex < 0) {\n return void 0;\n }\n for (let i = lineIndex; i >= 0; i--) {\n const box = boxes[i];\n if (box.swimlane.index !== targetSwimlane) {\n return box;\n }\n }\n return void 0;\n}\n__name(findBoxByLineIndex, \"findBoxByLineIndex\");\nfunction decidePositionRelation(state, _command) {\n const command = _command;\n if (isEmResetFrame(command.frame) || isFirstFrame(command.index, command.frame)) {\n return [];\n }\n const targetBox = findBoxByFrame(state.boxes, command.frame);\n if (targetBox === void 0) {\n throw new Error(`Target box not found for frame ${command.frame.name}`);\n }\n let sourceBox;\n if (command.sourceFrame) {\n sourceBox = findBoxByFrame(state.boxes, command.sourceFrame);\n } else {\n sourceBox = findBoxByLineIndex(state.boxes, targetBox.swimlane.index, command.index - 1);\n }\n if (sourceBox === void 0) {\n return [];\n }\n const event = {\n $kind: RelationPositionedKind,\n frame: command.frame,\n index: command.index,\n sourceBox,\n targetBox\n };\n return [event];\n}\n__name(decidePositionRelation, \"decidePositionRelation\");\nfunction evolveRelationPositioned(state, _event) {\n const event = _event;\n const relation = {\n visual: {\n fill: \"none\",\n stroke: \"#000\"\n },\n source: {\n x: event.sourceBox.x,\n y: event.sourceBox.y\n },\n target: {\n x: event.targetBox.x,\n y: event.targetBox.y\n },\n sourceBox: event.sourceBox,\n targetBox: event.targetBox\n };\n const newState = {\n ...state,\n relations: [...state.relations, relation]\n };\n return newState;\n}\n__name(evolveRelationPositioned, \"evolveRelationPositioned\");\nvar deciders = {\n [PositionFrameKind]: decidePositionFrame,\n [PositionRelationKind]: decidePositionRelation\n};\nvar evolvers = {\n [FramePositionedKind]: evolveFramePositioned,\n [RelationPositionedKind]: evolveRelationPositioned\n};\nfunction decide(state, command) {\n const fn = deciders[command.$kind];\n if (fn === void 0 || fn === null) {\n return [];\n }\n const events = fn(state, command);\n log.debug(`decided events`, events);\n return events;\n}\n__name(decide, \"decide\");\nfunction evolve(state, events) {\n const newState = events.reduce((previousState, event) => {\n const fn = evolvers[event.$kind];\n if (fn === void 0 || fn === null) {\n return previousState;\n }\n return fn(previousState, event);\n }, state);\n log.debug(`evolve events`, { state, newState, events });\n return newState;\n}\n__name(evolve, \"evolve\");\nfunction dispatch(state, command) {\n const events = decide(state, command);\n const newState = evolve(state, events);\n return newState;\n}\n__name(dispatch, \"dispatch\");\nvar db = {\n getConfig: getConfig3,\n setOptions,\n getOptions,\n clear: clear2,\n setAccTitle,\n getAccTitle,\n getAccDescription,\n setAccDescription,\n setDiagramTitle,\n getDiagramTitle,\n setAst,\n getDiagramProps,\n getState\n};\n\n// src/diagrams/eventmodeling/parser.ts\nvar parser = {\n parse: /* @__PURE__ */ __name(async (input) => {\n const ast = await parse(\"eventmodeling\", input);\n log.debug(ast);\n db.setAst(ast);\n populateCommonDb(ast, db);\n }, \"parse\")\n};\nif (void 0) {\n const { it, expect, describe } = void 0;\n describe(\"EventModeling Parser\", () => {\n it(\"should parse simple model\", () => {\n const result = parser.parse(`eventmodeling\n tf 01 evt Start\n\n `);\n expect(result !== void 0);\n });\n });\n}\n\n// src/diagrams/eventmodeling/renderer.ts\nimport { select } from \"d3\";\nvar DEFAULT_CONFIG = getConfig2();\nvar DEFAULT_EVENTMODELING_CONFIG2 = DEFAULT_CONFIG?.eventmodeling;\nfunction renderD3Box(diagram2, diagramProps2) {\n return (box) => {\n const y = box.swimlane.y + diagramProps2.swimlanePadding;\n const g = diagram2.append(\"g\").attr(\"class\", \"em-box\");\n g.append(\"rect\").attr(\"x\", box.x).attr(\"y\", y).attr(\"rx\", \"3\").attr(\"width\", box.dimension.width).attr(\"height\", box.dimension.height).attr(\"stroke\", box.visual.stroke).attr(\"fill\", box.visual.fill);\n const f = g.append(\"foreignObject\").attr(\"x\", box.x + diagramProps2.boxPadding).attr(\"y\", y + 10).attr(\"width\", box.dimension.width - 2 * diagramProps2.boxPadding).attr(\"height\", box.dimension.height - 2 * diagramProps2.boxPadding);\n const text = f.append(\"xhtml:div\").style(\"display\", \"table\").style(\"height\", \"100%\").style(\"width\", \"100%\");\n text.append(\"span\").style(\"display\", \"table-cell\").style(\"text-align\", \"center\").style(\"vertical-align\", \"middle\").html(box.text);\n };\n}\n__name(renderD3Box, \"renderD3Box\");\nfunction dirUpwards(sourceY, targetY) {\n return sourceY > targetY;\n}\n__name(dirUpwards, \"dirUpwards\");\nfunction renderD3Relation(diagram2, diagramProps2, arrowheadId, themeVariables) {\n return (relation) => {\n const sourceBoxY = relation.sourceBox.swimlane.y + diagramProps2.swimlanePadding;\n const targetBoxY = relation.targetBox.swimlane.y + diagramProps2.swimlanePadding;\n const upwards = dirUpwards(sourceBoxY, targetBoxY);\n const sourceX = relation.sourceBox.x + relation.sourceBox.dimension.width * 2 / 3;\n const targetX = relation.targetBox.x + relation.targetBox.dimension.width / 3;\n let sourceY;\n let targetY;\n log.debug(`rendering relation up=${upwards} for `, {\n sourceBox: relation.sourceBox,\n targetBox: relation.targetBox\n });\n if (upwards) {\n sourceY = sourceBoxY;\n targetY = targetBoxY + relation.targetBox.dimension.height;\n } else {\n sourceY = sourceBoxY + relation.sourceBox.dimension.height;\n targetY = targetBoxY;\n }\n const relationStroke = themeVariables.emRelationStroke ?? relation.visual.stroke;\n diagram2.append(\"path\").attr(\"class\", \"em-relation\").attr(\"fill\", relation.visual.fill).attr(\"stroke\", relationStroke).attr(\"stroke-width\", \"1\").attr(\"marker-end\", `url(#${arrowheadId})`).attr(\"d\", `M${sourceX} ${sourceY} L${targetX} ${targetY}`);\n };\n}\n__name(renderD3Relation, \"renderD3Relation\");\nfunction renderD3Swimlane(diagram2, maxR, diagramProps2, themeVariables) {\n return (swimlane) => {\n const g = diagram2.append(\"g\").attr(\"class\", \"em-swimlane\");\n const oddBackground = themeVariables.emSwimlaneBackgroundOdd ?? \"rgb(250,250,250)\";\n const backgroundStroke = themeVariables.emSwimlaneBackgroundStroke ?? \"rgb(240,240,240)\";\n g.append(\"rect\").attr(\"x\", 0).attr(\"y\", swimlane.y).attr(\"rx\", \"3\").attr(\"width\", maxR + diagramProps2.swimlanePadding).attr(\"height\", swimlane.height).attr(\"fill\", oddBackground).attr(\"stroke\", backgroundStroke);\n g.append(\"text\").attr(\"font-weight\", diagramProps2.swimlaneTextFontWeight).attr(\"x\", 30).attr(\"y\", swimlane.y + 30).text(swimlane.label);\n };\n}\n__name(renderD3Swimlane, \"renderD3Swimlane\");\nvar draw = /* @__PURE__ */ __name(function(txt, id, ver, diagObj) {\n log.debug(\"in eventmodeling renderer\", txt + \"\\n\", \"id:\", id, ver);\n if (!DEFAULT_EVENTMODELING_CONFIG2) {\n throw new Error(\"EventModeling config not found\");\n }\n const db2 = diagObj.db;\n const { themeVariables, eventmodeling: config } = getConfig2();\n const diagram2 = select(`[id=\"${id}\"]`);\n const diagramProps2 = db2.getDiagramProps();\n const state = db2.getState();\n const arrowheadId = `em-arrowhead-${id}`;\n const arrowheadColor = themeVariables.emArrowhead ?? \"#000000\";\n state.sortedSwimlanesArray.forEach(\n renderD3Swimlane(diagram2, state.maxR, diagramProps2, themeVariables)\n );\n state.boxes.forEach(renderD3Box(diagram2, diagramProps2));\n state.relations.forEach(renderD3Relation(diagram2, diagramProps2, arrowheadId, themeVariables));\n const marker = diagram2.append(\"defs\").append(\"marker\").attr(\"id\", arrowheadId).attr(\"markerWidth\", \"10\").attr(\"markerHeight\", \"7\").attr(\"refX\", \"10\").attr(\"refY\", \"3.5\").attr(\"orient\", \"auto\");\n marker.append(\"polygon\").attr(\"points\", \"0 0, 10 3.5, 0 7\").attr(\"fill\", arrowheadColor);\n setupGraphViewbox(void 0, diagram2, config?.padding ?? 30, config?.useMaxWidth);\n}, \"draw\");\nvar renderer_default = {\n draw\n};\n\n// src/diagrams/eventmodeling/styles.js\nvar getStyles = /* @__PURE__ */ __name((_options) => ``, \"getStyles\");\nvar styles_default = getStyles;\n\n// src/diagrams/eventmodeling/diagram.ts\nvar diagram = {\n parser,\n db,\n renderer: renderer_default,\n styles: styles_default\n};\nexport {\n diagram\n};\n"],"names":["PositionFrameKind","FramePositionedKind","PositionRelationKind","RelationPositionedKind","setOptions","__name","_rawOptString","log","getOptions","clear2","reset","clear","store","DEFAULT_EVENTMODELING_CONFIG","defaultConfig_default","getConfig3","cleanAndMerge","getConfig","getState","state","initial","ast","diagramProps2","getDiagramProps","frame","index","textProps","calculateTextProps","dispatch","sourceFrames","hasSourceFrame","currentFrame","sf","sourceFrame","sortedSwimlanesArray","setAst","diagramProps","extractNamespace","entityIdentifier","spl","extractName","findSwimlaneByNamespace","swimlanes","namespace","swimlane","findNextAvailableIndex","boundaryMin","boundaryMax","key","calculateSwimlaneProps","sw","calculateEntityVisualProps","themeVariables","dataEntities","config","name","sanitizeText","toHtml","wrapLabelConfig","content","wrapLabel","dataEntity","dataEntity2","hasRenderedData","textDimensionConfig","dimensions","calculateTextDimensions","calculatedWidthFix","props","decidePositionFrame","_command","command","visual","dimension","calculateX","previousSwimlane","lastBox","calculateMaxRight","swimlaneR","rs","s","a","b","evolveFramePositioned","_event","event","swimlaneProps","x","r","maxR","box","newState","i","prevSw","isFirstFrame","findBoxByFrame","boxes","findBoxByLineIndex","targetSwimlane","lineIndex","decidePositionRelation","isEmResetFrame","targetBox","sourceBox","evolveRelationPositioned","relation","deciders","evolvers","decide","fn","events","evolve","previousState","db","setAccTitle","getAccTitle","getAccDescription","setAccDescription","setDiagramTitle","getDiagramTitle","parser","input","parse","populateCommonDb","DEFAULT_CONFIG","getConfig2","DEFAULT_EVENTMODELING_CONFIG2","renderD3Box","diagram2","y","g","dirUpwards","sourceY","targetY","renderD3Relation","arrowheadId","sourceBoxY","targetBoxY","upwards","sourceX","targetX","relationStroke","renderD3Swimlane","oddBackground","backgroundStroke","draw","txt","id","ver","diagObj","db2","select","arrowheadColor","setupGraphViewbox","renderer_default","getStyles","_options","styles_default","diagram"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1,5 +1,5 @@
1
- import { _ as b, a8 as m, ab as B, v as C, u as w, q as S, p as D, V as T, W as P, o as z, s as E, a6 as F, a9 as A, a2 as W } from "./extractHeadings-BIH0osfd.js";
2
- import { p as _ } from "./chunk-4BX2VUAB-Bfs3RK7t.js";
1
+ import { _ as b, aq as m, at as B, a2 as C, a1 as w, X as S, W as D, ae as T, af as P, V as z, U as E, ao as F, ar as A, ak as W } from "./extractHeadings-CvNjLb_I.js";
2
+ import { p as _ } from "./chunk-4BX2VUAB-D9XJDecT.js";
3
3
  import { p as N } from "./wardley-L42UT6IY-D7b2ujEZ.js";
4
4
  var L = A.packet, u, v = (u = class {
5
5
  constructor() {
@@ -81,9 +81,9 @@ var L = A.packet, u, v = (u = class {
81
81
  const n = s.db, l = n.getConfig(), { rowHeight: a, paddingY: i, bitWidth: d, bitsPerRow: c } = l, p = n.getPacket(), o = n.getDiagramTitle(), h = a + i, g = h * (p.length + 1) - (o ? 0 : a), k = d * c + 2, f = B(t);
82
82
  f.attr("viewBox", `0 0 ${k} ${g}`), C(f, g, k, l.useMaxWidth);
83
83
  for (const [y, $] of p.entries())
84
- j(f, $, y, l);
84
+ U(f, $, y, l);
85
85
  f.append("text").text(o).attr("x", k / 2).attr("y", g - h / 2).attr("dominant-baseline", "middle").attr("text-anchor", "middle").attr("class", "packetTitle");
86
- }, "draw"), j = /* @__PURE__ */ b((e, t, r, { rowHeight: s, paddingX: n, paddingY: l, bitWidth: a, bitsPerRow: i, showBits: d }) => {
86
+ }, "draw"), U = /* @__PURE__ */ b((e, t, r, { rowHeight: s, paddingX: n, paddingY: l, bitWidth: a, bitsPerRow: i, showBits: d }) => {
87
87
  const c = e.append("g"), p = r * (s + l) + l;
88
88
  for (const o of t) {
89
89
  const h = o.start % i * a + 1, g = (o.end - o.start + 1) * a - n;
@@ -92,7 +92,7 @@ var L = A.packet, u, v = (u = class {
92
92
  const k = o.end === o.start, f = p - 2;
93
93
  c.append("text").attr("x", h + (k ? g / 2 : 0)).attr("y", f).attr("class", "packetByte start").attr("dominant-baseline", "auto").attr("text-anchor", k ? "middle" : "start").text(o.start), k || c.append("text").attr("x", h + g).attr("y", f).attr("class", "packetByte end").attr("dominant-baseline", "auto").attr("text-anchor", "end").text(o.end);
94
94
  }
95
- }, "drawWord"), q = { draw: O }, G = {
95
+ }, "drawWord"), X = { draw: O }, j = {
96
96
  byteFontSize: "10px",
97
97
  startByteColor: "black",
98
98
  endByteColor: "black",
@@ -103,8 +103,8 @@ var L = A.packet, u, v = (u = class {
103
103
  blockStrokeColor: "black",
104
104
  blockStrokeWidth: "1",
105
105
  blockFillColor: "#efefef"
106
- }, H = /* @__PURE__ */ b(({ packet: e } = {}) => {
107
- const t = m(G, e);
106
+ }, q = /* @__PURE__ */ b(({ packet: e } = {}) => {
107
+ const t = m(j, e);
108
108
  return `
109
109
  .packetByte {
110
110
  font-size: ${t.byteFontSize};
@@ -129,15 +129,15 @@ var L = A.packet, u, v = (u = class {
129
129
  fill: ${t.blockFillColor};
130
130
  }
131
131
  `;
132
- }, "styles"), V = {
132
+ }, "styles"), R = {
133
133
  parser: x,
134
134
  get db() {
135
135
  return new v();
136
136
  },
137
- renderer: q,
138
- styles: H
137
+ renderer: X,
138
+ styles: q
139
139
  };
140
140
  export {
141
- V as diagram
141
+ R as diagram
142
142
  };
143
- //# sourceMappingURL=diagram-LMA3HP47-E2tXDlPZ.js.map
143
+ //# sourceMappingURL=diagram-LMA3HP47-B04Q5TTr.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"diagram-LMA3HP47-E2tXDlPZ.js","sources":["../../../node_modules/.pnpm/mermaid@11.15.0/node_modules/mermaid/dist/chunks/mermaid.core/diagram-LMA3HP47.mjs"],"sourcesContent":["import {\n selectSvgElement\n} from \"./chunk-WU5MYG2G.mjs\";\nimport {\n populateCommonDb\n} from \"./chunk-4BX2VUAB.mjs\";\nimport {\n cleanAndMerge\n} from \"./chunk-5ZQYHXKU.mjs\";\nimport {\n clear,\n configureSvgSize,\n defaultConfig_default,\n getAccDescription,\n getAccTitle,\n getConfig,\n getDiagramTitle,\n setAccDescription,\n setAccTitle,\n setDiagramTitle\n} from \"./chunk-CSCIHK7Q.mjs\";\nimport {\n __name,\n log\n} from \"./chunk-AGHRB4JF.mjs\";\n\n// src/diagrams/packet/db.ts\nvar DEFAULT_PACKET_CONFIG = defaultConfig_default.packet;\nvar PacketDB = class {\n constructor() {\n this.packet = [];\n this.setAccTitle = setAccTitle;\n this.getAccTitle = getAccTitle;\n this.setDiagramTitle = setDiagramTitle;\n this.getDiagramTitle = getDiagramTitle;\n this.getAccDescription = getAccDescription;\n this.setAccDescription = setAccDescription;\n }\n static {\n __name(this, \"PacketDB\");\n }\n getConfig() {\n const config = cleanAndMerge({\n ...DEFAULT_PACKET_CONFIG,\n ...getConfig().packet\n });\n if (config.showBits) {\n config.paddingY += 10;\n }\n return config;\n }\n getPacket() {\n return this.packet;\n }\n pushWord(word) {\n if (word.length > 0) {\n this.packet.push(word);\n }\n }\n clear() {\n clear();\n this.packet = [];\n }\n};\n\n// src/diagrams/packet/parser.ts\nimport { parse } from \"@mermaid-js/parser\";\nvar maxPacketSize = 1e4;\nvar populate = /* @__PURE__ */ __name((ast, db) => {\n populateCommonDb(ast, db);\n let lastBit = -1;\n let word = [];\n let row = 1;\n const { bitsPerRow } = db.getConfig();\n for (let { start, end, bits, label } of ast.blocks) {\n if (start !== void 0 && end !== void 0 && end < start) {\n throw new Error(`Packet block ${start} - ${end} is invalid. End must be greater than start.`);\n }\n start ??= lastBit + 1;\n if (start !== lastBit + 1) {\n throw new Error(\n `Packet block ${start} - ${end ?? start} is not contiguous. It should start from ${lastBit + 1}.`\n );\n }\n if (bits === 0) {\n throw new Error(`Packet block ${start} is invalid. Cannot have a zero bit field.`);\n }\n end ??= start + (bits ?? 1) - 1;\n bits ??= end - start + 1;\n lastBit = end;\n log.debug(`Packet block ${start} - ${lastBit} with label ${label}`);\n while (word.length <= bitsPerRow + 1 && db.getPacket().length < maxPacketSize) {\n const [block, nextBlock] = getNextFittingBlock({ start, end, bits, label }, row, bitsPerRow);\n word.push(block);\n if (block.end + 1 === row * bitsPerRow) {\n db.pushWord(word);\n word = [];\n row++;\n }\n if (!nextBlock) {\n break;\n }\n ({ start, end, bits, label } = nextBlock);\n }\n }\n db.pushWord(word);\n}, \"populate\");\nvar getNextFittingBlock = /* @__PURE__ */ __name((block, row, bitsPerRow) => {\n if (block.start === void 0) {\n throw new Error(\"start should have been set during first phase\");\n }\n if (block.end === void 0) {\n throw new Error(\"end should have been set during first phase\");\n }\n if (block.start > block.end) {\n throw new Error(`Block start ${block.start} is greater than block end ${block.end}.`);\n }\n if (block.end + 1 <= row * bitsPerRow) {\n return [block, void 0];\n }\n const rowEnd = row * bitsPerRow - 1;\n const rowStart = row * bitsPerRow;\n return [\n {\n start: block.start,\n end: rowEnd,\n label: block.label,\n bits: rowEnd - block.start\n },\n {\n start: rowStart,\n end: block.end,\n label: block.label,\n bits: block.end - rowStart\n }\n ];\n}, \"getNextFittingBlock\");\nvar parser = {\n // @ts-expect-error - PacketDB is not assignable to DiagramDB\n parser: { yy: void 0 },\n parse: /* @__PURE__ */ __name(async (input) => {\n const ast = await parse(\"packet\", input);\n const db = parser.parser?.yy;\n if (!(db instanceof PacketDB)) {\n throw new Error(\n \"parser.parser?.yy was not a PacketDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.\"\n );\n }\n log.debug(ast);\n populate(ast, db);\n }, \"parse\")\n};\n\n// src/diagrams/packet/renderer.ts\nvar draw = /* @__PURE__ */ __name((_text, id, _version, diagram2) => {\n const db = diagram2.db;\n const config = db.getConfig();\n const { rowHeight, paddingY, bitWidth, bitsPerRow } = config;\n const words = db.getPacket();\n const title = db.getDiagramTitle();\n const totalRowHeight = rowHeight + paddingY;\n const svgHeight = totalRowHeight * (words.length + 1) - (title ? 0 : rowHeight);\n const svgWidth = bitWidth * bitsPerRow + 2;\n const svg = selectSvgElement(id);\n svg.attr(\"viewBox\", `0 0 ${svgWidth} ${svgHeight}`);\n configureSvgSize(svg, svgHeight, svgWidth, config.useMaxWidth);\n for (const [word, packet] of words.entries()) {\n drawWord(svg, packet, word, config);\n }\n svg.append(\"text\").text(title).attr(\"x\", svgWidth / 2).attr(\"y\", svgHeight - totalRowHeight / 2).attr(\"dominant-baseline\", \"middle\").attr(\"text-anchor\", \"middle\").attr(\"class\", \"packetTitle\");\n}, \"draw\");\nvar drawWord = /* @__PURE__ */ __name((svg, word, rowNumber, { rowHeight, paddingX, paddingY, bitWidth, bitsPerRow, showBits }) => {\n const group = svg.append(\"g\");\n const wordY = rowNumber * (rowHeight + paddingY) + paddingY;\n for (const block of word) {\n const blockX = block.start % bitsPerRow * bitWidth + 1;\n const width = (block.end - block.start + 1) * bitWidth - paddingX;\n group.append(\"rect\").attr(\"x\", blockX).attr(\"y\", wordY).attr(\"width\", width).attr(\"height\", rowHeight).attr(\"class\", \"packetBlock\");\n group.append(\"text\").attr(\"x\", blockX + width / 2).attr(\"y\", wordY + rowHeight / 2).attr(\"class\", \"packetLabel\").attr(\"dominant-baseline\", \"middle\").attr(\"text-anchor\", \"middle\").text(block.label);\n if (!showBits) {\n continue;\n }\n const isSingleBlock = block.end === block.start;\n const bitNumberY = wordY - 2;\n group.append(\"text\").attr(\"x\", blockX + (isSingleBlock ? width / 2 : 0)).attr(\"y\", bitNumberY).attr(\"class\", \"packetByte start\").attr(\"dominant-baseline\", \"auto\").attr(\"text-anchor\", isSingleBlock ? \"middle\" : \"start\").text(block.start);\n if (!isSingleBlock) {\n group.append(\"text\").attr(\"x\", blockX + width).attr(\"y\", bitNumberY).attr(\"class\", \"packetByte end\").attr(\"dominant-baseline\", \"auto\").attr(\"text-anchor\", \"end\").text(block.end);\n }\n }\n}, \"drawWord\");\nvar renderer = { draw };\n\n// src/diagrams/packet/styles.ts\nvar defaultPacketStyleOptions = {\n byteFontSize: \"10px\",\n startByteColor: \"black\",\n endByteColor: \"black\",\n labelColor: \"black\",\n labelFontSize: \"12px\",\n titleColor: \"black\",\n titleFontSize: \"14px\",\n blockStrokeColor: \"black\",\n blockStrokeWidth: \"1\",\n blockFillColor: \"#efefef\"\n};\nvar styles = /* @__PURE__ */ __name(({ packet } = {}) => {\n const options = cleanAndMerge(defaultPacketStyleOptions, packet);\n return `\n\t.packetByte {\n\t\tfont-size: ${options.byteFontSize};\n\t}\n\t.packetByte.start {\n\t\tfill: ${options.startByteColor};\n\t}\n\t.packetByte.end {\n\t\tfill: ${options.endByteColor};\n\t}\n\t.packetLabel {\n\t\tfill: ${options.labelColor};\n\t\tfont-size: ${options.labelFontSize};\n\t}\n\t.packetTitle {\n\t\tfill: ${options.titleColor};\n\t\tfont-size: ${options.titleFontSize};\n\t}\n\t.packetBlock {\n\t\tstroke: ${options.blockStrokeColor};\n\t\tstroke-width: ${options.blockStrokeWidth};\n\t\tfill: ${options.blockFillColor};\n\t}\n\t`;\n}, \"styles\");\n\n// src/diagrams/packet/diagram.ts\nvar diagram = {\n parser,\n get db() {\n return new PacketDB();\n },\n renderer,\n styles\n};\nexport {\n diagram\n};\n"],"names":["DEFAULT_PACKET_CONFIG","defaultConfig_default","PacketDB","_a","setAccTitle","getAccTitle","setDiagramTitle","getDiagramTitle","getAccDescription","setAccDescription","config","cleanAndMerge","getConfig","word","clear","__name","maxPacketSize","populate","ast","db","populateCommonDb","lastBit","row","bitsPerRow","start","end","bits","label","log","block","nextBlock","getNextFittingBlock","rowEnd","rowStart","parser","input","parse","draw","_text","id","_version","diagram2","rowHeight","paddingY","bitWidth","words","title","totalRowHeight","svgHeight","svgWidth","svg","selectSvgElement","configureSvgSize","packet","drawWord","rowNumber","paddingX","showBits","group","wordY","blockX","width","isSingleBlock","bitNumberY","renderer","defaultPacketStyleOptions","styles","options","diagram"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"diagram-LMA3HP47-B04Q5TTr.js","sources":["../../../node_modules/.pnpm/mermaid@11.15.0/node_modules/mermaid/dist/chunks/mermaid.core/diagram-LMA3HP47.mjs"],"sourcesContent":["import {\n selectSvgElement\n} from \"./chunk-WU5MYG2G.mjs\";\nimport {\n populateCommonDb\n} from \"./chunk-4BX2VUAB.mjs\";\nimport {\n cleanAndMerge\n} from \"./chunk-5ZQYHXKU.mjs\";\nimport {\n clear,\n configureSvgSize,\n defaultConfig_default,\n getAccDescription,\n getAccTitle,\n getConfig,\n getDiagramTitle,\n setAccDescription,\n setAccTitle,\n setDiagramTitle\n} from \"./chunk-CSCIHK7Q.mjs\";\nimport {\n __name,\n log\n} from \"./chunk-AGHRB4JF.mjs\";\n\n// src/diagrams/packet/db.ts\nvar DEFAULT_PACKET_CONFIG = defaultConfig_default.packet;\nvar PacketDB = class {\n constructor() {\n this.packet = [];\n this.setAccTitle = setAccTitle;\n this.getAccTitle = getAccTitle;\n this.setDiagramTitle = setDiagramTitle;\n this.getDiagramTitle = getDiagramTitle;\n this.getAccDescription = getAccDescription;\n this.setAccDescription = setAccDescription;\n }\n static {\n __name(this, \"PacketDB\");\n }\n getConfig() {\n const config = cleanAndMerge({\n ...DEFAULT_PACKET_CONFIG,\n ...getConfig().packet\n });\n if (config.showBits) {\n config.paddingY += 10;\n }\n return config;\n }\n getPacket() {\n return this.packet;\n }\n pushWord(word) {\n if (word.length > 0) {\n this.packet.push(word);\n }\n }\n clear() {\n clear();\n this.packet = [];\n }\n};\n\n// src/diagrams/packet/parser.ts\nimport { parse } from \"@mermaid-js/parser\";\nvar maxPacketSize = 1e4;\nvar populate = /* @__PURE__ */ __name((ast, db) => {\n populateCommonDb(ast, db);\n let lastBit = -1;\n let word = [];\n let row = 1;\n const { bitsPerRow } = db.getConfig();\n for (let { start, end, bits, label } of ast.blocks) {\n if (start !== void 0 && end !== void 0 && end < start) {\n throw new Error(`Packet block ${start} - ${end} is invalid. End must be greater than start.`);\n }\n start ??= lastBit + 1;\n if (start !== lastBit + 1) {\n throw new Error(\n `Packet block ${start} - ${end ?? start} is not contiguous. It should start from ${lastBit + 1}.`\n );\n }\n if (bits === 0) {\n throw new Error(`Packet block ${start} is invalid. Cannot have a zero bit field.`);\n }\n end ??= start + (bits ?? 1) - 1;\n bits ??= end - start + 1;\n lastBit = end;\n log.debug(`Packet block ${start} - ${lastBit} with label ${label}`);\n while (word.length <= bitsPerRow + 1 && db.getPacket().length < maxPacketSize) {\n const [block, nextBlock] = getNextFittingBlock({ start, end, bits, label }, row, bitsPerRow);\n word.push(block);\n if (block.end + 1 === row * bitsPerRow) {\n db.pushWord(word);\n word = [];\n row++;\n }\n if (!nextBlock) {\n break;\n }\n ({ start, end, bits, label } = nextBlock);\n }\n }\n db.pushWord(word);\n}, \"populate\");\nvar getNextFittingBlock = /* @__PURE__ */ __name((block, row, bitsPerRow) => {\n if (block.start === void 0) {\n throw new Error(\"start should have been set during first phase\");\n }\n if (block.end === void 0) {\n throw new Error(\"end should have been set during first phase\");\n }\n if (block.start > block.end) {\n throw new Error(`Block start ${block.start} is greater than block end ${block.end}.`);\n }\n if (block.end + 1 <= row * bitsPerRow) {\n return [block, void 0];\n }\n const rowEnd = row * bitsPerRow - 1;\n const rowStart = row * bitsPerRow;\n return [\n {\n start: block.start,\n end: rowEnd,\n label: block.label,\n bits: rowEnd - block.start\n },\n {\n start: rowStart,\n end: block.end,\n label: block.label,\n bits: block.end - rowStart\n }\n ];\n}, \"getNextFittingBlock\");\nvar parser = {\n // @ts-expect-error - PacketDB is not assignable to DiagramDB\n parser: { yy: void 0 },\n parse: /* @__PURE__ */ __name(async (input) => {\n const ast = await parse(\"packet\", input);\n const db = parser.parser?.yy;\n if (!(db instanceof PacketDB)) {\n throw new Error(\n \"parser.parser?.yy was not a PacketDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.\"\n );\n }\n log.debug(ast);\n populate(ast, db);\n }, \"parse\")\n};\n\n// src/diagrams/packet/renderer.ts\nvar draw = /* @__PURE__ */ __name((_text, id, _version, diagram2) => {\n const db = diagram2.db;\n const config = db.getConfig();\n const { rowHeight, paddingY, bitWidth, bitsPerRow } = config;\n const words = db.getPacket();\n const title = db.getDiagramTitle();\n const totalRowHeight = rowHeight + paddingY;\n const svgHeight = totalRowHeight * (words.length + 1) - (title ? 0 : rowHeight);\n const svgWidth = bitWidth * bitsPerRow + 2;\n const svg = selectSvgElement(id);\n svg.attr(\"viewBox\", `0 0 ${svgWidth} ${svgHeight}`);\n configureSvgSize(svg, svgHeight, svgWidth, config.useMaxWidth);\n for (const [word, packet] of words.entries()) {\n drawWord(svg, packet, word, config);\n }\n svg.append(\"text\").text(title).attr(\"x\", svgWidth / 2).attr(\"y\", svgHeight - totalRowHeight / 2).attr(\"dominant-baseline\", \"middle\").attr(\"text-anchor\", \"middle\").attr(\"class\", \"packetTitle\");\n}, \"draw\");\nvar drawWord = /* @__PURE__ */ __name((svg, word, rowNumber, { rowHeight, paddingX, paddingY, bitWidth, bitsPerRow, showBits }) => {\n const group = svg.append(\"g\");\n const wordY = rowNumber * (rowHeight + paddingY) + paddingY;\n for (const block of word) {\n const blockX = block.start % bitsPerRow * bitWidth + 1;\n const width = (block.end - block.start + 1) * bitWidth - paddingX;\n group.append(\"rect\").attr(\"x\", blockX).attr(\"y\", wordY).attr(\"width\", width).attr(\"height\", rowHeight).attr(\"class\", \"packetBlock\");\n group.append(\"text\").attr(\"x\", blockX + width / 2).attr(\"y\", wordY + rowHeight / 2).attr(\"class\", \"packetLabel\").attr(\"dominant-baseline\", \"middle\").attr(\"text-anchor\", \"middle\").text(block.label);\n if (!showBits) {\n continue;\n }\n const isSingleBlock = block.end === block.start;\n const bitNumberY = wordY - 2;\n group.append(\"text\").attr(\"x\", blockX + (isSingleBlock ? width / 2 : 0)).attr(\"y\", bitNumberY).attr(\"class\", \"packetByte start\").attr(\"dominant-baseline\", \"auto\").attr(\"text-anchor\", isSingleBlock ? \"middle\" : \"start\").text(block.start);\n if (!isSingleBlock) {\n group.append(\"text\").attr(\"x\", blockX + width).attr(\"y\", bitNumberY).attr(\"class\", \"packetByte end\").attr(\"dominant-baseline\", \"auto\").attr(\"text-anchor\", \"end\").text(block.end);\n }\n }\n}, \"drawWord\");\nvar renderer = { draw };\n\n// src/diagrams/packet/styles.ts\nvar defaultPacketStyleOptions = {\n byteFontSize: \"10px\",\n startByteColor: \"black\",\n endByteColor: \"black\",\n labelColor: \"black\",\n labelFontSize: \"12px\",\n titleColor: \"black\",\n titleFontSize: \"14px\",\n blockStrokeColor: \"black\",\n blockStrokeWidth: \"1\",\n blockFillColor: \"#efefef\"\n};\nvar styles = /* @__PURE__ */ __name(({ packet } = {}) => {\n const options = cleanAndMerge(defaultPacketStyleOptions, packet);\n return `\n\t.packetByte {\n\t\tfont-size: ${options.byteFontSize};\n\t}\n\t.packetByte.start {\n\t\tfill: ${options.startByteColor};\n\t}\n\t.packetByte.end {\n\t\tfill: ${options.endByteColor};\n\t}\n\t.packetLabel {\n\t\tfill: ${options.labelColor};\n\t\tfont-size: ${options.labelFontSize};\n\t}\n\t.packetTitle {\n\t\tfill: ${options.titleColor};\n\t\tfont-size: ${options.titleFontSize};\n\t}\n\t.packetBlock {\n\t\tstroke: ${options.blockStrokeColor};\n\t\tstroke-width: ${options.blockStrokeWidth};\n\t\tfill: ${options.blockFillColor};\n\t}\n\t`;\n}, \"styles\");\n\n// src/diagrams/packet/diagram.ts\nvar diagram = {\n parser,\n get db() {\n return new PacketDB();\n },\n renderer,\n styles\n};\nexport {\n diagram\n};\n"],"names":["DEFAULT_PACKET_CONFIG","defaultConfig_default","PacketDB","_a","setAccTitle","getAccTitle","setDiagramTitle","getDiagramTitle","getAccDescription","setAccDescription","config","cleanAndMerge","getConfig","word","clear","__name","maxPacketSize","populate","ast","db","populateCommonDb","lastBit","row","bitsPerRow","start","end","bits","label","log","block","nextBlock","getNextFittingBlock","rowEnd","rowStart","parser","input","parse","draw","_text","id","_version","diagram2","rowHeight","paddingY","bitWidth","words","title","totalRowHeight","svgHeight","svgWidth","svg","selectSvgElement","configureSvgSize","packet","drawWord","rowNumber","paddingX","showBits","group","wordY","blockX","width","isSingleBlock","bitNumberY","renderer","defaultPacketStyleOptions","styles","options","diagram"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("./extractHeadings-C519p0PM.cjs"),x=require("./chunk-4BX2VUAB-CvWrfkZa.cjs"),B=require("./wardley-L42UT6IY-Cqw_I-WX.cjs");var $=a.defaultConfig_default.packet,b,m=(b=class{constructor(){this.packet=[],this.setAccTitle=a.setAccTitle,this.getAccTitle=a.getAccTitle,this.setDiagramTitle=a.setDiagramTitle,this.getDiagramTitle=a.getDiagramTitle,this.getAccDescription=a.getAccDescription,this.setAccDescription=a.setAccDescription}getConfig(){const t=a.cleanAndMerge({...$,...a.getConfig().packet});return t.showBits&&(t.paddingY+=10),t}getPacket(){return this.packet}pushWord(t){t.length>0&&this.packet.push(t)}clear(){a.clear(),this.packet=[]}},a.__name(b,"PacketDB"),b),C=1e4,S=a.__name((e,t)=>{x.populateCommonDb(e,t);let o=-1,i=[],l=1;const{bitsPerRow:c}=t.getConfig();for(let{start:r,end:n,bits:p,label:d}of e.blocks){if(r!==void 0&&n!==void 0&&n<r)throw new Error(`Packet block ${r} - ${n} is invalid. End must be greater than start.`);if(r??=o+1,r!==o+1)throw new Error(`Packet block ${r} - ${n??r} is not contiguous. It should start from ${o+1}.`);if(p===0)throw new Error(`Packet block ${r} is invalid. Cannot have a zero bit field.`);for(n??=r+(p??1)-1,p??=n-r+1,o=n,a.log.debug(`Packet block ${r} - ${o} with label ${d}`);i.length<=c+1&&t.getPacket().length<C;){const[g,s]=_({start:r,end:n,bits:p,label:d},l,c);if(i.push(g),g.end+1===l*c&&(t.pushWord(i),i=[],l++),!s)break;({start:r,end:n,bits:p,label:d}=s)}}t.pushWord(i)},"populate"),_=a.__name((e,t,o)=>{if(e.start===void 0)throw new Error("start should have been set during first phase");if(e.end===void 0)throw new Error("end should have been set during first phase");if(e.start>e.end)throw new Error(`Block start ${e.start} is greater than block end ${e.end}.`);if(e.end+1<=t*o)return[e,void 0];const i=t*o-1,l=t*o;return[{start:e.start,end:i,label:e.label,bits:i-e.start},{start:l,end:e.end,label:e.label,bits:e.end-l}]},"getNextFittingBlock"),w={parser:{yy:void 0},parse:a.__name(async e=>{const t=await B.parse("packet",e),o=w.parser?.yy;if(!(o instanceof m))throw new Error("parser.parser?.yy was not a PacketDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");a.log.debug(t),S(t,o)},"parse")},T=a.__name((e,t,o,i)=>{const l=i.db,c=l.getConfig(),{rowHeight:r,paddingY:n,bitWidth:p,bitsPerRow:d}=c,g=l.getPacket(),s=l.getDiagramTitle(),k=r+n,h=k*(g.length+1)-(s?0:r),f=p*d+2,u=a.selectSvgElement(t);u.attr("viewBox",`0 0 ${f} ${h}`),a.configureSvgSize(u,h,f,c.useMaxWidth);for(const[v,y]of g.entries())D(u,y,v,c);u.append("text").text(s).attr("x",f/2).attr("y",h-k/2).attr("dominant-baseline","middle").attr("text-anchor","middle").attr("class","packetTitle")},"draw"),D=a.__name((e,t,o,{rowHeight:i,paddingX:l,paddingY:c,bitWidth:r,bitsPerRow:n,showBits:p})=>{const d=e.append("g"),g=o*(i+c)+c;for(const s of t){const k=s.start%n*r+1,h=(s.end-s.start+1)*r-l;if(d.append("rect").attr("x",k).attr("y",g).attr("width",h).attr("height",i).attr("class","packetBlock"),d.append("text").attr("x",k+h/2).attr("y",g+i/2).attr("class","packetLabel").attr("dominant-baseline","middle").attr("text-anchor","middle").text(s.label),!p)continue;const f=s.end===s.start,u=g-2;d.append("text").attr("x",k+(f?h/2:0)).attr("y",u).attr("class","packetByte start").attr("dominant-baseline","auto").attr("text-anchor",f?"middle":"start").text(s.start),f||d.append("text").attr("x",k+h).attr("y",u).attr("class","packetByte end").attr("dominant-baseline","auto").attr("text-anchor","end").text(s.end)}},"drawWord"),P={draw:T},A={byteFontSize:"10px",startByteColor:"black",endByteColor:"black",labelColor:"black",labelFontSize:"12px",titleColor:"black",titleFontSize:"14px",blockStrokeColor:"black",blockStrokeWidth:"1",blockFillColor:"#efefef"},z=a.__name(({packet:e}={})=>{const t=a.cleanAndMerge(A,e);return`
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("./extractHeadings-BCDkDiAF.cjs"),x=require("./chunk-4BX2VUAB-dlb1zwjz.cjs"),B=require("./wardley-L42UT6IY-Cqw_I-WX.cjs");var $=a.defaultConfig_default.packet,b,m=(b=class{constructor(){this.packet=[],this.setAccTitle=a.setAccTitle,this.getAccTitle=a.getAccTitle,this.setDiagramTitle=a.setDiagramTitle,this.getDiagramTitle=a.getDiagramTitle,this.getAccDescription=a.getAccDescription,this.setAccDescription=a.setAccDescription}getConfig(){const t=a.cleanAndMerge({...$,...a.getConfig().packet});return t.showBits&&(t.paddingY+=10),t}getPacket(){return this.packet}pushWord(t){t.length>0&&this.packet.push(t)}clear(){a.clear(),this.packet=[]}},a.__name(b,"PacketDB"),b),C=1e4,S=a.__name((e,t)=>{x.populateCommonDb(e,t);let o=-1,i=[],l=1;const{bitsPerRow:c}=t.getConfig();for(let{start:r,end:n,bits:p,label:d}of e.blocks){if(r!==void 0&&n!==void 0&&n<r)throw new Error(`Packet block ${r} - ${n} is invalid. End must be greater than start.`);if(r??=o+1,r!==o+1)throw new Error(`Packet block ${r} - ${n??r} is not contiguous. It should start from ${o+1}.`);if(p===0)throw new Error(`Packet block ${r} is invalid. Cannot have a zero bit field.`);for(n??=r+(p??1)-1,p??=n-r+1,o=n,a.log.debug(`Packet block ${r} - ${o} with label ${d}`);i.length<=c+1&&t.getPacket().length<C;){const[g,s]=_({start:r,end:n,bits:p,label:d},l,c);if(i.push(g),g.end+1===l*c&&(t.pushWord(i),i=[],l++),!s)break;({start:r,end:n,bits:p,label:d}=s)}}t.pushWord(i)},"populate"),_=a.__name((e,t,o)=>{if(e.start===void 0)throw new Error("start should have been set during first phase");if(e.end===void 0)throw new Error("end should have been set during first phase");if(e.start>e.end)throw new Error(`Block start ${e.start} is greater than block end ${e.end}.`);if(e.end+1<=t*o)return[e,void 0];const i=t*o-1,l=t*o;return[{start:e.start,end:i,label:e.label,bits:i-e.start},{start:l,end:e.end,label:e.label,bits:e.end-l}]},"getNextFittingBlock"),w={parser:{yy:void 0},parse:a.__name(async e=>{const t=await B.parse("packet",e),o=w.parser?.yy;if(!(o instanceof m))throw new Error("parser.parser?.yy was not a PacketDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");a.log.debug(t),S(t,o)},"parse")},T=a.__name((e,t,o,i)=>{const l=i.db,c=l.getConfig(),{rowHeight:r,paddingY:n,bitWidth:p,bitsPerRow:d}=c,g=l.getPacket(),s=l.getDiagramTitle(),k=r+n,h=k*(g.length+1)-(s?0:r),f=p*d+2,u=a.selectSvgElement(t);u.attr("viewBox",`0 0 ${f} ${h}`),a.configureSvgSize(u,h,f,c.useMaxWidth);for(const[v,y]of g.entries())D(u,y,v,c);u.append("text").text(s).attr("x",f/2).attr("y",h-k/2).attr("dominant-baseline","middle").attr("text-anchor","middle").attr("class","packetTitle")},"draw"),D=a.__name((e,t,o,{rowHeight:i,paddingX:l,paddingY:c,bitWidth:r,bitsPerRow:n,showBits:p})=>{const d=e.append("g"),g=o*(i+c)+c;for(const s of t){const k=s.start%n*r+1,h=(s.end-s.start+1)*r-l;if(d.append("rect").attr("x",k).attr("y",g).attr("width",h).attr("height",i).attr("class","packetBlock"),d.append("text").attr("x",k+h/2).attr("y",g+i/2).attr("class","packetLabel").attr("dominant-baseline","middle").attr("text-anchor","middle").text(s.label),!p)continue;const f=s.end===s.start,u=g-2;d.append("text").attr("x",k+(f?h/2:0)).attr("y",u).attr("class","packetByte start").attr("dominant-baseline","auto").attr("text-anchor",f?"middle":"start").text(s.start),f||d.append("text").attr("x",k+h).attr("y",u).attr("class","packetByte end").attr("dominant-baseline","auto").attr("text-anchor","end").text(s.end)}},"drawWord"),P={draw:T},A={byteFontSize:"10px",startByteColor:"black",endByteColor:"black",labelColor:"black",labelFontSize:"12px",titleColor:"black",titleFontSize:"14px",blockStrokeColor:"black",blockStrokeWidth:"1",blockFillColor:"#efefef"},z=a.__name(({packet:e}={})=>{const t=a.cleanAndMerge(A,e);return`
2
2
  .packetByte {
3
3
  font-size: ${t.byteFontSize};
4
4
  }
@@ -22,4 +22,4 @@
22
22
  fill: ${t.blockFillColor};
23
23
  }
24
24
  `},"styles"),E={parser:w,get db(){return new m},renderer:P,styles:z};exports.diagram=E;
25
- //# sourceMappingURL=diagram-LMA3HP47-DLDXNgwR.cjs.map
25
+ //# sourceMappingURL=diagram-LMA3HP47-DMo-Du0O.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"diagram-LMA3HP47-DLDXNgwR.cjs","sources":["../../../node_modules/.pnpm/mermaid@11.15.0/node_modules/mermaid/dist/chunks/mermaid.core/diagram-LMA3HP47.mjs"],"sourcesContent":["import {\n selectSvgElement\n} from \"./chunk-WU5MYG2G.mjs\";\nimport {\n populateCommonDb\n} from \"./chunk-4BX2VUAB.mjs\";\nimport {\n cleanAndMerge\n} from \"./chunk-5ZQYHXKU.mjs\";\nimport {\n clear,\n configureSvgSize,\n defaultConfig_default,\n getAccDescription,\n getAccTitle,\n getConfig,\n getDiagramTitle,\n setAccDescription,\n setAccTitle,\n setDiagramTitle\n} from \"./chunk-CSCIHK7Q.mjs\";\nimport {\n __name,\n log\n} from \"./chunk-AGHRB4JF.mjs\";\n\n// src/diagrams/packet/db.ts\nvar DEFAULT_PACKET_CONFIG = defaultConfig_default.packet;\nvar PacketDB = class {\n constructor() {\n this.packet = [];\n this.setAccTitle = setAccTitle;\n this.getAccTitle = getAccTitle;\n this.setDiagramTitle = setDiagramTitle;\n this.getDiagramTitle = getDiagramTitle;\n this.getAccDescription = getAccDescription;\n this.setAccDescription = setAccDescription;\n }\n static {\n __name(this, \"PacketDB\");\n }\n getConfig() {\n const config = cleanAndMerge({\n ...DEFAULT_PACKET_CONFIG,\n ...getConfig().packet\n });\n if (config.showBits) {\n config.paddingY += 10;\n }\n return config;\n }\n getPacket() {\n return this.packet;\n }\n pushWord(word) {\n if (word.length > 0) {\n this.packet.push(word);\n }\n }\n clear() {\n clear();\n this.packet = [];\n }\n};\n\n// src/diagrams/packet/parser.ts\nimport { parse } from \"@mermaid-js/parser\";\nvar maxPacketSize = 1e4;\nvar populate = /* @__PURE__ */ __name((ast, db) => {\n populateCommonDb(ast, db);\n let lastBit = -1;\n let word = [];\n let row = 1;\n const { bitsPerRow } = db.getConfig();\n for (let { start, end, bits, label } of ast.blocks) {\n if (start !== void 0 && end !== void 0 && end < start) {\n throw new Error(`Packet block ${start} - ${end} is invalid. End must be greater than start.`);\n }\n start ??= lastBit + 1;\n if (start !== lastBit + 1) {\n throw new Error(\n `Packet block ${start} - ${end ?? start} is not contiguous. It should start from ${lastBit + 1}.`\n );\n }\n if (bits === 0) {\n throw new Error(`Packet block ${start} is invalid. Cannot have a zero bit field.`);\n }\n end ??= start + (bits ?? 1) - 1;\n bits ??= end - start + 1;\n lastBit = end;\n log.debug(`Packet block ${start} - ${lastBit} with label ${label}`);\n while (word.length <= bitsPerRow + 1 && db.getPacket().length < maxPacketSize) {\n const [block, nextBlock] = getNextFittingBlock({ start, end, bits, label }, row, bitsPerRow);\n word.push(block);\n if (block.end + 1 === row * bitsPerRow) {\n db.pushWord(word);\n word = [];\n row++;\n }\n if (!nextBlock) {\n break;\n }\n ({ start, end, bits, label } = nextBlock);\n }\n }\n db.pushWord(word);\n}, \"populate\");\nvar getNextFittingBlock = /* @__PURE__ */ __name((block, row, bitsPerRow) => {\n if (block.start === void 0) {\n throw new Error(\"start should have been set during first phase\");\n }\n if (block.end === void 0) {\n throw new Error(\"end should have been set during first phase\");\n }\n if (block.start > block.end) {\n throw new Error(`Block start ${block.start} is greater than block end ${block.end}.`);\n }\n if (block.end + 1 <= row * bitsPerRow) {\n return [block, void 0];\n }\n const rowEnd = row * bitsPerRow - 1;\n const rowStart = row * bitsPerRow;\n return [\n {\n start: block.start,\n end: rowEnd,\n label: block.label,\n bits: rowEnd - block.start\n },\n {\n start: rowStart,\n end: block.end,\n label: block.label,\n bits: block.end - rowStart\n }\n ];\n}, \"getNextFittingBlock\");\nvar parser = {\n // @ts-expect-error - PacketDB is not assignable to DiagramDB\n parser: { yy: void 0 },\n parse: /* @__PURE__ */ __name(async (input) => {\n const ast = await parse(\"packet\", input);\n const db = parser.parser?.yy;\n if (!(db instanceof PacketDB)) {\n throw new Error(\n \"parser.parser?.yy was not a PacketDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.\"\n );\n }\n log.debug(ast);\n populate(ast, db);\n }, \"parse\")\n};\n\n// src/diagrams/packet/renderer.ts\nvar draw = /* @__PURE__ */ __name((_text, id, _version, diagram2) => {\n const db = diagram2.db;\n const config = db.getConfig();\n const { rowHeight, paddingY, bitWidth, bitsPerRow } = config;\n const words = db.getPacket();\n const title = db.getDiagramTitle();\n const totalRowHeight = rowHeight + paddingY;\n const svgHeight = totalRowHeight * (words.length + 1) - (title ? 0 : rowHeight);\n const svgWidth = bitWidth * bitsPerRow + 2;\n const svg = selectSvgElement(id);\n svg.attr(\"viewBox\", `0 0 ${svgWidth} ${svgHeight}`);\n configureSvgSize(svg, svgHeight, svgWidth, config.useMaxWidth);\n for (const [word, packet] of words.entries()) {\n drawWord(svg, packet, word, config);\n }\n svg.append(\"text\").text(title).attr(\"x\", svgWidth / 2).attr(\"y\", svgHeight - totalRowHeight / 2).attr(\"dominant-baseline\", \"middle\").attr(\"text-anchor\", \"middle\").attr(\"class\", \"packetTitle\");\n}, \"draw\");\nvar drawWord = /* @__PURE__ */ __name((svg, word, rowNumber, { rowHeight, paddingX, paddingY, bitWidth, bitsPerRow, showBits }) => {\n const group = svg.append(\"g\");\n const wordY = rowNumber * (rowHeight + paddingY) + paddingY;\n for (const block of word) {\n const blockX = block.start % bitsPerRow * bitWidth + 1;\n const width = (block.end - block.start + 1) * bitWidth - paddingX;\n group.append(\"rect\").attr(\"x\", blockX).attr(\"y\", wordY).attr(\"width\", width).attr(\"height\", rowHeight).attr(\"class\", \"packetBlock\");\n group.append(\"text\").attr(\"x\", blockX + width / 2).attr(\"y\", wordY + rowHeight / 2).attr(\"class\", \"packetLabel\").attr(\"dominant-baseline\", \"middle\").attr(\"text-anchor\", \"middle\").text(block.label);\n if (!showBits) {\n continue;\n }\n const isSingleBlock = block.end === block.start;\n const bitNumberY = wordY - 2;\n group.append(\"text\").attr(\"x\", blockX + (isSingleBlock ? width / 2 : 0)).attr(\"y\", bitNumberY).attr(\"class\", \"packetByte start\").attr(\"dominant-baseline\", \"auto\").attr(\"text-anchor\", isSingleBlock ? \"middle\" : \"start\").text(block.start);\n if (!isSingleBlock) {\n group.append(\"text\").attr(\"x\", blockX + width).attr(\"y\", bitNumberY).attr(\"class\", \"packetByte end\").attr(\"dominant-baseline\", \"auto\").attr(\"text-anchor\", \"end\").text(block.end);\n }\n }\n}, \"drawWord\");\nvar renderer = { draw };\n\n// src/diagrams/packet/styles.ts\nvar defaultPacketStyleOptions = {\n byteFontSize: \"10px\",\n startByteColor: \"black\",\n endByteColor: \"black\",\n labelColor: \"black\",\n labelFontSize: \"12px\",\n titleColor: \"black\",\n titleFontSize: \"14px\",\n blockStrokeColor: \"black\",\n blockStrokeWidth: \"1\",\n blockFillColor: \"#efefef\"\n};\nvar styles = /* @__PURE__ */ __name(({ packet } = {}) => {\n const options = cleanAndMerge(defaultPacketStyleOptions, packet);\n return `\n\t.packetByte {\n\t\tfont-size: ${options.byteFontSize};\n\t}\n\t.packetByte.start {\n\t\tfill: ${options.startByteColor};\n\t}\n\t.packetByte.end {\n\t\tfill: ${options.endByteColor};\n\t}\n\t.packetLabel {\n\t\tfill: ${options.labelColor};\n\t\tfont-size: ${options.labelFontSize};\n\t}\n\t.packetTitle {\n\t\tfill: ${options.titleColor};\n\t\tfont-size: ${options.titleFontSize};\n\t}\n\t.packetBlock {\n\t\tstroke: ${options.blockStrokeColor};\n\t\tstroke-width: ${options.blockStrokeWidth};\n\t\tfill: ${options.blockFillColor};\n\t}\n\t`;\n}, \"styles\");\n\n// src/diagrams/packet/diagram.ts\nvar diagram = {\n parser,\n get db() {\n return new PacketDB();\n },\n renderer,\n styles\n};\nexport {\n diagram\n};\n"],"names":["DEFAULT_PACKET_CONFIG","defaultConfig_default","PacketDB","_a","setAccTitle","getAccTitle","setDiagramTitle","getDiagramTitle","getAccDescription","setAccDescription","config","cleanAndMerge","getConfig","word","clear","__name","maxPacketSize","populate","ast","db","populateCommonDb","lastBit","row","bitsPerRow","start","end","bits","label","log","block","nextBlock","getNextFittingBlock","rowEnd","rowStart","parser","input","parse","draw","_text","id","_version","diagram2","rowHeight","paddingY","bitWidth","words","title","totalRowHeight","svgHeight","svgWidth","svg","selectSvgElement","configureSvgSize","packet","drawWord","rowNumber","paddingX","showBits","group","wordY","blockX","width","isSingleBlock","bitNumberY","renderer","defaultPacketStyleOptions","styles","options","diagram"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"diagram-LMA3HP47-DMo-Du0O.cjs","sources":["../../../node_modules/.pnpm/mermaid@11.15.0/node_modules/mermaid/dist/chunks/mermaid.core/diagram-LMA3HP47.mjs"],"sourcesContent":["import {\n selectSvgElement\n} from \"./chunk-WU5MYG2G.mjs\";\nimport {\n populateCommonDb\n} from \"./chunk-4BX2VUAB.mjs\";\nimport {\n cleanAndMerge\n} from \"./chunk-5ZQYHXKU.mjs\";\nimport {\n clear,\n configureSvgSize,\n defaultConfig_default,\n getAccDescription,\n getAccTitle,\n getConfig,\n getDiagramTitle,\n setAccDescription,\n setAccTitle,\n setDiagramTitle\n} from \"./chunk-CSCIHK7Q.mjs\";\nimport {\n __name,\n log\n} from \"./chunk-AGHRB4JF.mjs\";\n\n// src/diagrams/packet/db.ts\nvar DEFAULT_PACKET_CONFIG = defaultConfig_default.packet;\nvar PacketDB = class {\n constructor() {\n this.packet = [];\n this.setAccTitle = setAccTitle;\n this.getAccTitle = getAccTitle;\n this.setDiagramTitle = setDiagramTitle;\n this.getDiagramTitle = getDiagramTitle;\n this.getAccDescription = getAccDescription;\n this.setAccDescription = setAccDescription;\n }\n static {\n __name(this, \"PacketDB\");\n }\n getConfig() {\n const config = cleanAndMerge({\n ...DEFAULT_PACKET_CONFIG,\n ...getConfig().packet\n });\n if (config.showBits) {\n config.paddingY += 10;\n }\n return config;\n }\n getPacket() {\n return this.packet;\n }\n pushWord(word) {\n if (word.length > 0) {\n this.packet.push(word);\n }\n }\n clear() {\n clear();\n this.packet = [];\n }\n};\n\n// src/diagrams/packet/parser.ts\nimport { parse } from \"@mermaid-js/parser\";\nvar maxPacketSize = 1e4;\nvar populate = /* @__PURE__ */ __name((ast, db) => {\n populateCommonDb(ast, db);\n let lastBit = -1;\n let word = [];\n let row = 1;\n const { bitsPerRow } = db.getConfig();\n for (let { start, end, bits, label } of ast.blocks) {\n if (start !== void 0 && end !== void 0 && end < start) {\n throw new Error(`Packet block ${start} - ${end} is invalid. End must be greater than start.`);\n }\n start ??= lastBit + 1;\n if (start !== lastBit + 1) {\n throw new Error(\n `Packet block ${start} - ${end ?? start} is not contiguous. It should start from ${lastBit + 1}.`\n );\n }\n if (bits === 0) {\n throw new Error(`Packet block ${start} is invalid. Cannot have a zero bit field.`);\n }\n end ??= start + (bits ?? 1) - 1;\n bits ??= end - start + 1;\n lastBit = end;\n log.debug(`Packet block ${start} - ${lastBit} with label ${label}`);\n while (word.length <= bitsPerRow + 1 && db.getPacket().length < maxPacketSize) {\n const [block, nextBlock] = getNextFittingBlock({ start, end, bits, label }, row, bitsPerRow);\n word.push(block);\n if (block.end + 1 === row * bitsPerRow) {\n db.pushWord(word);\n word = [];\n row++;\n }\n if (!nextBlock) {\n break;\n }\n ({ start, end, bits, label } = nextBlock);\n }\n }\n db.pushWord(word);\n}, \"populate\");\nvar getNextFittingBlock = /* @__PURE__ */ __name((block, row, bitsPerRow) => {\n if (block.start === void 0) {\n throw new Error(\"start should have been set during first phase\");\n }\n if (block.end === void 0) {\n throw new Error(\"end should have been set during first phase\");\n }\n if (block.start > block.end) {\n throw new Error(`Block start ${block.start} is greater than block end ${block.end}.`);\n }\n if (block.end + 1 <= row * bitsPerRow) {\n return [block, void 0];\n }\n const rowEnd = row * bitsPerRow - 1;\n const rowStart = row * bitsPerRow;\n return [\n {\n start: block.start,\n end: rowEnd,\n label: block.label,\n bits: rowEnd - block.start\n },\n {\n start: rowStart,\n end: block.end,\n label: block.label,\n bits: block.end - rowStart\n }\n ];\n}, \"getNextFittingBlock\");\nvar parser = {\n // @ts-expect-error - PacketDB is not assignable to DiagramDB\n parser: { yy: void 0 },\n parse: /* @__PURE__ */ __name(async (input) => {\n const ast = await parse(\"packet\", input);\n const db = parser.parser?.yy;\n if (!(db instanceof PacketDB)) {\n throw new Error(\n \"parser.parser?.yy was not a PacketDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.\"\n );\n }\n log.debug(ast);\n populate(ast, db);\n }, \"parse\")\n};\n\n// src/diagrams/packet/renderer.ts\nvar draw = /* @__PURE__ */ __name((_text, id, _version, diagram2) => {\n const db = diagram2.db;\n const config = db.getConfig();\n const { rowHeight, paddingY, bitWidth, bitsPerRow } = config;\n const words = db.getPacket();\n const title = db.getDiagramTitle();\n const totalRowHeight = rowHeight + paddingY;\n const svgHeight = totalRowHeight * (words.length + 1) - (title ? 0 : rowHeight);\n const svgWidth = bitWidth * bitsPerRow + 2;\n const svg = selectSvgElement(id);\n svg.attr(\"viewBox\", `0 0 ${svgWidth} ${svgHeight}`);\n configureSvgSize(svg, svgHeight, svgWidth, config.useMaxWidth);\n for (const [word, packet] of words.entries()) {\n drawWord(svg, packet, word, config);\n }\n svg.append(\"text\").text(title).attr(\"x\", svgWidth / 2).attr(\"y\", svgHeight - totalRowHeight / 2).attr(\"dominant-baseline\", \"middle\").attr(\"text-anchor\", \"middle\").attr(\"class\", \"packetTitle\");\n}, \"draw\");\nvar drawWord = /* @__PURE__ */ __name((svg, word, rowNumber, { rowHeight, paddingX, paddingY, bitWidth, bitsPerRow, showBits }) => {\n const group = svg.append(\"g\");\n const wordY = rowNumber * (rowHeight + paddingY) + paddingY;\n for (const block of word) {\n const blockX = block.start % bitsPerRow * bitWidth + 1;\n const width = (block.end - block.start + 1) * bitWidth - paddingX;\n group.append(\"rect\").attr(\"x\", blockX).attr(\"y\", wordY).attr(\"width\", width).attr(\"height\", rowHeight).attr(\"class\", \"packetBlock\");\n group.append(\"text\").attr(\"x\", blockX + width / 2).attr(\"y\", wordY + rowHeight / 2).attr(\"class\", \"packetLabel\").attr(\"dominant-baseline\", \"middle\").attr(\"text-anchor\", \"middle\").text(block.label);\n if (!showBits) {\n continue;\n }\n const isSingleBlock = block.end === block.start;\n const bitNumberY = wordY - 2;\n group.append(\"text\").attr(\"x\", blockX + (isSingleBlock ? width / 2 : 0)).attr(\"y\", bitNumberY).attr(\"class\", \"packetByte start\").attr(\"dominant-baseline\", \"auto\").attr(\"text-anchor\", isSingleBlock ? \"middle\" : \"start\").text(block.start);\n if (!isSingleBlock) {\n group.append(\"text\").attr(\"x\", blockX + width).attr(\"y\", bitNumberY).attr(\"class\", \"packetByte end\").attr(\"dominant-baseline\", \"auto\").attr(\"text-anchor\", \"end\").text(block.end);\n }\n }\n}, \"drawWord\");\nvar renderer = { draw };\n\n// src/diagrams/packet/styles.ts\nvar defaultPacketStyleOptions = {\n byteFontSize: \"10px\",\n startByteColor: \"black\",\n endByteColor: \"black\",\n labelColor: \"black\",\n labelFontSize: \"12px\",\n titleColor: \"black\",\n titleFontSize: \"14px\",\n blockStrokeColor: \"black\",\n blockStrokeWidth: \"1\",\n blockFillColor: \"#efefef\"\n};\nvar styles = /* @__PURE__ */ __name(({ packet } = {}) => {\n const options = cleanAndMerge(defaultPacketStyleOptions, packet);\n return `\n\t.packetByte {\n\t\tfont-size: ${options.byteFontSize};\n\t}\n\t.packetByte.start {\n\t\tfill: ${options.startByteColor};\n\t}\n\t.packetByte.end {\n\t\tfill: ${options.endByteColor};\n\t}\n\t.packetLabel {\n\t\tfill: ${options.labelColor};\n\t\tfont-size: ${options.labelFontSize};\n\t}\n\t.packetTitle {\n\t\tfill: ${options.titleColor};\n\t\tfont-size: ${options.titleFontSize};\n\t}\n\t.packetBlock {\n\t\tstroke: ${options.blockStrokeColor};\n\t\tstroke-width: ${options.blockStrokeWidth};\n\t\tfill: ${options.blockFillColor};\n\t}\n\t`;\n}, \"styles\");\n\n// src/diagrams/packet/diagram.ts\nvar diagram = {\n parser,\n get db() {\n return new PacketDB();\n },\n renderer,\n styles\n};\nexport {\n diagram\n};\n"],"names":["DEFAULT_PACKET_CONFIG","defaultConfig_default","PacketDB","_a","setAccTitle","getAccTitle","setDiagramTitle","getDiagramTitle","getAccDescription","setAccDescription","config","cleanAndMerge","getConfig","word","clear","__name","maxPacketSize","populate","ast","db","populateCommonDb","lastBit","row","bitsPerRow","start","end","bits","label","log","block","nextBlock","getNextFittingBlock","rowEnd","rowStart","parser","input","parse","draw","_text","id","_version","diagram2","rowHeight","paddingY","bitWidth","words","title","totalRowHeight","svgHeight","svgWidth","svg","selectSvgElement","configureSvgSize","packet","drawWord","rowNumber","paddingX","showBits","group","wordY","blockX","width","isSingleBlock","bitNumberY","renderer","defaultPacketStyleOptions","styles","options","diagram"],"mappings":"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","x_google_ignoreList":[0]}
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const h=require("./extractHeadings-C519p0PM.cjs"),se=require("./chunk-2J33WTMH-Cowi4nma.cjs"),ie=require("./chunk-4BX2VUAB-CvWrfkZa.cjs"),oe=require("./wardley-L42UT6IY-Cqw_I-WX.cjs"),I=require("./defaultLocale-C4wbwF1n.cjs"),U=require("./ordinal-CagbB1m8.cjs");function ce(t){var a=0,l=t.children,n=l&&l.length;if(!n)a=1;else for(;--n>=0;)a+=l[n].value;t.value=a}function de(){return this.eachAfter(ce)}function he(t,a){let l=-1;for(const n of this)t.call(a,n,++l,this);return this}function ue(t,a){for(var l=this,n=[l],r,i,d=-1;l=n.pop();)if(t.call(a,l,++d,this),r=l.children)for(i=r.length-1;i>=0;--i)n.push(r[i]);return this}function pe(t,a){for(var l=this,n=[l],r=[],i,d,u,m=-1;l=n.pop();)if(r.push(l),i=l.children)for(d=0,u=i.length;d<u;++d)n.push(i[d]);for(;l=r.pop();)t.call(a,l,++m,this);return this}function fe(t,a){let l=-1;for(const n of this)if(t.call(a,n,++l,this))return n}function ge(t){return this.eachAfter(function(a){for(var l=+t(a.data)||0,n=a.children,r=n&&n.length;--r>=0;)l+=n[r].value;a.value=l})}function me(t){return this.eachBefore(function(a){a.children&&a.children.sort(t)})}function ye(t){for(var a=this,l=Se(a,t),n=[a];a!==l;)a=a.parent,n.push(a);for(var r=n.length;t!==l;)n.splice(r,0,t),t=t.parent;return n}function Se(t,a){if(t===a)return t;var l=t.ancestors(),n=a.ancestors(),r=null;for(t=l.pop(),a=n.pop();t===a;)r=t,t=l.pop(),a=n.pop();return r}function ve(){for(var t=this,a=[t];t=t.parent;)a.push(t);return a}function xe(){return Array.from(this)}function be(){var t=[];return this.eachBefore(function(a){a.children||t.push(a)}),t}function we(){var t=this,a=[];return t.each(function(l){l!==t&&a.push({source:l.parent,target:l})}),a}function*Ce(){var t=this,a,l=[t],n,r,i;do for(a=l.reverse(),l=[];t=a.pop();)if(yield t,n=t.children)for(r=0,i=n.length;r<i;++r)l.push(n[r]);while(l.length)}function J(t,a){t instanceof Map?(t=[void 0,t],a===void 0&&(a=Le)):a===void 0&&(a=_e);for(var l=new Y(t),n,r=[l],i,d,u,m;n=r.pop();)if((d=a(n.data))&&(m=(d=Array.from(d)).length))for(n.children=d,u=m-1;u>=0;--u)r.push(i=d[u]=new Y(d[u])),i.parent=n,i.depth=n.depth+1;return l.eachBefore(Ae)}function Te(){return J(this).eachBefore($e)}function _e(t){return t.children}function Le(t){return Array.isArray(t)?t[1]:null}function $e(t){t.data.value!==void 0&&(t.value=t.data.value),t.data=t.data.data}function Ae(t){var a=0;do t.height=a;while((t=t.parent)&&t.height<++a)}function Y(t){this.data=t,this.depth=this.height=0,this.parent=null}Y.prototype=J.prototype={constructor:Y,count:de,each:he,eachAfter:pe,eachBefore:ue,find:fe,sum:ge,sort:me,path:ye,ancestors:ve,descendants:xe,leaves:be,links:we,copy:Te,[Symbol.iterator]:Ce};function Me(t){if(typeof t!="function")throw new Error;return t}function q(){return 0}function O(t){return function(){return t}}function Fe(t){t.x0=Math.round(t.x0),t.y0=Math.round(t.y0),t.x1=Math.round(t.x1),t.y1=Math.round(t.y1)}function Ne(t,a,l,n,r){for(var i=t.children,d,u=-1,m=i.length,c=t.value&&(n-a)/t.value;++u<m;)d=i[u],d.y0=l,d.y1=r,d.x0=a,d.x1=a+=d.value*c}function ke(t,a,l,n,r){for(var i=t.children,d,u=-1,m=i.length,c=t.value&&(r-l)/t.value;++u<m;)d=i[u],d.x0=a,d.x1=n,d.y0=l,d.y1=l+=d.value*c}var Ve=(1+Math.sqrt(5))/2;function ze(t,a,l,n,r,i){for(var d=[],u=a.children,m,c,p=0,w=0,s=u.length,b,v,x=a.value,f,y,F,M,z,R,N;p<s;){b=r-l,v=i-n;do f=u[w++].value;while(!f&&w<s);for(y=F=f,R=Math.max(v/b,b/v)/(x*t),N=f*f*R,z=Math.max(F/N,N/y);w<s;++w){if(f+=c=u[w].value,c<y&&(y=c),c>F&&(F=c),N=f*f*R,M=Math.max(F/N,N/y),M>z){f-=c;break}z=M}d.push(m={value:f,dice:b<v,children:u.slice(p,w)}),m.dice?Ne(m,l,n,r,x?n+=v*f/x:i):ke(m,l,n,x?l+=b*f/x:r,i),x-=f,p=w}return d}const Be=(function t(a){function l(n,r,i,d,u){ze(a,n,r,i,d,u)}return l.ratio=function(n){return t((n=+n)>1?n:1)},l})(Ve);function De(){var t=Be,a=!1,l=1,n=1,r=[0],i=q,d=q,u=q,m=q,c=q;function p(s){return s.x0=s.y0=0,s.x1=l,s.y1=n,s.eachBefore(w),r=[0],a&&s.eachBefore(Fe),s}function w(s){var b=r[s.depth],v=s.x0+b,x=s.y0+b,f=s.x1-b,y=s.y1-b;f<v&&(v=f=(v+f)/2),y<x&&(x=y=(x+y)/2),s.x0=v,s.y0=x,s.x1=f,s.y1=y,s.children&&(b=r[s.depth+1]=i(s)/2,v+=c(s)-b,x+=d(s)-b,f-=u(s)-b,y-=m(s)-b,f<v&&(v=f=(v+f)/2),y<x&&(x=y=(x+y)/2),t(s,v,x,f,y))}return p.round=function(s){return arguments.length?(a=!!s,p):a},p.size=function(s){return arguments.length?(l=+s[0],n=+s[1],p):[l,n]},p.tile=function(s){return arguments.length?(t=Me(s),p):t},p.padding=function(s){return arguments.length?p.paddingInner(s).paddingOuter(s):p.paddingInner()},p.paddingInner=function(s){return arguments.length?(i=typeof s=="function"?s:O(+s),p):i},p.paddingOuter=function(s){return arguments.length?p.paddingTop(s).paddingRight(s).paddingBottom(s).paddingLeft(s):p.paddingTop()},p.paddingTop=function(s){return arguments.length?(d=typeof s=="function"?s:O(+s),p):d},p.paddingRight=function(s){return arguments.length?(u=typeof s=="function"?s:O(+s),p):u},p.paddingBottom=function(s){return arguments.length?(m=typeof s=="function"?s:O(+s),p):m},p.paddingLeft=function(s){return arguments.length?(c=typeof s=="function"?s:O(+s),p):c},p}var P,K=(P=class{constructor(){this.nodes=[],this.levels=new Map,this.outerNodes=[],this.classes=new Map,this.setAccTitle=h.setAccTitle,this.getAccTitle=h.getAccTitle,this.setDiagramTitle=h.setDiagramTitle,this.getDiagramTitle=h.getDiagramTitle,this.getAccDescription=h.getAccDescription,this.setAccDescription=h.setAccDescription}getNodes(){return this.nodes}getConfig(){const a=h.defaultConfig_default,l=h.getConfig();return h.cleanAndMerge({...a.treemap,...l.treemap??{}})}addNode(a,l){this.nodes.push(a),this.levels.set(a,l),l===0&&(this.outerNodes.push(a),this.root??=a)}getRoot(){return{name:"",children:this.outerNodes}}addClass(a,l){const n=this.classes.get(a)??{id:a,styles:[],textStyles:[]},r=l.replace(/\\,/g,"§§§").replace(/,/g,";").replace(/§§§/g,",").split(";");r&&r.forEach(i=>{h.isLabelStyle(i)&&(n?.textStyles?n.textStyles.push(i):n.textStyles=[i]),n?.styles?n.styles.push(i):n.styles=[i]}),this.classes.set(a,n)}getClasses(){return this.classes}getStylesForClass(a){return this.classes.get(a)?.styles??[]}clear(){h.clear(),this.nodes=[],this.levels=new Map,this.outerNodes=[],this.classes=new Map,this.root=void 0}},h.__name(P,"TreeMapDB"),P);function Q(t){if(!t.length)return[];const a=[],l=[];return t.forEach(n=>{const r={name:n.name,children:n.type==="Leaf"?void 0:[]};for(r.classSelector=n?.classSelector,n?.cssCompiledStyles&&(r.cssCompiledStyles=n.cssCompiledStyles),n.type==="Leaf"&&n.value!==void 0&&(r.value=n.value);l.length>0&&l[l.length-1].level>=n.level;)l.pop();if(l.length===0)a.push(r);else{const i=l[l.length-1].node;i.children?i.children.push(r):i.children=[r]}n.type!=="Leaf"&&l.push({node:r,level:n.level})}),a}h.__name(Q,"buildHierarchy");var Pe=h.__name((t,a)=>{ie.populateCommonDb(t,a);const l=[];for(const i of t.TreemapRows??[])i.$type==="ClassDefStatement"&&a.addClass(i.className??"",i.styleText??"");for(const i of t.TreemapRows??[]){const d=i.item;if(!d)continue;const u=i.indent?parseInt(i.indent):0,m=Re(d),c=d.classSelector?a.getStylesForClass(d.classSelector):[],p=c.length>0?c:void 0,w={level:u,name:m,type:d.$type,value:d.value,classSelector:d.classSelector,cssCompiledStyles:p};l.push(w)}const n=Q(l),r=h.__name((i,d)=>{for(const u of i)a.addNode(u,d),u.children&&u.children.length>0&&r(u.children,d+1)},"addNodesRecursively");r(n,0)},"populate"),Re=h.__name(t=>t.name?String(t.name):"","getItemName"),ee={parser:{yy:void 0},parse:h.__name(async t=>{try{const a=oe.parse,l=await a("treemap",t);h.log.debug("Treemap AST:",l);const n=ee.parser?.yy;if(!(n instanceof K))throw new Error("parser.parser?.yy was not a TreemapDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");Pe(l,n)}catch(a){throw h.log.error("Error parsing treemap:",a),a}},"parse")},We=10,D=10,G=25,Ee=h.__name((t,a,l,n)=>{const r=n.db,i=r.getConfig(),d=i.padding??We,u=r.getDiagramTitle(),m=r.getRoot(),{themeVariables:c}=h.getConfig();if(!m)return;const p=u?30:0,w=h.selectSvgElement(a),s=i.nodeWidth?i.nodeWidth*D:960,b=i.nodeHeight?i.nodeHeight*D:500,v=s,x=b+p;w.attr("viewBox",`0 0 ${v} ${x}`),h.configureSvgSize(w,x,v,i.useMaxWidth);let f;try{const e=i.valueFormat||",";if(e==="$0,0")f=h.__name(o=>"$"+I.format(",")(o),"valueFormat");else if(e.startsWith("$")&&e.includes(",")){const o=/\.\d+/.exec(e),g=o?o[0]:"";f=h.__name(C=>"$"+I.format(","+g)(C),"valueFormat")}else if(e.startsWith("$")){const o=e.substring(1);f=h.__name(g=>"$"+I.format(o||"")(g),"valueFormat")}else f=I.format(e)}catch(e){h.log.error("Error creating format function:",e),f=I.format(",")}const y=U.ordinal().range(["transparent",c.cScale0,c.cScale1,c.cScale2,c.cScale3,c.cScale4,c.cScale5,c.cScale6,c.cScale7,c.cScale8,c.cScale9,c.cScale10,c.cScale11]),F=U.ordinal().range(["transparent",c.cScalePeer0,c.cScalePeer1,c.cScalePeer2,c.cScalePeer3,c.cScalePeer4,c.cScalePeer5,c.cScalePeer6,c.cScalePeer7,c.cScalePeer8,c.cScalePeer9,c.cScalePeer10,c.cScalePeer11]),M=U.ordinal().range([c.cScaleLabel0,c.cScaleLabel1,c.cScaleLabel2,c.cScaleLabel3,c.cScaleLabel4,c.cScaleLabel5,c.cScaleLabel6,c.cScaleLabel7,c.cScaleLabel8,c.cScaleLabel9,c.cScaleLabel10,c.cScaleLabel11]);u&&w.append("text").attr("x",v/2).attr("y",p/2).attr("class","treemapTitle").attr("text-anchor","middle").attr("dominant-baseline","middle").text(u);const z=w.append("g").attr("transform",`translate(0, ${p})`).attr("class","treemapContainer"),R=J(m).sum(e=>e.value??0).sort((e,o)=>(o.value??0)-(e.value??0)),Z=De().size([s,b]).paddingTop(e=>e.children&&e.children.length>0?G+D:0).paddingInner(d).paddingLeft(e=>e.children&&e.children.length>0?D:0).paddingRight(e=>e.children&&e.children.length>0?D:0).paddingBottom(e=>e.children&&e.children.length>0?D:0).round(!0)(R),te=Z.descendants().filter(e=>e.children&&e.children.length>0),W=z.selectAll(".treemapSection").data(te).enter().append("g").attr("class","treemapSection").attr("transform",e=>`translate(${e.x0},${e.y0})`);W.append("rect").attr("width",e=>e.x1-e.x0).attr("height",G).attr("class","treemapSectionHeader").attr("fill","none").attr("fill-opacity",.6).attr("stroke-width",.6).attr("style",e=>e.depth===0?"display: none;":""),W.append("clipPath").attr("id",(e,o)=>`clip-section-${a}-${o}`).append("rect").attr("width",e=>Math.max(0,e.x1-e.x0-12)).attr("height",G),W.append("rect").attr("width",e=>e.x1-e.x0).attr("height",e=>e.y1-e.y0).attr("class",(e,o)=>`treemapSection section${o}`).attr("fill",e=>y(e.data.name)).attr("fill-opacity",.6).attr("stroke",e=>F(e.data.name)).attr("stroke-width",2).attr("stroke-opacity",.4).attr("style",e=>{if(e.depth===0)return"display: none;";const o=h.styles2String({cssCompiledStyles:e.data.cssCompiledStyles});return o.nodeStyles+";"+o.borderStyles.join(";")}),W.append("text").attr("class","treemapSectionLabel").attr("x",6).attr("y",G/2).attr("dominant-baseline","middle").text(e=>e.depth===0?"":e.data.name).attr("font-weight","bold").attr("style",e=>{if(e.depth===0)return"display: none;";const o="dominant-baseline: middle; font-size: 12px; fill:"+M(e.data.name)+"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;",g=h.styles2String({cssCompiledStyles:e.data.cssCompiledStyles});return o+g.labelStyles.replace("color:","fill:")}).each(function(e){if(e.depth===0)return;const o=h.select(this),g=e.data.name;o.text(g);const C=e.x1-e.x0,_=6;let L;i.showValues!==!1&&e.value?L=C-10-30-10-_:L=C-_-6;const $=Math.max(15,L),S=o.node();if(S.getComputedTextLength()>$){let T=g;for(;T.length>0;){if(T=g.substring(0,T.length-1),T.length===0){o.text("..."),S.getComputedTextLength()>$&&o.text("");break}if(o.text(T+"..."),S.getComputedTextLength()<=$)break}}}),i.showValues!==!1&&W.append("text").attr("class","treemapSectionValue").attr("x",e=>e.x1-e.x0-10).attr("y",G/2).attr("text-anchor","end").attr("dominant-baseline","middle").text(e=>e.value?f(e.value):"").attr("font-style","italic").attr("style",e=>{if(e.depth===0)return"display: none;";const o="text-anchor: end; dominant-baseline: middle; font-size: 10px; fill:"+M(e.data.name)+"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;",g=h.styles2String({cssCompiledStyles:e.data.cssCompiledStyles});return o+g.labelStyles.replace("color:","fill:")});const ae=Z.leaves(),X=z.selectAll(".treemapLeafGroup").data(ae).enter().append("g").attr("class",(e,o)=>`treemapNode treemapLeafGroup leaf${o}${e.data.classSelector?` ${e.data.classSelector}`:""}x`).attr("transform",e=>`translate(${e.x0},${e.y0})`);X.append("rect").attr("width",e=>e.x1-e.x0).attr("height",e=>e.y1-e.y0).attr("class","treemapLeaf").attr("fill",e=>e.parent?y(e.parent.data.name):y(e.data.name)).attr("style",e=>h.styles2String({cssCompiledStyles:e.data.cssCompiledStyles}).nodeStyles).attr("fill-opacity",.3).attr("stroke",e=>e.parent?y(e.parent.data.name):y(e.data.name)).attr("stroke-width",3),X.append("clipPath").attr("id",(e,o)=>`clip-${a}-${o}`).append("rect").attr("width",e=>Math.max(0,e.x1-e.x0-4)).attr("height",e=>Math.max(0,e.y1-e.y0-4)),X.append("text").attr("class","treemapLabel").attr("x",e=>(e.x1-e.x0)/2).attr("y",e=>(e.y1-e.y0)/2).attr("style",e=>{const o="text-anchor: middle; dominant-baseline: middle; font-size: 38px;fill:"+M(e.data.name)+";",g=h.styles2String({cssCompiledStyles:e.data.cssCompiledStyles});return o+g.labelStyles.replace("color:","fill:")}).attr("clip-path",(e,o)=>`url(#clip-${a}-${o})`).text(e=>e.data.name).each(function(e){const o=h.select(this),g=e.x1-e.x0,C=e.y1-e.y0,_=o.node(),L=4,B=g-2*L,$=C-2*L;if(B<10||$<10){o.style("display","none");return}let S=parseInt(o.style("font-size"),10);const k=8,A=28,T=.6,V=6,E=2;for(;_.getComputedTextLength()>B&&S>k;)S--,o.style("font-size",`${S}px`);let H=Math.max(V,Math.min(A,Math.round(S*T))),j=S+E+H;for(;j>$&&S>k&&(S--,H=Math.max(V,Math.min(A,Math.round(S*T))),!(H<V&&S===k));)o.style("font-size",`${S}px`),j=S+E+H;o.style("font-size",`${S}px`),(_.getComputedTextLength()>B||S<k||$<S)&&o.style("display","none")}),i.showValues!==!1&&X.append("text").attr("class","treemapValue").attr("x",o=>(o.x1-o.x0)/2).attr("y",function(o){return(o.y1-o.y0)/2}).attr("style",o=>{const g="text-anchor: middle; dominant-baseline: hanging; font-size: 28px;fill:"+M(o.data.name)+";",C=h.styles2String({cssCompiledStyles:o.data.cssCompiledStyles});return g+C.labelStyles.replace("color:","fill:")}).attr("clip-path",(o,g)=>`url(#clip-${a}-${g})`).text(o=>o.value?f(o.value):"").each(function(o){const g=h.select(this),C=this.parentNode;if(!C){g.style("display","none");return}const _=h.select(C).select(".treemapLabel");if(_.empty()||_.style("display")==="none"){g.style("display","none");return}const L=parseFloat(_.style("font-size")),B=28,$=.6,S=6,k=2,A=Math.max(S,Math.min(B,Math.round(L*$)));g.style("font-size",`${A}px`);const V=(o.y1-o.y0)/2+L/2+k;g.attr("y",V);const E=o.x1-o.x0,le=o.y1-o.y0-4,re=E-8;g.node().getComputedTextLength()>re||V+A>le||A<S?g.style("display","none"):g.style("display",null)});const ne=i.diagramPadding??8;se.setupViewPortForSVG(w,ne,"flowchart",i?.useMaxWidth||!1)},"draw"),He=h.__name(function(t,a){return a.db.getClasses()},"getClasses"),Ie={draw:Ee,getClasses:He},qe={sectionStrokeColor:"black",sectionStrokeWidth:"1",sectionFillColor:"#efefef",leafStrokeColor:"black",leafStrokeWidth:"1",leafFillColor:"#efefef",labelFontSize:"12px",valueFontSize:"10px",titleFontSize:"14px"},Oe=h.__name(({treemap:t}={})=>{const a=h.getThemeVariables3(),l=h.getConfig(),n=h.cleanAndMerge(a,l.themeVariables),r=h.cleanAndMerge(qe,t),i=r.titleColor??n.titleColor,d=r.labelColor??n.textColor,u=r.valueColor??n.textColor;return`
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const h=require("./extractHeadings-BCDkDiAF.cjs"),se=require("./chunk-2J33WTMH-DwPHxvbM.cjs"),ie=require("./chunk-4BX2VUAB-dlb1zwjz.cjs"),oe=require("./wardley-L42UT6IY-Cqw_I-WX.cjs"),I=require("./defaultLocale-C4wbwF1n.cjs"),U=require("./ordinal-CagbB1m8.cjs");function ce(t){var a=0,l=t.children,n=l&&l.length;if(!n)a=1;else for(;--n>=0;)a+=l[n].value;t.value=a}function de(){return this.eachAfter(ce)}function he(t,a){let l=-1;for(const n of this)t.call(a,n,++l,this);return this}function ue(t,a){for(var l=this,n=[l],r,i,d=-1;l=n.pop();)if(t.call(a,l,++d,this),r=l.children)for(i=r.length-1;i>=0;--i)n.push(r[i]);return this}function pe(t,a){for(var l=this,n=[l],r=[],i,d,u,m=-1;l=n.pop();)if(r.push(l),i=l.children)for(d=0,u=i.length;d<u;++d)n.push(i[d]);for(;l=r.pop();)t.call(a,l,++m,this);return this}function fe(t,a){let l=-1;for(const n of this)if(t.call(a,n,++l,this))return n}function ge(t){return this.eachAfter(function(a){for(var l=+t(a.data)||0,n=a.children,r=n&&n.length;--r>=0;)l+=n[r].value;a.value=l})}function me(t){return this.eachBefore(function(a){a.children&&a.children.sort(t)})}function ye(t){for(var a=this,l=Se(a,t),n=[a];a!==l;)a=a.parent,n.push(a);for(var r=n.length;t!==l;)n.splice(r,0,t),t=t.parent;return n}function Se(t,a){if(t===a)return t;var l=t.ancestors(),n=a.ancestors(),r=null;for(t=l.pop(),a=n.pop();t===a;)r=t,t=l.pop(),a=n.pop();return r}function ve(){for(var t=this,a=[t];t=t.parent;)a.push(t);return a}function xe(){return Array.from(this)}function be(){var t=[];return this.eachBefore(function(a){a.children||t.push(a)}),t}function we(){var t=this,a=[];return t.each(function(l){l!==t&&a.push({source:l.parent,target:l})}),a}function*Ce(){var t=this,a,l=[t],n,r,i;do for(a=l.reverse(),l=[];t=a.pop();)if(yield t,n=t.children)for(r=0,i=n.length;r<i;++r)l.push(n[r]);while(l.length)}function J(t,a){t instanceof Map?(t=[void 0,t],a===void 0&&(a=Le)):a===void 0&&(a=_e);for(var l=new Y(t),n,r=[l],i,d,u,m;n=r.pop();)if((d=a(n.data))&&(m=(d=Array.from(d)).length))for(n.children=d,u=m-1;u>=0;--u)r.push(i=d[u]=new Y(d[u])),i.parent=n,i.depth=n.depth+1;return l.eachBefore(Ae)}function Te(){return J(this).eachBefore($e)}function _e(t){return t.children}function Le(t){return Array.isArray(t)?t[1]:null}function $e(t){t.data.value!==void 0&&(t.value=t.data.value),t.data=t.data.data}function Ae(t){var a=0;do t.height=a;while((t=t.parent)&&t.height<++a)}function Y(t){this.data=t,this.depth=this.height=0,this.parent=null}Y.prototype=J.prototype={constructor:Y,count:de,each:he,eachAfter:pe,eachBefore:ue,find:fe,sum:ge,sort:me,path:ye,ancestors:ve,descendants:xe,leaves:be,links:we,copy:Te,[Symbol.iterator]:Ce};function Me(t){if(typeof t!="function")throw new Error;return t}function q(){return 0}function O(t){return function(){return t}}function Fe(t){t.x0=Math.round(t.x0),t.y0=Math.round(t.y0),t.x1=Math.round(t.x1),t.y1=Math.round(t.y1)}function Ne(t,a,l,n,r){for(var i=t.children,d,u=-1,m=i.length,c=t.value&&(n-a)/t.value;++u<m;)d=i[u],d.y0=l,d.y1=r,d.x0=a,d.x1=a+=d.value*c}function ke(t,a,l,n,r){for(var i=t.children,d,u=-1,m=i.length,c=t.value&&(r-l)/t.value;++u<m;)d=i[u],d.x0=a,d.x1=n,d.y0=l,d.y1=l+=d.value*c}var Ve=(1+Math.sqrt(5))/2;function ze(t,a,l,n,r,i){for(var d=[],u=a.children,m,c,p=0,w=0,s=u.length,b,v,x=a.value,f,y,F,M,z,R,N;p<s;){b=r-l,v=i-n;do f=u[w++].value;while(!f&&w<s);for(y=F=f,R=Math.max(v/b,b/v)/(x*t),N=f*f*R,z=Math.max(F/N,N/y);w<s;++w){if(f+=c=u[w].value,c<y&&(y=c),c>F&&(F=c),N=f*f*R,M=Math.max(F/N,N/y),M>z){f-=c;break}z=M}d.push(m={value:f,dice:b<v,children:u.slice(p,w)}),m.dice?Ne(m,l,n,r,x?n+=v*f/x:i):ke(m,l,n,x?l+=b*f/x:r,i),x-=f,p=w}return d}const Be=(function t(a){function l(n,r,i,d,u){ze(a,n,r,i,d,u)}return l.ratio=function(n){return t((n=+n)>1?n:1)},l})(Ve);function De(){var t=Be,a=!1,l=1,n=1,r=[0],i=q,d=q,u=q,m=q,c=q;function p(s){return s.x0=s.y0=0,s.x1=l,s.y1=n,s.eachBefore(w),r=[0],a&&s.eachBefore(Fe),s}function w(s){var b=r[s.depth],v=s.x0+b,x=s.y0+b,f=s.x1-b,y=s.y1-b;f<v&&(v=f=(v+f)/2),y<x&&(x=y=(x+y)/2),s.x0=v,s.y0=x,s.x1=f,s.y1=y,s.children&&(b=r[s.depth+1]=i(s)/2,v+=c(s)-b,x+=d(s)-b,f-=u(s)-b,y-=m(s)-b,f<v&&(v=f=(v+f)/2),y<x&&(x=y=(x+y)/2),t(s,v,x,f,y))}return p.round=function(s){return arguments.length?(a=!!s,p):a},p.size=function(s){return arguments.length?(l=+s[0],n=+s[1],p):[l,n]},p.tile=function(s){return arguments.length?(t=Me(s),p):t},p.padding=function(s){return arguments.length?p.paddingInner(s).paddingOuter(s):p.paddingInner()},p.paddingInner=function(s){return arguments.length?(i=typeof s=="function"?s:O(+s),p):i},p.paddingOuter=function(s){return arguments.length?p.paddingTop(s).paddingRight(s).paddingBottom(s).paddingLeft(s):p.paddingTop()},p.paddingTop=function(s){return arguments.length?(d=typeof s=="function"?s:O(+s),p):d},p.paddingRight=function(s){return arguments.length?(u=typeof s=="function"?s:O(+s),p):u},p.paddingBottom=function(s){return arguments.length?(m=typeof s=="function"?s:O(+s),p):m},p.paddingLeft=function(s){return arguments.length?(c=typeof s=="function"?s:O(+s),p):c},p}var P,K=(P=class{constructor(){this.nodes=[],this.levels=new Map,this.outerNodes=[],this.classes=new Map,this.setAccTitle=h.setAccTitle,this.getAccTitle=h.getAccTitle,this.setDiagramTitle=h.setDiagramTitle,this.getDiagramTitle=h.getDiagramTitle,this.getAccDescription=h.getAccDescription,this.setAccDescription=h.setAccDescription}getNodes(){return this.nodes}getConfig(){const a=h.defaultConfig_default,l=h.getConfig();return h.cleanAndMerge({...a.treemap,...l.treemap??{}})}addNode(a,l){this.nodes.push(a),this.levels.set(a,l),l===0&&(this.outerNodes.push(a),this.root??=a)}getRoot(){return{name:"",children:this.outerNodes}}addClass(a,l){const n=this.classes.get(a)??{id:a,styles:[],textStyles:[]},r=l.replace(/\\,/g,"§§§").replace(/,/g,";").replace(/§§§/g,",").split(";");r&&r.forEach(i=>{h.isLabelStyle(i)&&(n?.textStyles?n.textStyles.push(i):n.textStyles=[i]),n?.styles?n.styles.push(i):n.styles=[i]}),this.classes.set(a,n)}getClasses(){return this.classes}getStylesForClass(a){return this.classes.get(a)?.styles??[]}clear(){h.clear(),this.nodes=[],this.levels=new Map,this.outerNodes=[],this.classes=new Map,this.root=void 0}},h.__name(P,"TreeMapDB"),P);function Q(t){if(!t.length)return[];const a=[],l=[];return t.forEach(n=>{const r={name:n.name,children:n.type==="Leaf"?void 0:[]};for(r.classSelector=n?.classSelector,n?.cssCompiledStyles&&(r.cssCompiledStyles=n.cssCompiledStyles),n.type==="Leaf"&&n.value!==void 0&&(r.value=n.value);l.length>0&&l[l.length-1].level>=n.level;)l.pop();if(l.length===0)a.push(r);else{const i=l[l.length-1].node;i.children?i.children.push(r):i.children=[r]}n.type!=="Leaf"&&l.push({node:r,level:n.level})}),a}h.__name(Q,"buildHierarchy");var Pe=h.__name((t,a)=>{ie.populateCommonDb(t,a);const l=[];for(const i of t.TreemapRows??[])i.$type==="ClassDefStatement"&&a.addClass(i.className??"",i.styleText??"");for(const i of t.TreemapRows??[]){const d=i.item;if(!d)continue;const u=i.indent?parseInt(i.indent):0,m=Re(d),c=d.classSelector?a.getStylesForClass(d.classSelector):[],p=c.length>0?c:void 0,w={level:u,name:m,type:d.$type,value:d.value,classSelector:d.classSelector,cssCompiledStyles:p};l.push(w)}const n=Q(l),r=h.__name((i,d)=>{for(const u of i)a.addNode(u,d),u.children&&u.children.length>0&&r(u.children,d+1)},"addNodesRecursively");r(n,0)},"populate"),Re=h.__name(t=>t.name?String(t.name):"","getItemName"),ee={parser:{yy:void 0},parse:h.__name(async t=>{try{const a=oe.parse,l=await a("treemap",t);h.log.debug("Treemap AST:",l);const n=ee.parser?.yy;if(!(n instanceof K))throw new Error("parser.parser?.yy was not a TreemapDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");Pe(l,n)}catch(a){throw h.log.error("Error parsing treemap:",a),a}},"parse")},We=10,D=10,G=25,Ee=h.__name((t,a,l,n)=>{const r=n.db,i=r.getConfig(),d=i.padding??We,u=r.getDiagramTitle(),m=r.getRoot(),{themeVariables:c}=h.getConfig();if(!m)return;const p=u?30:0,w=h.selectSvgElement(a),s=i.nodeWidth?i.nodeWidth*D:960,b=i.nodeHeight?i.nodeHeight*D:500,v=s,x=b+p;w.attr("viewBox",`0 0 ${v} ${x}`),h.configureSvgSize(w,x,v,i.useMaxWidth);let f;try{const e=i.valueFormat||",";if(e==="$0,0")f=h.__name(o=>"$"+I.format(",")(o),"valueFormat");else if(e.startsWith("$")&&e.includes(",")){const o=/\.\d+/.exec(e),g=o?o[0]:"";f=h.__name(C=>"$"+I.format(","+g)(C),"valueFormat")}else if(e.startsWith("$")){const o=e.substring(1);f=h.__name(g=>"$"+I.format(o||"")(g),"valueFormat")}else f=I.format(e)}catch(e){h.log.error("Error creating format function:",e),f=I.format(",")}const y=U.ordinal().range(["transparent",c.cScale0,c.cScale1,c.cScale2,c.cScale3,c.cScale4,c.cScale5,c.cScale6,c.cScale7,c.cScale8,c.cScale9,c.cScale10,c.cScale11]),F=U.ordinal().range(["transparent",c.cScalePeer0,c.cScalePeer1,c.cScalePeer2,c.cScalePeer3,c.cScalePeer4,c.cScalePeer5,c.cScalePeer6,c.cScalePeer7,c.cScalePeer8,c.cScalePeer9,c.cScalePeer10,c.cScalePeer11]),M=U.ordinal().range([c.cScaleLabel0,c.cScaleLabel1,c.cScaleLabel2,c.cScaleLabel3,c.cScaleLabel4,c.cScaleLabel5,c.cScaleLabel6,c.cScaleLabel7,c.cScaleLabel8,c.cScaleLabel9,c.cScaleLabel10,c.cScaleLabel11]);u&&w.append("text").attr("x",v/2).attr("y",p/2).attr("class","treemapTitle").attr("text-anchor","middle").attr("dominant-baseline","middle").text(u);const z=w.append("g").attr("transform",`translate(0, ${p})`).attr("class","treemapContainer"),R=J(m).sum(e=>e.value??0).sort((e,o)=>(o.value??0)-(e.value??0)),Z=De().size([s,b]).paddingTop(e=>e.children&&e.children.length>0?G+D:0).paddingInner(d).paddingLeft(e=>e.children&&e.children.length>0?D:0).paddingRight(e=>e.children&&e.children.length>0?D:0).paddingBottom(e=>e.children&&e.children.length>0?D:0).round(!0)(R),te=Z.descendants().filter(e=>e.children&&e.children.length>0),W=z.selectAll(".treemapSection").data(te).enter().append("g").attr("class","treemapSection").attr("transform",e=>`translate(${e.x0},${e.y0})`);W.append("rect").attr("width",e=>e.x1-e.x0).attr("height",G).attr("class","treemapSectionHeader").attr("fill","none").attr("fill-opacity",.6).attr("stroke-width",.6).attr("style",e=>e.depth===0?"display: none;":""),W.append("clipPath").attr("id",(e,o)=>`clip-section-${a}-${o}`).append("rect").attr("width",e=>Math.max(0,e.x1-e.x0-12)).attr("height",G),W.append("rect").attr("width",e=>e.x1-e.x0).attr("height",e=>e.y1-e.y0).attr("class",(e,o)=>`treemapSection section${o}`).attr("fill",e=>y(e.data.name)).attr("fill-opacity",.6).attr("stroke",e=>F(e.data.name)).attr("stroke-width",2).attr("stroke-opacity",.4).attr("style",e=>{if(e.depth===0)return"display: none;";const o=h.styles2String({cssCompiledStyles:e.data.cssCompiledStyles});return o.nodeStyles+";"+o.borderStyles.join(";")}),W.append("text").attr("class","treemapSectionLabel").attr("x",6).attr("y",G/2).attr("dominant-baseline","middle").text(e=>e.depth===0?"":e.data.name).attr("font-weight","bold").attr("style",e=>{if(e.depth===0)return"display: none;";const o="dominant-baseline: middle; font-size: 12px; fill:"+M(e.data.name)+"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;",g=h.styles2String({cssCompiledStyles:e.data.cssCompiledStyles});return o+g.labelStyles.replace("color:","fill:")}).each(function(e){if(e.depth===0)return;const o=h.select(this),g=e.data.name;o.text(g);const C=e.x1-e.x0,_=6;let L;i.showValues!==!1&&e.value?L=C-10-30-10-_:L=C-_-6;const $=Math.max(15,L),S=o.node();if(S.getComputedTextLength()>$){let T=g;for(;T.length>0;){if(T=g.substring(0,T.length-1),T.length===0){o.text("..."),S.getComputedTextLength()>$&&o.text("");break}if(o.text(T+"..."),S.getComputedTextLength()<=$)break}}}),i.showValues!==!1&&W.append("text").attr("class","treemapSectionValue").attr("x",e=>e.x1-e.x0-10).attr("y",G/2).attr("text-anchor","end").attr("dominant-baseline","middle").text(e=>e.value?f(e.value):"").attr("font-style","italic").attr("style",e=>{if(e.depth===0)return"display: none;";const o="text-anchor: end; dominant-baseline: middle; font-size: 10px; fill:"+M(e.data.name)+"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;",g=h.styles2String({cssCompiledStyles:e.data.cssCompiledStyles});return o+g.labelStyles.replace("color:","fill:")});const ae=Z.leaves(),X=z.selectAll(".treemapLeafGroup").data(ae).enter().append("g").attr("class",(e,o)=>`treemapNode treemapLeafGroup leaf${o}${e.data.classSelector?` ${e.data.classSelector}`:""}x`).attr("transform",e=>`translate(${e.x0},${e.y0})`);X.append("rect").attr("width",e=>e.x1-e.x0).attr("height",e=>e.y1-e.y0).attr("class","treemapLeaf").attr("fill",e=>e.parent?y(e.parent.data.name):y(e.data.name)).attr("style",e=>h.styles2String({cssCompiledStyles:e.data.cssCompiledStyles}).nodeStyles).attr("fill-opacity",.3).attr("stroke",e=>e.parent?y(e.parent.data.name):y(e.data.name)).attr("stroke-width",3),X.append("clipPath").attr("id",(e,o)=>`clip-${a}-${o}`).append("rect").attr("width",e=>Math.max(0,e.x1-e.x0-4)).attr("height",e=>Math.max(0,e.y1-e.y0-4)),X.append("text").attr("class","treemapLabel").attr("x",e=>(e.x1-e.x0)/2).attr("y",e=>(e.y1-e.y0)/2).attr("style",e=>{const o="text-anchor: middle; dominant-baseline: middle; font-size: 38px;fill:"+M(e.data.name)+";",g=h.styles2String({cssCompiledStyles:e.data.cssCompiledStyles});return o+g.labelStyles.replace("color:","fill:")}).attr("clip-path",(e,o)=>`url(#clip-${a}-${o})`).text(e=>e.data.name).each(function(e){const o=h.select(this),g=e.x1-e.x0,C=e.y1-e.y0,_=o.node(),L=4,B=g-2*L,$=C-2*L;if(B<10||$<10){o.style("display","none");return}let S=parseInt(o.style("font-size"),10);const k=8,A=28,T=.6,V=6,E=2;for(;_.getComputedTextLength()>B&&S>k;)S--,o.style("font-size",`${S}px`);let H=Math.max(V,Math.min(A,Math.round(S*T))),j=S+E+H;for(;j>$&&S>k&&(S--,H=Math.max(V,Math.min(A,Math.round(S*T))),!(H<V&&S===k));)o.style("font-size",`${S}px`),j=S+E+H;o.style("font-size",`${S}px`),(_.getComputedTextLength()>B||S<k||$<S)&&o.style("display","none")}),i.showValues!==!1&&X.append("text").attr("class","treemapValue").attr("x",o=>(o.x1-o.x0)/2).attr("y",function(o){return(o.y1-o.y0)/2}).attr("style",o=>{const g="text-anchor: middle; dominant-baseline: hanging; font-size: 28px;fill:"+M(o.data.name)+";",C=h.styles2String({cssCompiledStyles:o.data.cssCompiledStyles});return g+C.labelStyles.replace("color:","fill:")}).attr("clip-path",(o,g)=>`url(#clip-${a}-${g})`).text(o=>o.value?f(o.value):"").each(function(o){const g=h.select(this),C=this.parentNode;if(!C){g.style("display","none");return}const _=h.select(C).select(".treemapLabel");if(_.empty()||_.style("display")==="none"){g.style("display","none");return}const L=parseFloat(_.style("font-size")),B=28,$=.6,S=6,k=2,A=Math.max(S,Math.min(B,Math.round(L*$)));g.style("font-size",`${A}px`);const V=(o.y1-o.y0)/2+L/2+k;g.attr("y",V);const E=o.x1-o.x0,le=o.y1-o.y0-4,re=E-8;g.node().getComputedTextLength()>re||V+A>le||A<S?g.style("display","none"):g.style("display",null)});const ne=i.diagramPadding??8;se.setupViewPortForSVG(w,ne,"flowchart",i?.useMaxWidth||!1)},"draw"),He=h.__name(function(t,a){return a.db.getClasses()},"getClasses"),Ie={draw:Ee,getClasses:He},qe={sectionStrokeColor:"black",sectionStrokeWidth:"1",sectionFillColor:"#efefef",leafStrokeColor:"black",leafStrokeWidth:"1",leafFillColor:"#efefef",labelFontSize:"12px",valueFontSize:"10px",titleFontSize:"14px"},Oe=h.__name(({treemap:t}={})=>{const a=h.getThemeVariables3(),l=h.getConfig(),n=h.cleanAndMerge(a,l.themeVariables),r=h.cleanAndMerge(qe,t),i=r.titleColor??n.titleColor,d=r.labelColor??n.textColor,u=r.valueColor??n.textColor;return`
2
2
  .treemapNode.section {
3
3
  stroke: ${r.sectionStrokeColor};
4
4
  stroke-width: ${r.sectionStrokeWidth};
@@ -22,4 +22,4 @@
22
22
  font-size: ${r.titleFontSize};
23
23
  }
24
24
  `},"getStyles"),Ge=Oe,Xe={parser:ee,get db(){return new K},renderer:Ie,styles:Ge};exports.diagram=Xe;
25
- //# sourceMappingURL=diagram-OG6HWLK6-D39m55l2.cjs.map
25
+ //# sourceMappingURL=diagram-OG6HWLK6-CYAVH4wV.cjs.map