@undp/data-viz 1.5.9 → 2.0.1

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 (676) hide show
  1. package/dist/AreaChart.cjs +1 -1
  2. package/dist/AreaChart.cjs.map +1 -1
  3. package/dist/AreaChart.d.ts +1 -0
  4. package/dist/AreaChart.js +420 -520
  5. package/dist/AreaChart.js.map +1 -1
  6. package/dist/Axis-CRyfcLjc.js +32 -0
  7. package/dist/Axis-CRyfcLjc.js.map +1 -0
  8. package/dist/Axis-DxRV2yMi.cjs +2 -0
  9. package/dist/Axis-DxRV2yMi.cjs.map +1 -0
  10. package/dist/AxisTitle-jeI7am8o.js +29 -0
  11. package/dist/AxisTitle-jeI7am8o.js.map +1 -0
  12. package/dist/AxisTitle-sS5bLLR7.cjs +2 -0
  13. package/dist/AxisTitle-sS5bLLR7.cjs.map +1 -0
  14. package/dist/BarGraph.cjs +1 -1
  15. package/dist/BarGraph.cjs.map +1 -1
  16. package/dist/BarGraph.d.ts +1 -0
  17. package/dist/BarGraph.js +2185 -4042
  18. package/dist/BarGraph.js.map +1 -1
  19. package/dist/BasicStatCard.cjs +1 -1
  20. package/dist/BasicStatCard.cjs.map +1 -1
  21. package/dist/BasicStatCard.d.ts +1 -0
  22. package/dist/BasicStatCard.js +118 -186
  23. package/dist/BasicStatCard.js.map +1 -1
  24. package/dist/BeeSwarmChart.cjs +1 -1
  25. package/dist/BeeSwarmChart.cjs.map +1 -1
  26. package/dist/BeeSwarmChart.d.ts +5 -0
  27. package/dist/BeeSwarmChart.js +518 -1016
  28. package/dist/BeeSwarmChart.js.map +1 -1
  29. package/dist/BiVariateChoroplethMap.cjs +1 -1
  30. package/dist/BiVariateChoroplethMap.cjs.map +1 -1
  31. package/dist/BiVariateChoroplethMap.d.ts +1 -0
  32. package/dist/BiVariateChoroplethMap.js +456 -697
  33. package/dist/BiVariateChoroplethMap.js.map +1 -1
  34. package/dist/BulletChart.cjs +1 -1
  35. package/dist/BulletChart.cjs.map +1 -1
  36. package/dist/BulletChart.d.ts +1 -0
  37. package/dist/BulletChart.js +863 -1414
  38. package/dist/BulletChart.js.map +1 -1
  39. package/dist/ButterflyChart.cjs +1 -1
  40. package/dist/ButterflyChart.cjs.map +1 -1
  41. package/dist/ButterflyChart.d.ts +1 -0
  42. package/dist/ButterflyChart.js +474 -684
  43. package/dist/ButterflyChart.js.map +1 -1
  44. package/dist/ChoroplethMap.cjs +1 -1
  45. package/dist/ChoroplethMap.cjs.map +1 -1
  46. package/dist/ChoroplethMap.d.ts +1 -0
  47. package/dist/ChoroplethMap.js +468 -722
  48. package/dist/ChoroplethMap.js.map +1 -1
  49. package/dist/CirclePackingGraph.cjs +1 -1
  50. package/dist/CirclePackingGraph.d.ts +1 -0
  51. package/dist/CirclePackingGraph.js +5 -6
  52. package/dist/CirclePackingGraph.js.map +1 -1
  53. package/dist/ColorLegend.cjs +1 -1
  54. package/dist/ColorLegend.cjs.map +1 -1
  55. package/dist/ColorLegend.js +57 -44
  56. package/dist/ColorLegend.js.map +1 -1
  57. package/dist/ColorLegendWithMouseOver.cjs +1 -1
  58. package/dist/ColorLegendWithMouseOver.cjs.map +1 -1
  59. package/dist/ColorLegendWithMouseOver.js +60 -65
  60. package/dist/ColorLegendWithMouseOver.js.map +1 -1
  61. package/dist/Colors.cjs.map +1 -1
  62. package/dist/Colors.js +44 -430
  63. package/dist/Colors.js.map +1 -1
  64. package/dist/CopyTextButton.cjs +3 -3
  65. package/dist/CopyTextButton.cjs.map +1 -1
  66. package/dist/CopyTextButton.js +537 -455
  67. package/dist/CopyTextButton.js.map +1 -1
  68. package/dist/CsvDownloadButton.cjs +7 -7
  69. package/dist/CsvDownloadButton.cjs.map +1 -1
  70. package/dist/CsvDownloadButton.js +442 -447
  71. package/dist/CsvDownloadButton.js.map +1 -1
  72. package/dist/Data/barChart.json +70 -0
  73. package/dist/Data/basic.csv +20 -0
  74. package/dist/DataCards.cjs +5 -5
  75. package/dist/DataCards.cjs.map +1 -1
  76. package/dist/DataCards.d.ts +1 -0
  77. package/dist/DataCards.js +488 -581
  78. package/dist/DataCards.js.map +1 -1
  79. package/dist/DataTable.cjs +1 -1
  80. package/dist/DataTable.cjs.map +1 -1
  81. package/dist/DataTable.d.ts +1 -0
  82. package/dist/DataTable.js +183 -326
  83. package/dist/DataTable.js.map +1 -1
  84. package/dist/DifferenceLineChart.cjs +1 -1
  85. package/dist/DifferenceLineChart.cjs.map +1 -1
  86. package/dist/DifferenceLineChart.d.ts +1 -0
  87. package/dist/DifferenceLineChart.js +731 -795
  88. package/dist/DifferenceLineChart.js.map +1 -1
  89. package/dist/DonutChart.cjs +1 -1
  90. package/dist/DonutChart.cjs.map +1 -1
  91. package/dist/DonutChart.d.ts +1 -4
  92. package/dist/DonutChart.js +260 -444
  93. package/dist/DonutChart.js.map +1 -1
  94. package/dist/DotDensityMap.cjs +1 -1
  95. package/dist/DotDensityMap.cjs.map +1 -1
  96. package/dist/DotDensityMap.d.ts +1 -0
  97. package/dist/DotDensityMap.js +387 -574
  98. package/dist/DotDensityMap.js.map +1 -1
  99. package/dist/{DropdownSelect-6kjXM6oW.js → DropdownSelect-BbdPQa2k.js} +1401 -1374
  100. package/dist/DropdownSelect-BbdPQa2k.js.map +1 -0
  101. package/dist/DropdownSelect-Doz3mCrM.cjs +29 -0
  102. package/dist/DropdownSelect-Doz3mCrM.cjs.map +1 -0
  103. package/dist/DualAxisLineChart.cjs +1 -1
  104. package/dist/DualAxisLineChart.cjs.map +1 -1
  105. package/dist/DualAxisLineChart.d.ts +1 -0
  106. package/dist/DualAxisLineChart.js +620 -714
  107. package/dist/DualAxisLineChart.js.map +1 -1
  108. package/dist/DumbbellChart.cjs +1 -1
  109. package/dist/DumbbellChart.cjs.map +1 -1
  110. package/dist/DumbbellChart.d.ts +1 -0
  111. package/dist/DumbbellChart.js +789 -1499
  112. package/dist/DumbbellChart.js.map +1 -1
  113. package/dist/EmptyState-BZo1BbAn.js +15 -0
  114. package/dist/{EmptyState-36lXXyui.js.map → EmptyState-BZo1BbAn.js.map} +1 -1
  115. package/dist/EmptyState-sAEZ_5rU.cjs +2 -0
  116. package/dist/{EmptyState-B8IpKGcL.cjs.map → EmptyState-sAEZ_5rU.cjs.map} +1 -1
  117. package/dist/ExcelDownloadButton.cjs +1 -1
  118. package/dist/ExcelDownloadButton.cjs.map +1 -1
  119. package/dist/ExcelDownloadButton.js +20 -24
  120. package/dist/ExcelDownloadButton.js.map +1 -1
  121. package/dist/FootNote.cjs +1 -1
  122. package/dist/FootNote.cjs.map +1 -1
  123. package/dist/FootNote.js +26 -17
  124. package/dist/FootNote.js.map +1 -1
  125. package/dist/GeoHubCompareMaps.cjs +1 -1
  126. package/dist/GeoHubCompareMaps.cjs.map +1 -1
  127. package/dist/GeoHubCompareMaps.d.ts +1 -0
  128. package/dist/GeoHubCompareMaps.js +267 -342
  129. package/dist/GeoHubCompareMaps.js.map +1 -1
  130. package/dist/GeoHubMap.cjs +1 -1
  131. package/dist/GeoHubMap.cjs.map +1 -1
  132. package/dist/GeoHubMap.d.ts +1 -0
  133. package/dist/GeoHubMap.js +214 -379
  134. package/dist/GeoHubMap.js.map +1 -1
  135. package/dist/GeoHubMapWithLayerSelection.cjs +1 -1
  136. package/dist/GeoHubMapWithLayerSelection.cjs.map +1 -1
  137. package/dist/GeoHubMapWithLayerSelection.d.ts +1 -0
  138. package/dist/GeoHubMapWithLayerSelection.js +192 -278
  139. package/dist/GeoHubMapWithLayerSelection.js.map +1 -1
  140. package/dist/GraphContainer-CRqzdKu2.js +78 -0
  141. package/dist/GraphContainer-CRqzdKu2.js.map +1 -0
  142. package/dist/GraphContainer-d8A46BK2.cjs +2 -0
  143. package/dist/GraphContainer-d8A46BK2.cjs.map +1 -0
  144. package/dist/GraphDescription.cjs +1 -1
  145. package/dist/GraphDescription.cjs.map +1 -1
  146. package/dist/GraphDescription.js +23 -17
  147. package/dist/GraphDescription.js.map +1 -1
  148. package/dist/{GraphEl-2IiUDxjR.js → GraphEl-BZne2JIx.js} +181 -202
  149. package/dist/GraphEl-BZne2JIx.js.map +1 -0
  150. package/dist/GraphEl-D5MUfp45.cjs +2 -0
  151. package/dist/GraphEl-D5MUfp45.cjs.map +1 -0
  152. package/dist/GraphFooter.cjs +1 -1
  153. package/dist/GraphFooter.cjs.map +1 -1
  154. package/dist/GraphFooter.js +28 -18
  155. package/dist/GraphFooter.js.map +1 -1
  156. package/dist/GraphHeader.cjs +1 -1
  157. package/dist/GraphHeader.cjs.map +1 -1
  158. package/dist/GraphHeader.d.ts +2 -1
  159. package/dist/GraphHeader.js +45 -59
  160. package/dist/GraphHeader.js.map +1 -1
  161. package/dist/GraphTitle.cjs +1 -1
  162. package/dist/GraphTitle.cjs.map +1 -1
  163. package/dist/GraphTitle.js +29 -24
  164. package/dist/GraphTitle.js.map +1 -1
  165. package/dist/GriddedGraphs.cjs +1 -1
  166. package/dist/GriddedGraphs.cjs.map +1 -1
  167. package/dist/GriddedGraphs.d.ts +1 -0
  168. package/dist/GriddedGraphs.js +216 -450
  169. package/dist/GriddedGraphs.js.map +1 -1
  170. package/dist/GriddedGraphsFromConfig.cjs +1 -1
  171. package/dist/GriddedGraphsFromConfig.cjs.map +1 -1
  172. package/dist/GriddedGraphsFromConfig.d.ts +1 -0
  173. package/dist/GriddedGraphsFromConfig.js +22 -36
  174. package/dist/GriddedGraphsFromConfig.js.map +1 -1
  175. package/dist/HeatMap.cjs +1 -1
  176. package/dist/HeatMap.cjs.map +1 -1
  177. package/dist/HeatMap.d.ts +1 -0
  178. package/dist/HeatMap.js +278 -446
  179. package/dist/HeatMap.js.map +1 -1
  180. package/dist/Histogram.cjs +1 -1
  181. package/dist/Histogram.cjs.map +1 -1
  182. package/dist/Histogram.d.ts +1 -0
  183. package/dist/Histogram.js +154 -264
  184. package/dist/Histogram.js.map +1 -1
  185. package/dist/ImageDownloadButton.cjs +1 -1
  186. package/dist/ImageDownloadButton.cjs.map +1 -1
  187. package/dist/ImageDownloadButton.d.ts +2 -1
  188. package/dist/ImageDownloadButton.js +21 -25
  189. package/dist/ImageDownloadButton.js.map +1 -1
  190. package/dist/LineChartWithConfidenceInterval.cjs +1 -1
  191. package/dist/LineChartWithConfidenceInterval.cjs.map +1 -1
  192. package/dist/LineChartWithConfidenceInterval.d.ts +1 -0
  193. package/dist/LineChartWithConfidenceInterval.js +677 -827
  194. package/dist/LineChartWithConfidenceInterval.js.map +1 -1
  195. package/dist/LinearColorLegend.cjs +1 -1
  196. package/dist/LinearColorLegend.cjs.map +1 -1
  197. package/dist/LinearColorLegend.js +49 -30
  198. package/dist/LinearColorLegend.js.map +1 -1
  199. package/dist/Modal-DGcuAHyK.js +1047 -0
  200. package/dist/Modal-DGcuAHyK.js.map +1 -0
  201. package/dist/Modal-JW_IExO3.cjs +46 -0
  202. package/dist/Modal-JW_IExO3.cjs.map +1 -0
  203. package/dist/MultiGraphDashboard.cjs +1 -1
  204. package/dist/MultiGraphDashboard.cjs.map +1 -1
  205. package/dist/MultiGraphDashboard.d.ts +1 -0
  206. package/dist/MultiGraphDashboard.js +126 -292
  207. package/dist/MultiGraphDashboard.js.map +1 -1
  208. package/dist/MultiGraphDashboardFromConfig.cjs +1 -1
  209. package/dist/MultiGraphDashboardFromConfig.cjs.map +1 -1
  210. package/dist/MultiGraphDashboardFromConfig.d.ts +1 -0
  211. package/dist/MultiGraphDashboardFromConfig.js +22 -31
  212. package/dist/MultiGraphDashboardFromConfig.js.map +1 -1
  213. package/dist/MultiGraphDashboardWideToLongFormat.cjs +1 -1
  214. package/dist/MultiGraphDashboardWideToLongFormat.cjs.map +1 -1
  215. package/dist/MultiGraphDashboardWideToLongFormat.d.ts +1 -0
  216. package/dist/MultiGraphDashboardWideToLongFormat.js +139 -223
  217. package/dist/MultiGraphDashboardWideToLongFormat.js.map +1 -1
  218. package/dist/MultiGraphDashboardWideToLongFormatFromConfig.cjs +1 -1
  219. package/dist/MultiGraphDashboardWideToLongFormatFromConfig.cjs.map +1 -1
  220. package/dist/MultiGraphDashboardWideToLongFormatFromConfig.d.ts +1 -0
  221. package/dist/MultiGraphDashboardWideToLongFormatFromConfig.js +25 -27
  222. package/dist/MultiGraphDashboardWideToLongFormatFromConfig.js.map +1 -1
  223. package/dist/MultiLineAltChart.cjs +1 -1
  224. package/dist/MultiLineAltChart.cjs.map +1 -1
  225. package/dist/MultiLineAltChart.d.ts +1 -0
  226. package/dist/MultiLineAltChart.js +582 -659
  227. package/dist/MultiLineAltChart.js.map +1 -1
  228. package/dist/MultiLineChart.cjs +1 -1
  229. package/dist/MultiLineChart.cjs.map +1 -1
  230. package/dist/MultiLineChart.d.ts +1 -0
  231. package/dist/MultiLineChart.js +617 -724
  232. package/dist/MultiLineChart.js.map +1 -1
  233. package/dist/ParetoChart.cjs +1 -1
  234. package/dist/ParetoChart.cjs.map +1 -1
  235. package/dist/ParetoChart.d.ts +1 -0
  236. package/dist/ParetoChart.js +531 -635
  237. package/dist/ParetoChart.js.map +1 -1
  238. package/dist/PerformanceIntensiveMultiGraphDashboard.cjs +1 -1
  239. package/dist/PerformanceIntensiveMultiGraphDashboard.cjs.map +1 -1
  240. package/dist/PerformanceIntensiveMultiGraphDashboard.d.ts +1 -0
  241. package/dist/PerformanceIntensiveMultiGraphDashboard.js +148 -337
  242. package/dist/PerformanceIntensiveMultiGraphDashboard.js.map +1 -1
  243. package/dist/PerformanceIntensiveMultiGraphDashboardFromConfig.cjs +1 -1
  244. package/dist/PerformanceIntensiveMultiGraphDashboardFromConfig.cjs.map +1 -1
  245. package/dist/PerformanceIntensiveMultiGraphDashboardFromConfig.d.ts +1 -0
  246. package/dist/PerformanceIntensiveMultiGraphDashboardFromConfig.js +22 -31
  247. package/dist/PerformanceIntensiveMultiGraphDashboardFromConfig.js.map +1 -1
  248. package/dist/PerformanceIntensiveScrollStory.cjs +1 -1
  249. package/dist/PerformanceIntensiveScrollStory.cjs.map +1 -1
  250. package/dist/PerformanceIntensiveScrollStory.d.ts +1 -0
  251. package/dist/PerformanceIntensiveScrollStory.js +93 -114
  252. package/dist/PerformanceIntensiveScrollStory.js.map +1 -1
  253. package/dist/RadarChart.cjs +1 -1
  254. package/dist/RadarChart.cjs.map +1 -1
  255. package/dist/RadarChart.d.ts +1 -0
  256. package/dist/RadarChart.js +426 -575
  257. package/dist/RadarChart.js.map +1 -1
  258. package/dist/ReferenceLine-2XCwHXQ4.js +162 -0
  259. package/dist/ReferenceLine-2XCwHXQ4.js.map +1 -0
  260. package/dist/ReferenceLine-BH0qdf4R.cjs +2 -0
  261. package/dist/ReferenceLine-BH0qdf4R.cjs.map +1 -0
  262. package/dist/RegressionLine-BOTTNSrr.cjs +2 -0
  263. package/dist/RegressionLine-BOTTNSrr.cjs.map +1 -0
  264. package/dist/RegressionLine-DAcY2DjT.js +87 -0
  265. package/dist/RegressionLine-DAcY2DjT.js.map +1 -0
  266. package/dist/SVGDownloadButton.cjs +1 -1
  267. package/dist/SVGDownloadButton.cjs.map +1 -1
  268. package/dist/SVGDownloadButton.js +21 -25
  269. package/dist/SVGDownloadButton.js.map +1 -1
  270. package/dist/SankeyChart.cjs +1 -1
  271. package/dist/SankeyChart.cjs.map +1 -1
  272. package/dist/SankeyChart.d.ts +1 -0
  273. package/dist/SankeyChart.js +665 -854
  274. package/dist/SankeyChart.js.map +1 -1
  275. package/dist/ScatterPlot.cjs +1 -1
  276. package/dist/ScatterPlot.cjs.map +1 -1
  277. package/dist/ScatterPlot.d.ts +1 -0
  278. package/dist/ScatterPlot.js +675 -815
  279. package/dist/ScatterPlot.js.map +1 -1
  280. package/dist/ScrollStory.cjs +1 -1
  281. package/dist/ScrollStory.cjs.map +1 -1
  282. package/dist/ScrollStory.d.ts +1 -0
  283. package/dist/ScrollStory.js +85 -97
  284. package/dist/ScrollStory.js.map +1 -1
  285. package/dist/SimpleLineChart.cjs +1 -1
  286. package/dist/SimpleLineChart.cjs.map +1 -1
  287. package/dist/SimpleLineChart.d.ts +1 -0
  288. package/dist/SimpleLineChart.js +505 -613
  289. package/dist/SimpleLineChart.js.map +1 -1
  290. package/dist/SingleGraphDashboard.cjs +1 -1
  291. package/dist/SingleGraphDashboard.cjs.map +1 -1
  292. package/dist/SingleGraphDashboard.d.ts +2 -1
  293. package/dist/SingleGraphDashboard.js +284 -508
  294. package/dist/SingleGraphDashboard.js.map +1 -1
  295. package/dist/SingleGraphDashboardFromConfig.cjs +1 -1
  296. package/dist/SingleGraphDashboardFromConfig.cjs.map +1 -1
  297. package/dist/SingleGraphDashboardFromConfig.d.ts +2 -1
  298. package/dist/SingleGraphDashboardFromConfig.js +25 -31
  299. package/dist/SingleGraphDashboardFromConfig.js.map +1 -1
  300. package/dist/SingleGraphDashboardGeoHubMaps.cjs +1 -1
  301. package/dist/SingleGraphDashboardGeoHubMaps.cjs.map +1 -1
  302. package/dist/SingleGraphDashboardGeoHubMaps.d.ts +1 -0
  303. package/dist/SingleGraphDashboardGeoHubMaps.js +150 -168
  304. package/dist/SingleGraphDashboardGeoHubMaps.js.map +1 -1
  305. package/dist/SingleGraphDashboardGeoHubMapsFromConfig.cjs +1 -1
  306. package/dist/SingleGraphDashboardGeoHubMapsFromConfig.cjs.map +1 -1
  307. package/dist/SingleGraphDashboardGeoHubMapsFromConfig.d.ts +1 -0
  308. package/dist/SingleGraphDashboardGeoHubMapsFromConfig.js +25 -21
  309. package/dist/SingleGraphDashboardGeoHubMapsFromConfig.js.map +1 -1
  310. package/dist/SingleGraphDashboardThreeDGraphs.cjs +1 -1
  311. package/dist/SingleGraphDashboardThreeDGraphs.cjs.map +1 -1
  312. package/dist/SingleGraphDashboardThreeDGraphs.d.ts +1 -0
  313. package/dist/SingleGraphDashboardThreeDGraphs.js +363 -593
  314. package/dist/SingleGraphDashboardThreeDGraphs.js.map +1 -1
  315. package/dist/SingleGraphDashboardThreeDGraphsFromConfig.cjs +1 -1
  316. package/dist/SingleGraphDashboardThreeDGraphsFromConfig.cjs.map +1 -1
  317. package/dist/SingleGraphDashboardThreeDGraphsFromConfig.d.ts +1 -0
  318. package/dist/SingleGraphDashboardThreeDGraphsFromConfig.js +25 -31
  319. package/dist/SingleGraphDashboardThreeDGraphsFromConfig.js.map +1 -1
  320. package/dist/SlopeChart.cjs +1 -1
  321. package/dist/SlopeChart.cjs.map +1 -1
  322. package/dist/SlopeChart.d.ts +1 -0
  323. package/dist/SlopeChart.js +539 -573
  324. package/dist/SlopeChart.js.map +1 -1
  325. package/dist/Source-DYMJRrsq.cjs +2 -0
  326. package/dist/Source-DYMJRrsq.cjs.map +1 -0
  327. package/dist/Source-DwTHB8fn.js +78 -0
  328. package/dist/Source-DwTHB8fn.js.map +1 -0
  329. package/dist/Source.cjs +1 -1
  330. package/dist/Source.cjs.map +1 -1
  331. package/dist/Source.js +4 -38
  332. package/dist/Source.js.map +1 -1
  333. package/dist/SparkLine.cjs +1 -1
  334. package/dist/SparkLine.cjs.map +1 -1
  335. package/dist/SparkLine.d.ts +1 -0
  336. package/dist/SparkLine.js +286 -314
  337. package/dist/SparkLine.js.map +1 -1
  338. package/dist/Spinner-D7rnnwnA.js +47 -0
  339. package/dist/Spinner-D7rnnwnA.js.map +1 -0
  340. package/dist/Spinner-DRMBUsX7.cjs +2 -0
  341. package/dist/Spinner-DRMBUsX7.cjs.map +1 -0
  342. package/dist/StatCardFromData.cjs +1 -1
  343. package/dist/StatCardFromData.cjs.map +1 -1
  344. package/dist/StatCardFromData.d.ts +1 -0
  345. package/dist/StatCardFromData.js +161 -243
  346. package/dist/StatCardFromData.js.map +1 -1
  347. package/dist/StripChart.cjs +1 -1
  348. package/dist/StripChart.cjs.map +1 -1
  349. package/dist/StripChart.d.ts +1 -0
  350. package/dist/StripChart.js +665 -983
  351. package/dist/StripChart.js.map +1 -1
  352. package/dist/ThreeDGlobe.cjs +1 -1
  353. package/dist/ThreeDGlobe.cjs.map +1 -1
  354. package/dist/ThreeDGlobe.d.ts +1 -0
  355. package/dist/ThreeDGlobe.js +356 -519
  356. package/dist/ThreeDGlobe.js.map +1 -1
  357. package/dist/ThresholdColorLegendWithMouseOver.cjs +1 -1
  358. package/dist/ThresholdColorLegendWithMouseOver.cjs.map +1 -1
  359. package/dist/ThresholdColorLegendWithMouseOver.js +96 -126
  360. package/dist/ThresholdColorLegendWithMouseOver.js.map +1 -1
  361. package/dist/Tooltip-4dJo4_AF.cjs +2 -0
  362. package/dist/Tooltip-4dJo4_AF.cjs.map +1 -0
  363. package/dist/Tooltip-CwWUegPB.js +43 -0
  364. package/dist/Tooltip-CwWUegPB.js.map +1 -0
  365. package/dist/TreeMapGraph.cjs +1 -1
  366. package/dist/TreeMapGraph.cjs.map +1 -1
  367. package/dist/TreeMapGraph.d.ts +1 -0
  368. package/dist/TreeMapGraph.js +479 -617
  369. package/dist/TreeMapGraph.js.map +1 -1
  370. package/dist/Types.d.ts +1 -0
  371. package/dist/Typography-DX7PlgQU.cjs +2 -0
  372. package/dist/Typography-DX7PlgQU.cjs.map +1 -0
  373. package/dist/Typography-PxtFcnJb.js +142 -0
  374. package/dist/Typography-PxtFcnJb.js.map +1 -0
  375. package/dist/UnitChart.cjs +1 -1
  376. package/dist/UnitChart.cjs.map +1 -1
  377. package/dist/UnitChart.d.ts +1 -0
  378. package/dist/UnitChart.js +160 -212
  379. package/dist/UnitChart.js.map +1 -1
  380. package/dist/XAxesLabels-D5X8jngD.cjs +2 -0
  381. package/dist/XAxesLabels-D5X8jngD.cjs.map +1 -0
  382. package/dist/XAxesLabels-DNO0KmjL.js +73 -0
  383. package/dist/XAxesLabels-DNO0KmjL.js.map +1 -0
  384. package/dist/XTicksAndGridLines-B6CELS7q.cjs +2 -0
  385. package/dist/XTicksAndGridLines-B6CELS7q.cjs.map +1 -0
  386. package/dist/XTicksAndGridLines-CObVFSm4.js +38 -0
  387. package/dist/XTicksAndGridLines-CObVFSm4.js.map +1 -0
  388. package/dist/YAxesLabels-DcS85Beo.cjs +2 -0
  389. package/dist/YAxesLabels-DcS85Beo.cjs.map +1 -0
  390. package/dist/YAxesLabels-Dnnng49-.js +70 -0
  391. package/dist/YAxesLabels-Dnnng49-.js.map +1 -0
  392. package/dist/YTicksAndGridLines-4pxTRlRK.cjs +2 -0
  393. package/dist/YTicksAndGridLines-4pxTRlRK.cjs.map +1 -0
  394. package/dist/YTicksAndGridLines-Blepl7XF.js +38 -0
  395. package/dist/YTicksAndGridLines-Blepl7XF.js.map +1 -0
  396. package/dist/{band-BEjh2CHI.js → band-CyHaVft5.js} +3 -3
  397. package/dist/{band-BEjh2CHI.js.map → band-CyHaVft5.js.map} +1 -1
  398. package/dist/{band-CAApY4Pd.cjs → band-VYfcZeJ2.cjs} +2 -2
  399. package/dist/{band-CAApY4Pd.cjs.map → band-VYfcZeJ2.cjs.map} +1 -1
  400. package/dist/checkIfMultiple-Y9iKaV_u.js +950 -0
  401. package/dist/checkIfMultiple-Y9iKaV_u.js.map +1 -0
  402. package/dist/checkIfMultiple-wg6hJLXy.cjs +12 -0
  403. package/dist/checkIfMultiple-wg6hJLXy.cjs.map +1 -0
  404. package/dist/customArea-BUhPiPT6.js +163 -0
  405. package/dist/{customArea-x4L4xwLl.js.map → customArea-BUhPiPT6.js.map} +1 -1
  406. package/dist/customArea-CMF5g-C3.cjs +2 -0
  407. package/dist/{customArea-1G1S78s_.cjs.map → customArea-CMF5g-C3.cjs.map} +1 -1
  408. package/dist/delaunay-C1uAf38t.js.map +1 -1
  409. package/dist/delaunay-rcy0HhZi.cjs.map +1 -1
  410. package/dist/{ensureCompleteData-DlmibgaI.js → ensureCompleteData-DNKEGRiP.js} +12 -32
  411. package/dist/{ensureCompleteData-DlmibgaI.js.map → ensureCompleteData-DNKEGRiP.js.map} +1 -1
  412. package/dist/{ensureCompleteData-DkQYPeDa.cjs → ensureCompleteData-I6nYmT8E.cjs} +2 -2
  413. package/dist/{ensureCompleteData-DkQYPeDa.cjs.map → ensureCompleteData-I6nYmT8E.cjs.map} +1 -1
  414. package/dist/{excelDownload-BOA-lskf.js → excelDownload-BEC1AyQW.js} +12 -2
  415. package/dist/{excelDownload-BOA-lskf.js.map → excelDownload-BEC1AyQW.js.map} +1 -1
  416. package/dist/excelDownload-BQpsCa62.cjs.map +1 -1
  417. package/dist/{fetchAndParseData-sapWbnYk.js → fetchAndParseData-BpqkBPQL.js} +15 -28
  418. package/dist/{fetchAndParseData-sapWbnYk.js.map → fetchAndParseData-BpqkBPQL.js.map} +1 -1
  419. package/dist/fetchAndParseData-l5HGMAEs.cjs +16 -0
  420. package/dist/{fetchAndParseData-Ba-_CgxS.cjs.map → fetchAndParseData-l5HGMAEs.cjs.map} +1 -1
  421. package/dist/fetchAndParseData.cjs +1 -1
  422. package/dist/fetchAndParseData.js +1 -1
  423. package/dist/{filterData-9nEcQ-Jp.js → filterData-DsAiFzKY.js} +3 -5
  424. package/dist/{filterData-9nEcQ-Jp.js.map → filterData-DsAiFzKY.js.map} +1 -1
  425. package/dist/{filterData-BoYadk0l.cjs → filterData-T5DQBE9b.cjs} +2 -2
  426. package/dist/{filterData-BoYadk0l.cjs.map → filterData-T5DQBE9b.cjs.map} +1 -1
  427. package/dist/generateRandomString-B5zBiJzS.cjs.map +1 -1
  428. package/dist/generateRandomString-za3IQGfQ.js.map +1 -1
  429. package/dist/{getCentroidCoordinates-Dfk6IqEG.js → getCentroidCoordinates-D7r34N4w.js} +2 -2
  430. package/dist/{getCentroidCoordinates-Dfk6IqEG.js.map → getCentroidCoordinates-D7r34N4w.js.map} +1 -1
  431. package/dist/{getCentroidCoordinates-DxTBqzp2.cjs → getCentroidCoordinates-Dng1HVjO.cjs} +2 -2
  432. package/dist/{getCentroidCoordinates-DxTBqzp2.cjs.map → getCentroidCoordinates-Dng1HVjO.cjs.map} +1 -1
  433. package/dist/getGraphList-BpEWn1Tk.js +227 -0
  434. package/dist/{getGraphList-DuColTJM.js.map → getGraphList-BpEWn1Tk.js.map} +1 -1
  435. package/dist/getGraphList-gf02xgT2.cjs.map +1 -1
  436. package/dist/getJenks-BbngDoBQ.js.map +1 -1
  437. package/dist/getJenks-GYmdwBqm.cjs.map +1 -1
  438. package/dist/getNoOfTicks-C_1CFXv_.cjs +2 -0
  439. package/dist/getNoOfTicks-C_1CFXv_.cjs.map +1 -0
  440. package/dist/getNoOfTicks-CpmRjcRF.js +7 -0
  441. package/dist/getNoOfTicks-CpmRjcRF.js.map +1 -0
  442. package/dist/getSchema.cjs.map +1 -1
  443. package/dist/getSchema.js +445 -231
  444. package/dist/getSchema.js.map +1 -1
  445. package/dist/getSliderMarks-BmADcPQt.cjs +6 -0
  446. package/dist/getSliderMarks-BmADcPQt.cjs.map +1 -0
  447. package/dist/getSliderMarks-HIDJ0_Cd.js +1033 -0
  448. package/dist/getSliderMarks-HIDJ0_Cd.js.map +1 -0
  449. package/dist/{getTextColorBasedOnBgColor-B6Nk2WBf.js → getTextColorBasedOnBgColor-CDY808zi.js} +11 -3
  450. package/dist/{getTextColorBasedOnBgColor-B6Nk2WBf.js.map → getTextColorBasedOnBgColor-CDY808zi.js.map} +1 -1
  451. package/dist/getTextColorBasedOnBgColor-nqY-bsM_.cjs.map +1 -1
  452. package/dist/{getUniqValue-DiCh_MOD.js → getUniqValue-BKHCm3zE.js} +2 -4
  453. package/dist/{getUniqValue-DiCh_MOD.js.map → getUniqValue-BKHCm3zE.js.map} +1 -1
  454. package/dist/getUniqValue-RViz8tTw.cjs.map +1 -1
  455. package/dist/{imageDownload-Dcci2LEy.js → imageDownload-BX6SILNZ.js} +4 -2
  456. package/dist/{imageDownload-Dcci2LEy.js.map → imageDownload-BX6SILNZ.js.map} +1 -1
  457. package/dist/imageDownload-CgDcm1Sj.cjs.map +1 -1
  458. package/dist/{index-DvVprvy6.js → index-BZQYSqar.js} +7 -7
  459. package/dist/{index-DvVprvy6.js.map → index-BZQYSqar.js.map} +1 -1
  460. package/dist/index-B_sAFsEV.cjs +2 -0
  461. package/dist/{index-BHe3wsWF.cjs.map → index-B_sAFsEV.cjs.map} +1 -1
  462. package/dist/index-BqfRwk1n.js +146 -0
  463. package/dist/index-BqfRwk1n.js.map +1 -0
  464. package/dist/{index-V_JXij1_.js → index-BuwmuDFJ.js} +3 -3
  465. package/dist/{index-V_JXij1_.js.map → index-BuwmuDFJ.js.map} +1 -1
  466. package/dist/index-C6LorfZ-.cjs +2 -0
  467. package/dist/index-C6LorfZ-.cjs.map +1 -0
  468. package/dist/index-CHPV5EwG-CTPQjnHt.cjs +84 -0
  469. package/dist/index-CHPV5EwG-CTPQjnHt.cjs.map +1 -0
  470. package/dist/{index-CHPV5EwG-DBWUSD9b.js → index-CHPV5EwG-Curnpaqc.js} +724 -625
  471. package/dist/index-CHPV5EwG-Curnpaqc.js.map +1 -0
  472. package/dist/index-Ceppbd8C.js +342 -0
  473. package/dist/index-Ceppbd8C.js.map +1 -0
  474. package/dist/index-Cno4Q0YE.cjs +2 -0
  475. package/dist/{index-CQ3e6Ewi.cjs.map → index-Cno4Q0YE.cjs.map} +1 -1
  476. package/dist/{index-Cw8sCyo_-BuI_jX5Z.js → index-Cw8sCyo_-B2hEKjzG.js} +16 -16
  477. package/dist/{index-Cw8sCyo_-BuI_jX5Z.js.map → index-Cw8sCyo_-B2hEKjzG.js.map} +1 -1
  478. package/dist/{index-Cw8sCyo_-gxT8ADyn.cjs → index-Cw8sCyo_-BrHiWiRF.cjs} +2 -2
  479. package/dist/{index-Cw8sCyo_-gxT8ADyn.cjs.map → index-Cw8sCyo_-BrHiWiRF.cjs.map} +1 -1
  480. package/dist/index-CyZ1lmi_.cjs +2 -0
  481. package/dist/{index-D72cOtq7.cjs.map → index-CyZ1lmi_.cjs.map} +1 -1
  482. package/dist/index-D491FEn1.js +184 -0
  483. package/dist/index-D491FEn1.js.map +1 -0
  484. package/dist/index-DG2bgAva.cjs +10 -0
  485. package/dist/index-DG2bgAva.cjs.map +1 -0
  486. package/dist/index-DRXx7m-C.cjs +2 -0
  487. package/dist/index-DRXx7m-C.cjs.map +1 -0
  488. package/dist/index-DxXnJ8Ti.cjs +2 -0
  489. package/dist/index-DxXnJ8Ti.cjs.map +1 -0
  490. package/dist/{index-Dzc_aaI9-BKklH89r.js → index-Dzc_aaI9-Bb7gobH_.js} +2 -2
  491. package/dist/{index-Dzc_aaI9-BKklH89r.js.map → index-Dzc_aaI9-Bb7gobH_.js.map} +1 -1
  492. package/dist/{index-Dzc_aaI9-RIk2GRHD.cjs → index-Dzc_aaI9-BmkfPMyc.cjs} +2 -2
  493. package/dist/{index-Dzc_aaI9-RIk2GRHD.cjs.map → index-Dzc_aaI9-BmkfPMyc.cjs.map} +1 -1
  494. package/dist/{index-9tDEUqOZ.js → index-GEsywGxz.js} +9 -9
  495. package/dist/index-GEsywGxz.js.map +1 -0
  496. package/dist/index-SKgJALZg.js +99 -0
  497. package/dist/{index-Bw_eHBVN.js.map → index-SKgJALZg.js.map} +1 -1
  498. package/dist/index.cjs +1 -1
  499. package/dist/index.d.ts +10 -8
  500. package/dist/index.js +13 -13
  501. package/dist/{init-BhZylTFx.js → init-BJFW6EwE.js} +3 -3
  502. package/dist/{init-BhZylTFx.js.map → init-BJFW6EwE.js.map} +1 -1
  503. package/dist/{linear-BVckp9RD.cjs → linear-BwPAspcq.cjs} +2 -2
  504. package/dist/{linear-BVckp9RD.cjs.map → linear-BwPAspcq.cjs.map} +1 -1
  505. package/dist/{linear-DUdu7l2G.js → linear-BwnDd9KF.js} +3 -3
  506. package/dist/{linear-DUdu7l2G.js.map → linear-BwnDd9KF.js.map} +1 -1
  507. package/dist/numberFormattingFunction-02t-wJta.cjs.map +1 -1
  508. package/dist/numberFormattingFunction-14YCbkN2.js.map +1 -1
  509. package/dist/{ordinal-BOeNbyae.cjs → ordinal-CrsysVE-.cjs} +2 -2
  510. package/dist/ordinal-CrsysVE-.cjs.map +1 -0
  511. package/dist/{ordinal-w9Lu4Stb.js → ordinal-P77xw8aL.js} +24 -24
  512. package/dist/ordinal-P77xw8aL.js.map +1 -0
  513. package/dist/{pow-e8zx3AQJ.js → pow-DE4c7dbW.js} +3 -3
  514. package/dist/{pow-e8zx3AQJ.js.map → pow-DE4c7dbW.js.map} +1 -1
  515. package/dist/{pow-B5-jkdHU.cjs → pow-DgrUorRi.cjs} +2 -2
  516. package/dist/{pow-B5-jkdHU.cjs.map → pow-DgrUorRi.cjs.map} +1 -1
  517. package/dist/{proxy-BYIC9BuT.js → proxy-BxkFHwUw.js} +144 -134
  518. package/dist/proxy-BxkFHwUw.js.map +1 -0
  519. package/dist/proxy-BxvUI_9l.cjs +2 -0
  520. package/dist/proxy-BxvUI_9l.cjs.map +1 -0
  521. package/dist/{removeOutliers-DR48e-18.js → removeOutliers-BqW0sPqj.js} +2 -5
  522. package/dist/{removeOutliers-DR48e-18.js.map → removeOutliers-BqW0sPqj.js.map} +1 -1
  523. package/dist/removeOutliers-WELHHqiI.cjs.map +1 -1
  524. package/dist/{sort-DfK1b0F5.js → sort-BIvMlUH1.js} +5 -5
  525. package/dist/{sort-DfK1b0F5.js.map → sort-BIvMlUH1.js.map} +1 -1
  526. package/dist/{string-CRoCZCYa.cjs → string-C-kRh1bQ.cjs} +2 -2
  527. package/dist/{string-CRoCZCYa.cjs.map → string-C-kRh1bQ.cjs.map} +1 -1
  528. package/dist/{string-B8KlVSPX.js → string-C_xJ4Wg4.js} +3 -3
  529. package/dist/{string-B8KlVSPX.js.map → string-C_xJ4Wg4.js.map} +1 -1
  530. package/dist/string2HTML-CPGr_I5E.cjs +3 -0
  531. package/dist/{string2HTML-z7CwHXcx.cjs.map → string2HTML-CPGr_I5E.cjs.map} +1 -1
  532. package/dist/{string2HTML-oFCROsus.js → string2HTML-DhG75NqA.js} +15 -9
  533. package/dist/{string2HTML-oFCROsus.js.map → string2HTML-DhG75NqA.js.map} +1 -1
  534. package/dist/style.css +1 -1
  535. package/dist/{svgDownload-C2-E3yf2.js → svgDownload-BAoarWNt.js} +4 -2
  536. package/dist/{svgDownload-C2-E3yf2.js.map → svgDownload-BAoarWNt.js.map} +1 -1
  537. package/dist/svgDownload-D9zEGjTF.cjs.map +1 -1
  538. package/dist/{threshold-DFfqcDMa.js → threshold-Bgr20hik.js} +2 -2
  539. package/dist/{threshold-DFfqcDMa.js.map → threshold-Bgr20hik.js.map} +1 -1
  540. package/dist/{time-Byw_jYQ7.cjs → time-CZd5YLSP.cjs} +2 -2
  541. package/dist/{time-Byw_jYQ7.cjs.map → time-CZd5YLSP.cjs.map} +1 -1
  542. package/dist/{time-BzJP5SPC.js → time-DCCfQk3V.js} +3 -3
  543. package/dist/{time-BzJP5SPC.js.map → time-DCCfQk3V.js.map} +1 -1
  544. package/dist/transformData.cjs +1 -1
  545. package/dist/transformData.js +3 -3
  546. package/dist/transformDataForAggregation-CE3bAlHU.js +585 -0
  547. package/dist/{transformDataForAggregation-sBpdlX8n.js.map → transformDataForAggregation-CE3bAlHU.js.map} +1 -1
  548. package/dist/transformDataForAggregation-KXGm6flX.cjs.map +1 -1
  549. package/dist/transformDataForGraphFromFile-BExxcITV.js +14 -0
  550. package/dist/{transformDataForGraphFromFile-ComYvzuz.js.map → transformDataForGraphFromFile-BExxcITV.js.map} +1 -1
  551. package/dist/{transformDataForGraphFromFile-DVZodTHd.cjs → transformDataForGraphFromFile-DaJHQCsL.cjs} +2 -2
  552. package/dist/{transformDataForGraphFromFile-DVZodTHd.cjs.map → transformDataForGraphFromFile-DaJHQCsL.cjs.map} +1 -1
  553. package/dist/transformDataForSelect-D8AuvYdf.js.map +1 -1
  554. package/dist/transformDataForSelect-YmStusCI.cjs.map +1 -1
  555. package/dist/uniqBy-BHy4I8PK.js.map +1 -1
  556. package/dist/uniqBy-O05lp2S5.cjs.map +1 -1
  557. package/dist/{use-in-view-DR-UTB96.js → use-in-view-Cxa7y1TH.js} +2 -2
  558. package/dist/use-in-view-Cxa7y1TH.js.map +1 -0
  559. package/dist/use-in-view-QcfiW0w3.cjs +2 -0
  560. package/dist/use-in-view-QcfiW0w3.cjs.map +1 -0
  561. package/dist/utils.cjs +1 -1
  562. package/dist/utils.js +8 -8
  563. package/dist/validateSchema.cjs.map +1 -1
  564. package/dist/validateSchema.js +33 -29
  565. package/dist/validateSchema.js.map +1 -1
  566. package/dist/{x-BBpi7a_7-Dz2vKSfu.cjs → x-BBpi7a_7-mTo40uId.cjs} +2 -2
  567. package/dist/{x-BBpi7a_7-Dz2vKSfu.cjs.map → x-BBpi7a_7-mTo40uId.cjs.map} +1 -1
  568. package/dist/{y-D0sAaVii.js → y-BqfogMAB.js} +3 -3
  569. package/dist/{y-D0sAaVii.js.map → y-BqfogMAB.js.map} +1 -1
  570. package/dist/{zoom-QipiAl5W.js → zoom-C9MFjAaV.js} +5 -5
  571. package/dist/{zoom-QipiAl5W.js.map → zoom-C9MFjAaV.js.map} +1 -1
  572. package/dist/zoom-DPw8bba-.cjs +2 -0
  573. package/dist/{zoom-BiMNsz72.cjs.map → zoom-DPw8bba-.cjs.map} +1 -1
  574. package/package.json +7 -6
  575. package/dist/Axis-4gUOL8B7.js +0 -43
  576. package/dist/Axis-4gUOL8B7.js.map +0 -1
  577. package/dist/Axis-CkNn1wit.cjs +0 -2
  578. package/dist/Axis-CkNn1wit.cjs.map +0 -1
  579. package/dist/AxisTitle-Wkz-xeQL.cjs +0 -2
  580. package/dist/AxisTitle-Wkz-xeQL.cjs.map +0 -1
  581. package/dist/AxisTitle-v6_xcXZ-.js +0 -20
  582. package/dist/AxisTitle-v6_xcXZ-.js.map +0 -1
  583. package/dist/DropdownSelect-6kjXM6oW.js.map +0 -1
  584. package/dist/DropdownSelect-vt8yiB-g.cjs +0 -29
  585. package/dist/DropdownSelect-vt8yiB-g.cjs.map +0 -1
  586. package/dist/EmptyState-36lXXyui.js +0 -22
  587. package/dist/EmptyState-B8IpKGcL.cjs +0 -2
  588. package/dist/GraphEl-2IiUDxjR.js.map +0 -1
  589. package/dist/GraphEl-qrlfGPe3.cjs +0 -2
  590. package/dist/GraphEl-qrlfGPe3.cjs.map +0 -1
  591. package/dist/Modal-Cg8daIlV.js +0 -1030
  592. package/dist/Modal-Cg8daIlV.js.map +0 -1
  593. package/dist/Modal-CuuJdWkD.cjs +0 -46
  594. package/dist/Modal-CuuJdWkD.cjs.map +0 -1
  595. package/dist/ReferenceLine-CPMaAX0r.js +0 -128
  596. package/dist/ReferenceLine-CPMaAX0r.js.map +0 -1
  597. package/dist/ReferenceLine-D04j-zeV.cjs +0 -2
  598. package/dist/ReferenceLine-D04j-zeV.cjs.map +0 -1
  599. package/dist/RegressionLine-CW7iViH2.js +0 -49
  600. package/dist/RegressionLine-CW7iViH2.js.map +0 -1
  601. package/dist/RegressionLine-D-49RaHa.cjs +0 -2
  602. package/dist/RegressionLine-D-49RaHa.cjs.map +0 -1
  603. package/dist/Spinner-Bpz70q_g.js +0 -30
  604. package/dist/Spinner-Bpz70q_g.js.map +0 -1
  605. package/dist/Spinner-C6wLp85s.cjs +0 -2
  606. package/dist/Spinner-C6wLp85s.cjs.map +0 -1
  607. package/dist/Tooltip-6LIdPQGC.js +0 -46
  608. package/dist/Tooltip-6LIdPQGC.js.map +0 -1
  609. package/dist/Tooltip-Cpv0QohJ.cjs +0 -2
  610. package/dist/Tooltip-Cpv0QohJ.cjs.map +0 -1
  611. package/dist/Typography-BDULiwlF.cjs +0 -2
  612. package/dist/Typography-BDULiwlF.cjs.map +0 -1
  613. package/dist/Typography-LmZ9LEpe.js +0 -140
  614. package/dist/Typography-LmZ9LEpe.js.map +0 -1
  615. package/dist/XAxesLabels-CLZnBgSr.cjs +0 -2
  616. package/dist/XAxesLabels-CLZnBgSr.cjs.map +0 -1
  617. package/dist/XAxesLabels-SOSmso5J.js +0 -57
  618. package/dist/XAxesLabels-SOSmso5J.js.map +0 -1
  619. package/dist/XTicksAndGridLines-DuydSnZ_.js +0 -56
  620. package/dist/XTicksAndGridLines-DuydSnZ_.js.map +0 -1
  621. package/dist/XTicksAndGridLines-RKy7BVCO.cjs +0 -2
  622. package/dist/XTicksAndGridLines-RKy7BVCO.cjs.map +0 -1
  623. package/dist/YAxesLabels-DlDyLvhi.js +0 -52
  624. package/dist/YAxesLabels-DlDyLvhi.js.map +0 -1
  625. package/dist/YAxesLabels-Dqd259-t.cjs +0 -2
  626. package/dist/YAxesLabels-Dqd259-t.cjs.map +0 -1
  627. package/dist/YTicksAndGridLines-7t4MKtGw.js +0 -56
  628. package/dist/YTicksAndGridLines-7t4MKtGw.js.map +0 -1
  629. package/dist/YTicksAndGridLines-qGpRo_t1.cjs +0 -2
  630. package/dist/YTicksAndGridLines-qGpRo_t1.cjs.map +0 -1
  631. package/dist/checkIfMultiple-Dko_cBvE.cjs +0 -12
  632. package/dist/checkIfMultiple-Dko_cBvE.cjs.map +0 -1
  633. package/dist/checkIfMultiple-u2SmbiCf.js +0 -912
  634. package/dist/checkIfMultiple-u2SmbiCf.js.map +0 -1
  635. package/dist/customArea-1G1S78s_.cjs +0 -2
  636. package/dist/customArea-x4L4xwLl.js +0 -175
  637. package/dist/fetchAndParseData-Ba-_CgxS.cjs +0 -16
  638. package/dist/getGraphList-DuColTJM.js +0 -265
  639. package/dist/getSliderMarks-CUxPy36E.cjs +0 -6
  640. package/dist/getSliderMarks-CUxPy36E.cjs.map +0 -1
  641. package/dist/getSliderMarks-_pYOWEtO.js +0 -1023
  642. package/dist/getSliderMarks-_pYOWEtO.js.map +0 -1
  643. package/dist/index-9tDEUqOZ.js.map +0 -1
  644. package/dist/index-BHe3wsWF.cjs +0 -2
  645. package/dist/index-Bw_eHBVN.js +0 -77
  646. package/dist/index-C0bpbS4F.cjs +0 -2
  647. package/dist/index-C0bpbS4F.cjs.map +0 -1
  648. package/dist/index-CE9pmfxt.js +0 -430
  649. package/dist/index-CE9pmfxt.js.map +0 -1
  650. package/dist/index-CEJwW3lL.cjs +0 -2
  651. package/dist/index-CEJwW3lL.cjs.map +0 -1
  652. package/dist/index-CHPV5EwG-DBWUSD9b.js.map +0 -1
  653. package/dist/index-CHPV5EwG-DjM48pIC.cjs +0 -44
  654. package/dist/index-CHPV5EwG-DjM48pIC.cjs.map +0 -1
  655. package/dist/index-CQ3e6Ewi.cjs +0 -2
  656. package/dist/index-Cm8NIdOO.cjs +0 -10
  657. package/dist/index-Cm8NIdOO.cjs.map +0 -1
  658. package/dist/index-CoZbeNM9.cjs +0 -2
  659. package/dist/index-CoZbeNM9.cjs.map +0 -1
  660. package/dist/index-Cwgh7i7X.js +0 -122
  661. package/dist/index-Cwgh7i7X.js.map +0 -1
  662. package/dist/index-D72cOtq7.cjs +0 -2
  663. package/dist/index-zZjQEHlm.js +0 -342
  664. package/dist/index-zZjQEHlm.js.map +0 -1
  665. package/dist/ordinal-BOeNbyae.cjs.map +0 -1
  666. package/dist/ordinal-w9Lu4Stb.js.map +0 -1
  667. package/dist/proxy-BYIC9BuT.js.map +0 -1
  668. package/dist/proxy-CKadx4lC.cjs +0 -2
  669. package/dist/proxy-CKadx4lC.cjs.map +0 -1
  670. package/dist/string2HTML-z7CwHXcx.cjs +0 -3
  671. package/dist/transformDataForAggregation-sBpdlX8n.js +0 -755
  672. package/dist/transformDataForGraphFromFile-ComYvzuz.js +0 -24
  673. package/dist/use-in-view-CEwlc_dd.cjs +0 -2
  674. package/dist/use-in-view-CEwlc_dd.cjs.map +0 -1
  675. package/dist/use-in-view-DR-UTB96.js.map +0 -1
  676. package/dist/zoom-BiMNsz72.cjs +0 -2
