@aiquants/markdown 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (347) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +51 -0
  3. package/dist/_basePickBy-7UHjqDkf.cjs +2 -0
  4. package/dist/_basePickBy-7UHjqDkf.cjs.map +1 -0
  5. package/dist/_basePickBy-D9tTZiUl.js +152 -0
  6. package/dist/_basePickBy-D9tTZiUl.js.map +1 -0
  7. package/dist/_baseUniq-2o5t0XZs.js +615 -0
  8. package/dist/_baseUniq-2o5t0XZs.js.map +1 -0
  9. package/dist/_baseUniq-eNrMicw1.cjs +2 -0
  10. package/dist/_baseUniq-eNrMicw1.cjs.map +1 -0
  11. package/dist/arc-DWgeb9Dh.js +84 -0
  12. package/dist/arc-DWgeb9Dh.js.map +1 -0
  13. package/dist/arc-DklCGftp.cjs +2 -0
  14. package/dist/arc-DklCGftp.cjs.map +1 -0
  15. package/dist/architecture-U656AL7Q-Dn1VasbJ.cjs +2 -0
  16. package/dist/architecture-U656AL7Q-Dn1VasbJ.cjs.map +1 -0
  17. package/dist/architecture-U656AL7Q-ItIkYjCw.js +6 -0
  18. package/dist/architecture-U656AL7Q-ItIkYjCw.js.map +1 -0
  19. package/dist/architectureDiagram-VXUJARFQ-CCg9tI-v.js +4662 -0
  20. package/dist/architectureDiagram-VXUJARFQ-CCg9tI-v.js.map +1 -0
  21. package/dist/architectureDiagram-VXUJARFQ-swg0hzdO.cjs +37 -0
  22. package/dist/architectureDiagram-VXUJARFQ-swg0hzdO.cjs.map +1 -0
  23. package/dist/blockDiagram-VD42YOAC-5A-soCII.js +2262 -0
  24. package/dist/blockDiagram-VD42YOAC-5A-soCII.js.map +1 -0
  25. package/dist/blockDiagram-VD42YOAC-OVvG-qvh.cjs +123 -0
  26. package/dist/blockDiagram-VD42YOAC-OVvG-qvh.cjs.map +1 -0
  27. package/dist/c4Diagram-YG6GDRKO-4d8l1okc.js +1581 -0
  28. package/dist/c4Diagram-YG6GDRKO-4d8l1okc.js.map +1 -0
  29. package/dist/c4Diagram-YG6GDRKO-ChHo1WBS.cjs +11 -0
  30. package/dist/c4Diagram-YG6GDRKO-ChHo1WBS.cjs.map +1 -0
  31. package/dist/channel-B664_FfD.cjs +2 -0
  32. package/dist/channel-B664_FfD.cjs.map +1 -0
  33. package/dist/channel-brI2zNXV.js +6 -0
  34. package/dist/channel-brI2zNXV.js.map +1 -0
  35. package/dist/chunk-4BX2VUAB-CctGCeAK.cjs +2 -0
  36. package/dist/chunk-4BX2VUAB-CctGCeAK.cjs.map +1 -0
  37. package/dist/chunk-4BX2VUAB-D7T15wZG.js +9 -0
  38. package/dist/chunk-4BX2VUAB-D7T15wZG.js.map +1 -0
  39. package/dist/chunk-55IACEB6-B-pzTJuD.cjs +2 -0
  40. package/dist/chunk-55IACEB6-B-pzTJuD.cjs.map +1 -0
  41. package/dist/chunk-55IACEB6-DwdHDzpK.js +9 -0
  42. package/dist/chunk-55IACEB6-DwdHDzpK.js.map +1 -0
  43. package/dist/chunk-B4BG7PRW-BoaM-X4_.cjs +166 -0
  44. package/dist/chunk-B4BG7PRW-BoaM-X4_.cjs.map +1 -0
  45. package/dist/chunk-B4BG7PRW-DIhQLt8l.js +1376 -0
  46. package/dist/chunk-B4BG7PRW-DIhQLt8l.js.map +1 -0
  47. package/dist/chunk-DI55MBZ5-BbA8Sn8U.cjs +221 -0
  48. package/dist/chunk-DI55MBZ5-BbA8Sn8U.cjs.map +1 -0
  49. package/dist/chunk-DI55MBZ5-BjEvsSVW.js +1371 -0
  50. package/dist/chunk-DI55MBZ5-BjEvsSVW.js.map +1 -0
  51. package/dist/chunk-FMBD7UC4-CE6saCeU.js +20 -0
  52. package/dist/chunk-FMBD7UC4-CE6saCeU.js.map +1 -0
  53. package/dist/chunk-FMBD7UC4-CFF7znzy.cjs +16 -0
  54. package/dist/chunk-FMBD7UC4-CFF7znzy.cjs.map +1 -0
  55. package/dist/chunk-QN33PNHL-7NdtJrqu.cjs +2 -0
  56. package/dist/chunk-QN33PNHL-7NdtJrqu.cjs.map +1 -0
  57. package/dist/chunk-QN33PNHL-Bj3YaA4h.js +20 -0
  58. package/dist/chunk-QN33PNHL-Bj3YaA4h.js.map +1 -0
  59. package/dist/chunk-QZHKN3VN-BN18QEr3.js +16 -0
  60. package/dist/chunk-QZHKN3VN-BN18QEr3.js.map +1 -0
  61. package/dist/chunk-QZHKN3VN-D_QIb2Uv.cjs +2 -0
  62. package/dist/chunk-QZHKN3VN-D_QIb2Uv.cjs.map +1 -0
  63. package/dist/chunk-TZMSLE5B-BPOcqqfY.cjs +2 -0
  64. package/dist/chunk-TZMSLE5B-BPOcqqfY.cjs.map +1 -0
  65. package/dist/chunk-TZMSLE5B-vH-tpVb0.js +65 -0
  66. package/dist/chunk-TZMSLE5B-vH-tpVb0.js.map +1 -0
  67. package/dist/classDiagram-2ON5EDUG-CsprUVVW.cjs +2 -0
  68. package/dist/classDiagram-2ON5EDUG-CsprUVVW.cjs.map +1 -0
  69. package/dist/classDiagram-2ON5EDUG-QWrDlWBz.js +17 -0
  70. package/dist/classDiagram-2ON5EDUG-QWrDlWBz.js.map +1 -0
  71. package/dist/classDiagram-v2-WZHVMYZB-CsprUVVW.cjs +2 -0
  72. package/dist/classDiagram-v2-WZHVMYZB-CsprUVVW.cjs.map +1 -0
  73. package/dist/classDiagram-v2-WZHVMYZB-QWrDlWBz.js +17 -0
  74. package/dist/classDiagram-v2-WZHVMYZB-QWrDlWBz.js.map +1 -0
  75. package/dist/cli.js +19 -0
  76. package/dist/clone-CM-P04XS.cjs +2 -0
  77. package/dist/clone-CM-P04XS.cjs.map +1 -0
  78. package/dist/clone-baeou7da.js +9 -0
  79. package/dist/clone-baeou7da.js.map +1 -0
  80. package/dist/cose-bilkent-S5V4N54A-DSWO1JhV.cjs +2 -0
  81. package/dist/cose-bilkent-S5V4N54A-DSWO1JhV.cjs.map +1 -0
  82. package/dist/cose-bilkent-S5V4N54A-oRFA2Dyl.js +2609 -0
  83. package/dist/cose-bilkent-S5V4N54A-oRFA2Dyl.js.map +1 -0
  84. package/dist/css/details.css +74 -0
  85. package/dist/css/github-markdown.css +1224 -0
  86. package/dist/css/katex.min.css +1128 -0
  87. package/dist/css/message.css +81 -0
  88. package/dist/css/zenn-content.css +599 -0
  89. package/dist/cytoscape.esm-DHF7mANN.cjs +332 -0
  90. package/dist/cytoscape.esm-DHF7mANN.cjs.map +1 -0
  91. package/dist/cytoscape.esm-DfdJODL8.js +18736 -0
  92. package/dist/cytoscape.esm-DfdJODL8.js.map +1 -0
  93. package/dist/dagre-6UL2VRFP-71wtgZah.js +445 -0
  94. package/dist/dagre-6UL2VRFP-71wtgZah.js.map +1 -0
  95. package/dist/dagre-6UL2VRFP-ZQ5YAEnU.cjs +5 -0
  96. package/dist/dagre-6UL2VRFP-ZQ5YAEnU.cjs.map +1 -0
  97. package/dist/defaultLocale-D7EN2tov.js +172 -0
  98. package/dist/defaultLocale-D7EN2tov.js.map +1 -0
  99. package/dist/defaultLocale-DIVzfLaQ.cjs +2 -0
  100. package/dist/defaultLocale-DIVzfLaQ.cjs.map +1 -0
  101. package/dist/diagram-PSM6KHXK-BF08GA3k.js +532 -0
  102. package/dist/diagram-PSM6KHXK-BF08GA3k.js.map +1 -0
  103. package/dist/diagram-PSM6KHXK-r4cFRZZM.cjs +25 -0
  104. package/dist/diagram-PSM6KHXK-r4cFRZZM.cjs.map +1 -0
  105. package/dist/diagram-QEK2KX5R-DOjY0eaD.cjs +44 -0
  106. package/dist/diagram-QEK2KX5R-DOjY0eaD.cjs.map +1 -0
  107. package/dist/diagram-QEK2KX5R-sGyw0sAY.js +218 -0
  108. package/dist/diagram-QEK2KX5R-sGyw0sAY.js.map +1 -0
  109. package/dist/diagram-S2PKOQOG-BMza4-jI.cjs +25 -0
  110. package/dist/diagram-S2PKOQOG-BMza4-jI.cjs.map +1 -0
  111. package/dist/diagram-S2PKOQOG-qkomRR5F.js +143 -0
  112. package/dist/diagram-S2PKOQOG-qkomRR5F.js.map +1 -0
  113. package/dist/erDiagram-Q2GNP2WA-DzOuVHYr.js +842 -0
  114. package/dist/erDiagram-Q2GNP2WA-DzOuVHYr.js.map +1 -0
  115. package/dist/erDiagram-Q2GNP2WA-JaYIUcKI.cjs +61 -0
  116. package/dist/erDiagram-Q2GNP2WA-JaYIUcKI.cjs.map +1 -0
  117. package/dist/flowDiagram-NV44I4VS-DBaSAM68.cjs +163 -0
  118. package/dist/flowDiagram-NV44I4VS-DBaSAM68.cjs.map +1 -0
  119. package/dist/flowDiagram-NV44I4VS-vIsyuo_o.js +1621 -0
  120. package/dist/flowDiagram-NV44I4VS-vIsyuo_o.js.map +1 -0
  121. package/dist/ganttDiagram-LVOFAZNH-BAvkWnqP.js +2506 -0
  122. package/dist/ganttDiagram-LVOFAZNH-BAvkWnqP.js.map +1 -0
  123. package/dist/ganttDiagram-LVOFAZNH-CkuTaxdW.cjs +268 -0
  124. package/dist/ganttDiagram-LVOFAZNH-CkuTaxdW.cjs.map +1 -0
  125. package/dist/gitGraph-F6HP7TQM-Cz-S_OCA.js +6 -0
  126. package/dist/gitGraph-F6HP7TQM-Cz-S_OCA.js.map +1 -0
  127. package/dist/gitGraph-F6HP7TQM-DNVvEHNy.cjs +2 -0
  128. package/dist/gitGraph-F6HP7TQM-DNVvEHNy.cjs.map +1 -0
  129. package/dist/gitGraphDiagram-NY62KEGX-BGJ_8EO8.js +700 -0
  130. package/dist/gitGraphDiagram-NY62KEGX-BGJ_8EO8.js.map +1 -0
  131. package/dist/gitGraphDiagram-NY62KEGX-CRq5jUCx.cjs +66 -0
  132. package/dist/gitGraphDiagram-NY62KEGX-CRq5jUCx.cjs.map +1 -0
  133. package/dist/graph-BkoiE3Db.cjs +2 -0
  134. package/dist/graph-BkoiE3Db.cjs.map +1 -0
  135. package/dist/graph-DcafR7xD.js +248 -0
  136. package/dist/graph-DcafR7xD.js.map +1 -0
  137. package/dist/index-DSNpXrO0.cjs +311 -0
  138. package/dist/index-DSNpXrO0.cjs.map +1 -0
  139. package/dist/index-Dj001XV9.js +16626 -0
  140. package/dist/index-Dj001XV9.js.map +1 -0
  141. package/dist/index.cjs +2 -0
  142. package/dist/index.cjs.map +1 -0
  143. package/dist/index.d.ts +2 -0
  144. package/dist/index.js +53 -0
  145. package/dist/index.js.map +1 -0
  146. package/dist/info-NVLQJR56-CqCsse8-.js +6 -0
  147. package/dist/info-NVLQJR56-CqCsse8-.js.map +1 -0
  148. package/dist/info-NVLQJR56-xIcqFWo7.cjs +2 -0
  149. package/dist/info-NVLQJR56-xIcqFWo7.cjs.map +1 -0
  150. package/dist/infoDiagram-ER5ION4S-CvRdqD6y.cjs +3 -0
  151. package/dist/infoDiagram-ER5ION4S-CvRdqD6y.cjs.map +1 -0
  152. package/dist/infoDiagram-ER5ION4S-DASvR-6D.js +25 -0
  153. package/dist/infoDiagram-ER5ION4S-DASvR-6D.js.map +1 -0
  154. package/dist/init-CHZsXQcr.cjs +2 -0
  155. package/dist/init-CHZsXQcr.cjs.map +1 -0
  156. package/dist/init-DjUOC4st.js +17 -0
  157. package/dist/init-DjUOC4st.js.map +1 -0
  158. package/dist/journeyDiagram-XKPGCS4Q-DB_aUAfY.js +835 -0
  159. package/dist/journeyDiagram-XKPGCS4Q-DB_aUAfY.js.map +1 -0
  160. package/dist/journeyDiagram-XKPGCS4Q-fyS7IwGo.cjs +140 -0
  161. package/dist/journeyDiagram-XKPGCS4Q-fyS7IwGo.cjs.map +1 -0
  162. package/dist/kanban-definition-3W4ZIXB7-BNNO8Pch.cjs +90 -0
  163. package/dist/kanban-definition-3W4ZIXB7-BNNO8Pch.cjs.map +1 -0
  164. package/dist/kanban-definition-3W4ZIXB7-DJYhSvmN.js +720 -0
  165. package/dist/kanban-definition-3W4ZIXB7-DJYhSvmN.js.map +1 -0
  166. package/dist/layout-B75sjsUX.js +1336 -0
  167. package/dist/layout-B75sjsUX.js.map +1 -0
  168. package/dist/layout-DwKLFlab.cjs +2 -0
  169. package/dist/layout-DwKLFlab.cjs.map +1 -0
  170. package/dist/linear-BpY3cr2i.cjs +2 -0
  171. package/dist/linear-BpY3cr2i.cjs.map +1 -0
  172. package/dist/linear-Cqb3b3Fn.js +260 -0
  173. package/dist/linear-Cqb3b3Fn.js.map +1 -0
  174. package/dist/markdown.css +1 -0
  175. package/dist/mermaid-parser.core-BahfL7OK.cjs +129 -0
  176. package/dist/mermaid-parser.core-BahfL7OK.cjs.map +1 -0
  177. package/dist/mermaid-parser.core-ulCpZE-m.js +12967 -0
  178. package/dist/mermaid-parser.core-ulCpZE-m.js.map +1 -0
  179. package/dist/mindmap-definition-VGOIOE7T-Cv1hrDNE.cjs +69 -0
  180. package/dist/mindmap-definition-VGOIOE7T-Cv1hrDNE.cjs.map +1 -0
  181. package/dist/mindmap-definition-VGOIOE7T-DcDtRcYa.js +785 -0
  182. package/dist/mindmap-definition-VGOIOE7T-DcDtRcYa.js.map +1 -0
  183. package/dist/ordinal-CagbB1m8.cjs +2 -0
  184. package/dist/ordinal-CagbB1m8.cjs.map +1 -0
  185. package/dist/ordinal-DfAQgscy.js +62 -0
  186. package/dist/ordinal-DfAQgscy.js.map +1 -0
  187. package/dist/packet-BFZMPI3H-B6lHYCMG.js +6 -0
  188. package/dist/packet-BFZMPI3H-B6lHYCMG.js.map +1 -0
  189. package/dist/packet-BFZMPI3H-BCPUMWA1.cjs +2 -0
  190. package/dist/packet-BFZMPI3H-BCPUMWA1.cjs.map +1 -0
  191. package/dist/pie-7BOR55EZ-BWeHQQLO.cjs +2 -0
  192. package/dist/pie-7BOR55EZ-BWeHQQLO.cjs.map +1 -0
  193. package/dist/pie-7BOR55EZ-CbTmAddS.js +6 -0
  194. package/dist/pie-7BOR55EZ-CbTmAddS.js.map +1 -0
  195. package/dist/pieDiagram-ADFJNKIX-BV8Jg7ri.js +162 -0
  196. package/dist/pieDiagram-ADFJNKIX-BV8Jg7ri.js.map +1 -0
  197. package/dist/pieDiagram-ADFJNKIX-D5N3jTfS.cjs +31 -0
  198. package/dist/pieDiagram-ADFJNKIX-D5N3jTfS.cjs.map +1 -0
  199. package/dist/quadrantDiagram-AYHSOK5B-CtJwyADb.cjs +8 -0
  200. package/dist/quadrantDiagram-AYHSOK5B-CtJwyADb.cjs.map +1 -0
  201. package/dist/quadrantDiagram-AYHSOK5B-VCCp32AW.js +1023 -0
  202. package/dist/quadrantDiagram-AYHSOK5B-VCCp32AW.js.map +1 -0
  203. package/dist/radar-NHE76QYJ-C9E2fdKT.js +6 -0
  204. package/dist/radar-NHE76QYJ-C9E2fdKT.js.map +1 -0
  205. package/dist/radar-NHE76QYJ-mSNklV3m.cjs +2 -0
  206. package/dist/radar-NHE76QYJ-mSNklV3m.cjs.map +1 -0
  207. package/dist/requirementDiagram-UZGBJVZJ-BqvtxY8r.cjs +65 -0
  208. package/dist/requirementDiagram-UZGBJVZJ-BqvtxY8r.cjs.map +1 -0
  209. package/dist/requirementDiagram-UZGBJVZJ-CcxUr7Uy.js +851 -0
  210. package/dist/requirementDiagram-UZGBJVZJ-CcxUr7Uy.js.map +1 -0
  211. package/dist/sankeyDiagram-TZEHDZUN-BB20snd1.js +811 -0
  212. package/dist/sankeyDiagram-TZEHDZUN-BB20snd1.js.map +1 -0
  213. package/dist/sankeyDiagram-TZEHDZUN-DQXz814t.cjs +11 -0
  214. package/dist/sankeyDiagram-TZEHDZUN-DQXz814t.cjs.map +1 -0
  215. package/dist/sequenceDiagram-WL72ISMW-DXGlw8C8.cjs +146 -0
  216. package/dist/sequenceDiagram-WL72ISMW-DXGlw8C8.cjs.map +1 -0
  217. package/dist/sequenceDiagram-WL72ISMW-wpLndHjn.js +2512 -0
  218. package/dist/sequenceDiagram-WL72ISMW-wpLndHjn.js.map +1 -0
  219. package/dist/src/cli.d.ts +3 -0
  220. package/dist/src/cli.d.ts.map +1 -0
  221. package/dist/src/components/MarkdownRenderer.d.ts +18 -0
  222. package/dist/src/components/MarkdownRenderer.d.ts.map +1 -0
  223. package/dist/src/components/MermaidDiagram.d.ts +6 -0
  224. package/dist/src/components/MermaidDiagram.d.ts.map +1 -0
  225. package/dist/src/components/NodesRenderer.d.ts +7 -0
  226. package/dist/src/components/NodesRenderer.d.ts.map +1 -0
  227. package/dist/src/components/mdastNodes/BlockLinkNode.d.ts +6 -0
  228. package/dist/src/components/mdastNodes/BlockLinkNode.d.ts.map +1 -0
  229. package/dist/src/components/mdastNodes/BlockquoteNode.d.ts +5 -0
  230. package/dist/src/components/mdastNodes/BlockquoteNode.d.ts.map +1 -0
  231. package/dist/src/components/mdastNodes/CodeNode.d.ts +20 -0
  232. package/dist/src/components/mdastNodes/CodeNode.d.ts.map +1 -0
  233. package/dist/src/components/mdastNodes/DeleteNode.d.ts +5 -0
  234. package/dist/src/components/mdastNodes/DeleteNode.d.ts.map +1 -0
  235. package/dist/src/components/mdastNodes/EmphasisNode.d.ts +5 -0
  236. package/dist/src/components/mdastNodes/EmphasisNode.d.ts.map +1 -0
  237. package/dist/src/components/mdastNodes/FootnoteBackLinkNode.d.ts +12 -0
  238. package/dist/src/components/mdastNodes/FootnoteBackLinkNode.d.ts.map +1 -0
  239. package/dist/src/components/mdastNodes/HTMLNode.d.ts +30 -0
  240. package/dist/src/components/mdastNodes/HTMLNode.d.ts.map +1 -0
  241. package/dist/src/components/mdastNodes/HeadingNode.d.ts +37 -0
  242. package/dist/src/components/mdastNodes/HeadingNode.d.ts.map +1 -0
  243. package/dist/src/components/mdastNodes/ImageNode.d.ts +11 -0
  244. package/dist/src/components/mdastNodes/ImageNode.d.ts.map +1 -0
  245. package/dist/src/components/mdastNodes/InlineCodeNode.d.ts +5 -0
  246. package/dist/src/components/mdastNodes/InlineCodeNode.d.ts.map +1 -0
  247. package/dist/src/components/mdastNodes/InlineMathNode.d.ts +5 -0
  248. package/dist/src/components/mdastNodes/InlineMathNode.d.ts.map +1 -0
  249. package/dist/src/components/mdastNodes/LinkNode.d.ts +5 -0
  250. package/dist/src/components/mdastNodes/LinkNode.d.ts.map +1 -0
  251. package/dist/src/components/mdastNodes/ListItemNode.d.ts +5 -0
  252. package/dist/src/components/mdastNodes/ListItemNode.d.ts.map +1 -0
  253. package/dist/src/components/mdastNodes/ListNode.d.ts +5 -0
  254. package/dist/src/components/mdastNodes/ListNode.d.ts.map +1 -0
  255. package/dist/src/components/mdastNodes/MathNode.d.ts +5 -0
  256. package/dist/src/components/mdastNodes/MathNode.d.ts.map +1 -0
  257. package/dist/src/components/mdastNodes/ParagraphNode.d.ts +5 -0
  258. package/dist/src/components/mdastNodes/ParagraphNode.d.ts.map +1 -0
  259. package/dist/src/components/mdastNodes/RichLinkCard.d.ts +13 -0
  260. package/dist/src/components/mdastNodes/RichLinkCard.d.ts.map +1 -0
  261. package/dist/src/components/mdastNodes/StrongNode.d.ts +5 -0
  262. package/dist/src/components/mdastNodes/StrongNode.d.ts.map +1 -0
  263. package/dist/src/components/mdastNodes/TableNode.d.ts +5 -0
  264. package/dist/src/components/mdastNodes/TableNode.d.ts.map +1 -0
  265. package/dist/src/components/mdastNodes/TextNode.d.ts +5 -0
  266. package/dist/src/components/mdastNodes/TextNode.d.ts.map +1 -0
  267. package/dist/src/components/mdastNodes/ThematicBreakNode.d.ts +2 -0
  268. package/dist/src/components/mdastNodes/ThematicBreakNode.d.ts.map +1 -0
  269. package/dist/src/components/mdastNodes/TwitterEmbedNode.d.ts +33 -0
  270. package/dist/src/components/mdastNodes/TwitterEmbedNode.d.ts.map +1 -0
  271. package/dist/src/components/mdastNodes/YouTubeEmbedNode.d.ts +5 -0
  272. package/dist/src/components/mdastNodes/YouTubeEmbedNode.d.ts.map +1 -0
  273. package/dist/src/components/mdastNodes/ZennDetailsNode.d.ts +8 -0
  274. package/dist/src/components/mdastNodes/ZennDetailsNode.d.ts.map +1 -0
  275. package/dist/src/components/mdastNodes/ZennMessageNode.d.ts +8 -0
  276. package/dist/src/components/mdastNodes/ZennMessageNode.d.ts.map +1 -0
  277. package/dist/src/components/plugins/DifyIFramePlugin.d.ts +31 -0
  278. package/dist/src/components/plugins/DifyIFramePlugin.d.ts.map +1 -0
  279. package/dist/src/components/plugins/IFramePluginRegistry.d.ts +68 -0
  280. package/dist/src/components/plugins/IFramePluginRegistry.d.ts.map +1 -0
  281. package/dist/src/components/plugins/index.d.ts +12 -0
  282. package/dist/src/components/plugins/index.d.ts.map +1 -0
  283. package/dist/src/index.d.ts +49 -0
  284. package/dist/src/index.d.ts.map +1 -0
  285. package/dist/src/plugins/createIntentTweetLink.d.ts +11 -0
  286. package/dist/src/plugins/createIntentTweetLink.d.ts.map +1 -0
  287. package/dist/src/plugins/extractYouTubeVideoId.d.ts +6 -0
  288. package/dist/src/plugins/extractYouTubeVideoId.d.ts.map +1 -0
  289. package/dist/src/plugins/fetchSiteMetadata.d.ts +28 -0
  290. package/dist/src/plugins/fetchSiteMetadata.d.ts.map +1 -0
  291. package/dist/src/plugins/remark-block-link-metadata.d.ts +40 -0
  292. package/dist/src/plugins/remark-block-link-metadata.d.ts.map +1 -0
  293. package/dist/src/plugins/remark-block-link.d.ts +12 -0
  294. package/dist/src/plugins/remark-block-link.d.ts.map +1 -0
  295. package/dist/src/plugins/remark-custom-heading-id.d.ts +17 -0
  296. package/dist/src/plugins/remark-custom-heading-id.d.ts.map +1 -0
  297. package/dist/src/plugins/remark-footnote-back-link.d.ts +15 -0
  298. package/dist/src/plugins/remark-footnote-back-link.d.ts.map +1 -0
  299. package/dist/src/plugins/remark-html-anchor-to-link.d.ts +8 -0
  300. package/dist/src/plugins/remark-html-anchor-to-link.d.ts.map +1 -0
  301. package/dist/src/plugins/remark-html-in-html.d.ts +10 -0
  302. package/dist/src/plugins/remark-html-in-html.d.ts.map +1 -0
  303. package/dist/src/plugins/remark-image-size.d.ts +18 -0
  304. package/dist/src/plugins/remark-image-size.d.ts.map +1 -0
  305. package/dist/src/plugins/remark-import-directive.async.d.ts +16 -0
  306. package/dist/src/plugins/remark-import-directive.async.d.ts.map +1 -0
  307. package/dist/src/plugins/remark-parent-node.d.ts +7 -0
  308. package/dist/src/plugins/remark-parent-node.d.ts.map +1 -0
  309. package/dist/src/plugins/remark-resolve-uri.async.d.ts +13 -0
  310. package/dist/src/plugins/remark-resolve-uri.async.d.ts.map +1 -0
  311. package/dist/src/plugins/remark-twitter-embed.d.ts +21 -0
  312. package/dist/src/plugins/remark-twitter-embed.d.ts.map +1 -0
  313. package/dist/src/plugins/remark-youtube-embed.d.ts +14 -0
  314. package/dist/src/plugins/remark-youtube-embed.d.ts.map +1 -0
  315. package/dist/src/plugins/remark-zenn-message.d.ts +43 -0
  316. package/dist/src/plugins/remark-zenn-message.d.ts.map +1 -0
  317. package/dist/src/plugins/transformUri.async.server.d.ts +13 -0
  318. package/dist/src/plugins/transformUri.async.server.d.ts.map +1 -0
  319. package/dist/src/remarkProcessor.server.d.ts +3 -0
  320. package/dist/src/remarkProcessor.server.d.ts.map +1 -0
  321. package/dist/src/test-setup.d.ts +1 -0
  322. package/dist/src/test-setup.d.ts.map +1 -0
  323. package/dist/src/utils/getFaviconUrl.d.ts +6 -0
  324. package/dist/src/utils/getFaviconUrl.d.ts.map +1 -0
  325. package/dist/stateDiagram-FKZM4ZOC-BQw1uDDs.js +264 -0
  326. package/dist/stateDiagram-FKZM4ZOC-BQw1uDDs.js.map +1 -0
  327. package/dist/stateDiagram-FKZM4ZOC-CRko_wcM.cjs +2 -0
  328. package/dist/stateDiagram-FKZM4ZOC-CRko_wcM.cjs.map +1 -0
  329. package/dist/stateDiagram-v2-4FDKWEC3-8B4m8DVq.cjs +2 -0
  330. package/dist/stateDiagram-v2-4FDKWEC3-8B4m8DVq.cjs.map +1 -0
  331. package/dist/stateDiagram-v2-4FDKWEC3-BLlp0Kuw.js +17 -0
  332. package/dist/stateDiagram-v2-4FDKWEC3-BLlp0Kuw.js.map +1 -0
  333. package/dist/timeline-definition-IT6M3QCI-BQZbrwM1.js +796 -0
  334. package/dist/timeline-definition-IT6M3QCI-BQZbrwM1.js.map +1 -0
  335. package/dist/timeline-definition-IT6M3QCI-C1bBEjWc.cjs +62 -0
  336. package/dist/timeline-definition-IT6M3QCI-C1bBEjWc.cjs.map +1 -0
  337. package/dist/treemap-KMMF4GRG-DnFZAuyg.js +6 -0
  338. package/dist/treemap-KMMF4GRG-DnFZAuyg.js.map +1 -0
  339. package/dist/treemap-KMMF4GRG-EW_av3X4.cjs +2 -0
  340. package/dist/treemap-KMMF4GRG-EW_av3X4.cjs.map +1 -0
  341. package/dist/vite.config.d.ts +3 -0
  342. package/dist/vite.config.d.ts.map +1 -0
  343. package/dist/xychartDiagram-PRI3JC2R-BC__kA61.cjs +8 -0
  344. package/dist/xychartDiagram-PRI3JC2R-BC__kA61.cjs.map +1 -0
  345. package/dist/xychartDiagram-PRI3JC2R-BQNe0MpQ.js +1341 -0
  346. package/dist/xychartDiagram-PRI3JC2R-BQNe0MpQ.js.map +1 -0
  347. package/package.json +129 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diagram-PSM6KHXK-BF08GA3k.js","sources":["../../../node_modules/.pnpm/d3-hierarchy@3.1.2/node_modules/d3-hierarchy/src/hierarchy/count.js","../../../node_modules/.pnpm/d3-hierarchy@3.1.2/node_modules/d3-hierarchy/src/hierarchy/each.js","../../../node_modules/.pnpm/d3-hierarchy@3.1.2/node_modules/d3-hierarchy/src/hierarchy/eachBefore.js","../../../node_modules/.pnpm/d3-hierarchy@3.1.2/node_modules/d3-hierarchy/src/hierarchy/eachAfter.js","../../../node_modules/.pnpm/d3-hierarchy@3.1.2/node_modules/d3-hierarchy/src/hierarchy/find.js","../../../node_modules/.pnpm/d3-hierarchy@3.1.2/node_modules/d3-hierarchy/src/hierarchy/sum.js","../../../node_modules/.pnpm/d3-hierarchy@3.1.2/node_modules/d3-hierarchy/src/hierarchy/sort.js","../../../node_modules/.pnpm/d3-hierarchy@3.1.2/node_modules/d3-hierarchy/src/hierarchy/path.js","../../../node_modules/.pnpm/d3-hierarchy@3.1.2/node_modules/d3-hierarchy/src/hierarchy/ancestors.js","../../../node_modules/.pnpm/d3-hierarchy@3.1.2/node_modules/d3-hierarchy/src/hierarchy/descendants.js","../../../node_modules/.pnpm/d3-hierarchy@3.1.2/node_modules/d3-hierarchy/src/hierarchy/leaves.js","../../../node_modules/.pnpm/d3-hierarchy@3.1.2/node_modules/d3-hierarchy/src/hierarchy/links.js","../../../node_modules/.pnpm/d3-hierarchy@3.1.2/node_modules/d3-hierarchy/src/hierarchy/iterator.js","../../../node_modules/.pnpm/d3-hierarchy@3.1.2/node_modules/d3-hierarchy/src/hierarchy/index.js","../../../node_modules/.pnpm/d3-hierarchy@3.1.2/node_modules/d3-hierarchy/src/accessors.js","../../../node_modules/.pnpm/d3-hierarchy@3.1.2/node_modules/d3-hierarchy/src/constant.js","../../../node_modules/.pnpm/d3-hierarchy@3.1.2/node_modules/d3-hierarchy/src/treemap/round.js","../../../node_modules/.pnpm/d3-hierarchy@3.1.2/node_modules/d3-hierarchy/src/treemap/dice.js","../../../node_modules/.pnpm/d3-hierarchy@3.1.2/node_modules/d3-hierarchy/src/treemap/slice.js","../../../node_modules/.pnpm/d3-hierarchy@3.1.2/node_modules/d3-hierarchy/src/treemap/squarify.js","../../../node_modules/.pnpm/d3-hierarchy@3.1.2/node_modules/d3-hierarchy/src/treemap/index.js","../../../node_modules/.pnpm/mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/diagram-PSM6KHXK.mjs"],"sourcesContent":["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-EXTU4WIE.mjs\";\nimport {\n setupViewPortForSVG\n} from \"./chunk-QN33PNHL.mjs\";\nimport {\n isLabelStyle,\n styles2String\n} from \"./chunk-ATLVNIR6.mjs\";\nimport {\n populateCommonDb\n} from \"./chunk-4BX2VUAB.mjs\";\nimport {\n cleanAndMerge\n} from \"./chunk-S3R3BYOJ.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-ABZYJK2D.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.join(\";\") : 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"],"names":["count","node","sum","children","i","node_count","node_each","callback","that","index","node_eachBefore","nodes","node_eachAfter","next","n","node_find","node_sum","value","node_sort","compare","node_path","end","start","ancestor","leastCommonAncestor","k","a","b","aNodes","bNodes","c","node_ancestors","node_descendants","node_leaves","leaves","node_links","root","links","node_iterator","current","hierarchy","data","mapChildren","objectChildren","Node","child","childs","computeHeight","node_copy","copyData","d","height","required","f","constantZero","constant","x","roundNode","treemapDice","parent","x0","y0","x1","y1","treemapSlice","phi","squarifyRatio","ratio","rows","row","nodeValue","i0","i1","dx","dy","sumValue","minValue","maxValue","newRatio","minRatio","alpha","beta","squarify","custom","treemap","tile","round","paddingStack","paddingInner","paddingTop","paddingRight","paddingBottom","paddingLeft","positionNode","p","TreeMapDB","_a","setAccTitle","getAccTitle","setDiagramTitle","getDiagramTitle","getAccDescription","setAccDescription","defaultConfig","defaultConfig_default","userConfig","getConfig","cleanAndMerge","level","id","_style","styleClass","styles","isLabelStyle","classSelector","clear","__name","buildHierarchy","items","stack","item","populate","ast","db","populateCommonDb","name","getItemName","cssCompiledStyles","itemData","hierarchyNodes","addNodesRecursively","parser","text","parse","log","error","DEFAULT_INNER_PADDING","SECTION_INNER_PADDING","SECTION_HEADER_HEIGHT","draw","_text","_version","diagram2","treemapDb","config","treemapInnerPadding","title","themeVariables","titleHeight","svg","selectSvgElement","width","svgWidth","svgHeight","configureSvgSize","valueFormat","formatStr","format","precision","precisionStr","restOfFormat","colorScale","scaleOrdinal","colorScalePeer","colorScaleLabel","g","hierarchyRoot","treemapData","branchNodes","sections","_d","styles2String","labelStyles","self","select","originalText","totalHeaderWidth","labelXPosition","spaceForTextContent","actualAvailableWidth","textNode","currentTruncatedText","leafNodes","cell","nodeWidth","nodeHeight","padding","availableWidth","availableHeight","currentLabelFontSize","minLabelFontSize","originalValueRelFontSize","valueScaleFactor","minValueFontSize","spacingBetweenLabelAndValue","prospectiveValueFontSize","combinedHeight","valueTextElement","parentCellNode","labelElement","finalLabelFontSize","originalValueFontSize","actualValueFontSize","valueTopActualY","maxValueBottomY","availableWidthForValue","diagramPadding","setupViewPortForSVG","getClasses","diagramObj","renderer","defaultTreemapStyleOptions","getStyles","treemap2","options","styles_default","diagram"],"mappings":"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","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]}
