@plumile/ui 0.1.83 → 0.1.86

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 (230) hide show
  1. package/README.md +109 -27
  2. package/lib/esm/BackofficeJsonViewerAsync-BeBxIpGT.js +7 -0
  3. package/lib/esm/{BackofficeJsonViewerAsync-Czd9VhUz.js.map → BackofficeJsonViewerAsync-BeBxIpGT.js.map} +1 -1
  4. package/lib/esm/{MarkdownCodeBlock-B3PblX3D.js → MarkdownCodeBlock-C0d5VZVs.js} +3 -3
  5. package/lib/esm/{MarkdownCodeBlock-B3PblX3D.js.map → MarkdownCodeBlock-C0d5VZVs.js.map} +1 -1
  6. package/lib/esm/{MarkdownRenderer-RgELUK6t.js → MarkdownRenderer-BZQymHWR.js} +37 -36
  7. package/lib/esm/MarkdownRenderer-BZQymHWR.js.map +1 -0
  8. package/lib/esm/{MarkdownShikiCodeBlock-Dv7ONFFy.js → MarkdownShikiCodeBlock-CQENUqVC.js} +2 -3
  9. package/lib/esm/{MarkdownShikiCodeBlock-Dv7ONFFy.js.map → MarkdownShikiCodeBlock-CQENUqVC.js.map} +1 -1
  10. package/lib/esm/architecture-PBZL5I3N-BzBIDLaO.js +3 -0
  11. package/lib/esm/{architectureDiagram-2XIMDMQ5-BUhb7PkG.js → architectureDiagram-2XIMDMQ5-C3274bP5.js} +7 -16
  12. package/lib/esm/{architectureDiagram-2XIMDMQ5-BUhb7PkG.js.map → architectureDiagram-2XIMDMQ5-C3274bP5.js.map} +1 -1
  13. package/lib/esm/{blockDiagram-WCTKOSBZ-C8Ohzdg3.js → blockDiagram-WCTKOSBZ-BlgoYSMA.js} +7 -8
  14. package/lib/esm/{blockDiagram-WCTKOSBZ-C8Ohzdg3.js.map → blockDiagram-WCTKOSBZ-BlgoYSMA.js.map} +1 -1
  15. package/lib/esm/{c4Diagram-IC4MRINW-CQUp6kiC.js → c4Diagram-IC4MRINW-Cp7JuV3A.js} +4 -4
  16. package/lib/esm/{c4Diagram-IC4MRINW-CQUp6kiC.js.map → c4Diagram-IC4MRINW-Cp7JuV3A.js.map} +1 -1
  17. package/lib/esm/{channel-BBzlf3l-.js → channel-DogymxsL.js} +2 -2
  18. package/lib/esm/{channel-BBzlf3l-.js.map → channel-DogymxsL.js.map} +1 -1
  19. package/lib/esm/{chunk-7E7YKBS2-CdBV12RO.js → chunk-7E7YKBS2-Pt8h9jYn.js} +2 -2
  20. package/lib/esm/{chunk-7E7YKBS2-CdBV12RO.js.map → chunk-7E7YKBS2-Pt8h9jYn.js.map} +1 -1
  21. package/lib/esm/{chunk-7R4GIKGN-Cg9-qmu5.js → chunk-7R4GIKGN-DFba5m0T.js} +2 -2
  22. package/lib/esm/{chunk-7R4GIKGN-Cg9-qmu5.js.map → chunk-7R4GIKGN-DFba5m0T.js.map} +1 -1
  23. package/lib/esm/{chunk-C72U2L5F-DygXHeeZ.js → chunk-C72U2L5F-C7A2Zfr9.js} +2 -2
  24. package/lib/esm/{chunk-C72U2L5F-DygXHeeZ.js.map → chunk-C72U2L5F-C7A2Zfr9.js.map} +1 -1
  25. package/lib/esm/{chunk-EGIJ26TM-DJ1G_X9D.js → chunk-EGIJ26TM-CTAmlHSC.js} +2 -2
  26. package/lib/esm/{chunk-EGIJ26TM-DJ1G_X9D.js.map → chunk-EGIJ26TM-CTAmlHSC.js.map} +1 -1
  27. package/lib/esm/{chunk-GEFDOKGD-Dkux3ZgH.js → chunk-GEFDOKGD-DwcK4le_.js} +2 -2
  28. package/lib/esm/{chunk-GEFDOKGD-Dkux3ZgH.js.map → chunk-GEFDOKGD-DwcK4le_.js.map} +1 -1
  29. package/lib/esm/{chunk-GLR3WWYH-BBakjhtu.js → chunk-GLR3WWYH-B_ufWlZA.js} +7 -7
  30. package/lib/esm/{chunk-GLR3WWYH-BBakjhtu.js.map → chunk-GLR3WWYH-B_ufWlZA.js.map} +1 -1
  31. package/lib/esm/{chunk-HHEYEP7N-BRntQHI9.js → chunk-HHEYEP7N-Cd1T4lH1.js} +2 -2
  32. package/lib/esm/{chunk-HHEYEP7N-BRntQHI9.js.map → chunk-HHEYEP7N-Cd1T4lH1.js.map} +1 -1
  33. package/lib/esm/{chunk-JSJVCQXG-DuVavFA7.js → chunk-JSJVCQXG-C3QauA5P.js} +2 -2
  34. package/lib/esm/{chunk-JSJVCQXG-DuVavFA7.js.map → chunk-JSJVCQXG-C3QauA5P.js.map} +1 -1
  35. package/lib/esm/{chunk-KX2RTZJC-BEZu4ePM.js → chunk-KX2RTZJC-CvwGKvGK.js} +2 -2
  36. package/lib/esm/{chunk-KX2RTZJC-BEZu4ePM.js.map → chunk-KX2RTZJC-CvwGKvGK.js.map} +1 -1
  37. package/lib/esm/{chunk-KYZI473N-DeJhj0TI.js → chunk-KYZI473N-BSnk8jTP.js} +9 -9
  38. package/lib/esm/{chunk-KYZI473N-DeJhj0TI.js.map → chunk-KYZI473N-BSnk8jTP.js.map} +1 -1
  39. package/lib/esm/{chunk-L3YUKLVL-pMJOn-lT.js → chunk-L3YUKLVL-C_cuxclB.js} +2 -2
  40. package/lib/esm/{chunk-L3YUKLVL-pMJOn-lT.js.map → chunk-L3YUKLVL-C_cuxclB.js.map} +1 -1
  41. package/lib/esm/{chunk-NQ4KR5QH-pcyIZSOf.js → chunk-NQ4KR5QH-BKl-7l0B.js} +5 -5
  42. package/lib/esm/{chunk-NQ4KR5QH-pcyIZSOf.js.map → chunk-NQ4KR5QH-BKl-7l0B.js.map} +1 -1
  43. package/lib/esm/{chunk-O4XLMI2P-B49RDRA_.js → chunk-O4XLMI2P-BdVt_1-O.js} +89 -89
  44. package/lib/esm/{chunk-O4XLMI2P-B49RDRA_.js.map → chunk-O4XLMI2P-BdVt_1-O.js.map} +1 -1
  45. package/lib/esm/{chunk-OZEHJAEY-Cdfu-MGD.js → chunk-OZEHJAEY-BpRlGWBe.js} +2 -2
  46. package/lib/esm/{chunk-OZEHJAEY-Cdfu-MGD.js.map → chunk-OZEHJAEY-BpRlGWBe.js.map} +1 -1
  47. package/lib/esm/{chunk-PQ6SQG4A-BJO_yF6z.js → chunk-PQ6SQG4A-_Snj96al.js} +2 -2
  48. package/lib/esm/{chunk-PQ6SQG4A-BJO_yF6z.js.map → chunk-PQ6SQG4A-_Snj96al.js.map} +1 -1
  49. package/lib/esm/{chunk-PU5JKC2W-BzaL_NH3.js → chunk-PU5JKC2W-D0uOJ9Iw.js} +3 -3
  50. package/lib/esm/{chunk-PU5JKC2W-BzaL_NH3.js.map → chunk-PU5JKC2W-D0uOJ9Iw.js.map} +1 -1
  51. package/lib/esm/{chunk-R5LLSJPH-lr9fZO00.js → chunk-R5LLSJPH-BuuyFmhX.js} +2 -2
  52. package/lib/esm/{chunk-R5LLSJPH-lr9fZO00.js.map → chunk-R5LLSJPH-BuuyFmhX.js.map} +1 -1
  53. package/lib/esm/{chunk-WL4C6EOR-CtRNKYmt.js → chunk-WL4C6EOR-CG_NidXe.js} +6 -6
  54. package/lib/esm/{chunk-WL4C6EOR-CtRNKYmt.js.map → chunk-WL4C6EOR-CG_NidXe.js.map} +1 -1
  55. package/lib/esm/{chunk-XIRO2GV7-CLkLLbAz.js → chunk-XIRO2GV7-CA5ZRsNA.js} +2 -2
  56. package/lib/esm/{chunk-XIRO2GV7-CLkLLbAz.js.map → chunk-XIRO2GV7-CA5ZRsNA.js.map} +1 -1
  57. package/lib/esm/{chunk-XZSTWKYB-CtrW-UDJ.js → chunk-XZSTWKYB-C3gBacLv.js} +3 -3
  58. package/lib/esm/{chunk-XZSTWKYB-CtrW-UDJ.js.map → chunk-XZSTWKYB-C3gBacLv.js.map} +1 -1
  59. package/lib/esm/{chunk-YBOYWFTD-BL_YEnkQ.js → chunk-YBOYWFTD-BCp20l87.js} +3 -3
  60. package/lib/esm/{chunk-YBOYWFTD-BL_YEnkQ.js.map → chunk-YBOYWFTD-BCp20l87.js.map} +1 -1
  61. package/lib/esm/classDiagram-VBA2DB6C-BS3cbjOM.js +31 -0
  62. package/lib/esm/{classDiagram-VBA2DB6C-BT1J_4pK.js.map → classDiagram-VBA2DB6C-BS3cbjOM.js.map} +1 -1
  63. package/lib/esm/classDiagram-v2-RAHNMMFH-ohjXfFJD.js +31 -0
  64. package/lib/esm/{classDiagram-v2-RAHNMMFH-CKSbfgdS.js.map → classDiagram-v2-RAHNMMFH-ohjXfFJD.js.map} +1 -1
  65. package/lib/esm/{cose-bilkent-S5V4N54A-BW3RwNAW.js → cose-bilkent-S5V4N54A-DY9L2G_R.js} +2 -2
  66. package/lib/esm/{cose-bilkent-S5V4N54A-BW3RwNAW.js.map → cose-bilkent-S5V4N54A-DY9L2G_R.js.map} +1 -1
  67. package/lib/esm/{cytoscape.esm-CVPUhzV_.js → cytoscape.esm-DHzL-Ipx.js} +2020 -2020
  68. package/lib/esm/{cytoscape.esm-CVPUhzV_.js.map → cytoscape.esm-DHzL-Ipx.js.map} +1 -1
  69. package/lib/esm/{dagre-D6grMmmr.js → dagre-Dx7aq3cc.js} +2 -2
  70. package/lib/esm/{dagre-D6grMmmr.js.map → dagre-Dx7aq3cc.js.map} +1 -1
  71. package/lib/esm/{dagre-KLK3FWXG-CT3GGyXF.js → dagre-KLK3FWXG-CWyKitWK.js} +9 -10
  72. package/lib/esm/{dagre-KLK3FWXG-CT3GGyXF.js.map → dagre-KLK3FWXG-CWyKitWK.js.map} +1 -1
  73. package/lib/esm/{diagram-E7M64L7V-RIQNonUo.js → diagram-E7M64L7V-DSV2K-9b.js} +7 -16
  74. package/lib/esm/{diagram-E7M64L7V-RIQNonUo.js.map → diagram-E7M64L7V-DSV2K-9b.js.map} +1 -1
  75. package/lib/esm/{diagram-IFDJBPK2-D1Vwi5RU.js → diagram-IFDJBPK2-CqMWKS_O.js} +5 -14
  76. package/lib/esm/{diagram-IFDJBPK2-D1Vwi5RU.js.map → diagram-IFDJBPK2-CqMWKS_O.js.map} +1 -1
  77. package/lib/esm/{diagram-P4PSJMXO-B84-dlrB.js → diagram-P4PSJMXO-ox4cwXgJ.js} +5 -14
  78. package/lib/esm/{diagram-P4PSJMXO-B84-dlrB.js.map → diagram-P4PSJMXO-ox4cwXgJ.js.map} +1 -1
  79. package/lib/esm/{erDiagram-INFDFZHY-DMLpjzc4.js → erDiagram-INFDFZHY-B88c7D4Z.js} +11 -12
  80. package/lib/esm/{erDiagram-INFDFZHY-DMLpjzc4.js.map → erDiagram-INFDFZHY-B88c7D4Z.js.map} +1 -1
  81. package/lib/esm/{flowDiagram-PKNHOUZH-Ce1-VA32.js → flowDiagram-PKNHOUZH-BVq4hnMW.js} +12 -13
  82. package/lib/esm/{flowDiagram-PKNHOUZH-Ce1-VA32.js.map → flowDiagram-PKNHOUZH-BVq4hnMW.js.map} +1 -1
  83. package/lib/esm/{ganttDiagram-A5KZAMGK-BAmfVCUC.js → ganttDiagram-A5KZAMGK-tCYQkLQX.js} +3 -3
  84. package/lib/esm/{ganttDiagram-A5KZAMGK-BAmfVCUC.js.map → ganttDiagram-A5KZAMGK-tCYQkLQX.js.map} +1 -1
  85. package/lib/esm/gitGraph-HDMCJU4V-DBI0f9ev.js +3 -0
  86. package/lib/esm/{gitGraphDiagram-K3NZZRJ6-CR62Izxa.js → gitGraphDiagram-K3NZZRJ6-CPKVXgAJ.js} +4 -13
  87. package/lib/esm/{gitGraphDiagram-K3NZZRJ6-CR62Izxa.js.map → gitGraphDiagram-K3NZZRJ6-CPKVXgAJ.js.map} +1 -1
  88. package/lib/esm/info-3K5VOQVL-BJiSm8n_.js +3 -0
  89. package/lib/esm/{infoDiagram-LFFYTUFH-CEaM6i7D.js → infoDiagram-LFFYTUFH-BplZy-tU.js} +4 -12
  90. package/lib/esm/{infoDiagram-LFFYTUFH-CEaM6i7D.js.map → infoDiagram-LFFYTUFH-BplZy-tU.js.map} +1 -1
  91. package/lib/esm/{ishikawaDiagram-PHBUUO56-DPmaeRZg.js → ishikawaDiagram-PHBUUO56-yNQge--f.js} +4 -5
  92. package/lib/esm/{ishikawaDiagram-PHBUUO56-DPmaeRZg.js.map → ishikawaDiagram-PHBUUO56-yNQge--f.js.map} +1 -1
  93. package/lib/esm/{journeyDiagram-4ABVD52K-CIkELGB9.js → journeyDiagram-4ABVD52K-CkAvnKcN.js} +5 -6
  94. package/lib/esm/{journeyDiagram-4ABVD52K-CIkELGB9.js.map → journeyDiagram-4ABVD52K-CkAvnKcN.js.map} +1 -1
  95. package/lib/esm/{kanban-definition-K7BYSVSG-CzRVcKjg.js → kanban-definition-K7BYSVSG-ftrqeDlg.js} +8 -9
  96. package/lib/esm/{kanban-definition-K7BYSVSG-CzRVcKjg.js.map → kanban-definition-K7BYSVSG-ftrqeDlg.js.map} +1 -1
  97. package/lib/esm/{katex-C5br0dxW.js → katex-BkGwaUG9.js} +53 -13
  98. package/lib/esm/katex-BkGwaUG9.js.map +1 -0
  99. package/lib/esm/{line-CNKkQ82B.js → line-DNPRFJdY.js} +2 -2
  100. package/lib/esm/{line-CNKkQ82B.js.map → line-DNPRFJdY.js.map} +1 -1
  101. package/lib/esm/{mermaid-parser.core-2VeDDCcu.js → mermaid-parser.core-BgwwyaN0.js} +16 -9
  102. package/lib/esm/{mermaid-parser.core-2VeDDCcu.js.map → mermaid-parser.core-BgwwyaN0.js.map} +1 -1
  103. package/lib/esm/{mermaid.core-CgCa7Y6s.js → mermaid.core-CA6pZPXB.js} +39 -40
  104. package/lib/esm/{mermaid.core-CgCa7Y6s.js.map → mermaid.core-CA6pZPXB.js.map} +1 -1
  105. package/lib/esm/{mindmap-definition-YRQLILUH-B7c3ueCh.js → mindmap-definition-YRQLILUH-C77nDmSd.js} +10 -11
  106. package/lib/esm/{mindmap-definition-YRQLILUH-B7c3ueCh.js.map → mindmap-definition-YRQLILUH-C77nDmSd.js.map} +1 -1
  107. package/lib/esm/packet-RMMSAZCW-tNKoQ_pX.js +3 -0
  108. package/lib/esm/pie-UPGHQEXC-BQsQOO3N.js +3 -0
  109. package/lib/esm/{pieDiagram-SKSYHLDU-BKf7D_uz.js → pieDiagram-SKSYHLDU-BRD3HGjq.js} +5 -14
  110. package/lib/esm/{pieDiagram-SKSYHLDU-BKf7D_uz.js.map → pieDiagram-SKSYHLDU-BRD3HGjq.js.map} +1 -1
  111. package/lib/esm/{quadrantDiagram-337W2JSQ-CZMVpQuF.js → quadrantDiagram-337W2JSQ-FM-tlL4R.js} +2 -2
  112. package/lib/esm/{quadrantDiagram-337W2JSQ-CZMVpQuF.js.map → quadrantDiagram-337W2JSQ-FM-tlL4R.js.map} +1 -1
  113. package/lib/esm/radar-KQ55EAFF-B4MRf1H7.js +3 -0
  114. package/lib/esm/{requirementDiagram-Z7DCOOCP-CXxLUHMG.js → requirementDiagram-Z7DCOOCP-BoUW2Gmh.js} +10 -11
  115. package/lib/esm/{requirementDiagram-Z7DCOOCP-CXxLUHMG.js.map → requirementDiagram-Z7DCOOCP-BoUW2Gmh.js.map} +1 -1
  116. package/lib/esm/{sankeyDiagram-WA2Y5GQK-BauuH8-1.js → sankeyDiagram-WA2Y5GQK-DrmMyi5l.js} +2 -2
  117. package/lib/esm/{sankeyDiagram-WA2Y5GQK-BauuH8-1.js.map → sankeyDiagram-WA2Y5GQK-DrmMyi5l.js.map} +1 -1
  118. package/lib/esm/{sequenceDiagram-2WXFIKYE-AWPjBivx.js → sequenceDiagram-2WXFIKYE-DhmiZE9h.js} +4 -4
  119. package/lib/esm/{sequenceDiagram-2WXFIKYE-AWPjBivx.js.map → sequenceDiagram-2WXFIKYE-DhmiZE9h.js.map} +1 -1
  120. package/lib/esm/{src-D6nEpsqe.js → src-C6x6EDga.js} +1083 -918
  121. package/lib/esm/src-C6x6EDga.js.map +1 -0
  122. package/lib/esm/{stateDiagram-RAJIS63D-CXgEabgV.js → stateDiagram-RAJIS63D-HWYHe-A9.js} +13 -14
  123. package/lib/esm/{stateDiagram-RAJIS63D-CXgEabgV.js.map → stateDiagram-RAJIS63D-HWYHe-A9.js.map} +1 -1
  124. package/lib/esm/stateDiagram-v2-FVOUBMTO-CJKbs50l.js +29 -0
  125. package/lib/esm/{stateDiagram-v2-FVOUBMTO-CahcZ8-y.js.map → stateDiagram-v2-FVOUBMTO-CJKbs50l.js.map} +1 -1
  126. package/lib/esm/{timeline-definition-YZTLITO2-Dk8ByuG8.js → timeline-definition-YZTLITO2-BSLcoqGe.js} +4 -4
  127. package/lib/esm/{timeline-definition-YZTLITO2-Dk8ByuG8.js.map → timeline-definition-YZTLITO2-BSLcoqGe.js.map} +1 -1
  128. package/lib/esm/treemap-KZPCXAKY-Delo462D.js +3 -0
  129. package/lib/esm/ui.js +5 -5
  130. package/lib/esm/{vennDiagram-LZ73GAT5-BcIblXz3.js → vennDiagram-LZ73GAT5-D3kOVhW6.js} +4 -5
  131. package/lib/esm/{vennDiagram-LZ73GAT5-BcIblXz3.js.map → vennDiagram-LZ73GAT5-D3kOVhW6.js.map} +1 -1
  132. package/lib/esm/{xychartDiagram-JWTSCODW-Csn18jU4.js → xychartDiagram-JWTSCODW-DSN5EjHR.js} +6 -7
  133. package/lib/esm/{xychartDiagram-JWTSCODW-Csn18jU4.js.map → xychartDiagram-JWTSCODW-DSN5EjHR.js.map} +1 -1
  134. package/lib/types/atomic/atoms/relative-time-text/RelativeTimeText.d.ts +8 -0
  135. package/lib/types/atomic/atoms/relative-time-text/RelativeTimeText.d.ts.map +1 -1
  136. package/lib/types/atomic/atoms/relative-time-text/__tests__/RelativeTimeText.test.d.ts +2 -0
  137. package/lib/types/atomic/atoms/relative-time-text/__tests__/RelativeTimeText.test.d.ts.map +1 -0
  138. package/lib/types/atomic/molecules/empty-state/__tests__/EmptyState.test.d.ts +2 -0
  139. package/lib/types/atomic/molecules/empty-state/__tests__/EmptyState.test.d.ts.map +1 -0
  140. package/lib/types/atomic/molecules/markdown/MarkdownRenderer.d.ts +2 -0
  141. package/lib/types/atomic/molecules/markdown/MarkdownRenderer.d.ts.map +1 -1
  142. package/lib/types/atomic/molecules/markdown/MarkdownRenderer.helpers.d.ts +44 -0
  143. package/lib/types/atomic/molecules/markdown/MarkdownRenderer.helpers.d.ts.map +1 -0
  144. package/lib/types/atomic/molecules/markdown/__tests__/MarkdownRenderer.test.d.ts +2 -0
  145. package/lib/types/atomic/molecules/markdown/__tests__/MarkdownRenderer.test.d.ts.map +1 -0
  146. package/lib/types/atomic/molecules/markdown/helpers/__tests__/assertNever.test.d.ts +2 -0
  147. package/lib/types/atomic/molecules/markdown/helpers/__tests__/assertNever.test.d.ts.map +1 -0
  148. package/lib/types/atomic/molecules/markdown/helpers/__tests__/escapeHtml.test.d.ts +2 -0
  149. package/lib/types/atomic/molecules/markdown/helpers/__tests__/escapeHtml.test.d.ts.map +1 -0
  150. package/lib/types/atomic/molecules/markdown/helpers/__tests__/isExternalLink.test.d.ts +2 -0
  151. package/lib/types/atomic/molecules/markdown/helpers/__tests__/isExternalLink.test.d.ts.map +1 -0
  152. package/lib/types/atomic/molecules/markdown/helpers/isExternalLink.d.ts +7 -0
  153. package/lib/types/atomic/molecules/markdown/helpers/isExternalLink.d.ts.map +1 -1
  154. package/lib/types/atomic/molecules/toast/ToastProvider.d.ts +4 -1
  155. package/lib/types/atomic/molecules/toast/ToastProvider.d.ts.map +1 -1
  156. package/lib/types/atomic/molecules/toast/__tests__/ToastProvider.test.d.ts +2 -0
  157. package/lib/types/atomic/molecules/toast/__tests__/ToastProvider.test.d.ts.map +1 -0
  158. package/lib/types/backoffice/atoms/copyable_text/CopyableText.d.ts.map +1 -1
  159. package/lib/types/backoffice/atoms/skeleton/Skeleton.d.ts.map +1 -1
  160. package/lib/types/backoffice/atoms/skeleton/Skeleton.helpers.d.ts +8 -0
  161. package/lib/types/backoffice/atoms/skeleton/Skeleton.helpers.d.ts.map +1 -0
  162. package/lib/types/backoffice/atoms/skeleton/__tests__/Skeleton.helpers.test.d.ts +2 -0
  163. package/lib/types/backoffice/atoms/skeleton/__tests__/Skeleton.helpers.test.d.ts.map +1 -0
  164. package/lib/types/backoffice/molecules/backoffice_json_viewer/BackofficeJsonViewer.d.ts.map +1 -1
  165. package/lib/types/backoffice/molecules/backoffice_json_viewer/LazyBackofficeJsonViewer.d.ts +3 -0
  166. package/lib/types/backoffice/molecules/backoffice_json_viewer/LazyBackofficeJsonViewer.d.ts.map +1 -1
  167. package/lib/types/backoffice/molecules/backoffice_json_viewer/__tests__/LazyBackofficeJsonViewer.helpers.test.d.ts +2 -0
  168. package/lib/types/backoffice/molecules/backoffice_json_viewer/__tests__/LazyBackofficeJsonViewer.helpers.test.d.ts.map +1 -0
  169. package/lib/types/backoffice/organisms/backoffice_virtualized_connection_table/BackofficeVirtualizedConnectionTable.d.ts.map +1 -1
  170. package/lib/types/backoffice/organisms/backoffice_virtualized_connection_table/__tests__/helpers.test.d.ts +2 -0
  171. package/lib/types/backoffice/organisms/backoffice_virtualized_connection_table/__tests__/helpers.test.d.ts.map +1 -0
  172. package/lib/types/backoffice/organisms/backoffice_virtualized_connection_table/helpers.d.ts +5 -0
  173. package/lib/types/backoffice/organisms/backoffice_virtualized_connection_table/helpers.d.ts.map +1 -0
  174. package/lib/types/backoffice/shared/__tests__/copyWithExecCommand.test.d.ts +2 -0
  175. package/lib/types/backoffice/shared/__tests__/copyWithExecCommand.test.d.ts.map +1 -0
  176. package/lib/types/backoffice/shared/copyWithExecCommand.d.ts +2 -0
  177. package/lib/types/backoffice/shared/copyWithExecCommand.d.ts.map +1 -0
  178. package/lib/types/components/charts/MetricHistoryChart.d.ts +30 -0
  179. package/lib/types/components/charts/MetricHistoryChart.d.ts.map +1 -0
  180. package/lib/types/components/charts/TimeSeriesLineChart.d.ts +4 -0
  181. package/lib/types/components/charts/TimeSeriesLineChart.d.ts.map +1 -1
  182. package/lib/types/components/charts/__tests__/MetricHistoryChart.helpers.test.d.ts +2 -0
  183. package/lib/types/components/charts/__tests__/MetricHistoryChart.helpers.test.d.ts.map +1 -0
  184. package/lib/types/components/charts/__tests__/TimeSeriesLineChart.helpers.test.d.ts +2 -0
  185. package/lib/types/components/charts/__tests__/TimeSeriesLineChart.helpers.test.d.ts.map +1 -0
  186. package/lib/types/components/charts/metricHistoryChart.css.d.ts +8 -0
  187. package/lib/types/components/charts/metricHistoryChart.css.d.ts.map +1 -0
  188. package/lib/types/components/data-table/DataTable.d.ts +5 -1
  189. package/lib/types/components/data-table/DataTable.d.ts.map +1 -1
  190. package/lib/types/components/data-table/VirtualizedConnectionTable.d.ts +7 -1
  191. package/lib/types/components/data-table/VirtualizedConnectionTable.d.ts.map +1 -1
  192. package/lib/types/components/data-table/__tests__/DataTable.helpers.test.d.ts +2 -0
  193. package/lib/types/components/data-table/__tests__/DataTable.helpers.test.d.ts.map +1 -0
  194. package/lib/types/components/data-table/__tests__/VirtualizedConnectionTable.helpers.test.d.ts +2 -0
  195. package/lib/types/components/data-table/__tests__/VirtualizedConnectionTable.helpers.test.d.ts.map +1 -0
  196. package/lib/types/components/data-table/__tests__/tableBreakpoints.test.d.ts +2 -0
  197. package/lib/types/components/data-table/__tests__/tableBreakpoints.test.d.ts.map +1 -0
  198. package/lib/types/components/data-table/tableBreakpoints.d.ts +8 -0
  199. package/lib/types/components/data-table/tableBreakpoints.d.ts.map +1 -1
  200. package/lib/types/components/layout/PageShell.d.ts +5 -0
  201. package/lib/types/components/layout/PageShell.d.ts.map +1 -1
  202. package/lib/types/components/layout/__tests__/PageShell.test.d.ts +2 -0
  203. package/lib/types/components/layout/__tests__/PageShell.test.d.ts.map +1 -0
  204. package/lib/types/components/tile/__tests__/InfoTile.test.d.ts +2 -0
  205. package/lib/types/components/tile/__tests__/InfoTile.test.d.ts.map +1 -0
  206. package/lib/types/index.d.ts +1 -0
  207. package/lib/types/index.d.ts.map +1 -1
  208. package/lib/types/shared/__tests__/agent-formatting.test.d.ts +2 -0
  209. package/lib/types/shared/__tests__/agent-formatting.test.d.ts.map +1 -0
  210. package/lib/types/theme/ThemeProvider.d.ts +5 -0
  211. package/lib/types/theme/ThemeProvider.d.ts.map +1 -1
  212. package/lib/types/theme/__tests__/ThemeProvider.test.d.ts +2 -0
  213. package/lib/types/theme/__tests__/ThemeProvider.test.d.ts.map +1 -0
  214. package/lib/types/theme/__tests__/tools.test.d.ts +2 -0
  215. package/lib/types/theme/__tests__/tools.test.d.ts.map +1 -0
  216. package/package.json +10 -10
  217. package/lib/esm/BackofficeJsonViewerAsync-Czd9VhUz.js +0 -10
  218. package/lib/esm/MarkdownRenderer-RgELUK6t.js.map +0 -1
  219. package/lib/esm/architecture-PBZL5I3N-BF1f82qm.js +0 -3
  220. package/lib/esm/classDiagram-VBA2DB6C-BT1J_4pK.js +0 -32
  221. package/lib/esm/classDiagram-v2-RAHNMMFH-CKSbfgdS.js +0 -32
  222. package/lib/esm/gitGraph-HDMCJU4V-TM85Whmp.js +0 -3
  223. package/lib/esm/info-3K5VOQVL-CY50BvVz.js +0 -3
  224. package/lib/esm/katex-C5br0dxW.js.map +0 -1
  225. package/lib/esm/packet-RMMSAZCW-DFGYBR05.js +0 -3
  226. package/lib/esm/pie-UPGHQEXC-CNCiNoc-.js +0 -3
  227. package/lib/esm/radar-KQ55EAFF-CHJYxvxr.js +0 -3
  228. package/lib/esm/src-D6nEpsqe.js.map +0 -1
  229. package/lib/esm/stateDiagram-v2-FVOUBMTO-CahcZ8-y.js +0 -30
  230. package/lib/esm/treemap-KZPCXAKY-CjhytAJ2.js +0 -3
