@render-harness/ui 0.1.1 → 0.1.2

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 (106) hide show
  1. package/dist/index.d.ts +6 -6
  2. package/dist/index.js +25 -14
  3. package/dist/index.js.map +1 -1
  4. package/dist/static/assets/{architectureDiagram-3BPJPVTR-D4589TUy.js → architectureDiagram-3BPJPVTR-DLNRxqTW.js} +2 -2
  5. package/dist/static/assets/{architectureDiagram-3BPJPVTR-D4589TUy.js.map → architectureDiagram-3BPJPVTR-DLNRxqTW.js.map} +1 -1
  6. package/dist/static/assets/{blockDiagram-GPEHLZMM-Cfjv0TRV.js → blockDiagram-GPEHLZMM-CCWTkWe6.js} +2 -2
  7. package/dist/static/assets/{blockDiagram-GPEHLZMM-Cfjv0TRV.js.map → blockDiagram-GPEHLZMM-CCWTkWe6.js.map} +1 -1
  8. package/dist/static/assets/{c4Diagram-AAUBKEIU-BoXkzmRI.js → c4Diagram-AAUBKEIU-qO0tZRXO.js} +2 -2
  9. package/dist/static/assets/{c4Diagram-AAUBKEIU-BoXkzmRI.js.map → c4Diagram-AAUBKEIU-qO0tZRXO.js.map} +1 -1
  10. package/dist/static/assets/channel-CAoVqDgM.js +2 -0
  11. package/dist/static/assets/{channel-DusP3IMn.js.map → channel-CAoVqDgM.js.map} +1 -1
  12. package/dist/static/assets/{chunk-2J33WTMH-Lf1eCW8w.js → chunk-2J33WTMH-DaEvWRZX.js} +2 -2
  13. package/dist/static/assets/{chunk-2J33WTMH-Lf1eCW8w.js.map → chunk-2J33WTMH-DaEvWRZX.js.map} +1 -1
  14. package/dist/static/assets/{chunk-3OPIFGDE-BYpEG0v0.js → chunk-3OPIFGDE-xcRWDOrg.js} +2 -2
  15. package/dist/static/assets/{chunk-3OPIFGDE-BYpEG0v0.js.map → chunk-3OPIFGDE-xcRWDOrg.js.map} +1 -1
  16. package/dist/static/assets/{chunk-5ZQYHXKU-CxDIhrF-.js → chunk-5ZQYHXKU-B_3UEJ_q.js} +2 -2
  17. package/dist/static/assets/{chunk-5ZQYHXKU-CxDIhrF-.js.map → chunk-5ZQYHXKU-B_3UEJ_q.js.map} +1 -1
  18. package/dist/static/assets/{chunk-727SXJPM-BEbDzxvV.js → chunk-727SXJPM-c1bbIj6N.js} +2 -2
  19. package/dist/static/assets/{chunk-727SXJPM-BEbDzxvV.js.map → chunk-727SXJPM-c1bbIj6N.js.map} +1 -1
  20. package/dist/static/assets/{chunk-AQP2D5EJ-DGTbQ17q.js → chunk-AQP2D5EJ-Wv0w6wvH.js} +2 -2
  21. package/dist/static/assets/{chunk-AQP2D5EJ-DGTbQ17q.js.map → chunk-AQP2D5EJ-Wv0w6wvH.js.map} +1 -1
  22. package/dist/static/assets/{chunk-CSCIHK7Q-Bo3glXo1.js → chunk-CSCIHK7Q-BBzr5U3o.js} +3 -3
  23. package/dist/static/assets/{chunk-CSCIHK7Q-Bo3glXo1.js.map → chunk-CSCIHK7Q-BBzr5U3o.js.map} +1 -1
  24. package/dist/static/assets/{chunk-KSCS5N6A-DVQpViur.js → chunk-KSCS5N6A-BZrceHGX.js} +2 -2
  25. package/dist/static/assets/{chunk-KSCS5N6A-DVQpViur.js.map → chunk-KSCS5N6A-BZrceHGX.js.map} +1 -1
  26. package/dist/static/assets/{chunk-L5ZTLDWV-BwOlshrN.js → chunk-L5ZTLDWV-BAcjEn3C.js} +2 -2
  27. package/dist/static/assets/{chunk-L5ZTLDWV-BwOlshrN.js.map → chunk-L5ZTLDWV-BAcjEn3C.js.map} +1 -1
  28. package/dist/static/assets/{chunk-ND2GUHAM-a2zgmbwP.js → chunk-ND2GUHAM-DHtjIa8_.js} +2 -2
  29. package/dist/static/assets/{chunk-ND2GUHAM-a2zgmbwP.js.map → chunk-ND2GUHAM-DHtjIa8_.js.map} +1 -1
  30. package/dist/static/assets/{chunk-NZK2D7GU-BbPAL6yn.js → chunk-NZK2D7GU-DuwDtSGJ.js} +2 -2
  31. package/dist/static/assets/{chunk-NZK2D7GU-BbPAL6yn.js.map → chunk-NZK2D7GU-DuwDtSGJ.js.map} +1 -1
  32. package/dist/static/assets/{chunk-O5CBEL6O-CM0slmy1.js → chunk-O5CBEL6O-KRO56hHQ.js} +2 -2
  33. package/dist/static/assets/{chunk-O5CBEL6O-CM0slmy1.js.map → chunk-O5CBEL6O-KRO56hHQ.js.map} +1 -1
  34. package/dist/static/assets/classDiagram-4FO5ZUOK-oexPF7ww.js +2 -0
  35. package/dist/static/assets/{classDiagram-4FO5ZUOK-SuK_oLpa.js.map → classDiagram-4FO5ZUOK-oexPF7ww.js.map} +1 -1
  36. package/dist/static/assets/classDiagram-v2-Q7XG4LA2-Dc4jeSLj.js +2 -0
  37. package/dist/static/assets/{classDiagram-v2-Q7XG4LA2-DMlc0uaN.js.map → classDiagram-v2-Q7XG4LA2-Dc4jeSLj.js.map} +1 -1
  38. package/dist/static/assets/{dagre-BM42HDAG-4I-9kC-8.js → dagre-BM42HDAG-au4dCVgC.js} +2 -2
  39. package/dist/static/assets/{dagre-BM42HDAG-4I-9kC-8.js.map → dagre-BM42HDAG-au4dCVgC.js.map} +1 -1
  40. package/dist/static/assets/{diagram-2AECGRRQ-pAKf5nK6.js → diagram-2AECGRRQ-rJMnDhBW.js} +2 -2
  41. package/dist/static/assets/{diagram-2AECGRRQ-pAKf5nK6.js.map → diagram-2AECGRRQ-rJMnDhBW.js.map} +1 -1
  42. package/dist/static/assets/{diagram-5GNKFQAL-CzKwZhm6.js → diagram-5GNKFQAL-diIxjA-v.js} +2 -2
  43. package/dist/static/assets/{diagram-5GNKFQAL-CzKwZhm6.js.map → diagram-5GNKFQAL-diIxjA-v.js.map} +1 -1
  44. package/dist/static/assets/{diagram-KO2AKTUF-BZNjYRzg.js → diagram-KO2AKTUF-D9IYocVR.js} +2 -2
  45. package/dist/static/assets/{diagram-KO2AKTUF-BZNjYRzg.js.map → diagram-KO2AKTUF-D9IYocVR.js.map} +1 -1
  46. package/dist/static/assets/{diagram-LMA3HP47-vnkpPjMC.js → diagram-LMA3HP47-BtdvpqaH.js} +2 -2
  47. package/dist/static/assets/{diagram-LMA3HP47-vnkpPjMC.js.map → diagram-LMA3HP47-BtdvpqaH.js.map} +1 -1
  48. package/dist/static/assets/{diagram-OG6HWLK6-CkBTEmTA.js → diagram-OG6HWLK6-CaRkxDoj.js} +2 -2
  49. package/dist/static/assets/{diagram-OG6HWLK6-CkBTEmTA.js.map → diagram-OG6HWLK6-CaRkxDoj.js.map} +1 -1
  50. package/dist/static/assets/{erDiagram-TEJ5UH35-DGrhtXAQ.js → erDiagram-TEJ5UH35-CgifrqeZ.js} +2 -2
  51. package/dist/static/assets/{erDiagram-TEJ5UH35-DGrhtXAQ.js.map → erDiagram-TEJ5UH35-CgifrqeZ.js.map} +1 -1
  52. package/dist/static/assets/{flowDiagram-I6XJVG4X-Cp2YiaJS.js → flowDiagram-I6XJVG4X-DaguIeM_.js} +2 -2
  53. package/dist/static/assets/{flowDiagram-I6XJVG4X-Cp2YiaJS.js.map → flowDiagram-I6XJVG4X-DaguIeM_.js.map} +1 -1
  54. package/dist/static/assets/{ganttDiagram-6RSMTGT7-C-jGZVXC.js → ganttDiagram-6RSMTGT7-DIFubQTa.js} +2 -2
  55. package/dist/static/assets/{ganttDiagram-6RSMTGT7-C-jGZVXC.js.map → ganttDiagram-6RSMTGT7-DIFubQTa.js.map} +1 -1
  56. package/dist/static/assets/{gitGraphDiagram-PVQCEYII-DDwOyc6i.js → gitGraphDiagram-PVQCEYII-Ht-SDjxh.js} +2 -2
  57. package/dist/static/assets/{gitGraphDiagram-PVQCEYII-DDwOyc6i.js.map → gitGraphDiagram-PVQCEYII-Ht-SDjxh.js.map} +1 -1
  58. package/dist/static/assets/index-D5tmHkO_.js +228 -0
  59. package/dist/static/assets/index-D5tmHkO_.js.map +1 -0
  60. package/dist/static/assets/index-luXiT-gK.css +1 -0
  61. package/dist/static/assets/{infoDiagram-5YYISTIA-B_rDp_NJ.js → infoDiagram-5YYISTIA-CwLGA7Zu.js} +2 -2
  62. package/dist/static/assets/{infoDiagram-5YYISTIA-B_rDp_NJ.js.map → infoDiagram-5YYISTIA-CwLGA7Zu.js.map} +1 -1
  63. package/dist/static/assets/{ishikawaDiagram-YF4QCWOH-ggQN-_CZ.js → ishikawaDiagram-YF4QCWOH-CaZCrUUR.js} +2 -2
  64. package/dist/static/assets/{ishikawaDiagram-YF4QCWOH-ggQN-_CZ.js.map → ishikawaDiagram-YF4QCWOH-CaZCrUUR.js.map} +1 -1
  65. package/dist/static/assets/{journeyDiagram-JHISSGLW-BjEC1jFt.js → journeyDiagram-JHISSGLW-C-j_GoJi.js} +2 -2
  66. package/dist/static/assets/{journeyDiagram-JHISSGLW-BjEC1jFt.js.map → journeyDiagram-JHISSGLW-C-j_GoJi.js.map} +1 -1
  67. package/dist/static/assets/{kanban-definition-UN3LZRKU-BVkPEFcm.js → kanban-definition-UN3LZRKU-DlYha85J.js} +2 -2
  68. package/dist/static/assets/{kanban-definition-UN3LZRKU-BVkPEFcm.js.map → kanban-definition-UN3LZRKU-DlYha85J.js.map} +1 -1
  69. package/dist/static/assets/{line-L2DeHwdZ.js → line-GCwXS1Fi.js} +2 -2
  70. package/dist/static/assets/{line-L2DeHwdZ.js.map → line-GCwXS1Fi.js.map} +1 -1
  71. package/dist/static/assets/mermaid-parser.core-BO_-QleW.js +5 -0
  72. package/dist/static/assets/{mermaid-parser.core-CZyyUBUW.js.map → mermaid-parser.core-BO_-QleW.js.map} +1 -1
  73. package/dist/static/assets/{mindmap-definition-RKZ34NQL-uf3ACEiM.js → mindmap-definition-RKZ34NQL-CPJIWJdQ.js} +2 -2
  74. package/dist/static/assets/{mindmap-definition-RKZ34NQL-uf3ACEiM.js.map → mindmap-definition-RKZ34NQL-CPJIWJdQ.js.map} +1 -1
  75. package/dist/static/assets/{pieDiagram-4H26LBE5-Dm2S6Ggt.js → pieDiagram-4H26LBE5-DTVmF_CH.js} +2 -2
  76. package/dist/static/assets/{pieDiagram-4H26LBE5-Dm2S6Ggt.js.map → pieDiagram-4H26LBE5-DTVmF_CH.js.map} +1 -1
  77. package/dist/static/assets/{quadrantDiagram-W4KKPZXB-CgiO6Q9Y.js → quadrantDiagram-W4KKPZXB-Bho6zy_y.js} +2 -2
  78. package/dist/static/assets/{quadrantDiagram-W4KKPZXB-CgiO6Q9Y.js.map → quadrantDiagram-W4KKPZXB-Bho6zy_y.js.map} +1 -1
  79. package/dist/static/assets/{requirementDiagram-4Y6WPE33-BFL5yKh2.js → requirementDiagram-4Y6WPE33-CLyoVwlh.js} +2 -2
  80. package/dist/static/assets/{requirementDiagram-4Y6WPE33-BFL5yKh2.js.map → requirementDiagram-4Y6WPE33-CLyoVwlh.js.map} +1 -1
  81. package/dist/static/assets/{sankeyDiagram-5OEKKPKP-DNSdTx8o.js → sankeyDiagram-5OEKKPKP-V2yvk-0Z.js} +2 -2
  82. package/dist/static/assets/{sankeyDiagram-5OEKKPKP-DNSdTx8o.js.map → sankeyDiagram-5OEKKPKP-V2yvk-0Z.js.map} +1 -1
  83. package/dist/static/assets/{sequenceDiagram-3UESZ5HK-BMNloRY9.js → sequenceDiagram-3UESZ5HK-Dp03aXVk.js} +2 -2
  84. package/dist/static/assets/{sequenceDiagram-3UESZ5HK-BMNloRY9.js.map → sequenceDiagram-3UESZ5HK-Dp03aXVk.js.map} +1 -1
  85. package/dist/static/assets/{stateDiagram-AJRCARHV-B1fkBSkt.js → stateDiagram-AJRCARHV-BEJW-_HK.js} +2 -2
  86. package/dist/static/assets/{stateDiagram-AJRCARHV-B1fkBSkt.js.map → stateDiagram-AJRCARHV-BEJW-_HK.js.map} +1 -1
  87. package/dist/static/assets/stateDiagram-v2-BHNVJYJU-Bo19-vKE.js +2 -0
  88. package/dist/static/assets/{stateDiagram-v2-BHNVJYJU-Fm1RY0qD.js.map → stateDiagram-v2-BHNVJYJU-Bo19-vKE.js.map} +1 -1
  89. package/dist/static/assets/{timeline-definition-PNZ67QCA-CdNdPzQU.js → timeline-definition-PNZ67QCA-C4KTq0mQ.js} +2 -2
  90. package/dist/static/assets/{timeline-definition-PNZ67QCA-CdNdPzQU.js.map → timeline-definition-PNZ67QCA-C4KTq0mQ.js.map} +1 -1
  91. package/dist/static/assets/{vennDiagram-CIIHVFJN-Cfr9Kji9.js → vennDiagram-CIIHVFJN-1jmBZPSZ.js} +2 -2
  92. package/dist/static/assets/{vennDiagram-CIIHVFJN-Cfr9Kji9.js.map → vennDiagram-CIIHVFJN-1jmBZPSZ.js.map} +1 -1
  93. package/dist/static/assets/{wardleyDiagram-YWT4CUSO-BU30t5hg.js → wardleyDiagram-YWT4CUSO-A8XYzYTW.js} +2 -2
  94. package/dist/static/assets/{wardleyDiagram-YWT4CUSO-BU30t5hg.js.map → wardleyDiagram-YWT4CUSO-A8XYzYTW.js.map} +1 -1
  95. package/dist/static/assets/{xychartDiagram-2RQKCTM6-CbAQZMXv.js → xychartDiagram-2RQKCTM6-CuyUQvFt.js} +2 -2
  96. package/dist/static/assets/{xychartDiagram-2RQKCTM6-CbAQZMXv.js.map → xychartDiagram-2RQKCTM6-CuyUQvFt.js.map} +1 -1
  97. package/dist/static/index.html +16 -16
  98. package/package.json +14 -14
  99. package/dist/static/assets/channel-DusP3IMn.js +0 -2
  100. package/dist/static/assets/classDiagram-4FO5ZUOK-SuK_oLpa.js +0 -2
  101. package/dist/static/assets/classDiagram-v2-Q7XG4LA2-DMlc0uaN.js +0 -2
  102. package/dist/static/assets/index-BfPuPCFp.js +0 -228
  103. package/dist/static/assets/index-BfPuPCFp.js.map +0 -1
  104. package/dist/static/assets/index-CyEgx13R.css +0 -1
  105. package/dist/static/assets/mermaid-parser.core-CZyyUBUW.js +0 -5
  106. package/dist/static/assets/stateDiagram-v2-BHNVJYJU-Fm1RY0qD.js +0 -2