@@ -0,0 +1,25 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("./index-DSNpXrO0.cjs"),se=require("./chunk-QN33PNHL-7NdtJrqu.cjs"),ie=require("./chunk-4BX2VUAB-CctGCeAK.cjs"),oe=require("./mermaid-parser.core-BahfL7OK.cjs"),I=require("./defaultLocale-DIVzfLaQ.cjs"),U=require("./ordinal-CagbB1m8.cjs");function ce(a){var t=0,l=a.children,n=l&&l.length;if(!n)t=1;else for(;--n>=0;)t+=l[n].value;a.value=t}function de(){return this.eachAfter(ce)}function ue(a,t){let l=-1;for(const n of this)a.call(t,n,++l,this);return this}function he(a,t){for(var l=this,n=[l],o,s,d=-1;l=n.pop();)if(a.call(t,l,++d,this),o=l.children)for(s=o.length-1;s>=0;--s)n.push(o[s]);return this}function pe(a,t){for(var l=this,n=[l],o=[],s,d,h,m=-1;l=n.pop();)if(o.push(l),s=l.children)for(d=0,h=s.length;d<h;++d)n.push(s[d]);for(;l=o.pop();)a.call(t,l,++m,this);return this}function fe(a,t){let l=-1;for(const n of this)if(a.call(t,n,++l,this))return n}function ge(a){return this.eachAfter(function(t){for(var l=+a(t.data)||0,n=t.children,o=n&&n.length;--o>=0;)l+=n[o].value;t.value=l})}function me(a){return this.eachBefore(function(t){t.children&&t.children.sort(a)})}function ye(a){for(var t=this,l=Se(t,a),n=[t];t!==l;)t=t.parent,n.push(t);for(var o=n.length;a!==l;)n.splice(o,0,a),a=a.parent;return n}function Se(a,t){if(a===t)return a;var l=a.ancestors(),n=t.ancestors(),o=null;for(a=l.pop(),t=n.pop();a===t;)o=a,a=l.pop(),t=n.pop();return o}function ve(){for(var a=this,t=[a];a=a.parent;)t.push(a);return t}function xe(){return Array.from(this)}function be(){var a=[];return this.eachBefore(function(t){t.children||a.push(t)}),a}function we(){var a=this,t=[];return a.each(function(l){l!==a&&t.push({source:l.parent,target:l})}),t}function*Ce(){var a=this,t,l=[a],n,o,s;do for(t=l.reverse(),l=[];a=t.pop();)if(yield a,n=a.children)for(o=0,s=n.length;o<s;++o)l.push(n[o]);while(l.length)}function Q(a,t){a instanceof Map?(a=[void 0,a],t===void 0&&(t=Le)):t===void 0&&(t=Te);for(var l=new j(a),n,o=[l],s,d,h,m;n=o.pop();)if((d=t(n.data))&&(m=(d=Array.from(d)).length))for(n.children=d,h=m-1;h>=0;--h)o.push(s=d[h]=new j(d[h])),s.parent=n,s.depth=n.depth+1;return l.eachBefore(Ae)}function _e(){return Q(this).eachBefore($e)}function Te(a){return a.children}function Le(a){return Array.isArray(a)?a[1]:null}function $e(a){a.data.value!==void 0&&(a.value=a.data.value),a.data=a.data.data}function Ae(a){var t=0;do a.height=t;while((a=a.parent)&&a.height<++t)}function j(a){this.data=a,this.depth=this.height=0,this.parent=null}j.prototype=Q.prototype={constructor:j,count:de,each:ue,eachAfter:pe,eachBefore:he,find:fe,sum:ge,sort:me,path:ye,ancestors:ve,descendants:xe,leaves:be,links:we,copy:_e,[Symbol.iterator]:Ce};function ke(a){if(typeof a!="function")throw new Error;return a}function q(){return 0}function O(a){return function(){return a}}function Ne(a){a.x0=Math.round(a.x0),a.y0=Math.round(a.y0),a.x1=Math.round(a.x1),a.y1=Math.round(a.y1)}function Me(a,t,l,n,o){for(var s=a.children,d,h=-1,m=s.length,c=a.value&&(n-t)/a.value;++h<m;)d=s[h],d.y0=l,d.y1=o,d.x0=t,d.x1=t+=d.value*c}function Fe(a,t,l,n,o){for(var s=a.children,d,h=-1,m=s.length,c=a.value&&(o-l)/a.value;++h<m;)d=s[h],d.x0=t,d.x1=n,d.y0=l,d.y1=l+=d.value*c}var ze=(1+Math.sqrt(5))/2;function Ve(a,t,l,n,o,s){for(var d=[],h=t.children,m,c,p=0,w=0,r=h.length,b,v,x=t.value,f,y,N,k,V,R,M;p<r;){b=o-l,v=s-n;do f=h[w++].value;while(!f&&w<r);for(y=N=f,R=Math.max(v/b,b/v)/(x*a),M=f*f*R,V=Math.max(N/M,M/y);w<r;++w){if(f+=c=h[w].value,c<y&&(y=c),c>N&&(N=c),M=f*f*R,k=Math.max(N/M,M/y),k>V){f-=c;break}V=k}d.push(m={value:f,dice:b<v,children:h.slice(p,w)}),m.dice?Me(m,l,n,o,x?n+=v*f/x:s):Fe(m,l,n,x?l+=b*f/x:o,s),x-=f,p=w}return d}const Pe=(function a(t){function l(n,o,s,d,h){Ve(t,n,o,s,d,h)}return l.ratio=function(n){return a((n=+n)>1?n:1)},l})(ze);function Be(){var a=Pe,t=!1,l=1,n=1,o=[0],s=q,d=q,h=q,m=q,c=q;function p(r){return r.x0=r.y0=0,r.x1=l,r.y1=n,r.eachBefore(w),o=[0],t&&r.eachBefore(Ne),r}function w(r){var b=o[r.depth],v=r.x0+b,x=r.y0+b,f=r.x1-b,y=r.y1-b;f<v&&(v=f=(v+f)/2),y<x&&(x=y=(x+y)/2),r.x0=v,r.y0=x,r.x1=f,r.y1=y,r.children&&(b=o[r.depth+1]=s(r)/2,v+=c(r)-b,x+=d(r)-b,f-=h(r)-b,y-=m(r)-b,f<v&&(v=f=(v+f)/2),y<x&&(x=y=(x+y)/2),a(r,v,x,f,y))}return p.round=function(r){return arguments.length?(t=!!r,p):t},p.size=function(r){return arguments.length?(l=+r[0],n=+r[1],p):[l,n]},p.tile=function(r){return arguments.length?(a=ke(r),p):a},p.padding=function(r){return arguments.length?p.paddingInner(r).paddingOuter(r):p.paddingInner()},p.paddingInner=function(r){return arguments.length?(s=typeof r=="function"?r:O(+r),p):s},p.paddingOuter=function(r){return arguments.length?p.paddingTop(r).paddingRight(r).paddingBottom(r).paddingLeft(r):p.paddingTop()},p.paddingTop=function(r){return arguments.length?(d=typeof r=="function"?r:O(+r),p):d},p.paddingRight=function(r){return arguments.length?(h=typeof r=="function"?r:O(+r),p):h},p.paddingBottom=function(r){return arguments.length?(m=typeof r=="function"?r:O(+r),p):m},p.paddingLeft=function(r){return arguments.length?(c=typeof r=="function"?r:O(+r),p):c},p}var D,J=(D=class{constructor(){this.nodes=[],this.levels=new Map,this.outerNodes=[],this.classes=new Map,this.setAccTitle=u.setAccTitle,this.getAccTitle=u.getAccTitle,this.setDiagramTitle=u.setDiagramTitle,this.getDiagramTitle=u.getDiagramTitle,this.getAccDescription=u.getAccDescription,this.setAccDescription=u.setAccDescription}getNodes(){return this.nodes}getConfig(){const t=u.defaultConfig_default,l=u.getConfig();return u.cleanAndMerge({...t.treemap,...l.treemap??{}})}addNode(t,l){this.nodes.push(t),this.levels.set(t,l),l===0&&(this.outerNodes.push(t),this.root??=t)}getRoot(){return{name:"",children:this.outerNodes}}addClass(t,l){const n=this.classes.get(t)??{id:t,styles:[],textStyles:[]},o=l.replace(/\\,/g,"§§§").replace(/,/g,";").replace(/§§§/g,",").split(";");o&&o.forEach(s=>{u.isLabelStyle(s)&&(n?.textStyles?n.textStyles.push(s):n.textStyles=[s]),n?.styles?n.styles.push(s):n.styles=[s]}),this.classes.set(t,n)}getClasses(){return this.classes}getStylesForClass(t){return this.classes.get(t)?.styles??[]}clear(){u.clear(),this.nodes=[],this.levels=new Map,this.outerNodes=[],this.classes=new Map,this.root=void 0}},u.__name(D,"TreeMapDB"),D);function K(a){if(!a.length)return[];const t=[],l=[];return a.forEach(n=>{const o={name:n.name,children:n.type==="Leaf"?void 0:[]};for(o.classSelector=n?.classSelector,n?.cssCompiledStyles&&(o.cssCompiledStyles=[n.cssCompiledStyles]),n.type==="Leaf"&&n.value!==void 0&&(o.value=n.value);l.length>0&&l[l.length-1].level>=n.level;)l.pop();if(l.length===0)t.push(o);else{const s=l[l.length-1].node;s.children?s.children.push(o):s.children=[o]}n.type!=="Leaf"&&l.push({node:o,level:n.level})}),t}u.__name(K,"buildHierarchy");var De=u.__name((a,t)=>{ie.populateCommonDb(a,t);const l=[];for(const s of a.TreemapRows??[])s.$type==="ClassDefStatement"&&t.addClass(s.className??"",s.styleText??"");for(const s of a.TreemapRows??[]){const d=s.item;if(!d)continue;const h=s.indent?parseInt(s.indent):0,m=Re(d),c=d.classSelector?t.getStylesForClass(d.classSelector):[],p=c.length>0?c.join(";"):void 0,w={level:h,name:m,type:d.$type,value:d.value,classSelector:d.classSelector,cssCompiledStyles:p};l.push(w)}const n=K(l),o=u.__name((s,d)=>{for(const h of s)t.addNode(h,d),h.children&&h.children.length>0&&o(h.children,d+1)},"addNodesRecursively");o(n,0)},"populate"),Re=u.__name(a=>a.name?String(a.name):"","getItemName"),ee={parser:{yy:void 0},parse:u.__name(async a=>{try{const t=oe.parse,l=await t("treemap",a);u.log.debug("Treemap AST:",l);const n=ee.parser?.yy;if(!(n instanceof J))throw new Error("parser.parser?.yy was not a TreemapDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.");De(l,n)}catch(t){throw u.log.error("Error parsing treemap:",t),t}},"parse")},Ee=10,B=10,G=25,We=u.__name((a,t,l,n)=>{const o=n.db,s=o.getConfig(),d=s.padding??Ee,h=o.getDiagramTitle(),m=o.getRoot(),{themeVariables:c}=u.getConfig();if(!m)return;const p=h?30:0,w=u.selectSvgElement(t),r=s.nodeWidth?s.nodeWidth*B:960,b=s.nodeHeight?s.nodeHeight*B:500,v=r,x=b+p;w.attr("viewBox",`0 0 ${v} ${x}`),u.configureSvgSize(w,x,v,s.useMaxWidth);let f;try{const e=s.valueFormat||",";if(e==="$0,0")f=u.__name(i=>"$"+I.format(",")(i),"valueFormat");else if(e.startsWith("$")&&e.includes(",")){const i=/\.\d+/.exec(e),g=i?i[0]:"";f=u.__name(C=>"$"+I.format(","+g)(C),"valueFormat")}else if(e.startsWith("$")){const i=e.substring(1);f=u.__name(g=>"$"+I.format(i||"")(g),"valueFormat")}else f=I.format(e)}catch(e){u.log.error("Error creating format function:",e),f=I.format(",")}const y=U.ordinal().range(["transparent",c.cScale0,c.cScale1,c.cScale2,c.cScale3,c.cScale4,c.cScale5,c.cScale6,c.cScale7,c.cScale8,c.cScale9,c.cScale10,c.cScale11]),N=U.ordinal().range(["transparent",c.cScalePeer0,c.cScalePeer1,c.cScalePeer2,c.cScalePeer3,c.cScalePeer4,c.cScalePeer5,c.cScalePeer6,c.cScalePeer7,c.cScalePeer8,c.cScalePeer9,c.cScalePeer10,c.cScalePeer11]),k=U.ordinal().range([c.cScaleLabel0,c.cScaleLabel1,c.cScaleLabel2,c.cScaleLabel3,c.cScaleLabel4,c.cScaleLabel5,c.cScaleLabel6,c.cScaleLabel7,c.cScaleLabel8,c.cScaleLabel9,c.cScaleLabel10,c.cScaleLabel11]);h&&w.append("text").attr("x",v/2).attr("y",p/2).attr("class","treemapTitle").attr("text-anchor","middle").attr("dominant-baseline","middle").text(h);const V=w.append("g").attr("transform",`translate(0, ${p})`).attr("class","treemapContainer"),R=Q(m).sum(e=>e.value??0).sort((e,i)=>(i.value??0)-(e.value??0)),Z=Be().size([r,b]).paddingTop(e=>e.children&&e.children.length>0?G+B:0).paddingInner(d).paddingLeft(e=>e.children&&e.children.length>0?B:0).paddingRight(e=>e.children&&e.children.length>0?B:0).paddingBottom(e=>e.children&&e.children.length>0?B:0).round(!0)(R),te=Z.descendants().filter(e=>e.children&&e.children.length>0),E=V.selectAll(".treemapSection").data(te).enter().append("g").attr("class","treemapSection").attr("transform",e=>`translate(${e.x0},${e.y0})`);E.append("rect").attr("width",e=>e.x1-e.x0).attr("height",G).attr("class","treemapSectionHeader").attr("fill","none").attr("fill-opacity",.6).attr("stroke-width",.6).attr("style",e=>e.depth===0?"display: none;":""),E.append("clipPath").attr("id",(e,i)=>`clip-section-${t}-${i}`).append("rect").attr("width",e=>Math.max(0,e.x1-e.x0-12)).attr("height",G),E.append("rect").attr("width",e=>e.x1-e.x0).attr("height",e=>e.y1-e.y0).attr("class",(e,i)=>`treemapSection section${i}`).attr("fill",e=>y(e.data.name)).attr("fill-opacity",.6).attr("stroke",e=>N(e.data.name)).attr("stroke-width",2).attr("stroke-opacity",.4).attr("style",e=>{if(e.depth===0)return"display: none;";const i=u.styles2String({cssCompiledStyles:e.data.cssCompiledStyles});return i.nodeStyles+";"+i.borderStyles.join(";")}),E.append("text").attr("class","treemapSectionLabel").attr("x",6).attr("y",G/2).attr("dominant-baseline","middle").text(e=>e.depth===0?"":e.data.name).attr("font-weight","bold").attr("style",e=>{if(e.depth===0)return"display: none;";const i="dominant-baseline: middle; font-size: 12px; fill:"+k(e.data.name)+"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;",g=u.styles2String({cssCompiledStyles:e.data.cssCompiledStyles});return i+g.labelStyles.replace("color:","fill:")}).each(function(e){if(e.depth===0)return;const i=u.select(this),g=e.data.name;i.text(g);const C=e.x1-e.x0,T=6;let L;s.showValues!==!1&&e.value?L=C-10-30-10-T:L=C-T-6;const $=Math.max(15,L),S=i.node();if(S.getComputedTextLength()>$){let _=g;for(;_.length>0;){if(_=g.substring(0,_.length-1),_.length===0){i.text("..."),S.getComputedTextLength()>$&&i.text("");break}if(i.text(_+"..."),S.getComputedTextLength()<=$)break}}}),s.showValues!==!1&&E.append("text").attr("class","treemapSectionValue").attr("x",e=>e.x1-e.x0-10).attr("y",G/2).attr("text-anchor","end").attr("dominant-baseline","middle").text(e=>e.value?f(e.value):"").attr("font-style","italic").attr("style",e=>{if(e.depth===0)return"display: none;";const i="text-anchor: end; dominant-baseline: middle; font-size: 10px; fill:"+k(e.data.name)+"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;",g=u.styles2String({cssCompiledStyles:e.data.cssCompiledStyles});return i+g.labelStyles.replace("color:","fill:")});const ae=Z.leaves(),X=V.selectAll(".treemapLeafGroup").data(ae).enter().append("g").attr("class",(e,i)=>`treemapNode treemapLeafGroup leaf${i}${e.data.classSelector?` ${e.data.classSelector}`:""}x`).attr("transform",e=>`translate(${e.x0},${e.y0})`);X.append("rect").attr("width",e=>e.x1-e.x0).attr("height",e=>e.y1-e.y0).attr("class","treemapLeaf").attr("fill",e=>e.parent?y(e.parent.data.name):y(e.data.name)).attr("style",e=>u.styles2String({cssCompiledStyles:e.data.cssCompiledStyles}).nodeStyles).attr("fill-opacity",.3).attr("stroke",e=>e.parent?y(e.parent.data.name):y(e.data.name)).attr("stroke-width",3),X.append("clipPath").attr("id",(e,i)=>`clip-${t}-${i}`).append("rect").attr("width",e=>Math.max(0,e.x1-e.x0-4)).attr("height",e=>Math.max(0,e.y1-e.y0-4)),X.append("text").attr("class","treemapLabel").attr("x",e=>(e.x1-e.x0)/2).attr("y",e=>(e.y1-e.y0)/2).attr("style",e=>{const i="text-anchor: middle; dominant-baseline: middle; font-size: 38px;fill:"+k(e.data.name)+";",g=u.styles2String({cssCompiledStyles:e.data.cssCompiledStyles});return i+g.labelStyles.replace("color:","fill:")}).attr("clip-path",(e,i)=>`url(#clip-${t}-${i})`).text(e=>e.data.name).each(function(e){const i=u.select(this),g=e.x1-e.x0,C=e.y1-e.y0,T=i.node(),L=4,P=g-2*L,$=C-2*L;if(P<10||$<10){i.style("display","none");return}let S=parseInt(i.style("font-size"),10);const F=8,A=28,_=.6,z=6,W=2;for(;T.getComputedTextLength()>P&&S>F;)S--,i.style("font-size",`${S}px`);let H=Math.max(z,Math.min(A,Math.round(S*_))),Y=S+W+H;for(;Y>$&&S>F&&(S--,H=Math.max(z,Math.min(A,Math.round(S*_))),!(H<z&&S===F));)i.style("font-size",`${S}px`),Y=S+W+H;i.style("font-size",`${S}px`),(T.getComputedTextLength()>P||S<F||$<S)&&i.style("display","none")}),s.showValues!==!1&&X.append("text").attr("class","treemapValue").attr("x",i=>(i.x1-i.x0)/2).attr("y",function(i){return(i.y1-i.y0)/2}).attr("style",i=>{const g="text-anchor: middle; dominant-baseline: hanging; font-size: 28px;fill:"+k(i.data.name)+";",C=u.styles2String({cssCompiledStyles:i.data.cssCompiledStyles});return g+C.labelStyles.replace("color:","fill:")}).attr("clip-path",(i,g)=>`url(#clip-${t}-${g})`).text(i=>i.value?f(i.value):"").each(function(i){const g=u.select(this),C=this.parentNode;if(!C){g.style("display","none");return}const T=u.select(C).select(".treemapLabel");if(T.empty()||T.style("display")==="none"){g.style("display","none");return}const L=parseFloat(T.style("font-size")),P=28,$=.6,S=6,F=2,A=Math.max(S,Math.min(P,Math.round(L*$)));g.style("font-size",`${A}px`);const z=(i.y1-i.y0)/2+L/2+F;g.attr("y",z);const W=i.x1-i.x0,le=i.y1-i.y0-4,re=W-8;g.node().getComputedTextLength()>re||z+A>le||A<S?g.style("display","none"):g.style("display",null)});const ne=s.diagramPadding??8;se.setupViewPortForSVG(w,ne,"flowchart",s?.useMaxWidth||!1)},"draw"),He=u.__name(function(a,t){return t.db.getClasses()},"getClasses"),Ie={draw:We,getClasses:He},qe={sectionStrokeColor:"black",sectionStrokeWidth:"1",sectionFillColor:"#efefef",leafStrokeColor:"black",leafStrokeWidth:"1",leafFillColor:"#efefef",labelColor:"black",labelFontSize:"12px",valueFontSize:"10px",valueColor:"black",titleColor:"black",titleFontSize:"14px"},Oe=u.__name(({treemap:a}={})=>{const t=u.cleanAndMerge(qe,a);return`
2
+ .treemapNode.section {
3
+ stroke: ${t.sectionStrokeColor};
4
+ stroke-width: ${t.sectionStrokeWidth};
5
+ fill: ${t.sectionFillColor};
6
+ }
7
+ .treemapNode.leaf {
8
+ stroke: ${t.leafStrokeColor};
9
+ stroke-width: ${t.leafStrokeWidth};
10
+ fill: ${t.leafFillColor};
11
+ }
12
+ .treemapLabel {
13
+ fill: ${t.labelColor};
14
+ font-size: ${t.labelFontSize};
15
+ }
16
+ .treemapValue {
17
+ fill: ${t.valueColor};
18
+ font-size: ${t.valueFontSize};
19
+ }
20
+ .treemapTitle {
21
+ fill: ${t.titleColor};
22
+ font-size: ${t.titleFontSize};
23
+ }
24
+ `},"getStyles"),Ge=Oe,Xe={parser:ee,get db(){return new J},renderer:Ie,styles:Ge};exports.diagram=Xe;
25
+ //# sourceMappingURL=diagram-PSM6KHXK-r4cFRZZM.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diagram-PSM6KHXK-r4cFRZZM.cjs","sources":["../../../node_modules/.pnpm/d3-hierarchy@3.1.2/node_modules/d3-hierarchy/src/hierarchy/count.js","../../../node_modules/.pnpm/d3-hierarchy@3.1.2/node_modules/d3-hierarchy/src/hierarchy/each.js","../../../node_modules/.pnpm/d3-hierarchy@3.1.2/node_modules/d3-hierarchy/src/hierarchy/eachBefore.js","../../../node_modules/.pnpm/d3-hierarchy@3.1.2/node_modules/d3-hierarchy/src/hierarchy/eachAfter.js","../../../node_modules/.pnpm/d3-hierarchy@3.1.2/node_modules/d3-hierarchy/src/hierarchy/find.js","../../../node_modules/.pnpm/d3-hierarchy@3.1.2/node_modules/d3-hierarchy/src/hierarchy/sum.js","../../../node_modules/.pnpm/d3-hierarchy@3.1.2/node_modules/d3-hierarchy/src/hierarchy/sort.js","../../../node_modules/.pnpm/d3-hierarchy@3.1.2/node_modules/d3-hierarchy/src/hierarchy/path.js","../../../node_modules/.pnpm/d3-hierarchy@3.1.2/node_modules/d3-hierarchy/src/hierarchy/ancestors.js","../../../node_modules/.pnpm/d3-hierarchy@3.1.2/node_modules/d3-hierarchy/src/hierarchy/descendants.js","../../../node_modules/.pnpm/d3-hierarchy@3.1.2/node_modules/d3-hierarchy/src/hierarchy/leaves.js","../../../node_modules/.pnpm/d3-hierarchy@3.1.2/node_modules/d3-hierarchy/src/hierarchy/links.js","../../../node_modules/.pnpm/d3-hierarchy@3.1.2/node_modules/d3-hierarchy/src/hierarchy/iterator.js","../../../node_modules/.pnpm/d3-hierarchy@3.1.2/node_modules/d3-hierarchy/src/hierarchy/index.js","../../../node_modules/.pnpm/d3-hierarchy@3.1.2/node_modules/d3-hierarchy/src/accessors.js","../../../node_modules/.pnpm/d3-hierarchy@3.1.2/node_modules/d3-hierarchy/src/constant.js","../../../node_modules/.pnpm/d3-hierarchy@3.1.2/node_modules/d3-hierarchy/src/treemap/round.js","../../../node_modules/.pnpm/d3-hierarchy@3.1.2/node_modules/d3-hierarchy/src/treemap/dice.js","../../../node_modules/.pnpm/d3-hierarchy@3.1.2/node_modules/d3-hierarchy/src/treemap/slice.js","../../../node_modules/.pnpm/d3-hierarchy@3.1.2/node_modules/d3-hierarchy/src/treemap/squarify.js","../../../node_modules/.pnpm/d3-hierarchy@3.1.2/node_modules/d3-hierarchy/src/treemap/index.js","../../../node_modules/.pnpm/mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/diagram-PSM6KHXK.mjs"],"sourcesContent":["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-EXTU4WIE.mjs\";\nimport {\n setupViewPortForSVG\n} from \"./chunk-QN33PNHL.mjs\";\nimport {\n isLabelStyle,\n styles2String\n} from \"./chunk-ATLVNIR6.mjs\";\nimport {\n populateCommonDb\n} from \"./chunk-4BX2VUAB.mjs\";\nimport {\n cleanAndMerge\n} from \"./chunk-S3R3BYOJ.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-ABZYJK2D.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.join(\";\") : 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"],"names":["count","node","sum","children","i","node_count","node_each","callback","that","index","node_eachBefore","nodes","node_eachAfter","next","n","node_find","node_sum","value","node_sort","compare","node_path","end","start","ancestor","leastCommonAncestor","k","b","aNodes","bNodes","c","node_ancestors","node_descendants","node_leaves","leaves","node_links","root","links","node_iterator","current","hierarchy","data","mapChildren","objectChildren","Node","child","childs","computeHeight","node_copy","copyData","d","height","required","f","constantZero","constant","x","roundNode","treemapDice","parent","x0","y0","x1","y1","treemapSlice","phi","squarifyRatio","ratio","rows","row","nodeValue","i0","i1","dx","dy","sumValue","minValue","maxValue","newRatio","minRatio","alpha","beta","squarify","custom","treemap","tile","round","paddingStack","paddingInner","paddingTop","paddingRight","paddingBottom","paddingLeft","positionNode","p","TreeMapDB","_a","setAccTitle","getAccTitle","setDiagramTitle","getDiagramTitle","getAccDescription","setAccDescription","defaultConfig","defaultConfig_default","userConfig","getConfig","cleanAndMerge","level","id","_style","styleClass","styles","isLabelStyle","classSelector","clear","__name","buildHierarchy","items","stack","item","populate","ast","db","populateCommonDb","name","getItemName","cssCompiledStyles","itemData","hierarchyNodes","addNodesRecursively","parser","text","parseFunc","parse","log","error","DEFAULT_INNER_PADDING","SECTION_INNER_PADDING","SECTION_HEADER_HEIGHT","draw","_text","_version","diagram2","treemapDb","config","treemapInnerPadding","title","themeVariables","titleHeight","svg","selectSvgElement","width","svgWidth","svgHeight","configureSvgSize","valueFormat","formatStr","format","precision","precisionStr","restOfFormat","colorScale","scaleOrdinal","colorScalePeer","colorScaleLabel","g","hierarchyRoot","a","treemapData","branchNodes","sections","_d","styles2String","labelStyles","self","select","originalText","totalHeaderWidth","labelXPosition","spaceForTextContent","actualAvailableWidth","textNode","currentTruncatedText","leafNodes","cell","nodeWidth","nodeHeight","padding","availableWidth","availableHeight","currentLabelFontSize","minLabelFontSize","originalValueRelFontSize","valueScaleFactor","minValueFontSize","spacingBetweenLabelAndValue","prospectiveValueFontSize","combinedHeight","valueTextElement","parentCellNode","labelElement","finalLabelFontSize","originalValueFontSize","actualValueFontSize","valueTopActualY","maxValueBottomY","availableWidthForValue","diagramPadding","setupViewPortForSVG","getClasses","diagramObj","renderer","defaultTreemapStyleOptions","getStyles","treemap2","options","styles_default","diagram"],"mappings":"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","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]}
@@ -0,0 +1,44 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("./index-DSNpXrO0.cjs"),L=require("./chunk-4BX2VUAB-CctGCeAK.cjs"),O=require("./mermaid-parser.core-BahfL7OK.cjs");var h={showLegend:!0,ticks:5,max:null,min:0,graticule:"circle"},y={axes:[],curves:[],options:h},p=structuredClone(y),S=n.defaultConfig_default.radar,k=n.__name(()=>n.cleanAndMerge({...S,...n.getConfig().radar}),"getConfig"),f=n.__name(()=>p.axes,"getAxes"),D=n.__name(()=>p.curves,"getCurves"),R=n.__name(()=>p.options,"getOptions"),I=n.__name(a=>{p.axes=a.map(e=>({name:e.name,label:e.label??e.name}))},"setAxes"),E=n.__name(a=>{p.curves=a.map(e=>({name:e.name,label:e.label??e.name,entries:F(e.entries)}))},"setCurves"),F=n.__name(a=>{if(a[0].axis==null)return a.map(t=>t.value);const e=f();if(e.length===0)throw new Error("Axes must be populated before curves for reference entries");return e.map(t=>{const r=a.find(s=>s.axis?.$refText===t.name);if(r===void 0)throw new Error("Missing entry for axis "+t.label);return r.value})},"computeCurveEntries"),P=n.__name(a=>{const e=a.reduce((t,r)=>(t[r.name]=r,t),{});p.options={showLegend:e.showLegend?.value??h.showLegend,ticks:e.ticks?.value??h.ticks,max:e.max?.value??h.max,min:e.min?.value??h.min,graticule:e.graticule?.value??h.graticule}},"setOptions"),G=n.__name(()=>{n.clear(),p=structuredClone(y)},"clear"),_={getAxes:f,getCurves:D,getOptions:R,setAxes:I,setCurves:E,setOptions:P,getConfig:k,clear:G,setAccTitle:n.setAccTitle,getAccTitle:n.getAccTitle,setDiagramTitle:n.setDiagramTitle,getDiagramTitle:n.getDiagramTitle,getAccDescription:n.getAccDescription,setAccDescription:n.setAccDescription},z=n.__name(a=>{L.populateCommonDb(a,_);const{axes:e,curves:t,options:r}=a;_.setAxes(e),_.setCurves(t),_.setOptions(r)},"populate"),B={parse:n.__name(async a=>{const e=await O.parse("radar",a);n.log.debug(e),z(e)},"parse")},V=n.__name((a,e,t,r)=>{const s=r.db,o=s.getAxes(),l=s.getCurves(),i=s.getOptions(),c=s.getConfig(),d=s.getDiagramTitle(),m=n.selectSvgElement(e),u=W(m,c),g=i.max??Math.max(...l.map($=>Math.max(...$.entries))),x=i.min,v=Math.min(c.width,c.height)/2;j(u,o,v,i.ticks,i.graticule),q(u,o,v,c),C(u,o,l,x,g,i.graticule,c),A(u,l,i.showLegend,c),u.append("text").attr("class","radarTitle").text(d).attr("x",0).attr("y",-c.height/2-c.marginTop)},"draw"),W=n.__name((a,e)=>{const t=e.width+e.marginLeft+e.marginRight,r=e.height+e.marginTop+e.marginBottom,s={x:e.marginLeft+e.width/2,y:e.marginTop+e.height/2};return a.attr("viewbox",`0 0 ${t} ${r}`).attr("width",t).attr("height",r),a.append("g").attr("transform",`translate(${s.x}, ${s.y})`)},"drawFrame"),j=n.__name((a,e,t,r,s)=>{if(s==="circle")for(let o=0;o<r;o++){const l=t*(o+1)/r;a.append("circle").attr("r",l).attr("class","radarGraticule")}else if(s==="polygon"){const o=e.length;for(let l=0;l<r;l++){const i=t*(l+1)/r,c=e.map((d,m)=>{const u=2*m*Math.PI/o-Math.PI/2,g=i*Math.cos(u),x=i*Math.sin(u);return`${g},${x}`}).join(" ");a.append("polygon").attr("points",c).attr("class","radarGraticule")}}},"drawGraticule"),q=n.__name((a,e,t,r)=>{const s=e.length;for(let o=0;o<s;o++){const l=e[o].label,i=2*o*Math.PI/s-Math.PI/2;a.append("line").attr("x1",0).attr("y1",0).attr("x2",t*r.axisScaleFactor*Math.cos(i)).attr("y2",t*r.axisScaleFactor*Math.sin(i)).attr("class","radarAxisLine"),a.append("text").text(l).attr("x",t*r.axisLabelFactor*Math.cos(i)).attr("y",t*r.axisLabelFactor*Math.sin(i)).attr("class","radarAxisLabel")}},"drawAxes");function C(a,e,t,r,s,o,l){const i=e.length,c=Math.min(l.width,l.height)/2;t.forEach((d,m)=>{if(d.entries.length!==i)return;const u=d.entries.map((g,x)=>{const v=2*Math.PI*x/i-Math.PI/2,$=w(g,r,s,c),M=$*Math.cos(v),T=$*Math.sin(v);return{x:M,y:T}});o==="circle"?a.append("path").attr("d",b(u,l.curveTension)).attr("class",`radarCurve-${m}`):o==="polygon"&&a.append("polygon").attr("points",u.map(g=>`${g.x},${g.y}`).join(" ")).attr("class",`radarCurve-${m}`)})}n.__name(C,"drawCurves");function w(a,e,t,r){const s=Math.min(Math.max(a,e),t);return r*(s-e)/(t-e)}n.__name(w,"relativeRadius");function b(a,e){const t=a.length;let r=`M${a[0].x},${a[0].y}`;for(let s=0;s<t;s++){const o=a[(s-1+t)%t],l=a[s],i=a[(s+1)%t],c=a[(s+2)%t],d={x:l.x+(i.x-o.x)*e,y:l.y+(i.y-o.y)*e},m={x:i.x-(c.x-l.x)*e,y:i.y-(c.y-l.y)*e};r+=` C${d.x},${d.y} ${m.x},${m.y} ${i.x},${i.y}`}return`${r} Z`}n.__name(b,"closedRoundCurve");function A(a,e,t,r){if(!t)return;const s=(r.width/2+r.marginRight)*3/4,o=-(r.height/2+r.marginTop)*3/4,l=20;e.forEach((i,c)=>{const d=a.append("g").attr("transform",`translate(${s}, ${o+c*l})`);d.append("rect").attr("width",12).attr("height",12).attr("class",`radarLegendBox-${c}`),d.append("text").attr("x",16).attr("y",0).attr("class","radarLegendText").text(i.label)})}n.__name(A,"drawLegend");var H={draw:V},U=n.__name((a,e)=>{let t="";for(let r=0;r<a.THEME_COLOR_LIMIT;r++){const s=a[`cScale${r}`];t+=`
2
+ .radarCurve-${r} {
3
+ color: ${s};
4
+ fill: ${s};
5
+ fill-opacity: ${e.curveOpacity};
6
+ stroke: ${s};
7
+ stroke-width: ${e.curveStrokeWidth};
8
+ }
9
+ .radarLegendBox-${r} {
10
+ fill: ${s};
11
+ fill-opacity: ${e.curveOpacity};
12
+ stroke: ${s};
13
+ }
14
+ `}return t},"genIndexStyles"),X=n.__name(a=>{const e=n.getThemeVariables3(),t=n.getConfig(),r=n.cleanAndMerge(e,t.themeVariables),s=n.cleanAndMerge(r.radar,a);return{themeVariables:r,radarOptions:s}},"buildRadarStyleOptions"),N=n.__name(({radar:a}={})=>{const{themeVariables:e,radarOptions:t}=X(a);return`
15
+ .radarTitle {
16
+ font-size: ${e.fontSize};
17
+ color: ${e.titleColor};
18
+ dominant-baseline: hanging;
19
+ text-anchor: middle;
20
+ }
21
+ .radarAxisLine {
22
+ stroke: ${t.axisColor};
23
+ stroke-width: ${t.axisStrokeWidth};
24
+ }
25
+ .radarAxisLabel {
26
+ dominant-baseline: middle;
27
+ text-anchor: middle;
28
+ font-size: ${t.axisLabelFontSize}px;
29
+ color: ${t.axisColor};
30
+ }
31
+ .radarGraticule {
32
+ fill: ${t.graticuleColor};
33
+ fill-opacity: ${t.graticuleOpacity};
34
+ stroke: ${t.graticuleColor};
35
+ stroke-width: ${t.graticuleStrokeWidth};
36
+ }
37
+ .radarLegendText {
38
+ text-anchor: start;
39
+ font-size: ${t.legendFontSize}px;
40
+ dominant-baseline: hanging;
41
+ }
42
+ ${U(e,t)}
43
+ `},"styles"),Y={parser:B,db:_,renderer:H,styles:N};exports.diagram=Y;
44
+ //# sourceMappingURL=diagram-QEK2KX5R-DOjY0eaD.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diagram-QEK2KX5R-DOjY0eaD.cjs","sources":["../../../node_modules/.pnpm/mermaid@11.12.1/node_modules/mermaid/dist/chunks/mermaid.core/diagram-QEK2KX5R.mjs"],"sourcesContent":["import {\n selectSvgElement\n} from \"./chunk-EXTU4WIE.mjs\";\nimport {\n populateCommonDb\n} from \"./chunk-4BX2VUAB.mjs\";\nimport {\n cleanAndMerge\n} from \"./chunk-S3R3BYOJ.mjs\";\nimport {\n clear,\n defaultConfig_default,\n getAccDescription,\n getAccTitle,\n getConfig,\n getDiagramTitle,\n getThemeVariables,\n setAccDescription,\n setAccTitle,\n setDiagramTitle\n} from \"./chunk-ABZYJK2D.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 svg.attr(\"viewbox\", `0 0 ${totalWidth} ${totalHeight}`).attr(\"width\", totalWidth).attr(\"height\", 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"],"names":["defaultOptions","defaultRadarData","data","DEFAULT_RADAR_CONFIG","defaultConfig_default","getConfig2","__name","cleanAndMerge","getConfig","getAxes","getCurves","getOptions","setAxes","axes","axis","setCurves","curves","curve","computeCurveEntries","entries","entry","entry2","setOptions","options","optionMap","acc","option","clear2","clear","db","setAccTitle","getAccTitle","setDiagramTitle","getDiagramTitle","getAccDescription","setAccDescription","populate","ast","populateCommonDb","parser","input","parse","log","draw","_text","id","_version","diagram2","db2","config","title","svg","selectSvgElement","g","drawFrame","maxValue","minValue","radius","drawGraticule","drawAxes","drawCurves","drawLegend","totalWidth","totalHeight","center","ticks","graticule","i","r","numAxes","points","_","j","angle","x","y","label","index","relativeRadius","closedRoundCurve","p","value","clippedValue","tension","numPoints","d","p0","p1","p2","p3","cp1","cp2","showLegend","legendX","legendY","lineHeight","itemGroup","renderer","genIndexStyles","themeVariables","radarOptions","sections","indexColor","buildRadarStyleOptions","radar","defaultThemeVariables","getThemeVariables","currentConfig","styles","diagram"],"mappings":"mNA2BA,IAAIA,EAAiB,CACnB,WAAY,GACZ,MAAO,EACP,IAAK,KACL,IAAK,EACL,UAAW,QACb,EACIC,EAAmB,CACrB,KAAM,CAAA,EACN,OAAQ,CAAA,EACR,QAASD,CACX,EACIE,EAAO,gBAAgBD,CAAgB,EACvCE,EAAuBC,EAAAA,sBAAsB,MAC7CC,EAA6BC,EAAAA,OAAO,IACvBC,EAAAA,cAAc,CAC3B,GAAGJ,EACH,GAAGK,EAAAA,UAAS,EAAG,KACnB,CAAG,EAEA,WAAW,EACVC,EAA0BH,EAAAA,OAAO,IAAMJ,EAAK,KAAM,SAAS,EAC3DQ,EAA4BJ,EAAAA,OAAO,IAAMJ,EAAK,OAAQ,WAAW,EACjES,EAA6BL,EAAAA,OAAO,IAAMJ,EAAK,QAAS,YAAY,EACpEU,EAA0BN,EAAAA,OAAQO,GAAS,CAC7CX,EAAK,KAAOW,EAAK,IAAKC,IACb,CACL,KAAMA,EAAK,KACX,MAAOA,EAAK,OAASA,EAAK,IAChC,EACG,CACH,EAAG,SAAS,EACRC,EAA4BT,EAAAA,OAAQU,GAAW,CACjDd,EAAK,OAASc,EAAO,IAAKC,IACjB,CACL,KAAMA,EAAM,KACZ,MAAOA,EAAM,OAASA,EAAM,KAC5B,QAASC,EAAoBD,EAAM,OAAO,CAChD,EACG,CACH,EAAG,WAAW,EACVC,EAAsCZ,EAAAA,OAAQa,GAAY,CAC5D,GAAIA,EAAQ,CAAC,EAAE,MAAQ,KACrB,OAAOA,EAAQ,IAAKC,GAAUA,EAAM,KAAK,EAE3C,MAAMP,EAAOJ,EAAO,EACpB,GAAII,EAAK,SAAW,EAClB,MAAM,IAAI,MAAM,4DAA4D,EAE9E,OAAOA,EAAK,IAAKC,GAAS,CACxB,MAAMM,EAAQD,EAAQ,KAAME,GAAWA,EAAO,MAAM,WAAaP,EAAK,IAAI,EAC1E,GAAIM,IAAU,OACZ,MAAM,IAAI,MAAM,0BAA4BN,EAAK,KAAK,EAExD,OAAOM,EAAM,KACf,CAAC,CACH,EAAG,qBAAqB,EACpBE,EAA6BhB,EAAAA,OAAQiB,GAAY,CACnD,MAAMC,EAAYD,EAAQ,OACxB,CAACE,EAAKC,KACJD,EAAIC,EAAO,IAAI,EAAIA,EACZD,GAET,CAAA,CACJ,EACEvB,EAAK,QAAU,CACb,WAAYsB,EAAU,YAAY,OAASxB,EAAe,WAC1D,MAAOwB,EAAU,OAAO,OAASxB,EAAe,MAChD,IAAKwB,EAAU,KAAK,OAASxB,EAAe,IAC5C,IAAKwB,EAAU,KAAK,OAASxB,EAAe,IAC5C,UAAWwB,EAAU,WAAW,OAASxB,EAAe,SAC5D,CACA,EAAG,YAAY,EACX2B,EAAyBrB,EAAAA,OAAO,IAAM,CACxCsB,QAAK,EACL1B,EAAO,gBAAgBD,CAAgB,CACzC,EAAG,OAAO,EACN4B,EAAK,CACP,QAAApB,EACA,UAAAC,EACA,WAAAC,EACA,QAAAC,EACA,UAAAG,EACA,WAAAO,EACA,UAAWjB,EACX,MAAOsB,EACT,YAAEG,EAAAA,YACF,YAAEC,EAAAA,YACF,gBAAEC,EAAAA,gBACF,gBAAEC,EAAAA,gBACF,kBAAEC,EAAAA,kBACF,kBAAEC,EAAAA,iBACF,EAIIC,EAA2B9B,EAAAA,OAAQ+B,GAAQ,CAC7CC,EAAAA,iBAAiBD,EAAKR,CAAE,EACxB,KAAM,CAAE,KAAAhB,EAAM,OAAAG,EAAQ,QAAAO,CAAO,EAAKc,EAClCR,EAAG,QAAQhB,CAAI,EACfgB,EAAG,UAAUb,CAAM,EACnBa,EAAG,WAAWN,CAAO,CACvB,EAAG,UAAU,EACTgB,EAAS,CACX,MAAuBjC,EAAAA,OAAO,MAAOkC,GAAU,CAC7C,MAAMH,EAAM,MAAMI,QAAM,QAASD,CAAK,EACtCE,EAAAA,IAAI,MAAML,CAAG,EACbD,EAASC,CAAG,CACd,EAAG,OAAO,CACZ,EAGIM,EAAuBrC,EAAAA,OAAO,CAACsC,EAAOC,EAAIC,EAAUC,IAAa,CACnE,MAAMC,EAAMD,EAAS,GACflC,EAAOmC,EAAI,QAAO,EAClBhC,EAASgC,EAAI,UAAS,EACtBzB,EAAUyB,EAAI,WAAU,EACxBC,EAASD,EAAI,UAAS,EACtBE,EAAQF,EAAI,gBAAe,EAC3BG,EAAMC,EAAAA,iBAAiBP,CAAE,EACzBQ,EAAIC,EAAUH,EAAKF,CAAM,EACzBM,EAAWhC,EAAQ,KAAO,KAAK,IAAI,GAAGP,EAAO,IAAKC,GAAU,KAAK,IAAI,GAAGA,EAAM,OAAO,CAAC,CAAC,EACvFuC,EAAWjC,EAAQ,IACnBkC,EAAS,KAAK,IAAIR,EAAO,MAAOA,EAAO,MAAM,EAAI,EACvDS,EAAcL,EAAGxC,EAAM4C,EAAQlC,EAAQ,MAAOA,EAAQ,SAAS,EAC/DoC,EAASN,EAAGxC,EAAM4C,EAAQR,CAAM,EAChCW,EAAWP,EAAGxC,EAAMG,EAAQwC,EAAUD,EAAUhC,EAAQ,UAAW0B,CAAM,EACzEY,EAAWR,EAAGrC,EAAQO,EAAQ,WAAY0B,CAAM,EAChDI,EAAE,OAAO,MAAM,EAAE,KAAK,QAAS,YAAY,EAAE,KAAKH,CAAK,EAAE,KAAK,IAAK,CAAC,EAAE,KAAK,IAAK,CAACD,EAAO,OAAS,EAAIA,EAAO,SAAS,CACvH,EAAG,MAAM,EACLK,EAA4BhD,EAAAA,OAAO,CAAC6C,EAAKF,IAAW,CACtD,MAAMa,EAAab,EAAO,MAAQA,EAAO,WAAaA,EAAO,YACvDc,EAAcd,EAAO,OAASA,EAAO,UAAYA,EAAO,aACxDe,EAAS,CACb,EAAGf,EAAO,WAAaA,EAAO,MAAQ,EACtC,EAAGA,EAAO,UAAYA,EAAO,OAAS,CAC1C,EACE,OAAAE,EAAI,KAAK,UAAW,OAAOW,CAAU,IAAIC,CAAW,EAAE,EAAE,KAAK,QAASD,CAAU,EAAE,KAAK,SAAUC,CAAW,EACrGZ,EAAI,OAAO,GAAG,EAAE,KAAK,YAAa,aAAaa,EAAO,CAAC,KAAKA,EAAO,CAAC,GAAG,CAChF,EAAG,WAAW,EACVN,EAAgCpD,EAAAA,OAAO,CAAC+C,EAAGxC,EAAM4C,EAAQQ,EAAOC,IAAc,CAChF,GAAIA,IAAc,SAChB,QAASC,EAAI,EAAGA,EAAIF,EAAOE,IAAK,CAC9B,MAAMC,EAAIX,GAAUU,EAAI,GAAKF,EAC7BZ,EAAE,OAAO,QAAQ,EAAE,KAAK,IAAKe,CAAC,EAAE,KAAK,QAAS,gBAAgB,CAChE,SACSF,IAAc,UAAW,CAClC,MAAMG,EAAUxD,EAAK,OACrB,QAASsD,EAAI,EAAGA,EAAIF,EAAOE,IAAK,CAC9B,MAAMC,EAAIX,GAAUU,EAAI,GAAKF,EACvBK,EAASzD,EAAK,IAAI,CAAC0D,EAAGC,IAAM,CAChC,MAAMC,EAAQ,EAAID,EAAI,KAAK,GAAKH,EAAU,KAAK,GAAK,EAC9CK,EAAIN,EAAI,KAAK,IAAIK,CAAK,EACtBE,EAAIP,EAAI,KAAK,IAAIK,CAAK,EAC5B,MAAO,GAAGC,CAAC,IAAIC,CAAC,EAClB,CAAC,EAAE,KAAK,GAAG,EACXtB,EAAE,OAAO,SAAS,EAAE,KAAK,SAAUiB,CAAM,EAAE,KAAK,QAAS,gBAAgB,CAC3E,CACF,CACF,EAAG,eAAe,EACdX,EAA2BrD,EAAAA,OAAO,CAAC+C,EAAGxC,EAAM4C,EAAQR,IAAW,CACjE,MAAMoB,EAAUxD,EAAK,OACrB,QAASsD,EAAI,EAAGA,EAAIE,EAASF,IAAK,CAChC,MAAMS,EAAQ/D,EAAKsD,CAAC,EAAE,MAChBM,EAAQ,EAAIN,EAAI,KAAK,GAAKE,EAAU,KAAK,GAAK,EACpDhB,EAAE,OAAO,MAAM,EAAE,KAAK,KAAM,CAAC,EAAE,KAAK,KAAM,CAAC,EAAE,KAAK,KAAMI,EAASR,EAAO,gBAAkB,KAAK,IAAIwB,CAAK,CAAC,EAAE,KAAK,KAAMhB,EAASR,EAAO,gBAAkB,KAAK,IAAIwB,CAAK,CAAC,EAAE,KAAK,QAAS,eAAe,EACtMpB,EAAE,OAAO,MAAM,EAAE,KAAKuB,CAAK,EAAE,KAAK,IAAKnB,EAASR,EAAO,gBAAkB,KAAK,IAAIwB,CAAK,CAAC,EAAE,KAAK,IAAKhB,EAASR,EAAO,gBAAkB,KAAK,IAAIwB,CAAK,CAAC,EAAE,KAAK,QAAS,gBAAgB,CACvL,CACF,EAAG,UAAU,EACb,SAASb,EAAWP,EAAGxC,EAAMG,EAAQwC,EAAUD,EAAUW,EAAWjB,EAAQ,CAC1E,MAAMoB,EAAUxD,EAAK,OACf4C,EAAS,KAAK,IAAIR,EAAO,MAAOA,EAAO,MAAM,EAAI,EACvDjC,EAAO,QAAQ,CAACC,EAAO4D,IAAU,CAC/B,GAAI5D,EAAM,QAAQ,SAAWoD,EAC3B,OAEF,MAAMC,EAASrD,EAAM,QAAQ,IAAI,CAACG,EAAO+C,IAAM,CAC7C,MAAMM,EAAQ,EAAI,KAAK,GAAKN,EAAIE,EAAU,KAAK,GAAK,EAC9CD,EAAIU,EAAe1D,EAAOoC,EAAUD,EAAUE,CAAM,EACpDiB,EAAIN,EAAI,KAAK,IAAIK,CAAK,EACtBE,EAAIP,EAAI,KAAK,IAAIK,CAAK,EAC5B,MAAO,CAAE,EAAAC,EAAG,EAAAC,CAAC,CACf,CAAC,EACGT,IAAc,SAChBb,EAAE,OAAO,MAAM,EAAE,KAAK,IAAK0B,EAAiBT,EAAQrB,EAAO,YAAY,CAAC,EAAE,KAAK,QAAS,cAAc4B,CAAK,EAAE,EACpGX,IAAc,WACvBb,EAAE,OAAO,SAAS,EAAE,KAAK,SAAUiB,EAAO,IAAKU,GAAM,GAAGA,EAAE,CAAC,IAAIA,EAAE,CAAC,EAAE,EAAE,KAAK,GAAG,CAAC,EAAE,KAAK,QAAS,cAAcH,CAAK,EAAE,CAExH,CAAC,CACH,CACAvE,EAAAA,OAAOsD,EAAY,YAAY,EAC/B,SAASkB,EAAeG,EAAOzB,EAAUD,EAAUE,EAAQ,CACzD,MAAMyB,EAAe,KAAK,IAAI,KAAK,IAAID,EAAOzB,CAAQ,EAAGD,CAAQ,EACjE,OAAOE,GAAUyB,EAAe1B,IAAaD,EAAWC,EAC1D,CACAlD,EAAAA,OAAOwE,EAAgB,gBAAgB,EACvC,SAASC,EAAiBT,EAAQa,EAAS,CACzC,MAAMC,EAAYd,EAAO,OACzB,IAAIe,EAAI,IAAIf,EAAO,CAAC,EAAE,CAAC,IAAIA,EAAO,CAAC,EAAE,CAAC,GACtC,QAASH,EAAI,EAAGA,EAAIiB,EAAWjB,IAAK,CAClC,MAAMmB,EAAKhB,GAAQH,EAAI,EAAIiB,GAAaA,CAAS,EAC3CG,EAAKjB,EAAOH,CAAC,EACbqB,EAAKlB,GAAQH,EAAI,GAAKiB,CAAS,EAC/BK,EAAKnB,GAAQH,EAAI,GAAKiB,CAAS,EAC/BM,EAAM,CACV,EAAGH,EAAG,GAAKC,EAAG,EAAIF,EAAG,GAAKH,EAC1B,EAAGI,EAAG,GAAKC,EAAG,EAAIF,EAAG,GAAKH,CAChC,EACUQ,EAAM,CACV,EAAGH,EAAG,GAAKC,EAAG,EAAIF,EAAG,GAAKJ,EAC1B,EAAGK,EAAG,GAAKC,EAAG,EAAIF,EAAG,GAAKJ,CAChC,EACIE,GAAK,KAAKK,EAAI,CAAC,IAAIA,EAAI,CAAC,IAAIC,EAAI,CAAC,IAAIA,EAAI,CAAC,IAAIH,EAAG,CAAC,IAAIA,EAAG,CAAC,EAC5D,CACA,MAAO,GAAGH,CAAC,IACb,CACA/E,EAAAA,OAAOyE,EAAkB,kBAAkB,EAC3C,SAASlB,EAAWR,EAAGrC,EAAQ4E,EAAY3C,EAAQ,CACjD,GAAI,CAAC2C,EACH,OAEF,MAAMC,GAAW5C,EAAO,MAAQ,EAAIA,EAAO,aAAe,EAAI,EACxD6C,EAAU,EAAE7C,EAAO,OAAS,EAAIA,EAAO,WAAa,EAAI,EACxD8C,EAAa,GACnB/E,EAAO,QAAQ,CAACC,EAAO4D,IAAU,CAC/B,MAAMmB,EAAY3C,EAAE,OAAO,GAAG,EAAE,KAAK,YAAa,aAAawC,CAAO,KAAKC,EAAUjB,EAAQkB,CAAU,GAAG,EAC1GC,EAAU,OAAO,MAAM,EAAE,KAAK,QAAS,EAAE,EAAE,KAAK,SAAU,EAAE,EAAE,KAAK,QAAS,kBAAkBnB,CAAK,EAAE,EACrGmB,EAAU,OAAO,MAAM,EAAE,KAAK,IAAK,EAAE,EAAE,KAAK,IAAK,CAAC,EAAE,KAAK,QAAS,iBAAiB,EAAE,KAAK/E,EAAM,KAAK,CACvG,CAAC,CACH,CACAX,EAAAA,OAAOuD,EAAY,YAAY,EAC/B,IAAIoC,EAAW,CAAE,KAAAtD,CAAI,EAGjBuD,EAAiC5F,EAAAA,OAAO,CAAC6F,EAAgBC,IAAiB,CAC5E,IAAIC,EAAW,GACf,QAASlC,EAAI,EAAGA,EAAIgC,EAAe,kBAAmBhC,IAAK,CACzD,MAAMmC,EAAaH,EAAe,SAAShC,CAAC,EAAE,EAC9CkC,GAAY;AAAA,gBACAlC,CAAC;AAAA,YACLmC,CAAU;AAAA,WACXA,CAAU;AAAA,mBACFF,EAAa,YAAY;AAAA,aAC/BE,CAAU;AAAA,mBACJF,EAAa,gBAAgB;AAAA;AAAA,oBAE5BjC,CAAC;AAAA,WACVmC,CAAU;AAAA,mBACFF,EAAa,YAAY;AAAA,aAC/BE,CAAU;AAAA;AAAA,GAGrB,CACA,OAAOD,CACT,EAAG,gBAAgB,EACfE,EAAyCjG,EAAAA,OAAQkG,GAAU,CAC7D,MAAMC,EAAwBC,EAAAA,mBAAiB,EACzCC,EAAgBnG,EAAAA,UAAS,EACzB2F,EAAiB5F,EAAAA,cAAckG,EAAuBE,EAAc,cAAc,EAClFP,EAAe7F,EAAAA,cAAc4F,EAAe,MAAOK,CAAK,EAC9D,MAAO,CAAE,eAAAL,EAAgB,aAAAC,CAAY,CACvC,EAAG,wBAAwB,EACvBQ,EAAyBtG,EAAAA,OAAO,CAAC,CAAE,MAAAkG,CAAK,EAAK,CAAA,IAAO,CACtD,KAAM,CAAE,eAAAL,EAAgB,aAAAC,GAAiBG,EAAuBC,CAAK,EACrE,MAAO;AAAA;AAAA,eAEML,EAAe,QAAQ;AAAA,WAC3BA,EAAe,UAAU;AAAA;AAAA;AAAA;AAAA;AAAA,YAKxBC,EAAa,SAAS;AAAA,kBAChBA,EAAa,eAAe;AAAA;AAAA;AAAA;AAAA;AAAA,eAK/BA,EAAa,iBAAiB;AAAA,WAClCA,EAAa,SAAS;AAAA;AAAA;AAAA,UAGvBA,EAAa,cAAc;AAAA,kBACnBA,EAAa,gBAAgB;AAAA,YACnCA,EAAa,cAAc;AAAA,kBACrBA,EAAa,oBAAoB;AAAA;AAAA;AAAA;AAAA,eAIpCA,EAAa,cAAc;AAAA;AAAA;AAAA,GAGvCF,EAAeC,EAAgBC,CAAY,CAAC;AAAA,EAE/C,EAAG,QAAQ,EAGPS,EAAU,CACZ,OAAAtE,EACA,GAAAV,EACA,SAAAoE,EACA,OAAAW,CACF","x_google_ignoreList":[0]}