@@ -1 +1 @@
1
- {"version":3,"file":"diagram-E7M64L7V-RIQNonUo.js","names":["formatDecimal","formatRounded","formatPrefixAuto","identity","formatGroup","formatNumerals","formatTypes","formatTrim","exponent","formatLocale","node_count","node_each","node_eachAfter","node_eachBefore","node_find","node_sum","node_sort","node_path","node_ancestors","node_descendants","node_leaves","node_links","node_iterator","squarify","roundNode","constant","scaleOrdinal","treemap","select"],"sources":["../../../../node_modules/d3/node_modules/d3-format/src/formatDecimal.js","../../../../node_modules/d3/node_modules/d3-format/src/exponent.js","../../../../node_modules/d3/node_modules/d3-format/src/formatGroup.js","../../../../node_modules/d3/node_modules/d3-format/src/formatNumerals.js","../../../../node_modules/d3/node_modules/d3-format/src/formatSpecifier.js","../../../../node_modules/d3/node_modules/d3-format/src/formatTrim.js","../../../../node_modules/d3/node_modules/d3-format/src/formatPrefixAuto.js","../../../../node_modules/d3/node_modules/d3-format/src/formatRounded.js","../../../../node_modules/d3/node_modules/d3-format/src/formatTypes.js","../../../../node_modules/d3/node_modules/d3-format/src/identity.js","../../../../node_modules/d3/node_modules/d3-format/src/locale.js","../../../../node_modules/d3/node_modules/d3-format/src/defaultLocale.js","../../../../node_modules/d3-hierarchy/src/hierarchy/count.js","../../../../node_modules/d3-hierarchy/src/hierarchy/each.js","../../../../node_modules/d3-hierarchy/src/hierarchy/eachBefore.js","../../../../node_modules/d3-hierarchy/src/hierarchy/eachAfter.js","../../../../node_modules/d3-hierarchy/src/hierarchy/find.js","../../../../node_modules/d3-hierarchy/src/hierarchy/sum.js","../../../../node_modules/d3-hierarchy/src/hierarchy/sort.js","../../../../node_modules/d3-hierarchy/src/hierarchy/path.js","../../../../node_modules/d3-hierarchy/src/hierarchy/ancestors.js","../../../../node_modules/d3-hierarchy/src/hierarchy/descendants.js","../../../../node_modules/d3-hierarchy/src/hierarchy/leaves.js","../../../../node_modules/d3-hierarchy/src/hierarchy/links.js","../../../../node_modules/d3-hierarchy/src/hierarchy/iterator.js","../../../../node_modules/d3-hierarchy/src/hierarchy/index.js","../../../../node_modules/d3-hierarchy/src/accessors.js","../../../../node_modules/d3-hierarchy/src/constant.js","../../../../node_modules/d3-hierarchy/src/treemap/round.js","../../../../node_modules/d3-hierarchy/src/treemap/dice.js","../../../../node_modules/d3-hierarchy/src/treemap/slice.js","../../../../node_modules/d3-hierarchy/src/treemap/squarify.js","../../../../node_modules/d3-hierarchy/src/treemap/index.js","../../../../node_modules/mermaid/dist/chunks/mermaid.core/diagram-E7M64L7V.mjs"],"sourcesContent":["export default function(x) {\n return Math.abs(x = Math.round(x)) >= 1e21\n ? x.toLocaleString(\"en\").replace(/,/g, \"\")\n : x.toString(10);\n}\n\n// Computes the decimal coefficient and exponent of the specified number x with\n// significant digits p, where x is positive and p is in [1, 21] or undefined.\n// For example, formatDecimalParts(1.23) returns [\"123\", 0].\nexport function formatDecimalParts(x, p) {\n if (!isFinite(x) || x === 0) return null; // NaN, ±Infinity, ±0\n var i = (x = p ? x.toExponential(p - 1) : x.toExponential()).indexOf(\"e\"), coefficient = x.slice(0, i);\n\n // The string returned by toExponential either has the form \\d\\.\\d+e[-+]\\d+\n // (e.g., 1.2e+3) or the form \\de[-+]\\d+ (e.g., 1e+3).\n return [\n coefficient.length > 1 ? coefficient[0] + coefficient.slice(2) : coefficient,\n +x.slice(i + 1)\n ];\n}\n","import {formatDecimalParts} from \"./formatDecimal.js\";\n\nexport default function(x) {\n return x = formatDecimalParts(Math.abs(x)), x ? x[1] : NaN;\n}\n","export default function(grouping, thousands) {\n return function(value, width) {\n var i = value.length,\n t = [],\n j = 0,\n g = grouping[0],\n length = 0;\n\n while (i > 0 && g > 0) {\n if (length + g + 1 > width) g = Math.max(1, width - length);\n t.push(value.substring(i -= g, i + g));\n if ((length += g + 1) > width) break;\n g = grouping[j = (j + 1) % grouping.length];\n }\n\n return t.reverse().join(thousands);\n };\n}\n","export default function(numerals) {\n return function(value) {\n return value.replace(/[0-9]/g, function(i) {\n return numerals[+i];\n });\n };\n}\n","// [[fill]align][sign][symbol][0][width][,][.precision][~][type]\nvar re = /^(?:(.)?([<>=^]))?([+\\-( ])?([$#])?(0)?(\\d+)?(,)?(\\.\\d+)?(~)?([a-z%])?$/i;\n\nexport default function formatSpecifier(specifier) {\n if (!(match = re.exec(specifier))) throw new Error(\"invalid format: \" + specifier);\n var match;\n return new FormatSpecifier({\n fill: match[1],\n align: match[2],\n sign: match[3],\n symbol: match[4],\n zero: match[5],\n width: match[6],\n comma: match[7],\n precision: match[8] && match[8].slice(1),\n trim: match[9],\n type: match[10]\n });\n}\n\nformatSpecifier.prototype = FormatSpecifier.prototype; // instanceof\n\nexport function FormatSpecifier(specifier) {\n this.fill = specifier.fill === undefined ? \" \" : specifier.fill + \"\";\n this.align = specifier.align === undefined ? \">\" : specifier.align + \"\";\n this.sign = specifier.sign === undefined ? \"-\" : specifier.sign + \"\";\n this.symbol = specifier.symbol === undefined ? \"\" : specifier.symbol + \"\";\n this.zero = !!specifier.zero;\n this.width = specifier.width === undefined ? undefined : +specifier.width;\n this.comma = !!specifier.comma;\n this.precision = specifier.precision === undefined ? undefined : +specifier.precision;\n this.trim = !!specifier.trim;\n this.type = specifier.type === undefined ? \"\" : specifier.type + \"\";\n}\n\nFormatSpecifier.prototype.toString = function() {\n return this.fill\n + this.align\n + this.sign\n + this.symbol\n + (this.zero ? \"0\" : \"\")\n + (this.width === undefined ? \"\" : Math.max(1, this.width | 0))\n + (this.comma ? \",\" : \"\")\n + (this.precision === undefined ? \"\" : \".\" + Math.max(0, this.precision | 0))\n + (this.trim ? \"~\" : \"\")\n + this.type;\n};\n","// Trims insignificant zeros, e.g., replaces 1.2000k with 1.2k.\nexport default function(s) {\n out: for (var n = s.length, i = 1, i0 = -1, i1; i < n; ++i) {\n switch (s[i]) {\n case \".\": i0 = i1 = i; break;\n case \"0\": if (i0 === 0) i0 = i; i1 = i; break;\n default: if (!+s[i]) break out; if (i0 > 0) i0 = 0; break;\n }\n }\n return i0 > 0 ? s.slice(0, i0) + s.slice(i1 + 1) : s;\n}\n","import {formatDecimalParts} from \"./formatDecimal.js\";\n\nexport var prefixExponent;\n\nexport default function(x, p) {\n var d = formatDecimalParts(x, p);\n if (!d) return prefixExponent = undefined, x.toPrecision(p);\n var coefficient = d[0],\n exponent = d[1],\n i = exponent - (prefixExponent = Math.max(-8, Math.min(8, Math.floor(exponent / 3))) * 3) + 1,\n n = coefficient.length;\n return i === n ? coefficient\n : i > n ? coefficient + new Array(i - n + 1).join(\"0\")\n : i > 0 ? coefficient.slice(0, i) + \".\" + coefficient.slice(i)\n : \"0.\" + new Array(1 - i).join(\"0\") + formatDecimalParts(x, Math.max(0, p + i - 1))[0]; // less than 1y!\n}\n","import {formatDecimalParts} from \"./formatDecimal.js\";\n\nexport default function(x, p) {\n var d = formatDecimalParts(x, p);\n if (!d) return x + \"\";\n var coefficient = d[0],\n exponent = d[1];\n return exponent < 0 ? \"0.\" + new Array(-exponent).join(\"0\") + coefficient\n : coefficient.length > exponent + 1 ? coefficient.slice(0, exponent + 1) + \".\" + coefficient.slice(exponent + 1)\n : coefficient + new Array(exponent - coefficient.length + 2).join(\"0\");\n}\n","import formatDecimal from \"./formatDecimal.js\";\nimport formatPrefixAuto from \"./formatPrefixAuto.js\";\nimport formatRounded from \"./formatRounded.js\";\n\nexport default {\n \"%\": (x, p) => (x * 100).toFixed(p),\n \"b\": (x) => Math.round(x).toString(2),\n \"c\": (x) => x + \"\",\n \"d\": formatDecimal,\n \"e\": (x, p) => x.toExponential(p),\n \"f\": (x, p) => x.toFixed(p),\n \"g\": (x, p) => x.toPrecision(p),\n \"o\": (x) => Math.round(x).toString(8),\n \"p\": (x, p) => formatRounded(x * 100, p),\n \"r\": formatRounded,\n \"s\": formatPrefixAuto,\n \"X\": (x) => Math.round(x).toString(16).toUpperCase(),\n \"x\": (x) => Math.round(x).toString(16)\n};\n","export default function(x) {\n return x;\n}\n","import exponent from \"./exponent.js\";\nimport formatGroup from \"./formatGroup.js\";\nimport formatNumerals from \"./formatNumerals.js\";\nimport formatSpecifier from \"./formatSpecifier.js\";\nimport formatTrim from \"./formatTrim.js\";\nimport formatTypes from \"./formatTypes.js\";\nimport {prefixExponent} from \"./formatPrefixAuto.js\";\nimport identity from \"./identity.js\";\n\nvar map = Array.prototype.map,\n prefixes = [\"y\",\"z\",\"a\",\"f\",\"p\",\"n\",\"µ\",\"m\",\"\",\"k\",\"M\",\"G\",\"T\",\"P\",\"E\",\"Z\",\"Y\"];\n\nexport default function(locale) {\n var group = locale.grouping === undefined || locale.thousands === undefined ? identity : formatGroup(map.call(locale.grouping, Number), locale.thousands + \"\"),\n currencyPrefix = locale.currency === undefined ? \"\" : locale.currency[0] + \"\",\n currencySuffix = locale.currency === undefined ? \"\" : locale.currency[1] + \"\",\n decimal = locale.decimal === undefined ? \".\" : locale.decimal + \"\",\n numerals = locale.numerals === undefined ? identity : formatNumerals(map.call(locale.numerals, String)),\n percent = locale.percent === undefined ? \"%\" : locale.percent + \"\",\n minus = locale.minus === undefined ? \"−\" : locale.minus + \"\",\n nan = locale.nan === undefined ? \"NaN\" : locale.nan + \"\";\n\n function newFormat(specifier, options) {\n specifier = formatSpecifier(specifier);\n\n var fill = specifier.fill,\n align = specifier.align,\n sign = specifier.sign,\n symbol = specifier.symbol,\n zero = specifier.zero,\n width = specifier.width,\n comma = specifier.comma,\n precision = specifier.precision,\n trim = specifier.trim,\n type = specifier.type;\n\n // The \"n\" type is an alias for \",g\".\n if (type === \"n\") comma = true, type = \"g\";\n\n // The \"\" type, and any invalid type, is an alias for \".12~g\".\n else if (!formatTypes[type]) precision === undefined && (precision = 12), trim = true, type = \"g\";\n\n // If zero fill is specified, padding goes after sign and before digits.\n if (zero || (fill === \"0\" && align === \"=\")) zero = true, fill = \"0\", align = \"=\";\n\n // Compute the prefix and suffix.\n // For SI-prefix, the suffix is lazily computed.\n var prefix = (options && options.prefix !== undefined ? options.prefix : \"\") + (symbol === \"$\" ? currencyPrefix : symbol === \"#\" && /[boxX]/.test(type) ? \"0\" + type.toLowerCase() : \"\"),\n suffix = (symbol === \"$\" ? currencySuffix : /[%p]/.test(type) ? percent : \"\") + (options && options.suffix !== undefined ? options.suffix : \"\");\n\n // What format function should we use?\n // Is this an integer type?\n // Can this type generate exponential notation?\n var formatType = formatTypes[type],\n maybeSuffix = /[defgprs%]/.test(type);\n\n // Set the default precision if not specified,\n // or clamp the specified precision to the supported range.\n // For significant precision, it must be in [1, 21].\n // For fixed precision, it must be in [0, 20].\n precision = precision === undefined ? 6\n : /[gprs]/.test(type) ? Math.max(1, Math.min(21, precision))\n : Math.max(0, Math.min(20, precision));\n\n function format(value) {\n var valuePrefix = prefix,\n valueSuffix = suffix,\n i, n, c;\n\n if (type === \"c\") {\n valueSuffix = formatType(value) + valueSuffix;\n value = \"\";\n } else {\n value = +value;\n\n // Determine the sign. -0 is not less than 0, but 1 / -0 is!\n var valueNegative = value < 0 || 1 / value < 0;\n\n // Perform the initial formatting.\n value = isNaN(value) ? nan : formatType(Math.abs(value), precision);\n\n // Trim insignificant zeros.\n if (trim) value = formatTrim(value);\n\n // If a negative value rounds to zero after formatting, and no explicit positive sign is requested, hide the sign.\n if (valueNegative && +value === 0 && sign !== \"+\") valueNegative = false;\n\n // Compute the prefix and suffix.\n valuePrefix = (valueNegative ? (sign === \"(\" ? sign : minus) : sign === \"-\" || sign === \"(\" ? \"\" : sign) + valuePrefix;\n valueSuffix = (type === \"s\" && !isNaN(value) && prefixExponent !== undefined ? prefixes[8 + prefixExponent / 3] : \"\") + valueSuffix + (valueNegative && sign === \"(\" ? \")\" : \"\");\n\n // Break the formatted value into the integer “value” part that can be\n // grouped, and fractional or exponential “suffix” part that is not.\n if (maybeSuffix) {\n i = -1, n = value.length;\n while (++i < n) {\n if (c = value.charCodeAt(i), 48 > c || c > 57) {\n valueSuffix = (c === 46 ? decimal + value.slice(i + 1) : value.slice(i)) + valueSuffix;\n value = value.slice(0, i);\n break;\n }\n }\n }\n }\n\n // If the fill character is not \"0\", grouping is applied before padding.\n if (comma && !zero) value = group(value, Infinity);\n\n // Compute the padding.\n var length = valuePrefix.length + value.length + valueSuffix.length,\n padding = length < width ? new Array(width - length + 1).join(fill) : \"\";\n\n // If the fill character is \"0\", grouping is applied after padding.\n if (comma && zero) value = group(padding + value, padding.length ? width - valueSuffix.length : Infinity), padding = \"\";\n\n // Reconstruct the final output based on the desired alignment.\n switch (align) {\n case \"<\": value = valuePrefix + value + valueSuffix + padding; break;\n case \"=\": value = valuePrefix + padding + value + valueSuffix; break;\n case \"^\": value = padding.slice(0, length = padding.length >> 1) + valuePrefix + value + valueSuffix + padding.slice(length); break;\n default: value = padding + valuePrefix + value + valueSuffix; break;\n }\n\n return numerals(value);\n }\n\n format.toString = function() {\n return specifier + \"\";\n };\n\n return format;\n }\n\n function formatPrefix(specifier, value) {\n var e = Math.max(-8, Math.min(8, Math.floor(exponent(value) / 3))) * 3,\n k = Math.pow(10, -e),\n f = newFormat((specifier = formatSpecifier(specifier), specifier.type = \"f\", specifier), {suffix: prefixes[8 + e / 3]});\n return function(value) {\n return f(k * value);\n };\n }\n\n return {\n format: newFormat,\n formatPrefix: formatPrefix\n };\n}\n","import formatLocale from \"./locale.js\";\n\nvar locale;\nexport var format;\nexport var formatPrefix;\n\ndefaultLocale({\n thousands: \",\",\n grouping: [3],\n currency: [\"$\", \"\"]\n});\n\nexport default function defaultLocale(definition) {\n locale = formatLocale(definition);\n format = locale.format;\n formatPrefix = locale.formatPrefix;\n return locale;\n}\n","function count(node) {\n var sum = 0,\n children = node.children,\n i = children && children.length;\n if (!i) sum = 1;\n else while (--i >= 0) sum += children[i].value;\n node.value = sum;\n}\n\nexport default function() {\n return this.eachAfter(count);\n}\n","export default function(callback, that) {\n let index = -1;\n for (const node of this) {\n callback.call(that, node, ++index, this);\n }\n return this;\n}\n","export default function(callback, that) {\n var node = this, nodes = [node], children, i, index = -1;\n while (node = nodes.pop()) {\n callback.call(that, node, ++index, this);\n if (children = node.children) {\n for (i = children.length - 1; i >= 0; --i) {\n nodes.push(children[i]);\n }\n }\n }\n return this;\n}\n","export default function(callback, that) {\n var node = this, nodes = [node], next = [], children, i, n, index = -1;\n while (node = nodes.pop()) {\n next.push(node);\n if (children = node.children) {\n for (i = 0, n = children.length; i < n; ++i) {\n nodes.push(children[i]);\n }\n }\n }\n while (node = next.pop()) {\n callback.call(that, node, ++index, this);\n }\n return this;\n}\n","export default function(callback, that) {\n let index = -1;\n for (const node of this) {\n if (callback.call(that, node, ++index, this)) {\n return node;\n }\n }\n}\n","export default function(value) {\n return this.eachAfter(function(node) {\n var sum = +value(node.data) || 0,\n children = node.children,\n i = children && children.length;\n while (--i >= 0) sum += children[i].value;\n node.value = sum;\n });\n}\n","export default function(compare) {\n return this.eachBefore(function(node) {\n if (node.children) {\n node.children.sort(compare);\n }\n });\n}\n","export default function(end) {\n var start = this,\n ancestor = leastCommonAncestor(start, end),\n nodes = [start];\n while (start !== ancestor) {\n start = start.parent;\n nodes.push(start);\n }\n var k = nodes.length;\n while (end !== ancestor) {\n nodes.splice(k, 0, end);\n end = end.parent;\n }\n return nodes;\n}\n\nfunction leastCommonAncestor(a, b) {\n if (a === b) return a;\n var aNodes = a.ancestors(),\n bNodes = b.ancestors(),\n c = null;\n a = aNodes.pop();\n b = bNodes.pop();\n while (a === b) {\n c = a;\n a = aNodes.pop();\n b = bNodes.pop();\n }\n return c;\n}\n","export default function() {\n var node = this, nodes = [node];\n while (node = node.parent) {\n nodes.push(node);\n }\n return nodes;\n}\n","export default function() {\n return Array.from(this);\n}\n","export default function() {\n var leaves = [];\n this.eachBefore(function(node) {\n if (!node.children) {\n leaves.push(node);\n }\n });\n return leaves;\n}\n","export default function() {\n var root = this, links = [];\n root.each(function(node) {\n if (node !== root) { // Don’t include the root’s parent, if any.\n links.push({source: node.parent, target: node});\n }\n });\n return links;\n}\n","export default function*() {\n var node = this, current, next = [node], children, i, n;\n do {\n current = next.reverse(), next = [];\n while (node = current.pop()) {\n yield node;\n if (children = node.children) {\n for (i = 0, n = children.length; i < n; ++i) {\n next.push(children[i]);\n }\n }\n }\n } while (next.length);\n}\n","import node_count from \"./count.js\";\nimport node_each from \"./each.js\";\nimport node_eachBefore from \"./eachBefore.js\";\nimport node_eachAfter from \"./eachAfter.js\";\nimport node_find from \"./find.js\";\nimport node_sum from \"./sum.js\";\nimport node_sort from \"./sort.js\";\nimport node_path from \"./path.js\";\nimport node_ancestors from \"./ancestors.js\";\nimport node_descendants from \"./descendants.js\";\nimport node_leaves from \"./leaves.js\";\nimport node_links from \"./links.js\";\nimport node_iterator from \"./iterator.js\";\n\nexport default function hierarchy(data, children) {\n if (data instanceof Map) {\n data = [undefined, data];\n if (children === undefined) children = mapChildren;\n } else if (children === undefined) {\n children = objectChildren;\n }\n\n var root = new Node(data),\n node,\n nodes = [root],\n child,\n childs,\n i,\n n;\n\n while (node = nodes.pop()) {\n if ((childs = children(node.data)) && (n = (childs = Array.from(childs)).length)) {\n node.children = childs;\n for (i = n - 1; i >= 0; --i) {\n nodes.push(child = childs[i] = new Node(childs[i]));\n child.parent = node;\n child.depth = node.depth + 1;\n }\n }\n }\n\n return root.eachBefore(computeHeight);\n}\n\nfunction node_copy() {\n return hierarchy(this).eachBefore(copyData);\n}\n\nfunction objectChildren(d) {\n return d.children;\n}\n\nfunction mapChildren(d) {\n return Array.isArray(d) ? d[1] : null;\n}\n\nfunction copyData(node) {\n if (node.data.value !== undefined) node.value = node.data.value;\n node.data = node.data.data;\n}\n\nexport function computeHeight(node) {\n var height = 0;\n do node.height = height;\n while ((node = node.parent) && (node.height < ++height));\n}\n\nexport function Node(data) {\n this.data = data;\n this.depth =\n this.height = 0;\n this.parent = null;\n}\n\nNode.prototype = hierarchy.prototype = {\n constructor: Node,\n count: node_count,\n each: node_each,\n eachAfter: node_eachAfter,\n eachBefore: node_eachBefore,\n find: node_find,\n sum: node_sum,\n sort: node_sort,\n path: node_path,\n ancestors: node_ancestors,\n descendants: node_descendants,\n leaves: node_leaves,\n links: node_links,\n copy: node_copy,\n [Symbol.iterator]: node_iterator\n};\n","export function optional(f) {\n return f == null ? null : required(f);\n}\n\nexport function required(f) {\n if (typeof f !== \"function\") throw new Error;\n return f;\n}\n","export function constantZero() {\n return 0;\n}\n\nexport default function(x) {\n return function() {\n return x;\n };\n}\n","export default function(node) {\n node.x0 = Math.round(node.x0);\n node.y0 = Math.round(node.y0);\n node.x1 = Math.round(node.x1);\n node.y1 = Math.round(node.y1);\n}\n","export default function(parent, x0, y0, x1, y1) {\n var nodes = parent.children,\n node,\n i = -1,\n n = nodes.length,\n k = parent.value && (x1 - x0) / parent.value;\n\n while (++i < n) {\n node = nodes[i], node.y0 = y0, node.y1 = y1;\n node.x0 = x0, node.x1 = x0 += node.value * k;\n }\n}\n","export default function(parent, x0, y0, x1, y1) {\n var nodes = parent.children,\n node,\n i = -1,\n n = nodes.length,\n k = parent.value && (y1 - y0) / parent.value;\n\n while (++i < n) {\n node = nodes[i], node.x0 = x0, node.x1 = x1;\n node.y0 = y0, node.y1 = y0 += node.value * k;\n }\n}\n","import treemapDice from \"./dice.js\";\nimport treemapSlice from \"./slice.js\";\n\nexport var phi = (1 + Math.sqrt(5)) / 2;\n\nexport function squarifyRatio(ratio, parent, x0, y0, x1, y1) {\n var rows = [],\n nodes = parent.children,\n row,\n nodeValue,\n i0 = 0,\n i1 = 0,\n n = nodes.length,\n dx, dy,\n value = parent.value,\n sumValue,\n minValue,\n maxValue,\n newRatio,\n minRatio,\n alpha,\n beta;\n\n while (i0 < n) {\n dx = x1 - x0, dy = y1 - y0;\n\n // Find the next non-empty node.\n do sumValue = nodes[i1++].value; while (!sumValue && i1 < n);\n minValue = maxValue = sumValue;\n alpha = Math.max(dy / dx, dx / dy) / (value * ratio);\n beta = sumValue * sumValue * alpha;\n minRatio = Math.max(maxValue / beta, beta / minValue);\n\n // Keep adding nodes while the aspect ratio maintains or improves.\n for (; i1 < n; ++i1) {\n sumValue += nodeValue = nodes[i1].value;\n if (nodeValue < minValue) minValue = nodeValue;\n if (nodeValue > maxValue) maxValue = nodeValue;\n beta = sumValue * sumValue * alpha;\n newRatio = Math.max(maxValue / beta, beta / minValue);\n if (newRatio > minRatio) { sumValue -= nodeValue; break; }\n minRatio = newRatio;\n }\n\n // Position and record the row orientation.\n rows.push(row = {value: sumValue, dice: dx < dy, children: nodes.slice(i0, i1)});\n if (row.dice) treemapDice(row, x0, y0, x1, value ? y0 += dy * sumValue / value : y1);\n else treemapSlice(row, x0, y0, value ? x0 += dx * sumValue / value : x1, y1);\n value -= sumValue, i0 = i1;\n }\n\n return rows;\n}\n\nexport default (function custom(ratio) {\n\n function squarify(parent, x0, y0, x1, y1) {\n squarifyRatio(ratio, parent, x0, y0, x1, y1);\n }\n\n squarify.ratio = function(x) {\n return custom((x = +x) > 1 ? x : 1);\n };\n\n return squarify;\n})(phi);\n","import roundNode from \"./round.js\";\nimport squarify from \"./squarify.js\";\nimport {required} from \"../accessors.js\";\nimport constant, {constantZero} from \"../constant.js\";\n\nexport default function() {\n var tile = squarify,\n round = false,\n dx = 1,\n dy = 1,\n paddingStack = [0],\n paddingInner = constantZero,\n paddingTop = constantZero,\n paddingRight = constantZero,\n paddingBottom = constantZero,\n paddingLeft = constantZero;\n\n function treemap(root) {\n root.x0 =\n root.y0 = 0;\n root.x1 = dx;\n root.y1 = dy;\n root.eachBefore(positionNode);\n paddingStack = [0];\n if (round) root.eachBefore(roundNode);\n return root;\n }\n\n function positionNode(node) {\n var p = paddingStack[node.depth],\n x0 = node.x0 + p,\n y0 = node.y0 + p,\n x1 = node.x1 - p,\n y1 = node.y1 - p;\n if (x1 < x0) x0 = x1 = (x0 + x1) / 2;\n if (y1 < y0) y0 = y1 = (y0 + y1) / 2;\n node.x0 = x0;\n node.y0 = y0;\n node.x1 = x1;\n node.y1 = y1;\n if (node.children) {\n p = paddingStack[node.depth + 1] = paddingInner(node) / 2;\n x0 += paddingLeft(node) - p;\n y0 += paddingTop(node) - p;\n x1 -= paddingRight(node) - p;\n y1 -= paddingBottom(node) - p;\n if (x1 < x0) x0 = x1 = (x0 + x1) / 2;\n if (y1 < y0) y0 = y1 = (y0 + y1) / 2;\n tile(node, x0, y0, x1, y1);\n }\n }\n\n treemap.round = function(x) {\n return arguments.length ? (round = !!x, treemap) : round;\n };\n\n treemap.size = function(x) {\n return arguments.length ? (dx = +x[0], dy = +x[1], treemap) : [dx, dy];\n };\n\n treemap.tile = function(x) {\n return arguments.length ? (tile = required(x), treemap) : tile;\n };\n\n treemap.padding = function(x) {\n return arguments.length ? treemap.paddingInner(x).paddingOuter(x) : treemap.paddingInner();\n };\n\n treemap.paddingInner = function(x) {\n return arguments.length ? (paddingInner = typeof x === \"function\" ? x : constant(+x), treemap) : paddingInner;\n };\n\n treemap.paddingOuter = function(x) {\n return arguments.length ? treemap.paddingTop(x).paddingRight(x).paddingBottom(x).paddingLeft(x) : treemap.paddingTop();\n };\n\n treemap.paddingTop = function(x) {\n return arguments.length ? (paddingTop = typeof x === \"function\" ? x : constant(+x), treemap) : paddingTop;\n };\n\n treemap.paddingRight = function(x) {\n return arguments.length ? (paddingRight = typeof x === \"function\" ? x : constant(+x), treemap) : paddingRight;\n };\n\n treemap.paddingBottom = function(x) {\n return arguments.length ? (paddingBottom = typeof x === \"function\" ? x : constant(+x), treemap) : paddingBottom;\n };\n\n treemap.paddingLeft = function(x) {\n return arguments.length ? (paddingLeft = typeof x === \"function\" ? x : constant(+x), treemap) : paddingLeft;\n };\n\n return treemap;\n}\n","import {\n selectSvgElement\n} from \"./chunk-HHEYEP7N.mjs\";\nimport {\n setupViewPortForSVG\n} from \"./chunk-KX2RTZJC.mjs\";\nimport {\n isLabelStyle,\n styles2String\n} from \"./chunk-PQ6SQG4A.mjs\";\nimport {\n populateCommonDb\n} from \"./chunk-4BX2VUAB.mjs\";\nimport {\n cleanAndMerge\n} from \"./chunk-GEFDOKGD.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-7R4GIKGN.mjs\";\nimport {\n __name,\n log\n} from \"./chunk-AGHRB4JF.mjs\";\n\n// src/diagrams/treemap/db.ts\nvar TreeMapDB = class {\n constructor() {\n this.nodes = [];\n this.levels = /* @__PURE__ */ new Map();\n this.outerNodes = [];\n this.classes = /* @__PURE__ */ new Map();\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, \"TreeMapDB\");\n }\n getNodes() {\n return this.nodes;\n }\n getConfig() {\n const defaultConfig = defaultConfig_default;\n const userConfig = getConfig();\n return cleanAndMerge({\n ...defaultConfig.treemap,\n ...userConfig.treemap ?? {}\n });\n }\n addNode(node, level) {\n this.nodes.push(node);\n this.levels.set(node, level);\n if (level === 0) {\n this.outerNodes.push(node);\n this.root ??= node;\n }\n }\n getRoot() {\n return { name: \"\", children: this.outerNodes };\n }\n addClass(id, _style) {\n const styleClass = this.classes.get(id) ?? { id, styles: [], textStyles: [] };\n const styles = _style.replace(/\\\\,/g, \"\\xA7\\xA7\\xA7\").replace(/,/g, \";\").replace(/§§§/g, \",\").split(\";\");\n if (styles) {\n styles.forEach((s) => {\n if (isLabelStyle(s)) {\n if (styleClass?.textStyles) {\n styleClass.textStyles.push(s);\n } else {\n styleClass.textStyles = [s];\n }\n }\n if (styleClass?.styles) {\n styleClass.styles.push(s);\n } else {\n styleClass.styles = [s];\n }\n });\n }\n this.classes.set(id, styleClass);\n }\n getClasses() {\n return this.classes;\n }\n getStylesForClass(classSelector) {\n return this.classes.get(classSelector)?.styles ?? [];\n }\n clear() {\n clear();\n this.nodes = [];\n this.levels = /* @__PURE__ */ new Map();\n this.outerNodes = [];\n this.classes = /* @__PURE__ */ new Map();\n this.root = void 0;\n }\n};\n\n// src/diagrams/treemap/parser.ts\nimport { parse } from \"@mermaid-js/parser\";\n\n// src/diagrams/treemap/utils.ts\nfunction buildHierarchy(items) {\n if (!items.length) {\n return [];\n }\n const root = [];\n const stack = [];\n items.forEach((item) => {\n const node = {\n name: item.name,\n children: item.type === \"Leaf\" ? void 0 : []\n };\n node.classSelector = item?.classSelector;\n if (item?.cssCompiledStyles) {\n node.cssCompiledStyles = item.cssCompiledStyles;\n }\n if (item.type === \"Leaf\" && item.value !== void 0) {\n node.value = item.value;\n }\n while (stack.length > 0 && stack[stack.length - 1].level >= item.level) {\n stack.pop();\n }\n if (stack.length === 0) {\n root.push(node);\n } else {\n const parent = stack[stack.length - 1].node;\n if (parent.children) {\n parent.children.push(node);\n } else {\n parent.children = [node];\n }\n }\n if (item.type !== \"Leaf\") {\n stack.push({ node, level: item.level });\n }\n });\n return root;\n}\n__name(buildHierarchy, \"buildHierarchy\");\n\n// src/diagrams/treemap/parser.ts\nvar populate = /* @__PURE__ */ __name((ast, db) => {\n populateCommonDb(ast, db);\n const items = [];\n for (const row of ast.TreemapRows ?? []) {\n if (row.$type === \"ClassDefStatement\") {\n db.addClass(row.className ?? \"\", row.styleText ?? \"\");\n }\n }\n for (const row of ast.TreemapRows ?? []) {\n const item = row.item;\n if (!item) {\n continue;\n }\n const level = row.indent ? parseInt(row.indent) : 0;\n const name = getItemName(item);\n const styles = item.classSelector ? db.getStylesForClass(item.classSelector) : [];\n const cssCompiledStyles = styles.length > 0 ? styles : void 0;\n const itemData = {\n level,\n name,\n type: item.$type,\n value: item.value,\n classSelector: item.classSelector,\n cssCompiledStyles\n };\n items.push(itemData);\n }\n const hierarchyNodes = buildHierarchy(items);\n const addNodesRecursively = /* @__PURE__ */ __name((nodes, level) => {\n for (const node of nodes) {\n db.addNode(node, level);\n if (node.children && node.children.length > 0) {\n addNodesRecursively(node.children, level + 1);\n }\n }\n }, \"addNodesRecursively\");\n addNodesRecursively(hierarchyNodes, 0);\n}, \"populate\");\nvar getItemName = /* @__PURE__ */ __name((item) => {\n return item.name ? String(item.name) : \"\";\n}, \"getItemName\");\nvar parser = {\n // @ts-expect-error - TreeMapDB is not assignable to DiagramDB\n parser: { yy: void 0 },\n parse: /* @__PURE__ */ __name(async (text) => {\n try {\n const parseFunc = parse;\n const ast = await parseFunc(\"treemap\", text);\n log.debug(\"Treemap AST:\", ast);\n const db = parser.parser?.yy;\n if (!(db instanceof TreeMapDB)) {\n throw new Error(\n \"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.\"\n );\n }\n populate(ast, db);\n } catch (error) {\n log.error(\"Error parsing treemap:\", error);\n throw error;\n }\n }, \"parse\")\n};\n\n// src/diagrams/treemap/renderer.ts\nimport { scaleOrdinal, treemap, hierarchy, format, select } from \"d3\";\nvar DEFAULT_INNER_PADDING = 10;\nvar SECTION_INNER_PADDING = 10;\nvar SECTION_HEADER_HEIGHT = 25;\nvar draw = /* @__PURE__ */ __name((_text, id, _version, diagram2) => {\n const treemapDb = diagram2.db;\n const config = treemapDb.getConfig();\n const treemapInnerPadding = config.padding ?? DEFAULT_INNER_PADDING;\n const title = treemapDb.getDiagramTitle();\n const root = treemapDb.getRoot();\n const { themeVariables } = getConfig();\n if (!root) {\n return;\n }\n const titleHeight = title ? 30 : 0;\n const svg = selectSvgElement(id);\n const width = config.nodeWidth ? config.nodeWidth * SECTION_INNER_PADDING : 960;\n const height = config.nodeHeight ? config.nodeHeight * SECTION_INNER_PADDING : 500;\n const svgWidth = width;\n const svgHeight = height + titleHeight;\n svg.attr(\"viewBox\", `0 0 ${svgWidth} ${svgHeight}`);\n configureSvgSize(svg, svgHeight, svgWidth, config.useMaxWidth);\n let valueFormat;\n try {\n const formatStr = config.valueFormat || \",\";\n if (formatStr === \"$0,0\") {\n valueFormat = /* @__PURE__ */ __name((value) => \"$\" + format(\",\")(value), \"valueFormat\");\n } else if (formatStr.startsWith(\"$\") && formatStr.includes(\",\")) {\n const precision = /\\.\\d+/.exec(formatStr);\n const precisionStr = precision ? precision[0] : \"\";\n valueFormat = /* @__PURE__ */ __name((value) => \"$\" + format(\",\" + precisionStr)(value), \"valueFormat\");\n } else if (formatStr.startsWith(\"$\")) {\n const restOfFormat = formatStr.substring(1);\n valueFormat = /* @__PURE__ */ __name((value) => \"$\" + format(restOfFormat || \"\")(value), \"valueFormat\");\n } else {\n valueFormat = format(formatStr);\n }\n } catch (error) {\n log.error(\"Error creating format function:\", error);\n valueFormat = format(\",\");\n }\n const colorScale = scaleOrdinal().range([\n \"transparent\",\n themeVariables.cScale0,\n themeVariables.cScale1,\n themeVariables.cScale2,\n themeVariables.cScale3,\n themeVariables.cScale4,\n themeVariables.cScale5,\n themeVariables.cScale6,\n themeVariables.cScale7,\n themeVariables.cScale8,\n themeVariables.cScale9,\n themeVariables.cScale10,\n themeVariables.cScale11\n ]);\n const colorScalePeer = scaleOrdinal().range([\n \"transparent\",\n themeVariables.cScalePeer0,\n themeVariables.cScalePeer1,\n themeVariables.cScalePeer2,\n themeVariables.cScalePeer3,\n themeVariables.cScalePeer4,\n themeVariables.cScalePeer5,\n themeVariables.cScalePeer6,\n themeVariables.cScalePeer7,\n themeVariables.cScalePeer8,\n themeVariables.cScalePeer9,\n themeVariables.cScalePeer10,\n themeVariables.cScalePeer11\n ]);\n const colorScaleLabel = scaleOrdinal().range([\n themeVariables.cScaleLabel0,\n themeVariables.cScaleLabel1,\n themeVariables.cScaleLabel2,\n themeVariables.cScaleLabel3,\n themeVariables.cScaleLabel4,\n themeVariables.cScaleLabel5,\n themeVariables.cScaleLabel6,\n themeVariables.cScaleLabel7,\n themeVariables.cScaleLabel8,\n themeVariables.cScaleLabel9,\n themeVariables.cScaleLabel10,\n themeVariables.cScaleLabel11\n ]);\n if (title) {\n svg.append(\"text\").attr(\"x\", svgWidth / 2).attr(\"y\", titleHeight / 2).attr(\"class\", \"treemapTitle\").attr(\"text-anchor\", \"middle\").attr(\"dominant-baseline\", \"middle\").text(title);\n }\n const g = svg.append(\"g\").attr(\"transform\", `translate(0, ${titleHeight})`).attr(\"class\", \"treemapContainer\");\n const hierarchyRoot = hierarchy(root).sum((d) => d.value ?? 0).sort((a, b) => (b.value ?? 0) - (a.value ?? 0));\n const treemapLayout = treemap().size([width, height]).paddingTop(\n (d) => d.children && d.children.length > 0 ? SECTION_HEADER_HEIGHT + SECTION_INNER_PADDING : 0\n ).paddingInner(treemapInnerPadding).paddingLeft((d) => d.children && d.children.length > 0 ? SECTION_INNER_PADDING : 0).paddingRight((d) => d.children && d.children.length > 0 ? SECTION_INNER_PADDING : 0).paddingBottom((d) => d.children && d.children.length > 0 ? SECTION_INNER_PADDING : 0).round(true);\n const treemapData = treemapLayout(hierarchyRoot);\n const branchNodes = treemapData.descendants().filter((d) => d.children && d.children.length > 0);\n const sections = g.selectAll(\".treemapSection\").data(branchNodes).enter().append(\"g\").attr(\"class\", \"treemapSection\").attr(\"transform\", (d) => `translate(${d.x0},${d.y0})`);\n sections.append(\"rect\").attr(\"width\", (d) => d.x1 - d.x0).attr(\"height\", SECTION_HEADER_HEIGHT).attr(\"class\", \"treemapSectionHeader\").attr(\"fill\", \"none\").attr(\"fill-opacity\", 0.6).attr(\"stroke-width\", 0.6).attr(\"style\", (d) => {\n if (d.depth === 0) {\n return \"display: none;\";\n }\n return \"\";\n });\n sections.append(\"clipPath\").attr(\"id\", (_d, i) => `clip-section-${id}-${i}`).append(\"rect\").attr(\"width\", (d) => Math.max(0, d.x1 - d.x0 - 12)).attr(\"height\", SECTION_HEADER_HEIGHT);\n sections.append(\"rect\").attr(\"width\", (d) => d.x1 - d.x0).attr(\"height\", (d) => d.y1 - d.y0).attr(\"class\", (_d, i) => {\n return `treemapSection section${i}`;\n }).attr(\"fill\", (d) => colorScale(d.data.name)).attr(\"fill-opacity\", 0.6).attr(\"stroke\", (d) => colorScalePeer(d.data.name)).attr(\"stroke-width\", 2).attr(\"stroke-opacity\", 0.4).attr(\"style\", (d) => {\n if (d.depth === 0) {\n return \"display: none;\";\n }\n const styles = styles2String({ cssCompiledStyles: d.data.cssCompiledStyles });\n return styles.nodeStyles + \";\" + styles.borderStyles.join(\";\");\n });\n sections.append(\"text\").attr(\"class\", \"treemapSectionLabel\").attr(\"x\", 6).attr(\"y\", SECTION_HEADER_HEIGHT / 2).attr(\"dominant-baseline\", \"middle\").text((d) => d.depth === 0 ? \"\" : d.data.name).attr(\"font-weight\", \"bold\").attr(\"style\", (d) => {\n if (d.depth === 0) {\n return \"display: none;\";\n }\n const labelStyles = \"dominant-baseline: middle; font-size: 12px; fill:\" + colorScaleLabel(d.data.name) + \"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;\";\n const styles = styles2String({ cssCompiledStyles: d.data.cssCompiledStyles });\n return labelStyles + styles.labelStyles.replace(\"color:\", \"fill:\");\n }).each(function(d) {\n if (d.depth === 0) {\n return;\n }\n const self = select(this);\n const originalText = d.data.name;\n self.text(originalText);\n const totalHeaderWidth = d.x1 - d.x0;\n const labelXPosition = 6;\n let spaceForTextContent;\n if (config.showValues !== false && d.value) {\n const valueEndsAtXRelative = totalHeaderWidth - 10;\n const estimatedValueTextActualWidth = 30;\n const gapBetweenLabelAndValue = 10;\n const labelMustEndBeforeX = valueEndsAtXRelative - estimatedValueTextActualWidth - gapBetweenLabelAndValue;\n spaceForTextContent = labelMustEndBeforeX - labelXPosition;\n } else {\n const labelOwnRightPadding = 6;\n spaceForTextContent = totalHeaderWidth - labelXPosition - labelOwnRightPadding;\n }\n const minimumWidthToDisplay = 15;\n const actualAvailableWidth = Math.max(minimumWidthToDisplay, spaceForTextContent);\n const textNode = self.node();\n const currentTextContentLength = textNode.getComputedTextLength();\n if (currentTextContentLength > actualAvailableWidth) {\n const ellipsis = \"...\";\n let currentTruncatedText = originalText;\n while (currentTruncatedText.length > 0) {\n currentTruncatedText = originalText.substring(0, currentTruncatedText.length - 1);\n if (currentTruncatedText.length === 0) {\n self.text(ellipsis);\n if (textNode.getComputedTextLength() > actualAvailableWidth) {\n self.text(\"\");\n }\n break;\n }\n self.text(currentTruncatedText + ellipsis);\n if (textNode.getComputedTextLength() <= actualAvailableWidth) {\n break;\n }\n }\n }\n });\n if (config.showValues !== false) {\n sections.append(\"text\").attr(\"class\", \"treemapSectionValue\").attr(\"x\", (d) => d.x1 - d.x0 - 10).attr(\"y\", SECTION_HEADER_HEIGHT / 2).attr(\"text-anchor\", \"end\").attr(\"dominant-baseline\", \"middle\").text((d) => d.value ? valueFormat(d.value) : \"\").attr(\"font-style\", \"italic\").attr(\"style\", (d) => {\n if (d.depth === 0) {\n return \"display: none;\";\n }\n const labelStyles = \"text-anchor: end; dominant-baseline: middle; font-size: 10px; fill:\" + colorScaleLabel(d.data.name) + \"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;\";\n const styles = styles2String({ cssCompiledStyles: d.data.cssCompiledStyles });\n return labelStyles + styles.labelStyles.replace(\"color:\", \"fill:\");\n });\n }\n const leafNodes = treemapData.leaves();\n const cell = g.selectAll(\".treemapLeafGroup\").data(leafNodes).enter().append(\"g\").attr(\"class\", (d, i) => {\n return `treemapNode treemapLeafGroup leaf${i}${d.data.classSelector ? ` ${d.data.classSelector}` : \"\"}x`;\n }).attr(\"transform\", (d) => `translate(${d.x0},${d.y0})`);\n cell.append(\"rect\").attr(\"width\", (d) => d.x1 - d.x0).attr(\"height\", (d) => d.y1 - d.y0).attr(\"class\", \"treemapLeaf\").attr(\"fill\", (d) => {\n return d.parent ? colorScale(d.parent.data.name) : colorScale(d.data.name);\n }).attr(\"style\", (d) => {\n const styles = styles2String({ cssCompiledStyles: d.data.cssCompiledStyles });\n return styles.nodeStyles;\n }).attr(\"fill-opacity\", 0.3).attr(\"stroke\", (d) => {\n return d.parent ? colorScale(d.parent.data.name) : colorScale(d.data.name);\n }).attr(\"stroke-width\", 3);\n cell.append(\"clipPath\").attr(\"id\", (_d, i) => `clip-${id}-${i}`).append(\"rect\").attr(\"width\", (d) => Math.max(0, d.x1 - d.x0 - 4)).attr(\"height\", (d) => Math.max(0, d.y1 - d.y0 - 4));\n const leafLabels = cell.append(\"text\").attr(\"class\", \"treemapLabel\").attr(\"x\", (d) => (d.x1 - d.x0) / 2).attr(\"y\", (d) => (d.y1 - d.y0) / 2).attr(\"style\", (d) => {\n const labelStyles = \"text-anchor: middle; dominant-baseline: middle; font-size: 38px;fill:\" + colorScaleLabel(d.data.name) + \";\";\n const styles = styles2String({ cssCompiledStyles: d.data.cssCompiledStyles });\n return labelStyles + styles.labelStyles.replace(\"color:\", \"fill:\");\n }).attr(\"clip-path\", (_d, i) => `url(#clip-${id}-${i})`).text((d) => d.data.name);\n leafLabels.each(function(d) {\n const self = select(this);\n const nodeWidth = d.x1 - d.x0;\n const nodeHeight = d.y1 - d.y0;\n const textNode = self.node();\n const padding = 4;\n const availableWidth = nodeWidth - 2 * padding;\n const availableHeight = nodeHeight - 2 * padding;\n if (availableWidth < 10 || availableHeight < 10) {\n self.style(\"display\", \"none\");\n return;\n }\n let currentLabelFontSize = parseInt(self.style(\"font-size\"), 10);\n const minLabelFontSize = 8;\n const originalValueRelFontSize = 28;\n const valueScaleFactor = 0.6;\n const minValueFontSize = 6;\n const spacingBetweenLabelAndValue = 2;\n while (textNode.getComputedTextLength() > availableWidth && currentLabelFontSize > minLabelFontSize) {\n currentLabelFontSize--;\n self.style(\"font-size\", `${currentLabelFontSize}px`);\n }\n let prospectiveValueFontSize = Math.max(\n minValueFontSize,\n Math.min(originalValueRelFontSize, Math.round(currentLabelFontSize * valueScaleFactor))\n );\n let combinedHeight = currentLabelFontSize + spacingBetweenLabelAndValue + prospectiveValueFontSize;\n while (combinedHeight > availableHeight && currentLabelFontSize > minLabelFontSize) {\n currentLabelFontSize--;\n prospectiveValueFontSize = Math.max(\n minValueFontSize,\n Math.min(originalValueRelFontSize, Math.round(currentLabelFontSize * valueScaleFactor))\n );\n if (prospectiveValueFontSize < minValueFontSize && currentLabelFontSize === minLabelFontSize) {\n break;\n }\n self.style(\"font-size\", `${currentLabelFontSize}px`);\n combinedHeight = currentLabelFontSize + spacingBetweenLabelAndValue + prospectiveValueFontSize;\n if (prospectiveValueFontSize <= minValueFontSize && combinedHeight > availableHeight) {\n }\n }\n self.style(\"font-size\", `${currentLabelFontSize}px`);\n if (textNode.getComputedTextLength() > availableWidth || currentLabelFontSize < minLabelFontSize || availableHeight < currentLabelFontSize) {\n self.style(\"display\", \"none\");\n }\n });\n if (config.showValues !== false) {\n const leafValues = cell.append(\"text\").attr(\"class\", \"treemapValue\").attr(\"x\", (d) => (d.x1 - d.x0) / 2).attr(\"y\", function(d) {\n return (d.y1 - d.y0) / 2;\n }).attr(\"style\", (d) => {\n const labelStyles = \"text-anchor: middle; dominant-baseline: hanging; font-size: 28px;fill:\" + colorScaleLabel(d.data.name) + \";\";\n const styles = styles2String({ cssCompiledStyles: d.data.cssCompiledStyles });\n return labelStyles + styles.labelStyles.replace(\"color:\", \"fill:\");\n }).attr(\"clip-path\", (_d, i) => `url(#clip-${id}-${i})`).text((d) => d.value ? valueFormat(d.value) : \"\");\n leafValues.each(function(d) {\n const valueTextElement = select(this);\n const parentCellNode = this.parentNode;\n if (!parentCellNode) {\n valueTextElement.style(\"display\", \"none\");\n return;\n }\n const labelElement = select(parentCellNode).select(\".treemapLabel\");\n if (labelElement.empty() || labelElement.style(\"display\") === \"none\") {\n valueTextElement.style(\"display\", \"none\");\n return;\n }\n const finalLabelFontSize = parseFloat(labelElement.style(\"font-size\"));\n const originalValueFontSize = 28;\n const valueScaleFactor = 0.6;\n const minValueFontSize = 6;\n const spacingBetweenLabelAndValue = 2;\n const actualValueFontSize = Math.max(\n minValueFontSize,\n Math.min(originalValueFontSize, Math.round(finalLabelFontSize * valueScaleFactor))\n );\n valueTextElement.style(\"font-size\", `${actualValueFontSize}px`);\n const labelCenterY = (d.y1 - d.y0) / 2;\n const valueTopActualY = labelCenterY + finalLabelFontSize / 2 + spacingBetweenLabelAndValue;\n valueTextElement.attr(\"y\", valueTopActualY);\n const nodeWidth = d.x1 - d.x0;\n const nodeTotalHeight = d.y1 - d.y0;\n const cellBottomPadding = 4;\n const maxValueBottomY = nodeTotalHeight - cellBottomPadding;\n const availableWidthForValue = nodeWidth - 2 * 4;\n if (valueTextElement.node().getComputedTextLength() > availableWidthForValue || valueTopActualY + actualValueFontSize > maxValueBottomY || actualValueFontSize < minValueFontSize) {\n valueTextElement.style(\"display\", \"none\");\n } else {\n valueTextElement.style(\"display\", null);\n }\n });\n }\n const diagramPadding = config.diagramPadding ?? 8;\n setupViewPortForSVG(svg, diagramPadding, \"flowchart\", config?.useMaxWidth || false);\n}, \"draw\");\nvar getClasses = /* @__PURE__ */ __name(function(_text, diagramObj) {\n return diagramObj.db.getClasses();\n}, \"getClasses\");\nvar renderer = { draw, getClasses };\n\n// src/diagrams/treemap/styles.ts\nvar defaultTreemapStyleOptions = {\n sectionStrokeColor: \"black\",\n sectionStrokeWidth: \"1\",\n sectionFillColor: \"#efefef\",\n leafStrokeColor: \"black\",\n leafStrokeWidth: \"1\",\n leafFillColor: \"#efefef\",\n labelColor: \"black\",\n labelFontSize: \"12px\",\n valueFontSize: \"10px\",\n valueColor: \"black\",\n titleColor: \"black\",\n titleFontSize: \"14px\"\n};\nvar getStyles = /* @__PURE__ */ __name(({\n treemap: treemap2\n} = {}) => {\n const options = cleanAndMerge(defaultTreemapStyleOptions, treemap2);\n return `\n .treemapNode.section {\n stroke: ${options.sectionStrokeColor};\n stroke-width: ${options.sectionStrokeWidth};\n fill: ${options.sectionFillColor};\n }\n .treemapNode.leaf {\n stroke: ${options.leafStrokeColor};\n stroke-width: ${options.leafStrokeWidth};\n fill: ${options.leafFillColor};\n }\n .treemapLabel {\n fill: ${options.labelColor};\n font-size: ${options.labelFontSize};\n }\n .treemapValue {\n fill: ${options.valueColor};\n font-size: ${options.valueFontSize};\n }\n .treemapTitle {\n fill: ${options.titleColor};\n font-size: ${options.titleFontSize};\n }\n `;\n}, \"getStyles\");\nvar styles_default = getStyles;\n\n// src/diagrams/treemap/diagram.ts\nvar diagram = {\n parser,\n get db() {\n return new TreeMapDB();\n },\n renderer,\n styles: styles_default\n};\nexport {\n diagram\n};\n"],"x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33],"mappings":"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"}
1
+ {"version":3,"file":"diagram-E7M64L7V-DSV2K-9b.js","names":["formatDecimal","formatRounded","formatPrefixAuto","identity","formatGroup","formatNumerals","formatTypes","formatTrim","exponent","formatLocale","node_count","node_each","node_eachAfter","node_eachBefore","node_find","node_sum","node_sort","node_path","node_ancestors","node_descendants","node_leaves","node_links","node_iterator","squarify","roundNode","constant","scaleOrdinal","treemap","select"],"sources":["../../../../node_modules/d3/node_modules/d3-format/src/formatDecimal.js","../../../../node_modules/d3/node_modules/d3-format/src/exponent.js","../../../../node_modules/d3/node_modules/d3-format/src/formatGroup.js","../../../../node_modules/d3/node_modules/d3-format/src/formatNumerals.js","../../../../node_modules/d3/node_modules/d3-format/src/formatSpecifier.js","../../../../node_modules/d3/node_modules/d3-format/src/formatTrim.js","../../../../node_modules/d3/node_modules/d3-format/src/formatPrefixAuto.js","../../../../node_modules/d3/node_modules/d3-format/src/formatRounded.js","../../../../node_modules/d3/node_modules/d3-format/src/formatTypes.js","../../../../node_modules/d3/node_modules/d3-format/src/identity.js","../../../../node_modules/d3/node_modules/d3-format/src/locale.js","../../../../node_modules/d3/node_modules/d3-format/src/defaultLocale.js","../../../../node_modules/d3-hierarchy/src/hierarchy/count.js","../../../../node_modules/d3-hierarchy/src/hierarchy/each.js","../../../../node_modules/d3-hierarchy/src/hierarchy/eachBefore.js","../../../../node_modules/d3-hierarchy/src/hierarchy/eachAfter.js","../../../../node_modules/d3-hierarchy/src/hierarchy/find.js","../../../../node_modules/d3-hierarchy/src/hierarchy/sum.js","../../../../node_modules/d3-hierarchy/src/hierarchy/sort.js","../../../../node_modules/d3-hierarchy/src/hierarchy/path.js","../../../../node_modules/d3-hierarchy/src/hierarchy/ancestors.js","../../../../node_modules/d3-hierarchy/src/hierarchy/descendants.js","../../../../node_modules/d3-hierarchy/src/hierarchy/leaves.js","../../../../node_modules/d3-hierarchy/src/hierarchy/links.js","../../../../node_modules/d3-hierarchy/src/hierarchy/iterator.js","../../../../node_modules/d3-hierarchy/src/hierarchy/index.js","../../../../node_modules/d3-hierarchy/src/accessors.js","../../../../node_modules/d3-hierarchy/src/constant.js","../../../../node_modules/d3-hierarchy/src/treemap/round.js","../../../../node_modules/d3-hierarchy/src/treemap/dice.js","../../../../node_modules/d3-hierarchy/src/treemap/slice.js","../../../../node_modules/d3-hierarchy/src/treemap/squarify.js","../../../../node_modules/d3-hierarchy/src/treemap/index.js","../../../../node_modules/mermaid/dist/chunks/mermaid.core/diagram-E7M64L7V.mjs"],"sourcesContent":["export default function(x) {\n return Math.abs(x = Math.round(x)) >= 1e21\n ? x.toLocaleString(\"en\").replace(/,/g, \"\")\n : x.toString(10);\n}\n\n// Computes the decimal coefficient and exponent of the specified number x with\n// significant digits p, where x is positive and p is in [1, 21] or undefined.\n// For example, formatDecimalParts(1.23) returns [\"123\", 0].\nexport function formatDecimalParts(x, p) {\n if (!isFinite(x) || x === 0) return null; // NaN, ±Infinity, ±0\n var i = (x = p ? x.toExponential(p - 1) : x.toExponential()).indexOf(\"e\"), coefficient = x.slice(0, i);\n\n // The string returned by toExponential either has the form \\d\\.\\d+e[-+]\\d+\n // (e.g., 1.2e+3) or the form \\de[-+]\\d+ (e.g., 1e+3).\n return [\n coefficient.length > 1 ? coefficient[0] + coefficient.slice(2) : coefficient,\n +x.slice(i + 1)\n ];\n}\n","import {formatDecimalParts} from \"./formatDecimal.js\";\n\nexport default function(x) {\n return x = formatDecimalParts(Math.abs(x)), x ? x[1] : NaN;\n}\n","export default function(grouping, thousands) {\n return function(value, width) {\n var i = value.length,\n t = [],\n j = 0,\n g = grouping[0],\n length = 0;\n\n while (i > 0 && g > 0) {\n if (length + g + 1 > width) g = Math.max(1, width - length);\n t.push(value.substring(i -= g, i + g));\n if ((length += g + 1) > width) break;\n g = grouping[j = (j + 1) % grouping.length];\n }\n\n return t.reverse().join(thousands);\n };\n}\n","export default function(numerals) {\n return function(value) {\n return value.replace(/[0-9]/g, function(i) {\n return numerals[+i];\n });\n };\n}\n","// [[fill]align][sign][symbol][0][width][,][.precision][~][type]\nvar re = /^(?:(.)?([<>=^]))?([+\\-( ])?([$#])?(0)?(\\d+)?(,)?(\\.\\d+)?(~)?([a-z%])?$/i;\n\nexport default function formatSpecifier(specifier) {\n if (!(match = re.exec(specifier))) throw new Error(\"invalid format: \" + specifier);\n var match;\n return new FormatSpecifier({\n fill: match[1],\n align: match[2],\n sign: match[3],\n symbol: match[4],\n zero: match[5],\n width: match[6],\n comma: match[7],\n precision: match[8] && match[8].slice(1),\n trim: match[9],\n type: match[10]\n });\n}\n\nformatSpecifier.prototype = FormatSpecifier.prototype; // instanceof\n\nexport function FormatSpecifier(specifier) {\n this.fill = specifier.fill === undefined ? \" \" : specifier.fill + \"\";\n this.align = specifier.align === undefined ? \">\" : specifier.align + \"\";\n this.sign = specifier.sign === undefined ? \"-\" : specifier.sign + \"\";\n this.symbol = specifier.symbol === undefined ? \"\" : specifier.symbol + \"\";\n this.zero = !!specifier.zero;\n this.width = specifier.width === undefined ? undefined : +specifier.width;\n this.comma = !!specifier.comma;\n this.precision = specifier.precision === undefined ? undefined : +specifier.precision;\n this.trim = !!specifier.trim;\n this.type = specifier.type === undefined ? \"\" : specifier.type + \"\";\n}\n\nFormatSpecifier.prototype.toString = function() {\n return this.fill\n + this.align\n + this.sign\n + this.symbol\n + (this.zero ? \"0\" : \"\")\n + (this.width === undefined ? \"\" : Math.max(1, this.width | 0))\n + (this.comma ? \",\" : \"\")\n + (this.precision === undefined ? \"\" : \".\" + Math.max(0, this.precision | 0))\n + (this.trim ? \"~\" : \"\")\n + this.type;\n};\n","// Trims insignificant zeros, e.g., replaces 1.2000k with 1.2k.\nexport default function(s) {\n out: for (var n = s.length, i = 1, i0 = -1, i1; i < n; ++i) {\n switch (s[i]) {\n case \".\": i0 = i1 = i; break;\n case \"0\": if (i0 === 0) i0 = i; i1 = i; break;\n default: if (!+s[i]) break out; if (i0 > 0) i0 = 0; break;\n }\n }\n return i0 > 0 ? s.slice(0, i0) + s.slice(i1 + 1) : s;\n}\n","import {formatDecimalParts} from \"./formatDecimal.js\";\n\nexport var prefixExponent;\n\nexport default function(x, p) {\n var d = formatDecimalParts(x, p);\n if (!d) return prefixExponent = undefined, x.toPrecision(p);\n var coefficient = d[0],\n exponent = d[1],\n i = exponent - (prefixExponent = Math.max(-8, Math.min(8, Math.floor(exponent / 3))) * 3) + 1,\n n = coefficient.length;\n return i === n ? coefficient\n : i > n ? coefficient + new Array(i - n + 1).join(\"0\")\n : i > 0 ? coefficient.slice(0, i) + \".\" + coefficient.slice(i)\n : \"0.\" + new Array(1 - i).join(\"0\") + formatDecimalParts(x, Math.max(0, p + i - 1))[0]; // less than 1y!\n}\n","import {formatDecimalParts} from \"./formatDecimal.js\";\n\nexport default function(x, p) {\n var d = formatDecimalParts(x, p);\n if (!d) return x + \"\";\n var coefficient = d[0],\n exponent = d[1];\n return exponent < 0 ? \"0.\" + new Array(-exponent).join(\"0\") + coefficient\n : coefficient.length > exponent + 1 ? coefficient.slice(0, exponent + 1) + \".\" + coefficient.slice(exponent + 1)\n : coefficient + new Array(exponent - coefficient.length + 2).join(\"0\");\n}\n","import formatDecimal from \"./formatDecimal.js\";\nimport formatPrefixAuto from \"./formatPrefixAuto.js\";\nimport formatRounded from \"./formatRounded.js\";\n\nexport default {\n \"%\": (x, p) => (x * 100).toFixed(p),\n \"b\": (x) => Math.round(x).toString(2),\n \"c\": (x) => x + \"\",\n \"d\": formatDecimal,\n \"e\": (x, p) => x.toExponential(p),\n \"f\": (x, p) => x.toFixed(p),\n \"g\": (x, p) => x.toPrecision(p),\n \"o\": (x) => Math.round(x).toString(8),\n \"p\": (x, p) => formatRounded(x * 100, p),\n \"r\": formatRounded,\n \"s\": formatPrefixAuto,\n \"X\": (x) => Math.round(x).toString(16).toUpperCase(),\n \"x\": (x) => Math.round(x).toString(16)\n};\n","export default function(x) {\n return x;\n}\n","import exponent from \"./exponent.js\";\nimport formatGroup from \"./formatGroup.js\";\nimport formatNumerals from \"./formatNumerals.js\";\nimport formatSpecifier from \"./formatSpecifier.js\";\nimport formatTrim from \"./formatTrim.js\";\nimport formatTypes from \"./formatTypes.js\";\nimport {prefixExponent} from \"./formatPrefixAuto.js\";\nimport identity from \"./identity.js\";\n\nvar map = Array.prototype.map,\n prefixes = [\"y\",\"z\",\"a\",\"f\",\"p\",\"n\",\"µ\",\"m\",\"\",\"k\",\"M\",\"G\",\"T\",\"P\",\"E\",\"Z\",\"Y\"];\n\nexport default function(locale) {\n var group = locale.grouping === undefined || locale.thousands === undefined ? identity : formatGroup(map.call(locale.grouping, Number), locale.thousands + \"\"),\n currencyPrefix = locale.currency === undefined ? \"\" : locale.currency[0] + \"\",\n currencySuffix = locale.currency === undefined ? \"\" : locale.currency[1] + \"\",\n decimal = locale.decimal === undefined ? \".\" : locale.decimal + \"\",\n numerals = locale.numerals === undefined ? identity : formatNumerals(map.call(locale.numerals, String)),\n percent = locale.percent === undefined ? \"%\" : locale.percent + \"\",\n minus = locale.minus === undefined ? \"−\" : locale.minus + \"\",\n nan = locale.nan === undefined ? \"NaN\" : locale.nan + \"\";\n\n function newFormat(specifier, options) {\n specifier = formatSpecifier(specifier);\n\n var fill = specifier.fill,\n align = specifier.align,\n sign = specifier.sign,\n symbol = specifier.symbol,\n zero = specifier.zero,\n width = specifier.width,\n comma = specifier.comma,\n precision = specifier.precision,\n trim = specifier.trim,\n type = specifier.type;\n\n // The \"n\" type is an alias for \",g\".\n if (type === \"n\") comma = true, type = \"g\";\n\n // The \"\" type, and any invalid type, is an alias for \".12~g\".\n else if (!formatTypes[type]) precision === undefined && (precision = 12), trim = true, type = \"g\";\n\n // If zero fill is specified, padding goes after sign and before digits.\n if (zero || (fill === \"0\" && align === \"=\")) zero = true, fill = \"0\", align = \"=\";\n\n // Compute the prefix and suffix.\n // For SI-prefix, the suffix is lazily computed.\n var prefix = (options && options.prefix !== undefined ? options.prefix : \"\") + (symbol === \"$\" ? currencyPrefix : symbol === \"#\" && /[boxX]/.test(type) ? \"0\" + type.toLowerCase() : \"\"),\n suffix = (symbol === \"$\" ? currencySuffix : /[%p]/.test(type) ? percent : \"\") + (options && options.suffix !== undefined ? options.suffix : \"\");\n\n // What format function should we use?\n // Is this an integer type?\n // Can this type generate exponential notation?\n var formatType = formatTypes[type],\n maybeSuffix = /[defgprs%]/.test(type);\n\n // Set the default precision if not specified,\n // or clamp the specified precision to the supported range.\n // For significant precision, it must be in [1, 21].\n // For fixed precision, it must be in [0, 20].\n precision = precision === undefined ? 6\n : /[gprs]/.test(type) ? Math.max(1, Math.min(21, precision))\n : Math.max(0, Math.min(20, precision));\n\n function format(value) {\n var valuePrefix = prefix,\n valueSuffix = suffix,\n i, n, c;\n\n if (type === \"c\") {\n valueSuffix = formatType(value) + valueSuffix;\n value = \"\";\n } else {\n value = +value;\n\n // Determine the sign. -0 is not less than 0, but 1 / -0 is!\n var valueNegative = value < 0 || 1 / value < 0;\n\n // Perform the initial formatting.\n value = isNaN(value) ? nan : formatType(Math.abs(value), precision);\n\n // Trim insignificant zeros.\n if (trim) value = formatTrim(value);\n\n // If a negative value rounds to zero after formatting, and no explicit positive sign is requested, hide the sign.\n if (valueNegative && +value === 0 && sign !== \"+\") valueNegative = false;\n\n // Compute the prefix and suffix.\n valuePrefix = (valueNegative ? (sign === \"(\" ? sign : minus) : sign === \"-\" || sign === \"(\" ? \"\" : sign) + valuePrefix;\n valueSuffix = (type === \"s\" && !isNaN(value) && prefixExponent !== undefined ? prefixes[8 + prefixExponent / 3] : \"\") + valueSuffix + (valueNegative && sign === \"(\" ? \")\" : \"\");\n\n // Break the formatted value into the integer “value” part that can be\n // grouped, and fractional or exponential “suffix” part that is not.\n if (maybeSuffix) {\n i = -1, n = value.length;\n while (++i < n) {\n if (c = value.charCodeAt(i), 48 > c || c > 57) {\n valueSuffix = (c === 46 ? decimal + value.slice(i + 1) : value.slice(i)) + valueSuffix;\n value = value.slice(0, i);\n break;\n }\n }\n }\n }\n\n // If the fill character is not \"0\", grouping is applied before padding.\n if (comma && !zero) value = group(value, Infinity);\n\n // Compute the padding.\n var length = valuePrefix.length + value.length + valueSuffix.length,\n padding = length < width ? new Array(width - length + 1).join(fill) : \"\";\n\n // If the fill character is \"0\", grouping is applied after padding.\n if (comma && zero) value = group(padding + value, padding.length ? width - valueSuffix.length : Infinity), padding = \"\";\n\n // Reconstruct the final output based on the desired alignment.\n switch (align) {\n case \"<\": value = valuePrefix + value + valueSuffix + padding; break;\n case \"=\": value = valuePrefix + padding + value + valueSuffix; break;\n case \"^\": value = padding.slice(0, length = padding.length >> 1) + valuePrefix + value + valueSuffix + padding.slice(length); break;\n default: value = padding + valuePrefix + value + valueSuffix; break;\n }\n\n return numerals(value);\n }\n\n format.toString = function() {\n return specifier + \"\";\n };\n\n return format;\n }\n\n function formatPrefix(specifier, value) {\n var e = Math.max(-8, Math.min(8, Math.floor(exponent(value) / 3))) * 3,\n k = Math.pow(10, -e),\n f = newFormat((specifier = formatSpecifier(specifier), specifier.type = \"f\", specifier), {suffix: prefixes[8 + e / 3]});\n return function(value) {\n return f(k * value);\n };\n }\n\n return {\n format: newFormat,\n formatPrefix: formatPrefix\n };\n}\n","import formatLocale from \"./locale.js\";\n\nvar locale;\nexport var format;\nexport var formatPrefix;\n\ndefaultLocale({\n thousands: \",\",\n grouping: [3],\n currency: [\"$\", \"\"]\n});\n\nexport default function defaultLocale(definition) {\n locale = formatLocale(definition);\n format = locale.format;\n formatPrefix = locale.formatPrefix;\n return locale;\n}\n","function count(node) {\n var sum = 0,\n children = node.children,\n i = children && children.length;\n if (!i) sum = 1;\n else while (--i >= 0) sum += children[i].value;\n node.value = sum;\n}\n\nexport default function() {\n return this.eachAfter(count);\n}\n","export default function(callback, that) {\n let index = -1;\n for (const node of this) {\n callback.call(that, node, ++index, this);\n }\n return this;\n}\n","export default function(callback, that) {\n var node = this, nodes = [node], children, i, index = -1;\n while (node = nodes.pop()) {\n callback.call(that, node, ++index, this);\n if (children = node.children) {\n for (i = children.length - 1; i >= 0; --i) {\n nodes.push(children[i]);\n }\n }\n }\n return this;\n}\n","export default function(callback, that) {\n var node = this, nodes = [node], next = [], children, i, n, index = -1;\n while (node = nodes.pop()) {\n next.push(node);\n if (children = node.children) {\n for (i = 0, n = children.length; i < n; ++i) {\n nodes.push(children[i]);\n }\n }\n }\n while (node = next.pop()) {\n callback.call(that, node, ++index, this);\n }\n return this;\n}\n","export default function(callback, that) {\n let index = -1;\n for (const node of this) {\n if (callback.call(that, node, ++index, this)) {\n return node;\n }\n }\n}\n","export default function(value) {\n return this.eachAfter(function(node) {\n var sum = +value(node.data) || 0,\n children = node.children,\n i = children && children.length;\n while (--i >= 0) sum += children[i].value;\n node.value = sum;\n });\n}\n","export default function(compare) {\n return this.eachBefore(function(node) {\n if (node.children) {\n node.children.sort(compare);\n }\n });\n}\n","export default function(end) {\n var start = this,\n ancestor = leastCommonAncestor(start, end),\n nodes = [start];\n while (start !== ancestor) {\n start = start.parent;\n nodes.push(start);\n }\n var k = nodes.length;\n while (end !== ancestor) {\n nodes.splice(k, 0, end);\n end = end.parent;\n }\n return nodes;\n}\n\nfunction leastCommonAncestor(a, b) {\n if (a === b) return a;\n var aNodes = a.ancestors(),\n bNodes = b.ancestors(),\n c = null;\n a = aNodes.pop();\n b = bNodes.pop();\n while (a === b) {\n c = a;\n a = aNodes.pop();\n b = bNodes.pop();\n }\n return c;\n}\n","export default function() {\n var node = this, nodes = [node];\n while (node = node.parent) {\n nodes.push(node);\n }\n return nodes;\n}\n","export default function() {\n return Array.from(this);\n}\n","export default function() {\n var leaves = [];\n this.eachBefore(function(node) {\n if (!node.children) {\n leaves.push(node);\n }\n });\n return leaves;\n}\n","export default function() {\n var root = this, links = [];\n root.each(function(node) {\n if (node !== root) { // Don’t include the root’s parent, if any.\n links.push({source: node.parent, target: node});\n }\n });\n return links;\n}\n","export default function*() {\n var node = this, current, next = [node], children, i, n;\n do {\n current = next.reverse(), next = [];\n while (node = current.pop()) {\n yield node;\n if (children = node.children) {\n for (i = 0, n = children.length; i < n; ++i) {\n next.push(children[i]);\n }\n }\n }\n } while (next.length);\n}\n","import node_count from \"./count.js\";\nimport node_each from \"./each.js\";\nimport node_eachBefore from \"./eachBefore.js\";\nimport node_eachAfter from \"./eachAfter.js\";\nimport node_find from \"./find.js\";\nimport node_sum from \"./sum.js\";\nimport node_sort from \"./sort.js\";\nimport node_path from \"./path.js\";\nimport node_ancestors from \"./ancestors.js\";\nimport node_descendants from \"./descendants.js\";\nimport node_leaves from \"./leaves.js\";\nimport node_links from \"./links.js\";\nimport node_iterator from \"./iterator.js\";\n\nexport default function hierarchy(data, children) {\n if (data instanceof Map) {\n data = [undefined, data];\n if (children === undefined) children = mapChildren;\n } else if (children === undefined) {\n children = objectChildren;\n }\n\n var root = new Node(data),\n node,\n nodes = [root],\n child,\n childs,\n i,\n n;\n\n while (node = nodes.pop()) {\n if ((childs = children(node.data)) && (n = (childs = Array.from(childs)).length)) {\n node.children = childs;\n for (i = n - 1; i >= 0; --i) {\n nodes.push(child = childs[i] = new Node(childs[i]));\n child.parent = node;\n child.depth = node.depth + 1;\n }\n }\n }\n\n return root.eachBefore(computeHeight);\n}\n\nfunction node_copy() {\n return hierarchy(this).eachBefore(copyData);\n}\n\nfunction objectChildren(d) {\n return d.children;\n}\n\nfunction mapChildren(d) {\n return Array.isArray(d) ? d[1] : null;\n}\n\nfunction copyData(node) {\n if (node.data.value !== undefined) node.value = node.data.value;\n node.data = node.data.data;\n}\n\nexport function computeHeight(node) {\n var height = 0;\n do node.height = height;\n while ((node = node.parent) && (node.height < ++height));\n}\n\nexport function Node(data) {\n this.data = data;\n this.depth =\n this.height = 0;\n this.parent = null;\n}\n\nNode.prototype = hierarchy.prototype = {\n constructor: Node,\n count: node_count,\n each: node_each,\n eachAfter: node_eachAfter,\n eachBefore: node_eachBefore,\n find: node_find,\n sum: node_sum,\n sort: node_sort,\n path: node_path,\n ancestors: node_ancestors,\n descendants: node_descendants,\n leaves: node_leaves,\n links: node_links,\n copy: node_copy,\n [Symbol.iterator]: node_iterator\n};\n","export function optional(f) {\n return f == null ? null : required(f);\n}\n\nexport function required(f) {\n if (typeof f !== \"function\") throw new Error;\n return f;\n}\n","export function constantZero() {\n return 0;\n}\n\nexport default function(x) {\n return function() {\n return x;\n };\n}\n","export default function(node) {\n node.x0 = Math.round(node.x0);\n node.y0 = Math.round(node.y0);\n node.x1 = Math.round(node.x1);\n node.y1 = Math.round(node.y1);\n}\n","export default function(parent, x0, y0, x1, y1) {\n var nodes = parent.children,\n node,\n i = -1,\n n = nodes.length,\n k = parent.value && (x1 - x0) / parent.value;\n\n while (++i < n) {\n node = nodes[i], node.y0 = y0, node.y1 = y1;\n node.x0 = x0, node.x1 = x0 += node.value * k;\n }\n}\n","export default function(parent, x0, y0, x1, y1) {\n var nodes = parent.children,\n node,\n i = -1,\n n = nodes.length,\n k = parent.value && (y1 - y0) / parent.value;\n\n while (++i < n) {\n node = nodes[i], node.x0 = x0, node.x1 = x1;\n node.y0 = y0, node.y1 = y0 += node.value * k;\n }\n}\n","import treemapDice from \"./dice.js\";\nimport treemapSlice from \"./slice.js\";\n\nexport var phi = (1 + Math.sqrt(5)) / 2;\n\nexport function squarifyRatio(ratio, parent, x0, y0, x1, y1) {\n var rows = [],\n nodes = parent.children,\n row,\n nodeValue,\n i0 = 0,\n i1 = 0,\n n = nodes.length,\n dx, dy,\n value = parent.value,\n sumValue,\n minValue,\n maxValue,\n newRatio,\n minRatio,\n alpha,\n beta;\n\n while (i0 < n) {\n dx = x1 - x0, dy = y1 - y0;\n\n // Find the next non-empty node.\n do sumValue = nodes[i1++].value; while (!sumValue && i1 < n);\n minValue = maxValue = sumValue;\n alpha = Math.max(dy / dx, dx / dy) / (value * ratio);\n beta = sumValue * sumValue * alpha;\n minRatio = Math.max(maxValue / beta, beta / minValue);\n\n // Keep adding nodes while the aspect ratio maintains or improves.\n for (; i1 < n; ++i1) {\n sumValue += nodeValue = nodes[i1].value;\n if (nodeValue < minValue) minValue = nodeValue;\n if (nodeValue > maxValue) maxValue = nodeValue;\n beta = sumValue * sumValue * alpha;\n newRatio = Math.max(maxValue / beta, beta / minValue);\n if (newRatio > minRatio) { sumValue -= nodeValue; break; }\n minRatio = newRatio;\n }\n\n // Position and record the row orientation.\n rows.push(row = {value: sumValue, dice: dx < dy, children: nodes.slice(i0, i1)});\n if (row.dice) treemapDice(row, x0, y0, x1, value ? y0 += dy * sumValue / value : y1);\n else treemapSlice(row, x0, y0, value ? x0 += dx * sumValue / value : x1, y1);\n value -= sumValue, i0 = i1;\n }\n\n return rows;\n}\n\nexport default (function custom(ratio) {\n\n function squarify(parent, x0, y0, x1, y1) {\n squarifyRatio(ratio, parent, x0, y0, x1, y1);\n }\n\n squarify.ratio = function(x) {\n return custom((x = +x) > 1 ? x : 1);\n };\n\n return squarify;\n})(phi);\n","import roundNode from \"./round.js\";\nimport squarify from \"./squarify.js\";\nimport {required} from \"../accessors.js\";\nimport constant, {constantZero} from \"../constant.js\";\n\nexport default function() {\n var tile = squarify,\n round = false,\n dx = 1,\n dy = 1,\n paddingStack = [0],\n paddingInner = constantZero,\n paddingTop = constantZero,\n paddingRight = constantZero,\n paddingBottom = constantZero,\n paddingLeft = constantZero;\n\n function treemap(root) {\n root.x0 =\n root.y0 = 0;\n root.x1 = dx;\n root.y1 = dy;\n root.eachBefore(positionNode);\n paddingStack = [0];\n if (round) root.eachBefore(roundNode);\n return root;\n }\n\n function positionNode(node) {\n var p = paddingStack[node.depth],\n x0 = node.x0 + p,\n y0 = node.y0 + p,\n x1 = node.x1 - p,\n y1 = node.y1 - p;\n if (x1 < x0) x0 = x1 = (x0 + x1) / 2;\n if (y1 < y0) y0 = y1 = (y0 + y1) / 2;\n node.x0 = x0;\n node.y0 = y0;\n node.x1 = x1;\n node.y1 = y1;\n if (node.children) {\n p = paddingStack[node.depth + 1] = paddingInner(node) / 2;\n x0 += paddingLeft(node) - p;\n y0 += paddingTop(node) - p;\n x1 -= paddingRight(node) - p;\n y1 -= paddingBottom(node) - p;\n if (x1 < x0) x0 = x1 = (x0 + x1) / 2;\n if (y1 < y0) y0 = y1 = (y0 + y1) / 2;\n tile(node, x0, y0, x1, y1);\n }\n }\n\n treemap.round = function(x) {\n return arguments.length ? (round = !!x, treemap) : round;\n };\n\n treemap.size = function(x) {\n return arguments.length ? (dx = +x[0], dy = +x[1], treemap) : [dx, dy];\n };\n\n treemap.tile = function(x) {\n return arguments.length ? (tile = required(x), treemap) : tile;\n };\n\n treemap.padding = function(x) {\n return arguments.length ? treemap.paddingInner(x).paddingOuter(x) : treemap.paddingInner();\n };\n\n treemap.paddingInner = function(x) {\n return arguments.length ? (paddingInner = typeof x === \"function\" ? x : constant(+x), treemap) : paddingInner;\n };\n\n treemap.paddingOuter = function(x) {\n return arguments.length ? treemap.paddingTop(x).paddingRight(x).paddingBottom(x).paddingLeft(x) : treemap.paddingTop();\n };\n\n treemap.paddingTop = function(x) {\n return arguments.length ? (paddingTop = typeof x === \"function\" ? x : constant(+x), treemap) : paddingTop;\n };\n\n treemap.paddingRight = function(x) {\n return arguments.length ? (paddingRight = typeof x === \"function\" ? x : constant(+x), treemap) : paddingRight;\n };\n\n treemap.paddingBottom = function(x) {\n return arguments.length ? (paddingBottom = typeof x === \"function\" ? x : constant(+x), treemap) : paddingBottom;\n };\n\n treemap.paddingLeft = function(x) {\n return arguments.length ? (paddingLeft = typeof x === \"function\" ? x : constant(+x), treemap) : paddingLeft;\n };\n\n return treemap;\n}\n","import {\n selectSvgElement\n} from \"./chunk-HHEYEP7N.mjs\";\nimport {\n setupViewPortForSVG\n} from \"./chunk-KX2RTZJC.mjs\";\nimport {\n isLabelStyle,\n styles2String\n} from \"./chunk-PQ6SQG4A.mjs\";\nimport {\n populateCommonDb\n} from \"./chunk-4BX2VUAB.mjs\";\nimport {\n cleanAndMerge\n} from \"./chunk-GEFDOKGD.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-7R4GIKGN.mjs\";\nimport {\n __name,\n log\n} from \"./chunk-AGHRB4JF.mjs\";\n\n// src/diagrams/treemap/db.ts\nvar TreeMapDB = class {\n constructor() {\n this.nodes = [];\n this.levels = /* @__PURE__ */ new Map();\n this.outerNodes = [];\n this.classes = /* @__PURE__ */ new Map();\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, \"TreeMapDB\");\n }\n getNodes() {\n return this.nodes;\n }\n getConfig() {\n const defaultConfig = defaultConfig_default;\n const userConfig = getConfig();\n return cleanAndMerge({\n ...defaultConfig.treemap,\n ...userConfig.treemap ?? {}\n });\n }\n addNode(node, level) {\n this.nodes.push(node);\n this.levels.set(node, level);\n if (level === 0) {\n this.outerNodes.push(node);\n this.root ??= node;\n }\n }\n getRoot() {\n return { name: \"\", children: this.outerNodes };\n }\n addClass(id, _style) {\n const styleClass = this.classes.get(id) ?? { id, styles: [], textStyles: [] };\n const styles = _style.replace(/\\\\,/g, \"\\xA7\\xA7\\xA7\").replace(/,/g, \";\").replace(/§§§/g, \",\").split(\";\");\n if (styles) {\n styles.forEach((s) => {\n if (isLabelStyle(s)) {\n if (styleClass?.textStyles) {\n styleClass.textStyles.push(s);\n } else {\n styleClass.textStyles = [s];\n }\n }\n if (styleClass?.styles) {\n styleClass.styles.push(s);\n } else {\n styleClass.styles = [s];\n }\n });\n }\n this.classes.set(id, styleClass);\n }\n getClasses() {\n return this.classes;\n }\n getStylesForClass(classSelector) {\n return this.classes.get(classSelector)?.styles ?? [];\n }\n clear() {\n clear();\n this.nodes = [];\n this.levels = /* @__PURE__ */ new Map();\n this.outerNodes = [];\n this.classes = /* @__PURE__ */ new Map();\n this.root = void 0;\n }\n};\n\n// src/diagrams/treemap/parser.ts\nimport { parse } from \"@mermaid-js/parser\";\n\n// src/diagrams/treemap/utils.ts\nfunction buildHierarchy(items) {\n if (!items.length) {\n return [];\n }\n const root = [];\n const stack = [];\n items.forEach((item) => {\n const node = {\n name: item.name,\n children: item.type === \"Leaf\" ? void 0 : []\n };\n node.classSelector = item?.classSelector;\n if (item?.cssCompiledStyles) {\n node.cssCompiledStyles = item.cssCompiledStyles;\n }\n if (item.type === \"Leaf\" && item.value !== void 0) {\n node.value = item.value;\n }\n while (stack.length > 0 && stack[stack.length - 1].level >= item.level) {\n stack.pop();\n }\n if (stack.length === 0) {\n root.push(node);\n } else {\n const parent = stack[stack.length - 1].node;\n if (parent.children) {\n parent.children.push(node);\n } else {\n parent.children = [node];\n }\n }\n if (item.type !== \"Leaf\") {\n stack.push({ node, level: item.level });\n }\n });\n return root;\n}\n__name(buildHierarchy, \"buildHierarchy\");\n\n// src/diagrams/treemap/parser.ts\nvar populate = /* @__PURE__ */ __name((ast, db) => {\n populateCommonDb(ast, db);\n const items = [];\n for (const row of ast.TreemapRows ?? []) {\n if (row.$type === \"ClassDefStatement\") {\n db.addClass(row.className ?? \"\", row.styleText ?? \"\");\n }\n }\n for (const row of ast.TreemapRows ?? []) {\n const item = row.item;\n if (!item) {\n continue;\n }\n const level = row.indent ? parseInt(row.indent) : 0;\n const name = getItemName(item);\n const styles = item.classSelector ? db.getStylesForClass(item.classSelector) : [];\n const cssCompiledStyles = styles.length > 0 ? styles : void 0;\n const itemData = {\n level,\n name,\n type: item.$type,\n value: item.value,\n classSelector: item.classSelector,\n cssCompiledStyles\n };\n items.push(itemData);\n }\n const hierarchyNodes = buildHierarchy(items);\n const addNodesRecursively = /* @__PURE__ */ __name((nodes, level) => {\n for (const node of nodes) {\n db.addNode(node, level);\n if (node.children && node.children.length > 0) {\n addNodesRecursively(node.children, level + 1);\n }\n }\n }, \"addNodesRecursively\");\n addNodesRecursively(hierarchyNodes, 0);\n}, \"populate\");\nvar getItemName = /* @__PURE__ */ __name((item) => {\n return item.name ? String(item.name) : \"\";\n}, \"getItemName\");\nvar parser = {\n // @ts-expect-error - TreeMapDB is not assignable to DiagramDB\n parser: { yy: void 0 },\n parse: /* @__PURE__ */ __name(async (text) => {\n try {\n const parseFunc = parse;\n const ast = await parseFunc(\"treemap\", text);\n log.debug(\"Treemap AST:\", ast);\n const db = parser.parser?.yy;\n if (!(db instanceof TreeMapDB)) {\n throw new Error(\n \"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.\"\n );\n }\n populate(ast, db);\n } catch (error) {\n log.error(\"Error parsing treemap:\", error);\n throw error;\n }\n }, \"parse\")\n};\n\n// src/diagrams/treemap/renderer.ts\nimport { scaleOrdinal, treemap, hierarchy, format, select } from \"d3\";\nvar DEFAULT_INNER_PADDING = 10;\nvar SECTION_INNER_PADDING = 10;\nvar SECTION_HEADER_HEIGHT = 25;\nvar draw = /* @__PURE__ */ __name((_text, id, _version, diagram2) => {\n const treemapDb = diagram2.db;\n const config = treemapDb.getConfig();\n const treemapInnerPadding = config.padding ?? DEFAULT_INNER_PADDING;\n const title = treemapDb.getDiagramTitle();\n const root = treemapDb.getRoot();\n const { themeVariables } = getConfig();\n if (!root) {\n return;\n }\n const titleHeight = title ? 30 : 0;\n const svg = selectSvgElement(id);\n const width = config.nodeWidth ? config.nodeWidth * SECTION_INNER_PADDING : 960;\n const height = config.nodeHeight ? config.nodeHeight * SECTION_INNER_PADDING : 500;\n const svgWidth = width;\n const svgHeight = height + titleHeight;\n svg.attr(\"viewBox\", `0 0 ${svgWidth} ${svgHeight}`);\n configureSvgSize(svg, svgHeight, svgWidth, config.useMaxWidth);\n let valueFormat;\n try {\n const formatStr = config.valueFormat || \",\";\n if (formatStr === \"$0,0\") {\n valueFormat = /* @__PURE__ */ __name((value) => \"$\" + format(\",\")(value), \"valueFormat\");\n } else if (formatStr.startsWith(\"$\") && formatStr.includes(\",\")) {\n const precision = /\\.\\d+/.exec(formatStr);\n const precisionStr = precision ? precision[0] : \"\";\n valueFormat = /* @__PURE__ */ __name((value) => \"$\" + format(\",\" + precisionStr)(value), \"valueFormat\");\n } else if (formatStr.startsWith(\"$\")) {\n const restOfFormat = formatStr.substring(1);\n valueFormat = /* @__PURE__ */ __name((value) => \"$\" + format(restOfFormat || \"\")(value), \"valueFormat\");\n } else {\n valueFormat = format(formatStr);\n }\n } catch (error) {\n log.error(\"Error creating format function:\", error);\n valueFormat = format(\",\");\n }\n const colorScale = scaleOrdinal().range([\n \"transparent\",\n themeVariables.cScale0,\n themeVariables.cScale1,\n themeVariables.cScale2,\n themeVariables.cScale3,\n themeVariables.cScale4,\n themeVariables.cScale5,\n themeVariables.cScale6,\n themeVariables.cScale7,\n themeVariables.cScale8,\n themeVariables.cScale9,\n themeVariables.cScale10,\n themeVariables.cScale11\n ]);\n const colorScalePeer = scaleOrdinal().range([\n \"transparent\",\n themeVariables.cScalePeer0,\n themeVariables.cScalePeer1,\n themeVariables.cScalePeer2,\n themeVariables.cScalePeer3,\n themeVariables.cScalePeer4,\n themeVariables.cScalePeer5,\n themeVariables.cScalePeer6,\n themeVariables.cScalePeer7,\n themeVariables.cScalePeer8,\n themeVariables.cScalePeer9,\n themeVariables.cScalePeer10,\n themeVariables.cScalePeer11\n ]);\n const colorScaleLabel = scaleOrdinal().range([\n themeVariables.cScaleLabel0,\n themeVariables.cScaleLabel1,\n themeVariables.cScaleLabel2,\n themeVariables.cScaleLabel3,\n themeVariables.cScaleLabel4,\n themeVariables.cScaleLabel5,\n themeVariables.cScaleLabel6,\n themeVariables.cScaleLabel7,\n themeVariables.cScaleLabel8,\n themeVariables.cScaleLabel9,\n themeVariables.cScaleLabel10,\n themeVariables.cScaleLabel11\n ]);\n if (title) {\n svg.append(\"text\").attr(\"x\", svgWidth / 2).attr(\"y\", titleHeight / 2).attr(\"class\", \"treemapTitle\").attr(\"text-anchor\", \"middle\").attr(\"dominant-baseline\", \"middle\").text(title);\n }\n const g = svg.append(\"g\").attr(\"transform\", `translate(0, ${titleHeight})`).attr(\"class\", \"treemapContainer\");\n const hierarchyRoot = hierarchy(root).sum((d) => d.value ?? 0).sort((a, b) => (b.value ?? 0) - (a.value ?? 0));\n const treemapLayout = treemap().size([width, height]).paddingTop(\n (d) => d.children && d.children.length > 0 ? SECTION_HEADER_HEIGHT + SECTION_INNER_PADDING : 0\n ).paddingInner(treemapInnerPadding).paddingLeft((d) => d.children && d.children.length > 0 ? SECTION_INNER_PADDING : 0).paddingRight((d) => d.children && d.children.length > 0 ? SECTION_INNER_PADDING : 0).paddingBottom((d) => d.children && d.children.length > 0 ? SECTION_INNER_PADDING : 0).round(true);\n const treemapData = treemapLayout(hierarchyRoot);\n const branchNodes = treemapData.descendants().filter((d) => d.children && d.children.length > 0);\n const sections = g.selectAll(\".treemapSection\").data(branchNodes).enter().append(\"g\").attr(\"class\", \"treemapSection\").attr(\"transform\", (d) => `translate(${d.x0},${d.y0})`);\n sections.append(\"rect\").attr(\"width\", (d) => d.x1 - d.x0).attr(\"height\", SECTION_HEADER_HEIGHT).attr(\"class\", \"treemapSectionHeader\").attr(\"fill\", \"none\").attr(\"fill-opacity\", 0.6).attr(\"stroke-width\", 0.6).attr(\"style\", (d) => {\n if (d.depth === 0) {\n return \"display: none;\";\n }\n return \"\";\n });\n sections.append(\"clipPath\").attr(\"id\", (_d, i) => `clip-section-${id}-${i}`).append(\"rect\").attr(\"width\", (d) => Math.max(0, d.x1 - d.x0 - 12)).attr(\"height\", SECTION_HEADER_HEIGHT);\n sections.append(\"rect\").attr(\"width\", (d) => d.x1 - d.x0).attr(\"height\", (d) => d.y1 - d.y0).attr(\"class\", (_d, i) => {\n return `treemapSection section${i}`;\n }).attr(\"fill\", (d) => colorScale(d.data.name)).attr(\"fill-opacity\", 0.6).attr(\"stroke\", (d) => colorScalePeer(d.data.name)).attr(\"stroke-width\", 2).attr(\"stroke-opacity\", 0.4).attr(\"style\", (d) => {\n if (d.depth === 0) {\n return \"display: none;\";\n }\n const styles = styles2String({ cssCompiledStyles: d.data.cssCompiledStyles });\n return styles.nodeStyles + \";\" + styles.borderStyles.join(\";\");\n });\n sections.append(\"text\").attr(\"class\", \"treemapSectionLabel\").attr(\"x\", 6).attr(\"y\", SECTION_HEADER_HEIGHT / 2).attr(\"dominant-baseline\", \"middle\").text((d) => d.depth === 0 ? \"\" : d.data.name).attr(\"font-weight\", \"bold\").attr(\"style\", (d) => {\n if (d.depth === 0) {\n return \"display: none;\";\n }\n const labelStyles = \"dominant-baseline: middle; font-size: 12px; fill:\" + colorScaleLabel(d.data.name) + \"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;\";\n const styles = styles2String({ cssCompiledStyles: d.data.cssCompiledStyles });\n return labelStyles + styles.labelStyles.replace(\"color:\", \"fill:\");\n }).each(function(d) {\n if (d.depth === 0) {\n return;\n }\n const self = select(this);\n const originalText = d.data.name;\n self.text(originalText);\n const totalHeaderWidth = d.x1 - d.x0;\n const labelXPosition = 6;\n let spaceForTextContent;\n if (config.showValues !== false && d.value) {\n const valueEndsAtXRelative = totalHeaderWidth - 10;\n const estimatedValueTextActualWidth = 30;\n const gapBetweenLabelAndValue = 10;\n const labelMustEndBeforeX = valueEndsAtXRelative - estimatedValueTextActualWidth - gapBetweenLabelAndValue;\n spaceForTextContent = labelMustEndBeforeX - labelXPosition;\n } else {\n const labelOwnRightPadding = 6;\n spaceForTextContent = totalHeaderWidth - labelXPosition - labelOwnRightPadding;\n }\n const minimumWidthToDisplay = 15;\n const actualAvailableWidth = Math.max(minimumWidthToDisplay, spaceForTextContent);\n const textNode = self.node();\n const currentTextContentLength = textNode.getComputedTextLength();\n if (currentTextContentLength > actualAvailableWidth) {\n const ellipsis = \"...\";\n let currentTruncatedText = originalText;\n while (currentTruncatedText.length > 0) {\n currentTruncatedText = originalText.substring(0, currentTruncatedText.length - 1);\n if (currentTruncatedText.length === 0) {\n self.text(ellipsis);\n if (textNode.getComputedTextLength() > actualAvailableWidth) {\n self.text(\"\");\n }\n break;\n }\n self.text(currentTruncatedText + ellipsis);\n if (textNode.getComputedTextLength() <= actualAvailableWidth) {\n break;\n }\n }\n }\n });\n if (config.showValues !== false) {\n sections.append(\"text\").attr(\"class\", \"treemapSectionValue\").attr(\"x\", (d) => d.x1 - d.x0 - 10).attr(\"y\", SECTION_HEADER_HEIGHT / 2).attr(\"text-anchor\", \"end\").attr(\"dominant-baseline\", \"middle\").text((d) => d.value ? valueFormat(d.value) : \"\").attr(\"font-style\", \"italic\").attr(\"style\", (d) => {\n if (d.depth === 0) {\n return \"display: none;\";\n }\n const labelStyles = \"text-anchor: end; dominant-baseline: middle; font-size: 10px; fill:\" + colorScaleLabel(d.data.name) + \"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;\";\n const styles = styles2String({ cssCompiledStyles: d.data.cssCompiledStyles });\n return labelStyles + styles.labelStyles.replace(\"color:\", \"fill:\");\n });\n }\n const leafNodes = treemapData.leaves();\n const cell = g.selectAll(\".treemapLeafGroup\").data(leafNodes).enter().append(\"g\").attr(\"class\", (d, i) => {\n return `treemapNode treemapLeafGroup leaf${i}${d.data.classSelector ? ` ${d.data.classSelector}` : \"\"}x`;\n }).attr(\"transform\", (d) => `translate(${d.x0},${d.y0})`);\n cell.append(\"rect\").attr(\"width\", (d) => d.x1 - d.x0).attr(\"height\", (d) => d.y1 - d.y0).attr(\"class\", \"treemapLeaf\").attr(\"fill\", (d) => {\n return d.parent ? colorScale(d.parent.data.name) : colorScale(d.data.name);\n }).attr(\"style\", (d) => {\n const styles = styles2String({ cssCompiledStyles: d.data.cssCompiledStyles });\n return styles.nodeStyles;\n }).attr(\"fill-opacity\", 0.3).attr(\"stroke\", (d) => {\n return d.parent ? colorScale(d.parent.data.name) : colorScale(d.data.name);\n }).attr(\"stroke-width\", 3);\n cell.append(\"clipPath\").attr(\"id\", (_d, i) => `clip-${id}-${i}`).append(\"rect\").attr(\"width\", (d) => Math.max(0, d.x1 - d.x0 - 4)).attr(\"height\", (d) => Math.max(0, d.y1 - d.y0 - 4));\n const leafLabels = cell.append(\"text\").attr(\"class\", \"treemapLabel\").attr(\"x\", (d) => (d.x1 - d.x0) / 2).attr(\"y\", (d) => (d.y1 - d.y0) / 2).attr(\"style\", (d) => {\n const labelStyles = \"text-anchor: middle; dominant-baseline: middle; font-size: 38px;fill:\" + colorScaleLabel(d.data.name) + \";\";\n const styles = styles2String({ cssCompiledStyles: d.data.cssCompiledStyles });\n return labelStyles + styles.labelStyles.replace(\"color:\", \"fill:\");\n }).attr(\"clip-path\", (_d, i) => `url(#clip-${id}-${i})`).text((d) => d.data.name);\n leafLabels.each(function(d) {\n const self = select(this);\n const nodeWidth = d.x1 - d.x0;\n const nodeHeight = d.y1 - d.y0;\n const textNode = self.node();\n const padding = 4;\n const availableWidth = nodeWidth - 2 * padding;\n const availableHeight = nodeHeight - 2 * padding;\n if (availableWidth < 10 || availableHeight < 10) {\n self.style(\"display\", \"none\");\n return;\n }\n let currentLabelFontSize = parseInt(self.style(\"font-size\"), 10);\n const minLabelFontSize = 8;\n const originalValueRelFontSize = 28;\n const valueScaleFactor = 0.6;\n const minValueFontSize = 6;\n const spacingBetweenLabelAndValue = 2;\n while (textNode.getComputedTextLength() > availableWidth && currentLabelFontSize > minLabelFontSize) {\n currentLabelFontSize--;\n self.style(\"font-size\", `${currentLabelFontSize}px`);\n }\n let prospectiveValueFontSize = Math.max(\n minValueFontSize,\n Math.min(originalValueRelFontSize, Math.round(currentLabelFontSize * valueScaleFactor))\n );\n let combinedHeight = currentLabelFontSize + spacingBetweenLabelAndValue + prospectiveValueFontSize;\n while (combinedHeight > availableHeight && currentLabelFontSize > minLabelFontSize) {\n currentLabelFontSize--;\n prospectiveValueFontSize = Math.max(\n minValueFontSize,\n Math.min(originalValueRelFontSize, Math.round(currentLabelFontSize * valueScaleFactor))\n );\n if (prospectiveValueFontSize < minValueFontSize && currentLabelFontSize === minLabelFontSize) {\n break;\n }\n self.style(\"font-size\", `${currentLabelFontSize}px`);\n combinedHeight = currentLabelFontSize + spacingBetweenLabelAndValue + prospectiveValueFontSize;\n if (prospectiveValueFontSize <= minValueFontSize && combinedHeight > availableHeight) {\n }\n }\n self.style(\"font-size\", `${currentLabelFontSize}px`);\n if (textNode.getComputedTextLength() > availableWidth || currentLabelFontSize < minLabelFontSize || availableHeight < currentLabelFontSize) {\n self.style(\"display\", \"none\");\n }\n });\n if (config.showValues !== false) {\n const leafValues = cell.append(\"text\").attr(\"class\", \"treemapValue\").attr(\"x\", (d) => (d.x1 - d.x0) / 2).attr(\"y\", function(d) {\n return (d.y1 - d.y0) / 2;\n }).attr(\"style\", (d) => {\n const labelStyles = \"text-anchor: middle; dominant-baseline: hanging; font-size: 28px;fill:\" + colorScaleLabel(d.data.name) + \";\";\n const styles = styles2String({ cssCompiledStyles: d.data.cssCompiledStyles });\n return labelStyles + styles.labelStyles.replace(\"color:\", \"fill:\");\n }).attr(\"clip-path\", (_d, i) => `url(#clip-${id}-${i})`).text((d) => d.value ? valueFormat(d.value) : \"\");\n leafValues.each(function(d) {\n const valueTextElement = select(this);\n const parentCellNode = this.parentNode;\n if (!parentCellNode) {\n valueTextElement.style(\"display\", \"none\");\n return;\n }\n const labelElement = select(parentCellNode).select(\".treemapLabel\");\n if (labelElement.empty() || labelElement.style(\"display\") === \"none\") {\n valueTextElement.style(\"display\", \"none\");\n return;\n }\n const finalLabelFontSize = parseFloat(labelElement.style(\"font-size\"));\n const originalValueFontSize = 28;\n const valueScaleFactor = 0.6;\n const minValueFontSize = 6;\n const spacingBetweenLabelAndValue = 2;\n const actualValueFontSize = Math.max(\n minValueFontSize,\n Math.min(originalValueFontSize, Math.round(finalLabelFontSize * valueScaleFactor))\n );\n valueTextElement.style(\"font-size\", `${actualValueFontSize}px`);\n const labelCenterY = (d.y1 - d.y0) / 2;\n const valueTopActualY = labelCenterY + finalLabelFontSize / 2 + spacingBetweenLabelAndValue;\n valueTextElement.attr(\"y\", valueTopActualY);\n const nodeWidth = d.x1 - d.x0;\n const nodeTotalHeight = d.y1 - d.y0;\n const cellBottomPadding = 4;\n const maxValueBottomY = nodeTotalHeight - cellBottomPadding;\n const availableWidthForValue = nodeWidth - 2 * 4;\n if (valueTextElement.node().getComputedTextLength() > availableWidthForValue || valueTopActualY + actualValueFontSize > maxValueBottomY || actualValueFontSize < minValueFontSize) {\n valueTextElement.style(\"display\", \"none\");\n } else {\n valueTextElement.style(\"display\", null);\n }\n });\n }\n const diagramPadding = config.diagramPadding ?? 8;\n setupViewPortForSVG(svg, diagramPadding, \"flowchart\", config?.useMaxWidth || false);\n}, \"draw\");\nvar getClasses = /* @__PURE__ */ __name(function(_text, diagramObj) {\n return diagramObj.db.getClasses();\n}, \"getClasses\");\nvar renderer = { draw, getClasses };\n\n// src/diagrams/treemap/styles.ts\nvar defaultTreemapStyleOptions = {\n sectionStrokeColor: \"black\",\n sectionStrokeWidth: \"1\",\n sectionFillColor: \"#efefef\",\n leafStrokeColor: \"black\",\n leafStrokeWidth: \"1\",\n leafFillColor: \"#efefef\",\n labelColor: \"black\",\n labelFontSize: \"12px\",\n valueFontSize: \"10px\",\n valueColor: \"black\",\n titleColor: \"black\",\n titleFontSize: \"14px\"\n};\nvar getStyles = /* @__PURE__ */ __name(({\n treemap: treemap2\n} = {}) => {\n const options = cleanAndMerge(defaultTreemapStyleOptions, treemap2);\n return `\n .treemapNode.section {\n stroke: ${options.sectionStrokeColor};\n stroke-width: ${options.sectionStrokeWidth};\n fill: ${options.sectionFillColor};\n }\n .treemapNode.leaf {\n stroke: ${options.leafStrokeColor};\n stroke-width: ${options.leafStrokeWidth};\n fill: ${options.leafFillColor};\n }\n .treemapLabel {\n fill: ${options.labelColor};\n font-size: ${options.labelFontSize};\n }\n .treemapValue {\n fill: ${options.valueColor};\n font-size: ${options.valueFontSize};\n }\n .treemapTitle {\n fill: ${options.titleColor};\n font-size: ${options.titleFontSize};\n }\n `;\n}, \"getStyles\");\nvar styles_default = getStyles;\n\n// src/diagrams/treemap/diagram.ts\nvar diagram = {\n parser,\n get db() {\n return new TreeMapDB();\n },\n renderer,\n styles: styles_default\n};\nexport {\n diagram\n};\n"],"x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33],"mappings":";;;;;;;;;;AAAA,SAAA,EAAwB,GAAG;AACzB,QAAO,KAAK,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC,IAAI,OAChC,EAAE,eAAe,KAAK,CAAC,QAAQ,MAAM,GAAG,GACxC,EAAE,SAAS,GAAG;;AAMtB,SAAgB,EAAmB,GAAG,GAAG;AACvC,KAAI,CAAC,SAAS,EAAE,IAAI,MAAM,EAAG,QAAO;CACpC,IAAI,KAAK,IAAI,IAAI,EAAE,cAAc,IAAI,EAAE,GAAG,EAAE,eAAe,EAAE,QAAQ,IAAI,EAAE,IAAc,EAAE,MAAM,GAAG,EAAE;AAItG,QAAO,CACL,EAAY,SAAS,IAAI,EAAY,KAAK,EAAY,MAAM,EAAE,GAAG,GACjE,CAAC,EAAE,MAAM,IAAI,EAAE,CAChB;;;;AChBH,SAAA,EAAwB,GAAG;AACzB,QAAO,IAAI,EAAmB,KAAK,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK;;;;ACHzD,SAAA,EAAwB,GAAU,GAAW;AAC3C,QAAO,SAAS,GAAO,GAAO;AAO5B,OANA,IAAI,IAAI,EAAM,QACV,IAAI,EAAE,EACN,IAAI,GACJ,IAAI,EAAS,IACb,IAAS,GAEN,IAAI,KAAK,IAAI,MACd,IAAS,IAAI,IAAI,MAAO,IAAI,KAAK,IAAI,GAAG,IAAQ,EAAO,GAC3D,EAAE,KAAK,EAAM,UAAU,KAAK,GAAG,IAAI,EAAE,CAAC,EACtC,GAAK,KAAU,IAAI,KAAK,KACxB,KAAI,EAAS,KAAK,IAAI,KAAK,EAAS;AAGtC,SAAO,EAAE,SAAS,CAAC,KAAK,EAAU;;;;;ACftC,SAAA,EAAwB,GAAU;AAChC,QAAO,SAAS,GAAO;AACrB,SAAO,EAAM,QAAQ,UAAU,SAAS,GAAG;AACzC,UAAO,EAAS,CAAC;IACjB;;;;;ACHN,IAAI,IAAK;AAET,SAAwB,EAAgB,GAAW;AACjD,KAAI,EAAE,IAAQ,EAAG,KAAK,EAAU,EAAG,OAAU,MAAM,qBAAqB,EAAU;CAClF,IAAI;AACJ,QAAO,IAAI,EAAgB;EACzB,MAAM,EAAM;EACZ,OAAO,EAAM;EACb,MAAM,EAAM;EACZ,QAAQ,EAAM;EACd,MAAM,EAAM;EACZ,OAAO,EAAM;EACb,OAAO,EAAM;EACb,WAAW,EAAM,MAAM,EAAM,GAAG,MAAM,EAAE;EACxC,MAAM,EAAM;EACZ,MAAM,EAAM;EACb,CAAC;;AAGJ,EAAgB,YAAY,EAAgB;AAE5C,SAAgB,EAAgB,GAAW;AAUzC,CATA,KAAK,OAAO,EAAU,SAAS,KAAA,IAAY,MAAM,EAAU,OAAO,IAClE,KAAK,QAAQ,EAAU,UAAU,KAAA,IAAY,MAAM,EAAU,QAAQ,IACrE,KAAK,OAAO,EAAU,SAAS,KAAA,IAAY,MAAM,EAAU,OAAO,IAClE,KAAK,SAAS,EAAU,WAAW,KAAA,IAAY,KAAK,EAAU,SAAS,IACvE,KAAK,OAAO,CAAC,CAAC,EAAU,MACxB,KAAK,QAAQ,EAAU,UAAU,KAAA,IAAY,KAAA,IAAY,CAAC,EAAU,OACpE,KAAK,QAAQ,CAAC,CAAC,EAAU,OACzB,KAAK,YAAY,EAAU,cAAc,KAAA,IAAY,KAAA,IAAY,CAAC,EAAU,WAC5E,KAAK,OAAO,CAAC,CAAC,EAAU,MACxB,KAAK,OAAO,EAAU,SAAS,KAAA,IAAY,KAAK,EAAU,OAAO;;AAGnE,EAAgB,UAAU,WAAW,WAAW;AAC9C,QAAO,KAAK,OACN,KAAK,QACL,KAAK,OACL,KAAK,UACJ,KAAK,OAAO,MAAM,OAClB,KAAK,UAAU,KAAA,IAAY,KAAK,KAAK,IAAI,GAAG,KAAK,QAAQ,EAAE,KAC3D,KAAK,QAAQ,MAAM,OACnB,KAAK,cAAc,KAAA,IAAY,KAAK,MAAM,KAAK,IAAI,GAAG,KAAK,YAAY,EAAE,KACzE,KAAK,OAAO,MAAM,MACnB,KAAK;;;;AC5Cb,SAAA,EAAwB,GAAG;AACzB,KAAK,MAAK,IAAI,IAAI,EAAE,QAAQ,IAAI,GAAG,IAAK,IAAI,GAAI,IAAI,GAAG,EAAE,EACvD,SAAQ,EAAE,IAAV;EACE,KAAK;AAAK,OAAK,IAAK;AAAG;EACvB,KAAK;AAA2B,GAAlB,MAAO,MAAG,IAAK,IAAG,IAAK;AAAG;EACxC;AAAS,OAAI,CAAC,CAAC,EAAE,GAAI,OAAM;AAAK,GAAI,IAAK,MAAG,IAAK;AAAG;;AAGxD,QAAO,IAAK,IAAI,EAAE,MAAM,GAAG,EAAG,GAAG,EAAE,MAAM,IAAK,EAAE,GAAG;;;;ACPrD,IAAW;AAEX,SAAA,EAAwB,GAAG,GAAG;CAC5B,IAAI,IAAI,EAAmB,GAAG,EAAE;AAChC,KAAI,CAAC,EAAG,QAAO,IAAiB,KAAA,GAAW,EAAE,YAAY,EAAE;CAC3D,IAAI,IAAc,EAAE,IAChB,IAAW,EAAE,IACb,IAAI,KAAY,IAAiB,KAAK,IAAI,IAAI,KAAK,IAAI,GAAG,KAAK,MAAM,IAAW,EAAE,CAAC,CAAC,GAAG,KAAK,GAC5F,IAAI,EAAY;AACpB,QAAO,MAAM,IAAI,IACX,IAAI,IAAI,IAAkB,MAAM,IAAI,IAAI,EAAE,CAAC,KAAK,IAAI,GACpD,IAAI,IAAI,EAAY,MAAM,GAAG,EAAE,GAAG,MAAM,EAAY,MAAM,EAAE,GAC5D,OAAW,MAAM,IAAI,EAAE,CAAC,KAAK,IAAI,GAAG,EAAmB,GAAG,KAAK,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC,CAAC;;;;ACZ1F,SAAA,EAAwB,GAAG,GAAG;CAC5B,IAAI,IAAI,EAAmB,GAAG,EAAE;AAChC,KAAI,CAAC,EAAG,QAAO,IAAI;CACnB,IAAI,IAAc,EAAE,IAChB,IAAW,EAAE;AACjB,QAAO,IAAW,IAAI,OAAW,MAAM,CAAC,EAAS,CAAC,KAAK,IAAI,GAAG,IACxD,EAAY,SAAS,IAAW,IAAI,EAAY,MAAM,GAAG,IAAW,EAAE,GAAG,MAAM,EAAY,MAAM,IAAW,EAAE,GAC9G,IAAkB,MAAM,IAAW,EAAY,SAAS,EAAE,CAAC,KAAK,IAAI;;;;ACL5E,IAAA,IAAe;CACb,MAAM,GAAG,OAAO,IAAI,KAAK,QAAQ,EAAE;CACnC,IAAM,MAAM,KAAK,MAAM,EAAE,CAAC,SAAS,EAAE;CACrC,IAAM,MAAM,IAAI;CAChB,GAAKA;CACL,IAAM,GAAG,MAAM,EAAE,cAAc,EAAE;CACjC,IAAM,GAAG,MAAM,EAAE,QAAQ,EAAE;CAC3B,IAAM,GAAG,MAAM,EAAE,YAAY,EAAE;CAC/B,IAAM,MAAM,KAAK,MAAM,EAAE,CAAC,SAAS,EAAE;CACrC,IAAM,GAAG,MAAMC,EAAc,IAAI,KAAK,EAAE;CACxC,GAAKA;CACL,GAAKC;CACL,IAAM,MAAM,KAAK,MAAM,EAAE,CAAC,SAAS,GAAG,CAAC,aAAa;CACpD,IAAM,MAAM,KAAK,MAAM,EAAE,CAAC,SAAS,GAAG;CACvC;;;AClBD,SAAA,EAAwB,GAAG;AACzB,QAAO;;;;ACQT,IAAI,IAAM,MAAM,UAAU,KACtB,IAAW;CAAC;CAAI;CAAI;CAAI;CAAI;CAAI;CAAI;CAAI;CAAI;CAAG;CAAI;CAAI;CAAI;CAAI;CAAI;CAAI;CAAI;CAAI;AAEnF,SAAA,GAAwB,GAAQ;CAC9B,IAAI,IAAQ,EAAO,aAAa,KAAA,KAAa,EAAO,cAAc,KAAA,IAAYC,IAAWC,EAAY,EAAI,KAAK,EAAO,UAAU,OAAO,EAAE,EAAO,YAAY,GAAG,EAC1J,IAAiB,EAAO,aAAa,KAAA,IAAY,KAAK,EAAO,SAAS,KAAK,IAC3E,IAAiB,EAAO,aAAa,KAAA,IAAY,KAAK,EAAO,SAAS,KAAK,IAC3E,IAAU,EAAO,YAAY,KAAA,IAAY,MAAM,EAAO,UAAU,IAChE,IAAW,EAAO,aAAa,KAAA,IAAYD,IAAWE,EAAe,EAAI,KAAK,EAAO,UAAU,OAAO,CAAC,EACvG,IAAU,EAAO,YAAY,KAAA,IAAY,MAAM,EAAO,UAAU,IAChE,IAAQ,EAAO,UAAU,KAAA,IAAY,MAAM,EAAO,QAAQ,IAC1D,IAAM,EAAO,QAAQ,KAAA,IAAY,QAAQ,EAAO,MAAM;CAE1D,SAAS,EAAU,GAAW,GAAS;AACrC,MAAY,EAAgB,EAAU;EAEtC,IAAI,IAAO,EAAU,MACjB,IAAQ,EAAU,OAClB,IAAO,EAAU,MACjB,IAAS,EAAU,QACnB,IAAO,EAAU,MACjB,IAAQ,EAAU,OAClB,IAAQ,EAAU,OAClB,IAAY,EAAU,WACtB,IAAO,EAAU,MACjB,IAAO,EAAU;AASrB,EANI,MAAS,OAAK,IAAQ,IAAM,IAAO,OAG7BC,EAAY,OAAO,MAAc,KAAA,MAAc,IAAY,KAAK,IAAO,IAAM,IAAO,OAG1F,KAAS,MAAS,OAAO,MAAU,SAAM,IAAO,IAAM,IAAO,KAAK,IAAQ;EAI9E,IAAI,KAAU,KAAW,EAAQ,WAAW,KAAA,IAAY,EAAQ,SAAS,OAAO,MAAW,MAAM,IAAiB,MAAW,OAAO,SAAS,KAAK,EAAK,GAAG,MAAM,EAAK,aAAa,GAAG,KACjL,KAAU,MAAW,MAAM,IAAiB,OAAO,KAAK,EAAK,GAAG,IAAU,OAAO,KAAW,EAAQ,WAAW,KAAA,IAAY,EAAQ,SAAS,KAK5I,IAAaA,EAAY,IACzB,IAAc,aAAa,KAAK,EAAK;AAMzC,MAAY,MAAc,KAAA,IAAY,IAChC,SAAS,KAAK,EAAK,GAAG,KAAK,IAAI,GAAG,KAAK,IAAI,IAAI,EAAU,CAAC,GAC1D,KAAK,IAAI,GAAG,KAAK,IAAI,IAAI,EAAU,CAAC;EAE1C,SAAS,EAAO,GAAO;GACrB,IAAI,IAAc,GACd,IAAc,GACd,GAAG,GAAG;AAEV,OAAI,MAAS,IAEX,CADA,IAAc,EAAW,EAAM,GAAG,GAClC,IAAQ;QACH;AACL,QAAQ,CAAC;IAGT,IAAI,IAAgB,IAAQ,KAAK,IAAI,IAAQ;AAiB7C,QAdA,IAAQ,MAAM,EAAM,GAAG,IAAM,EAAW,KAAK,IAAI,EAAM,EAAE,EAAU,EAG/D,MAAM,IAAQC,EAAW,EAAM,GAG/B,KAAiB,CAAC,KAAU,KAAK,MAAS,QAAK,IAAgB,KAGnE,KAAe,IAAiB,MAAS,MAAM,IAAO,IAAS,MAAS,OAAO,MAAS,MAAM,KAAK,KAAQ,GAC3G,KAAe,MAAS,OAAO,CAAC,MAAM,EAAM,IAAI,MAAmB,KAAA,IAAY,EAAS,IAAI,IAAiB,KAAK,MAAM,KAAe,KAAiB,MAAS,MAAM,MAAM,KAIzK,GAEF;UADA,IAAI,IAAI,IAAI,EAAM,QACX,EAAE,IAAI,GACX,KAAI,IAAI,EAAM,WAAW,EAAE,EAAE,KAAK,KAAK,IAAI,IAAI;AAE7C,MADA,KAAe,MAAM,KAAK,IAAU,EAAM,MAAM,IAAI,EAAE,GAAG,EAAM,MAAM,EAAE,IAAI,GAC3E,IAAQ,EAAM,MAAM,GAAG,EAAE;AACzB;;;;AAOR,GAAI,KAAS,CAAC,MAAM,IAAQ,EAAM,GAAO,SAAS;GAGlD,IAAI,IAAS,EAAY,SAAS,EAAM,SAAS,EAAY,QACzD,IAAU,IAAS,IAAY,MAAM,IAAQ,IAAS,EAAE,CAAC,KAAK,EAAK,GAAG;AAM1E,WAHI,KAAS,MAAM,IAAQ,EAAM,IAAU,GAAO,EAAQ,SAAS,IAAQ,EAAY,SAAS,SAAS,EAAE,IAAU,KAG7G,GAAR;IACE,KAAK;AAAK,SAAQ,IAAc,IAAQ,IAAc;AAAS;IAC/D,KAAK;AAAK,SAAQ,IAAc,IAAU,IAAQ;AAAa;IAC/D,KAAK;AAAK,SAAQ,EAAQ,MAAM,GAAG,IAAS,EAAQ,UAAU,EAAE,GAAG,IAAc,IAAQ,IAAc,EAAQ,MAAM,EAAO;AAAE;IAC9H;AAAS,SAAQ,IAAU,IAAc,IAAQ;AAAa;;AAGhE,UAAO,EAAS,EAAM;;AAOxB,SAJA,EAAO,WAAW,WAAW;AAC3B,UAAO,IAAY;KAGd;;CAGT,SAAS,EAAa,GAAW,GAAO;EACtC,IAAI,IAAI,KAAK,IAAI,IAAI,KAAK,IAAI,GAAG,KAAK,MAAMC,EAAS,EAAM,GAAG,EAAE,CAAC,CAAC,GAAG,GACjE,IAAa,MAAI,CAAC,GAClB,IAAI,GAAW,IAAY,EAAgB,EAAU,EAAE,EAAU,OAAO,KAAK,IAAY,EAAC,QAAQ,EAAS,IAAI,IAAI,IAAG,CAAC;AAC3H,SAAO,SAAS,GAAO;AACrB,UAAO,EAAE,IAAI,EAAM;;;AAIvB,QAAO;EACL,QAAQ;EACM;EACf;;;;AC/IH,IAAI,GACO;AAGX,GAAc;CACZ,WAAW;CACX,UAAU,CAAC,EAAE;CACb,UAAU,CAAC,KAAK,GAAG;CACpB,CAAC;AAEF,SAAwB,GAAc,GAAY;AAIhD,QAHA,IAASC,GAAa,EAAW,EACjC,IAAS,EAAO,QACD,EAAO,cACf;;;;AChBT,SAAS,GAAM,GAAM;CACnB,IAAI,IAAM,GACN,IAAW,EAAK,UAChB,IAAI,KAAY,EAAS;AAC7B,KAAI,CAAC,EAAG,KAAM;KACT,QAAO,EAAE,KAAK,GAAG,MAAO,EAAS,GAAG;AACzC,GAAK,QAAQ;;AAGf,SAAA,KAA0B;AACxB,QAAO,KAAK,UAAU,GAAM;;;;ACV9B,SAAA,GAAwB,GAAU,GAAM;CACtC,IAAI,IAAQ;AACZ,MAAK,IAAM,KAAQ,KACjB,GAAS,KAAK,GAAM,GAAM,EAAE,GAAO,KAAK;AAE1C,QAAO;;;;ACLT,SAAA,GAAwB,GAAU,GAAM;AAEtC,MADA,IAAI,IAAO,MAAM,IAAQ,CAAC,EAAK,EAAE,GAAU,GAAG,IAAQ,IAC/C,IAAO,EAAM,KAAK,EAEvB,KADA,EAAS,KAAK,GAAM,GAAM,EAAE,GAAO,KAAK,EACpC,IAAW,EAAK,SAClB,MAAK,IAAI,EAAS,SAAS,GAAG,KAAK,GAAG,EAAE,EACtC,GAAM,KAAK,EAAS,GAAG;AAI7B,QAAO;;;;ACVT,SAAA,GAAwB,GAAU,GAAM;AAEtC,MADA,IAAI,IAAO,MAAM,IAAQ,CAAC,EAAK,EAAE,IAAO,EAAE,EAAE,GAAU,GAAG,GAAG,IAAQ,IAC7D,IAAO,EAAM,KAAK,EAEvB,KADA,EAAK,KAAK,EAAK,EACX,IAAW,EAAK,SAClB,MAAK,IAAI,GAAG,IAAI,EAAS,QAAQ,IAAI,GAAG,EAAE,EACxC,GAAM,KAAK,EAAS,GAAG;AAI7B,QAAO,IAAO,EAAK,KAAK,EACtB,GAAS,KAAK,GAAM,GAAM,EAAE,GAAO,KAAK;AAE1C,QAAO;;;;ACbT,SAAA,GAAwB,GAAU,GAAM;CACtC,IAAI,IAAQ;AACZ,MAAK,IAAM,KAAQ,KACjB,KAAI,EAAS,KAAK,GAAM,GAAM,EAAE,GAAO,KAAK,CAC1C,QAAO;;;;ACJb,SAAA,GAAwB,GAAO;AAC7B,QAAO,KAAK,UAAU,SAAS,GAAM;AAInC,OAHA,IAAI,IAAM,CAAC,EAAM,EAAK,KAAK,IAAI,GAC3B,IAAW,EAAK,UAChB,IAAI,KAAY,EAAS,QACtB,EAAE,KAAK,GAAG,MAAO,EAAS,GAAG;AACpC,IAAK,QAAQ;GACb;;;;ACPJ,SAAA,GAAwB,GAAS;AAC/B,QAAO,KAAK,WAAW,SAAS,GAAM;AACpC,EAAI,EAAK,YACP,EAAK,SAAS,KAAK,EAAQ;GAE7B;;;;ACLJ,SAAA,GAAwB,GAAK;AAI3B,MAHA,IAAI,IAAQ,MACR,IAAW,EAAoB,GAAO,EAAI,EAC1C,IAAQ,CAAC,EAAM,EACZ,MAAU,GAEf,CADA,IAAQ,EAAM,QACd,EAAM,KAAK,EAAM;AAGnB,MADA,IAAI,IAAI,EAAM,QACP,MAAQ,GAEb,CADA,EAAM,OAAO,GAAG,GAAG,EAAI,EACvB,IAAM,EAAI;AAEZ,QAAO;;AAGT,SAAS,EAAoB,GAAG,GAAG;AACjC,KAAI,MAAM,EAAG,QAAO;CACpB,IAAI,IAAS,EAAE,WAAW,EACtB,IAAS,EAAE,WAAW,EACtB,IAAI;AAGR,MAFA,IAAI,EAAO,KAAK,EAChB,IAAI,EAAO,KAAK,EACT,MAAM,GAGX,CAFA,IAAI,GACJ,IAAI,EAAO,KAAK,EAChB,IAAI,EAAO,KAAK;AAElB,QAAO;;;;AC5BT,SAAA,IAA0B;AAExB,MADA,IAAI,IAAO,MAAM,IAAQ,CAAC,EAAK,EACxB,IAAO,EAAK,QACjB,GAAM,KAAK,EAAK;AAElB,QAAO;;;;ACLT,SAAA,IAA0B;AACxB,QAAO,MAAM,KAAK,KAAK;;;;ACDzB,SAAA,IAA0B;CACxB,IAAI,IAAS,EAAE;AAMf,QALA,KAAK,WAAW,SAAS,GAAM;AAC7B,EAAK,EAAK,YACR,EAAO,KAAK,EAAK;GAEnB,EACK;;;;ACPT,SAAA,IAA0B;CACxB,IAAI,IAAO,MAAM,IAAQ,EAAE;AAM3B,QALA,EAAK,KAAK,SAAS,GAAM;AACvB,EAAI,MAAS,KACX,EAAM,KAAK;GAAC,QAAQ,EAAK;GAAQ,QAAQ;GAAK,CAAC;GAEjD,EACK;;;;ACPT,UAAA,KAA2B;CACzB,IAAI,IAAO,MAAM,GAAS,IAAO,CAAC,EAAK,EAAE,GAAU,GAAG;AACtD;AAEE,OADA,IAAU,EAAK,SAAS,EAAE,IAAO,EAAE,EAC5B,IAAO,EAAQ,KAAK,EAEzB,KADA,MAAM,GACF,IAAW,EAAK,SAClB,MAAK,IAAI,GAAG,IAAI,EAAS,QAAQ,IAAI,GAAG,EAAE,EACxC,GAAK,KAAK,EAAS,GAAG;QAIrB,EAAK;;;;ACEhB,SAAwB,EAAU,GAAM,GAAU;AAChD,CAAI,aAAgB,OAClB,IAAO,CAAC,KAAA,GAAW,EAAK,EACpB,MAAa,KAAA,MAAW,IAAW,OAC9B,MAAa,KAAA,MACtB,IAAW;AAWb,MARA,IAAI,IAAO,IAAI,EAAK,EAAK,EACrB,GACA,IAAQ,CAAC,EAAK,EACd,GACA,GACA,GACA,GAEG,IAAO,EAAM,KAAK,EACvB,MAAK,IAAS,EAAS,EAAK,KAAK,MAAM,KAAK,IAAS,MAAM,KAAK,EAAO,EAAE,QAEvE,MADA,EAAK,WAAW,GACX,IAAI,IAAI,GAAG,KAAK,GAAG,EAAE,EAGxB,CAFA,EAAM,KAAK,IAAQ,EAAO,KAAK,IAAI,EAAK,EAAO,GAAG,CAAC,EACnD,EAAM,SAAS,GACf,EAAM,QAAQ,EAAK,QAAQ;AAKjC,QAAO,EAAK,WAAW,EAAc;;AAGvC,SAAS,KAAY;AACnB,QAAO,EAAU,KAAK,CAAC,WAAW,GAAS;;AAG7C,SAAS,GAAe,GAAG;AACzB,QAAO,EAAE;;AAGX,SAAS,GAAY,GAAG;AACtB,QAAO,MAAM,QAAQ,EAAE,GAAG,EAAE,KAAK;;AAGnC,SAAS,GAAS,GAAM;AAEtB,CADI,EAAK,KAAK,UAAU,KAAA,MAAW,EAAK,QAAQ,EAAK,KAAK,QAC1D,EAAK,OAAO,EAAK,KAAK;;AAGxB,SAAgB,EAAc,GAAM;CAClC,IAAI,IAAS;AACb;AAAG,IAAK,SAAS;SACT,IAAO,EAAK,WAAY,EAAK,SAAS,EAAE;;AAGlD,SAAgB,EAAK,GAAM;AAIzB,CAHA,KAAK,OAAO,GACZ,KAAK,QACL,KAAK,SAAS,GACd,KAAK,SAAS;;AAGhB,EAAK,YAAY,EAAU,YAAY;CACrC,aAAa;CACb,OAAOC;CACP,MAAMC;CACN,WAAWC;CACX,YAAYC;CACZ,MAAMC;CACN,KAAKC;CACL,MAAMC;CACN,MAAMC;CACN,WAAWC;CACX,aAAaC;CACb,QAAQC;CACR,OAAOC;CACP,MAAM;EACL,OAAO,WAAWC;CACpB;;;ACtFD,SAAgB,GAAS,GAAG;AAC1B,KAAI,OAAO,KAAM,WAAY,OAAU,OAAK;AAC5C,QAAO;;;;ACNT,SAAgB,IAAe;AAC7B,QAAO;;AAGT,SAAA,EAAwB,GAAG;AACzB,QAAO,WAAW;AAChB,SAAO;;;;;ACNX,SAAA,GAAwB,GAAM;AAI5B,CAHA,EAAK,KAAK,KAAK,MAAM,EAAK,GAAG,EAC7B,EAAK,KAAK,KAAK,MAAM,EAAK,GAAG,EAC7B,EAAK,KAAK,KAAK,MAAM,EAAK,GAAG,EAC7B,EAAK,KAAK,KAAK,MAAM,EAAK,GAAG;;;;ACJ/B,SAAA,GAAwB,GAAQ,GAAI,GAAI,GAAI,GAAI;AAO9C,MANA,IAAI,IAAQ,EAAO,UACf,GACA,IAAI,IACJ,IAAI,EAAM,QACV,IAAI,EAAO,UAAU,IAAK,KAAM,EAAO,OAEpC,EAAE,IAAI,GAEX,CADA,IAAO,EAAM,IAAI,EAAK,KAAK,GAAI,EAAK,KAAK,GACzC,EAAK,KAAK,GAAI,EAAK,KAAK,KAAM,EAAK,QAAQ;;;;ACT/C,SAAA,GAAwB,GAAQ,GAAI,GAAI,GAAI,GAAI;AAO9C,MANA,IAAI,IAAQ,EAAO,UACf,GACA,IAAI,IACJ,IAAI,EAAM,QACV,IAAI,EAAO,UAAU,IAAK,KAAM,EAAO,OAEpC,EAAE,IAAI,GAEX,CADA,IAAO,EAAM,IAAI,EAAK,KAAK,GAAI,EAAK,KAAK,GACzC,EAAK,KAAK,GAAI,EAAK,KAAK,KAAM,EAAK,QAAQ;;;;ACN/C,IAAW,MAAO,IAAI,KAAK,KAAK,EAAE,IAAI;AAEtC,SAAgB,GAAc,GAAO,GAAQ,GAAI,GAAI,GAAI,GAAI;AAkB3D,MAjBA,IAAI,IAAO,EAAE,EACT,IAAQ,EAAO,UACf,GACA,GACA,IAAK,GACL,IAAK,GACL,IAAI,EAAM,QACV,GAAI,GACJ,IAAQ,EAAO,OACf,GACA,GACA,GACA,GACA,GACA,GACA,GAEG,IAAK,IAAG;AACb,MAAK,IAAK,GAAI,IAAK,IAAK;AAGxB;AAAG,OAAW,EAAM,KAAM;SAAc,CAAC,KAAY,IAAK;AAO1D,OANA,IAAW,IAAW,GACtB,IAAQ,KAAK,IAAI,IAAK,GAAI,IAAK,EAAG,IAAI,IAAQ,IAC9C,IAAO,IAAW,IAAW,GAC7B,IAAW,KAAK,IAAI,IAAW,GAAM,IAAO,EAAS,EAG9C,IAAK,GAAG,EAAE,GAAI;AAMnB,OALA,KAAY,IAAY,EAAM,GAAI,OAC9B,IAAY,MAAU,IAAW,IACjC,IAAY,MAAU,IAAW,IACrC,IAAO,IAAW,IAAW,GAC7B,IAAW,KAAK,IAAI,IAAW,GAAM,IAAO,EAAS,EACjD,IAAW,GAAU;AAAE,SAAY;AAAW;;AAClD,OAAW;;AAOb,EAHA,EAAK,KAAK,IAAM;GAAC,OAAO;GAAU,MAAM,IAAK;GAAI,UAAU,EAAM,MAAM,GAAI,EAAG;GAAC,CAAC,EAC5E,EAAI,OAAM,GAAY,GAAK,GAAI,GAAI,GAAI,IAAQ,KAAM,IAAK,IAAW,IAAQ,EAAG,GAC/E,GAAa,GAAK,GAAI,GAAI,IAAQ,KAAM,IAAK,IAAW,IAAQ,GAAI,EAAG,EAC5E,KAAS,GAAU,IAAK;;AAG1B,QAAO;;AAGT,IAAA,MAAgB,SAAS,EAAO,GAAO;CAErC,SAAS,EAAS,GAAQ,GAAI,GAAI,GAAI,GAAI;AACxC,KAAc,GAAO,GAAQ,GAAI,GAAI,GAAI,EAAG;;AAO9C,QAJA,EAAS,QAAQ,SAAS,GAAG;AAC3B,SAAO,GAAQ,IAAI,CAAC,KAAK,IAAI,IAAI,EAAE;IAG9B;GACN,GAAI;;;AC5DP,SAAA,KAA0B;CACxB,IAAI,IAAOC,IACP,IAAQ,IACR,IAAK,GACL,IAAK,GACL,IAAe,CAAC,EAAE,EAClB,IAAe,GACf,IAAa,GACb,IAAe,GACf,IAAgB,GAChB,IAAc;CAElB,SAAS,EAAQ,GAAM;AAQrB,SAPA,EAAK,KACL,EAAK,KAAK,GACV,EAAK,KAAK,GACV,EAAK,KAAK,GACV,EAAK,WAAW,EAAa,EAC7B,IAAe,CAAC,EAAE,EACd,KAAO,EAAK,WAAWC,GAAU,EAC9B;;CAGT,SAAS,EAAa,GAAM;EAC1B,IAAI,IAAI,EAAa,EAAK,QACtB,IAAK,EAAK,KAAK,GACf,IAAK,EAAK,KAAK,GACf,IAAK,EAAK,KAAK,GACf,IAAK,EAAK,KAAK;AAOnB,EANI,IAAK,MAAI,IAAK,KAAM,IAAK,KAAM,IAC/B,IAAK,MAAI,IAAK,KAAM,IAAK,KAAM,IACnC,EAAK,KAAK,GACV,EAAK,KAAK,GACV,EAAK,KAAK,GACV,EAAK,KAAK,GACN,EAAK,aACP,IAAI,EAAa,EAAK,QAAQ,KAAK,EAAa,EAAK,GAAG,GACxD,KAAM,EAAY,EAAK,GAAG,GAC1B,KAAM,EAAW,EAAK,GAAG,GACzB,KAAM,EAAa,EAAK,GAAG,GAC3B,KAAM,EAAc,EAAK,GAAG,GACxB,IAAK,MAAI,IAAK,KAAM,IAAK,KAAM,IAC/B,IAAK,MAAI,IAAK,KAAM,IAAK,KAAM,IACnC,EAAK,GAAM,GAAI,GAAI,GAAI,EAAG;;AA4C9B,QAxCA,EAAQ,QAAQ,SAAS,GAAG;AAC1B,SAAO,UAAU,UAAU,IAAQ,CAAC,CAAC,GAAG,KAAW;IAGrD,EAAQ,OAAO,SAAS,GAAG;AACzB,SAAO,UAAU,UAAU,IAAK,CAAC,EAAE,IAAI,IAAK,CAAC,EAAE,IAAI,KAAW,CAAC,GAAI,EAAG;IAGxE,EAAQ,OAAO,SAAS,GAAG;AACzB,SAAO,UAAU,UAAU,IAAO,GAAS,EAAE,EAAE,KAAW;IAG5D,EAAQ,UAAU,SAAS,GAAG;AAC5B,SAAO,UAAU,SAAS,EAAQ,aAAa,EAAE,CAAC,aAAa,EAAE,GAAG,EAAQ,cAAc;IAG5F,EAAQ,eAAe,SAAS,GAAG;AACjC,SAAO,UAAU,UAAU,IAAe,OAAO,KAAM,aAAa,IAAIC,EAAS,CAAC,EAAE,EAAE,KAAW;IAGnG,EAAQ,eAAe,SAAS,GAAG;AACjC,SAAO,UAAU,SAAS,EAAQ,WAAW,EAAE,CAAC,aAAa,EAAE,CAAC,cAAc,EAAE,CAAC,YAAY,EAAE,GAAG,EAAQ,YAAY;IAGxH,EAAQ,aAAa,SAAS,GAAG;AAC/B,SAAO,UAAU,UAAU,IAAa,OAAO,KAAM,aAAa,IAAIA,EAAS,CAAC,EAAE,EAAE,KAAW;IAGjG,EAAQ,eAAe,SAAS,GAAG;AACjC,SAAO,UAAU,UAAU,IAAe,OAAO,KAAM,aAAa,IAAIA,EAAS,CAAC,EAAE,EAAE,KAAW;IAGnG,EAAQ,gBAAgB,SAAS,GAAG;AAClC,SAAO,UAAU,UAAU,IAAgB,OAAO,KAAM,aAAa,IAAIA,EAAS,CAAC,EAAE,EAAE,KAAW;IAGpG,EAAQ,cAAc,SAAS,GAAG;AAChC,SAAO,UAAU,UAAU,IAAc,OAAO,KAAM,aAAa,IAAIA,EAAS,CAAC,EAAE,EAAE,KAAW;IAG3F;;;;AC1DT,IAAI,IAAY,MAAM;CACpB,cAAc;AAUZ,EATA,KAAK,QAAQ,EAAE,EACf,KAAK,yBAAyB,IAAI,KAAK,EACvC,KAAK,aAAa,EAAE,EACpB,KAAK,0BAA0B,IAAI,KAAK,EACxC,KAAK,cAAc,GACnB,KAAK,cAAc,GACnB,KAAK,kBAAkB,GACvB,KAAK,kBAAkB,GACvB,KAAK,oBAAoB,GACzB,KAAK,oBAAoB;;CAE3B;AACE,IAAO,MAAM,YAAY;;CAE3B,WAAW;AACT,SAAO,KAAK;;CAEd,YAAY;EACV,IAAM,IAAgB,GAChB,IAAa,GAAW;AAC9B,SAAO,EAAc;GACnB,GAAG,EAAc;GACjB,GAAG,EAAW,WAAW,EAAE;GAC5B,CAAC;;CAEJ,QAAQ,GAAM,GAAO;AAGnB,EAFA,KAAK,MAAM,KAAK,EAAK,EACrB,KAAK,OAAO,IAAI,GAAM,EAAM,EACxB,MAAU,MACZ,KAAK,WAAW,KAAK,EAAK,EAC1B,KAAK,SAAS;;CAGlB,UAAU;AACR,SAAO;GAAE,MAAM;GAAI,UAAU,KAAK;GAAY;;CAEhD,SAAS,GAAI,GAAQ;EACnB,IAAM,IAAa,KAAK,QAAQ,IAAI,EAAG,IAAI;GAAE;GAAI,QAAQ,EAAE;GAAE,YAAY,EAAE;GAAE,EACvE,IAAS,EAAO,QAAQ,QAAQ,MAAe,CAAC,QAAQ,MAAM,IAAI,CAAC,QAAQ,QAAQ,IAAI,CAAC,MAAM,IAAI;AAiBxG,EAhBI,KACF,EAAO,SAAS,MAAM;AAQpB,GAPI,EAAa,EAAE,KACb,GAAY,aACd,EAAW,WAAW,KAAK,EAAE,GAE7B,EAAW,aAAa,CAAC,EAAE,GAG3B,GAAY,SACd,EAAW,OAAO,KAAK,EAAE,GAEzB,EAAW,SAAS,CAAC,EAAE;IAEzB,EAEJ,KAAK,QAAQ,IAAI,GAAI,EAAW;;CAElC,aAAa;AACX,SAAO,KAAK;;CAEd,kBAAkB,GAAe;AAC/B,SAAO,KAAK,QAAQ,IAAI,EAAc,EAAE,UAAU,EAAE;;CAEtD,QAAQ;AAMN,EALA,GAAO,EACP,KAAK,QAAQ,EAAE,EACf,KAAK,yBAAyB,IAAI,KAAK,EACvC,KAAK,aAAa,EAAE,EACpB,KAAK,0BAA0B,IAAI,KAAK,EACxC,KAAK,OAAO,KAAK;;;AAQrB,SAAS,EAAe,GAAO;AAC7B,KAAI,CAAC,EAAM,OACT,QAAO,EAAE;CAEX,IAAM,IAAO,EAAE,EACT,IAAQ,EAAE;AA8BhB,QA7BA,EAAM,SAAS,MAAS;EACtB,IAAM,IAAO;GACX,MAAM,EAAK;GACX,UAAU,EAAK,SAAS,SAAS,KAAK,IAAI,EAAE;GAC7C;AAQD,OAPA,EAAK,gBAAgB,GAAM,eACvB,GAAM,sBACR,EAAK,oBAAoB,EAAK,oBAE5B,EAAK,SAAS,UAAU,EAAK,UAAU,KAAK,MAC9C,EAAK,QAAQ,EAAK,QAEb,EAAM,SAAS,KAAK,EAAM,EAAM,SAAS,GAAG,SAAS,EAAK,OAC/D,GAAM,KAAK;AAEb,MAAI,EAAM,WAAW,EACnB,GAAK,KAAK,EAAK;OACV;GACL,IAAM,IAAS,EAAM,EAAM,SAAS,GAAG;AACvC,GAAI,EAAO,WACT,EAAO,SAAS,KAAK,EAAK,GAE1B,EAAO,WAAW,CAAC,EAAK;;AAG5B,EAAI,EAAK,SAAS,UAChB,EAAM,KAAK;GAAE;GAAM,OAAO,EAAK;GAAO,CAAC;GAEzC,EACK;;AAET,EAAO,GAAgB,iBAAiB;AAGxC,IAAI,KAA2B,mBAAQ,GAAK,MAAO;AACjD,GAAiB,GAAK,EAAG;CACzB,IAAM,IAAQ,EAAE;AAChB,MAAK,IAAM,KAAO,EAAI,eAAe,EAAE,CACrC,CAAI,EAAI,UAAU,uBAChB,EAAG,SAAS,EAAI,aAAa,IAAI,EAAI,aAAa,GAAG;AAGzD,MAAK,IAAM,KAAO,EAAI,eAAe,EAAE,EAAE;EACvC,IAAM,IAAO,EAAI;AACjB,MAAI,CAAC,EACH;EAEF,IAAM,IAAQ,EAAI,SAAS,SAAS,EAAI,OAAO,GAAG,GAC5C,IAAO,GAAY,EAAK,EACxB,IAAS,EAAK,gBAAgB,EAAG,kBAAkB,EAAK,cAAc,GAAG,EAAE,EAC3E,IAAoB,EAAO,SAAS,IAAI,IAAS,KAAK,GACtD,IAAW;GACf;GACA;GACA,MAAM,EAAK;GACX,OAAO,EAAK;GACZ,eAAe,EAAK;GACpB;GACD;AACD,IAAM,KAAK,EAAS;;CAEtB,IAAM,IAAiB,EAAe,EAAM,EACtC,IAAsC,mBAAQ,GAAO,MAAU;AACnE,OAAK,IAAM,KAAQ,EAEjB,CADA,EAAG,QAAQ,GAAM,EAAM,EACnB,EAAK,YAAY,EAAK,SAAS,SAAS,KAC1C,EAAoB,EAAK,UAAU,IAAQ,EAAE;IAGhD,sBAAsB;AACzB,GAAoB,GAAgB,EAAE;GACrC,WAAW,EACV,KAA8B,mBAAQ,MACjC,EAAK,OAAO,OAAO,EAAK,KAAK,GAAG,IACtC,cAAc,EACb,IAAS;CAEX,QAAQ,EAAE,IAAI,KAAK,GAAG;CACtB,OAAuB,kBAAO,OAAO,MAAS;AAC5C,MAAI;GAEF,IAAM,IAAM,MADM,EACU,WAAW,EAAK;AAC5C,KAAI,MAAM,gBAAgB,EAAI;GAC9B,IAAM,IAAK,EAAO,QAAQ;AAC1B,OAAI,EAAE,aAAc,GAClB,OAAU,MACR,wJACD;AAEH,MAAS,GAAK,EAAG;WACV,GAAO;AAEd,SADA,EAAI,MAAM,0BAA0B,EAAM,EACpC;;IAEP,QAAQ;CACZ,EAIG,KAAwB,IACxB,IAAwB,IACxB,IAAwB,IA4RxB,KAAW;CAAE,MA3RU,mBAAQ,GAAO,GAAI,GAAU,MAAa;EACnE,IAAM,IAAY,EAAS,IACrB,IAAS,EAAU,WAAW,EAC9B,IAAsB,EAAO,WAAW,IACxC,IAAQ,EAAU,iBAAiB,EACnC,IAAO,EAAU,SAAS,EAC1B,EAAE,sBAAmB,GAAW;AACtC,MAAI,CAAC,EACH;EAEF,IAAM,IAAc,IAAQ,KAAK,GAC3B,IAAM,EAAiB,EAAG,EAC1B,IAAQ,EAAO,YAAY,EAAO,YAAY,IAAwB,KACtE,IAAS,EAAO,aAAa,EAAO,aAAa,IAAwB,KACzE,IAAW,GACX,IAAY,IAAS;AAE3B,EADA,EAAI,KAAK,WAAW,OAAO,EAAS,GAAG,IAAY,EACnD,EAAiB,GAAK,GAAW,GAAU,EAAO,YAAY;EAC9D,IAAI;AACJ,MAAI;GACF,IAAM,IAAY,EAAO,eAAe;AACxC,OAAI,MAAc,OAChB,KAA8B,mBAAQ,MAAU,MAAM,EAAO,IAAI,CAAC,EAAM,EAAE,cAAc;YAC/E,EAAU,WAAW,IAAI,IAAI,EAAU,SAAS,IAAI,EAAE;IAC/D,IAAM,IAAY,QAAQ,KAAK,EAAU,EACnC,IAAe,IAAY,EAAU,KAAK;AAChD,QAA8B,mBAAQ,MAAU,MAAM,EAAO,MAAM,EAAa,CAAC,EAAM,EAAE,cAAc;cAC9F,EAAU,WAAW,IAAI,EAAE;IACpC,IAAM,IAAe,EAAU,UAAU,EAAE;AAC3C,QAA8B,mBAAQ,MAAU,MAAM,EAAO,KAAgB,GAAG,CAAC,EAAM,EAAE,cAAc;SAEvG,KAAc,EAAO,EAAU;WAE1B,GAAO;AAEd,GADA,EAAI,MAAM,mCAAmC,EAAM,EACnD,IAAc,EAAO,IAAI;;EAE3B,IAAM,IAAaC,GAAc,CAAC,MAAM;GACtC;GACA,EAAe;GACf,EAAe;GACf,EAAe;GACf,EAAe;GACf,EAAe;GACf,EAAe;GACf,EAAe;GACf,EAAe;GACf,EAAe;GACf,EAAe;GACf,EAAe;GACf,EAAe;GAChB,CAAC,EACI,IAAiBA,GAAc,CAAC,MAAM;GAC1C;GACA,EAAe;GACf,EAAe;GACf,EAAe;GACf,EAAe;GACf,EAAe;GACf,EAAe;GACf,EAAe;GACf,EAAe;GACf,EAAe;GACf,EAAe;GACf,EAAe;GACf,EAAe;GAChB,CAAC,EACI,IAAkBA,GAAc,CAAC,MAAM;GAC3C,EAAe;GACf,EAAe;GACf,EAAe;GACf,EAAe;GACf,EAAe;GACf,EAAe;GACf,EAAe;GACf,EAAe;GACf,EAAe;GACf,EAAe;GACf,EAAe;GACf,EAAe;GAChB,CAAC;AACF,EAAI,KACF,EAAI,OAAO,OAAO,CAAC,KAAK,KAAK,IAAW,EAAE,CAAC,KAAK,KAAK,IAAc,EAAE,CAAC,KAAK,SAAS,eAAe,CAAC,KAAK,eAAe,SAAS,CAAC,KAAK,qBAAqB,SAAS,CAAC,KAAK,EAAM;EAEnL,IAAM,IAAI,EAAI,OAAO,IAAI,CAAC,KAAK,aAAa,gBAAgB,EAAY,GAAG,CAAC,KAAK,SAAS,mBAAmB,EACvG,IAAgB,EAAU,EAAK,CAAC,KAAK,MAAM,EAAE,SAAS,EAAE,CAAC,MAAM,GAAG,OAAO,EAAE,SAAS,MAAM,EAAE,SAAS,GAAG,EAIxG,IAHgBC,IAAS,CAAC,KAAK,CAAC,GAAO,EAAO,CAAC,CAAC,YACnD,MAAM,EAAE,YAAY,EAAE,SAAS,SAAS,IAAI,IAAwB,IAAwB,EAC9F,CAAC,aAAa,EAAoB,CAAC,aAAa,MAAM,EAAE,YAAY,EAAE,SAAS,SAAS,IAAI,IAAwB,EAAE,CAAC,cAAc,MAAM,EAAE,YAAY,EAAE,SAAS,SAAS,IAAI,IAAwB,EAAE,CAAC,eAAe,MAAM,EAAE,YAAY,EAAE,SAAS,SAAS,IAAI,IAAwB,EAAE,CAAC,MAAM,GAAK,CAC5Q,EAAc,EAC1C,IAAc,EAAY,aAAa,CAAC,QAAQ,MAAM,EAAE,YAAY,EAAE,SAAS,SAAS,EAAE,EAC1F,IAAW,EAAE,UAAU,kBAAkB,CAAC,KAAK,EAAY,CAAC,OAAO,CAAC,OAAO,IAAI,CAAC,KAAK,SAAS,iBAAiB,CAAC,KAAK,cAAc,MAAM,aAAa,EAAE,GAAG,GAAG,EAAE,GAAG,GAAG;AAmE5K,EAlEA,EAAS,OAAO,OAAO,CAAC,KAAK,UAAU,MAAM,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,UAAU,EAAsB,CAAC,KAAK,SAAS,uBAAuB,CAAC,KAAK,QAAQ,OAAO,CAAC,KAAK,gBAAgB,GAAI,CAAC,KAAK,gBAAgB,GAAI,CAAC,KAAK,UAAU,MACxN,EAAE,UAAU,IACP,mBAEF,GACP,EACF,EAAS,OAAO,WAAW,CAAC,KAAK,OAAO,GAAI,MAAM,gBAAgB,EAAG,GAAG,IAAI,CAAC,OAAO,OAAO,CAAC,KAAK,UAAU,MAAM,KAAK,IAAI,GAAG,EAAE,KAAK,EAAE,KAAK,GAAG,CAAC,CAAC,KAAK,UAAU,EAAsB,EACrL,EAAS,OAAO,OAAO,CAAC,KAAK,UAAU,MAAM,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,WAAW,MAAM,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,UAAU,GAAI,MACvG,yBAAyB,IAChC,CAAC,KAAK,SAAS,MAAM,EAAW,EAAE,KAAK,KAAK,CAAC,CAAC,KAAK,gBAAgB,GAAI,CAAC,KAAK,WAAW,MAAM,EAAe,EAAE,KAAK,KAAK,CAAC,CAAC,KAAK,gBAAgB,EAAE,CAAC,KAAK,kBAAkB,GAAI,CAAC,KAAK,UAAU,MAAM;AACpM,OAAI,EAAE,UAAU,EACd,QAAO;GAET,IAAM,IAAS,EAAc,EAAE,mBAAmB,EAAE,KAAK,mBAAmB,CAAC;AAC7E,UAAO,EAAO,aAAa,MAAM,EAAO,aAAa,KAAK,IAAI;IAC9D,EACF,EAAS,OAAO,OAAO,CAAC,KAAK,SAAS,sBAAsB,CAAC,KAAK,KAAK,EAAE,CAAC,KAAK,KAAK,IAAwB,EAAE,CAAC,KAAK,qBAAqB,SAAS,CAAC,MAAM,MAAM,EAAE,UAAU,IAAI,KAAK,EAAE,KAAK,KAAK,CAAC,KAAK,eAAe,OAAO,CAAC,KAAK,UAAU,MACtO,EAAE,UAAU,IACP,mBAEW,sDAAsD,EAAgB,EAAE,KAAK,KAAK,GAAG,sEAC1F,EAAc,EAAE,mBAAmB,EAAE,KAAK,mBAAmB,CAAC,CACjD,YAAY,QAAQ,UAAU,QAAQ,CAClE,CAAC,KAAK,SAAS,GAAG;AAClB,OAAI,EAAE,UAAU,EACd;GAEF,IAAM,IAAOC,EAAO,KAAK,EACnB,IAAe,EAAE,KAAK;AAC5B,KAAK,KAAK,EAAa;GACvB,IAAM,IAAmB,EAAE,KAAK,EAAE,IAE9B;AACJ,GAQE,IARE,EAAO,eAAe,MAAS,EAAE,QACN,IAAmB,KACV,KACN,KAEY,IAGtB,IAAmB,IADZ;GAI/B,IAAM,IAAuB,KAAK,IADJ,IAC+B,EAAoB,EAC3E,IAAW,EAAK,MAAM;AAE5B,OADiC,EAAS,uBAAuB,GAClC,GAAsB;IACnD,IACI,IAAuB;AAC3B,WAAO,EAAqB,SAAS,IAAG;AAEtC,SADA,IAAuB,EAAa,UAAU,GAAG,EAAqB,SAAS,EAAE,EAC7E,EAAqB,WAAW,GAAG;AAErC,MADA,EAAK,KAAK,MAAS,EACf,EAAS,uBAAuB,GAAG,KACrC,EAAK,KAAK,GAAG;AAEf;;AAGF,SADA,EAAK,KAAK,IAAuB,MAAS,EACtC,EAAS,uBAAuB,IAAI,EACtC;;;IAIN,EACE,EAAO,eAAe,MACxB,EAAS,OAAO,OAAO,CAAC,KAAK,SAAS,sBAAsB,CAAC,KAAK,MAAM,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,CAAC,KAAK,KAAK,IAAwB,EAAE,CAAC,KAAK,eAAe,MAAM,CAAC,KAAK,qBAAqB,SAAS,CAAC,MAAM,MAAM,EAAE,QAAQ,EAAY,EAAE,MAAM,GAAG,GAAG,CAAC,KAAK,cAAc,SAAS,CAAC,KAAK,UAAU,MAC3R,EAAE,UAAU,IACP,mBAEW,wEAAwE,EAAgB,EAAE,KAAK,KAAK,GAAG,sEAC5G,EAAc,EAAE,mBAAmB,EAAE,KAAK,mBAAmB,CAAC,CACjD,YAAY,QAAQ,UAAU,QAAQ,CAClE;EAEJ,IAAM,IAAY,EAAY,QAAQ,EAChC,IAAO,EAAE,UAAU,oBAAoB,CAAC,KAAK,EAAU,CAAC,OAAO,CAAC,OAAO,IAAI,CAAC,KAAK,UAAU,GAAG,MAC3F,oCAAoC,IAAI,EAAE,KAAK,gBAAgB,IAAI,EAAE,KAAK,kBAAkB,GAAG,GACtG,CAAC,KAAK,cAAc,MAAM,aAAa,EAAE,GAAG,GAAG,EAAE,GAAG,GAAG;AA2GzD,EA1GA,EAAK,OAAO,OAAO,CAAC,KAAK,UAAU,MAAM,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,WAAW,MAAM,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,SAAS,cAAc,CAAC,KAAK,SAAS,MAC3H,EAAE,SAAS,EAAW,EAAE,OAAO,KAAK,KAAK,GAAG,EAAW,EAAE,KAAK,KAAK,CAC1E,CAAC,KAAK,UAAU,MACD,EAAc,EAAE,mBAAmB,EAAE,KAAK,mBAAmB,CAAC,CAC/D,WACd,CAAC,KAAK,gBAAgB,GAAI,CAAC,KAAK,WAAW,MACpC,EAAE,SAAS,EAAW,EAAE,OAAO,KAAK,KAAK,GAAG,EAAW,EAAE,KAAK,KAAK,CAC1E,CAAC,KAAK,gBAAgB,EAAE,EAC1B,EAAK,OAAO,WAAW,CAAC,KAAK,OAAO,GAAI,MAAM,QAAQ,EAAG,GAAG,IAAI,CAAC,OAAO,OAAO,CAAC,KAAK,UAAU,MAAM,KAAK,IAAI,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,WAAW,MAAM,KAAK,IAAI,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EACnK,EAAK,OAAO,OAAO,CAAC,KAAK,SAAS,eAAe,CAAC,KAAK,MAAM,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,KAAK,MAAM,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,KAAK,UAAU,MACtI,0EAA0E,EAAgB,EAAE,KAAK,KAAK,GAAG,MAC9G,EAAc,EAAE,mBAAmB,EAAE,KAAK,mBAAmB,CAAC,CACjD,YAAY,QAAQ,UAAU,QAAQ,CAClE,CAAC,KAAK,cAAc,GAAI,MAAM,aAAa,EAAG,GAAG,EAAE,GAAG,CAAC,MAAM,MAAM,EAAE,KAAK,KAAK,CACtE,KAAK,SAAS,GAAG;GAC1B,IAAM,IAAOA,EAAO,KAAK,EACnB,IAAY,EAAE,KAAK,EAAE,IACrB,IAAa,EAAE,KAAK,EAAE,IACtB,IAAW,EAAK,MAAM,EAEtB,IAAiB,IAAY,GAC7B,IAAkB,IAAa;AACrC,OAAI,IAAiB,MAAM,IAAkB,IAAI;AAC/C,MAAK,MAAM,WAAW,OAAO;AAC7B;;GAEF,IAAI,IAAuB,SAAS,EAAK,MAAM,YAAY,EAAE,GAAG,EAG1D,IAAmB;AAGzB,UAAO,EAAS,uBAAuB,GAAG,KAAkB,IAAuB,GAEjF,CADA,KACA,EAAK,MAAM,aAAa,GAAG,EAAqB,IAAI;GAEtD,IAAI,IAA2B,KAAK,IAClC,GACA,KAAK,IAAI,IAA0B,KAAK,MAAM,IAAuB,EAAiB,CAAC,CACxF,EACG,IAAiB,IAAuB,IAA8B;AAC1E,UAAO,IAAiB,KAAmB,IAAuB,MAChE,KACA,IAA2B,KAAK,IAC9B,GACA,KAAK,IAAI,IAA0B,KAAK,MAAM,IAAuB,EAAiB,CAAC,CACxF,EACG,MAA2B,KAAoB,MAAyB,KAI5E,CADA,EAAK,MAAM,aAAa,GAAG,EAAqB,IAAI,EACpD,IAAiB,IAAuB,IAA8B;AAKxE,GADA,EAAK,MAAM,aAAa,GAAG,EAAqB,IAAI,GAChD,EAAS,uBAAuB,GAAG,KAAkB,IAAuB,KAAoB,IAAkB,MACpH,EAAK,MAAM,WAAW,OAAO;IAE/B,EACE,EAAO,eAAe,MACL,EAAK,OAAO,OAAO,CAAC,KAAK,SAAS,eAAe,CAAC,KAAK,MAAM,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,KAAK,KAAK,SAAS,GAAG;AAC7H,WAAQ,EAAE,KAAK,EAAE,MAAM;IACvB,CAAC,KAAK,UAAU,MACI,2EAA2E,EAAgB,EAAE,KAAK,KAAK,GAAG,MAC/G,EAAc,EAAE,mBAAmB,EAAE,KAAK,mBAAmB,CAAC,CACjD,YAAY,QAAQ,UAAU,QAAQ,CAClE,CAAC,KAAK,cAAc,GAAI,MAAM,aAAa,EAAG,GAAG,EAAE,GAAG,CAAC,MAAM,MAAM,EAAE,QAAQ,EAAY,EAAE,MAAM,GAAG,GAAG,CAC9F,KAAK,SAAS,GAAG;GAC1B,IAAM,IAAmBA,EAAO,KAAK,EAC/B,IAAiB,KAAK;AAC5B,OAAI,CAAC,GAAgB;AACnB,MAAiB,MAAM,WAAW,OAAO;AACzC;;GAEF,IAAM,IAAeA,EAAO,EAAe,CAAC,OAAO,gBAAgB;AACnE,OAAI,EAAa,OAAO,IAAI,EAAa,MAAM,UAAU,KAAK,QAAQ;AACpE,MAAiB,MAAM,WAAW,OAAO;AACzC;;GAEF,IAAM,IAAqB,WAAW,EAAa,MAAM,YAAY,CAAC,EAKhE,IAAsB,KAAK,IAC/B,GACA,KAAK,IAAI,IAAuB,KAAK,MAAM,IAAqB,GAAiB,CAAC,CACnF;AACD,KAAiB,MAAM,aAAa,GAAG,EAAoB,IAAI;GAE/D,IAAM,KADgB,EAAE,KAAK,EAAE,MAAM,IACE,IAAqB,IAAI;AAChE,KAAiB,KAAK,KAAK,EAAgB;GAC3C,IAAM,IAAY,EAAE,KAAK,EAAE,IAGrB,IAFkB,EAAE,KAAK,EAAE,KACP,GAEpB,IAAyB,IAAY;AAC3C,GAAI,EAAiB,MAAM,CAAC,uBAAuB,GAAG,KAA0B,IAAkB,IAAsB,KAAmB,IAAsB,IAC/J,EAAiB,MAAM,WAAW,OAAO,GAEzC,EAAiB,MAAM,WAAW,KAAK;IAEzC,EAGJ,EAAoB,GADG,EAAO,kBAAkB,GACP,aAAa,GAAQ,eAAe,GAAM;IAClF,OAAO;CAIa,YAHU,kBAAO,SAAS,GAAO,GAAY;AAClE,SAAO,EAAW,GAAG,YAAY;IAChC,aAAa;CACmB,EAG/B,KAA6B;CAC/B,oBAAoB;CACpB,oBAAoB;CACpB,kBAAkB;CAClB,iBAAiB;CACjB,iBAAiB;CACjB,eAAe;CACf,YAAY;CACZ,eAAe;CACf,eAAe;CACf,YAAY;CACZ,YAAY;CACZ,eAAe;CAChB,EAiCG,KAAU;CACZ;CACA,IAAI,KAAK;AACP,SAAO,IAAI,GAAW;;CAExB;CACA,QAtC8B,mBAAQ,EACtC,SAAS,MACP,EAAE,KAAK;EACT,IAAM,IAAU,EAAc,IAA4B,EAAS;AACnE,SAAO;;cAEK,EAAQ,mBAAmB;oBACrB,EAAQ,mBAAmB;YACnC,EAAQ,iBAAiB;;;cAGvB,EAAQ,gBAAgB;oBAClB,EAAQ,gBAAgB;YAChC,EAAQ,cAAc;;;YAGtB,EAAQ,WAAW;iBACd,EAAQ,cAAc;;;YAG3B,EAAQ,WAAW;iBACd,EAAQ,cAAc;;;YAG3B,EAAQ,WAAW;iBACd,EAAQ,cAAc;;;IAGpC,YAAY;CAWd"}
@@ -1,18 +1,9 @@
1
- import "./chunk-XZSTWKYB-CtrW-UDJ.js";
2
- import { r as e } from "./chunk-GEFDOKGD-Dkux3ZgH.js";
3
- import "./chunk-R5LLSJPH-lr9fZO00.js";
4
- import "./chunk-7E7YKBS2-CdBV12RO.js";
5
- import "./chunk-EGIJ26TM-DJ1G_X9D.js";
6
- import "./chunk-C72U2L5F-DygXHeeZ.js";
7
- import "./chunk-XIRO2GV7-CLkLLbAz.js";
8
- import "./chunk-L3YUKLVL-pMJOn-lT.js";
9
- import "./chunk-OZEHJAEY-Cdfu-MGD.js";
1
+ import { r as e } from "./chunk-GEFDOKGD-DwcK4le_.js";
10
2
  import { g as t, h as n } from "./src-CSwi_PyL.js";
11
- import { B as r, C as i, E as a, V as o, W as s, _ as c, a as l, c as u, d, v as f, y as p } from "./chunk-7R4GIKGN-Cg9-qmu5.js";
12
- import { t as m } from "./chunk-HHEYEP7N-BRntQHI9.js";
13
- import "./dist-fjxJz73m.js";
3
+ import { B as r, C as i, E as a, V as o, W as s, _ as c, a as l, c as u, d, v as f, y as p } from "./chunk-7R4GIKGN-DFba5m0T.js";
4
+ import { t as m } from "./chunk-HHEYEP7N-Cd1T4lH1.js";
14
5
  import { t as h } from "./chunk-4BX2VUAB-BEz9a-bK.js";
15
- import { t as g } from "./mermaid-parser.core-2VeDDCcu.js";
6
+ import { t as g } from "./mermaid-parser.core-BgwwyaN0.js";
16
7
  //#region ../../node_modules/mermaid/dist/chunks/mermaid.core/diagram-IFDJBPK2.mjs
17
8
  var _ = {
18
9
  showLegend: !0,
@@ -221,4 +212,4 @@ var z = { draw: j }, B = /* @__PURE__ */ n((e, t) => {
221
212
  //#endregion
222
213
  export { H as diagram };
223
214
 
224
- //# sourceMappingURL=diagram-IFDJBPK2-D1Vwi5RU.js.map
215
+ //# sourceMappingURL=diagram-IFDJBPK2-CqMWKS_O.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"diagram-IFDJBPK2-D1Vwi5RU.js","names":["getThemeVariables"],"sources":["../../../../node_modules/mermaid/dist/chunks/mermaid.core/diagram-IFDJBPK2.mjs"],"sourcesContent":["import {\n selectSvgElement\n} from \"./chunk-HHEYEP7N.mjs\";\nimport {\n populateCommonDb\n} from \"./chunk-4BX2VUAB.mjs\";\nimport {\n cleanAndMerge\n} from \"./chunk-GEFDOKGD.mjs\";\nimport {\n clear,\n configureSvgSize,\n defaultConfig_default,\n getAccDescription,\n getAccTitle,\n getConfig,\n getDiagramTitle,\n getThemeVariables,\n setAccDescription,\n setAccTitle,\n setDiagramTitle\n} from \"./chunk-7R4GIKGN.mjs\";\nimport {\n __name,\n log\n} from \"./chunk-AGHRB4JF.mjs\";\n\n// src/diagrams/radar/db.ts\nvar defaultOptions = {\n showLegend: true,\n ticks: 5,\n max: null,\n min: 0,\n graticule: \"circle\"\n};\nvar defaultRadarData = {\n axes: [],\n curves: [],\n options: defaultOptions\n};\nvar data = structuredClone(defaultRadarData);\nvar DEFAULT_RADAR_CONFIG = defaultConfig_default.radar;\nvar getConfig2 = /* @__PURE__ */ __name(() => {\n const config = cleanAndMerge({\n ...DEFAULT_RADAR_CONFIG,\n ...getConfig().radar\n });\n return config;\n}, \"getConfig\");\nvar getAxes = /* @__PURE__ */ __name(() => data.axes, \"getAxes\");\nvar getCurves = /* @__PURE__ */ __name(() => data.curves, \"getCurves\");\nvar getOptions = /* @__PURE__ */ __name(() => data.options, \"getOptions\");\nvar setAxes = /* @__PURE__ */ __name((axes) => {\n data.axes = axes.map((axis) => {\n return {\n name: axis.name,\n label: axis.label ?? axis.name\n };\n });\n}, \"setAxes\");\nvar setCurves = /* @__PURE__ */ __name((curves) => {\n data.curves = curves.map((curve) => {\n return {\n name: curve.name,\n label: curve.label ?? curve.name,\n entries: computeCurveEntries(curve.entries)\n };\n });\n}, \"setCurves\");\nvar computeCurveEntries = /* @__PURE__ */ __name((entries) => {\n if (entries[0].axis == void 0) {\n return entries.map((entry) => entry.value);\n }\n const axes = getAxes();\n if (axes.length === 0) {\n throw new Error(\"Axes must be populated before curves for reference entries\");\n }\n return axes.map((axis) => {\n const entry = entries.find((entry2) => entry2.axis?.$refText === axis.name);\n if (entry === void 0) {\n throw new Error(\"Missing entry for axis \" + axis.label);\n }\n return entry.value;\n });\n}, \"computeCurveEntries\");\nvar setOptions = /* @__PURE__ */ __name((options) => {\n const optionMap = options.reduce(\n (acc, option) => {\n acc[option.name] = option;\n return acc;\n },\n {}\n );\n data.options = {\n showLegend: optionMap.showLegend?.value ?? defaultOptions.showLegend,\n ticks: optionMap.ticks?.value ?? defaultOptions.ticks,\n max: optionMap.max?.value ?? defaultOptions.max,\n min: optionMap.min?.value ?? defaultOptions.min,\n graticule: optionMap.graticule?.value ?? defaultOptions.graticule\n };\n}, \"setOptions\");\nvar clear2 = /* @__PURE__ */ __name(() => {\n clear();\n data = structuredClone(defaultRadarData);\n}, \"clear\");\nvar db = {\n getAxes,\n getCurves,\n getOptions,\n setAxes,\n setCurves,\n setOptions,\n getConfig: getConfig2,\n clear: clear2,\n setAccTitle,\n getAccTitle,\n setDiagramTitle,\n getDiagramTitle,\n getAccDescription,\n setAccDescription\n};\n\n// src/diagrams/radar/parser.ts\nimport { parse } from \"@mermaid-js/parser\";\nvar populate = /* @__PURE__ */ __name((ast) => {\n populateCommonDb(ast, db);\n const { axes, curves, options } = ast;\n db.setAxes(axes);\n db.setCurves(curves);\n db.setOptions(options);\n}, \"populate\");\nvar parser = {\n parse: /* @__PURE__ */ __name(async (input) => {\n const ast = await parse(\"radar\", input);\n log.debug(ast);\n populate(ast);\n }, \"parse\")\n};\n\n// src/diagrams/radar/renderer.ts\nvar draw = /* @__PURE__ */ __name((_text, id, _version, diagram2) => {\n const db2 = diagram2.db;\n const axes = db2.getAxes();\n const curves = db2.getCurves();\n const options = db2.getOptions();\n const config = db2.getConfig();\n const title = db2.getDiagramTitle();\n const svg = selectSvgElement(id);\n const g = drawFrame(svg, config);\n const maxValue = options.max ?? Math.max(...curves.map((curve) => Math.max(...curve.entries)));\n const minValue = options.min;\n const radius = Math.min(config.width, config.height) / 2;\n drawGraticule(g, axes, radius, options.ticks, options.graticule);\n drawAxes(g, axes, radius, config);\n drawCurves(g, axes, curves, minValue, maxValue, options.graticule, config);\n drawLegend(g, curves, options.showLegend, config);\n g.append(\"text\").attr(\"class\", \"radarTitle\").text(title).attr(\"x\", 0).attr(\"y\", -config.height / 2 - config.marginTop);\n}, \"draw\");\nvar drawFrame = /* @__PURE__ */ __name((svg, config) => {\n const totalWidth = config.width + config.marginLeft + config.marginRight;\n const totalHeight = config.height + config.marginTop + config.marginBottom;\n const center = {\n x: config.marginLeft + config.width / 2,\n y: config.marginTop + config.height / 2\n };\n configureSvgSize(svg, totalHeight, totalWidth, config.useMaxWidth ?? true);\n svg.attr(\"viewBox\", `0 0 ${totalWidth} ${totalHeight}`);\n return svg.append(\"g\").attr(\"transform\", `translate(${center.x}, ${center.y})`);\n}, \"drawFrame\");\nvar drawGraticule = /* @__PURE__ */ __name((g, axes, radius, ticks, graticule) => {\n if (graticule === \"circle\") {\n for (let i = 0; i < ticks; i++) {\n const r = radius * (i + 1) / ticks;\n g.append(\"circle\").attr(\"r\", r).attr(\"class\", \"radarGraticule\");\n }\n } else if (graticule === \"polygon\") {\n const numAxes = axes.length;\n for (let i = 0; i < ticks; i++) {\n const r = radius * (i + 1) / ticks;\n const points = axes.map((_, j) => {\n const angle = 2 * j * Math.PI / numAxes - Math.PI / 2;\n const x = r * Math.cos(angle);\n const y = r * Math.sin(angle);\n return `${x},${y}`;\n }).join(\" \");\n g.append(\"polygon\").attr(\"points\", points).attr(\"class\", \"radarGraticule\");\n }\n }\n}, \"drawGraticule\");\nvar drawAxes = /* @__PURE__ */ __name((g, axes, radius, config) => {\n const numAxes = axes.length;\n for (let i = 0; i < numAxes; i++) {\n const label = axes[i].label;\n const angle = 2 * i * Math.PI / numAxes - Math.PI / 2;\n g.append(\"line\").attr(\"x1\", 0).attr(\"y1\", 0).attr(\"x2\", radius * config.axisScaleFactor * Math.cos(angle)).attr(\"y2\", radius * config.axisScaleFactor * Math.sin(angle)).attr(\"class\", \"radarAxisLine\");\n g.append(\"text\").text(label).attr(\"x\", radius * config.axisLabelFactor * Math.cos(angle)).attr(\"y\", radius * config.axisLabelFactor * Math.sin(angle)).attr(\"class\", \"radarAxisLabel\");\n }\n}, \"drawAxes\");\nfunction drawCurves(g, axes, curves, minValue, maxValue, graticule, config) {\n const numAxes = axes.length;\n const radius = Math.min(config.width, config.height) / 2;\n curves.forEach((curve, index) => {\n if (curve.entries.length !== numAxes) {\n return;\n }\n const points = curve.entries.map((entry, i) => {\n const angle = 2 * Math.PI * i / numAxes - Math.PI / 2;\n const r = relativeRadius(entry, minValue, maxValue, radius);\n const x = r * Math.cos(angle);\n const y = r * Math.sin(angle);\n return { x, y };\n });\n if (graticule === \"circle\") {\n g.append(\"path\").attr(\"d\", closedRoundCurve(points, config.curveTension)).attr(\"class\", `radarCurve-${index}`);\n } else if (graticule === \"polygon\") {\n g.append(\"polygon\").attr(\"points\", points.map((p) => `${p.x},${p.y}`).join(\" \")).attr(\"class\", `radarCurve-${index}`);\n }\n });\n}\n__name(drawCurves, \"drawCurves\");\nfunction relativeRadius(value, minValue, maxValue, radius) {\n const clippedValue = Math.min(Math.max(value, minValue), maxValue);\n return radius * (clippedValue - minValue) / (maxValue - minValue);\n}\n__name(relativeRadius, \"relativeRadius\");\nfunction closedRoundCurve(points, tension) {\n const numPoints = points.length;\n let d = `M${points[0].x},${points[0].y}`;\n for (let i = 0; i < numPoints; i++) {\n const p0 = points[(i - 1 + numPoints) % numPoints];\n const p1 = points[i];\n const p2 = points[(i + 1) % numPoints];\n const p3 = points[(i + 2) % numPoints];\n const cp1 = {\n x: p1.x + (p2.x - p0.x) * tension,\n y: p1.y + (p2.y - p0.y) * tension\n };\n const cp2 = {\n x: p2.x - (p3.x - p1.x) * tension,\n y: p2.y - (p3.y - p1.y) * tension\n };\n d += ` C${cp1.x},${cp1.y} ${cp2.x},${cp2.y} ${p2.x},${p2.y}`;\n }\n return `${d} Z`;\n}\n__name(closedRoundCurve, \"closedRoundCurve\");\nfunction drawLegend(g, curves, showLegend, config) {\n if (!showLegend) {\n return;\n }\n const legendX = (config.width / 2 + config.marginRight) * 3 / 4;\n const legendY = -(config.height / 2 + config.marginTop) * 3 / 4;\n const lineHeight = 20;\n curves.forEach((curve, index) => {\n const itemGroup = g.append(\"g\").attr(\"transform\", `translate(${legendX}, ${legendY + index * lineHeight})`);\n itemGroup.append(\"rect\").attr(\"width\", 12).attr(\"height\", 12).attr(\"class\", `radarLegendBox-${index}`);\n itemGroup.append(\"text\").attr(\"x\", 16).attr(\"y\", 0).attr(\"class\", \"radarLegendText\").text(curve.label);\n });\n}\n__name(drawLegend, \"drawLegend\");\nvar renderer = { draw };\n\n// src/diagrams/radar/styles.ts\nvar genIndexStyles = /* @__PURE__ */ __name((themeVariables, radarOptions) => {\n let sections = \"\";\n for (let i = 0; i < themeVariables.THEME_COLOR_LIMIT; i++) {\n const indexColor = themeVariables[`cScale${i}`];\n sections += `\n\t\t.radarCurve-${i} {\n\t\t\tcolor: ${indexColor};\n\t\t\tfill: ${indexColor};\n\t\t\tfill-opacity: ${radarOptions.curveOpacity};\n\t\t\tstroke: ${indexColor};\n\t\t\tstroke-width: ${radarOptions.curveStrokeWidth};\n\t\t}\n\t\t.radarLegendBox-${i} {\n\t\t\tfill: ${indexColor};\n\t\t\tfill-opacity: ${radarOptions.curveOpacity};\n\t\t\tstroke: ${indexColor};\n\t\t}\n\t\t`;\n }\n return sections;\n}, \"genIndexStyles\");\nvar buildRadarStyleOptions = /* @__PURE__ */ __name((radar) => {\n const defaultThemeVariables = getThemeVariables();\n const currentConfig = getConfig();\n const themeVariables = cleanAndMerge(defaultThemeVariables, currentConfig.themeVariables);\n const radarOptions = cleanAndMerge(themeVariables.radar, radar);\n return { themeVariables, radarOptions };\n}, \"buildRadarStyleOptions\");\nvar styles = /* @__PURE__ */ __name(({ radar } = {}) => {\n const { themeVariables, radarOptions } = buildRadarStyleOptions(radar);\n return `\n\t.radarTitle {\n\t\tfont-size: ${themeVariables.fontSize};\n\t\tcolor: ${themeVariables.titleColor};\n\t\tdominant-baseline: hanging;\n\t\ttext-anchor: middle;\n\t}\n\t.radarAxisLine {\n\t\tstroke: ${radarOptions.axisColor};\n\t\tstroke-width: ${radarOptions.axisStrokeWidth};\n\t}\n\t.radarAxisLabel {\n\t\tdominant-baseline: middle;\n\t\ttext-anchor: middle;\n\t\tfont-size: ${radarOptions.axisLabelFontSize}px;\n\t\tcolor: ${radarOptions.axisColor};\n\t}\n\t.radarGraticule {\n\t\tfill: ${radarOptions.graticuleColor};\n\t\tfill-opacity: ${radarOptions.graticuleOpacity};\n\t\tstroke: ${radarOptions.graticuleColor};\n\t\tstroke-width: ${radarOptions.graticuleStrokeWidth};\n\t}\n\t.radarLegendText {\n\t\ttext-anchor: start;\n\t\tfont-size: ${radarOptions.legendFontSize}px;\n\t\tdominant-baseline: hanging;\n\t}\n\t${genIndexStyles(themeVariables, radarOptions)}\n\t`;\n}, \"styles\");\n\n// src/diagrams/radar/diagram.ts\nvar diagram = {\n parser,\n db,\n renderer,\n styles\n};\nexport {\n diagram\n};\n"],"x_google_ignoreList":[0],"mappings":"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"}
1
+ {"version":3,"file":"diagram-IFDJBPK2-CqMWKS_O.js","names":["getThemeVariables"],"sources":["../../../../node_modules/mermaid/dist/chunks/mermaid.core/diagram-IFDJBPK2.mjs"],"sourcesContent":["import {\n selectSvgElement\n} from \"./chunk-HHEYEP7N.mjs\";\nimport {\n populateCommonDb\n} from \"./chunk-4BX2VUAB.mjs\";\nimport {\n cleanAndMerge\n} from \"./chunk-GEFDOKGD.mjs\";\nimport {\n clear,\n configureSvgSize,\n defaultConfig_default,\n getAccDescription,\n getAccTitle,\n getConfig,\n getDiagramTitle,\n getThemeVariables,\n setAccDescription,\n setAccTitle,\n setDiagramTitle\n} from \"./chunk-7R4GIKGN.mjs\";\nimport {\n __name,\n log\n} from \"./chunk-AGHRB4JF.mjs\";\n\n// src/diagrams/radar/db.ts\nvar defaultOptions = {\n showLegend: true,\n ticks: 5,\n max: null,\n min: 0,\n graticule: \"circle\"\n};\nvar defaultRadarData = {\n axes: [],\n curves: [],\n options: defaultOptions\n};\nvar data = structuredClone(defaultRadarData);\nvar DEFAULT_RADAR_CONFIG = defaultConfig_default.radar;\nvar getConfig2 = /* @__PURE__ */ __name(() => {\n const config = cleanAndMerge({\n ...DEFAULT_RADAR_CONFIG,\n ...getConfig().radar\n });\n return config;\n}, \"getConfig\");\nvar getAxes = /* @__PURE__ */ __name(() => data.axes, \"getAxes\");\nvar getCurves = /* @__PURE__ */ __name(() => data.curves, \"getCurves\");\nvar getOptions = /* @__PURE__ */ __name(() => data.options, \"getOptions\");\nvar setAxes = /* @__PURE__ */ __name((axes) => {\n data.axes = axes.map((axis) => {\n return {\n name: axis.name,\n label: axis.label ?? axis.name\n };\n });\n}, \"setAxes\");\nvar setCurves = /* @__PURE__ */ __name((curves) => {\n data.curves = curves.map((curve) => {\n return {\n name: curve.name,\n label: curve.label ?? curve.name,\n entries: computeCurveEntries(curve.entries)\n };\n });\n}, \"setCurves\");\nvar computeCurveEntries = /* @__PURE__ */ __name((entries) => {\n if (entries[0].axis == void 0) {\n return entries.map((entry) => entry.value);\n }\n const axes = getAxes();\n if (axes.length === 0) {\n throw new Error(\"Axes must be populated before curves for reference entries\");\n }\n return axes.map((axis) => {\n const entry = entries.find((entry2) => entry2.axis?.$refText === axis.name);\n if (entry === void 0) {\n throw new Error(\"Missing entry for axis \" + axis.label);\n }\n return entry.value;\n });\n}, \"computeCurveEntries\");\nvar setOptions = /* @__PURE__ */ __name((options) => {\n const optionMap = options.reduce(\n (acc, option) => {\n acc[option.name] = option;\n return acc;\n },\n {}\n );\n data.options = {\n showLegend: optionMap.showLegend?.value ?? defaultOptions.showLegend,\n ticks: optionMap.ticks?.value ?? defaultOptions.ticks,\n max: optionMap.max?.value ?? defaultOptions.max,\n min: optionMap.min?.value ?? defaultOptions.min,\n graticule: optionMap.graticule?.value ?? defaultOptions.graticule\n };\n}, \"setOptions\");\nvar clear2 = /* @__PURE__ */ __name(() => {\n clear();\n data = structuredClone(defaultRadarData);\n}, \"clear\");\nvar db = {\n getAxes,\n getCurves,\n getOptions,\n setAxes,\n setCurves,\n setOptions,\n getConfig: getConfig2,\n clear: clear2,\n setAccTitle,\n getAccTitle,\n setDiagramTitle,\n getDiagramTitle,\n getAccDescription,\n setAccDescription\n};\n\n// src/diagrams/radar/parser.ts\nimport { parse } from \"@mermaid-js/parser\";\nvar populate = /* @__PURE__ */ __name((ast) => {\n populateCommonDb(ast, db);\n const { axes, curves, options } = ast;\n db.setAxes(axes);\n db.setCurves(curves);\n db.setOptions(options);\n}, \"populate\");\nvar parser = {\n parse: /* @__PURE__ */ __name(async (input) => {\n const ast = await parse(\"radar\", input);\n log.debug(ast);\n populate(ast);\n }, \"parse\")\n};\n\n// src/diagrams/radar/renderer.ts\nvar draw = /* @__PURE__ */ __name((_text, id, _version, diagram2) => {\n const db2 = diagram2.db;\n const axes = db2.getAxes();\n const curves = db2.getCurves();\n const options = db2.getOptions();\n const config = db2.getConfig();\n const title = db2.getDiagramTitle();\n const svg = selectSvgElement(id);\n const g = drawFrame(svg, config);\n const maxValue = options.max ?? Math.max(...curves.map((curve) => Math.max(...curve.entries)));\n const minValue = options.min;\n const radius = Math.min(config.width, config.height) / 2;\n drawGraticule(g, axes, radius, options.ticks, options.graticule);\n drawAxes(g, axes, radius, config);\n drawCurves(g, axes, curves, minValue, maxValue, options.graticule, config);\n drawLegend(g, curves, options.showLegend, config);\n g.append(\"text\").attr(\"class\", \"radarTitle\").text(title).attr(\"x\", 0).attr(\"y\", -config.height / 2 - config.marginTop);\n}, \"draw\");\nvar drawFrame = /* @__PURE__ */ __name((svg, config) => {\n const totalWidth = config.width + config.marginLeft + config.marginRight;\n const totalHeight = config.height + config.marginTop + config.marginBottom;\n const center = {\n x: config.marginLeft + config.width / 2,\n y: config.marginTop + config.height / 2\n };\n configureSvgSize(svg, totalHeight, totalWidth, config.useMaxWidth ?? true);\n svg.attr(\"viewBox\", `0 0 ${totalWidth} ${totalHeight}`);\n return svg.append(\"g\").attr(\"transform\", `translate(${center.x}, ${center.y})`);\n}, \"drawFrame\");\nvar drawGraticule = /* @__PURE__ */ __name((g, axes, radius, ticks, graticule) => {\n if (graticule === \"circle\") {\n for (let i = 0; i < ticks; i++) {\n const r = radius * (i + 1) / ticks;\n g.append(\"circle\").attr(\"r\", r).attr(\"class\", \"radarGraticule\");\n }\n } else if (graticule === \"polygon\") {\n const numAxes = axes.length;\n for (let i = 0; i < ticks; i++) {\n const r = radius * (i + 1) / ticks;\n const points = axes.map((_, j) => {\n const angle = 2 * j * Math.PI / numAxes - Math.PI / 2;\n const x = r * Math.cos(angle);\n const y = r * Math.sin(angle);\n return `${x},${y}`;\n }).join(\" \");\n g.append(\"polygon\").attr(\"points\", points).attr(\"class\", \"radarGraticule\");\n }\n }\n}, \"drawGraticule\");\nvar drawAxes = /* @__PURE__ */ __name((g, axes, radius, config) => {\n const numAxes = axes.length;\n for (let i = 0; i < numAxes; i++) {\n const label = axes[i].label;\n const angle = 2 * i * Math.PI / numAxes - Math.PI / 2;\n g.append(\"line\").attr(\"x1\", 0).attr(\"y1\", 0).attr(\"x2\", radius * config.axisScaleFactor * Math.cos(angle)).attr(\"y2\", radius * config.axisScaleFactor * Math.sin(angle)).attr(\"class\", \"radarAxisLine\");\n g.append(\"text\").text(label).attr(\"x\", radius * config.axisLabelFactor * Math.cos(angle)).attr(\"y\", radius * config.axisLabelFactor * Math.sin(angle)).attr(\"class\", \"radarAxisLabel\");\n }\n}, \"drawAxes\");\nfunction drawCurves(g, axes, curves, minValue, maxValue, graticule, config) {\n const numAxes = axes.length;\n const radius = Math.min(config.width, config.height) / 2;\n curves.forEach((curve, index) => {\n if (curve.entries.length !== numAxes) {\n return;\n }\n const points = curve.entries.map((entry, i) => {\n const angle = 2 * Math.PI * i / numAxes - Math.PI / 2;\n const r = relativeRadius(entry, minValue, maxValue, radius);\n const x = r * Math.cos(angle);\n const y = r * Math.sin(angle);\n return { x, y };\n });\n if (graticule === \"circle\") {\n g.append(\"path\").attr(\"d\", closedRoundCurve(points, config.curveTension)).attr(\"class\", `radarCurve-${index}`);\n } else if (graticule === \"polygon\") {\n g.append(\"polygon\").attr(\"points\", points.map((p) => `${p.x},${p.y}`).join(\" \")).attr(\"class\", `radarCurve-${index}`);\n }\n });\n}\n__name(drawCurves, \"drawCurves\");\nfunction relativeRadius(value, minValue, maxValue, radius) {\n const clippedValue = Math.min(Math.max(value, minValue), maxValue);\n return radius * (clippedValue - minValue) / (maxValue - minValue);\n}\n__name(relativeRadius, \"relativeRadius\");\nfunction closedRoundCurve(points, tension) {\n const numPoints = points.length;\n let d = `M${points[0].x},${points[0].y}`;\n for (let i = 0; i < numPoints; i++) {\n const p0 = points[(i - 1 + numPoints) % numPoints];\n const p1 = points[i];\n const p2 = points[(i + 1) % numPoints];\n const p3 = points[(i + 2) % numPoints];\n const cp1 = {\n x: p1.x + (p2.x - p0.x) * tension,\n y: p1.y + (p2.y - p0.y) * tension\n };\n const cp2 = {\n x: p2.x - (p3.x - p1.x) * tension,\n y: p2.y - (p3.y - p1.y) * tension\n };\n d += ` C${cp1.x},${cp1.y} ${cp2.x},${cp2.y} ${p2.x},${p2.y}`;\n }\n return `${d} Z`;\n}\n__name(closedRoundCurve, \"closedRoundCurve\");\nfunction drawLegend(g, curves, showLegend, config) {\n if (!showLegend) {\n return;\n }\n const legendX = (config.width / 2 + config.marginRight) * 3 / 4;\n const legendY = -(config.height / 2 + config.marginTop) * 3 / 4;\n const lineHeight = 20;\n curves.forEach((curve, index) => {\n const itemGroup = g.append(\"g\").attr(\"transform\", `translate(${legendX}, ${legendY + index * lineHeight})`);\n itemGroup.append(\"rect\").attr(\"width\", 12).attr(\"height\", 12).attr(\"class\", `radarLegendBox-${index}`);\n itemGroup.append(\"text\").attr(\"x\", 16).attr(\"y\", 0).attr(\"class\", \"radarLegendText\").text(curve.label);\n });\n}\n__name(drawLegend, \"drawLegend\");\nvar renderer = { draw };\n\n// src/diagrams/radar/styles.ts\nvar genIndexStyles = /* @__PURE__ */ __name((themeVariables, radarOptions) => {\n let sections = \"\";\n for (let i = 0; i < themeVariables.THEME_COLOR_LIMIT; i++) {\n const indexColor = themeVariables[`cScale${i}`];\n sections += `\n\t\t.radarCurve-${i} {\n\t\t\tcolor: ${indexColor};\n\t\t\tfill: ${indexColor};\n\t\t\tfill-opacity: ${radarOptions.curveOpacity};\n\t\t\tstroke: ${indexColor};\n\t\t\tstroke-width: ${radarOptions.curveStrokeWidth};\n\t\t}\n\t\t.radarLegendBox-${i} {\n\t\t\tfill: ${indexColor};\n\t\t\tfill-opacity: ${radarOptions.curveOpacity};\n\t\t\tstroke: ${indexColor};\n\t\t}\n\t\t`;\n }\n return sections;\n}, \"genIndexStyles\");\nvar buildRadarStyleOptions = /* @__PURE__ */ __name((radar) => {\n const defaultThemeVariables = getThemeVariables();\n const currentConfig = getConfig();\n const themeVariables = cleanAndMerge(defaultThemeVariables, currentConfig.themeVariables);\n const radarOptions = cleanAndMerge(themeVariables.radar, radar);\n return { themeVariables, radarOptions };\n}, \"buildRadarStyleOptions\");\nvar styles = /* @__PURE__ */ __name(({ radar } = {}) => {\n const { themeVariables, radarOptions } = buildRadarStyleOptions(radar);\n return `\n\t.radarTitle {\n\t\tfont-size: ${themeVariables.fontSize};\n\t\tcolor: ${themeVariables.titleColor};\n\t\tdominant-baseline: hanging;\n\t\ttext-anchor: middle;\n\t}\n\t.radarAxisLine {\n\t\tstroke: ${radarOptions.axisColor};\n\t\tstroke-width: ${radarOptions.axisStrokeWidth};\n\t}\n\t.radarAxisLabel {\n\t\tdominant-baseline: middle;\n\t\ttext-anchor: middle;\n\t\tfont-size: ${radarOptions.axisLabelFontSize}px;\n\t\tcolor: ${radarOptions.axisColor};\n\t}\n\t.radarGraticule {\n\t\tfill: ${radarOptions.graticuleColor};\n\t\tfill-opacity: ${radarOptions.graticuleOpacity};\n\t\tstroke: ${radarOptions.graticuleColor};\n\t\tstroke-width: ${radarOptions.graticuleStrokeWidth};\n\t}\n\t.radarLegendText {\n\t\ttext-anchor: start;\n\t\tfont-size: ${radarOptions.legendFontSize}px;\n\t\tdominant-baseline: hanging;\n\t}\n\t${genIndexStyles(themeVariables, radarOptions)}\n\t`;\n}, \"styles\");\n\n// src/diagrams/radar/diagram.ts\nvar diagram = {\n parser,\n db,\n renderer,\n styles\n};\nexport {\n diagram\n};\n"],"x_google_ignoreList":[0],"mappings":"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"}
@@ -1,18 +1,9 @@
1
- import "./chunk-XZSTWKYB-CtrW-UDJ.js";
2
- import { r as e } from "./chunk-GEFDOKGD-Dkux3ZgH.js";
3
- import "./chunk-R5LLSJPH-lr9fZO00.js";
4
- import "./chunk-7E7YKBS2-CdBV12RO.js";
5
- import "./chunk-EGIJ26TM-DJ1G_X9D.js";
6
- import "./chunk-C72U2L5F-DygXHeeZ.js";
7
- import "./chunk-XIRO2GV7-CLkLLbAz.js";
8
- import "./chunk-L3YUKLVL-pMJOn-lT.js";
9
- import "./chunk-OZEHJAEY-Cdfu-MGD.js";
1
+ import { r as e } from "./chunk-GEFDOKGD-DwcK4le_.js";
10
2
  import { g as t, h as n } from "./src-CSwi_PyL.js";
11
- import { B as r, C as i, V as a, W as o, _ as s, a as c, c as l, d as u, v as d, y as f } from "./chunk-7R4GIKGN-Cg9-qmu5.js";
12
- import { t as p } from "./chunk-HHEYEP7N-BRntQHI9.js";
13
- import "./dist-fjxJz73m.js";
3
+ import { B as r, C as i, V as a, W as o, _ as s, a as c, c as l, d as u, v as d, y as f } from "./chunk-7R4GIKGN-DFba5m0T.js";
4
+ import { t as p } from "./chunk-HHEYEP7N-Cd1T4lH1.js";
14
5
  import { t as m } from "./chunk-4BX2VUAB-BEz9a-bK.js";
15
- import { t as h } from "./mermaid-parser.core-2VeDDCcu.js";
6
+ import { t as h } from "./mermaid-parser.core-BgwwyaN0.js";
16
7
  //#region ../../node_modules/mermaid/dist/chunks/mermaid.core/diagram-P4PSJMXO.mjs
17
8
  var g = u.packet, _ = class {
18
9
  constructor() {
@@ -141,4 +132,4 @@ var g = u.packet, _ = class {
141
132
  //#endregion
142
133
  export { E as diagram };
143
134
 
144
- //# sourceMappingURL=diagram-P4PSJMXO-B84-dlrB.js.map
135
+ //# sourceMappingURL=diagram-P4PSJMXO-ox4cwXgJ.js.map