@@ -1 +1 @@
1
- {"version":3,"file":"diagram-OG6HWLK6-CkBTEmTA.js","names":["node_count","node_each","node_eachAfter","node_eachBefore","node_find","node_sum","node_sort","node_path","node_ancestors","node_descendants","node_leaves","node_links","node_iterator","squarify","roundNode","constant","parseFunc","scaleOrdinal","treemap","select","getThemeVariables"],"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.15.0/node_modules/mermaid/dist/chunks/mermaid.core/diagram-OG6HWLK6.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-WU5MYG2G.mjs\";\nimport {\n setupViewPortForSVG\n} from \"./chunk-2J33WTMH.mjs\";\nimport {\n isLabelStyle,\n styles2String\n} from \"./chunk-NZK2D7GU.mjs\";\nimport {\n populateCommonDb\n} from \"./chunk-4BX2VUAB.mjs\";\nimport {\n cleanAndMerge\n} from \"./chunk-5ZQYHXKU.mjs\";\nimport {\n clear,\n configureSvgSize,\n defaultConfig_default,\n getAccDescription,\n getAccTitle,\n getConfig,\n getDiagramTitle,\n getThemeVariables,\n setAccDescription,\n setAccTitle,\n setDiagramTitle\n} from \"./chunk-CSCIHK7Q.mjs\";\nimport {\n __name,\n log\n} from \"./chunk-AGHRB4JF.mjs\";\n\n// src/diagrams/treemap/db.ts\nvar TreeMapDB = class {\n constructor() {\n this.nodes = [];\n this.levels = /* @__PURE__ */ new Map();\n this.outerNodes = [];\n this.classes = /* @__PURE__ */ new Map();\n this.setAccTitle = setAccTitle;\n this.getAccTitle = getAccTitle;\n this.setDiagramTitle = setDiagramTitle;\n this.getDiagramTitle = getDiagramTitle;\n this.getAccDescription = getAccDescription;\n this.setAccDescription = setAccDescription;\n }\n static {\n __name(this, \"TreeMapDB\");\n }\n getNodes() {\n return this.nodes;\n }\n getConfig() {\n const defaultConfig = defaultConfig_default;\n const userConfig = getConfig();\n return cleanAndMerge({\n ...defaultConfig.treemap,\n ...userConfig.treemap ?? {}\n });\n }\n addNode(node, level) {\n this.nodes.push(node);\n this.levels.set(node, level);\n if (level === 0) {\n this.outerNodes.push(node);\n this.root ??= node;\n }\n }\n getRoot() {\n return { name: \"\", children: this.outerNodes };\n }\n addClass(id, _style) {\n const styleClass = this.classes.get(id) ?? { id, styles: [], textStyles: [] };\n const styles = _style.replace(/\\\\,/g, \"\\xA7\\xA7\\xA7\").replace(/,/g, \";\").replace(/§§§/g, \",\").split(\";\");\n if (styles) {\n styles.forEach((s) => {\n if (isLabelStyle(s)) {\n if (styleClass?.textStyles) {\n styleClass.textStyles.push(s);\n } else {\n styleClass.textStyles = [s];\n }\n }\n if (styleClass?.styles) {\n styleClass.styles.push(s);\n } else {\n styleClass.styles = [s];\n }\n });\n }\n this.classes.set(id, styleClass);\n }\n getClasses() {\n return this.classes;\n }\n getStylesForClass(classSelector) {\n return this.classes.get(classSelector)?.styles ?? [];\n }\n clear() {\n clear();\n this.nodes = [];\n this.levels = /* @__PURE__ */ new Map();\n this.outerNodes = [];\n this.classes = /* @__PURE__ */ new Map();\n this.root = void 0;\n }\n};\n\n// src/diagrams/treemap/parser.ts\nimport { parse } from \"@mermaid-js/parser\";\n\n// src/diagrams/treemap/utils.ts\nfunction buildHierarchy(items) {\n if (!items.length) {\n return [];\n }\n const root = [];\n const stack = [];\n items.forEach((item) => {\n const node = {\n name: item.name,\n children: item.type === \"Leaf\" ? void 0 : []\n };\n node.classSelector = item?.classSelector;\n if (item?.cssCompiledStyles) {\n node.cssCompiledStyles = item.cssCompiledStyles;\n }\n if (item.type === \"Leaf\" && item.value !== void 0) {\n node.value = item.value;\n }\n while (stack.length > 0 && stack[stack.length - 1].level >= item.level) {\n stack.pop();\n }\n if (stack.length === 0) {\n root.push(node);\n } else {\n const parent = stack[stack.length - 1].node;\n if (parent.children) {\n parent.children.push(node);\n } else {\n parent.children = [node];\n }\n }\n if (item.type !== \"Leaf\") {\n stack.push({ node, level: item.level });\n }\n });\n return root;\n}\n__name(buildHierarchy, \"buildHierarchy\");\n\n// src/diagrams/treemap/parser.ts\nvar populate = /* @__PURE__ */ __name((ast, db) => {\n populateCommonDb(ast, db);\n const items = [];\n for (const row of ast.TreemapRows ?? []) {\n if (row.$type === \"ClassDefStatement\") {\n db.addClass(row.className ?? \"\", row.styleText ?? \"\");\n }\n }\n for (const row of ast.TreemapRows ?? []) {\n const item = row.item;\n if (!item) {\n continue;\n }\n const level = row.indent ? parseInt(row.indent) : 0;\n const name = getItemName(item);\n const styles = item.classSelector ? db.getStylesForClass(item.classSelector) : [];\n const cssCompiledStyles = styles.length > 0 ? styles : void 0;\n const itemData = {\n level,\n name,\n type: item.$type,\n value: item.value,\n classSelector: item.classSelector,\n cssCompiledStyles\n };\n items.push(itemData);\n }\n const hierarchyNodes = buildHierarchy(items);\n const addNodesRecursively = /* @__PURE__ */ __name((nodes, level) => {\n for (const node of nodes) {\n db.addNode(node, level);\n if (node.children && node.children.length > 0) {\n addNodesRecursively(node.children, level + 1);\n }\n }\n }, \"addNodesRecursively\");\n addNodesRecursively(hierarchyNodes, 0);\n}, \"populate\");\nvar getItemName = /* @__PURE__ */ __name((item) => {\n return item.name ? String(item.name) : \"\";\n}, \"getItemName\");\nvar parser = {\n // @ts-expect-error - TreeMapDB is not assignable to DiagramDB\n parser: { yy: void 0 },\n parse: /* @__PURE__ */ __name(async (text) => {\n try {\n const parseFunc = parse;\n const ast = await parseFunc(\"treemap\", text);\n log.debug(\"Treemap AST:\", ast);\n const db = parser.parser?.yy;\n if (!(db instanceof TreeMapDB)) {\n throw new Error(\n \"parser.parser?.yy was not a TreemapDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.\"\n );\n }\n populate(ast, db);\n } catch (error) {\n log.error(\"Error parsing treemap:\", error);\n throw error;\n }\n }, \"parse\")\n};\n\n// src/diagrams/treemap/renderer.ts\nimport { scaleOrdinal, treemap, hierarchy, format, select } from \"d3\";\nvar DEFAULT_INNER_PADDING = 10;\nvar SECTION_INNER_PADDING = 10;\nvar SECTION_HEADER_HEIGHT = 25;\nvar draw = /* @__PURE__ */ __name((_text, id, _version, diagram2) => {\n const treemapDb = diagram2.db;\n const config = treemapDb.getConfig();\n const treemapInnerPadding = config.padding ?? DEFAULT_INNER_PADDING;\n const title = treemapDb.getDiagramTitle();\n const root = treemapDb.getRoot();\n const { themeVariables } = getConfig();\n if (!root) {\n return;\n }\n const titleHeight = title ? 30 : 0;\n const svg = selectSvgElement(id);\n const width = config.nodeWidth ? config.nodeWidth * SECTION_INNER_PADDING : 960;\n const height = config.nodeHeight ? config.nodeHeight * SECTION_INNER_PADDING : 500;\n const svgWidth = width;\n const svgHeight = height + titleHeight;\n svg.attr(\"viewBox\", `0 0 ${svgWidth} ${svgHeight}`);\n configureSvgSize(svg, svgHeight, svgWidth, config.useMaxWidth);\n let valueFormat;\n try {\n const formatStr = config.valueFormat || \",\";\n if (formatStr === \"$0,0\") {\n valueFormat = /* @__PURE__ */ __name((value) => \"$\" + format(\",\")(value), \"valueFormat\");\n } else if (formatStr.startsWith(\"$\") && formatStr.includes(\",\")) {\n const precision = /\\.\\d+/.exec(formatStr);\n const precisionStr = precision ? precision[0] : \"\";\n valueFormat = /* @__PURE__ */ __name((value) => \"$\" + format(\",\" + precisionStr)(value), \"valueFormat\");\n } else if (formatStr.startsWith(\"$\")) {\n const restOfFormat = formatStr.substring(1);\n valueFormat = /* @__PURE__ */ __name((value) => \"$\" + format(restOfFormat || \"\")(value), \"valueFormat\");\n } else {\n valueFormat = format(formatStr);\n }\n } catch (error) {\n log.error(\"Error creating format function:\", error);\n valueFormat = format(\",\");\n }\n const colorScale = scaleOrdinal().range([\n \"transparent\",\n themeVariables.cScale0,\n themeVariables.cScale1,\n themeVariables.cScale2,\n themeVariables.cScale3,\n themeVariables.cScale4,\n themeVariables.cScale5,\n themeVariables.cScale6,\n themeVariables.cScale7,\n themeVariables.cScale8,\n themeVariables.cScale9,\n themeVariables.cScale10,\n themeVariables.cScale11\n ]);\n const colorScalePeer = scaleOrdinal().range([\n \"transparent\",\n themeVariables.cScalePeer0,\n themeVariables.cScalePeer1,\n themeVariables.cScalePeer2,\n themeVariables.cScalePeer3,\n themeVariables.cScalePeer4,\n themeVariables.cScalePeer5,\n themeVariables.cScalePeer6,\n themeVariables.cScalePeer7,\n themeVariables.cScalePeer8,\n themeVariables.cScalePeer9,\n themeVariables.cScalePeer10,\n themeVariables.cScalePeer11\n ]);\n const colorScaleLabel = scaleOrdinal().range([\n themeVariables.cScaleLabel0,\n themeVariables.cScaleLabel1,\n themeVariables.cScaleLabel2,\n themeVariables.cScaleLabel3,\n themeVariables.cScaleLabel4,\n themeVariables.cScaleLabel5,\n themeVariables.cScaleLabel6,\n themeVariables.cScaleLabel7,\n themeVariables.cScaleLabel8,\n themeVariables.cScaleLabel9,\n themeVariables.cScaleLabel10,\n themeVariables.cScaleLabel11\n ]);\n if (title) {\n svg.append(\"text\").attr(\"x\", svgWidth / 2).attr(\"y\", titleHeight / 2).attr(\"class\", \"treemapTitle\").attr(\"text-anchor\", \"middle\").attr(\"dominant-baseline\", \"middle\").text(title);\n }\n const g = svg.append(\"g\").attr(\"transform\", `translate(0, ${titleHeight})`).attr(\"class\", \"treemapContainer\");\n const hierarchyRoot = hierarchy(root).sum((d) => d.value ?? 0).sort((a, b) => (b.value ?? 0) - (a.value ?? 0));\n const treemapLayout = treemap().size([width, height]).paddingTop(\n (d) => d.children && d.children.length > 0 ? SECTION_HEADER_HEIGHT + SECTION_INNER_PADDING : 0\n ).paddingInner(treemapInnerPadding).paddingLeft((d) => d.children && d.children.length > 0 ? SECTION_INNER_PADDING : 0).paddingRight((d) => d.children && d.children.length > 0 ? SECTION_INNER_PADDING : 0).paddingBottom((d) => d.children && d.children.length > 0 ? SECTION_INNER_PADDING : 0).round(true);\n const treemapData = treemapLayout(hierarchyRoot);\n const branchNodes = treemapData.descendants().filter((d) => d.children && d.children.length > 0);\n const sections = g.selectAll(\".treemapSection\").data(branchNodes).enter().append(\"g\").attr(\"class\", \"treemapSection\").attr(\"transform\", (d) => `translate(${d.x0},${d.y0})`);\n sections.append(\"rect\").attr(\"width\", (d) => d.x1 - d.x0).attr(\"height\", SECTION_HEADER_HEIGHT).attr(\"class\", \"treemapSectionHeader\").attr(\"fill\", \"none\").attr(\"fill-opacity\", 0.6).attr(\"stroke-width\", 0.6).attr(\"style\", (d) => {\n if (d.depth === 0) {\n return \"display: none;\";\n }\n return \"\";\n });\n sections.append(\"clipPath\").attr(\"id\", (_d, i) => `clip-section-${id}-${i}`).append(\"rect\").attr(\"width\", (d) => Math.max(0, d.x1 - d.x0 - 12)).attr(\"height\", SECTION_HEADER_HEIGHT);\n sections.append(\"rect\").attr(\"width\", (d) => d.x1 - d.x0).attr(\"height\", (d) => d.y1 - d.y0).attr(\"class\", (_d, i) => {\n return `treemapSection section${i}`;\n }).attr(\"fill\", (d) => colorScale(d.data.name)).attr(\"fill-opacity\", 0.6).attr(\"stroke\", (d) => colorScalePeer(d.data.name)).attr(\"stroke-width\", 2).attr(\"stroke-opacity\", 0.4).attr(\"style\", (d) => {\n if (d.depth === 0) {\n return \"display: none;\";\n }\n const styles = styles2String({ cssCompiledStyles: d.data.cssCompiledStyles });\n return styles.nodeStyles + \";\" + styles.borderStyles.join(\";\");\n });\n sections.append(\"text\").attr(\"class\", \"treemapSectionLabel\").attr(\"x\", 6).attr(\"y\", SECTION_HEADER_HEIGHT / 2).attr(\"dominant-baseline\", \"middle\").text((d) => d.depth === 0 ? \"\" : d.data.name).attr(\"font-weight\", \"bold\").attr(\"style\", (d) => {\n if (d.depth === 0) {\n return \"display: none;\";\n }\n const labelStyles = \"dominant-baseline: middle; font-size: 12px; fill:\" + colorScaleLabel(d.data.name) + \"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;\";\n const styles = styles2String({ cssCompiledStyles: d.data.cssCompiledStyles });\n return labelStyles + styles.labelStyles.replace(\"color:\", \"fill:\");\n }).each(function(d) {\n if (d.depth === 0) {\n return;\n }\n const self = select(this);\n const originalText = d.data.name;\n self.text(originalText);\n const totalHeaderWidth = d.x1 - d.x0;\n const labelXPosition = 6;\n let spaceForTextContent;\n if (config.showValues !== false && d.value) {\n const valueEndsAtXRelative = totalHeaderWidth - 10;\n const estimatedValueTextActualWidth = 30;\n const gapBetweenLabelAndValue = 10;\n const labelMustEndBeforeX = valueEndsAtXRelative - estimatedValueTextActualWidth - gapBetweenLabelAndValue;\n spaceForTextContent = labelMustEndBeforeX - labelXPosition;\n } else {\n const labelOwnRightPadding = 6;\n spaceForTextContent = totalHeaderWidth - labelXPosition - labelOwnRightPadding;\n }\n const minimumWidthToDisplay = 15;\n const actualAvailableWidth = Math.max(minimumWidthToDisplay, spaceForTextContent);\n const textNode = self.node();\n const currentTextContentLength = textNode.getComputedTextLength();\n if (currentTextContentLength > actualAvailableWidth) {\n const ellipsis = \"...\";\n let currentTruncatedText = originalText;\n while (currentTruncatedText.length > 0) {\n currentTruncatedText = originalText.substring(0, currentTruncatedText.length - 1);\n if (currentTruncatedText.length === 0) {\n self.text(ellipsis);\n if (textNode.getComputedTextLength() > actualAvailableWidth) {\n self.text(\"\");\n }\n break;\n }\n self.text(currentTruncatedText + ellipsis);\n if (textNode.getComputedTextLength() <= actualAvailableWidth) {\n break;\n }\n }\n }\n });\n if (config.showValues !== false) {\n sections.append(\"text\").attr(\"class\", \"treemapSectionValue\").attr(\"x\", (d) => d.x1 - d.x0 - 10).attr(\"y\", SECTION_HEADER_HEIGHT / 2).attr(\"text-anchor\", \"end\").attr(\"dominant-baseline\", \"middle\").text((d) => d.value ? valueFormat(d.value) : \"\").attr(\"font-style\", \"italic\").attr(\"style\", (d) => {\n if (d.depth === 0) {\n return \"display: none;\";\n }\n const labelStyles = \"text-anchor: end; dominant-baseline: middle; font-size: 10px; fill:\" + colorScaleLabel(d.data.name) + \"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;\";\n const styles = styles2String({ cssCompiledStyles: d.data.cssCompiledStyles });\n return labelStyles + styles.labelStyles.replace(\"color:\", \"fill:\");\n });\n }\n const leafNodes = treemapData.leaves();\n const cell = g.selectAll(\".treemapLeafGroup\").data(leafNodes).enter().append(\"g\").attr(\"class\", (d, i) => {\n return `treemapNode treemapLeafGroup leaf${i}${d.data.classSelector ? ` ${d.data.classSelector}` : \"\"}x`;\n }).attr(\"transform\", (d) => `translate(${d.x0},${d.y0})`);\n cell.append(\"rect\").attr(\"width\", (d) => d.x1 - d.x0).attr(\"height\", (d) => d.y1 - d.y0).attr(\"class\", \"treemapLeaf\").attr(\"fill\", (d) => {\n return d.parent ? colorScale(d.parent.data.name) : colorScale(d.data.name);\n }).attr(\"style\", (d) => {\n const styles = styles2String({ cssCompiledStyles: d.data.cssCompiledStyles });\n return styles.nodeStyles;\n }).attr(\"fill-opacity\", 0.3).attr(\"stroke\", (d) => {\n return d.parent ? colorScale(d.parent.data.name) : colorScale(d.data.name);\n }).attr(\"stroke-width\", 3);\n cell.append(\"clipPath\").attr(\"id\", (_d, i) => `clip-${id}-${i}`).append(\"rect\").attr(\"width\", (d) => Math.max(0, d.x1 - d.x0 - 4)).attr(\"height\", (d) => Math.max(0, d.y1 - d.y0 - 4));\n const leafLabels = cell.append(\"text\").attr(\"class\", \"treemapLabel\").attr(\"x\", (d) => (d.x1 - d.x0) / 2).attr(\"y\", (d) => (d.y1 - d.y0) / 2).attr(\"style\", (d) => {\n const labelStyles = \"text-anchor: middle; dominant-baseline: middle; font-size: 38px;fill:\" + colorScaleLabel(d.data.name) + \";\";\n const styles = styles2String({ cssCompiledStyles: d.data.cssCompiledStyles });\n return labelStyles + styles.labelStyles.replace(\"color:\", \"fill:\");\n }).attr(\"clip-path\", (_d, i) => `url(#clip-${id}-${i})`).text((d) => d.data.name);\n leafLabels.each(function(d) {\n const self = select(this);\n const nodeWidth = d.x1 - d.x0;\n const nodeHeight = d.y1 - d.y0;\n const textNode = self.node();\n const padding = 4;\n const availableWidth = nodeWidth - 2 * padding;\n const availableHeight = nodeHeight - 2 * padding;\n if (availableWidth < 10 || availableHeight < 10) {\n self.style(\"display\", \"none\");\n return;\n }\n let currentLabelFontSize = parseInt(self.style(\"font-size\"), 10);\n const minLabelFontSize = 8;\n const originalValueRelFontSize = 28;\n const valueScaleFactor = 0.6;\n const minValueFontSize = 6;\n const spacingBetweenLabelAndValue = 2;\n while (textNode.getComputedTextLength() > availableWidth && currentLabelFontSize > minLabelFontSize) {\n currentLabelFontSize--;\n self.style(\"font-size\", `${currentLabelFontSize}px`);\n }\n let prospectiveValueFontSize = Math.max(\n minValueFontSize,\n Math.min(originalValueRelFontSize, Math.round(currentLabelFontSize * valueScaleFactor))\n );\n let combinedHeight = currentLabelFontSize + spacingBetweenLabelAndValue + prospectiveValueFontSize;\n while (combinedHeight > availableHeight && currentLabelFontSize > minLabelFontSize) {\n currentLabelFontSize--;\n prospectiveValueFontSize = Math.max(\n minValueFontSize,\n Math.min(originalValueRelFontSize, Math.round(currentLabelFontSize * valueScaleFactor))\n );\n if (prospectiveValueFontSize < minValueFontSize && currentLabelFontSize === minLabelFontSize) {\n break;\n }\n self.style(\"font-size\", `${currentLabelFontSize}px`);\n combinedHeight = currentLabelFontSize + spacingBetweenLabelAndValue + prospectiveValueFontSize;\n if (prospectiveValueFontSize <= minValueFontSize && combinedHeight > availableHeight) {\n }\n }\n self.style(\"font-size\", `${currentLabelFontSize}px`);\n if (textNode.getComputedTextLength() > availableWidth || currentLabelFontSize < minLabelFontSize || availableHeight < currentLabelFontSize) {\n self.style(\"display\", \"none\");\n }\n });\n if (config.showValues !== false) {\n const leafValues = cell.append(\"text\").attr(\"class\", \"treemapValue\").attr(\"x\", (d) => (d.x1 - d.x0) / 2).attr(\"y\", function(d) {\n return (d.y1 - d.y0) / 2;\n }).attr(\"style\", (d) => {\n const labelStyles = \"text-anchor: middle; dominant-baseline: hanging; font-size: 28px;fill:\" + colorScaleLabel(d.data.name) + \";\";\n const styles = styles2String({ cssCompiledStyles: d.data.cssCompiledStyles });\n return labelStyles + styles.labelStyles.replace(\"color:\", \"fill:\");\n }).attr(\"clip-path\", (_d, i) => `url(#clip-${id}-${i})`).text((d) => d.value ? valueFormat(d.value) : \"\");\n leafValues.each(function(d) {\n const valueTextElement = select(this);\n const parentCellNode = this.parentNode;\n if (!parentCellNode) {\n valueTextElement.style(\"display\", \"none\");\n return;\n }\n const labelElement = select(parentCellNode).select(\".treemapLabel\");\n if (labelElement.empty() || labelElement.style(\"display\") === \"none\") {\n valueTextElement.style(\"display\", \"none\");\n return;\n }\n const finalLabelFontSize = parseFloat(labelElement.style(\"font-size\"));\n const originalValueFontSize = 28;\n const valueScaleFactor = 0.6;\n const minValueFontSize = 6;\n const spacingBetweenLabelAndValue = 2;\n const actualValueFontSize = Math.max(\n minValueFontSize,\n Math.min(originalValueFontSize, Math.round(finalLabelFontSize * valueScaleFactor))\n );\n valueTextElement.style(\"font-size\", `${actualValueFontSize}px`);\n const labelCenterY = (d.y1 - d.y0) / 2;\n const valueTopActualY = labelCenterY + finalLabelFontSize / 2 + spacingBetweenLabelAndValue;\n valueTextElement.attr(\"y\", valueTopActualY);\n const nodeWidth = d.x1 - d.x0;\n const nodeTotalHeight = d.y1 - d.y0;\n const cellBottomPadding = 4;\n const maxValueBottomY = nodeTotalHeight - cellBottomPadding;\n const availableWidthForValue = nodeWidth - 2 * 4;\n if (valueTextElement.node().getComputedTextLength() > availableWidthForValue || valueTopActualY + actualValueFontSize > maxValueBottomY || actualValueFontSize < minValueFontSize) {\n valueTextElement.style(\"display\", \"none\");\n } else {\n valueTextElement.style(\"display\", null);\n }\n });\n }\n const diagramPadding = config.diagramPadding ?? 8;\n setupViewPortForSVG(svg, diagramPadding, \"flowchart\", config?.useMaxWidth || false);\n}, \"draw\");\nvar getClasses = /* @__PURE__ */ __name(function(_text, diagramObj) {\n return diagramObj.db.getClasses();\n}, \"getClasses\");\nvar renderer = { draw, getClasses };\n\n// src/diagrams/treemap/styles.ts\nvar defaultTreemapStyleOptions = {\n sectionStrokeColor: \"black\",\n sectionStrokeWidth: \"1\",\n sectionFillColor: \"#efefef\",\n leafStrokeColor: \"black\",\n leafStrokeWidth: \"1\",\n leafFillColor: \"#efefef\",\n labelFontSize: \"12px\",\n valueFontSize: \"10px\",\n titleFontSize: \"14px\"\n};\nvar getStyles = /* @__PURE__ */ __name(({\n treemap: treemap2\n} = {}) => {\n const defaultThemeVariables = getThemeVariables();\n const currentConfig = getConfig();\n const themeVariables = cleanAndMerge(defaultThemeVariables, currentConfig.themeVariables);\n const options = cleanAndMerge(defaultTreemapStyleOptions, treemap2);\n const titleColor = options.titleColor ?? themeVariables.titleColor;\n const labelColor = options.labelColor ?? themeVariables.textColor;\n const valueColor = options.valueColor ?? themeVariables.textColor;\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: ${labelColor};\n font-size: ${options.labelFontSize};\n }\n .treemapValue {\n fill: ${valueColor};\n font-size: ${options.valueFontSize};\n }\n .treemapTitle {\n fill: ${titleColor};\n font-size: ${options.titleFontSize};\n }\n `;\n}, \"getStyles\");\nvar styles_default = getStyles;\n\n// src/diagrams/treemap/diagram.ts\nvar diagram = {\n parser,\n get db() {\n return new TreeMapDB();\n },\n renderer,\n styles: styles_default\n};\nexport {\n diagram\n};\n"],"x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21],"mappings":"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"}
1
+ {"version":3,"file":"diagram-OG6HWLK6-CaRkxDoj.js","names":["node_count","node_each","node_eachAfter","node_eachBefore","node_find","node_sum","node_sort","node_path","node_ancestors","node_descendants","node_leaves","node_links","node_iterator","squarify","roundNode","constant","parseFunc","scaleOrdinal","treemap","select","getThemeVariables"],"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.15.0/node_modules/mermaid/dist/chunks/mermaid.core/diagram-OG6HWLK6.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-WU5MYG2G.mjs\";\nimport {\n setupViewPortForSVG\n} from \"./chunk-2J33WTMH.mjs\";\nimport {\n isLabelStyle,\n styles2String\n} from \"./chunk-NZK2D7GU.mjs\";\nimport {\n populateCommonDb\n} from \"./chunk-4BX2VUAB.mjs\";\nimport {\n cleanAndMerge\n} from \"./chunk-5ZQYHXKU.mjs\";\nimport {\n clear,\n configureSvgSize,\n defaultConfig_default,\n getAccDescription,\n getAccTitle,\n getConfig,\n getDiagramTitle,\n getThemeVariables,\n setAccDescription,\n setAccTitle,\n setDiagramTitle\n} from \"./chunk-CSCIHK7Q.mjs\";\nimport {\n __name,\n log\n} from \"./chunk-AGHRB4JF.mjs\";\n\n// src/diagrams/treemap/db.ts\nvar TreeMapDB = class {\n constructor() {\n this.nodes = [];\n this.levels = /* @__PURE__ */ new Map();\n this.outerNodes = [];\n this.classes = /* @__PURE__ */ new Map();\n this.setAccTitle = setAccTitle;\n this.getAccTitle = getAccTitle;\n this.setDiagramTitle = setDiagramTitle;\n this.getDiagramTitle = getDiagramTitle;\n this.getAccDescription = getAccDescription;\n this.setAccDescription = setAccDescription;\n }\n static {\n __name(this, \"TreeMapDB\");\n }\n getNodes() {\n return this.nodes;\n }\n getConfig() {\n const defaultConfig = defaultConfig_default;\n const userConfig = getConfig();\n return cleanAndMerge({\n ...defaultConfig.treemap,\n ...userConfig.treemap ?? {}\n });\n }\n addNode(node, level) {\n this.nodes.push(node);\n this.levels.set(node, level);\n if (level === 0) {\n this.outerNodes.push(node);\n this.root ??= node;\n }\n }\n getRoot() {\n return { name: \"\", children: this.outerNodes };\n }\n addClass(id, _style) {\n const styleClass = this.classes.get(id) ?? { id, styles: [], textStyles: [] };\n const styles = _style.replace(/\\\\,/g, \"\\xA7\\xA7\\xA7\").replace(/,/g, \";\").replace(/§§§/g, \",\").split(\";\");\n if (styles) {\n styles.forEach((s) => {\n if (isLabelStyle(s)) {\n if (styleClass?.textStyles) {\n styleClass.textStyles.push(s);\n } else {\n styleClass.textStyles = [s];\n }\n }\n if (styleClass?.styles) {\n styleClass.styles.push(s);\n } else {\n styleClass.styles = [s];\n }\n });\n }\n this.classes.set(id, styleClass);\n }\n getClasses() {\n return this.classes;\n }\n getStylesForClass(classSelector) {\n return this.classes.get(classSelector)?.styles ?? [];\n }\n clear() {\n clear();\n this.nodes = [];\n this.levels = /* @__PURE__ */ new Map();\n this.outerNodes = [];\n this.classes = /* @__PURE__ */ new Map();\n this.root = void 0;\n }\n};\n\n// src/diagrams/treemap/parser.ts\nimport { parse } from \"@mermaid-js/parser\";\n\n// src/diagrams/treemap/utils.ts\nfunction buildHierarchy(items) {\n if (!items.length) {\n return [];\n }\n const root = [];\n const stack = [];\n items.forEach((item) => {\n const node = {\n name: item.name,\n children: item.type === \"Leaf\" ? void 0 : []\n };\n node.classSelector = item?.classSelector;\n if (item?.cssCompiledStyles) {\n node.cssCompiledStyles = item.cssCompiledStyles;\n }\n if (item.type === \"Leaf\" && item.value !== void 0) {\n node.value = item.value;\n }\n while (stack.length > 0 && stack[stack.length - 1].level >= item.level) {\n stack.pop();\n }\n if (stack.length === 0) {\n root.push(node);\n } else {\n const parent = stack[stack.length - 1].node;\n if (parent.children) {\n parent.children.push(node);\n } else {\n parent.children = [node];\n }\n }\n if (item.type !== \"Leaf\") {\n stack.push({ node, level: item.level });\n }\n });\n return root;\n}\n__name(buildHierarchy, \"buildHierarchy\");\n\n// src/diagrams/treemap/parser.ts\nvar populate = /* @__PURE__ */ __name((ast, db) => {\n populateCommonDb(ast, db);\n const items = [];\n for (const row of ast.TreemapRows ?? []) {\n if (row.$type === \"ClassDefStatement\") {\n db.addClass(row.className ?? \"\", row.styleText ?? \"\");\n }\n }\n for (const row of ast.TreemapRows ?? []) {\n const item = row.item;\n if (!item) {\n continue;\n }\n const level = row.indent ? parseInt(row.indent) : 0;\n const name = getItemName(item);\n const styles = item.classSelector ? db.getStylesForClass(item.classSelector) : [];\n const cssCompiledStyles = styles.length > 0 ? styles : void 0;\n const itemData = {\n level,\n name,\n type: item.$type,\n value: item.value,\n classSelector: item.classSelector,\n cssCompiledStyles\n };\n items.push(itemData);\n }\n const hierarchyNodes = buildHierarchy(items);\n const addNodesRecursively = /* @__PURE__ */ __name((nodes, level) => {\n for (const node of nodes) {\n db.addNode(node, level);\n if (node.children && node.children.length > 0) {\n addNodesRecursively(node.children, level + 1);\n }\n }\n }, \"addNodesRecursively\");\n addNodesRecursively(hierarchyNodes, 0);\n}, \"populate\");\nvar getItemName = /* @__PURE__ */ __name((item) => {\n return item.name ? String(item.name) : \"\";\n}, \"getItemName\");\nvar parser = {\n // @ts-expect-error - TreeMapDB is not assignable to DiagramDB\n parser: { yy: void 0 },\n parse: /* @__PURE__ */ __name(async (text) => {\n try {\n const parseFunc = parse;\n const ast = await parseFunc(\"treemap\", text);\n log.debug(\"Treemap AST:\", ast);\n const db = parser.parser?.yy;\n if (!(db instanceof TreeMapDB)) {\n throw new Error(\n \"parser.parser?.yy was not a TreemapDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.\"\n );\n }\n populate(ast, db);\n } catch (error) {\n log.error(\"Error parsing treemap:\", error);\n throw error;\n }\n }, \"parse\")\n};\n\n// src/diagrams/treemap/renderer.ts\nimport { scaleOrdinal, treemap, hierarchy, format, select } from \"d3\";\nvar DEFAULT_INNER_PADDING = 10;\nvar SECTION_INNER_PADDING = 10;\nvar SECTION_HEADER_HEIGHT = 25;\nvar draw = /* @__PURE__ */ __name((_text, id, _version, diagram2) => {\n const treemapDb = diagram2.db;\n const config = treemapDb.getConfig();\n const treemapInnerPadding = config.padding ?? DEFAULT_INNER_PADDING;\n const title = treemapDb.getDiagramTitle();\n const root = treemapDb.getRoot();\n const { themeVariables } = getConfig();\n if (!root) {\n return;\n }\n const titleHeight = title ? 30 : 0;\n const svg = selectSvgElement(id);\n const width = config.nodeWidth ? config.nodeWidth * SECTION_INNER_PADDING : 960;\n const height = config.nodeHeight ? config.nodeHeight * SECTION_INNER_PADDING : 500;\n const svgWidth = width;\n const svgHeight = height + titleHeight;\n svg.attr(\"viewBox\", `0 0 ${svgWidth} ${svgHeight}`);\n configureSvgSize(svg, svgHeight, svgWidth, config.useMaxWidth);\n let valueFormat;\n try {\n const formatStr = config.valueFormat || \",\";\n if (formatStr === \"$0,0\") {\n valueFormat = /* @__PURE__ */ __name((value) => \"$\" + format(\",\")(value), \"valueFormat\");\n } else if (formatStr.startsWith(\"$\") && formatStr.includes(\",\")) {\n const precision = /\\.\\d+/.exec(formatStr);\n const precisionStr = precision ? precision[0] : \"\";\n valueFormat = /* @__PURE__ */ __name((value) => \"$\" + format(\",\" + precisionStr)(value), \"valueFormat\");\n } else if (formatStr.startsWith(\"$\")) {\n const restOfFormat = formatStr.substring(1);\n valueFormat = /* @__PURE__ */ __name((value) => \"$\" + format(restOfFormat || \"\")(value), \"valueFormat\");\n } else {\n valueFormat = format(formatStr);\n }\n } catch (error) {\n log.error(\"Error creating format function:\", error);\n valueFormat = format(\",\");\n }\n const colorScale = scaleOrdinal().range([\n \"transparent\",\n themeVariables.cScale0,\n themeVariables.cScale1,\n themeVariables.cScale2,\n themeVariables.cScale3,\n themeVariables.cScale4,\n themeVariables.cScale5,\n themeVariables.cScale6,\n themeVariables.cScale7,\n themeVariables.cScale8,\n themeVariables.cScale9,\n themeVariables.cScale10,\n themeVariables.cScale11\n ]);\n const colorScalePeer = scaleOrdinal().range([\n \"transparent\",\n themeVariables.cScalePeer0,\n themeVariables.cScalePeer1,\n themeVariables.cScalePeer2,\n themeVariables.cScalePeer3,\n themeVariables.cScalePeer4,\n themeVariables.cScalePeer5,\n themeVariables.cScalePeer6,\n themeVariables.cScalePeer7,\n themeVariables.cScalePeer8,\n themeVariables.cScalePeer9,\n themeVariables.cScalePeer10,\n themeVariables.cScalePeer11\n ]);\n const colorScaleLabel = scaleOrdinal().range([\n themeVariables.cScaleLabel0,\n themeVariables.cScaleLabel1,\n themeVariables.cScaleLabel2,\n themeVariables.cScaleLabel3,\n themeVariables.cScaleLabel4,\n themeVariables.cScaleLabel5,\n themeVariables.cScaleLabel6,\n themeVariables.cScaleLabel7,\n themeVariables.cScaleLabel8,\n themeVariables.cScaleLabel9,\n themeVariables.cScaleLabel10,\n themeVariables.cScaleLabel11\n ]);\n if (title) {\n svg.append(\"text\").attr(\"x\", svgWidth / 2).attr(\"y\", titleHeight / 2).attr(\"class\", \"treemapTitle\").attr(\"text-anchor\", \"middle\").attr(\"dominant-baseline\", \"middle\").text(title);\n }\n const g = svg.append(\"g\").attr(\"transform\", `translate(0, ${titleHeight})`).attr(\"class\", \"treemapContainer\");\n const hierarchyRoot = hierarchy(root).sum((d) => d.value ?? 0).sort((a, b) => (b.value ?? 0) - (a.value ?? 0));\n const treemapLayout = treemap().size([width, height]).paddingTop(\n (d) => d.children && d.children.length > 0 ? SECTION_HEADER_HEIGHT + SECTION_INNER_PADDING : 0\n ).paddingInner(treemapInnerPadding).paddingLeft((d) => d.children && d.children.length > 0 ? SECTION_INNER_PADDING : 0).paddingRight((d) => d.children && d.children.length > 0 ? SECTION_INNER_PADDING : 0).paddingBottom((d) => d.children && d.children.length > 0 ? SECTION_INNER_PADDING : 0).round(true);\n const treemapData = treemapLayout(hierarchyRoot);\n const branchNodes = treemapData.descendants().filter((d) => d.children && d.children.length > 0);\n const sections = g.selectAll(\".treemapSection\").data(branchNodes).enter().append(\"g\").attr(\"class\", \"treemapSection\").attr(\"transform\", (d) => `translate(${d.x0},${d.y0})`);\n sections.append(\"rect\").attr(\"width\", (d) => d.x1 - d.x0).attr(\"height\", SECTION_HEADER_HEIGHT).attr(\"class\", \"treemapSectionHeader\").attr(\"fill\", \"none\").attr(\"fill-opacity\", 0.6).attr(\"stroke-width\", 0.6).attr(\"style\", (d) => {\n if (d.depth === 0) {\n return \"display: none;\";\n }\n return \"\";\n });\n sections.append(\"clipPath\").attr(\"id\", (_d, i) => `clip-section-${id}-${i}`).append(\"rect\").attr(\"width\", (d) => Math.max(0, d.x1 - d.x0 - 12)).attr(\"height\", SECTION_HEADER_HEIGHT);\n sections.append(\"rect\").attr(\"width\", (d) => d.x1 - d.x0).attr(\"height\", (d) => d.y1 - d.y0).attr(\"class\", (_d, i) => {\n return `treemapSection section${i}`;\n }).attr(\"fill\", (d) => colorScale(d.data.name)).attr(\"fill-opacity\", 0.6).attr(\"stroke\", (d) => colorScalePeer(d.data.name)).attr(\"stroke-width\", 2).attr(\"stroke-opacity\", 0.4).attr(\"style\", (d) => {\n if (d.depth === 0) {\n return \"display: none;\";\n }\n const styles = styles2String({ cssCompiledStyles: d.data.cssCompiledStyles });\n return styles.nodeStyles + \";\" + styles.borderStyles.join(\";\");\n });\n sections.append(\"text\").attr(\"class\", \"treemapSectionLabel\").attr(\"x\", 6).attr(\"y\", SECTION_HEADER_HEIGHT / 2).attr(\"dominant-baseline\", \"middle\").text((d) => d.depth === 0 ? \"\" : d.data.name).attr(\"font-weight\", \"bold\").attr(\"style\", (d) => {\n if (d.depth === 0) {\n return \"display: none;\";\n }\n const labelStyles = \"dominant-baseline: middle; font-size: 12px; fill:\" + colorScaleLabel(d.data.name) + \"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;\";\n const styles = styles2String({ cssCompiledStyles: d.data.cssCompiledStyles });\n return labelStyles + styles.labelStyles.replace(\"color:\", \"fill:\");\n }).each(function(d) {\n if (d.depth === 0) {\n return;\n }\n const self = select(this);\n const originalText = d.data.name;\n self.text(originalText);\n const totalHeaderWidth = d.x1 - d.x0;\n const labelXPosition = 6;\n let spaceForTextContent;\n if (config.showValues !== false && d.value) {\n const valueEndsAtXRelative = totalHeaderWidth - 10;\n const estimatedValueTextActualWidth = 30;\n const gapBetweenLabelAndValue = 10;\n const labelMustEndBeforeX = valueEndsAtXRelative - estimatedValueTextActualWidth - gapBetweenLabelAndValue;\n spaceForTextContent = labelMustEndBeforeX - labelXPosition;\n } else {\n const labelOwnRightPadding = 6;\n spaceForTextContent = totalHeaderWidth - labelXPosition - labelOwnRightPadding;\n }\n const minimumWidthToDisplay = 15;\n const actualAvailableWidth = Math.max(minimumWidthToDisplay, spaceForTextContent);\n const textNode = self.node();\n const currentTextContentLength = textNode.getComputedTextLength();\n if (currentTextContentLength > actualAvailableWidth) {\n const ellipsis = \"...\";\n let currentTruncatedText = originalText;\n while (currentTruncatedText.length > 0) {\n currentTruncatedText = originalText.substring(0, currentTruncatedText.length - 1);\n if (currentTruncatedText.length === 0) {\n self.text(ellipsis);\n if (textNode.getComputedTextLength() > actualAvailableWidth) {\n self.text(\"\");\n }\n break;\n }\n self.text(currentTruncatedText + ellipsis);\n if (textNode.getComputedTextLength() <= actualAvailableWidth) {\n break;\n }\n }\n }\n });\n if (config.showValues !== false) {\n sections.append(\"text\").attr(\"class\", \"treemapSectionValue\").attr(\"x\", (d) => d.x1 - d.x0 - 10).attr(\"y\", SECTION_HEADER_HEIGHT / 2).attr(\"text-anchor\", \"end\").attr(\"dominant-baseline\", \"middle\").text((d) => d.value ? valueFormat(d.value) : \"\").attr(\"font-style\", \"italic\").attr(\"style\", (d) => {\n if (d.depth === 0) {\n return \"display: none;\";\n }\n const labelStyles = \"text-anchor: end; dominant-baseline: middle; font-size: 10px; fill:\" + colorScaleLabel(d.data.name) + \"; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;\";\n const styles = styles2String({ cssCompiledStyles: d.data.cssCompiledStyles });\n return labelStyles + styles.labelStyles.replace(\"color:\", \"fill:\");\n });\n }\n const leafNodes = treemapData.leaves();\n const cell = g.selectAll(\".treemapLeafGroup\").data(leafNodes).enter().append(\"g\").attr(\"class\", (d, i) => {\n return `treemapNode treemapLeafGroup leaf${i}${d.data.classSelector ? ` ${d.data.classSelector}` : \"\"}x`;\n }).attr(\"transform\", (d) => `translate(${d.x0},${d.y0})`);\n cell.append(\"rect\").attr(\"width\", (d) => d.x1 - d.x0).attr(\"height\", (d) => d.y1 - d.y0).attr(\"class\", \"treemapLeaf\").attr(\"fill\", (d) => {\n return d.parent ? colorScale(d.parent.data.name) : colorScale(d.data.name);\n }).attr(\"style\", (d) => {\n const styles = styles2String({ cssCompiledStyles: d.data.cssCompiledStyles });\n return styles.nodeStyles;\n }).attr(\"fill-opacity\", 0.3).attr(\"stroke\", (d) => {\n return d.parent ? colorScale(d.parent.data.name) : colorScale(d.data.name);\n }).attr(\"stroke-width\", 3);\n cell.append(\"clipPath\").attr(\"id\", (_d, i) => `clip-${id}-${i}`).append(\"rect\").attr(\"width\", (d) => Math.max(0, d.x1 - d.x0 - 4)).attr(\"height\", (d) => Math.max(0, d.y1 - d.y0 - 4));\n const leafLabels = cell.append(\"text\").attr(\"class\", \"treemapLabel\").attr(\"x\", (d) => (d.x1 - d.x0) / 2).attr(\"y\", (d) => (d.y1 - d.y0) / 2).attr(\"style\", (d) => {\n const labelStyles = \"text-anchor: middle; dominant-baseline: middle; font-size: 38px;fill:\" + colorScaleLabel(d.data.name) + \";\";\n const styles = styles2String({ cssCompiledStyles: d.data.cssCompiledStyles });\n return labelStyles + styles.labelStyles.replace(\"color:\", \"fill:\");\n }).attr(\"clip-path\", (_d, i) => `url(#clip-${id}-${i})`).text((d) => d.data.name);\n leafLabels.each(function(d) {\n const self = select(this);\n const nodeWidth = d.x1 - d.x0;\n const nodeHeight = d.y1 - d.y0;\n const textNode = self.node();\n const padding = 4;\n const availableWidth = nodeWidth - 2 * padding;\n const availableHeight = nodeHeight - 2 * padding;\n if (availableWidth < 10 || availableHeight < 10) {\n self.style(\"display\", \"none\");\n return;\n }\n let currentLabelFontSize = parseInt(self.style(\"font-size\"), 10);\n const minLabelFontSize = 8;\n const originalValueRelFontSize = 28;\n const valueScaleFactor = 0.6;\n const minValueFontSize = 6;\n const spacingBetweenLabelAndValue = 2;\n while (textNode.getComputedTextLength() > availableWidth && currentLabelFontSize > minLabelFontSize) {\n currentLabelFontSize--;\n self.style(\"font-size\", `${currentLabelFontSize}px`);\n }\n let prospectiveValueFontSize = Math.max(\n minValueFontSize,\n Math.min(originalValueRelFontSize, Math.round(currentLabelFontSize * valueScaleFactor))\n );\n let combinedHeight = currentLabelFontSize + spacingBetweenLabelAndValue + prospectiveValueFontSize;\n while (combinedHeight > availableHeight && currentLabelFontSize > minLabelFontSize) {\n currentLabelFontSize--;\n prospectiveValueFontSize = Math.max(\n minValueFontSize,\n Math.min(originalValueRelFontSize, Math.round(currentLabelFontSize * valueScaleFactor))\n );\n if (prospectiveValueFontSize < minValueFontSize && currentLabelFontSize === minLabelFontSize) {\n break;\n }\n self.style(\"font-size\", `${currentLabelFontSize}px`);\n combinedHeight = currentLabelFontSize + spacingBetweenLabelAndValue + prospectiveValueFontSize;\n if (prospectiveValueFontSize <= minValueFontSize && combinedHeight > availableHeight) {\n }\n }\n self.style(\"font-size\", `${currentLabelFontSize}px`);\n if (textNode.getComputedTextLength() > availableWidth || currentLabelFontSize < minLabelFontSize || availableHeight < currentLabelFontSize) {\n self.style(\"display\", \"none\");\n }\n });\n if (config.showValues !== false) {\n const leafValues = cell.append(\"text\").attr(\"class\", \"treemapValue\").attr(\"x\", (d) => (d.x1 - d.x0) / 2).attr(\"y\", function(d) {\n return (d.y1 - d.y0) / 2;\n }).attr(\"style\", (d) => {\n const labelStyles = \"text-anchor: middle; dominant-baseline: hanging; font-size: 28px;fill:\" + colorScaleLabel(d.data.name) + \";\";\n const styles = styles2String({ cssCompiledStyles: d.data.cssCompiledStyles });\n return labelStyles + styles.labelStyles.replace(\"color:\", \"fill:\");\n }).attr(\"clip-path\", (_d, i) => `url(#clip-${id}-${i})`).text((d) => d.value ? valueFormat(d.value) : \"\");\n leafValues.each(function(d) {\n const valueTextElement = select(this);\n const parentCellNode = this.parentNode;\n if (!parentCellNode) {\n valueTextElement.style(\"display\", \"none\");\n return;\n }\n const labelElement = select(parentCellNode).select(\".treemapLabel\");\n if (labelElement.empty() || labelElement.style(\"display\") === \"none\") {\n valueTextElement.style(\"display\", \"none\");\n return;\n }\n const finalLabelFontSize = parseFloat(labelElement.style(\"font-size\"));\n const originalValueFontSize = 28;\n const valueScaleFactor = 0.6;\n const minValueFontSize = 6;\n const spacingBetweenLabelAndValue = 2;\n const actualValueFontSize = Math.max(\n minValueFontSize,\n Math.min(originalValueFontSize, Math.round(finalLabelFontSize * valueScaleFactor))\n );\n valueTextElement.style(\"font-size\", `${actualValueFontSize}px`);\n const labelCenterY = (d.y1 - d.y0) / 2;\n const valueTopActualY = labelCenterY + finalLabelFontSize / 2 + spacingBetweenLabelAndValue;\n valueTextElement.attr(\"y\", valueTopActualY);\n const nodeWidth = d.x1 - d.x0;\n const nodeTotalHeight = d.y1 - d.y0;\n const cellBottomPadding = 4;\n const maxValueBottomY = nodeTotalHeight - cellBottomPadding;\n const availableWidthForValue = nodeWidth - 2 * 4;\n if (valueTextElement.node().getComputedTextLength() > availableWidthForValue || valueTopActualY + actualValueFontSize > maxValueBottomY || actualValueFontSize < minValueFontSize) {\n valueTextElement.style(\"display\", \"none\");\n } else {\n valueTextElement.style(\"display\", null);\n }\n });\n }\n const diagramPadding = config.diagramPadding ?? 8;\n setupViewPortForSVG(svg, diagramPadding, \"flowchart\", config?.useMaxWidth || false);\n}, \"draw\");\nvar getClasses = /* @__PURE__ */ __name(function(_text, diagramObj) {\n return diagramObj.db.getClasses();\n}, \"getClasses\");\nvar renderer = { draw, getClasses };\n\n// src/diagrams/treemap/styles.ts\nvar defaultTreemapStyleOptions = {\n sectionStrokeColor: \"black\",\n sectionStrokeWidth: \"1\",\n sectionFillColor: \"#efefef\",\n leafStrokeColor: \"black\",\n leafStrokeWidth: \"1\",\n leafFillColor: \"#efefef\",\n labelFontSize: \"12px\",\n valueFontSize: \"10px\",\n titleFontSize: \"14px\"\n};\nvar getStyles = /* @__PURE__ */ __name(({\n treemap: treemap2\n} = {}) => {\n const defaultThemeVariables = getThemeVariables();\n const currentConfig = getConfig();\n const themeVariables = cleanAndMerge(defaultThemeVariables, currentConfig.themeVariables);\n const options = cleanAndMerge(defaultTreemapStyleOptions, treemap2);\n const titleColor = options.titleColor ?? themeVariables.titleColor;\n const labelColor = options.labelColor ?? themeVariables.textColor;\n const valueColor = options.valueColor ?? themeVariables.textColor;\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: ${labelColor};\n font-size: ${options.labelFontSize};\n }\n .treemapValue {\n fill: ${valueColor};\n font-size: ${options.valueFontSize};\n }\n .treemapTitle {\n fill: ${titleColor};\n font-size: ${options.titleFontSize};\n }\n `;\n}, \"getStyles\");\nvar styles_default = getStyles;\n\n// src/diagrams/treemap/diagram.ts\nvar diagram = {\n parser,\n get db() {\n return new TreeMapDB();\n },\n renderer,\n styles: styles_default\n};\nexport {\n diagram\n};\n"],"x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import{g as e,h as t,m as n,p as r}from"./src-DoMhBUqV.js";import{H as i,K as a,U as o,a as s,at as c,v as l,w as u,x as d,y as f}from"./chunk-CSCIHK7Q-Bo3glXo1.js";import{t as p}from"./channel-DusP3IMn.js";import{c as m,g as h}from"./chunk-5ZQYHXKU-CxDIhrF-.js";import"./chunk-BSJP7CBP-Kr5SHCan.js";import"./chunk-L5ZTLDWV-BwOlshrN.js";import"./chunk-NZK2D7GU-BbPAL6yn.js";import"./chunk-O5CBEL6O-CM0slmy1.js";import"./chunk-3OPIFGDE-BYpEG0v0.js";import"./chunk-KSCS5N6A-DVQpViur.js";import{n as g,t as _}from"./index-BfPuPCFp.js";import{t as v}from"./chunk-55IACEB6-aqMcRzKm.js";import{t as y}from"./chunk-2J33WTMH-Lf1eCW8w.js";var b=(function(){var e=t(function(e,t,n,r){for(n||={},r=e.length;r--;n[e[r]]=t);return n},`o`),n=[6,8,10,22,24,26,28,33,34,35,36,37,40,43,44,48,50,51,52],r=[1,10],i=[1,11],a=[1,12],o=[1,13],s=[1,23],c=[1,24],l=[1,25],u=[1,26],d=[1,27],f=[1,19],p=[1,28],m=[1,29],h=[1,20],g=[1,18],_=[1,21],v=[1,22],y=[1,36],b=[1,37],x=[1,38],S=[1,39],C=[1,40],w=[6,8,10,13,15,17,20,21,22,24,26,28,33,34,35,36,37,40,43,44,48,50,51,52,65,66,67,68,69],T=[1,45],E=[1,46],D=[1,55],O=[40,48,50,51,52,70,71],k=[1,66],A=[1,64],j=[1,61],M=[1,65],N=[1,67],P=[6,8,10,13,17,22,24,26,28,33,34,35,36,37,40,41,42,43,44,48,49,50,51,52,65,66,67,68,69],F=[65,66,67,68,69],I=[1,84],L=[1,83],R=[1,81],z=[1,82],B=[6,10,42,47],V=[6,10,13,41,42,47,48,49],H=[1,92],U=[1,91],W=[1,90],G=[19,58],K=[1,101],q=[1,100],J=[19,58,60,62],Y={trace:t(function(){},`trace`),yy:{},symbols_:{error:2,start:3,ER_DIAGRAM:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,entityName:11,relSpec:12,COLON:13,role:14,STYLE_SEPARATOR:15,idList:16,BLOCK_START:17,attributes:18,BLOCK_STOP:19,SQS:20,SQE:21,title:22,title_value:23,acc_title:24,acc_title_value:25,acc_descr:26,acc_descr_value:27,acc_descr_multiline_value:28,direction:29,classDefStatement:30,classStatement:31,styleStatement:32,direction_tb:33,direction_bt:34,direction_rl:35,direction_lr:36,CLASSDEF:37,stylesOpt:38,separator:39,UNICODE_TEXT:40,STYLE_TEXT:41,COMMA:42,CLASS:43,STYLE:44,style:45,styleComponent:46,SEMI:47,NUM:48,BRKT:49,ENTITY_NAME:50,DECIMAL_NUM:51,ENTITY_ONE:52,attribute:53,attributeType:54,attributeName:55,attributeKeyTypeList:56,attributeComment:57,ATTRIBUTE_WORD:58,attributeKeyType:59,",":60,ATTRIBUTE_KEY:61,COMMENT:62,cardinality:63,relType:64,ZERO_OR_ONE:65,ZERO_OR_MORE:66,ONE_OR_MORE:67,ONLY_ONE:68,MD_PARENT:69,NON_IDENTIFYING:70,IDENTIFYING:71,WORD:72,$accept:0,$end:1},terminals_:{2:`error`,4:`ER_DIAGRAM`,6:`EOF`,8:`SPACE`,10:`NEWLINE`,13:`COLON`,15:`STYLE_SEPARATOR`,17:`BLOCK_START`,19:`BLOCK_STOP`,20:`SQS`,21:`SQE`,22:`title`,23:`title_value`,24:`acc_title`,25:`acc_title_value`,26:`acc_descr`,27:`acc_descr_value`,28:`acc_descr_multiline_value`,33:`direction_tb`,34:`direction_bt`,35:`direction_rl`,36:`direction_lr`,37:`CLASSDEF`,40:`UNICODE_TEXT`,41:`STYLE_TEXT`,42:`COMMA`,43:`CLASS`,44:`STYLE`,47:`SEMI`,48:`NUM`,49:`BRKT`,50:`ENTITY_NAME`,51:`DECIMAL_NUM`,52:`ENTITY_ONE`,58:`ATTRIBUTE_WORD`,60:`,`,61:`ATTRIBUTE_KEY`,62:`COMMENT`,65:`ZERO_OR_ONE`,66:`ZERO_OR_MORE`,67:`ONE_OR_MORE`,68:`ONLY_ONE`,69:`MD_PARENT`,70:`NON_IDENTIFYING`,71:`IDENTIFYING`,72:`WORD`},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,5],[9,9],[9,7],[9,7],[9,4],[9,6],[9,3],[9,5],[9,1],[9,3],[9,7],[9,9],[9,6],[9,8],[9,4],[9,6],[9,2],[9,2],[9,2],[9,1],[9,1],[9,1],[9,1],[9,1],[29,1],[29,1],[29,1],[29,1],[30,4],[16,1],[16,1],[16,3],[16,3],[31,3],[32,4],[38,1],[38,3],[45,1],[45,2],[39,1],[39,1],[39,1],[46,1],[46,1],[46,1],[46,1],[11,1],[11,1],[11,1],[11,1],[11,1],[18,1],[18,2],[53,2],[53,3],[53,3],[53,4],[54,1],[55,1],[56,1],[56,3],[59,1],[57,1],[12,3],[63,1],[63,1],[63,1],[63,1],[63,1],[64,1],[64,1],[14,1],[14,1],[14,1]],performAction:t(function(e,t,n,r,i,a,o){var s=a.length-1;switch(i){case 1:break;case 2:this.$=[];break;case 3:a[s-1].push(a[s]),this.$=a[s-1];break;case 4:case 5:this.$=a[s];break;case 6:case 7:this.$=[];break;case 8:r.addEntity(a[s-4]),r.addEntity(a[s-2]),r.addRelationship(a[s-4],a[s],a[s-2],a[s-3]);break;case 9:r.addEntity(a[s-8]),r.addEntity(a[s-4]),r.addRelationship(a[s-8],a[s],a[s-4],a[s-5]),r.setClass([a[s-8]],a[s-6]),r.setClass([a[s-4]],a[s-2]);break;case 10:r.addEntity(a[s-6]),r.addEntity(a[s-2]),r.addRelationship(a[s-6],a[s],a[s-2],a[s-3]),r.setClass([a[s-6]],a[s-4]);break;case 11:r.addEntity(a[s-6]),r.addEntity(a[s-4]),r.addRelationship(a[s-6],a[s],a[s-4],a[s-5]),r.setClass([a[s-4]],a[s-2]);break;case 12:r.addEntity(a[s-3]),r.addAttributes(a[s-3],a[s-1]);break;case 13:r.addEntity(a[s-5]),r.addAttributes(a[s-5],a[s-1]),r.setClass([a[s-5]],a[s-3]);break;case 14:r.addEntity(a[s-2]);break;case 15:r.addEntity(a[s-4]),r.setClass([a[s-4]],a[s-2]);break;case 16:r.addEntity(a[s]);break;case 17:r.addEntity(a[s-2]),r.setClass([a[s-2]],a[s]);break;case 18:r.addEntity(a[s-6],a[s-4]),r.addAttributes(a[s-6],a[s-1]);break;case 19:r.addEntity(a[s-8],a[s-6]),r.addAttributes(a[s-8],a[s-1]),r.setClass([a[s-8]],a[s-3]);break;case 20:r.addEntity(a[s-5],a[s-3]);break;case 21:r.addEntity(a[s-7],a[s-5]),r.setClass([a[s-7]],a[s-2]);break;case 22:r.addEntity(a[s-3],a[s-1]);break;case 23:r.addEntity(a[s-5],a[s-3]),r.setClass([a[s-5]],a[s]);break;case 24:case 25:this.$=a[s].trim(),r.setAccTitle(this.$);break;case 26:case 27:this.$=a[s].trim(),r.setAccDescription(this.$);break;case 32:r.setDirection(`TB`);break;case 33:r.setDirection(`BT`);break;case 34:r.setDirection(`RL`);break;case 35:r.setDirection(`LR`);break;case 36:this.$=a[s-3],r.addClass(a[s-2],a[s-1]);break;case 37:case 38:case 59:case 67:this.$=[a[s]];break;case 39:case 40:this.$=a[s-2].concat([a[s]]);break;case 41:this.$=a[s-2],r.setClass(a[s-1],a[s]);break;case 42:this.$=a[s-3],r.addCssStyles(a[s-2],a[s-1]);break;case 43:this.$=[a[s]];break;case 44:a[s-2].push(a[s]),this.$=a[s-2];break;case 46:this.$=a[s-1]+a[s];break;case 54:case 79:case 80:this.$=a[s].replace(/"/g,``);break;case 55:case 56:case 57:case 58:case 81:this.$=a[s];break;case 60:a[s].push(a[s-1]),this.$=a[s];break;case 61:this.$={type:a[s-1],name:a[s]};break;case 62:this.$={type:a[s-2],name:a[s-1],keys:a[s]};break;case 63:this.$={type:a[s-2],name:a[s-1],comment:a[s]};break;case 64:this.$={type:a[s-3],name:a[s-2],keys:a[s-1],comment:a[s]};break;case 65:case 66:case 69:this.$=a[s];break;case 68:a[s-2].push(a[s]),this.$=a[s-2];break;case 70:this.$=a[s].replace(/"/g,``);break;case 71:this.$={cardA:a[s],relType:a[s-1],cardB:a[s-2]};break;case 72:this.$=r.Cardinality.ZERO_OR_ONE;break;case 73:this.$=r.Cardinality.ZERO_OR_MORE;break;case 74:this.$=r.Cardinality.ONE_OR_MORE;break;case 75:this.$=r.Cardinality.ONLY_ONE;break;case 76:this.$=r.Cardinality.MD_PARENT;break;case 77:this.$=r.Identification.NON_IDENTIFYING;break;case 78:this.$=r.Identification.IDENTIFYING;break}},`anonymous`),table:[{3:1,4:[1,2]},{1:[3]},e(n,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:9,22:r,24:i,26:a,28:o,29:14,30:15,31:16,32:17,33:s,34:c,35:l,36:u,37:d,40:f,43:p,44:m,48:h,50:g,51:_,52:v},e(n,[2,7],{1:[2,1]}),e(n,[2,3]),{9:30,11:9,22:r,24:i,26:a,28:o,29:14,30:15,31:16,32:17,33:s,34:c,35:l,36:u,37:d,40:f,43:p,44:m,48:h,50:g,51:_,52:v},e(n,[2,5]),e(n,[2,6]),e(n,[2,16],{12:31,63:35,15:[1,32],17:[1,33],20:[1,34],65:y,66:b,67:x,68:S,69:C}),{23:[1,41]},{25:[1,42]},{27:[1,43]},e(n,[2,27]),e(n,[2,28]),e(n,[2,29]),e(n,[2,30]),e(n,[2,31]),e(w,[2,54]),e(w,[2,55]),e(w,[2,56]),e(w,[2,57]),e(w,[2,58]),e(n,[2,32]),e(n,[2,33]),e(n,[2,34]),e(n,[2,35]),{16:44,40:T,41:E},{16:47,40:T,41:E},{16:48,40:T,41:E},e(n,[2,4]),{11:49,40:f,48:h,50:g,51:_,52:v},{16:50,40:T,41:E},{18:51,19:[1,52],53:53,54:54,58:D},{11:56,40:f,48:h,50:g,51:_,52:v},{64:57,70:[1,58],71:[1,59]},e(O,[2,72]),e(O,[2,73]),e(O,[2,74]),e(O,[2,75]),e(O,[2,76]),e(n,[2,24]),e(n,[2,25]),e(n,[2,26]),{13:k,38:60,41:A,42:j,45:62,46:63,48:M,49:N},e(P,[2,37]),e(P,[2,38]),{16:68,40:T,41:E,42:j},{13:k,38:69,41:A,42:j,45:62,46:63,48:M,49:N},{13:[1,70],15:[1,71]},e(n,[2,17],{63:35,12:72,17:[1,73],42:j,65:y,66:b,67:x,68:S,69:C}),{19:[1,74]},e(n,[2,14]),{18:75,19:[2,59],53:53,54:54,58:D},{55:76,58:[1,77]},{58:[2,65]},{21:[1,78]},{63:79,65:y,66:b,67:x,68:S,69:C},e(F,[2,77]),e(F,[2,78]),{6:I,10:L,39:80,42:R,47:z},{40:[1,85],41:[1,86]},e(B,[2,43],{46:87,13:k,41:A,48:M,49:N}),e(V,[2,45]),e(V,[2,50]),e(V,[2,51]),e(V,[2,52]),e(V,[2,53]),e(n,[2,41],{42:j}),{6:I,10:L,39:88,42:R,47:z},{14:89,40:H,50:U,72:W},{16:93,40:T,41:E},{11:94,40:f,48:h,50:g,51:_,52:v},{18:95,19:[1,96],53:53,54:54,58:D},e(n,[2,12]),{19:[2,60]},e(G,[2,61],{56:97,57:98,59:99,61:K,62:q}),e([19,58,61,62],[2,66]),e(n,[2,22],{15:[1,103],17:[1,102]}),e([40,48,50,51,52],[2,71]),e(n,[2,36]),{13:k,41:A,45:104,46:63,48:M,49:N},e(n,[2,47]),e(n,[2,48]),e(n,[2,49]),e(P,[2,39]),e(P,[2,40]),e(V,[2,46]),e(n,[2,42]),e(n,[2,8]),e(n,[2,79]),e(n,[2,80]),e(n,[2,81]),{13:[1,105],42:j},{13:[1,107],15:[1,106]},{19:[1,108]},e(n,[2,15]),e(G,[2,62],{57:109,60:[1,110],62:q}),e(G,[2,63]),e(J,[2,67]),e(G,[2,70]),e(J,[2,69]),{18:111,19:[1,112],53:53,54:54,58:D},{16:113,40:T,41:E},e(B,[2,44],{46:87,13:k,41:A,48:M,49:N}),{14:114,40:H,50:U,72:W},{16:115,40:T,41:E},{14:116,40:H,50:U,72:W},e(n,[2,13]),e(G,[2,64]),{59:117,61:K},{19:[1,118]},e(n,[2,20]),e(n,[2,23],{17:[1,119],42:j}),e(n,[2,11]),{13:[1,120],42:j},e(n,[2,10]),e(J,[2,68]),e(n,[2,18]),{18:121,19:[1,122],53:53,54:54,58:D},{14:123,40:H,50:U,72:W},{19:[1,124]},e(n,[2,21]),e(n,[2,9]),e(n,[2,19])],defaultActions:{55:[2,65],75:[2,60]},parseError:t(function(e,t){if(t.recoverable)this.trace(e);else{var n=Error(e);throw n.hash=t,n}},`parseError`),parse:t(function(e){var n=this,r=[0],i=[],a=[null],o=[],s=this.table,c=``,l=0,u=0,d=0,f=2,p=1,m=o.slice.call(arguments,1),h=Object.create(this.lexer),g={yy:{}};for(var _ in this.yy)Object.prototype.hasOwnProperty.call(this.yy,_)&&(g.yy[_]=this.yy[_]);h.setInput(e,g.yy),g.yy.lexer=h,g.yy.parser=this,h.yylloc===void 0&&(h.yylloc={});var v=h.yylloc;o.push(v);var y=h.options&&h.options.ranges;typeof g.yy.parseError==`function`?this.parseError=g.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function b(e){r.length-=2*e,a.length-=e,o.length-=e}t(b,`popStack`);function x(){var e=i.pop()||h.lex()||p;return typeof e!=`number`&&(e instanceof Array&&(i=e,e=i.pop()),e=n.symbols_[e]||e),e}t(x,`lex`);for(var S,C,w,T,E,D={},O,k,A,j;;){if(w=r[r.length-1],this.defaultActions[w]?T=this.defaultActions[w]:(S??=x(),T=s[w]&&s[w][S]),T===void 0||!T.length||!T[0]){var M=``;for(O in j=[],s[w])this.terminals_[O]&&O>f&&j.push(`'`+this.terminals_[O]+`'`);M=h.showPosition?`Parse error on line `+(l+1)+`:
1
+ import{g as e,h as t,m as n,p as r}from"./src-DoMhBUqV.js";import{H as i,K as a,U as o,a as s,at as c,v as l,w as u,x as d,y as f}from"./chunk-CSCIHK7Q-BBzr5U3o.js";import{t as p}from"./channel-CAoVqDgM.js";import{c as m,g as h}from"./chunk-5ZQYHXKU-B_3UEJ_q.js";import"./chunk-BSJP7CBP-Kr5SHCan.js";import"./chunk-L5ZTLDWV-BAcjEn3C.js";import"./chunk-NZK2D7GU-DuwDtSGJ.js";import"./chunk-O5CBEL6O-KRO56hHQ.js";import"./chunk-3OPIFGDE-xcRWDOrg.js";import"./chunk-KSCS5N6A-BZrceHGX.js";import{n as g,t as _}from"./index-D5tmHkO_.js";import{t as v}from"./chunk-55IACEB6-aqMcRzKm.js";import{t as y}from"./chunk-2J33WTMH-DaEvWRZX.js";var b=(function(){var e=t(function(e,t,n,r){for(n||={},r=e.length;r--;n[e[r]]=t);return n},`o`),n=[6,8,10,22,24,26,28,33,34,35,36,37,40,43,44,48,50,51,52],r=[1,10],i=[1,11],a=[1,12],o=[1,13],s=[1,23],c=[1,24],l=[1,25],u=[1,26],d=[1,27],f=[1,19],p=[1,28],m=[1,29],h=[1,20],g=[1,18],_=[1,21],v=[1,22],y=[1,36],b=[1,37],x=[1,38],S=[1,39],C=[1,40],w=[6,8,10,13,15,17,20,21,22,24,26,28,33,34,35,36,37,40,43,44,48,50,51,52,65,66,67,68,69],T=[1,45],E=[1,46],D=[1,55],O=[40,48,50,51,52,70,71],k=[1,66],A=[1,64],j=[1,61],M=[1,65],N=[1,67],P=[6,8,10,13,17,22,24,26,28,33,34,35,36,37,40,41,42,43,44,48,49,50,51,52,65,66,67,68,69],F=[65,66,67,68,69],I=[1,84],L=[1,83],R=[1,81],z=[1,82],B=[6,10,42,47],V=[6,10,13,41,42,47,48,49],H=[1,92],U=[1,91],W=[1,90],G=[19,58],K=[1,101],q=[1,100],J=[19,58,60,62],Y={trace:t(function(){},`trace`),yy:{},symbols_:{error:2,start:3,ER_DIAGRAM:4,document:5,EOF:6,line:7,SPACE:8,statement:9,NEWLINE:10,entityName:11,relSpec:12,COLON:13,role:14,STYLE_SEPARATOR:15,idList:16,BLOCK_START:17,attributes:18,BLOCK_STOP:19,SQS:20,SQE:21,title:22,title_value:23,acc_title:24,acc_title_value:25,acc_descr:26,acc_descr_value:27,acc_descr_multiline_value:28,direction:29,classDefStatement:30,classStatement:31,styleStatement:32,direction_tb:33,direction_bt:34,direction_rl:35,direction_lr:36,CLASSDEF:37,stylesOpt:38,separator:39,UNICODE_TEXT:40,STYLE_TEXT:41,COMMA:42,CLASS:43,STYLE:44,style:45,styleComponent:46,SEMI:47,NUM:48,BRKT:49,ENTITY_NAME:50,DECIMAL_NUM:51,ENTITY_ONE:52,attribute:53,attributeType:54,attributeName:55,attributeKeyTypeList:56,attributeComment:57,ATTRIBUTE_WORD:58,attributeKeyType:59,",":60,ATTRIBUTE_KEY:61,COMMENT:62,cardinality:63,relType:64,ZERO_OR_ONE:65,ZERO_OR_MORE:66,ONE_OR_MORE:67,ONLY_ONE:68,MD_PARENT:69,NON_IDENTIFYING:70,IDENTIFYING:71,WORD:72,$accept:0,$end:1},terminals_:{2:`error`,4:`ER_DIAGRAM`,6:`EOF`,8:`SPACE`,10:`NEWLINE`,13:`COLON`,15:`STYLE_SEPARATOR`,17:`BLOCK_START`,19:`BLOCK_STOP`,20:`SQS`,21:`SQE`,22:`title`,23:`title_value`,24:`acc_title`,25:`acc_title_value`,26:`acc_descr`,27:`acc_descr_value`,28:`acc_descr_multiline_value`,33:`direction_tb`,34:`direction_bt`,35:`direction_rl`,36:`direction_lr`,37:`CLASSDEF`,40:`UNICODE_TEXT`,41:`STYLE_TEXT`,42:`COMMA`,43:`CLASS`,44:`STYLE`,47:`SEMI`,48:`NUM`,49:`BRKT`,50:`ENTITY_NAME`,51:`DECIMAL_NUM`,52:`ENTITY_ONE`,58:`ATTRIBUTE_WORD`,60:`,`,61:`ATTRIBUTE_KEY`,62:`COMMENT`,65:`ZERO_OR_ONE`,66:`ZERO_OR_MORE`,67:`ONE_OR_MORE`,68:`ONLY_ONE`,69:`MD_PARENT`,70:`NON_IDENTIFYING`,71:`IDENTIFYING`,72:`WORD`},productions_:[0,[3,3],[5,0],[5,2],[7,2],[7,1],[7,1],[7,1],[9,5],[9,9],[9,7],[9,7],[9,4],[9,6],[9,3],[9,5],[9,1],[9,3],[9,7],[9,9],[9,6],[9,8],[9,4],[9,6],[9,2],[9,2],[9,2],[9,1],[9,1],[9,1],[9,1],[9,1],[29,1],[29,1],[29,1],[29,1],[30,4],[16,1],[16,1],[16,3],[16,3],[31,3],[32,4],[38,1],[38,3],[45,1],[45,2],[39,1],[39,1],[39,1],[46,1],[46,1],[46,1],[46,1],[11,1],[11,1],[11,1],[11,1],[11,1],[18,1],[18,2],[53,2],[53,3],[53,3],[53,4],[54,1],[55,1],[56,1],[56,3],[59,1],[57,1],[12,3],[63,1],[63,1],[63,1],[63,1],[63,1],[64,1],[64,1],[14,1],[14,1],[14,1]],performAction:t(function(e,t,n,r,i,a,o){var s=a.length-1;switch(i){case 1:break;case 2:this.$=[];break;case 3:a[s-1].push(a[s]),this.$=a[s-1];break;case 4:case 5:this.$=a[s];break;case 6:case 7:this.$=[];break;case 8:r.addEntity(a[s-4]),r.addEntity(a[s-2]),r.addRelationship(a[s-4],a[s],a[s-2],a[s-3]);break;case 9:r.addEntity(a[s-8]),r.addEntity(a[s-4]),r.addRelationship(a[s-8],a[s],a[s-4],a[s-5]),r.setClass([a[s-8]],a[s-6]),r.setClass([a[s-4]],a[s-2]);break;case 10:r.addEntity(a[s-6]),r.addEntity(a[s-2]),r.addRelationship(a[s-6],a[s],a[s-2],a[s-3]),r.setClass([a[s-6]],a[s-4]);break;case 11:r.addEntity(a[s-6]),r.addEntity(a[s-4]),r.addRelationship(a[s-6],a[s],a[s-4],a[s-5]),r.setClass([a[s-4]],a[s-2]);break;case 12:r.addEntity(a[s-3]),r.addAttributes(a[s-3],a[s-1]);break;case 13:r.addEntity(a[s-5]),r.addAttributes(a[s-5],a[s-1]),r.setClass([a[s-5]],a[s-3]);break;case 14:r.addEntity(a[s-2]);break;case 15:r.addEntity(a[s-4]),r.setClass([a[s-4]],a[s-2]);break;case 16:r.addEntity(a[s]);break;case 17:r.addEntity(a[s-2]),r.setClass([a[s-2]],a[s]);break;case 18:r.addEntity(a[s-6],a[s-4]),r.addAttributes(a[s-6],a[s-1]);break;case 19:r.addEntity(a[s-8],a[s-6]),r.addAttributes(a[s-8],a[s-1]),r.setClass([a[s-8]],a[s-3]);break;case 20:r.addEntity(a[s-5],a[s-3]);break;case 21:r.addEntity(a[s-7],a[s-5]),r.setClass([a[s-7]],a[s-2]);break;case 22:r.addEntity(a[s-3],a[s-1]);break;case 23:r.addEntity(a[s-5],a[s-3]),r.setClass([a[s-5]],a[s]);break;case 24:case 25:this.$=a[s].trim(),r.setAccTitle(this.$);break;case 26:case 27:this.$=a[s].trim(),r.setAccDescription(this.$);break;case 32:r.setDirection(`TB`);break;case 33:r.setDirection(`BT`);break;case 34:r.setDirection(`RL`);break;case 35:r.setDirection(`LR`);break;case 36:this.$=a[s-3],r.addClass(a[s-2],a[s-1]);break;case 37:case 38:case 59:case 67:this.$=[a[s]];break;case 39:case 40:this.$=a[s-2].concat([a[s]]);break;case 41:this.$=a[s-2],r.setClass(a[s-1],a[s]);break;case 42:this.$=a[s-3],r.addCssStyles(a[s-2],a[s-1]);break;case 43:this.$=[a[s]];break;case 44:a[s-2].push(a[s]),this.$=a[s-2];break;case 46:this.$=a[s-1]+a[s];break;case 54:case 79:case 80:this.$=a[s].replace(/"/g,``);break;case 55:case 56:case 57:case 58:case 81:this.$=a[s];break;case 60:a[s].push(a[s-1]),this.$=a[s];break;case 61:this.$={type:a[s-1],name:a[s]};break;case 62:this.$={type:a[s-2],name:a[s-1],keys:a[s]};break;case 63:this.$={type:a[s-2],name:a[s-1],comment:a[s]};break;case 64:this.$={type:a[s-3],name:a[s-2],keys:a[s-1],comment:a[s]};break;case 65:case 66:case 69:this.$=a[s];break;case 68:a[s-2].push(a[s]),this.$=a[s-2];break;case 70:this.$=a[s].replace(/"/g,``);break;case 71:this.$={cardA:a[s],relType:a[s-1],cardB:a[s-2]};break;case 72:this.$=r.Cardinality.ZERO_OR_ONE;break;case 73:this.$=r.Cardinality.ZERO_OR_MORE;break;case 74:this.$=r.Cardinality.ONE_OR_MORE;break;case 75:this.$=r.Cardinality.ONLY_ONE;break;case 76:this.$=r.Cardinality.MD_PARENT;break;case 77:this.$=r.Identification.NON_IDENTIFYING;break;case 78:this.$=r.Identification.IDENTIFYING;break}},`anonymous`),table:[{3:1,4:[1,2]},{1:[3]},e(n,[2,2],{5:3}),{6:[1,4],7:5,8:[1,6],9:7,10:[1,8],11:9,22:r,24:i,26:a,28:o,29:14,30:15,31:16,32:17,33:s,34:c,35:l,36:u,37:d,40:f,43:p,44:m,48:h,50:g,51:_,52:v},e(n,[2,7],{1:[2,1]}),e(n,[2,3]),{9:30,11:9,22:r,24:i,26:a,28:o,29:14,30:15,31:16,32:17,33:s,34:c,35:l,36:u,37:d,40:f,43:p,44:m,48:h,50:g,51:_,52:v},e(n,[2,5]),e(n,[2,6]),e(n,[2,16],{12:31,63:35,15:[1,32],17:[1,33],20:[1,34],65:y,66:b,67:x,68:S,69:C}),{23:[1,41]},{25:[1,42]},{27:[1,43]},e(n,[2,27]),e(n,[2,28]),e(n,[2,29]),e(n,[2,30]),e(n,[2,31]),e(w,[2,54]),e(w,[2,55]),e(w,[2,56]),e(w,[2,57]),e(w,[2,58]),e(n,[2,32]),e(n,[2,33]),e(n,[2,34]),e(n,[2,35]),{16:44,40:T,41:E},{16:47,40:T,41:E},{16:48,40:T,41:E},e(n,[2,4]),{11:49,40:f,48:h,50:g,51:_,52:v},{16:50,40:T,41:E},{18:51,19:[1,52],53:53,54:54,58:D},{11:56,40:f,48:h,50:g,51:_,52:v},{64:57,70:[1,58],71:[1,59]},e(O,[2,72]),e(O,[2,73]),e(O,[2,74]),e(O,[2,75]),e(O,[2,76]),e(n,[2,24]),e(n,[2,25]),e(n,[2,26]),{13:k,38:60,41:A,42:j,45:62,46:63,48:M,49:N},e(P,[2,37]),e(P,[2,38]),{16:68,40:T,41:E,42:j},{13:k,38:69,41:A,42:j,45:62,46:63,48:M,49:N},{13:[1,70],15:[1,71]},e(n,[2,17],{63:35,12:72,17:[1,73],42:j,65:y,66:b,67:x,68:S,69:C}),{19:[1,74]},e(n,[2,14]),{18:75,19:[2,59],53:53,54:54,58:D},{55:76,58:[1,77]},{58:[2,65]},{21:[1,78]},{63:79,65:y,66:b,67:x,68:S,69:C},e(F,[2,77]),e(F,[2,78]),{6:I,10:L,39:80,42:R,47:z},{40:[1,85],41:[1,86]},e(B,[2,43],{46:87,13:k,41:A,48:M,49:N}),e(V,[2,45]),e(V,[2,50]),e(V,[2,51]),e(V,[2,52]),e(V,[2,53]),e(n,[2,41],{42:j}),{6:I,10:L,39:88,42:R,47:z},{14:89,40:H,50:U,72:W},{16:93,40:T,41:E},{11:94,40:f,48:h,50:g,51:_,52:v},{18:95,19:[1,96],53:53,54:54,58:D},e(n,[2,12]),{19:[2,60]},e(G,[2,61],{56:97,57:98,59:99,61:K,62:q}),e([19,58,61,62],[2,66]),e(n,[2,22],{15:[1,103],17:[1,102]}),e([40,48,50,51,52],[2,71]),e(n,[2,36]),{13:k,41:A,45:104,46:63,48:M,49:N},e(n,[2,47]),e(n,[2,48]),e(n,[2,49]),e(P,[2,39]),e(P,[2,40]),e(V,[2,46]),e(n,[2,42]),e(n,[2,8]),e(n,[2,79]),e(n,[2,80]),e(n,[2,81]),{13:[1,105],42:j},{13:[1,107],15:[1,106]},{19:[1,108]},e(n,[2,15]),e(G,[2,62],{57:109,60:[1,110],62:q}),e(G,[2,63]),e(J,[2,67]),e(G,[2,70]),e(J,[2,69]),{18:111,19:[1,112],53:53,54:54,58:D},{16:113,40:T,41:E},e(B,[2,44],{46:87,13:k,41:A,48:M,49:N}),{14:114,40:H,50:U,72:W},{16:115,40:T,41:E},{14:116,40:H,50:U,72:W},e(n,[2,13]),e(G,[2,64]),{59:117,61:K},{19:[1,118]},e(n,[2,20]),e(n,[2,23],{17:[1,119],42:j}),e(n,[2,11]),{13:[1,120],42:j},e(n,[2,10]),e(J,[2,68]),e(n,[2,18]),{18:121,19:[1,122],53:53,54:54,58:D},{14:123,40:H,50:U,72:W},{19:[1,124]},e(n,[2,21]),e(n,[2,9]),e(n,[2,19])],defaultActions:{55:[2,65],75:[2,60]},parseError:t(function(e,t){if(t.recoverable)this.trace(e);else{var n=Error(e);throw n.hash=t,n}},`parseError`),parse:t(function(e){var n=this,r=[0],i=[],a=[null],o=[],s=this.table,c=``,l=0,u=0,d=0,f=2,p=1,m=o.slice.call(arguments,1),h=Object.create(this.lexer),g={yy:{}};for(var _ in this.yy)Object.prototype.hasOwnProperty.call(this.yy,_)&&(g.yy[_]=this.yy[_]);h.setInput(e,g.yy),g.yy.lexer=h,g.yy.parser=this,h.yylloc===void 0&&(h.yylloc={});var v=h.yylloc;o.push(v);var y=h.options&&h.options.ranges;typeof g.yy.parseError==`function`?this.parseError=g.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function b(e){r.length-=2*e,a.length-=e,o.length-=e}t(b,`popStack`);function x(){var e=i.pop()||h.lex()||p;return typeof e!=`number`&&(e instanceof Array&&(i=e,e=i.pop()),e=n.symbols_[e]||e),e}t(x,`lex`);for(var S,C,w,T,E,D={},O,k,A,j;;){if(w=r[r.length-1],this.defaultActions[w]?T=this.defaultActions[w]:(S??=x(),T=s[w]&&s[w][S]),T===void 0||!T.length||!T[0]){var M=``;for(O in j=[],s[w])this.terminals_[O]&&O>f&&j.push(`'`+this.terminals_[O]+`'`);M=h.showPosition?`Parse error on line `+(l+1)+`:
2
2
  `+h.showPosition()+`
3
3
  Expecting `+j.join(`, `)+`, got '`+(this.terminals_[S]||S)+`'`:`Parse error on line `+(l+1)+`: Unexpected `+(S==p?`end of input`:`'`+(this.terminals_[S]||S)+`'`),this.parseError(M,{text:h.match,token:this.terminals_[S]||S,line:h.yylineno,loc:v,expected:j})}if(T[0]instanceof Array&&T.length>1)throw Error(`Parse Error: multiple actions possible at state: `+w+`, token: `+S);switch(T[0]){case 1:r.push(S),a.push(h.yytext),o.push(h.yylloc),r.push(T[1]),S=null,C?(S=C,C=null):(u=h.yyleng,c=h.yytext,l=h.yylineno,v=h.yylloc,d>0&&d--);break;case 2:if(k=this.productions_[T[1]][1],D.$=a[a.length-k],D._$={first_line:o[o.length-(k||1)].first_line,last_line:o[o.length-1].last_line,first_column:o[o.length-(k||1)].first_column,last_column:o[o.length-1].last_column},y&&(D._$.range=[o[o.length-(k||1)].range[0],o[o.length-1].range[1]]),E=this.performAction.apply(D,[c,u,l,g.yy,T[1],a,o].concat(m)),E!==void 0)return E;k&&(r=r.slice(0,-1*k*2),a=a.slice(0,-1*k),o=o.slice(0,-1*k)),r.push(this.productions_[T[1]][0]),a.push(D.$),o.push(D._$),A=s[r[r.length-2]][r[r.length-1]],r.push(A);break;case 3:return!0}}return!0},`parse`)};Y.lexer=(function(){return{EOF:1,parseError:t(function(e,t){if(this.yy.parser)this.yy.parser.parseError(e,t);else throw Error(e)},`parseError`),setInput:t(function(e,t){return this.yy=t||this.yy||{},this._input=e,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match=``,this.conditionStack=[`INITIAL`],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},`setInput`),input:t(function(){var e=this._input[0];return this.yytext+=e,this.yyleng++,this.offset++,this.match+=e,this.matched+=e,e.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),e},`input`),unput:t(function(e){var t=e.length,n=e.split(/(?:\r\n?|\n)/g);this._input=e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-t),this.offset-=t;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===r.length?this.yylloc.first_column:0)+r[r.length-n.length].length-n[0].length:this.yylloc.first_column-t},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-t]),this.yyleng=this.yytext.length,this},`unput`),more:t(function(){return this._more=!0,this},`more`),reject:t(function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError(`Lexical error on line `+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
4
4
  `+this.showPosition(),{text:``,token:null,line:this.yylineno});return this},`reject`),less:t(function(e){this.unput(this.match.slice(e))},`less`),pastInput:t(function(){var e=this.matched.substr(0,this.matched.length-this.match.length);return(e.length>20?`...`:``)+e.substr(-20).replace(/\n/g,``)},`pastInput`),upcomingInput:t(function(){var e=this.match;return e.length<20&&(e+=this._input.substr(0,20-e.length)),(e.substr(0,20)+(e.length>20?`...`:``)).replace(/\n/g,``)},`upcomingInput`),showPosition:t(function(){var e=this.pastInput(),t=Array(e.length+1).join(`-`);return e+this.upcomingInput()+`
@@ -83,4 +83,4 @@ Expecting `+j.join(`, `)+`, got '`+(this.terminals_[S]||S)+`'`:`Parse error on l
83
83
  background-color: ${T(e.tertiaryColor,.5)};
84
84
  }
85
85
  `},`getStyles`)};export{O as diagram};
86
- //# sourceMappingURL=erDiagram-TEJ5UH35-DGrhtXAQ.js.map
86
+ //# sourceMappingURL=erDiagram-TEJ5UH35-CgifrqeZ.js.map