@@ -1 +1 @@
1
- {"version":3,"file":"TreeMapGraph.cjs","sources":["../node_modules/d3-hierarchy/src/hierarchy/count.js","../node_modules/d3-hierarchy/src/hierarchy/each.js","../node_modules/d3-hierarchy/src/hierarchy/eachBefore.js","../node_modules/d3-hierarchy/src/hierarchy/eachAfter.js","../node_modules/d3-hierarchy/src/hierarchy/find.js","../node_modules/d3-hierarchy/src/hierarchy/sum.js","../node_modules/d3-hierarchy/src/hierarchy/sort.js","../node_modules/d3-hierarchy/src/hierarchy/path.js","../node_modules/d3-hierarchy/src/hierarchy/ancestors.js","../node_modules/d3-hierarchy/src/hierarchy/descendants.js","../node_modules/d3-hierarchy/src/hierarchy/leaves.js","../node_modules/d3-hierarchy/src/hierarchy/links.js","../node_modules/d3-hierarchy/src/hierarchy/iterator.js","../node_modules/d3-hierarchy/src/hierarchy/index.js","../node_modules/d3-hierarchy/src/accessors.js","../node_modules/d3-hierarchy/src/constant.js","../node_modules/d3-hierarchy/src/treemap/round.js","../node_modules/d3-hierarchy/src/treemap/dice.js","../node_modules/d3-hierarchy/src/stratify.js","../node_modules/d3-hierarchy/src/treemap/slice.js","../node_modules/d3-hierarchy/src/treemap/squarify.js","../node_modules/d3-hierarchy/src/treemap/index.js","../src/Components/Graphs/TreeMapGraph/Graph.tsx","../src/Components/Graphs/TreeMapGraph/index.tsx"],"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","import {optional} from \"./accessors.js\";\nimport {Node, computeHeight} from \"./hierarchy/index.js\";\n\nvar preroot = {depth: -1},\n ambiguous = {},\n imputed = {};\n\nfunction defaultId(d) {\n return d.id;\n}\n\nfunction defaultParentId(d) {\n return d.parentId;\n}\n\nexport default function() {\n var id = defaultId,\n parentId = defaultParentId,\n path;\n\n function stratify(data) {\n var nodes = Array.from(data),\n currentId = id,\n currentParentId = parentId,\n n,\n d,\n i,\n root,\n parent,\n node,\n nodeId,\n nodeKey,\n nodeByKey = new Map;\n\n if (path != null) {\n const I = nodes.map((d, i) => normalize(path(d, i, data)));\n const P = I.map(parentof);\n const S = new Set(I).add(\"\");\n for (const i of P) {\n if (!S.has(i)) {\n S.add(i);\n I.push(i);\n P.push(parentof(i));\n nodes.push(imputed);\n }\n }\n currentId = (_, i) => I[i];\n currentParentId = (_, i) => P[i];\n }\n\n for (i = 0, n = nodes.length; i < n; ++i) {\n d = nodes[i], node = nodes[i] = new Node(d);\n if ((nodeId = currentId(d, i, data)) != null && (nodeId += \"\")) {\n nodeKey = node.id = nodeId;\n nodeByKey.set(nodeKey, nodeByKey.has(nodeKey) ? ambiguous : node);\n }\n if ((nodeId = currentParentId(d, i, data)) != null && (nodeId += \"\")) {\n node.parent = nodeId;\n }\n }\n\n for (i = 0; i < n; ++i) {\n node = nodes[i];\n if (nodeId = node.parent) {\n parent = nodeByKey.get(nodeId);\n if (!parent) throw new Error(\"missing: \" + nodeId);\n if (parent === ambiguous) throw new Error(\"ambiguous: \" + nodeId);\n if (parent.children) parent.children.push(node);\n else parent.children = [node];\n node.parent = parent;\n } else {\n if (root) throw new Error(\"multiple roots\");\n root = node;\n }\n }\n\n if (!root) throw new Error(\"no root\");\n\n // When imputing internal nodes, only introduce roots if needed.\n // Then replace the imputed marker data with null.\n if (path != null) {\n while (root.data === imputed && root.children.length === 1) {\n root = root.children[0], --n;\n }\n for (let i = nodes.length - 1; i >= 0; --i) {\n node = nodes[i];\n if (node.data !== imputed) break;\n node.data = null;\n }\n }\n\n root.parent = preroot;\n root.eachBefore(function(node) { node.depth = node.parent.depth + 1; --n; }).eachBefore(computeHeight);\n root.parent = null;\n if (n > 0) throw new Error(\"cycle\");\n\n return root;\n }\n\n stratify.id = function(x) {\n return arguments.length ? (id = optional(x), stratify) : id;\n };\n\n stratify.parentId = function(x) {\n return arguments.length ? (parentId = optional(x), stratify) : parentId;\n };\n\n stratify.path = function(x) {\n return arguments.length ? (path = optional(x), stratify) : path;\n };\n\n return stratify;\n}\n\n// To normalize a path, we coerce to a string, strip the trailing slash if any\n// (as long as the trailing slash is not immediately preceded by another slash),\n// and add leading slash if missing.\nfunction normalize(path) {\n path = `${path}`;\n let i = path.length;\n if (slash(path, i - 1) && !slash(path, i - 2)) path = path.slice(0, -1);\n return path[0] === \"/\" ? path : `/${path}`;\n}\n\n// Walk backwards to find the first slash that is not the leading slash, e.g.:\n// \"/foo/bar\" ⇥ \"/foo\", \"/foo\" ⇥ \"/\", \"/\" ↦ \"\". (The root is special-cased\n// because the id of the root must be a truthy value.)\nfunction parentof(path) {\n let i = path.length;\n if (i < 2) return \"\";\n while (--i > 1) if (slash(path, i)) break;\n return path.slice(0, i);\n}\n\n// Slashes can be escaped; to determine whether a slash is a path delimiter, we\n// count the number of preceding backslashes escaping the forward slash: an odd\n// number indicates an escaped forward slash.\nfunction slash(path, i) {\n if (path[i] === \"/\") {\n let k = 0;\n while (i > 0 && path[--i] === \"\\\\\") ++k;\n if ((k & 1) === 0) return true;\n }\n return false;\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 { stratify, treemap } from 'd3-hierarchy';\r\nimport { useRef, useState } from 'react';\r\nimport { P } from '@undp/design-system-react/Typography';\r\nimport { AnimatePresence, motion, useInView } from 'motion/react';\r\nimport { Modal } from '@undp/design-system-react/Modal';\r\nimport { cn } from '@undp/design-system-react/cn';\r\n\r\nimport { AnimateDataType, ClassNameObject, Languages, StyleObject, TreeMapDataType } from '@/Types';\r\nimport { Tooltip } from '@/Components/Elements/Tooltip';\r\nimport { numberFormattingFunction } from '@/Utils/numberFormattingFunction';\r\nimport { getTextColorBasedOnBgColor } from '@/Utils/getTextColorBasedOnBgColor';\r\nimport { Colors } from '@/Components/ColorPalette';\r\nimport { string2HTML } from '@/Utils/string2HTML';\r\n\r\ninterface Props {\r\n data: TreeMapDataType[];\r\n colors: string[];\r\n colorDomain: string[];\r\n leftMargin: number;\r\n rightMargin: number;\r\n topMargin: number;\r\n bottomMargin: number;\r\n showLabels: boolean;\r\n showValues: boolean;\r\n width: number;\r\n height: number;\r\n suffix: string;\r\n prefix: string;\r\n selectedColor?: string;\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n tooltip?: string | ((_d: any) => React.ReactNode);\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onSeriesMouseOver?: (_d: any) => void;\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onSeriesMouseClick?: (_d: any) => void;\r\n highlightedDataPoints: (string | number)[];\r\n resetSelectionOnDoubleClick: boolean;\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n detailsOnClick?: string | ((_d: any) => React.ReactNode);\r\n styles?: StyleObject;\r\n classNames?: ClassNameObject;\r\n language?: Languages;\r\n animate: AnimateDataType;\r\n dimmedOpacity: number;\r\n precision: number;\r\n}\r\n\r\nexport function Graph(props: Props) {\r\n const {\r\n data,\r\n colors,\r\n leftMargin,\r\n width,\r\n height,\r\n colorDomain,\r\n rightMargin,\r\n topMargin,\r\n bottomMargin,\r\n showLabels,\r\n tooltip,\r\n onSeriesMouseOver,\r\n selectedColor,\r\n showValues,\r\n suffix,\r\n prefix,\r\n highlightedDataPoints,\r\n onSeriesMouseClick,\r\n resetSelectionOnDoubleClick,\r\n detailsOnClick,\r\n language,\r\n styles,\r\n classNames,\r\n animate,\r\n dimmedOpacity,\r\n precision,\r\n } = props;\r\n const svgRef = useRef(null);\r\n const isInView = useInView(svgRef, {\r\n once: animate.once,\r\n amount: animate.amount,\r\n });\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const [mouseOverData, setMouseOverData] = useState<any>(undefined);\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const [mouseClickData, setMouseClickData] = useState<any>(undefined);\r\n const [eventX, setEventX] = useState<number | undefined>(undefined);\r\n const [eventY, setEventY] = useState<number | undefined>(undefined);\r\n const margin = {\r\n top: topMargin,\r\n bottom: bottomMargin,\r\n left: leftMargin,\r\n right: rightMargin,\r\n };\r\n const graphWidth = width - margin.left - margin.right;\r\n const graphHeight = height - margin.top - margin.bottom;\r\n\r\n const treeMapData = [\r\n {\r\n id: 'root',\r\n parent: undefined,\r\n value: undefined,\r\n data: undefined,\r\n },\r\n ...data.map((d: TreeMapDataType) => ({\r\n id: d.label,\r\n value: d.size,\r\n parent: 'root',\r\n data: d,\r\n })),\r\n ];\r\n const treeData = stratify()\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n .id((d: any) => d.id)\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n .parentId((d: any) => d.parent)(treeMapData);\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n treeData.sum((d: any) => d.value);\r\n const treeMapVizData = treemap().size([graphWidth, graphHeight]).padding(2)(treeData);\r\n\r\n return (\r\n <>\r\n <motion.svg\r\n width={`${width}px`}\r\n height={`${height}px`}\r\n viewBox={`0 0 ${width} ${height}`}\r\n direction='ltr'\r\n ref={svgRef}\r\n >\r\n <g transform={`translate(${margin.left},${margin.top})`}>\r\n <AnimatePresence>\r\n {treeMapVizData.children?.map(d => {\r\n return (\r\n <motion.g\r\n className='undp-viz-g-with-hover'\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n key={(d.data as any).id}\r\n variants={{\r\n initial: {\r\n opacity: 0,\r\n x: d.x0,\r\n y: d.y0,\r\n },\r\n whileInView: {\r\n opacity: selectedColor\r\n ? // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n (d.data as any).data.color\r\n ? colors[\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n colorDomain.indexOf((d.data as any).data.color)\r\n ] === selectedColor\r\n ? 1\r\n : dimmedOpacity\r\n : dimmedOpacity\r\n : highlightedDataPoints.length !== 0\r\n ? // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n highlightedDataPoints.indexOf((d.data as any).id) !== -1\r\n ? 0.85\r\n : dimmedOpacity\r\n : 0.85,\r\n x: d.x0,\r\n y: d.y0,\r\n transition: { duration: animate.duration },\r\n },\r\n }}\r\n initial='initial'\r\n animate={isInView ? 'whileInView' : 'initial'}\r\n exit={{ opacity: 0, transition: { duration: animate.duration } }}\r\n onMouseEnter={event => {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n setMouseOverData((d.data as any).data);\r\n setEventY(event.clientY);\r\n setEventX(event.clientX);\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onSeriesMouseOver?.((d.data as any).data);\r\n }}\r\n onClick={() => {\r\n if (onSeriesMouseClick || detailsOnClick) {\r\n if (\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n mouseClickData === (d.data as any).id &&\r\n resetSelectionOnDoubleClick\r\n ) {\r\n setMouseClickData(undefined);\r\n onSeriesMouseClick?.(undefined);\r\n } else {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n setMouseClickData((d.data as any).id);\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onSeriesMouseClick?.((d.data as any).data);\r\n }\r\n }\r\n }}\r\n onMouseMove={event => {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n setMouseOverData((d.data as any).data);\r\n setEventY(event.clientY);\r\n setEventX(event.clientX);\r\n }}\r\n onMouseLeave={() => {\r\n setMouseOverData(undefined);\r\n setEventX(undefined);\r\n setEventY(undefined);\r\n onSeriesMouseOver?.(undefined);\r\n }}\r\n >\r\n <motion.rect\r\n x={0}\r\n y={0}\r\n exit={{\r\n width: 0,\r\n height: 0,\r\n opacity: 0,\r\n transition: { duration: animate.duration },\r\n }}\r\n variants={{\r\n initial: {\r\n width: 0,\r\n height: 0,\r\n fill:\r\n data.filter(el => el.color).length === 0\r\n ? colors[0]\r\n : // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n !(d.data as any).data.color\r\n ? Colors.gray\r\n : colors[\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n colorDomain.indexOf((d.data as any).data.color)\r\n ],\r\n },\r\n whileInView: {\r\n width: d.x1 - d.x0,\r\n height: d.y1 - d.y0,\r\n fill:\r\n data.filter(el => el.color).length === 0\r\n ? colors[0]\r\n : // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n !(d.data as any).data.color\r\n ? Colors.gray\r\n : colors[\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n colorDomain.indexOf((d.data as any).data.color)\r\n ],\r\n transition: { duration: animate.duration },\r\n },\r\n }}\r\n initial='initial'\r\n animate={isInView ? 'whileInView' : 'initial'}\r\n />\r\n {d.x1 - d.x0 > 50 && d.y1 - d.y0 > 25 && (showLabels || showValues) ? (\r\n <motion.g\r\n variants={{\r\n initial: { opacity: 0 },\r\n whileInView: {\r\n opacity: 1,\r\n transition: { duration: animate.duration },\r\n },\r\n }}\r\n initial='initial'\r\n animate={isInView ? 'whileInView' : 'initial'}\r\n exit={{ opacity: 0, transition: { duration: animate.duration } }}\r\n >\r\n <foreignObject y={0} x={0} width={d.x1 - d.x0} height={d.y1 - d.y0}>\r\n <div\r\n className='flex flex-col gap-0.5 p-2 w-full'\r\n style={{\r\n color: getTextColorBasedOnBgColor(\r\n data.filter(el => el.color).length === 0\r\n ? colors[0]\r\n : // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n !(d.data as any).data.color\r\n ? Colors.gray\r\n : colors[\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n colorDomain.indexOf((d.data as any).data.color)\r\n ],\r\n ),\r\n }}\r\n >\r\n {showLabels ? (\r\n <P\r\n marginBottom='none'\r\n size='sm'\r\n leading='none'\r\n className={cn(\r\n 'w-full treemap-label',\r\n language === 'ar' || language === 'he' ? 'text-right' : 'text-left',\r\n classNames?.graphObjectValues,\r\n )}\r\n style={{\r\n WebkitLineClamp:\r\n d.y1 - d.y0 > 50\r\n ? d.y1 - d.y0 > 100\r\n ? d.y1 - d.y0 > 150\r\n ? undefined\r\n : 3\r\n : 2\r\n : 1,\r\n display: '-webkit-box',\r\n WebkitBoxOrient: 'vertical',\r\n overflow: 'hidden',\r\n color: getTextColorBasedOnBgColor(\r\n data.filter(el => el.color).length === 0\r\n ? colors[0]\r\n : // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n !(d.data as any).data.color\r\n ? Colors.gray\r\n : colors[\r\n colorDomain.indexOf(\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n (d.data as any).data.color,\r\n )\r\n ],\r\n ),\r\n ...(styles?.graphObjectValues || {}),\r\n }}\r\n >\r\n {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n (d.data as any).id\r\n }\r\n </P>\r\n ) : null}\r\n {showValues ? (\r\n <P\r\n marginBottom='none'\r\n size='sm'\r\n leading='none'\r\n className={cn(\r\n 'w-full font-bold treemap-value',\r\n language === 'ar' || language === 'he' ? 'text-right' : 'text-left',\r\n classNames?.graphObjectValues,\r\n )}\r\n style={{\r\n color: getTextColorBasedOnBgColor(\r\n data.filter(el => el.color).length === 0\r\n ? colors[0]\r\n : // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n !(d.data as any).data.color\r\n ? Colors.gray\r\n : colors[\r\n colorDomain.indexOf(\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n (d.data as any).data.color,\r\n )\r\n ],\r\n ),\r\n ...(styles?.graphObjectValues || {}),\r\n }}\r\n >\r\n {numberFormattingFunction(\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n (d.data as any).value,\r\n 'NA',\r\n precision,\r\n prefix,\r\n suffix,\r\n )}\r\n </P>\r\n ) : null}\r\n </div>\r\n </foreignObject>\r\n </motion.g>\r\n ) : null}\r\n </motion.g>\r\n );\r\n })}\r\n </AnimatePresence>\r\n </g>\r\n </motion.svg>\r\n {mouseOverData && tooltip && eventX && eventY ? (\r\n <Tooltip\r\n data={mouseOverData}\r\n body={tooltip}\r\n xPos={eventX}\r\n yPos={eventY}\r\n backgroundStyle={styles?.tooltip}\r\n className={classNames?.tooltip}\r\n />\r\n ) : null}\r\n {detailsOnClick && mouseClickData !== undefined ? (\r\n <Modal\r\n open={mouseClickData !== undefined}\r\n onClose={() => {\r\n setMouseClickData(undefined);\r\n }}\r\n >\r\n <div\r\n className='graph-modal-content m-0'\r\n dangerouslySetInnerHTML={\r\n typeof detailsOnClick === 'string'\r\n ? { __html: string2HTML(detailsOnClick, mouseClickData) }\r\n : undefined\r\n }\r\n >\r\n {typeof detailsOnClick === 'function' ? detailsOnClick(mouseClickData) : null}\r\n </div>\r\n </Modal>\r\n ) : null}\r\n </>\r\n );\r\n}\r\n","import { useState, useRef, useEffect } from 'react';\r\nimport { cn } from '@undp/design-system-react/cn';\r\n\r\nimport { Graph } from './Graph';\r\n\r\nimport { checkIfNullOrUndefined } from '@/Utils/checkIfNullOrUndefined';\r\nimport {\r\n TreeMapDataType,\r\n SourcesDataType,\r\n Languages,\r\n StyleObject,\r\n ClassNameObject,\r\n AnimateDataType,\r\n} from '@/Types';\r\nimport { GraphFooter } from '@/Components/Elements/GraphFooter';\r\nimport { GraphHeader } from '@/Components/Elements/GraphHeader';\r\nimport { ColorLegendWithMouseOver } from '@/Components/Elements/ColorLegendWithMouseOver';\r\nimport { Colors } from '@/Components/ColorPalette';\r\nimport { EmptyState } from '@/Components/Elements/EmptyState';\r\nimport { uniqBy } from '@/Utils/uniqBy';\r\n\r\ninterface Props {\r\n // Data\r\n /** Array of data objects */\r\n data: TreeMapDataType[];\r\n\r\n // Titles, Labels, and Sources\r\n /** Title of the graph */\r\n graphTitle?: string | React.ReactNode;\r\n /** Description of the graph */\r\n graphDescription?: string | React.ReactNode;\r\n /** Footnote for the graph */\r\n footNote?: string | React.ReactNode;\r\n /** Source data for the graph */\r\n sources?: SourcesDataType[];\r\n /** Accessibility label */\r\n ariaLabel?: string;\r\n\r\n // Colors and Styling\r\n /** Color or array of colors for circle */\r\n colors?: string | string[];\r\n /** Domain of colors for the graph */\r\n colorDomain?: string[];\r\n /** Title for the color legend */\r\n colorLegendTitle?: string;\r\n /** Background color of the graph */\r\n backgroundColor?: string | boolean;\r\n /** Custom styles for the graph. Each object should be a valid React CSS style object. */\r\n styles?: StyleObject;\r\n /** Custom class names */\r\n classNames?: ClassNameObject;\r\n\r\n // Size and Spacing\r\n /** Width of the graph */\r\n width?: number;\r\n /** Height of the graph */\r\n height?: number;\r\n /** Minimum height of the graph */\r\n minHeight?: number;\r\n /** Relative height scaling factor. This overwrites the height props */\r\n relativeHeight?: number;\r\n /** Padding around the graph. Defaults to 0 if no backgroundColor is mentioned else defaults to 1rem */\r\n padding?: string;\r\n /** Left margin of the graph */\r\n leftMargin?: number;\r\n /** Right margin of the graph */\r\n rightMargin?: number;\r\n /** Top margin of the graph */\r\n topMargin?: number;\r\n /** Bottom margin of the graph */\r\n bottomMargin?: number;\r\n /** Maximum radius of the circle */\r\n\r\n // Values and Ticks\r\n /** Prefix for values */\r\n prefix?: string;\r\n /** Suffix for values */\r\n suffix?: string;\r\n\r\n // Graph Parameters\r\n /** Toggle visibility of labels */\r\n showLabels?: boolean;\r\n /** Toggle visibility of values */\r\n showValues?: boolean;\r\n /** Toggle visibility of color scale. This is only applicable if the data props hae color parameter */\r\n showColorScale?: boolean;\r\n /** Toggle visibility of NA color in the color scale. This is only applicable if the data props hae color parameter and showColorScale prop is true */\r\n showNAColor?: boolean;\r\n /** Data points to highlight. Use the label value from data to highlight the data point */\r\n highlightedDataPoints?: (string | number)[];\r\n /** Defines the opacity of the non-highlighted data */\r\n dimmedOpacity?: number;\r\n /** Toggles if the graph animates in when loaded. */\r\n animate?: boolean | AnimateDataType;\r\n /** Specifies the number of decimal places to display in the value. */\r\n precision?: number;\r\n /** Enable graph download option as png */\r\n graphDownload?: boolean;\r\n /** Enable data download option as a csv */\r\n dataDownload?: boolean;\r\n /** Reset selection on double-click. Only applicable when used in a dashboard context with filters. */\r\n resetSelectionOnDoubleClick?: boolean;\r\n\r\n // Interactions and Callbacks\r\n /** Tooltip content. If the type is string then this uses the [handlebar](../?path=/docs/misc-handlebars-templates-and-custom-helpers--docs) template to display the data */\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n tooltip?: string | ((_d: any) => React.ReactNode);\r\n /** Details displayed on the modal when user clicks of a data point. If the type is string then this uses the [handlebar](../?path=/docs/misc-handlebars-templates-and-custom-helpers--docs) template to display the data */\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n detailsOnClick?: string | ((_d: any) => React.ReactNode);\r\n /** Callback for mouse over event */\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onSeriesMouseOver?: (_d: any) => void;\r\n /** Callback for mouse click event */\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onSeriesMouseClick?: (_d: any) => void;\r\n\r\n // Configuration and Options\r\n /** Language setting */\r\n language?: Languages;\r\n /** Color theme */\r\n theme?: 'light' | 'dark';\r\n /** Unique ID for the graph */\r\n graphID?: string;\r\n}\r\n\r\nexport function TreeMapGraph(props: Props) {\r\n const {\r\n data,\r\n graphTitle,\r\n colors,\r\n suffix = '',\r\n sources,\r\n prefix = '',\r\n graphDescription,\r\n leftMargin = 0,\r\n rightMargin = 0,\r\n topMargin = 0,\r\n bottomMargin = 0,\r\n height,\r\n width,\r\n footNote,\r\n colorDomain,\r\n colorLegendTitle,\r\n padding,\r\n backgroundColor = false,\r\n showLabels = true,\r\n relativeHeight,\r\n tooltip,\r\n onSeriesMouseOver,\r\n showColorScale = true,\r\n showValues = true,\r\n graphID,\r\n highlightedDataPoints = [],\r\n onSeriesMouseClick,\r\n graphDownload = false,\r\n dataDownload = false,\r\n language = 'en',\r\n showNAColor = true,\r\n minHeight = 0,\r\n theme = 'light',\r\n ariaLabel,\r\n resetSelectionOnDoubleClick = true,\r\n detailsOnClick,\r\n styles,\r\n classNames,\r\n animate = false,\r\n dimmedOpacity = 0.3,\r\n precision = 2,\r\n } = props;\r\n const [svgWidth, setSvgWidth] = useState(0);\r\n const [svgHeight, setSvgHeight] = useState(0);\r\n const [selectedColor, setSelectedColor] = useState<string | undefined>(undefined);\r\n\r\n const graphDiv = useRef<HTMLDivElement>(null);\r\n const graphParentDiv = useRef<HTMLDivElement>(null);\r\n useEffect(() => {\r\n const resizeObserver = new ResizeObserver(entries => {\r\n setSvgWidth(width || entries[0].target.clientWidth || 620);\r\n setSvgHeight(height || entries[0].target.clientHeight || 480);\r\n });\r\n if (graphDiv.current) {\r\n setSvgHeight(graphDiv.current.clientHeight || 480);\r\n setSvgWidth(graphDiv.current.clientWidth || 620);\r\n if (!width) resizeObserver.observe(graphDiv.current);\r\n }\r\n return () => resizeObserver.disconnect();\r\n }, [width, height]);\r\n return (\r\n <div\r\n className={`${theme || 'light'} flex ${width ? 'w-fit grow-0' : 'w-full grow'}`}\r\n dir={language === 'he' || language === 'ar' ? 'rtl' : undefined}\r\n >\r\n <div\r\n className={cn(\r\n `${\r\n !backgroundColor\r\n ? 'bg-transparent '\r\n : backgroundColor === true\r\n ? 'bg-primary-gray-200 dark:bg-primary-gray-650 '\r\n : ''\r\n }ml-auto mr-auto flex flex-col grow h-inherit ${language || 'en'}`,\r\n width ? 'w-fit' : 'w-full',\r\n classNames?.graphContainer,\r\n )}\r\n style={{\r\n ...(styles?.graphContainer || {}),\r\n ...(backgroundColor && backgroundColor !== true ? { backgroundColor } : {}),\r\n }}\r\n id={graphID}\r\n ref={graphParentDiv}\r\n aria-label={\r\n ariaLabel ||\r\n `${\r\n graphTitle ? `The graph shows ${graphTitle}. ` : ''\r\n }This is a chart where data points are represented by squares, and their sizes reflect their values. ${\r\n graphDescription ? ` ${graphDescription}` : ''\r\n }`\r\n }\r\n >\r\n <div\r\n className='flex grow'\r\n style={{ padding: backgroundColor ? padding || '1rem' : padding || 0 }}\r\n >\r\n <div className='flex flex-col w-full gap-4 grow justify-between'>\r\n {graphTitle || graphDescription || graphDownload || dataDownload ? (\r\n <GraphHeader\r\n styles={{\r\n title: styles?.title,\r\n description: styles?.description,\r\n }}\r\n classNames={{\r\n title: classNames?.title,\r\n description: classNames?.description,\r\n }}\r\n graphTitle={graphTitle}\r\n graphDescription={graphDescription}\r\n width={width}\r\n graphDownload={graphDownload ? graphParentDiv.current : undefined}\r\n dataDownload={\r\n dataDownload\r\n ? data.map(d => d.data).filter(d => d !== undefined).length > 0\r\n ? data.map(d => d.data).filter(d => d !== undefined)\r\n : data.filter(d => d !== undefined)\r\n : null\r\n }\r\n />\r\n ) : null}\r\n <div className='grow flex flex-col justify-center gap-3 w-full'>\r\n {data.length === 0 ? (\r\n <EmptyState />\r\n ) : (\r\n <>\r\n {showColorScale && data.filter(el => el.color).length !== 0 ? (\r\n <ColorLegendWithMouseOver\r\n width={width}\r\n colorLegendTitle={colorLegendTitle}\r\n colors={\r\n (colors as string[] | undefined) || Colors[theme].categoricalColors.colors\r\n }\r\n colorDomain={colorDomain || (uniqBy(data, 'color', true) as string[])}\r\n setSelectedColor={setSelectedColor}\r\n showNAColor={showNAColor}\r\n />\r\n ) : null}\r\n <div\r\n className='flex flex-col grow justify-center w-full leading-0'\r\n ref={graphDiv}\r\n aria-label='Graph area'\r\n >\r\n {(width || svgWidth) && (height || svgHeight) ? (\r\n <Graph\r\n data={data.filter(d => !checkIfNullOrUndefined(d.size))}\r\n colors={\r\n data.filter(el => el.color).length === 0\r\n ? colors\r\n ? [colors as string]\r\n : [Colors.primaryColors['blue-600']]\r\n : (colors as string[] | undefined) ||\r\n Colors[theme].categoricalColors.colors\r\n }\r\n colorDomain={\r\n data.filter(el => el.color).length === 0\r\n ? []\r\n : colorDomain || (uniqBy(data, 'color', true) as string[])\r\n }\r\n width={width || svgWidth}\r\n height={Math.max(\r\n minHeight,\r\n height ||\r\n (relativeHeight\r\n ? minHeight\r\n ? (width || svgWidth) * relativeHeight > minHeight\r\n ? (width || svgWidth) * relativeHeight\r\n : minHeight\r\n : (width || svgWidth) * relativeHeight\r\n : svgHeight),\r\n )}\r\n leftMargin={leftMargin}\r\n rightMargin={rightMargin}\r\n topMargin={topMargin}\r\n bottomMargin={bottomMargin}\r\n showLabels={showLabels}\r\n showValues={showValues}\r\n suffix={suffix}\r\n prefix={prefix}\r\n selectedColor={selectedColor}\r\n tooltip={tooltip}\r\n onSeriesMouseOver={onSeriesMouseOver}\r\n onSeriesMouseClick={onSeriesMouseClick}\r\n highlightedDataPoints={highlightedDataPoints}\r\n resetSelectionOnDoubleClick={resetSelectionOnDoubleClick}\r\n detailsOnClick={detailsOnClick}\r\n styles={styles}\r\n classNames={classNames}\r\n language={language}\r\n animate={\r\n animate === true\r\n ? { duration: 0.5, once: true, amount: 0.5 }\r\n : animate || { duration: 0, once: true, amount: 0 }\r\n }\r\n dimmedOpacity={dimmedOpacity}\r\n precision={precision}\r\n />\r\n ) : null}\r\n </div>\r\n </>\r\n )}\r\n </div>\r\n {sources || footNote ? (\r\n <GraphFooter\r\n styles={{ footnote: styles?.footnote, source: styles?.source }}\r\n classNames={{\r\n footnote: classNames?.footnote,\r\n source: classNames?.source,\r\n }}\r\n sources={sources}\r\n footNote={footNote}\r\n width={width}\r\n />\r\n ) : null}\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n );\r\n}\r\n"],"names":["count","node","sum","children","i","node_count","node_each","callback","that","index","node_eachBefore","nodes","node_eachAfter","next","n","node_find","node_sum","value","node_sort","compare","node_path","end","start","ancestor","leastCommonAncestor","k","a","b","aNodes","bNodes","c","node_ancestors","node_descendants","node_leaves","leaves","node_links","root","links","node_iterator","current","hierarchy","data","mapChildren","objectChildren","Node","child","childs","computeHeight","node_copy","copyData","d","height","optional","f","required","constantZero","constant","x","roundNode","treemapDice","parent","x0","y0","x1","y1","preroot","ambiguous","imputed","defaultId","defaultParentId","stratify","id","parentId","path","currentId","currentParentId","nodeId","nodeKey","nodeByKey","I","normalize","P","parentof","S","_","slash","treemapSlice","phi","squarifyRatio","ratio","rows","row","nodeValue","i0","i1","dx","dy","sumValue","minValue","maxValue","newRatio","minRatio","alpha","beta","squarify","custom","treemap","tile","round","paddingStack","paddingInner","paddingTop","paddingRight","paddingBottom","paddingLeft","positionNode","p","Graph","props","colors","leftMargin","width","colorDomain","rightMargin","topMargin","bottomMargin","showLabels","tooltip","onSeriesMouseOver","selectedColor","showValues","suffix","prefix","highlightedDataPoints","onSeriesMouseClick","resetSelectionOnDoubleClick","detailsOnClick","language","styles","classNames","animate","dimmedOpacity","precision","svgRef","useRef","isInView","useInView","mouseOverData","setMouseOverData","useState","mouseClickData","setMouseClickData","eventX","setEventX","eventY","setEventY","margin","graphWidth","graphHeight","treeMapData","treeData","treeMapVizData","jsxs","Fragment","jsx","motion","AnimatePresence","event","el","Colors","getTextColorBasedOnBgColor","cn","numberFormattingFunction","Tooltip","Modal","string2HTML","TreeMapGraph","graphTitle","sources","graphDescription","footNote","colorLegendTitle","padding","backgroundColor","relativeHeight","showColorScale","graphID","graphDownload","dataDownload","showNAColor","minHeight","theme","ariaLabel","svgWidth","setSvgWidth","svgHeight","setSvgHeight","setSelectedColor","graphDiv","graphParentDiv","useEffect","resizeObserver","entries","GraphHeader","EmptyState","ColorLegendWithMouseOver","uniqBy","checkIfNullOrUndefined","GraphFooter"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21]}
1
+ {"version":3,"file":"TreeMapGraph.cjs","sources":["../node_modules/d3-hierarchy/src/hierarchy/count.js","../node_modules/d3-hierarchy/src/hierarchy/each.js","../node_modules/d3-hierarchy/src/hierarchy/eachBefore.js","../node_modules/d3-hierarchy/src/hierarchy/eachAfter.js","../node_modules/d3-hierarchy/src/hierarchy/find.js","../node_modules/d3-hierarchy/src/hierarchy/sum.js","../node_modules/d3-hierarchy/src/hierarchy/sort.js","../node_modules/d3-hierarchy/src/hierarchy/path.js","../node_modules/d3-hierarchy/src/hierarchy/ancestors.js","../node_modules/d3-hierarchy/src/hierarchy/descendants.js","../node_modules/d3-hierarchy/src/hierarchy/leaves.js","../node_modules/d3-hierarchy/src/hierarchy/links.js","../node_modules/d3-hierarchy/src/hierarchy/iterator.js","../node_modules/d3-hierarchy/src/hierarchy/index.js","../node_modules/d3-hierarchy/src/accessors.js","../node_modules/d3-hierarchy/src/constant.js","../node_modules/d3-hierarchy/src/treemap/round.js","../node_modules/d3-hierarchy/src/treemap/dice.js","../node_modules/d3-hierarchy/src/stratify.js","../node_modules/d3-hierarchy/src/treemap/slice.js","../node_modules/d3-hierarchy/src/treemap/squarify.js","../node_modules/d3-hierarchy/src/treemap/index.js","../src/Components/Graphs/TreeMapGraph/Graph.tsx","../src/Components/Graphs/TreeMapGraph/index.tsx"],"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","import {optional} from \"./accessors.js\";\nimport {Node, computeHeight} from \"./hierarchy/index.js\";\n\nvar preroot = {depth: -1},\n ambiguous = {},\n imputed = {};\n\nfunction defaultId(d) {\n return d.id;\n}\n\nfunction defaultParentId(d) {\n return d.parentId;\n}\n\nexport default function() {\n var id = defaultId,\n parentId = defaultParentId,\n path;\n\n function stratify(data) {\n var nodes = Array.from(data),\n currentId = id,\n currentParentId = parentId,\n n,\n d,\n i,\n root,\n parent,\n node,\n nodeId,\n nodeKey,\n nodeByKey = new Map;\n\n if (path != null) {\n const I = nodes.map((d, i) => normalize(path(d, i, data)));\n const P = I.map(parentof);\n const S = new Set(I).add(\"\");\n for (const i of P) {\n if (!S.has(i)) {\n S.add(i);\n I.push(i);\n P.push(parentof(i));\n nodes.push(imputed);\n }\n }\n currentId = (_, i) => I[i];\n currentParentId = (_, i) => P[i];\n }\n\n for (i = 0, n = nodes.length; i < n; ++i) {\n d = nodes[i], node = nodes[i] = new Node(d);\n if ((nodeId = currentId(d, i, data)) != null && (nodeId += \"\")) {\n nodeKey = node.id = nodeId;\n nodeByKey.set(nodeKey, nodeByKey.has(nodeKey) ? ambiguous : node);\n }\n if ((nodeId = currentParentId(d, i, data)) != null && (nodeId += \"\")) {\n node.parent = nodeId;\n }\n }\n\n for (i = 0; i < n; ++i) {\n node = nodes[i];\n if (nodeId = node.parent) {\n parent = nodeByKey.get(nodeId);\n if (!parent) throw new Error(\"missing: \" + nodeId);\n if (parent === ambiguous) throw new Error(\"ambiguous: \" + nodeId);\n if (parent.children) parent.children.push(node);\n else parent.children = [node];\n node.parent = parent;\n } else {\n if (root) throw new Error(\"multiple roots\");\n root = node;\n }\n }\n\n if (!root) throw new Error(\"no root\");\n\n // When imputing internal nodes, only introduce roots if needed.\n // Then replace the imputed marker data with null.\n if (path != null) {\n while (root.data === imputed && root.children.length === 1) {\n root = root.children[0], --n;\n }\n for (let i = nodes.length - 1; i >= 0; --i) {\n node = nodes[i];\n if (node.data !== imputed) break;\n node.data = null;\n }\n }\n\n root.parent = preroot;\n root.eachBefore(function(node) { node.depth = node.parent.depth + 1; --n; }).eachBefore(computeHeight);\n root.parent = null;\n if (n > 0) throw new Error(\"cycle\");\n\n return root;\n }\n\n stratify.id = function(x) {\n return arguments.length ? (id = optional(x), stratify) : id;\n };\n\n stratify.parentId = function(x) {\n return arguments.length ? (parentId = optional(x), stratify) : parentId;\n };\n\n stratify.path = function(x) {\n return arguments.length ? (path = optional(x), stratify) : path;\n };\n\n return stratify;\n}\n\n// To normalize a path, we coerce to a string, strip the trailing slash if any\n// (as long as the trailing slash is not immediately preceded by another slash),\n// and add leading slash if missing.\nfunction normalize(path) {\n path = `${path}`;\n let i = path.length;\n if (slash(path, i - 1) && !slash(path, i - 2)) path = path.slice(0, -1);\n return path[0] === \"/\" ? path : `/${path}`;\n}\n\n// Walk backwards to find the first slash that is not the leading slash, e.g.:\n// \"/foo/bar\" ⇥ \"/foo\", \"/foo\" ⇥ \"/\", \"/\" ↦ \"\". (The root is special-cased\n// because the id of the root must be a truthy value.)\nfunction parentof(path) {\n let i = path.length;\n if (i < 2) return \"\";\n while (--i > 1) if (slash(path, i)) break;\n return path.slice(0, i);\n}\n\n// Slashes can be escaped; to determine whether a slash is a path delimiter, we\n// count the number of preceding backslashes escaping the forward slash: an odd\n// number indicates an escaped forward slash.\nfunction slash(path, i) {\n if (path[i] === \"/\") {\n let k = 0;\n while (i > 0 && path[--i] === \"\\\\\") ++k;\n if ((k & 1) === 0) return true;\n }\n return false;\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 { stratify, treemap } from 'd3-hierarchy';\r\nimport { useRef, useState } from 'react';\r\nimport { P } from '@undp/design-system-react/Typography';\r\nimport { AnimatePresence, motion, useInView } from 'motion/react';\r\nimport { Modal } from '@undp/design-system-react/Modal';\r\nimport { cn } from '@undp/design-system-react/cn';\r\n\r\nimport { AnimateDataType, ClassNameObject, Languages, StyleObject, TreeMapDataType } from '@/Types';\r\nimport { Tooltip } from '@/Components/Elements/Tooltip';\r\nimport { numberFormattingFunction } from '@/Utils/numberFormattingFunction';\r\nimport { getTextColorBasedOnBgColor } from '@/Utils/getTextColorBasedOnBgColor';\r\nimport { Colors } from '@/Components/ColorPalette';\r\nimport { string2HTML } from '@/Utils/string2HTML';\r\n\r\ninterface Props {\r\n data: TreeMapDataType[];\r\n colors: string[];\r\n colorDomain: string[];\r\n leftMargin: number;\r\n rightMargin: number;\r\n topMargin: number;\r\n bottomMargin: number;\r\n showLabels: boolean;\r\n showValues: boolean;\r\n width: number;\r\n height: number;\r\n suffix: string;\r\n prefix: string;\r\n selectedColor?: string;\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n tooltip?: string | ((_d: any) => React.ReactNode);\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onSeriesMouseOver?: (_d: any) => void;\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onSeriesMouseClick?: (_d: any) => void;\r\n highlightedDataPoints: (string | number)[];\r\n resetSelectionOnDoubleClick: boolean;\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n detailsOnClick?: string | ((_d: any) => React.ReactNode);\r\n styles?: StyleObject;\r\n classNames?: ClassNameObject;\r\n language?: Languages;\r\n animate: AnimateDataType;\r\n dimmedOpacity: number;\r\n precision: number;\r\n}\r\n\r\nexport function Graph(props: Props) {\r\n const {\r\n data,\r\n colors,\r\n leftMargin,\r\n width,\r\n height,\r\n colorDomain,\r\n rightMargin,\r\n topMargin,\r\n bottomMargin,\r\n showLabels,\r\n tooltip,\r\n onSeriesMouseOver,\r\n selectedColor,\r\n showValues,\r\n suffix,\r\n prefix,\r\n highlightedDataPoints,\r\n onSeriesMouseClick,\r\n resetSelectionOnDoubleClick,\r\n detailsOnClick,\r\n language,\r\n styles,\r\n classNames,\r\n animate,\r\n dimmedOpacity,\r\n precision,\r\n } = props;\r\n const svgRef = useRef(null);\r\n const isInView = useInView(svgRef, {\r\n once: animate.once,\r\n amount: animate.amount,\r\n });\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const [mouseOverData, setMouseOverData] = useState<any>(undefined);\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const [mouseClickData, setMouseClickData] = useState<any>(undefined);\r\n const [eventX, setEventX] = useState<number | undefined>(undefined);\r\n const [eventY, setEventY] = useState<number | undefined>(undefined);\r\n const margin = {\r\n top: topMargin,\r\n bottom: bottomMargin,\r\n left: leftMargin,\r\n right: rightMargin,\r\n };\r\n const graphWidth = width - margin.left - margin.right;\r\n const graphHeight = height - margin.top - margin.bottom;\r\n\r\n const treeMapData = [\r\n {\r\n id: 'root',\r\n parent: undefined,\r\n value: undefined,\r\n data: undefined,\r\n },\r\n ...data.map((d: TreeMapDataType) => ({\r\n id: d.label,\r\n value: d.size,\r\n parent: 'root',\r\n data: d,\r\n })),\r\n ];\r\n const treeData = stratify()\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n .id((d: any) => d.id)\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n .parentId((d: any) => d.parent)(treeMapData);\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n treeData.sum((d: any) => d.value);\r\n const treeMapVizData = treemap().size([graphWidth, graphHeight]).padding(2)(treeData);\r\n\r\n return (\r\n <>\r\n <motion.svg\r\n width={`${width}px`}\r\n height={`${height}px`}\r\n viewBox={`0 0 ${width} ${height}`}\r\n direction='ltr'\r\n ref={svgRef}\r\n >\r\n <g transform={`translate(${margin.left},${margin.top})`}>\r\n <AnimatePresence>\r\n {treeMapVizData.children?.map(d => {\r\n return (\r\n <motion.g\r\n className='undp-viz-g-with-hover'\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n key={(d.data as any).id}\r\n variants={{\r\n initial: {\r\n opacity: 0,\r\n x: d.x0,\r\n y: d.y0,\r\n },\r\n whileInView: {\r\n opacity: selectedColor\r\n ? // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n (d.data as any).data.color\r\n ? colors[\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n colorDomain.indexOf((d.data as any).data.color)\r\n ] === selectedColor\r\n ? 1\r\n : dimmedOpacity\r\n : dimmedOpacity\r\n : highlightedDataPoints.length !== 0\r\n ? // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n highlightedDataPoints.indexOf((d.data as any).id) !== -1\r\n ? 0.85\r\n : dimmedOpacity\r\n : 0.85,\r\n x: d.x0,\r\n y: d.y0,\r\n transition: { duration: animate.duration },\r\n },\r\n }}\r\n initial='initial'\r\n animate={isInView ? 'whileInView' : 'initial'}\r\n exit={{ opacity: 0, transition: { duration: animate.duration } }}\r\n onMouseEnter={event => {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n setMouseOverData((d.data as any).data);\r\n setEventY(event.clientY);\r\n setEventX(event.clientX);\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onSeriesMouseOver?.((d.data as any).data);\r\n }}\r\n onClick={() => {\r\n if (onSeriesMouseClick || detailsOnClick) {\r\n if (\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n mouseClickData === (d.data as any).id &&\r\n resetSelectionOnDoubleClick\r\n ) {\r\n setMouseClickData(undefined);\r\n onSeriesMouseClick?.(undefined);\r\n } else {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n setMouseClickData((d.data as any).id);\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onSeriesMouseClick?.((d.data as any).data);\r\n }\r\n }\r\n }}\r\n onMouseMove={event => {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n setMouseOverData((d.data as any).data);\r\n setEventY(event.clientY);\r\n setEventX(event.clientX);\r\n }}\r\n onMouseLeave={() => {\r\n setMouseOverData(undefined);\r\n setEventX(undefined);\r\n setEventY(undefined);\r\n onSeriesMouseOver?.(undefined);\r\n }}\r\n >\r\n <motion.rect\r\n x={0}\r\n y={0}\r\n exit={{\r\n width: 0,\r\n height: 0,\r\n opacity: 0,\r\n transition: { duration: animate.duration },\r\n }}\r\n variants={{\r\n initial: {\r\n width: 0,\r\n height: 0,\r\n fill:\r\n data.filter(el => el.color).length === 0\r\n ? colors[0]\r\n : // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n !(d.data as any).data.color\r\n ? Colors.gray\r\n : colors[\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n colorDomain.indexOf((d.data as any).data.color)\r\n ],\r\n },\r\n whileInView: {\r\n width: d.x1 - d.x0,\r\n height: d.y1 - d.y0,\r\n fill:\r\n data.filter(el => el.color).length === 0\r\n ? colors[0]\r\n : // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n !(d.data as any).data.color\r\n ? Colors.gray\r\n : colors[\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n colorDomain.indexOf((d.data as any).data.color)\r\n ],\r\n transition: { duration: animate.duration },\r\n },\r\n }}\r\n initial='initial'\r\n animate={isInView ? 'whileInView' : 'initial'}\r\n />\r\n {d.x1 - d.x0 > 50 && d.y1 - d.y0 > 25 && (showLabels || showValues) ? (\r\n <motion.g\r\n variants={{\r\n initial: { opacity: 0 },\r\n whileInView: {\r\n opacity: 1,\r\n transition: { duration: animate.duration },\r\n },\r\n }}\r\n initial='initial'\r\n animate={isInView ? 'whileInView' : 'initial'}\r\n exit={{ opacity: 0, transition: { duration: animate.duration } }}\r\n >\r\n <foreignObject y={0} x={0} width={d.x1 - d.x0} height={d.y1 - d.y0}>\r\n <div\r\n className='flex flex-col gap-0.5 p-2 w-full'\r\n style={{\r\n color: getTextColorBasedOnBgColor(\r\n data.filter(el => el.color).length === 0\r\n ? colors[0]\r\n : // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n !(d.data as any).data.color\r\n ? Colors.gray\r\n : colors[\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n colorDomain.indexOf((d.data as any).data.color)\r\n ],\r\n ),\r\n }}\r\n >\r\n {showLabels ? (\r\n <P\r\n marginBottom='none'\r\n size='sm'\r\n leading='none'\r\n className={cn(\r\n 'w-full treemap-label',\r\n language === 'ar' || language === 'he' ? 'text-right' : 'text-left',\r\n classNames?.graphObjectValues,\r\n )}\r\n style={{\r\n WebkitLineClamp:\r\n d.y1 - d.y0 > 50\r\n ? d.y1 - d.y0 > 100\r\n ? d.y1 - d.y0 > 150\r\n ? undefined\r\n : 3\r\n : 2\r\n : 1,\r\n display: '-webkit-box',\r\n WebkitBoxOrient: 'vertical',\r\n overflow: 'hidden',\r\n color: getTextColorBasedOnBgColor(\r\n data.filter(el => el.color).length === 0\r\n ? colors[0]\r\n : // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n !(d.data as any).data.color\r\n ? Colors.gray\r\n : colors[\r\n colorDomain.indexOf(\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n (d.data as any).data.color,\r\n )\r\n ],\r\n ),\r\n ...(styles?.graphObjectValues || {}),\r\n }}\r\n >\r\n {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n (d.data as any).id\r\n }\r\n </P>\r\n ) : null}\r\n {showValues ? (\r\n <P\r\n marginBottom='none'\r\n size='sm'\r\n leading='none'\r\n className={cn(\r\n 'w-full font-bold treemap-value',\r\n language === 'ar' || language === 'he' ? 'text-right' : 'text-left',\r\n classNames?.graphObjectValues,\r\n )}\r\n style={{\r\n color: getTextColorBasedOnBgColor(\r\n data.filter(el => el.color).length === 0\r\n ? colors[0]\r\n : // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n !(d.data as any).data.color\r\n ? Colors.gray\r\n : colors[\r\n colorDomain.indexOf(\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n (d.data as any).data.color,\r\n )\r\n ],\r\n ),\r\n ...(styles?.graphObjectValues || {}),\r\n }}\r\n >\r\n {numberFormattingFunction(\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n (d.data as any).value,\r\n 'NA',\r\n precision,\r\n prefix,\r\n suffix,\r\n )}\r\n </P>\r\n ) : null}\r\n </div>\r\n </foreignObject>\r\n </motion.g>\r\n ) : null}\r\n </motion.g>\r\n );\r\n })}\r\n </AnimatePresence>\r\n </g>\r\n </motion.svg>\r\n {mouseOverData && tooltip && eventX && eventY ? (\r\n <Tooltip\r\n data={mouseOverData}\r\n body={tooltip}\r\n xPos={eventX}\r\n yPos={eventY}\r\n backgroundStyle={styles?.tooltip}\r\n className={classNames?.tooltip}\r\n />\r\n ) : null}\r\n {detailsOnClick && mouseClickData !== undefined ? (\r\n <Modal\r\n open={mouseClickData !== undefined}\r\n onClose={() => {\r\n setMouseClickData(undefined);\r\n }}\r\n >\r\n <div\r\n className='graph-modal-content m-0'\r\n dangerouslySetInnerHTML={\r\n typeof detailsOnClick === 'string'\r\n ? { __html: string2HTML(detailsOnClick, mouseClickData) }\r\n : undefined\r\n }\r\n >\r\n {typeof detailsOnClick === 'function' ? detailsOnClick(mouseClickData) : null}\r\n </div>\r\n </Modal>\r\n ) : null}\r\n </>\r\n );\r\n}\r\n","import { useState, useRef, useEffect } from 'react';\r\n\r\nimport { Graph } from './Graph';\r\n\r\nimport { checkIfNullOrUndefined } from '@/Utils/checkIfNullOrUndefined';\r\nimport {\r\n TreeMapDataType,\r\n SourcesDataType,\r\n Languages,\r\n StyleObject,\r\n ClassNameObject,\r\n AnimateDataType,\r\n} from '@/Types';\r\nimport { GraphFooter } from '@/Components/Elements/GraphFooter';\r\nimport { GraphHeader } from '@/Components/Elements/GraphHeader';\r\nimport { ColorLegendWithMouseOver } from '@/Components/Elements/ColorLegendWithMouseOver';\r\nimport { Colors } from '@/Components/ColorPalette';\r\nimport { EmptyState } from '@/Components/Elements/EmptyState';\r\nimport { uniqBy } from '@/Utils/uniqBy';\r\nimport { GraphArea, GraphContainer } from '@/Components/Elements/GraphContainer';\r\n\r\ninterface Props {\r\n // Data\r\n /** Array of data objects */\r\n data: TreeMapDataType[];\r\n\r\n // Titles, Labels, and Sources\r\n /** Title of the graph */\r\n graphTitle?: string | React.ReactNode;\r\n /** Description of the graph */\r\n graphDescription?: string | React.ReactNode;\r\n /** Footnote for the graph */\r\n footNote?: string | React.ReactNode;\r\n /** Source data for the graph */\r\n sources?: SourcesDataType[];\r\n /** Accessibility label */\r\n ariaLabel?: string;\r\n\r\n // Colors and Styling\r\n /** Color or array of colors for circle */\r\n colors?: string | string[];\r\n /** Domain of colors for the graph */\r\n colorDomain?: string[];\r\n /** Title for the color legend */\r\n colorLegendTitle?: string;\r\n /** Background color of the graph */\r\n backgroundColor?: string | boolean;\r\n /** Custom styles for the graph. Each object should be a valid React CSS style object. */\r\n styles?: StyleObject;\r\n /** Custom class names */\r\n classNames?: ClassNameObject;\r\n\r\n // Size and Spacing\r\n /** Width of the graph */\r\n width?: number;\r\n /** Height of the graph */\r\n height?: number;\r\n /** Minimum height of the graph */\r\n minHeight?: number;\r\n /** Relative height scaling factor. This overwrites the height props */\r\n relativeHeight?: number;\r\n /** Padding around the graph. Defaults to 0 if no backgroundColor is mentioned else defaults to 1rem */\r\n padding?: string;\r\n /** Left margin of the graph */\r\n leftMargin?: number;\r\n /** Right margin of the graph */\r\n rightMargin?: number;\r\n /** Top margin of the graph */\r\n topMargin?: number;\r\n /** Bottom margin of the graph */\r\n bottomMargin?: number;\r\n /** Maximum radius of the circle */\r\n\r\n // Values and Ticks\r\n /** Prefix for values */\r\n prefix?: string;\r\n /** Suffix for values */\r\n suffix?: string;\r\n\r\n // Graph Parameters\r\n /** Toggle visibility of labels */\r\n showLabels?: boolean;\r\n /** Toggle visibility of values */\r\n showValues?: boolean;\r\n /** Toggle visibility of color scale. This is only applicable if the data props hae color parameter */\r\n showColorScale?: boolean;\r\n /** Toggle visibility of NA color in the color scale. This is only applicable if the data props hae color parameter and showColorScale prop is true */\r\n showNAColor?: boolean;\r\n /** Data points to highlight. Use the label value from data to highlight the data point */\r\n highlightedDataPoints?: (string | number)[];\r\n /** Defines the opacity of the non-highlighted data */\r\n dimmedOpacity?: number;\r\n /** Toggles if the graph animates in when loaded. */\r\n animate?: boolean | AnimateDataType;\r\n /** Specifies the number of decimal places to display in the value. */\r\n precision?: number;\r\n /** Enable graph download option as png */\r\n graphDownload?: boolean;\r\n /** Enable data download option as a csv */\r\n dataDownload?: boolean;\r\n /** Reset selection on double-click. Only applicable when used in a dashboard context with filters. */\r\n resetSelectionOnDoubleClick?: boolean;\r\n\r\n // Interactions and Callbacks\r\n /** Tooltip content. If the type is string then this uses the [handlebar](../?path=/docs/misc-handlebars-templates-and-custom-helpers--docs) template to display the data */\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n tooltip?: string | ((_d: any) => React.ReactNode);\r\n /** Details displayed on the modal when user clicks of a data point. If the type is string then this uses the [handlebar](../?path=/docs/misc-handlebars-templates-and-custom-helpers--docs) template to display the data */\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n detailsOnClick?: string | ((_d: any) => React.ReactNode);\r\n /** Callback for mouse over event */\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onSeriesMouseOver?: (_d: any) => void;\r\n /** Callback for mouse click event */\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onSeriesMouseClick?: (_d: any) => void;\r\n\r\n // Configuration and Options\r\n /** Language setting */\r\n language?: Languages;\r\n /** Color theme */\r\n theme?: 'light' | 'dark';\r\n /** Unique ID for the graph */\r\n graphID?: string;\r\n}\r\n\r\nexport function TreeMapGraph(props: Props) {\r\n const {\r\n data,\r\n graphTitle,\r\n colors,\r\n suffix = '',\r\n sources,\r\n prefix = '',\r\n graphDescription,\r\n leftMargin = 0,\r\n rightMargin = 0,\r\n topMargin = 0,\r\n bottomMargin = 0,\r\n height,\r\n width,\r\n footNote,\r\n colorDomain,\r\n colorLegendTitle,\r\n padding,\r\n backgroundColor = false,\r\n showLabels = true,\r\n relativeHeight,\r\n tooltip,\r\n onSeriesMouseOver,\r\n showColorScale = true,\r\n showValues = true,\r\n graphID,\r\n highlightedDataPoints = [],\r\n onSeriesMouseClick,\r\n graphDownload = false,\r\n dataDownload = false,\r\n language = 'en',\r\n showNAColor = true,\r\n minHeight = 0,\r\n theme = 'light',\r\n ariaLabel,\r\n resetSelectionOnDoubleClick = true,\r\n detailsOnClick,\r\n styles,\r\n classNames,\r\n animate = false,\r\n dimmedOpacity = 0.3,\r\n precision = 2,\r\n } = props;\r\n const [svgWidth, setSvgWidth] = useState(0);\r\n const [svgHeight, setSvgHeight] = useState(0);\r\n const [selectedColor, setSelectedColor] = useState<string | undefined>(undefined);\r\n\r\n const graphDiv = useRef<HTMLDivElement>(null);\r\n const graphParentDiv = useRef<HTMLDivElement>(null);\r\n useEffect(() => {\r\n const resizeObserver = new ResizeObserver(entries => {\r\n setSvgWidth(entries[0].target.clientWidth || 620);\r\n setSvgHeight(entries[0].target.clientHeight || 480);\r\n });\r\n if (graphDiv.current) {\r\n resizeObserver.observe(graphDiv.current);\r\n }\r\n return () => resizeObserver.disconnect();\r\n }, []);\r\n return (\r\n <GraphContainer\r\n className={classNames?.graphContainer}\r\n style={styles?.graphContainer}\r\n id={graphID}\r\n ref={graphParentDiv}\r\n aria-label={ariaLabel}\r\n backgroundColor={backgroundColor}\r\n theme={theme}\r\n language={language}\r\n minHeight={minHeight}\r\n width={width}\r\n height={height}\r\n relativeHeight={relativeHeight}\r\n padding={padding}\r\n >\r\n {graphTitle || graphDescription || graphDownload || dataDownload ? (\r\n <GraphHeader\r\n styles={{\r\n title: styles?.title,\r\n description: styles?.description,\r\n }}\r\n classNames={{\r\n title: classNames?.title,\r\n description: classNames?.description,\r\n }}\r\n graphTitle={graphTitle}\r\n graphDescription={graphDescription}\r\n width={width}\r\n graphDownload={graphDownload ? graphParentDiv : undefined}\r\n dataDownload={\r\n dataDownload\r\n ? data.map(d => d.data).filter(d => d !== undefined).length > 0\r\n ? data.map(d => d.data).filter(d => d !== undefined)\r\n : data.filter(d => d !== undefined)\r\n : null\r\n }\r\n />\r\n ) : null}\r\n {data.length === 0 ? (\r\n <EmptyState />\r\n ) : (\r\n <>\r\n {showColorScale && data.filter(el => el.color).length !== 0 ? (\r\n <ColorLegendWithMouseOver\r\n width={width}\r\n colorLegendTitle={colorLegendTitle}\r\n colors={(colors as string[] | undefined) || Colors[theme].categoricalColors.colors}\r\n colorDomain={colorDomain || (uniqBy(data, 'color', true) as string[])}\r\n setSelectedColor={setSelectedColor}\r\n showNAColor={showNAColor}\r\n className={classNames?.colorLegend}\r\n />\r\n ) : null}\r\n <GraphArea ref={graphDiv}>\r\n {svgWidth && svgHeight ? (\r\n <Graph\r\n data={data.filter(d => !checkIfNullOrUndefined(d.size))}\r\n colors={\r\n data.filter(el => el.color).length === 0\r\n ? colors\r\n ? [colors as string]\r\n : [Colors.primaryColors['blue-600']]\r\n : (colors as string[] | undefined) || Colors[theme].categoricalColors.colors\r\n }\r\n colorDomain={\r\n data.filter(el => el.color).length === 0\r\n ? []\r\n : colorDomain || (uniqBy(data, 'color', true) as string[])\r\n }\r\n width={svgWidth}\r\n height={svgHeight}\r\n leftMargin={leftMargin}\r\n rightMargin={rightMargin}\r\n topMargin={topMargin}\r\n bottomMargin={bottomMargin}\r\n showLabels={showLabels}\r\n showValues={showValues}\r\n suffix={suffix}\r\n prefix={prefix}\r\n selectedColor={selectedColor}\r\n tooltip={tooltip}\r\n onSeriesMouseOver={onSeriesMouseOver}\r\n onSeriesMouseClick={onSeriesMouseClick}\r\n highlightedDataPoints={highlightedDataPoints}\r\n resetSelectionOnDoubleClick={resetSelectionOnDoubleClick}\r\n detailsOnClick={detailsOnClick}\r\n styles={styles}\r\n classNames={classNames}\r\n language={language}\r\n animate={\r\n animate === true\r\n ? { duration: 0.5, once: true, amount: 0.5 }\r\n : animate || { duration: 0, once: true, amount: 0 }\r\n }\r\n dimmedOpacity={dimmedOpacity}\r\n precision={precision}\r\n />\r\n ) : null}\r\n </GraphArea>\r\n </>\r\n )}\r\n {sources || footNote ? (\r\n <GraphFooter\r\n styles={{ footnote: styles?.footnote, source: styles?.source }}\r\n classNames={{\r\n footnote: classNames?.footnote,\r\n source: classNames?.source,\r\n }}\r\n sources={sources}\r\n footNote={footNote}\r\n width={width}\r\n />\r\n ) : null}\r\n </GraphContainer>\r\n );\r\n}\r\n"],"names":["count","node","sum","children","node_count","node_each","callback","that","index","node_eachBefore","nodes","i","node_eachAfter","next","n","node_find","node_sum","value","node_sort","compare","node_path","end","start","ancestor","leastCommonAncestor","k","a","b","aNodes","bNodes","c","node_ancestors","node_descendants","node_leaves","leaves","node_links","root","links","node_iterator","current","hierarchy","data","mapChildren","objectChildren","Node","child","childs","computeHeight","node_copy","copyData","d","height","optional","f","required","constantZero","constant","x","roundNode","treemapDice","parent","x0","y0","x1","y1","preroot","ambiguous","imputed","defaultId","defaultParentId","stratify","id","parentId","path","currentId","currentParentId","nodeId","nodeKey","nodeByKey","I","normalize","P","parentof","S","_","slash","treemapSlice","phi","squarifyRatio","ratio","rows","row","nodeValue","i0","i1","dx","dy","sumValue","minValue","maxValue","newRatio","minRatio","alpha","beta","squarify","custom","treemap","tile","round","paddingStack","paddingInner","paddingTop","paddingRight","paddingBottom","paddingLeft","positionNode","p","Graph","props","$","_c","colors","leftMargin","width","colorDomain","rightMargin","topMargin","bottomMargin","showLabels","tooltip","onSeriesMouseOver","selectedColor","showValues","suffix","prefix","highlightedDataPoints","onSeriesMouseClick","resetSelectionOnDoubleClick","detailsOnClick","language","styles","classNames","animate","dimmedOpacity","precision","svgRef","useRef","t0","amount","once","isInView","useInView","mouseOverData","setMouseOverData","useState","undefined","mouseClickData","setMouseClickData","eventX","setEventX","eventY","setEventY","t1","top","bottom","left","right","margin","graphWidth","graphHeight","T0","T1","t2","t3","t4","t5","t6","t7","t8","duration","graphObjectValues","treeMapData","map","_temp","treeData","_temp2","_temp3","_temp4","treeMapVizData","size","padding","motion","svg","AnimatePresence","d_3","jsxs","initial","opacity","y","whileInView","color","indexOf","length","transition","event","clientY","clientX","event_0","jsx","fill","filter","_temp5","Colors","gray","_temp6","getTextColorBasedOnBgColor","_temp7","cn","WebkitLineClamp","display","WebkitBoxOrient","overflow","_temp8","_temp9","numberFormattingFunction","t9","t10","t11","t12","Tooltip","t13","Modal","__html","string2HTML","t14","Fragment","el_3","el","el_2","el_1","el_0","d_2","d_1","d_0","label","TreeMapGraph","graphTitle","sources","graphDescription","footNote","colorLegendTitle","backgroundColor","relativeHeight","showColorScale","graphID","graphDownload","dataDownload","showNAColor","minHeight","t15","theme","t16","ariaLabel","t17","t18","t19","t20","t21","svgWidth","setSvgWidth","svgHeight","setSvgHeight","setSelectedColor","graphDiv","graphParentDiv","t22","t23","Symbol","for","resizeObserver","ResizeObserver","entries","target","clientWidth","clientHeight","observe","disconnect","useEffect","t24","graphContainer","t25","t26","description","title","GraphHeader","t27","EmptyState","ColorLegendWithMouseOver","categoricalColors","uniqBy","colorLegend","GraphArea","primaryColors","t28","footnote","source","GraphFooter","t29","GraphContainer","d_4","checkIfNullOrUndefined"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21]}
@@ -35,6 +35,7 @@ declare interface ClassNameObject {
35
35
  mouseOverLine?: string;
36
36
  regLine?: string;
37
37
  dataCards?: string;
38
+ colorLegend?: string;
38
39
  }
39
40
 
40
41
  declare type Languages = 'en' | 'ar' | 'az' | 'bn' | 'cy' | 'he' | 'hi' | 'jp' | 'ka' | 'km' | 'ko' | 'my' | 'ne' | 'zh' | 'custom';