@undp/data-viz 2.5.3 → 2.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (444) hide show
  1. package/dist/AreaChart.cjs +1 -1
  2. package/dist/AreaChart.cjs.map +1 -1
  3. package/dist/AreaChart.js +17 -16
  4. package/dist/AreaChart.js.map +1 -1
  5. package/dist/Axis-DY7jsk1Y.cjs +2 -0
  6. package/dist/{Axis-BTaS9oPQ.cjs.map → Axis-DY7jsk1Y.cjs.map} +1 -1
  7. package/dist/{Axis-CNZYWzH0.js → Axis-RRx-0Rlw.js} +9 -8
  8. package/dist/{Axis-CNZYWzH0.js.map → Axis-RRx-0Rlw.js.map} +1 -1
  9. package/dist/AxisTitle-B9F80_Z0.js +30 -0
  10. package/dist/AxisTitle-B9F80_Z0.js.map +1 -0
  11. package/dist/AxisTitle-CyFFbdNU.cjs +2 -0
  12. package/dist/{AxisTitle-DP_evhbe.cjs.map → AxisTitle-CyFFbdNU.cjs.map} +1 -1
  13. package/dist/BarGraph.cjs +1 -1
  14. package/dist/BarGraph.cjs.map +1 -1
  15. package/dist/BarGraph.js +203 -201
  16. package/dist/BarGraph.js.map +1 -1
  17. package/dist/BasicStatCard.cjs +1 -1
  18. package/dist/BasicStatCard.cjs.map +1 -1
  19. package/dist/BasicStatCard.js +15 -14
  20. package/dist/BasicStatCard.js.map +1 -1
  21. package/dist/BeeSwarmChart.cjs +1 -1
  22. package/dist/BeeSwarmChart.cjs.map +1 -1
  23. package/dist/BeeSwarmChart.js +60 -59
  24. package/dist/BeeSwarmChart.js.map +1 -1
  25. package/dist/BiVariateChoroplethMap.cjs +1 -1
  26. package/dist/BiVariateChoroplethMap.cjs.map +1 -1
  27. package/dist/BiVariateChoroplethMap.js +88 -86
  28. package/dist/BiVariateChoroplethMap.js.map +1 -1
  29. package/dist/BulletChart.cjs +1 -1
  30. package/dist/BulletChart.cjs.map +1 -1
  31. package/dist/BulletChart.js +88 -86
  32. package/dist/BulletChart.js.map +1 -1
  33. package/dist/ButterflyChart.cjs +1 -1
  34. package/dist/ButterflyChart.cjs.map +1 -1
  35. package/dist/ButterflyChart.js +100 -98
  36. package/dist/ButterflyChart.js.map +1 -1
  37. package/dist/ChoroplethMap.cjs +1 -1
  38. package/dist/ChoroplethMap.cjs.map +1 -1
  39. package/dist/ChoroplethMap.js +266 -243
  40. package/dist/ChoroplethMap.js.map +1 -1
  41. package/dist/CirclePackingGraph.cjs +1 -1
  42. package/dist/CirclePackingGraph.js +4 -4
  43. package/dist/ColorLegend.cjs +1 -1
  44. package/dist/ColorLegend.cjs.map +1 -1
  45. package/dist/ColorLegend.js +17 -16
  46. package/dist/ColorLegend.js.map +1 -1
  47. package/dist/ColorLegendWithMouseOver.cjs +1 -1
  48. package/dist/ColorLegendWithMouseOver.cjs.map +1 -1
  49. package/dist/ColorLegendWithMouseOver.js +13 -12
  50. package/dist/ColorLegendWithMouseOver.js.map +1 -1
  51. package/dist/Colors.cjs +1 -1
  52. package/dist/Colors.cjs.map +1 -1
  53. package/dist/Colors.d.ts +16 -0
  54. package/dist/Colors.js +16 -0
  55. package/dist/Colors.js.map +1 -1
  56. package/dist/CopyTextButton.cjs +1 -1
  57. package/dist/CopyTextButton.cjs.map +1 -1
  58. package/dist/CopyTextButton.js +37 -754
  59. package/dist/CopyTextButton.js.map +1 -1
  60. package/dist/CsvDownloadButton.cjs +4 -4
  61. package/dist/CsvDownloadButton.cjs.map +1 -1
  62. package/dist/CsvDownloadButton.js +47 -45
  63. package/dist/CsvDownloadButton.js.map +1 -1
  64. package/dist/DataCards.cjs +1 -1
  65. package/dist/DataCards.cjs.map +1 -1
  66. package/dist/DataCards.js +213 -467
  67. package/dist/DataCards.js.map +1 -1
  68. package/dist/DataTable.cjs +1 -1
  69. package/dist/DataTable.cjs.map +1 -1
  70. package/dist/DataTable.js +19 -19
  71. package/dist/DetailsModal-BmjtLqrZ.cjs +2 -0
  72. package/dist/{DetailsModal-Du8Fr1QD.cjs.map → DetailsModal-BmjtLqrZ.cjs.map} +1 -1
  73. package/dist/{DetailsModal-GqEbGHY2.js → DetailsModal-k-Me_U_T.js} +3 -3
  74. package/dist/{DetailsModal-GqEbGHY2.js.map → DetailsModal-k-Me_U_T.js.map} +1 -1
  75. package/dist/DifferenceLineChart.cjs +1 -1
  76. package/dist/DifferenceLineChart.cjs.map +1 -1
  77. package/dist/DifferenceLineChart.js +61 -60
  78. package/dist/DifferenceLineChart.js.map +1 -1
  79. package/dist/DonutChart.cjs +1 -1
  80. package/dist/DonutChart.cjs.map +1 -1
  81. package/dist/DonutChart.js +47 -46
  82. package/dist/DonutChart.js.map +1 -1
  83. package/dist/DotDensityMap.cjs +1 -1
  84. package/dist/DotDensityMap.cjs.map +1 -1
  85. package/dist/DotDensityMap.js +112 -110
  86. package/dist/DotDensityMap.js.map +1 -1
  87. package/dist/DualAxisLineChart.cjs +1 -1
  88. package/dist/DualAxisLineChart.cjs.map +1 -1
  89. package/dist/DualAxisLineChart.js +13 -12
  90. package/dist/DualAxisLineChart.js.map +1 -1
  91. package/dist/DumbbellChart.cjs +1 -1
  92. package/dist/DumbbellChart.cjs.map +1 -1
  93. package/dist/DumbbellChart.js +104 -102
  94. package/dist/DumbbellChart.js.map +1 -1
  95. package/dist/EmptyState-BoaUUuo6.cjs +2 -0
  96. package/dist/{EmptyState-CFmiFPHz.cjs.map → EmptyState-BoaUUuo6.cjs.map} +1 -1
  97. package/dist/{EmptyState-CaxXCkiN.js → EmptyState-prZ8OnEs.js} +4 -4
  98. package/dist/{EmptyState-CaxXCkiN.js.map → EmptyState-prZ8OnEs.js.map} +1 -1
  99. package/dist/ExcelDownloadButton.cjs +1 -1
  100. package/dist/ExcelDownloadButton.cjs.map +1 -1
  101. package/dist/ExcelDownloadButton.js +15 -13
  102. package/dist/ExcelDownloadButton.js.map +1 -1
  103. package/dist/FootNote.cjs +1 -1
  104. package/dist/FootNote.cjs.map +1 -1
  105. package/dist/FootNote.js +10 -9
  106. package/dist/FootNote.js.map +1 -1
  107. package/dist/GeoHubCompareMaps.cjs +1 -1
  108. package/dist/GeoHubCompareMaps.cjs.map +1 -1
  109. package/dist/GeoHubCompareMaps.js +14 -14
  110. package/dist/GeoHubMap.cjs +1 -1
  111. package/dist/GeoHubMap.cjs.map +1 -1
  112. package/dist/GeoHubMap.js +59 -59
  113. package/dist/GeoHubMapWithLayerSelection.cjs +1 -1
  114. package/dist/GeoHubMapWithLayerSelection.cjs.map +1 -1
  115. package/dist/GeoHubMapWithLayerSelection.js +50 -50
  116. package/dist/{GraphContainer-B8ZqOzKI.js → GraphContainer-DcOM2CI6.js} +28 -27
  117. package/dist/GraphContainer-DcOM2CI6.js.map +1 -0
  118. package/dist/GraphContainer-gaG9TSy4.cjs +2 -0
  119. package/dist/{GraphContainer-Cul9b74X.cjs.map → GraphContainer-gaG9TSy4.cjs.map} +1 -1
  120. package/dist/GraphDescription.cjs +1 -1
  121. package/dist/GraphDescription.cjs.map +1 -1
  122. package/dist/GraphDescription.js +14 -13
  123. package/dist/GraphDescription.js.map +1 -1
  124. package/dist/{GraphEl-Ch0uAeZw.js → GraphEl-C7KBBHvB.js} +9 -9
  125. package/dist/{GraphEl-Ch0uAeZw.js.map → GraphEl-C7KBBHvB.js.map} +1 -1
  126. package/dist/GraphEl-CGALp07K.cjs +2 -0
  127. package/dist/{GraphEl-BgkDbq50.cjs.map → GraphEl-CGALp07K.cjs.map} +1 -1
  128. package/dist/GraphFooter.cjs +1 -1
  129. package/dist/GraphFooter.cjs.map +1 -1
  130. package/dist/GraphFooter.js +2 -2
  131. package/dist/GraphHeader.cjs +1 -1
  132. package/dist/GraphHeader.cjs.map +1 -1
  133. package/dist/GraphHeader.js +1 -1
  134. package/dist/GraphTitle.cjs +1 -1
  135. package/dist/GraphTitle.cjs.map +1 -1
  136. package/dist/GraphTitle.js +14 -13
  137. package/dist/GraphTitle.js.map +1 -1
  138. package/dist/GriddedGraphs.cjs +1 -1
  139. package/dist/GriddedGraphs.cjs.map +1 -1
  140. package/dist/GriddedGraphs.js +58 -55
  141. package/dist/GriddedGraphs.js.map +1 -1
  142. package/dist/GriddedGraphsFromConfig.cjs +1 -1
  143. package/dist/GriddedGraphsFromConfig.cjs.map +1 -1
  144. package/dist/GriddedGraphsFromConfig.js +15 -15
  145. package/dist/HeatMap.cjs +1 -1
  146. package/dist/HeatMap.cjs.map +1 -1
  147. package/dist/HeatMap.js +17 -16
  148. package/dist/HeatMap.js.map +1 -1
  149. package/dist/Histogram.cjs +1 -1
  150. package/dist/Histogram.cjs.map +1 -1
  151. package/dist/Histogram.js +3 -3
  152. package/dist/HybridMap.cjs +1 -1
  153. package/dist/HybridMap.cjs.map +1 -1
  154. package/dist/HybridMap.js +409 -420
  155. package/dist/HybridMap.js.map +1 -1
  156. package/dist/ImageDownloadButton.cjs +1 -1
  157. package/dist/ImageDownloadButton.cjs.map +1 -1
  158. package/dist/ImageDownloadButton.js +16 -14
  159. package/dist/ImageDownloadButton.js.map +1 -1
  160. package/dist/LineChartWithConfidenceInterval.cjs +1 -1
  161. package/dist/LineChartWithConfidenceInterval.cjs.map +1 -1
  162. package/dist/LineChartWithConfidenceInterval.js +16 -15
  163. package/dist/LineChartWithConfidenceInterval.js.map +1 -1
  164. package/dist/LinearColorLegend.cjs +1 -1
  165. package/dist/LinearColorLegend.cjs.map +1 -1
  166. package/dist/LinearColorLegend.js +5 -4
  167. package/dist/LinearColorLegend.js.map +1 -1
  168. package/dist/MultiGraphDashboard.cjs +1 -1
  169. package/dist/MultiGraphDashboard.cjs.map +1 -1
  170. package/dist/MultiGraphDashboard.js +62 -60
  171. package/dist/MultiGraphDashboard.js.map +1 -1
  172. package/dist/MultiGraphDashboardFromConfig.cjs +1 -1
  173. package/dist/MultiGraphDashboardFromConfig.cjs.map +1 -1
  174. package/dist/MultiGraphDashboardFromConfig.js +7 -7
  175. package/dist/MultiGraphDashboardWideToLongFormat.cjs +1 -1
  176. package/dist/MultiGraphDashboardWideToLongFormat.cjs.map +1 -1
  177. package/dist/MultiGraphDashboardWideToLongFormat.js +21 -21
  178. package/dist/MultiGraphDashboardWideToLongFormat.js.map +1 -1
  179. package/dist/MultiGraphDashboardWideToLongFormatFromConfig.cjs +1 -1
  180. package/dist/MultiGraphDashboardWideToLongFormatFromConfig.cjs.map +1 -1
  181. package/dist/MultiGraphDashboardWideToLongFormatFromConfig.js +3 -3
  182. package/dist/MultiLineAltChart.cjs +1 -1
  183. package/dist/MultiLineAltChart.cjs.map +1 -1
  184. package/dist/MultiLineAltChart.js +16 -15
  185. package/dist/MultiLineAltChart.js.map +1 -1
  186. package/dist/MultiLineChart.cjs +1 -1
  187. package/dist/MultiLineChart.cjs.map +1 -1
  188. package/dist/MultiLineChart.js +16 -15
  189. package/dist/MultiLineChart.js.map +1 -1
  190. package/dist/ParetoChart.cjs +1 -1
  191. package/dist/ParetoChart.cjs.map +1 -1
  192. package/dist/ParetoChart.js +14 -13
  193. package/dist/ParetoChart.js.map +1 -1
  194. package/dist/PerformanceIntensiveMultiGraphDashboard.cjs +1 -1
  195. package/dist/PerformanceIntensiveMultiGraphDashboard.cjs.map +1 -1
  196. package/dist/PerformanceIntensiveMultiGraphDashboard.js +67 -65
  197. package/dist/PerformanceIntensiveMultiGraphDashboard.js.map +1 -1
  198. package/dist/PerformanceIntensiveMultiGraphDashboardFromConfig.cjs +1 -1
  199. package/dist/PerformanceIntensiveMultiGraphDashboardFromConfig.cjs.map +1 -1
  200. package/dist/PerformanceIntensiveMultiGraphDashboardFromConfig.js +8 -8
  201. package/dist/PerformanceIntensiveScrollStory.cjs +1 -1
  202. package/dist/PerformanceIntensiveScrollStory.cjs.map +1 -1
  203. package/dist/PerformanceIntensiveScrollStory.js +3 -3
  204. package/dist/RadarChart.cjs +1 -1
  205. package/dist/RadarChart.cjs.map +1 -1
  206. package/dist/RadarChart.js +11 -10
  207. package/dist/RadarChart.js.map +1 -1
  208. package/dist/ReferenceLine-CxITVT1K.cjs +2 -0
  209. package/dist/{ReferenceLine-CpU4G01Y.cjs.map → ReferenceLine-CxITVT1K.cjs.map} +1 -1
  210. package/dist/{ReferenceLine-D41VuUhE.js → ReferenceLine-NF4g3Reh.js} +26 -25
  211. package/dist/ReferenceLine-NF4g3Reh.js.map +1 -0
  212. package/dist/RegressionLine-BQ6h-NZP.js +88 -0
  213. package/dist/RegressionLine-BQ6h-NZP.js.map +1 -0
  214. package/dist/RegressionLine-BpcVBjL0.cjs +2 -0
  215. package/dist/{RegressionLine-BFoBiVJk.cjs.map → RegressionLine-BpcVBjL0.cjs.map} +1 -1
  216. package/dist/SVGDownloadButton.cjs +1 -1
  217. package/dist/SVGDownloadButton.cjs.map +1 -1
  218. package/dist/SVGDownloadButton.js +11 -9
  219. package/dist/SVGDownloadButton.js.map +1 -1
  220. package/dist/SankeyChart.cjs +1 -1
  221. package/dist/SankeyChart.cjs.map +1 -1
  222. package/dist/SankeyChart.js +63 -62
  223. package/dist/SankeyChart.js.map +1 -1
  224. package/dist/ScatterPlot.cjs +1 -1
  225. package/dist/ScatterPlot.cjs.map +1 -1
  226. package/dist/ScatterPlot.js +109 -107
  227. package/dist/ScatterPlot.js.map +1 -1
  228. package/dist/ScrollStory.cjs +1 -1
  229. package/dist/ScrollStory.cjs.map +1 -1
  230. package/dist/ScrollStory.js +3 -3
  231. package/dist/SimpleLineChart.cjs +1 -1
  232. package/dist/SimpleLineChart.cjs.map +1 -1
  233. package/dist/SimpleLineChart.js +17 -16
  234. package/dist/SimpleLineChart.js.map +1 -1
  235. package/dist/SingleGraphDashboard.cjs +1 -1
  236. package/dist/SingleGraphDashboard.cjs.map +1 -1
  237. package/dist/SingleGraphDashboard.js +59 -56
  238. package/dist/SingleGraphDashboard.js.map +1 -1
  239. package/dist/SingleGraphDashboardFromConfig.cjs +1 -1
  240. package/dist/SingleGraphDashboardFromConfig.cjs.map +1 -1
  241. package/dist/SingleGraphDashboardFromConfig.js +6 -6
  242. package/dist/SingleGraphDashboardGeoHubMaps.cjs +1 -1
  243. package/dist/SingleGraphDashboardGeoHubMaps.cjs.map +1 -1
  244. package/dist/SingleGraphDashboardGeoHubMaps.js +12 -12
  245. package/dist/SingleGraphDashboardGeoHubMapsFromConfig.cjs +1 -1
  246. package/dist/SingleGraphDashboardGeoHubMapsFromConfig.cjs.map +1 -1
  247. package/dist/SingleGraphDashboardGeoHubMapsFromConfig.js +8 -8
  248. package/dist/SingleGraphDashboardThreeDGraphs.cjs +1 -1
  249. package/dist/SingleGraphDashboardThreeDGraphs.cjs.map +1 -1
  250. package/dist/SingleGraphDashboardThreeDGraphs.js +59 -56
  251. package/dist/SingleGraphDashboardThreeDGraphs.js.map +1 -1
  252. package/dist/SingleGraphDashboardThreeDGraphsFromConfig.cjs +1 -1
  253. package/dist/SingleGraphDashboardThreeDGraphsFromConfig.cjs.map +1 -1
  254. package/dist/SingleGraphDashboardThreeDGraphsFromConfig.js +7 -7
  255. package/dist/SlopeChart.cjs +1 -1
  256. package/dist/SlopeChart.cjs.map +1 -1
  257. package/dist/SlopeChart.js +60 -59
  258. package/dist/SlopeChart.js.map +1 -1
  259. package/dist/Source.cjs +1 -1
  260. package/dist/Source.cjs.map +1 -1
  261. package/dist/Source.js +38 -4
  262. package/dist/Source.js.map +1 -1
  263. package/dist/SparkLine.cjs +1 -1
  264. package/dist/SparkLine.cjs.map +1 -1
  265. package/dist/SparkLine.js +11 -10
  266. package/dist/SparkLine.js.map +1 -1
  267. package/dist/StatCardFromData.cjs +1 -1
  268. package/dist/StatCardFromData.cjs.map +1 -1
  269. package/dist/StatCardFromData.js +15 -14
  270. package/dist/StatCardFromData.js.map +1 -1
  271. package/dist/StripChart.cjs +1 -1
  272. package/dist/StripChart.cjs.map +1 -1
  273. package/dist/StripChart.js +11 -10
  274. package/dist/StripChart.js.map +1 -1
  275. package/dist/ThreeDGlobe.cjs +1 -1
  276. package/dist/ThreeDGlobe.cjs.map +1 -1
  277. package/dist/ThreeDGlobe.js +52 -51
  278. package/dist/ThreeDGlobe.js.map +1 -1
  279. package/dist/ThresholdColorLegendWithMouseOver.cjs +1 -1
  280. package/dist/ThresholdColorLegendWithMouseOver.cjs.map +1 -1
  281. package/dist/ThresholdColorLegendWithMouseOver.js +17 -16
  282. package/dist/ThresholdColorLegendWithMouseOver.js.map +1 -1
  283. package/dist/{Tooltip-3EYDVa3w.js → Tooltip-DO56mY4b.js} +11 -10
  284. package/dist/{Tooltip-3EYDVa3w.js.map → Tooltip-DO56mY4b.js.map} +1 -1
  285. package/dist/Tooltip-DwUFLDrj.cjs +2 -0
  286. package/dist/{Tooltip-C9F3uYG0.cjs.map → Tooltip-DwUFLDrj.cjs.map} +1 -1
  287. package/dist/TreeMapGraph.cjs +1 -1
  288. package/dist/TreeMapGraph.cjs.map +1 -1
  289. package/dist/TreeMapGraph.js +34 -33
  290. package/dist/TreeMapGraph.js.map +1 -1
  291. package/dist/UnitChart.cjs +1 -1
  292. package/dist/UnitChart.cjs.map +1 -1
  293. package/dist/UnitChart.js +27 -27
  294. package/dist/WaterfallChart.cjs +1 -1
  295. package/dist/WaterfallChart.cjs.map +1 -1
  296. package/dist/WaterfallChart.js +21 -20
  297. package/dist/WaterfallChart.js.map +1 -1
  298. package/dist/XAxesLabels-0ROJnigy.cjs +2 -0
  299. package/dist/{XAxesLabels-C03jHniq.cjs.map → XAxesLabels-0ROJnigy.cjs.map} +1 -1
  300. package/dist/{XAxesLabels-B9gkjUiC.js → XAxesLabels-CPZX3OJN.js} +12 -11
  301. package/dist/XAxesLabels-CPZX3OJN.js.map +1 -0
  302. package/dist/XTicksAndGridLines-BO6KJc8d.cjs +2 -0
  303. package/dist/{XTicksAndGridLines-B4UhDVyU.cjs.map → XTicksAndGridLines-BO6KJc8d.cjs.map} +1 -1
  304. package/dist/{XTicksAndGridLines-CkYwVshF.js → XTicksAndGridLines-obTK2e7G.js} +10 -9
  305. package/dist/{XTicksAndGridLines-CkYwVshF.js.map → XTicksAndGridLines-obTK2e7G.js.map} +1 -1
  306. package/dist/{YAxesLabels-hWEUCTvs.js → YAxesLabels-CwVnFG2a.js} +13 -12
  307. package/dist/YAxesLabels-CwVnFG2a.js.map +1 -0
  308. package/dist/YAxesLabels-DIa2cEXL.cjs +2 -0
  309. package/dist/{YAxesLabels-DeENFC2M.cjs.map → YAxesLabels-DIa2cEXL.cjs.map} +1 -1
  310. package/dist/YTicksAndGridLines-C7glLI5b.cjs +2 -0
  311. package/dist/{YTicksAndGridLines-sT3zdCs6.cjs.map → YTicksAndGridLines-C7glLI5b.cjs.map} +1 -1
  312. package/dist/{YTicksAndGridLines-BbujwxOB.js → YTicksAndGridLines-wtuAKNeT.js} +10 -9
  313. package/dist/{YTicksAndGridLines-BbujwxOB.js.map → YTicksAndGridLines-wtuAKNeT.js.map} +1 -1
  314. package/dist/checkIfMultiple-BIEQDuA3.cjs +2 -0
  315. package/dist/checkIfMultiple-BIEQDuA3.cjs.map +1 -0
  316. package/dist/checkIfMultiple-D2tgEnYM.js +11 -0
  317. package/dist/checkIfMultiple-D2tgEnYM.js.map +1 -0
  318. package/dist/compiler-runtime-oPPev21o.cjs +11 -0
  319. package/dist/compiler-runtime-oPPev21o.cjs.map +1 -0
  320. package/dist/compiler-runtime-qHgugrLy.js +297 -0
  321. package/dist/compiler-runtime-qHgugrLy.js.map +1 -0
  322. package/dist/customArea-BCGIYDQa.cjs +2 -0
  323. package/dist/{customArea-BAcQ3pBM.cjs.map → customArea-BCGIYDQa.cjs.map} +1 -1
  324. package/dist/{customArea-D89lETG0.js → customArea-Dixg0NtQ.js} +10 -9
  325. package/dist/{customArea-D89lETG0.js.map → customArea-Dixg0NtQ.js.map} +1 -1
  326. package/dist/{fetchAndParseData-BAXhgTDM.js → fetchAndParseData-CDjQZ1fL.js} +5 -5
  327. package/dist/{fetchAndParseData-BAXhgTDM.js.map → fetchAndParseData-CDjQZ1fL.js.map} +1 -1
  328. package/dist/fetchAndParseData.js +1 -1
  329. package/dist/getSliderMarks-Bj_JJTtX.cjs +2 -0
  330. package/dist/getSliderMarks-Bj_JJTtX.cjs.map +1 -0
  331. package/dist/getSliderMarks-DSxFGb1f.js +21 -0
  332. package/dist/getSliderMarks-DSxFGb1f.js.map +1 -0
  333. package/dist/index-5BQWR1Z8.cjs +10 -0
  334. package/dist/{index-FXfr51ZM.cjs.map → index-5BQWR1Z8.cjs.map} +1 -1
  335. package/dist/index-BaXzoD4r.cjs +2 -0
  336. package/dist/{index-BuhBhuCq.cjs.map → index-BaXzoD4r.cjs.map} +1 -1
  337. package/dist/{index-Cv_5q6Rb.js → index-CNUlPiEL.js} +3 -3
  338. package/dist/{index-Cv_5q6Rb.js.map → index-CNUlPiEL.js.map} +1 -1
  339. package/dist/{index-DHVGV8Df.js → index-CmkqqFRG.js} +3 -3
  340. package/dist/{index-DHVGV8Df.js.map → index-CmkqqFRG.js.map} +1 -1
  341. package/dist/index-D_ls5oK8.js +142 -0
  342. package/dist/index-D_ls5oK8.js.map +1 -0
  343. package/dist/index-DbSnila_.cjs +2 -0
  344. package/dist/index-DbSnila_.cjs.map +1 -0
  345. package/dist/{index-BPyj_6hG.js → index-_w-CQAbR.js} +113 -112
  346. package/dist/{index-BPyj_6hG.js.map → index-_w-CQAbR.js.map} +1 -1
  347. package/dist/index-dN3wiQgD.cjs +2 -0
  348. package/dist/{index-DuLvdHo2.cjs.map → index-dN3wiQgD.cjs.map} +1 -1
  349. package/dist/index.cjs +1 -1
  350. package/dist/index.d.ts +16 -0
  351. package/dist/index.js +181 -180
  352. package/dist/index.js.map +1 -1
  353. package/dist/{proxy-BsxtcZKa.js → proxy-D31SA_aE.js} +2 -2
  354. package/dist/{proxy-BsxtcZKa.js.map → proxy-D31SA_aE.js.map} +1 -1
  355. package/dist/proxy-QMeVVqam.cjs +2 -0
  356. package/dist/{proxy-CqH8m8IQ.cjs.map → proxy-QMeVVqam.cjs.map} +1 -1
  357. package/dist/style.css +1 -1
  358. package/dist/transformData.js +2 -2
  359. package/dist/{transformDataForGraphFromFile-dt9sHTVy.js → transformDataForGraphFromFile-COZC6A0_.js} +4 -4
  360. package/dist/{transformDataForGraphFromFile-dt9sHTVy.js.map → transformDataForGraphFromFile-COZC6A0_.js.map} +1 -1
  361. package/dist/{use-in-view-KOXq5Kmc.js → use-in-view-Co5SmzfT.js} +2 -2
  362. package/dist/{use-in-view-KOXq5Kmc.js.map → use-in-view-Co5SmzfT.js.map} +1 -1
  363. package/dist/use-in-view-DjR_gqJP.cjs +2 -0
  364. package/dist/{use-in-view-dnRv_qqF.cjs.map → use-in-view-DjR_gqJP.cjs.map} +1 -1
  365. package/package.json +1 -1
  366. package/dist/Axis-BTaS9oPQ.cjs +0 -2
  367. package/dist/AxisTitle-CyLCqpW6.js +0 -29
  368. package/dist/AxisTitle-CyLCqpW6.js.map +0 -1
  369. package/dist/AxisTitle-DP_evhbe.cjs +0 -2
  370. package/dist/DetailsModal-Du8Fr1QD.cjs +0 -2
  371. package/dist/DropdownSelect-CX1yMemd.cjs +0 -5
  372. package/dist/DropdownSelect-CX1yMemd.cjs.map +0 -1
  373. package/dist/DropdownSelect-Dz7imdTB.js +0 -4191
  374. package/dist/DropdownSelect-Dz7imdTB.js.map +0 -1
  375. package/dist/EmptyState-CFmiFPHz.cjs +0 -2
  376. package/dist/GraphContainer-B8ZqOzKI.js.map +0 -1
  377. package/dist/GraphContainer-Cul9b74X.cjs +0 -2
  378. package/dist/GraphEl-BgkDbq50.cjs +0 -2
  379. package/dist/Modal-BIErPPKT.cjs +0 -46
  380. package/dist/Modal-BIErPPKT.cjs.map +0 -1
  381. package/dist/Modal-CrUYln5V.js +0 -1047
  382. package/dist/Modal-CrUYln5V.js.map +0 -1
  383. package/dist/ReferenceLine-CpU4G01Y.cjs +0 -2
  384. package/dist/ReferenceLine-D41VuUhE.js.map +0 -1
  385. package/dist/RegressionLine-BFoBiVJk.cjs +0 -2
  386. package/dist/RegressionLine-CuwB42I6.js +0 -87
  387. package/dist/RegressionLine-CuwB42I6.js.map +0 -1
  388. package/dist/Source-PKuwZOn3.cjs +0 -2
  389. package/dist/Source-PKuwZOn3.cjs.map +0 -1
  390. package/dist/Source-QGk8vhkS.js +0 -78
  391. package/dist/Source-QGk8vhkS.js.map +0 -1
  392. package/dist/Spinner-B2IIKg9r.js +0 -47
  393. package/dist/Spinner-B2IIKg9r.js.map +0 -1
  394. package/dist/Spinner-WHzzloYQ.cjs +0 -2
  395. package/dist/Spinner-WHzzloYQ.cjs.map +0 -1
  396. package/dist/Tooltip-C9F3uYG0.cjs +0 -2
  397. package/dist/Typography-BO0gQDIT.js +0 -270
  398. package/dist/Typography-BO0gQDIT.js.map +0 -1
  399. package/dist/Typography-BqmyF1gP.cjs +0 -2
  400. package/dist/Typography-BqmyF1gP.cjs.map +0 -1
  401. package/dist/XAxesLabels-B9gkjUiC.js.map +0 -1
  402. package/dist/XAxesLabels-C03jHniq.cjs +0 -2
  403. package/dist/XTicksAndGridLines-B4UhDVyU.cjs +0 -2
  404. package/dist/YAxesLabels-DeENFC2M.cjs +0 -2
  405. package/dist/YAxesLabels-hWEUCTvs.js.map +0 -1
  406. package/dist/YTicksAndGridLines-sT3zdCs6.cjs +0 -2
  407. package/dist/checkIfMultiple-CH5tqj4q.cjs +0 -2
  408. package/dist/checkIfMultiple-CH5tqj4q.cjs.map +0 -1
  409. package/dist/checkIfMultiple-Dpyy6BUP.js +0 -938
  410. package/dist/checkIfMultiple-Dpyy6BUP.js.map +0 -1
  411. package/dist/customArea-BAcQ3pBM.cjs +0 -2
  412. package/dist/getSliderMarks-BzrpHrHS.cjs +0 -2
  413. package/dist/getSliderMarks-BzrpHrHS.cjs.map +0 -1
  414. package/dist/getSliderMarks-X-_goqH9.js +0 -1027
  415. package/dist/getSliderMarks-X-_goqH9.js.map +0 -1
  416. package/dist/index-ApTBN0kp.js +0 -196
  417. package/dist/index-ApTBN0kp.js.map +0 -1
  418. package/dist/index-BhI7mBJx.cjs +0 -2
  419. package/dist/index-BhI7mBJx.cjs.map +0 -1
  420. package/dist/index-BuhBhuCq.cjs +0 -2
  421. package/dist/index-CHPV5EwG-BzibaIRc.js +0 -3360
  422. package/dist/index-CHPV5EwG-BzibaIRc.js.map +0 -1
  423. package/dist/index-CHPV5EwG-D4pAp7u0.cjs +0 -20
  424. package/dist/index-CHPV5EwG-D4pAp7u0.cjs.map +0 -1
  425. package/dist/index-DuLvdHo2.cjs +0 -2
  426. package/dist/index-FXfr51ZM.cjs +0 -10
  427. package/dist/index-Scxs_wcm-BAjU0Cob.js +0 -49
  428. package/dist/index-Scxs_wcm-BAjU0Cob.js.map +0 -1
  429. package/dist/index-Scxs_wcm-DUDU-Gll.cjs +0 -2
  430. package/dist/index-Scxs_wcm-DUDU-Gll.cjs.map +0 -1
  431. package/dist/index-w64Zl8io-DrMm5QSb.cjs +0 -2
  432. package/dist/index-w64Zl8io-DrMm5QSb.cjs.map +0 -1
  433. package/dist/index-w64Zl8io-ihagHOdP.js +0 -459
  434. package/dist/index-w64Zl8io-ihagHOdP.js.map +0 -1
  435. package/dist/proxy-CqH8m8IQ.cjs +0 -2
  436. package/dist/toConsumableArray-DiWOvh_d-DcLaZvDq.cjs +0 -4
  437. package/dist/toConsumableArray-DiWOvh_d-DcLaZvDq.cjs.map +0 -1
  438. package/dist/toConsumableArray-DiWOvh_d-DlpOlgap.js +0 -145
  439. package/dist/toConsumableArray-DiWOvh_d-DlpOlgap.js.map +0 -1
  440. package/dist/use-in-view-dnRv_qqF.cjs +0 -2
  441. package/dist/x-BXShoIAM-BC2sxios.cjs +0 -2
  442. package/dist/x-BXShoIAM-BC2sxios.cjs.map +0 -1
  443. package/dist/x-BXShoIAM-D6VWO6z5.js +0 -74
  444. package/dist/x-BXShoIAM-D6VWO6z5.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"MultiGraphDashboardWideToLongFormat.cjs","sources":["../src/Utils/wideToLongTranformation.ts","../src/Components/Dashboard/MultiGraphDashboardWideToLongFormat.tsx"],"sourcesContent":["export function wideToLongTransformation(\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n data: any,\r\n keyColumn: string,\r\n readableHeader: {\r\n value: string;\r\n label: string;\r\n }[],\r\n debugMode?: boolean,\r\n) {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const transformedData: any = [];\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n data.forEach((row: any) => {\r\n Object.entries(row).forEach(([key, value]) => {\r\n if (key !== keyColumn) {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const obj: any = {\r\n indicator:\r\n readableHeader.findIndex(d => d.value === key) !== -1\r\n ? readableHeader[readableHeader.findIndex(d => d.value === key)].label\r\n : key,\r\n value,\r\n };\r\n obj[keyColumn] = row[keyColumn];\r\n transformedData.push(obj);\r\n }\r\n });\r\n });\r\n if (debugMode) {\r\n // eslint-disable-next-line no-console\r\n console.log(transformedData);\r\n }\r\n return transformedData;\r\n}\r\n","import { useEffect, useEffectEvent, useState } from 'react';\r\nimport { createFilter, DropdownSelect } from '@undp/design-system-react/DropdownSelect';\r\nimport { Label } from '@undp/design-system-react/Label';\r\nimport { Spinner } from '@undp/design-system-react/Spinner';\r\n\r\nimport { SingleGraphDashboard } from './SingleGraphDashboard';\r\n\r\nimport {\r\n ClassNameObject,\r\n DashboardFromWideToLongFormatColumnDataType,\r\n DashboardFromWideToLongFormatLayoutDataType,\r\n DataFilterDataType,\r\n DataSettingsWideToLongDataType,\r\n StyleObject,\r\n} from '@/Types';\r\nimport {\r\n fetchAndParseCSV,\r\n fetchAndParseJSON,\r\n fetchAndParseMultipleDataSources,\r\n fetchAndTransformDataFromAPI,\r\n} from '@/Utils/fetchAndParseData';\r\nimport { GraphHeader } from '@/Components/Elements/GraphHeader';\r\nimport { wideToLongTransformation } from '@/Utils/wideToLongTranformation';\r\nimport { filterData } from '@/Utils/transformData/filterData';\r\nimport { transformColumnsToArray } from '@/Utils/transformData/transformColumnsToArray';\r\n\r\ninterface Props {\r\n dashboardID?: string;\r\n dashboardLayout: DashboardFromWideToLongFormatLayoutDataType;\r\n dataSettings: DataSettingsWideToLongDataType;\r\n debugMode?: boolean;\r\n theme?: 'dark' | 'light';\r\n readableHeader?: {\r\n value: string;\r\n label: string;\r\n }[];\r\n dataFilters?: DataFilterDataType[];\r\n uiMode?: 'light' | 'normal';\r\n graphStyles?: StyleObject;\r\n graphClassNames?: ClassNameObject;\r\n}\r\n\r\nconst TotalWidth = (columns: DashboardFromWideToLongFormatColumnDataType[]) => {\r\n const columnWidth = columns.map(d => d.columnWidth || 1);\r\n const sum = columnWidth.reduce((acc, cur) => acc + cur, 0);\r\n return sum;\r\n};\r\n\r\nexport function MultiGraphDashboardWideToLongFormat(props: Props) {\r\n const {\r\n dashboardID,\r\n dashboardLayout,\r\n dataSettings,\r\n debugMode,\r\n theme = 'light',\r\n readableHeader,\r\n dataFilters,\r\n uiMode = 'normal',\r\n graphStyles,\r\n graphClassNames,\r\n } = props;\r\n\r\n const filterConfig = {\r\n ignoreCase: true,\r\n ignoreAccents: true,\r\n trim: true,\r\n };\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const [filteredData, setFilteredData] = useState<any>(undefined);\r\n const [filterValues, setFilterValues] = useState<string[]>([]);\r\n const [selectedFilterValues, setSelectedFilterValues] = useState<string | undefined>(undefined);\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const [data, setData] = useState<any>(undefined);\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const [unformattedData, setUnformattedData] = useState<any>(undefined);\r\n\r\n const updateDataAndFilterValueEvent = useEffectEvent(() => {\r\n const filteredData = filterData(unformattedData, dataFilters || []);\r\n setFilterValues(\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n filteredData.map((el: any) => el[dataSettings.keyColumn]),\r\n );\r\n setSelectedFilterValues(filteredData[0][dataSettings.keyColumn]);\r\n const tempData = wideToLongTransformation(\r\n filteredData,\r\n dataSettings.keyColumn,\r\n readableHeader || [],\r\n debugMode,\r\n );\r\n setData(tempData);\r\n });\r\n\r\n const updateFilteredDataEvent = useEffectEvent(() => {\r\n if (data) {\r\n const filteredDataTemp = data.filter(\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n (item: any) => item[dataSettings.keyColumn] === selectedFilterValues,\r\n );\r\n setFilteredData(filteredDataTemp);\r\n }\r\n });\r\n\r\n useEffect(() => {\r\n updateFilteredDataEvent();\r\n }, [selectedFilterValues, dataSettings.keyColumn]);\r\n useEffect(() => {\r\n const fetchData = async () => {\r\n try {\r\n const dataFromFile = dataSettings.dataURL\r\n ? typeof dataSettings.dataURL === 'string'\r\n ? dataSettings.fileType === 'json'\r\n ? await fetchAndParseJSON(\r\n dataSettings.dataURL,\r\n undefined,\r\n dataSettings.dataTransformation,\r\n debugMode,\r\n )\r\n : dataSettings.fileType === 'api'\r\n ? await fetchAndTransformDataFromAPI(\r\n dataSettings.dataURL,\r\n dataSettings.apiHeaders,\r\n undefined,\r\n dataSettings.dataTransformation,\r\n debugMode,\r\n )\r\n : await fetchAndParseCSV(\r\n dataSettings.dataURL,\r\n dataSettings.dataTransformation,\r\n undefined,\r\n debugMode,\r\n dataSettings.delimiter,\r\n true,\r\n )\r\n : await fetchAndParseMultipleDataSources(\r\n dataSettings.dataURL,\r\n dataSettings.idColumnTitle,\r\n )\r\n : await transformColumnsToArray(dataSettings.data, undefined);\r\n setUnformattedData(dataFromFile);\r\n updateDataAndFilterValueEvent();\r\n } catch (error) {\r\n console.error('Data fetching error:', error);\r\n }\r\n };\r\n fetchData();\r\n }, [dataSettings, debugMode]);\r\n\r\n useEffect(() => {\r\n updateDataAndFilterValueEvent();\r\n }, [dataFilters, readableHeader]);\r\n return (\r\n <div\r\n className={`${theme || 'light'} flex grow`}\r\n dir={\r\n dashboardLayout.language === 'he' || dashboardLayout.language === 'ar' ? 'rtl' : undefined\r\n }\r\n >\r\n <div\r\n className={`${\r\n !dashboardLayout?.backgroundColor\r\n ? 'bg-transparent '\r\n : dashboardLayout?.backgroundColor === true\r\n ? 'bg-primary-gray-200 dark:bg-primary-gray-650 '\r\n : ''\r\n }flex flex-col w-full ml-auto mr-auto grow gap-4 ${dashboardLayout?.language || 'en'}`}\r\n style={{\r\n ...(dashboardLayout?.backgroundColor && dashboardLayout?.backgroundColor !== true\r\n ? { backgroundColor: dashboardLayout?.backgroundColor }\r\n : {}),\r\n }}\r\n id={dashboardID}\r\n >\r\n <div\r\n className='flex grow'\r\n style={{\r\n padding: dashboardLayout.backgroundColor\r\n ? dashboardLayout.padding || '1rem'\r\n : dashboardLayout.padding || 0,\r\n }}\r\n >\r\n <div className='flex flex-col w-full gap-4 grow justify-between'>\r\n {dashboardLayout.title || dashboardLayout.description ? (\r\n <GraphHeader\r\n graphTitle={dashboardLayout.title}\r\n graphDescription={dashboardLayout.description}\r\n isDashboard\r\n />\r\n ) : null}\r\n {filteredData ? (\r\n <>\r\n <div\r\n style={{\r\n display: 'flex',\r\n gap: '1rem',\r\n flexWrap: 'wrap',\r\n alignItems: 'flex-start',\r\n width: '100%',\r\n }}\r\n >\r\n <div\r\n style={{\r\n width: '100%',\r\n flexGrow: 1,\r\n flexShrink: 0,\r\n minWidth: '240px',\r\n }}\r\n >\r\n {dashboardLayout.dropdownLabel ? (\r\n <Label className='mb-2'>{dashboardLayout.dropdownLabel}</Label>\r\n ) : null}\r\n <DropdownSelect\r\n options={filterValues.map(d => ({\r\n value: d,\r\n label: d,\r\n }))}\r\n size='sm'\r\n variant={uiMode}\r\n isClearable={false}\r\n isSearchable\r\n controlShouldRenderValue\r\n filterOption={createFilter(filterConfig)}\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onChange={(el: any) => {\r\n setSelectedFilterValues(el?.value);\r\n }}\r\n defaultValue={{\r\n value: selectedFilterValues as string,\r\n label: selectedFilterValues as string,\r\n }}\r\n />\r\n </div>\r\n </div>\r\n {dashboardLayout.rows.map((d, i) => (\r\n <div\r\n key={i}\r\n style={{\r\n display: 'flex',\r\n gap: '1rem',\r\n alignItems: 'stretch',\r\n minHeight: `${d.height || 0}px`,\r\n height: 'auto',\r\n width: '100%',\r\n flexWrap: 'wrap',\r\n }}\r\n >\r\n {d.columns.map((el, j) => (\r\n <div\r\n key={j}\r\n className='flex bg-transparent grow min-w-60'\r\n style={{\r\n width: `calc(${\r\n (100 * (el.columnWidth || 1)) / TotalWidth(d.columns)\r\n }% - ${\r\n (TotalWidth(d.columns) - (el.columnWidth || 1)) / TotalWidth(d.columns)\r\n }rem)`,\r\n minHeight: 'inherit',\r\n }}\r\n >\r\n <SingleGraphDashboard\r\n graphType={el.graphType}\r\n dataFilters={el.dataFilters}\r\n uiMode={uiMode}\r\n graphSettings={{\r\n ...(el.settings || {}),\r\n width: undefined,\r\n height: undefined,\r\n minHeight: undefined,\r\n relativeHeight: undefined,\r\n radius: el.graphType === 'donutChart' ? undefined : el.settings?.radius,\r\n size: el.graphType === 'unitChart' ? el.settings.size : undefined,\r\n language: el.settings?.language || dashboardLayout.language,\r\n theme: el.settings?.theme || theme,\r\n styles: el.settings?.styles || graphStyles,\r\n classNames: el.settings?.classNames || graphClassNames,\r\n }}\r\n dataSettings={{ data: filteredData }}\r\n graphDataConfiguration={\r\n el.graphDataConfiguration\r\n ? el.graphDataConfiguration\r\n : el.graphType === 'unitChart'\r\n ? [\r\n {\r\n columnId: 'indicator',\r\n chartConfigId: 'label',\r\n },\r\n { columnId: 'value', chartConfigId: 'value' },\r\n ]\r\n : [\r\n {\r\n columnId: 'indicator',\r\n chartConfigId: 'label',\r\n },\r\n { columnId: 'value', chartConfigId: 'size' },\r\n ]\r\n }\r\n debugMode={debugMode}\r\n readableHeader={readableHeader || []}\r\n />\r\n </div>\r\n ))}\r\n </div>\r\n ))}\r\n </>\r\n ) : (\r\n <div className='w-full flex justify-center p-4'>\r\n <Spinner />\r\n </div>\r\n )}\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n );\r\n}\r\n"],"names":["wideToLongTransformation","data","keyColumn","readableHeader","debugMode","transformedData","forEach","row","Object","entries","key","value","obj","indicator","findIndex","d","label","push","console","log","TotalWidth","columns","map","columnWidth","reduce","acc","cur","MultiGraphDashboardWideToLongFormat","props","dashboardID","dashboardLayout","dataSettings","theme","dataFilters","uiMode","graphStyles","graphClassNames","filterConfig","ignoreCase","ignoreAccents","trim","filteredData","setFilteredData","useState","undefined","filterValues","setFilterValues","selectedFilterValues","setSelectedFilterValues","setData","unformattedData","setUnformattedData","updateDataAndFilterValueEvent","useEffectEvent","filterData","el","tempData","updateFilteredDataEvent","filteredDataTemp","filter","item","useEffect","dataFromFile","dataURL","fileType","fetchAndParseJSON","dataTransformation","fetchAndTransformDataFromAPI","apiHeaders","fetchAndParseCSV","delimiter","fetchAndParseMultipleDataSources","idColumnTitle","transformColumnsToArray","error","fetchData","jsx","language","backgroundColor","padding","jsxs","title","description","GraphHeader","Fragment","display","gap","flexWrap","alignItems","width","flexGrow","flexShrink","minWidth","dropdownLabel","Label","DropdownSelect","createFilter","rows","i","minHeight","height","j","SingleGraphDashboard","graphType","settings","relativeHeight","radius","size","styles","classNames","graphDataConfiguration","columnId","chartConfigId","Spinner"],"mappings":"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"}
1
+ {"version":3,"file":"MultiGraphDashboardWideToLongFormat.cjs","sources":["../src/Utils/wideToLongTranformation.ts","../src/Components/Dashboard/MultiGraphDashboardWideToLongFormat.tsx"],"sourcesContent":["export function wideToLongTransformation(\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n data: any,\r\n keyColumn: string,\r\n readableHeader: {\r\n value: string;\r\n label: string;\r\n }[],\r\n debugMode?: boolean,\r\n) {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const transformedData: any = [];\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n data.forEach((row: any) => {\r\n Object.entries(row).forEach(([key, value]) => {\r\n if (key !== keyColumn) {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const obj: any = {\r\n indicator:\r\n readableHeader.findIndex(d => d.value === key) !== -1\r\n ? readableHeader[readableHeader.findIndex(d => d.value === key)].label\r\n : key,\r\n value,\r\n };\r\n obj[keyColumn] = row[keyColumn];\r\n transformedData.push(obj);\r\n }\r\n });\r\n });\r\n if (debugMode) {\r\n // eslint-disable-next-line no-console\r\n console.log(transformedData);\r\n }\r\n return transformedData;\r\n}\r\n","import { useEffect, useEffectEvent, useState } from 'react';\r\nimport { createFilter, DropdownSelect } from '@undp/design-system-react/DropdownSelect';\r\nimport { Label } from '@undp/design-system-react/Label';\r\nimport { Spinner } from '@undp/design-system-react/Spinner';\r\n\r\nimport { SingleGraphDashboard } from './SingleGraphDashboard';\r\n\r\nimport {\r\n ClassNameObject,\r\n DashboardFromWideToLongFormatColumnDataType,\r\n DashboardFromWideToLongFormatLayoutDataType,\r\n DataFilterDataType,\r\n DataSettingsWideToLongDataType,\r\n StyleObject,\r\n} from '@/Types';\r\nimport {\r\n fetchAndParseCSV,\r\n fetchAndParseJSON,\r\n fetchAndParseMultipleDataSources,\r\n fetchAndTransformDataFromAPI,\r\n} from '@/Utils/fetchAndParseData';\r\nimport { GraphHeader } from '@/Components/Elements/GraphHeader';\r\nimport { wideToLongTransformation } from '@/Utils/wideToLongTranformation';\r\nimport { filterData } from '@/Utils/transformData/filterData';\r\nimport { transformColumnsToArray } from '@/Utils/transformData/transformColumnsToArray';\r\n\r\ninterface Props {\r\n dashboardID?: string;\r\n dashboardLayout: DashboardFromWideToLongFormatLayoutDataType;\r\n dataSettings: DataSettingsWideToLongDataType;\r\n debugMode?: boolean;\r\n theme?: 'dark' | 'light';\r\n readableHeader?: {\r\n value: string;\r\n label: string;\r\n }[];\r\n dataFilters?: DataFilterDataType[];\r\n uiMode?: 'light' | 'normal';\r\n graphStyles?: StyleObject;\r\n graphClassNames?: ClassNameObject;\r\n}\r\n\r\nconst TotalWidth = (columns: DashboardFromWideToLongFormatColumnDataType[]) => {\r\n const columnWidth = columns.map(d => d.columnWidth || 1);\r\n const sum = columnWidth.reduce((acc, cur) => acc + cur, 0);\r\n return sum;\r\n};\r\n\r\nexport function MultiGraphDashboardWideToLongFormat(props: Props) {\r\n const {\r\n dashboardID,\r\n dashboardLayout,\r\n dataSettings,\r\n debugMode,\r\n theme = 'light',\r\n readableHeader,\r\n dataFilters,\r\n uiMode = 'normal',\r\n graphStyles,\r\n graphClassNames,\r\n } = props;\r\n\r\n const filterConfig = {\r\n ignoreCase: true,\r\n ignoreAccents: true,\r\n trim: true,\r\n };\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const [filteredData, setFilteredData] = useState<any>(undefined);\r\n const [filterValues, setFilterValues] = useState<string[]>([]);\r\n const [selectedFilterValues, setSelectedFilterValues] = useState<string | undefined>(undefined);\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const [data, setData] = useState<any>(undefined);\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const [unformattedData, setUnformattedData] = useState<any>(undefined);\r\n\r\n const updateDataAndFilterValueEvent = useEffectEvent(() => {\r\n const filteredData = filterData(unformattedData, dataFilters || []);\r\n setFilterValues(\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n filteredData.map((el: any) => el[dataSettings.keyColumn]),\r\n );\r\n setSelectedFilterValues(filteredData[0][dataSettings.keyColumn]);\r\n const tempData = wideToLongTransformation(\r\n filteredData,\r\n dataSettings.keyColumn,\r\n readableHeader || [],\r\n debugMode,\r\n );\r\n setData(tempData);\r\n });\r\n\r\n const updateFilteredDataEvent = useEffectEvent(() => {\r\n if (data) {\r\n const filteredDataTemp = data.filter(\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n (item: any) => item[dataSettings.keyColumn] === selectedFilterValues,\r\n );\r\n setFilteredData(filteredDataTemp);\r\n }\r\n });\r\n\r\n useEffect(() => {\r\n updateFilteredDataEvent();\r\n }, [selectedFilterValues, dataSettings.keyColumn]);\r\n useEffect(() => {\r\n const fetchData = async () => {\r\n try {\r\n const dataFromFile = dataSettings.dataURL\r\n ? typeof dataSettings.dataURL === 'string'\r\n ? dataSettings.fileType === 'json'\r\n ? await fetchAndParseJSON(\r\n dataSettings.dataURL,\r\n undefined,\r\n dataSettings.dataTransformation,\r\n debugMode,\r\n )\r\n : dataSettings.fileType === 'api'\r\n ? await fetchAndTransformDataFromAPI(\r\n dataSettings.dataURL,\r\n dataSettings.apiHeaders,\r\n undefined,\r\n dataSettings.dataTransformation,\r\n debugMode,\r\n )\r\n : await fetchAndParseCSV(\r\n dataSettings.dataURL,\r\n dataSettings.dataTransformation,\r\n undefined,\r\n debugMode,\r\n dataSettings.delimiter,\r\n true,\r\n )\r\n : await fetchAndParseMultipleDataSources(\r\n dataSettings.dataURL,\r\n dataSettings.idColumnTitle,\r\n )\r\n : await transformColumnsToArray(dataSettings.data, undefined);\r\n setUnformattedData(dataFromFile);\r\n updateDataAndFilterValueEvent();\r\n } catch (error) {\r\n console.error('Data fetching error:', error);\r\n }\r\n };\r\n fetchData();\r\n }, [dataSettings, debugMode]);\r\n\r\n useEffect(() => {\r\n updateDataAndFilterValueEvent();\r\n }, [dataFilters, readableHeader]);\r\n return (\r\n <div\r\n className={`${theme || 'light'} flex grow`}\r\n dir={\r\n dashboardLayout.language === 'he' || dashboardLayout.language === 'ar' ? 'rtl' : undefined\r\n }\r\n >\r\n <div\r\n className={`${\r\n !dashboardLayout?.backgroundColor\r\n ? 'bg-transparent '\r\n : dashboardLayout?.backgroundColor === true\r\n ? 'bg-primary-gray-200 dark:bg-primary-gray-650 '\r\n : ''\r\n }flex flex-col w-full ml-auto mr-auto grow gap-4 ${dashboardLayout?.language || 'en'}`}\r\n style={{\r\n ...(dashboardLayout?.backgroundColor && dashboardLayout?.backgroundColor !== true\r\n ? { backgroundColor: dashboardLayout?.backgroundColor }\r\n : {}),\r\n }}\r\n id={dashboardID}\r\n >\r\n <div\r\n className='flex grow'\r\n style={{\r\n padding: dashboardLayout.backgroundColor\r\n ? dashboardLayout.padding || '1rem'\r\n : dashboardLayout.padding || 0,\r\n }}\r\n >\r\n <div className='flex flex-col w-full gap-4 grow justify-between'>\r\n {dashboardLayout.title || dashboardLayout.description ? (\r\n <GraphHeader\r\n graphTitle={dashboardLayout.title}\r\n graphDescription={dashboardLayout.description}\r\n isDashboard\r\n />\r\n ) : null}\r\n {filteredData ? (\r\n <>\r\n <div\r\n style={{\r\n display: 'flex',\r\n gap: '1rem',\r\n flexWrap: 'wrap',\r\n alignItems: 'flex-start',\r\n width: '100%',\r\n }}\r\n >\r\n <div\r\n style={{\r\n width: '100%',\r\n flexGrow: 1,\r\n flexShrink: 0,\r\n minWidth: '240px',\r\n }}\r\n >\r\n {dashboardLayout.dropdownLabel ? (\r\n <Label className='mb-2'>{dashboardLayout.dropdownLabel}</Label>\r\n ) : null}\r\n <DropdownSelect\r\n options={filterValues.map(d => ({\r\n value: d,\r\n label: d,\r\n }))}\r\n size='sm'\r\n variant={uiMode}\r\n isClearable={false}\r\n isSearchable\r\n controlShouldRenderValue\r\n filterOption={createFilter(filterConfig)}\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onChange={(el: any) => {\r\n setSelectedFilterValues(el?.value);\r\n }}\r\n defaultValue={{\r\n value: selectedFilterValues as string,\r\n label: selectedFilterValues as string,\r\n }}\r\n />\r\n </div>\r\n </div>\r\n {dashboardLayout.rows.map((d, i) => (\r\n <div\r\n key={i}\r\n style={{\r\n display: 'flex',\r\n gap: '1rem',\r\n alignItems: 'stretch',\r\n minHeight: `${d.height || 0}px`,\r\n height: 'auto',\r\n width: '100%',\r\n flexWrap: 'wrap',\r\n }}\r\n >\r\n {d.columns.map((el, j) => (\r\n <div\r\n key={j}\r\n className='flex bg-transparent grow min-w-60'\r\n style={{\r\n width: `calc(${\r\n (100 * (el.columnWidth || 1)) / TotalWidth(d.columns)\r\n }% - ${\r\n (TotalWidth(d.columns) - (el.columnWidth || 1)) / TotalWidth(d.columns)\r\n }rem)`,\r\n minHeight: 'inherit',\r\n }}\r\n >\r\n <SingleGraphDashboard\r\n graphType={el.graphType}\r\n dataFilters={el.dataFilters}\r\n uiMode={uiMode}\r\n graphSettings={{\r\n ...(el.settings || {}),\r\n width: undefined,\r\n height: undefined,\r\n minHeight: undefined,\r\n relativeHeight: undefined,\r\n radius: el.graphType === 'donutChart' ? undefined : el.settings?.radius,\r\n size: el.graphType === 'unitChart' ? el.settings.size : undefined,\r\n language: el.settings?.language || dashboardLayout.language,\r\n theme: el.settings?.theme || theme,\r\n styles: el.settings?.styles || graphStyles,\r\n classNames: el.settings?.classNames || graphClassNames,\r\n }}\r\n dataSettings={{ data: filteredData }}\r\n graphDataConfiguration={\r\n el.graphDataConfiguration\r\n ? el.graphDataConfiguration\r\n : el.graphType === 'unitChart'\r\n ? [\r\n {\r\n columnId: 'indicator',\r\n chartConfigId: 'label',\r\n },\r\n { columnId: 'value', chartConfigId: 'value' },\r\n ]\r\n : [\r\n {\r\n columnId: 'indicator',\r\n chartConfigId: 'label',\r\n },\r\n { columnId: 'value', chartConfigId: 'size' },\r\n ]\r\n }\r\n debugMode={debugMode}\r\n readableHeader={readableHeader || []}\r\n />\r\n </div>\r\n ))}\r\n </div>\r\n ))}\r\n </>\r\n ) : (\r\n <div className='w-full flex justify-center p-4'>\r\n <Spinner />\r\n </div>\r\n )}\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n );\r\n}\r\n"],"names":["wideToLongTransformation","data","keyColumn","readableHeader","debugMode","transformedData","forEach","row","Object","entries","key","value","obj","indicator","findIndex","d","label","push","console","log","TotalWidth","columns","map","columnWidth","reduce","acc","cur","MultiGraphDashboardWideToLongFormat","props","dashboardID","dashboardLayout","dataSettings","theme","dataFilters","uiMode","graphStyles","graphClassNames","filterConfig","ignoreCase","ignoreAccents","trim","filteredData","setFilteredData","useState","undefined","filterValues","setFilterValues","selectedFilterValues","setSelectedFilterValues","setData","unformattedData","setUnformattedData","updateDataAndFilterValueEvent","useEffectEvent","filterData","el","tempData","updateFilteredDataEvent","filteredDataTemp","filter","item","useEffect","dataFromFile","dataURL","fileType","fetchAndParseJSON","dataTransformation","fetchAndTransformDataFromAPI","apiHeaders","fetchAndParseCSV","delimiter","fetchAndParseMultipleDataSources","idColumnTitle","transformColumnsToArray","error","fetchData","jsx","language","backgroundColor","padding","jsxs","title","description","GraphHeader","Fragment","display","gap","flexWrap","alignItems","width","flexGrow","flexShrink","minWidth","dropdownLabel","Label","DropdownSelect","createFilter","rows","i","minHeight","height","j","SingleGraphDashboard","graphType","settings","relativeHeight","radius","size","styles","classNames","graphDataConfiguration","columnId","chartConfigId","Spinner"],"mappings":"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"}
@@ -1,19 +1,19 @@
1
- import { j as i } from "./index-CHPV5EwG-BzibaIRc.js";
1
+ import { j as i } from "./compiler-runtime-qHgugrLy.js";
2
2
  import { useState as g, useEffectEvent as w, useEffect as p } from "react";
3
- import { j as A, D as E } from "./DropdownSelect-Dz7imdTB.js";
4
- import { b as R } from "./checkIfMultiple-Dpyy6BUP.js";
5
- import { w as V } from "./Spinner-B2IIKg9r.js";
3
+ import { DropdownSelect as A, createFilter as E } from "@undp/design-system-react/DropdownSelect";
4
+ import { Label as R } from "@undp/design-system-react/Label";
5
+ import { Spinner as V } from "@undp/design-system-react/Spinner";
6
6
  import { SingleGraphDashboard as U } from "./SingleGraphDashboard.js";
7
- import { f as H, a as $, b as z, c as G, t as M } from "./fetchAndParseData-BAXhgTDM.js";
7
+ import { b as H, d as $, f as z, c as G, t as M } from "./fetchAndParseData-CDjQZ1fL.js";
8
8
  import { GraphHeader as P } from "./GraphHeader.js";
9
9
  import { f as O } from "./filterData-DsAiFzKY.js";
10
10
  function J(d, l, t, a) {
11
11
  const o = [];
12
12
  return d.forEach((c) => {
13
- Object.entries(c).forEach(([n, h]) => {
14
- if (n !== l) {
13
+ Object.entries(c).forEach(([s, h]) => {
14
+ if (s !== l) {
15
15
  const u = {
16
- indicator: t.findIndex((m) => m.value === n) !== -1 ? t[t.findIndex((m) => m.value === n)].label : n,
16
+ indicator: t.findIndex((m) => m.value === s) !== -1 ? t[t.findIndex((m) => m.value === s)].label : s,
17
17
  value: h
18
18
  };
19
19
  u[l] = c[l], o.push(u);
@@ -29,7 +29,7 @@ function ta(d) {
29
29
  dataSettings: a,
30
30
  debugMode: o,
31
31
  theme: c = "light",
32
- readableHeader: n,
32
+ readableHeader: s,
33
33
  dataFilters: h,
34
34
  uiMode: u = "normal",
35
35
  graphStyles: m,
@@ -38,19 +38,19 @@ function ta(d) {
38
38
  ignoreCase: !0,
39
39
  ignoreAccents: !0,
40
40
  trim: !0
41
- }, [x, T] = g(void 0), [F, I] = g([]), [f, b] = g(void 0), [y, S] = g(void 0), [L, N] = g(void 0), C = w(() => {
41
+ }, [x, T] = g(void 0), [F, S] = g([]), [f, b] = g(void 0), [y, I] = g(void 0), [L, N] = g(void 0), C = w(() => {
42
42
  const r = O(L, h || []);
43
- I(
43
+ S(
44
44
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
45
45
  r.map((e) => e[a.keyColumn])
46
46
  ), b(r[0][a.keyColumn]);
47
- const s = J(r, a.keyColumn, n || [], o);
48
- S(s);
47
+ const n = J(r, a.keyColumn, s || [], o);
48
+ I(n);
49
49
  }), W = w(() => {
50
50
  if (y) {
51
51
  const r = y.filter(
52
52
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
53
- (s) => s[a.keyColumn] === f
53
+ (n) => n[a.keyColumn] === f
54
54
  );
55
55
  T(r);
56
56
  }
@@ -60,15 +60,15 @@ function ta(d) {
60
60
  }, [f, a.keyColumn]), p(() => {
61
61
  (async () => {
62
62
  try {
63
- const s = a.dataURL ? typeof a.dataURL == "string" ? a.fileType === "json" ? await H(a.dataURL, void 0, a.dataTransformation, o) : a.fileType === "api" ? await $(a.dataURL, a.apiHeaders, void 0, a.dataTransformation, o) : await z(a.dataURL, a.dataTransformation, void 0, o, a.delimiter, !0) : await G(a.dataURL, a.idColumnTitle) : await M(a.data, void 0);
64
- N(s), C();
65
- } catch (s) {
66
- console.error("Data fetching error:", s);
63
+ const n = a.dataURL ? typeof a.dataURL == "string" ? a.fileType === "json" ? await H(a.dataURL, void 0, a.dataTransformation, o) : a.fileType === "api" ? await $(a.dataURL, a.apiHeaders, void 0, a.dataTransformation, o) : await z(a.dataURL, a.dataTransformation, void 0, o, a.delimiter, !0) : await G(a.dataURL, a.idColumnTitle) : await M(a.data, void 0);
64
+ N(n), C();
65
+ } catch (n) {
66
+ console.error("Data fetching error:", n);
67
67
  }
68
68
  })();
69
69
  }, [a, o]), p(() => {
70
70
  C();
71
- }, [h, n]), /* @__PURE__ */ i.jsx("div", { className: `${c || "light"} flex grow`, dir: t.language === "he" || t.language === "ar" ? "rtl" : void 0, children: /* @__PURE__ */ i.jsx("div", { className: `${t?.backgroundColor ? t?.backgroundColor === !0 ? "bg-primary-gray-200 dark:bg-primary-gray-650 " : "" : "bg-transparent "}flex flex-col w-full ml-auto mr-auto grow gap-4 ${t?.language || "en"}`, style: {
71
+ }, [h, s]), /* @__PURE__ */ i.jsx("div", { className: `${c || "light"} flex grow`, dir: t.language === "he" || t.language === "ar" ? "rtl" : void 0, children: /* @__PURE__ */ i.jsx("div", { className: `${t?.backgroundColor ? t?.backgroundColor === !0 ? "bg-primary-gray-200 dark:bg-primary-gray-650 " : "" : "bg-transparent "}flex flex-col w-full ml-auto mr-auto grow gap-4 ${t?.language || "en"}`, style: {
72
72
  ...t?.backgroundColor && t?.backgroundColor !== !0 ? {
73
73
  backgroundColor: t?.backgroundColor
74
74
  } : {}
@@ -113,7 +113,7 @@ function ta(d) {
113
113
  }
114
114
  )
115
115
  ] }) }),
116
- t.rows.map((r, s) => /* @__PURE__ */ i.jsx("div", { style: {
116
+ t.rows.map((r, n) => /* @__PURE__ */ i.jsx("div", { style: {
117
117
  display: "flex",
118
118
  gap: "1rem",
119
119
  alignItems: "stretch",
@@ -150,7 +150,7 @@ function ta(d) {
150
150
  }, {
151
151
  columnId: "value",
152
152
  chartConfigId: "size"
153
- }], debugMode: o, readableHeader: n || [] }) }, k)) }, s))
153
+ }], debugMode: o, readableHeader: s || [] }) }, k)) }, n))
154
154
  ] }) : /* @__PURE__ */ i.jsx("div", { className: "w-full flex justify-center p-4", children: /* @__PURE__ */ i.jsx(V, {}) })
155
155
  ] }) }) }) });
156
156
  }
@@ -1 +1 @@
1
- {"version":3,"file":"MultiGraphDashboardWideToLongFormat.js","sources":["../src/Utils/wideToLongTranformation.ts","../src/Components/Dashboard/MultiGraphDashboardWideToLongFormat.tsx"],"sourcesContent":["export function wideToLongTransformation(\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n data: any,\r\n keyColumn: string,\r\n readableHeader: {\r\n value: string;\r\n label: string;\r\n }[],\r\n debugMode?: boolean,\r\n) {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const transformedData: any = [];\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n data.forEach((row: any) => {\r\n Object.entries(row).forEach(([key, value]) => {\r\n if (key !== keyColumn) {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const obj: any = {\r\n indicator:\r\n readableHeader.findIndex(d => d.value === key) !== -1\r\n ? readableHeader[readableHeader.findIndex(d => d.value === key)].label\r\n : key,\r\n value,\r\n };\r\n obj[keyColumn] = row[keyColumn];\r\n transformedData.push(obj);\r\n }\r\n });\r\n });\r\n if (debugMode) {\r\n // eslint-disable-next-line no-console\r\n console.log(transformedData);\r\n }\r\n return transformedData;\r\n}\r\n","import { useEffect, useEffectEvent, useState } from 'react';\r\nimport { createFilter, DropdownSelect } from '@undp/design-system-react/DropdownSelect';\r\nimport { Label } from '@undp/design-system-react/Label';\r\nimport { Spinner } from '@undp/design-system-react/Spinner';\r\n\r\nimport { SingleGraphDashboard } from './SingleGraphDashboard';\r\n\r\nimport {\r\n ClassNameObject,\r\n DashboardFromWideToLongFormatColumnDataType,\r\n DashboardFromWideToLongFormatLayoutDataType,\r\n DataFilterDataType,\r\n DataSettingsWideToLongDataType,\r\n StyleObject,\r\n} from '@/Types';\r\nimport {\r\n fetchAndParseCSV,\r\n fetchAndParseJSON,\r\n fetchAndParseMultipleDataSources,\r\n fetchAndTransformDataFromAPI,\r\n} from '@/Utils/fetchAndParseData';\r\nimport { GraphHeader } from '@/Components/Elements/GraphHeader';\r\nimport { wideToLongTransformation } from '@/Utils/wideToLongTranformation';\r\nimport { filterData } from '@/Utils/transformData/filterData';\r\nimport { transformColumnsToArray } from '@/Utils/transformData/transformColumnsToArray';\r\n\r\ninterface Props {\r\n dashboardID?: string;\r\n dashboardLayout: DashboardFromWideToLongFormatLayoutDataType;\r\n dataSettings: DataSettingsWideToLongDataType;\r\n debugMode?: boolean;\r\n theme?: 'dark' | 'light';\r\n readableHeader?: {\r\n value: string;\r\n label: string;\r\n }[];\r\n dataFilters?: DataFilterDataType[];\r\n uiMode?: 'light' | 'normal';\r\n graphStyles?: StyleObject;\r\n graphClassNames?: ClassNameObject;\r\n}\r\n\r\nconst TotalWidth = (columns: DashboardFromWideToLongFormatColumnDataType[]) => {\r\n const columnWidth = columns.map(d => d.columnWidth || 1);\r\n const sum = columnWidth.reduce((acc, cur) => acc + cur, 0);\r\n return sum;\r\n};\r\n\r\nexport function MultiGraphDashboardWideToLongFormat(props: Props) {\r\n const {\r\n dashboardID,\r\n dashboardLayout,\r\n dataSettings,\r\n debugMode,\r\n theme = 'light',\r\n readableHeader,\r\n dataFilters,\r\n uiMode = 'normal',\r\n graphStyles,\r\n graphClassNames,\r\n } = props;\r\n\r\n const filterConfig = {\r\n ignoreCase: true,\r\n ignoreAccents: true,\r\n trim: true,\r\n };\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const [filteredData, setFilteredData] = useState<any>(undefined);\r\n const [filterValues, setFilterValues] = useState<string[]>([]);\r\n const [selectedFilterValues, setSelectedFilterValues] = useState<string | undefined>(undefined);\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const [data, setData] = useState<any>(undefined);\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const [unformattedData, setUnformattedData] = useState<any>(undefined);\r\n\r\n const updateDataAndFilterValueEvent = useEffectEvent(() => {\r\n const filteredData = filterData(unformattedData, dataFilters || []);\r\n setFilterValues(\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n filteredData.map((el: any) => el[dataSettings.keyColumn]),\r\n );\r\n setSelectedFilterValues(filteredData[0][dataSettings.keyColumn]);\r\n const tempData = wideToLongTransformation(\r\n filteredData,\r\n dataSettings.keyColumn,\r\n readableHeader || [],\r\n debugMode,\r\n );\r\n setData(tempData);\r\n });\r\n\r\n const updateFilteredDataEvent = useEffectEvent(() => {\r\n if (data) {\r\n const filteredDataTemp = data.filter(\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n (item: any) => item[dataSettings.keyColumn] === selectedFilterValues,\r\n );\r\n setFilteredData(filteredDataTemp);\r\n }\r\n });\r\n\r\n useEffect(() => {\r\n updateFilteredDataEvent();\r\n }, [selectedFilterValues, dataSettings.keyColumn]);\r\n useEffect(() => {\r\n const fetchData = async () => {\r\n try {\r\n const dataFromFile = dataSettings.dataURL\r\n ? typeof dataSettings.dataURL === 'string'\r\n ? dataSettings.fileType === 'json'\r\n ? await fetchAndParseJSON(\r\n dataSettings.dataURL,\r\n undefined,\r\n dataSettings.dataTransformation,\r\n debugMode,\r\n )\r\n : dataSettings.fileType === 'api'\r\n ? await fetchAndTransformDataFromAPI(\r\n dataSettings.dataURL,\r\n dataSettings.apiHeaders,\r\n undefined,\r\n dataSettings.dataTransformation,\r\n debugMode,\r\n )\r\n : await fetchAndParseCSV(\r\n dataSettings.dataURL,\r\n dataSettings.dataTransformation,\r\n undefined,\r\n debugMode,\r\n dataSettings.delimiter,\r\n true,\r\n )\r\n : await fetchAndParseMultipleDataSources(\r\n dataSettings.dataURL,\r\n dataSettings.idColumnTitle,\r\n )\r\n : await transformColumnsToArray(dataSettings.data, undefined);\r\n setUnformattedData(dataFromFile);\r\n updateDataAndFilterValueEvent();\r\n } catch (error) {\r\n console.error('Data fetching error:', error);\r\n }\r\n };\r\n fetchData();\r\n }, [dataSettings, debugMode]);\r\n\r\n useEffect(() => {\r\n updateDataAndFilterValueEvent();\r\n }, [dataFilters, readableHeader]);\r\n return (\r\n <div\r\n className={`${theme || 'light'} flex grow`}\r\n dir={\r\n dashboardLayout.language === 'he' || dashboardLayout.language === 'ar' ? 'rtl' : undefined\r\n }\r\n >\r\n <div\r\n className={`${\r\n !dashboardLayout?.backgroundColor\r\n ? 'bg-transparent '\r\n : dashboardLayout?.backgroundColor === true\r\n ? 'bg-primary-gray-200 dark:bg-primary-gray-650 '\r\n : ''\r\n }flex flex-col w-full ml-auto mr-auto grow gap-4 ${dashboardLayout?.language || 'en'}`}\r\n style={{\r\n ...(dashboardLayout?.backgroundColor && dashboardLayout?.backgroundColor !== true\r\n ? { backgroundColor: dashboardLayout?.backgroundColor }\r\n : {}),\r\n }}\r\n id={dashboardID}\r\n >\r\n <div\r\n className='flex grow'\r\n style={{\r\n padding: dashboardLayout.backgroundColor\r\n ? dashboardLayout.padding || '1rem'\r\n : dashboardLayout.padding || 0,\r\n }}\r\n >\r\n <div className='flex flex-col w-full gap-4 grow justify-between'>\r\n {dashboardLayout.title || dashboardLayout.description ? (\r\n <GraphHeader\r\n graphTitle={dashboardLayout.title}\r\n graphDescription={dashboardLayout.description}\r\n isDashboard\r\n />\r\n ) : null}\r\n {filteredData ? (\r\n <>\r\n <div\r\n style={{\r\n display: 'flex',\r\n gap: '1rem',\r\n flexWrap: 'wrap',\r\n alignItems: 'flex-start',\r\n width: '100%',\r\n }}\r\n >\r\n <div\r\n style={{\r\n width: '100%',\r\n flexGrow: 1,\r\n flexShrink: 0,\r\n minWidth: '240px',\r\n }}\r\n >\r\n {dashboardLayout.dropdownLabel ? (\r\n <Label className='mb-2'>{dashboardLayout.dropdownLabel}</Label>\r\n ) : null}\r\n <DropdownSelect\r\n options={filterValues.map(d => ({\r\n value: d,\r\n label: d,\r\n }))}\r\n size='sm'\r\n variant={uiMode}\r\n isClearable={false}\r\n isSearchable\r\n controlShouldRenderValue\r\n filterOption={createFilter(filterConfig)}\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onChange={(el: any) => {\r\n setSelectedFilterValues(el?.value);\r\n }}\r\n defaultValue={{\r\n value: selectedFilterValues as string,\r\n label: selectedFilterValues as string,\r\n }}\r\n />\r\n </div>\r\n </div>\r\n {dashboardLayout.rows.map((d, i) => (\r\n <div\r\n key={i}\r\n style={{\r\n display: 'flex',\r\n gap: '1rem',\r\n alignItems: 'stretch',\r\n minHeight: `${d.height || 0}px`,\r\n height: 'auto',\r\n width: '100%',\r\n flexWrap: 'wrap',\r\n }}\r\n >\r\n {d.columns.map((el, j) => (\r\n <div\r\n key={j}\r\n className='flex bg-transparent grow min-w-60'\r\n style={{\r\n width: `calc(${\r\n (100 * (el.columnWidth || 1)) / TotalWidth(d.columns)\r\n }% - ${\r\n (TotalWidth(d.columns) - (el.columnWidth || 1)) / TotalWidth(d.columns)\r\n }rem)`,\r\n minHeight: 'inherit',\r\n }}\r\n >\r\n <SingleGraphDashboard\r\n graphType={el.graphType}\r\n dataFilters={el.dataFilters}\r\n uiMode={uiMode}\r\n graphSettings={{\r\n ...(el.settings || {}),\r\n width: undefined,\r\n height: undefined,\r\n minHeight: undefined,\r\n relativeHeight: undefined,\r\n radius: el.graphType === 'donutChart' ? undefined : el.settings?.radius,\r\n size: el.graphType === 'unitChart' ? el.settings.size : undefined,\r\n language: el.settings?.language || dashboardLayout.language,\r\n theme: el.settings?.theme || theme,\r\n styles: el.settings?.styles || graphStyles,\r\n classNames: el.settings?.classNames || graphClassNames,\r\n }}\r\n dataSettings={{ data: filteredData }}\r\n graphDataConfiguration={\r\n el.graphDataConfiguration\r\n ? el.graphDataConfiguration\r\n : el.graphType === 'unitChart'\r\n ? [\r\n {\r\n columnId: 'indicator',\r\n chartConfigId: 'label',\r\n },\r\n { columnId: 'value', chartConfigId: 'value' },\r\n ]\r\n : [\r\n {\r\n columnId: 'indicator',\r\n chartConfigId: 'label',\r\n },\r\n { columnId: 'value', chartConfigId: 'size' },\r\n ]\r\n }\r\n debugMode={debugMode}\r\n readableHeader={readableHeader || []}\r\n />\r\n </div>\r\n ))}\r\n </div>\r\n ))}\r\n </>\r\n ) : (\r\n <div className='w-full flex justify-center p-4'>\r\n <Spinner />\r\n </div>\r\n )}\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n );\r\n}\r\n"],"names":["wideToLongTransformation","data","keyColumn","readableHeader","debugMode","transformedData","forEach","row","Object","entries","key","value","obj","indicator","findIndex","d","label","push","console","log","TotalWidth","columns","map","columnWidth","reduce","acc","cur","MultiGraphDashboardWideToLongFormat","props","dashboardID","dashboardLayout","dataSettings","theme","dataFilters","uiMode","graphStyles","graphClassNames","filterConfig","ignoreCase","ignoreAccents","trim","filteredData","setFilteredData","useState","undefined","filterValues","setFilterValues","selectedFilterValues","setSelectedFilterValues","setData","unformattedData","setUnformattedData","updateDataAndFilterValueEvent","useEffectEvent","filterData","el","tempData","updateFilteredDataEvent","filteredDataTemp","filter","item","useEffect","fetchData","dataFromFile","dataURL","fileType","fetchAndParseJSON","dataTransformation","fetchAndTransformDataFromAPI","apiHeaders","fetchAndParseCSV","delimiter","fetchAndParseMultipleDataSources","idColumnTitle","transformColumnsToArray","error","jsx","language","backgroundColor","padding","jsxs","title","description","GraphHeader","Fragment","display","gap","flexWrap","alignItems","width","flexGrow","flexShrink","minWidth","dropdownLabel","Label","DropdownSelect","createFilter","rows","i","minHeight","height","j","SingleGraphDashboard","graphType","settings","relativeHeight","radius","size","styles","classNames","graphDataConfiguration","columnId","chartConfigId","Spinner"],"mappings":"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"}
1
+ {"version":3,"file":"MultiGraphDashboardWideToLongFormat.js","sources":["../src/Utils/wideToLongTranformation.ts","../src/Components/Dashboard/MultiGraphDashboardWideToLongFormat.tsx"],"sourcesContent":["export function wideToLongTransformation(\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n data: any,\r\n keyColumn: string,\r\n readableHeader: {\r\n value: string;\r\n label: string;\r\n }[],\r\n debugMode?: boolean,\r\n) {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const transformedData: any = [];\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n data.forEach((row: any) => {\r\n Object.entries(row).forEach(([key, value]) => {\r\n if (key !== keyColumn) {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const obj: any = {\r\n indicator:\r\n readableHeader.findIndex(d => d.value === key) !== -1\r\n ? readableHeader[readableHeader.findIndex(d => d.value === key)].label\r\n : key,\r\n value,\r\n };\r\n obj[keyColumn] = row[keyColumn];\r\n transformedData.push(obj);\r\n }\r\n });\r\n });\r\n if (debugMode) {\r\n // eslint-disable-next-line no-console\r\n console.log(transformedData);\r\n }\r\n return transformedData;\r\n}\r\n","import { useEffect, useEffectEvent, useState } from 'react';\r\nimport { createFilter, DropdownSelect } from '@undp/design-system-react/DropdownSelect';\r\nimport { Label } from '@undp/design-system-react/Label';\r\nimport { Spinner } from '@undp/design-system-react/Spinner';\r\n\r\nimport { SingleGraphDashboard } from './SingleGraphDashboard';\r\n\r\nimport {\r\n ClassNameObject,\r\n DashboardFromWideToLongFormatColumnDataType,\r\n DashboardFromWideToLongFormatLayoutDataType,\r\n DataFilterDataType,\r\n DataSettingsWideToLongDataType,\r\n StyleObject,\r\n} from '@/Types';\r\nimport {\r\n fetchAndParseCSV,\r\n fetchAndParseJSON,\r\n fetchAndParseMultipleDataSources,\r\n fetchAndTransformDataFromAPI,\r\n} from '@/Utils/fetchAndParseData';\r\nimport { GraphHeader } from '@/Components/Elements/GraphHeader';\r\nimport { wideToLongTransformation } from '@/Utils/wideToLongTranformation';\r\nimport { filterData } from '@/Utils/transformData/filterData';\r\nimport { transformColumnsToArray } from '@/Utils/transformData/transformColumnsToArray';\r\n\r\ninterface Props {\r\n dashboardID?: string;\r\n dashboardLayout: DashboardFromWideToLongFormatLayoutDataType;\r\n dataSettings: DataSettingsWideToLongDataType;\r\n debugMode?: boolean;\r\n theme?: 'dark' | 'light';\r\n readableHeader?: {\r\n value: string;\r\n label: string;\r\n }[];\r\n dataFilters?: DataFilterDataType[];\r\n uiMode?: 'light' | 'normal';\r\n graphStyles?: StyleObject;\r\n graphClassNames?: ClassNameObject;\r\n}\r\n\r\nconst TotalWidth = (columns: DashboardFromWideToLongFormatColumnDataType[]) => {\r\n const columnWidth = columns.map(d => d.columnWidth || 1);\r\n const sum = columnWidth.reduce((acc, cur) => acc + cur, 0);\r\n return sum;\r\n};\r\n\r\nexport function MultiGraphDashboardWideToLongFormat(props: Props) {\r\n const {\r\n dashboardID,\r\n dashboardLayout,\r\n dataSettings,\r\n debugMode,\r\n theme = 'light',\r\n readableHeader,\r\n dataFilters,\r\n uiMode = 'normal',\r\n graphStyles,\r\n graphClassNames,\r\n } = props;\r\n\r\n const filterConfig = {\r\n ignoreCase: true,\r\n ignoreAccents: true,\r\n trim: true,\r\n };\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const [filteredData, setFilteredData] = useState<any>(undefined);\r\n const [filterValues, setFilterValues] = useState<string[]>([]);\r\n const [selectedFilterValues, setSelectedFilterValues] = useState<string | undefined>(undefined);\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const [data, setData] = useState<any>(undefined);\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const [unformattedData, setUnformattedData] = useState<any>(undefined);\r\n\r\n const updateDataAndFilterValueEvent = useEffectEvent(() => {\r\n const filteredData = filterData(unformattedData, dataFilters || []);\r\n setFilterValues(\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n filteredData.map((el: any) => el[dataSettings.keyColumn]),\r\n );\r\n setSelectedFilterValues(filteredData[0][dataSettings.keyColumn]);\r\n const tempData = wideToLongTransformation(\r\n filteredData,\r\n dataSettings.keyColumn,\r\n readableHeader || [],\r\n debugMode,\r\n );\r\n setData(tempData);\r\n });\r\n\r\n const updateFilteredDataEvent = useEffectEvent(() => {\r\n if (data) {\r\n const filteredDataTemp = data.filter(\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n (item: any) => item[dataSettings.keyColumn] === selectedFilterValues,\r\n );\r\n setFilteredData(filteredDataTemp);\r\n }\r\n });\r\n\r\n useEffect(() => {\r\n updateFilteredDataEvent();\r\n }, [selectedFilterValues, dataSettings.keyColumn]);\r\n useEffect(() => {\r\n const fetchData = async () => {\r\n try {\r\n const dataFromFile = dataSettings.dataURL\r\n ? typeof dataSettings.dataURL === 'string'\r\n ? dataSettings.fileType === 'json'\r\n ? await fetchAndParseJSON(\r\n dataSettings.dataURL,\r\n undefined,\r\n dataSettings.dataTransformation,\r\n debugMode,\r\n )\r\n : dataSettings.fileType === 'api'\r\n ? await fetchAndTransformDataFromAPI(\r\n dataSettings.dataURL,\r\n dataSettings.apiHeaders,\r\n undefined,\r\n dataSettings.dataTransformation,\r\n debugMode,\r\n )\r\n : await fetchAndParseCSV(\r\n dataSettings.dataURL,\r\n dataSettings.dataTransformation,\r\n undefined,\r\n debugMode,\r\n dataSettings.delimiter,\r\n true,\r\n )\r\n : await fetchAndParseMultipleDataSources(\r\n dataSettings.dataURL,\r\n dataSettings.idColumnTitle,\r\n )\r\n : await transformColumnsToArray(dataSettings.data, undefined);\r\n setUnformattedData(dataFromFile);\r\n updateDataAndFilterValueEvent();\r\n } catch (error) {\r\n console.error('Data fetching error:', error);\r\n }\r\n };\r\n fetchData();\r\n }, [dataSettings, debugMode]);\r\n\r\n useEffect(() => {\r\n updateDataAndFilterValueEvent();\r\n }, [dataFilters, readableHeader]);\r\n return (\r\n <div\r\n className={`${theme || 'light'} flex grow`}\r\n dir={\r\n dashboardLayout.language === 'he' || dashboardLayout.language === 'ar' ? 'rtl' : undefined\r\n }\r\n >\r\n <div\r\n className={`${\r\n !dashboardLayout?.backgroundColor\r\n ? 'bg-transparent '\r\n : dashboardLayout?.backgroundColor === true\r\n ? 'bg-primary-gray-200 dark:bg-primary-gray-650 '\r\n : ''\r\n }flex flex-col w-full ml-auto mr-auto grow gap-4 ${dashboardLayout?.language || 'en'}`}\r\n style={{\r\n ...(dashboardLayout?.backgroundColor && dashboardLayout?.backgroundColor !== true\r\n ? { backgroundColor: dashboardLayout?.backgroundColor }\r\n : {}),\r\n }}\r\n id={dashboardID}\r\n >\r\n <div\r\n className='flex grow'\r\n style={{\r\n padding: dashboardLayout.backgroundColor\r\n ? dashboardLayout.padding || '1rem'\r\n : dashboardLayout.padding || 0,\r\n }}\r\n >\r\n <div className='flex flex-col w-full gap-4 grow justify-between'>\r\n {dashboardLayout.title || dashboardLayout.description ? (\r\n <GraphHeader\r\n graphTitle={dashboardLayout.title}\r\n graphDescription={dashboardLayout.description}\r\n isDashboard\r\n />\r\n ) : null}\r\n {filteredData ? (\r\n <>\r\n <div\r\n style={{\r\n display: 'flex',\r\n gap: '1rem',\r\n flexWrap: 'wrap',\r\n alignItems: 'flex-start',\r\n width: '100%',\r\n }}\r\n >\r\n <div\r\n style={{\r\n width: '100%',\r\n flexGrow: 1,\r\n flexShrink: 0,\r\n minWidth: '240px',\r\n }}\r\n >\r\n {dashboardLayout.dropdownLabel ? (\r\n <Label className='mb-2'>{dashboardLayout.dropdownLabel}</Label>\r\n ) : null}\r\n <DropdownSelect\r\n options={filterValues.map(d => ({\r\n value: d,\r\n label: d,\r\n }))}\r\n size='sm'\r\n variant={uiMode}\r\n isClearable={false}\r\n isSearchable\r\n controlShouldRenderValue\r\n filterOption={createFilter(filterConfig)}\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onChange={(el: any) => {\r\n setSelectedFilterValues(el?.value);\r\n }}\r\n defaultValue={{\r\n value: selectedFilterValues as string,\r\n label: selectedFilterValues as string,\r\n }}\r\n />\r\n </div>\r\n </div>\r\n {dashboardLayout.rows.map((d, i) => (\r\n <div\r\n key={i}\r\n style={{\r\n display: 'flex',\r\n gap: '1rem',\r\n alignItems: 'stretch',\r\n minHeight: `${d.height || 0}px`,\r\n height: 'auto',\r\n width: '100%',\r\n flexWrap: 'wrap',\r\n }}\r\n >\r\n {d.columns.map((el, j) => (\r\n <div\r\n key={j}\r\n className='flex bg-transparent grow min-w-60'\r\n style={{\r\n width: `calc(${\r\n (100 * (el.columnWidth || 1)) / TotalWidth(d.columns)\r\n }% - ${\r\n (TotalWidth(d.columns) - (el.columnWidth || 1)) / TotalWidth(d.columns)\r\n }rem)`,\r\n minHeight: 'inherit',\r\n }}\r\n >\r\n <SingleGraphDashboard\r\n graphType={el.graphType}\r\n dataFilters={el.dataFilters}\r\n uiMode={uiMode}\r\n graphSettings={{\r\n ...(el.settings || {}),\r\n width: undefined,\r\n height: undefined,\r\n minHeight: undefined,\r\n relativeHeight: undefined,\r\n radius: el.graphType === 'donutChart' ? undefined : el.settings?.radius,\r\n size: el.graphType === 'unitChart' ? el.settings.size : undefined,\r\n language: el.settings?.language || dashboardLayout.language,\r\n theme: el.settings?.theme || theme,\r\n styles: el.settings?.styles || graphStyles,\r\n classNames: el.settings?.classNames || graphClassNames,\r\n }}\r\n dataSettings={{ data: filteredData }}\r\n graphDataConfiguration={\r\n el.graphDataConfiguration\r\n ? el.graphDataConfiguration\r\n : el.graphType === 'unitChart'\r\n ? [\r\n {\r\n columnId: 'indicator',\r\n chartConfigId: 'label',\r\n },\r\n { columnId: 'value', chartConfigId: 'value' },\r\n ]\r\n : [\r\n {\r\n columnId: 'indicator',\r\n chartConfigId: 'label',\r\n },\r\n { columnId: 'value', chartConfigId: 'size' },\r\n ]\r\n }\r\n debugMode={debugMode}\r\n readableHeader={readableHeader || []}\r\n />\r\n </div>\r\n ))}\r\n </div>\r\n ))}\r\n </>\r\n ) : (\r\n <div className='w-full flex justify-center p-4'>\r\n <Spinner />\r\n </div>\r\n )}\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n );\r\n}\r\n"],"names":["wideToLongTransformation","data","keyColumn","readableHeader","debugMode","transformedData","forEach","row","Object","entries","key","value","obj","indicator","findIndex","d","label","push","console","log","TotalWidth","columns","map","columnWidth","reduce","acc","cur","MultiGraphDashboardWideToLongFormat","props","dashboardID","dashboardLayout","dataSettings","theme","dataFilters","uiMode","graphStyles","graphClassNames","filterConfig","ignoreCase","ignoreAccents","trim","filteredData","setFilteredData","useState","undefined","filterValues","setFilterValues","selectedFilterValues","setSelectedFilterValues","setData","unformattedData","setUnformattedData","updateDataAndFilterValueEvent","useEffectEvent","filterData","el","tempData","updateFilteredDataEvent","filteredDataTemp","filter","item","useEffect","fetchData","dataFromFile","dataURL","fileType","fetchAndParseJSON","dataTransformation","fetchAndTransformDataFromAPI","apiHeaders","fetchAndParseCSV","delimiter","fetchAndParseMultipleDataSources","idColumnTitle","transformColumnsToArray","error","jsx","language","backgroundColor","padding","jsxs","title","description","GraphHeader","Fragment","display","gap","flexWrap","alignItems","width","flexGrow","flexShrink","minWidth","dropdownLabel","Label","DropdownSelect","createFilter","rows","i","minHeight","height","j","SingleGraphDashboard","graphType","settings","relativeHeight","radius","size","styles","classNames","graphDataConfiguration","columnId","chartConfigId","Spinner"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("./index-CHPV5EwG-D4pAp7u0.cjs"),l=require("react"),g=require("./Spinner-WHzzloYQ.cjs"),c=require("./MultiGraphDashboardWideToLongFormat.cjs"),m=require("./fetchAndParseData-QTF6tjij.cjs");function b(u){const e=i.compilerRuntimeExports.c(15),{config:t}=u,[a,n]=l.useState(void 0);let r,o;if(e[0]!==t?(r=()=>{(async()=>{if(typeof t=="string"){const h=await m.fetchAndParseJSON(t);n(h)}else n(t)})()},o=[t],e[0]=t,e[1]=r,e[2]=o):(r=e[1],o=e[2]),l.useEffect(r,o),!a){let s;return e[3]===Symbol.for("react.memo_cache_sentinel")?(s=i.jsxRuntimeExports.jsx("div",{className:"w-full flex justify-center p-4",children:i.jsxRuntimeExports.jsx(g.w,{})}),e[3]=s):s=e[3],s}let d;return e[4]!==a.dashboardID||e[5]!==a.dashboardLayout||e[6]!==a.dataFilters||e[7]!==a.dataSettings||e[8]!==a.debugMode||e[9]!==a.graphClassNames||e[10]!==a.graphStyles||e[11]!==a.readableHeader||e[12]!==a.theme||e[13]!==a.uiMode?(d=i.jsxRuntimeExports.jsx(c.MultiGraphDashboardWideToLongFormat,{dashboardID:a.dashboardID,dashboardLayout:a.dashboardLayout,dataSettings:a.dataSettings,debugMode:a.debugMode,theme:a.theme,readableHeader:a.readableHeader,dataFilters:a.dataFilters,uiMode:a.uiMode,graphStyles:a.graphStyles,graphClassNames:a.graphClassNames}),e[4]=a.dashboardID,e[5]=a.dashboardLayout,e[6]=a.dataFilters,e[7]=a.dataSettings,e[8]=a.debugMode,e[9]=a.graphClassNames,e[10]=a.graphStyles,e[11]=a.readableHeader,e[12]=a.theme,e[13]=a.uiMode,e[14]=d):d=e[14],d}exports.MultiGraphDashboardWideToLongFormatFromConfig=b;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("./compiler-runtime-oPPev21o.cjs"),l=require("react"),c=require("@undp/design-system-react/Spinner"),g=require("./MultiGraphDashboardWideToLongFormat.cjs"),m=require("./fetchAndParseData-QTF6tjij.cjs");function b(u){const e=i.compilerRuntimeExports.c(15),{config:t}=u,[a,n]=l.useState(void 0);let s,o;if(e[0]!==t?(s=()=>{(async()=>{if(typeof t=="string"){const h=await m.fetchAndParseJSON(t);n(h)}else n(t)})()},o=[t],e[0]=t,e[1]=s,e[2]=o):(s=e[1],o=e[2]),l.useEffect(s,o),!a){let r;return e[3]===Symbol.for("react.memo_cache_sentinel")?(r=i.jsxRuntimeExports.jsx("div",{className:"w-full flex justify-center p-4",children:i.jsxRuntimeExports.jsx(c.Spinner,{})}),e[3]=r):r=e[3],r}let d;return e[4]!==a.dashboardID||e[5]!==a.dashboardLayout||e[6]!==a.dataFilters||e[7]!==a.dataSettings||e[8]!==a.debugMode||e[9]!==a.graphClassNames||e[10]!==a.graphStyles||e[11]!==a.readableHeader||e[12]!==a.theme||e[13]!==a.uiMode?(d=i.jsxRuntimeExports.jsx(g.MultiGraphDashboardWideToLongFormat,{dashboardID:a.dashboardID,dashboardLayout:a.dashboardLayout,dataSettings:a.dataSettings,debugMode:a.debugMode,theme:a.theme,readableHeader:a.readableHeader,dataFilters:a.dataFilters,uiMode:a.uiMode,graphStyles:a.graphStyles,graphClassNames:a.graphClassNames}),e[4]=a.dashboardID,e[5]=a.dashboardLayout,e[6]=a.dataFilters,e[7]=a.dataSettings,e[8]=a.debugMode,e[9]=a.graphClassNames,e[10]=a.graphStyles,e[11]=a.readableHeader,e[12]=a.theme,e[13]=a.uiMode,e[14]=d):d=e[14],d}exports.MultiGraphDashboardWideToLongFormatFromConfig=b;
2
2
  //# sourceMappingURL=MultiGraphDashboardWideToLongFormatFromConfig.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"MultiGraphDashboardWideToLongFormatFromConfig.cjs","sources":["../src/Components/Dashboard/MultiGraphDashboardWideToLongFormatFromConfig.tsx"],"sourcesContent":["import { useEffect, useState } from 'react';\r\nimport { Spinner } from '@undp/design-system-react/Spinner';\r\n\r\nimport { MultiGraphDashboardWideToLongFormat } from './MultiGraphDashboardWideToLongFormat';\r\n\r\nimport {\r\n ClassNameObject,\r\n DashboardFromWideToLongFormatLayoutDataType,\r\n DataFilterDataType,\r\n DataSettingsWideToLongDataType,\r\n StyleObject,\r\n} from '@/Types';\r\nimport { fetchAndParseJSON } from '@/Utils/fetchAndParseData';\r\n\r\ninterface ConfigObject {\r\n validateDataAndSettings?: boolean;\r\n dashboardID?: string;\r\n dashboardLayout: DashboardFromWideToLongFormatLayoutDataType;\r\n dataSettings: DataSettingsWideToLongDataType;\r\n debugMode?: boolean;\r\n theme?: 'dark' | 'light';\r\n readableHeader?: {\r\n value: string;\r\n label: string;\r\n }[];\r\n dataFilters?: DataFilterDataType[];\r\n uiMode?: 'light' | 'normal';\r\n graphStyles?: StyleObject;\r\n graphClassNames?: ClassNameObject;\r\n}\r\n\r\ninterface Props {\r\n config: string | ConfigObject;\r\n}\r\n\r\nexport function MultiGraphDashboardWideToLongFormatFromConfig(props: Props) {\r\n const { config } = props;\r\n const [configSettings, setConfigSettings] = useState<ConfigObject | undefined>(undefined);\r\n useEffect(() => {\r\n const fetchData = async () => {\r\n if (typeof config === 'string') {\r\n const data = await fetchAndParseJSON(config);\r\n setConfigSettings(data);\r\n } else {\r\n setConfigSettings(config);\r\n }\r\n };\r\n fetchData();\r\n }, [config]);\r\n if (!configSettings)\r\n return (\r\n <div className='w-full flex justify-center p-4'>\r\n <Spinner />\r\n </div>\r\n );\r\n return (\r\n <MultiGraphDashboardWideToLongFormat\r\n dashboardID={configSettings.dashboardID}\r\n dashboardLayout={configSettings.dashboardLayout}\r\n dataSettings={configSettings.dataSettings}\r\n debugMode={configSettings.debugMode}\r\n theme={configSettings.theme}\r\n readableHeader={configSettings.readableHeader}\r\n dataFilters={configSettings.dataFilters}\r\n uiMode={configSettings.uiMode}\r\n graphStyles={configSettings.graphStyles}\r\n graphClassNames={configSettings.graphClassNames}\r\n />\r\n );\r\n}\r\n"],"names":["MultiGraphDashboardWideToLongFormatFromConfig","props","$","_c","config","configSettings","setConfigSettings","useState","undefined","t0","t1","data","fetchAndParseJSON","fetchData","useEffect","t2","Symbol","for","jsx","Spinner","dashboardID","dashboardLayout","dataFilters","dataSettings","debugMode","graphClassNames","graphStyles","readableHeader","theme","uiMode","MultiGraphDashboardWideToLongFormat"],"mappings":"6RAmCO,SAAAA,EAAAC,EAAA,CAAA,MAAAC,EAAAC,EAAAA,uBAAAA,EAAA,EAAA,EACL,CAAAC,OAAAA,CAAAA,EAAmBH,EACnB,CAAAI,EAAAC,CAAA,EAA4CC,EAAAA,SAAmCC,MAAS,EAAE,IAAAC,EAAAC,EAY1F,GAZ0FR,OAAAE,GAChFK,EAAAA,IAAA,EACU,SAAA,CAChB,GAAI,OAAOL,GAAW,SAAQ,CAC5B,MAAAO,EAAa,MAAMC,EAAAA,kBAAkBR,CAAM,EAC3CE,EAAkBK,CAAI,CAAC,MAEvBL,EAAkBF,CAAM,CACzB,GAEHS,CAAW,EACVH,EAAA,CAACN,CAAM,EAACF,KAAAE,EAAAF,KAAAO,EAAAP,KAAAQ,IAAAD,EAAAP,EAAA,CAAA,EAAAQ,EAAAR,EAAA,CAAA,GAVXY,EAAAA,UAAUL,EAUPC,CAAQ,EACP,CAACL,EAAc,CAAA,IAAAU,EAAA,OAAAb,EAAA,CAAA,IAAAc,OAAAC,IAAA,2BAAA,GAEfF,EAAAG,EAAAA,kBAAAA,IAAA,MAAA,CAAe,UAAA,iCACb,SAAAA,wBAACC,EAAAA,IAAO,EACV,EAAMjB,KAAAa,GAAAA,EAAAb,EAAA,CAAA,EAFNa,CAEM,CACN,IAAAA,EAAA,OAAAb,EAAA,CAAA,IAAAG,EAAAe,aAAAlB,EAAA,CAAA,IAAAG,EAAAgB,iBAAAnB,EAAA,CAAA,IAAAG,EAAAiB,aAAApB,EAAA,CAAA,IAAAG,EAAAkB,cAAArB,EAAA,CAAA,IAAAG,EAAAmB,WAAAtB,EAAA,CAAA,IAAAG,EAAAoB,iBAAAvB,EAAA,EAAA,IAAAG,EAAAqB,aAAAxB,EAAA,EAAA,IAAAG,EAAAsB,gBAAAzB,EAAA,EAAA,IAAAG,EAAAuB,OAAA1B,EAAA,EAAA,IAAAG,EAAAwB,QAEFd,0BAACe,EAAAA,oCAAA,CACc,YAAAzB,EAAce,YACV,gBAAAf,EAAcgB,gBACjB,aAAAhB,EAAckB,aACjB,UAAAlB,EAAcmB,UAClB,MAAAnB,EAAcuB,MACL,eAAAvB,EAAcsB,eACjB,YAAAtB,EAAciB,YACnB,OAAAjB,EAAcwB,OACT,YAAAxB,EAAcqB,YACV,gBAAArB,EAAcoB,gBAAgB,EAC/CvB,EAAA,CAAA,EAAAG,EAAAe,YAAAlB,EAAA,CAAA,EAAAG,EAAAgB,gBAAAnB,EAAA,CAAA,EAAAG,EAAAiB,YAAApB,EAAA,CAAA,EAAAG,EAAAkB,aAAArB,EAAA,CAAA,EAAAG,EAAAmB,UAAAtB,EAAA,CAAA,EAAAG,EAAAoB,gBAAAvB,EAAA,EAAA,EAAAG,EAAAqB,YAAAxB,EAAA,EAAA,EAAAG,EAAAsB,eAAAzB,EAAA,EAAA,EAAAG,EAAAuB,MAAA1B,EAAA,EAAA,EAAAG,EAAAwB,OAAA3B,MAAAa,GAAAA,EAAAb,EAAA,EAAA,EAXFa,CAWE"}
1
+ {"version":3,"file":"MultiGraphDashboardWideToLongFormatFromConfig.cjs","sources":["../src/Components/Dashboard/MultiGraphDashboardWideToLongFormatFromConfig.tsx"],"sourcesContent":["import { useEffect, useState } from 'react';\r\nimport { Spinner } from '@undp/design-system-react/Spinner';\r\n\r\nimport { MultiGraphDashboardWideToLongFormat } from './MultiGraphDashboardWideToLongFormat';\r\n\r\nimport {\r\n ClassNameObject,\r\n DashboardFromWideToLongFormatLayoutDataType,\r\n DataFilterDataType,\r\n DataSettingsWideToLongDataType,\r\n StyleObject,\r\n} from '@/Types';\r\nimport { fetchAndParseJSON } from '@/Utils/fetchAndParseData';\r\n\r\ninterface ConfigObject {\r\n validateDataAndSettings?: boolean;\r\n dashboardID?: string;\r\n dashboardLayout: DashboardFromWideToLongFormatLayoutDataType;\r\n dataSettings: DataSettingsWideToLongDataType;\r\n debugMode?: boolean;\r\n theme?: 'dark' | 'light';\r\n readableHeader?: {\r\n value: string;\r\n label: string;\r\n }[];\r\n dataFilters?: DataFilterDataType[];\r\n uiMode?: 'light' | 'normal';\r\n graphStyles?: StyleObject;\r\n graphClassNames?: ClassNameObject;\r\n}\r\n\r\ninterface Props {\r\n config: string | ConfigObject;\r\n}\r\n\r\nexport function MultiGraphDashboardWideToLongFormatFromConfig(props: Props) {\r\n const { config } = props;\r\n const [configSettings, setConfigSettings] = useState<ConfigObject | undefined>(undefined);\r\n useEffect(() => {\r\n const fetchData = async () => {\r\n if (typeof config === 'string') {\r\n const data = await fetchAndParseJSON(config);\r\n setConfigSettings(data);\r\n } else {\r\n setConfigSettings(config);\r\n }\r\n };\r\n fetchData();\r\n }, [config]);\r\n if (!configSettings)\r\n return (\r\n <div className='w-full flex justify-center p-4'>\r\n <Spinner />\r\n </div>\r\n );\r\n return (\r\n <MultiGraphDashboardWideToLongFormat\r\n dashboardID={configSettings.dashboardID}\r\n dashboardLayout={configSettings.dashboardLayout}\r\n dataSettings={configSettings.dataSettings}\r\n debugMode={configSettings.debugMode}\r\n theme={configSettings.theme}\r\n readableHeader={configSettings.readableHeader}\r\n dataFilters={configSettings.dataFilters}\r\n uiMode={configSettings.uiMode}\r\n graphStyles={configSettings.graphStyles}\r\n graphClassNames={configSettings.graphClassNames}\r\n />\r\n );\r\n}\r\n"],"names":["MultiGraphDashboardWideToLongFormatFromConfig","props","$","_c","config","configSettings","setConfigSettings","useState","undefined","t0","t1","data","fetchAndParseJSON","fetchData","useEffect","t2","Symbol","for","jsx","Spinner","dashboardID","dashboardLayout","dataFilters","dataSettings","debugMode","graphClassNames","graphStyles","readableHeader","theme","uiMode","MultiGraphDashboardWideToLongFormat"],"mappings":"0SAmCO,SAAAA,EAAAC,EAAA,CAAA,MAAAC,EAAAC,EAAAA,uBAAAA,EAAA,EAAA,EACL,CAAAC,OAAAA,CAAAA,EAAmBH,EACnB,CAAAI,EAAAC,CAAA,EAA4CC,EAAAA,SAAmCC,MAAS,EAAE,IAAAC,EAAAC,EAY1F,GAZ0FR,OAAAE,GAChFK,EAAAA,IAAA,EACU,SAAA,CAChB,GAAI,OAAOL,GAAW,SAAQ,CAC5B,MAAAO,EAAa,MAAMC,EAAAA,kBAAkBR,CAAM,EAC3CE,EAAkBK,CAAI,CAAC,MAEvBL,EAAkBF,CAAM,CACzB,GAEHS,CAAW,EACVH,EAAA,CAACN,CAAM,EAACF,KAAAE,EAAAF,KAAAO,EAAAP,KAAAQ,IAAAD,EAAAP,EAAA,CAAA,EAAAQ,EAAAR,EAAA,CAAA,GAVXY,EAAAA,UAAUL,EAUPC,CAAQ,EACP,CAACL,EAAc,CAAA,IAAAU,EAAA,OAAAb,EAAA,CAAA,IAAAc,OAAAC,IAAA,2BAAA,GAEfF,EAAAG,EAAAA,kBAAAA,IAAA,MAAA,CAAe,UAAA,iCACb,SAAAA,wBAACC,EAAAA,UAAO,EACV,EAAMjB,KAAAa,GAAAA,EAAAb,EAAA,CAAA,EAFNa,CAEM,CACN,IAAAA,EAAA,OAAAb,EAAA,CAAA,IAAAG,EAAAe,aAAAlB,EAAA,CAAA,IAAAG,EAAAgB,iBAAAnB,EAAA,CAAA,IAAAG,EAAAiB,aAAApB,EAAA,CAAA,IAAAG,EAAAkB,cAAArB,EAAA,CAAA,IAAAG,EAAAmB,WAAAtB,EAAA,CAAA,IAAAG,EAAAoB,iBAAAvB,EAAA,EAAA,IAAAG,EAAAqB,aAAAxB,EAAA,EAAA,IAAAG,EAAAsB,gBAAAzB,EAAA,EAAA,IAAAG,EAAAuB,OAAA1B,EAAA,EAAA,IAAAG,EAAAwB,QAEFd,0BAACe,EAAAA,oCAAA,CACc,YAAAzB,EAAce,YACV,gBAAAf,EAAcgB,gBACjB,aAAAhB,EAAckB,aACjB,UAAAlB,EAAcmB,UAClB,MAAAnB,EAAcuB,MACL,eAAAvB,EAAcsB,eACjB,YAAAtB,EAAciB,YACnB,OAAAjB,EAAcwB,OACT,YAAAxB,EAAcqB,YACV,gBAAArB,EAAcoB,gBAAgB,EAC/CvB,EAAA,CAAA,EAAAG,EAAAe,YAAAlB,EAAA,CAAA,EAAAG,EAAAgB,gBAAAnB,EAAA,CAAA,EAAAG,EAAAiB,YAAApB,EAAA,CAAA,EAAAG,EAAAkB,aAAArB,EAAA,CAAA,EAAAG,EAAAmB,UAAAtB,EAAA,CAAA,EAAAG,EAAAoB,gBAAAvB,EAAA,EAAA,EAAAG,EAAAqB,YAAAxB,EAAA,EAAA,EAAAG,EAAAsB,eAAAzB,EAAA,EAAA,EAAAG,EAAAuB,MAAA1B,EAAA,EAAA,EAAAG,EAAAwB,OAAA3B,MAAAa,GAAAA,EAAAb,EAAA,EAAA,EAXFa,CAWE"}
@@ -1,8 +1,8 @@
1
- import { c as m, j as i } from "./index-CHPV5EwG-BzibaIRc.js";
1
+ import { c as m, j as i } from "./compiler-runtime-qHgugrLy.js";
2
2
  import { useState as f, useEffect as g } from "react";
3
- import { w as u } from "./Spinner-B2IIKg9r.js";
3
+ import { Spinner as u } from "@undp/design-system-react/Spinner";
4
4
  import { MultiGraphDashboardWideToLongFormat as c } from "./MultiGraphDashboardWideToLongFormat.js";
5
- import { f as p } from "./fetchAndParseData-BAXhgTDM.js";
5
+ import { b as p } from "./fetchAndParseData-CDjQZ1fL.js";
6
6
  function D(n) {
7
7
  const e = m.c(15), {
8
8
  config: t
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("./index-CHPV5EwG-D4pAp7u0.cjs"),k=require("react"),C=require("./parse-xYI9yrvL.cjs"),Ve=require("./index-Cno4Q0YE.cjs"),He=require("./numberFormattingFunction-u2iNHL_c.cjs"),Be=require("./Tooltip-C9F3uYG0.cjs"),v=require("./checkIfNullOrUndefined-BCW3Y1ML.cjs"),Ie=require("./customArea-BAcQ3pBM.cjs"),Ze=require("./AxisTitle-DP_evhbe.cjs"),ze=require("./Axis-BTaS9oPQ.cjs"),Je=require("./XTicksAndGridLines-B4UhDVyU.cjs"),Ke=require("./ReferenceLine-CpU4G01Y.cjs"),Qe=require("./YTicksAndGridLines-sT3zdCs6.cjs"),_e=require("./index-BuhBhuCq.cjs"),J=require("./Colors.cjs"),Ee=require("./uniqBy-O05lp2S5.cjs"),Ae=require("./init-DU0ybBc_.cjs"),to=require("./time-CkcKbhwe.cjs"),eo=require("./linear-CgUCbw9F.cjs"),oo=require("./delaunay-rcy0HhZi.cjs"),Ue=require("./line-DaEMhXmx.cjs"),Re=require("./step-BZ3C8QFW.cjs"),no=require("./select-Bnfk0lJx.cjs"),Yt=require("./proxy-CqH8m8IQ.cjs"),io=require("./pointer-Dkq5NV1q.cjs"),ro=require("./use-in-view-dnRv_qqF.cjs"),so=require("./GraphFooter.cjs"),lo=require("./GraphHeader.cjs"),ao=require("./EmptyState-CFmiFPHz.cjs"),co=require("./ColorLegendWithMouseOver.cjs"),Ge=require("./GraphContainer-Cul9b74X.cjs"),uo=require("./getNoOfTicks-C_1CFXv_.cjs");function fo(e,t){return Array.from(t,r=>e[r])}function xo(e,...t){if(typeof e[Symbol.iterator]!="function")throw new TypeError("values is not iterable");e=Array.from(e);let[r]=t;if(r&&r.length!==2||t.length>1){const O=Uint32Array.from(e,(D,c)=>c);return t.length>1?(t=t.map(D=>e.map(D)),O.sort((D,c)=>{for(const s of t){const K=$e(s[D],s[c]);if(K)return K}})):(r=e.map(r),O.sort((D,c)=>$e(r[D],r[c]))),fo(e,O)}return e.sort(mo(r))}function mo(e=Ae.ascending){if(e===Ae.ascending)return $e;if(typeof e!="function")throw new TypeError("compare is not a function");return(t,r)=>{const O=e(t,r);return O||O===0?O:(e(r,r)===0)-(e(t,t)===0)}}function $e(e,t){return(e==null||!(e>=e))-(t==null||!(t>=t))||(e<t?-1:e>t?1:0)}function po(e){const t=i.compilerRuntimeExports.c(130),{data:r,width:O,height:D,lineColors:c,dateFormat:s,noOfXTicks:K,rightMargin:ct,topMargin:Ct,bottomMargin:w,suffix:M,prefix:Q,leftMargin:q,tooltip:ut,onSeriesMouseOver:ft,refValues:Rt,highlightAreaSettings:Ft,minValue:_,maxValue:Et,highlightedLines:U,animate:l,rtl:G,strokeWidth:T,showDots:me,annotations:Xt,customHighlightAreaSettings:xt,yAxisTitle:tt,noOfYTicks:ie,minDate:Pt,maxDate:Bt,curveType:mt,styles:R,colorDomain:S,selectedColor:At,classNames:E,showLabels:re,dimmedOpacity:I,precision:et,naLabel:pe,customLayers:$,showHighlightedLinesLabels:Zt,showDateOnHover:de,locale:W,padZeros:Y}=e,se=k.useRef(null);let pt;t[0]!==l.amount||t[1]!==l.once?(pt={once:l.once,amount:l.amount},t[0]=l.amount,t[1]=l.once,t[2]=pt):pt=t[2];const f=ro.useInView(se,pt),[V,y]=k.useState(!1);let x,kt;t[3]!==l.duration||t[4]!==V||t[5]!==f?(x=()=>{if(f&&!V){const o=setTimeout(()=>{y(!0)},(l.duration+.5)*1e3);return()=>clearTimeout(o)}},kt=[f,V,l.duration],t[3]=l.duration,t[4]=V,t[5]=f,t[6]=x,t[7]=kt):(x=t[6],kt=t[7]),k.useEffect(x,kt);const zt=mt==="linear"?Ue.curveLinear:mt==="step"?Re.curveStep:mt==="stepAfter"?Re.stepAfter:mt==="stepBefore"?Re.stepBefore:Re.monotoneX;let Dt;t[8]!==s?(Dt=o=>({...o,date:C.parse(`${o.date}`,s,new Date)}),t[8]=s,t[9]=Dt):Dt=t[9];const d=Ve.orderBy(r.map(Dt),["date"],["asc"]).filter(Po),j=Ee.uniqBy(d,"label",!0);let dt;t[10]!==s?(dt=o=>C.parse(`${o}`,s,new Date),t[10]=s,t[11]=dt):dt=t[11];const Lt=xo(Ee.uniqBy(r,"date",!0).map(dt),Xo),[m,ot]=k.useState(void 0),[ht,nt]=k.useState(void 0),[gt,it]=k.useState(void 0),Nt=tt?q+30:q;let yt;t[12]!==w||t[13]!==ct||t[14]!==Nt||t[15]!==Ct?(yt={top:Ct,bottom:w,left:Nt,right:ct},t[12]=w,t[13]=ct,t[14]=Nt,t[15]=Ct,t[16]=yt):yt=t[16];const h=yt,Jt=k.useRef(null),le=j.map(o=>Ve.orderBy(d.filter(n=>n.label==o),["date"],["asc"]));let rt;if(t[17]!==s||t[18]!==Ft){let o;t[20]!==s?(o=n=>({...n,coordinates:[n.coordinates[0]===null?null:C.parse(`${n.coordinates[0]}`,s,new Date),n.coordinates[1]===null?null:C.parse(`${n.coordinates[1]}`,s,new Date)]}),t[20]=s,t[21]=o):o=t[21],rt=Ft.map(o),t[17]=s,t[18]=Ft,t[19]=rt}else rt=t[19];const qt=rt;let st;if(t[22]!==xt||t[23]!==s){let o;t[25]!==s?(o=n=>({...n,coordinates:n.coordinates.map((g,Wt)=>Wt%2===0?C.parse(`${g}`,s,new Date):g)}),t[25]=s,t[26]=o):o=t[26],st=xt.map(o),t[22]=xt,t[23]=s,t[24]=st}else st=t[24];const Kt=st,p=O-h.left-h.right,b=D-h.top-h.bottom,ae=Pt?C.parse(`${Pt}`,s,new Date):Lt[0],ce=Bt?C.parse(`${Bt}`,s,new Date):Lt[Lt.length-1],A=v.checkIfNullOrUndefined(_)?Math.min(...d.map(Fo).filter(Yo))?Math.min(...d.map(Wo).filter(Go))>0?0:Math.min(...d.map(Uo).filter(Ho)):0:_,F=Math.max(...d.map(Vo).filter($o))?Math.max(...d.map(Io).filter(To)):0,u=to.time().domain([ae,ce]).range([0,p]);let lt;t[27]!==A||t[28]!==_?(lt=v.checkIfNullOrUndefined(_)?A:_,t[27]=A,t[28]=_,t[29]=lt):lt=t[29];let vt;t[30]!==F||t[31]!==Et?(vt=v.checkIfNullOrUndefined(Et)?F>0?F:0:Et,t[30]=F,t[31]=Et,t[32]=vt):vt=t[32];const a=eo.linear().domain([lt,vt]).range([b,0]).nice(),ue=oo.Delaunay.from(d.filter(Mo),o=>u(o.date),o=>a(o.y)).voronoi([0,0,p<0?0:p,b<0?0:b]),St=Ue.line().x(o=>u(o.date)).y(o=>a(o.y)).curve(zt),Qt=a.ticks(ie),Mt=u.ticks(K);k.useEffect(()=>{const o=g=>{const Wt=d[Ae.bisectCenter(d.map(So),u.invert(io.pointer(g)[0]),0)];ot(Wt||d[d.length-1]),it(g.clientY),nt(g.clientX),ft?.(Wt||d[d.length-1])},n=()=>{ot(void 0),nt(void 0),it(void 0)};no.select(Jt.current).on("mousemove",o).on("mouseout",n),ft?.(void 0)},[u,d,ft]);let jt;t[33]!==l||t[34]!==b||t[35]!==p||t[36]!==qt||t[37]!==f||t[38]!==u?(jt=i.jsxRuntimeExports.jsx(_e.HighlightArea,{areaSettings:qt,width:p,height:b,scale:u,animate:l,isInView:f}),t[33]=l,t[34]=b,t[35]=p,t[36]=qt,t[37]=f,t[38]=u,t[39]=jt):jt=t[39];const Tt=R?.yAxis?.gridLines,It=R?.yAxis?.labels;let X;t[40]!==Tt||t[41]!==It?(X={gridLines:Tt,labels:It},t[40]=Tt,t[41]=It,t[42]=X):X=t[42];const fe=E?.yAxis?.gridLines,Ot=E?.yAxis?.labels;let _t;t[43]!==fe||t[44]!==Ot?(_t={gridLines:fe,labels:Ot},t[43]=fe,t[44]=Ot,t[45]=_t):_t=t[45];const $t=a(A<0?0:A),xe=a(A<0?0:A),Vt=0-q,te=p+h.right,wt=A<0?0:A;let H;t[46]!==W||t[47]!==Y||t[48]!==et||t[49]!==Q||t[50]!==M||t[51]!==wt?(H=He.numberFormattingFunction(wt,void 0,et,Q,M,W,Y),t[46]=W,t[47]=Y,t[48]=et,t[49]=Q,t[50]=M,t[51]=wt,t[52]=H):H=t[52];const Ht=0-q,Ut=a(A<0?0:A),P=F<0?"1em":-5;let L;t[53]!==Ht||t[54]!==Ut||t[55]!==P?(L={x:Ht,y:Ut,dx:0,dy:P},t[53]=Ht,t[54]=Ut,t[55]=P,t[56]=L):L=t[56];const B=E?.xAxis?.axis,Z=E?.yAxis?.labels;let N;t[57]!==B||t[58]!==Z?(N={axis:B,label:Z},t[57]=B,t[58]=Z,t[59]=N):N=t[59];const z=R?.xAxis?.axis,bt=R?.yAxis?.labels;let at;t[60]!==z||t[61]!==bt?(at={axis:z,label:bt},t[60]=z,t[61]=bt,t[62]=at):at=t[62];let Gt;t[63]!==$t||t[64]!==xe||t[65]!==Vt||t[66]!==te||t[67]!==H||t[68]!==L||t[69]!==N||t[70]!==at?(Gt=i.jsxRuntimeExports.jsx(ze.Axis,{y1:$t,y2:xe,x1:Vt,x2:te,label:H,labelPos:L,classNames:N,styles:at}),t[63]=$t,t[64]=xe,t[65]=Vt,t[66]=te,t[67]=H,t[68]=L,t[69]=N,t[70]=at,t[71]=Gt):Gt=t[71];const ke=0-q-15,De=b/2,Le=R?.yAxis?.title,Ne=E?.yAxis?.title;let he;t[72]!==ke||t[73]!==De||t[74]!==Le||t[75]!==Ne||t[76]!==tt?(he=i.jsxRuntimeExports.jsx(Ze.AxisTitle,{x:ke,y:De,style:Le,className:Ne,text:tt,rotate90:!0}),t[72]=ke,t[73]=De,t[74]=Le,t[75]=Ne,t[76]=tt,t[77]=he):he=t[77];let ge;t[78]!==s?(ge=o=>C.format(o,s),t[78]=s,t[79]=ge):ge=t[79];const We=Mt.map(ge),Ye=Mt.map(o=>u(o)),qe=R?.xAxis?.gridLines,Se=R?.xAxis?.labels;let ye;t[80]!==qe||t[81]!==Se?(ye={gridLines:qe,labels:Se},t[80]=qe,t[81]=Se,t[82]=ye):ye=t[82];const Me=E?.xAxis?.gridLines;let ee;t[83]!==Me?(ee=i.mo("opacity-0",Me),t[83]=Me,t[84]=ee):ee=t[84];const Te=E?.xAxis?.labels;let oe;t[85]!==Te?(oe=i.mo("fill-primary-gray-700 dark:fill-primary-gray-300 xs:max-[360px]:hidden text-[9px] md:text-[10px] lg:text-xs",Te),t[85]=Te,t[86]=oe):oe=t[86];let ve;t[87]!==ee||t[88]!==oe?(ve={gridLines:ee,labels:oe},t[87]=ee,t[88]=oe,t[89]=ve):ve=t[89];let je;t[90]!==$?(je=$.filter(Lo).map(Do),t[90]=$,t[91]=je):je=t[91];const Fe=d.filter(yo).map((o,n)=>i.jsxRuntimeExports.jsx("g",{children:i.jsxRuntimeExports.jsx("path",{d:ue.renderCell(d.findIndex(g=>g.label===o.label&&g.date===o.date)),opacity:0,onMouseEnter:g=>{ot(o),it(g.clientY),nt(g.clientX),ft?.(o)},onMouseMove:g=>{ot(o),it(g.clientY),nt(g.clientX)},onMouseLeave:()=>{ot(void 0),nt(void 0),it(void 0),ft?.(void 0)}})},n));let Oe;t[92]!==l||t[93]!==p||t[94]!==f||t[95]!==q||t[96]!==h.right||t[97]!==Rt||t[98]!==a?(Oe=Rt?i.jsxRuntimeExports.jsx(i.jsxRuntimeExports.Fragment,{children:Rt.map((o,n)=>i.jsxRuntimeExports.jsx(Ke.RefLineY,{text:o.text,color:o.color,y:a(o.value),x1:0-q,x2:p+h.right,classNames:o.classNames,styles:o.styles,animate:l,isInView:f},n))}):null,t[92]=l,t[93]=p,t[94]=f,t[95]=q,t[96]=h.right,t[97]=Rt,t[98]=a,t[99]=Oe):Oe=t[99];let ne;if(t[100]!==l||t[101]!==Xt||t[102]!==s||t[103]!==p||t[104]!==f||t[105]!==h.right||t[106]!==G||t[107]!==u||t[108]!==a){let o;t[110]!==l||t[111]!==s||t[112]!==p||t[113]!==f||t[114]!==h.right||t[115]!==G||t[116]!==u||t[117]!==a?(o=(n,g)=>{const Wt=Ie.getLineEndPoint({x:n.xCoordinate?u(C.parse(`${n.xCoordinate}`,s,new Date))+(n.xOffset||0):0+(n.xOffset||0),y:n.yCoordinate?a(n.yCoordinate)+(n.yOffset||0)-8:0+(n.yOffset||0)-8},{x:n.xCoordinate?u(C.parse(`${n.xCoordinate}`,s,new Date)):0,y:n.yCoordinate?a(n.yCoordinate):0},v.checkIfNullOrUndefined(n.connectorRadius)?3.5:n.connectorRadius),Xe=n.showConnector?{y1:Wt.y,x1:Wt.x,y2:n.yCoordinate?a(n.yCoordinate)+(n.yOffset||0):0+(n.yOffset||0),x2:n.xCoordinate?u(C.parse(`${n.xCoordinate}`,s,new Date))+(n.xOffset||0):0+(n.xOffset||0),cy:n.yCoordinate?a(n.yCoordinate):0,cx:n.xCoordinate?u(C.parse(`${n.xCoordinate}`,s,new Date)):0,circleRadius:v.checkIfNullOrUndefined(n.connectorRadius)?3.5:n.connectorRadius,strokeWidth:n.showConnector===!0?2:Math.min(n.showConnector||0,1)}:void 0,Pe={y:n.yCoordinate?a(n.yCoordinate)+(n.yOffset||0)-8:0+(n.yOffset||0)-8,x:G?0:n.xCoordinate?u(C.parse(`${n.xCoordinate}`,s,new Date))+(n.xOffset||0):0+(n.xOffset||0),width:G?n.xCoordinate?u(C.parse(`${n.xCoordinate}`,s,new Date))+(n.xOffset||0):0+(n.xOffset||0):p+h.right-(n.xCoordinate?u(C.parse(`${n.xCoordinate}`,s,new Date))+(n.xOffset||0):0+(n.xOffset||0)),maxWidth:n.maxWidth,fontWeight:n.fontWeight,align:n.align};return i.jsxRuntimeExports.jsx(Ie.Annotation,{color:n.color,connectorsSettings:Xe,labelSettings:Pe,text:n.text,classNames:n.classNames,styles:n.styles,animate:l,isInView:f},g)},t[110]=l,t[111]=s,t[112]=p,t[113]=f,t[114]=h.right,t[115]=G,t[116]=u,t[117]=a,t[118]=o):o=t[118],ne=Xt.map(o),t[100]=l,t[101]=Xt,t[102]=s,t[103]=p,t[104]=f,t[105]=h.right,t[106]=G,t[107]=u,t[108]=a,t[109]=ne}else ne=t[109];let we;t[119]!==ne?(we=i.jsxRuntimeExports.jsx("g",{children:ne}),t[119]=ne,t[120]=we):we=t[120];let be;t[121]!==$?(be=$.filter(go).map(ho),t[121]=$,t[122]=be):be=t[122];let Ce;return t[123]!==E?.tooltip||t[124]!==ht||t[125]!==gt||t[126]!==m||t[127]!==R?.tooltip||t[128]!==ut?(Ce=m&&ut&&ht&&gt?i.jsxRuntimeExports.jsx(Be.Tooltip,{data:m,body:ut,xPos:ht,yPos:gt,backgroundStyle:R?.tooltip,className:E?.tooltip}):null,t[123]=E?.tooltip,t[124]=ht,t[125]=gt,t[126]=m,t[127]=R?.tooltip,t[128]=ut,t[129]=Ce):Ce=t[129],i.jsxRuntimeExports.jsxs(i.jsxRuntimeExports.Fragment,{children:[i.jsxRuntimeExports.jsx(Yt.motion.svg,{width:`${O}px`,height:`${D}px`,viewBox:`0 0 ${O} ${D}`,direction:"ltr",ref:se,children:i.jsxRuntimeExports.jsxs("g",{transform:`translate(${h.left},${h.top})`,children:[jt,i.jsxRuntimeExports.jsx(Ie.CustomArea,{areaSettings:Kt,scaleX:u,scaleY:a,animate:l,isInView:f}),i.jsxRuntimeExports.jsxs("g",{children:[i.jsxRuntimeExports.jsx(Qe.YTicksAndGridLines,{values:Qt.filter(qo),y:Qt.filter(No).map(o=>a(o)),x1:0-q,x2:p+h.right,styles:X,classNames:_t,suffix:M,prefix:Q,labelType:"secondary",showGridLines:!0,labelPos:"vertical",precision:et,locale:W,padZeros:Y}),Gt,he]}),i.jsxRuntimeExports.jsx("g",{children:i.jsxRuntimeExports.jsx(Je.XTicksAndGridLines,{values:We,x:Ye,y1:0,y2:b,styles:ye,classNames:ve,suffix:M,prefix:Q,labelType:"primary",showGridLines:!0,precision:et,locale:W,padZeros:Y})}),je,i.jsxRuntimeExports.jsxs(Yt.motion.g,{children:[le.map(o=>i.jsxRuntimeExports.jsxs(Yt.motion.g,{exit:{opacity:0,transition:{duration:l.duration}},variants:{initial:{opacity:m?o[0].label===m.label?1:I:At?o[0].color&&c[S.indexOf(o[0].color)]===At?1:I:U?U.indexOf(o[0].label)!==-1?1:I:1},whileInView:{opacity:m?o[0].label===m.label?1:I:At?o[0].color&&c[S.indexOf(o[0].color)]===At?1:I:U?U.indexOf(o[0].label)!==-1?1:I:1,transition:{duration:l.duration}}},initial:"initial",animate:f?"whileInView":"initial",children:[i.jsxRuntimeExports.jsx(Yt.motion.path,{d:St(o.filter(ko))||"",style:{fill:"none",strokeWidth:m?o[0].label===m.label?T+Math.max(2,.5*T):T:U&&U.indexOf(o[0].label)!==-1?T+Math.max(2,.5*T):T},exit:{opacity:0,transition:{duration:l.duration}},variants:{initial:{pathLength:0,d:St(o.filter(Ao))||"",opacity:1,stroke:r.filter(Eo).length===0?c[0]:o[0].color?c[S.indexOf(o[0].color)]:J.Colors.gray},whileInView:{pathLength:1,d:St(o.filter(Ro))||"",opacity:1,stroke:r.filter(Co).length===0?c[0]:o[0].color?c[S.indexOf(o[0].color)]:J.Colors.gray,transition:{duration:l.duration}}},initial:"initial",animate:f?"whileInView":"initial"}),o.map((n,g)=>i.jsxRuntimeExports.jsx(Yt.motion.g,{children:v.checkIfNullOrUndefined(n.y)?null:i.jsxRuntimeExports.jsx(i.jsxRuntimeExports.Fragment,{children:me?i.jsxRuntimeExports.jsx(Yt.motion.circle,{r:p/o.length<5?0:p/o.length<20?2:4,exit:{opacity:0,transition:{duration:l.duration}},variants:{initial:{opacity:0,fill:r.filter(bo).length===0?c[0]:o[0].color?c[S.indexOf(o[0].color)]:J.Colors.gray,cx:u(n.date),cy:a(n.y)},whileInView:{opacity:1,fill:r.filter(wo).length===0?c[0]:o[0].color?c[S.indexOf(o[0].color)]:J.Colors.gray,transition:{duration:V?l.duration:.5,delay:V?0:l.duration},cx:u(n.date),cy:a(n.y)}},initial:"initial",animate:f?"whileInView":"initial"}):null})},g)),((U||[]).indexOf(o[0].label)!==-1&&Zt||m?.label===o[0].label)&&re?i.jsxRuntimeExports.jsx(Yt.motion.text,{className:"text-sm font-bold",dx:5,dy:4,exit:{opacity:0,transition:{duration:l.duration}},variants:{initial:{opacity:0,fill:r.filter(Oo).length===0?c[0]:o[0].color?c[S.indexOf(o[0].color)]:J.Colors.gray,x:u(o[o.length-1].date),y:a(o[o.length-1].y)},whileInView:{opacity:1,fill:r.filter(jo).length===0?c[0]:o[0].color?c[S.indexOf(o[0].color)]:J.Colors.gray,x:u(o[o.length-1].date),y:a(o[o.length-1].y),transition:{duration:V?l.duration:.5,delay:V?0:l.duration}}},initial:"initial",animate:f?"whileInView":"initial",children:o[0].label}):null]},o[0].label)),m?i.jsxRuntimeExports.jsxs(i.jsxRuntimeExports.Fragment,{children:[i.jsxRuntimeExports.jsx("text",{y:a(m.y)-8,x:u(m.date),className:i.mo("graph-value text-sm font-bold",E?.graphObjectValues),style:{fill:r.filter(vo).length===0?c[0]:m.color?c[S.indexOf(m.color)]:J.Colors.gray,textAnchor:"middle",...R?.graphObjectValues||{}},children:He.numberFormattingFunction(m.y,pe,et,Q,M,W,Y)}),de&&i.jsxRuntimeExports.jsx("text",{y:a(m.y)+20,x:u(m.date),className:i.mo("graph-value text-sm fill-primary-gray-500 dark:fill-primary-gray-400",E?.graphObjectValues),style:{textAnchor:"middle",...R?.graphObjectValues||{}},children:C.format(new Date(m.date),s||"yyyy")})]}):null]}),Fe,Oe,we,be]})}),Ce]})}function ho(e){return e.layer}function go(e){return e.position==="after"}function yo(e){return!v.checkIfNullOrUndefined(e.y)}function vo(e){return e.color}function jo(e){return e.color}function Oo(e){return e.color}function wo(e){return e.color}function bo(e){return e.color}function Co(e){return e.color}function Ro(e){return!v.checkIfNullOrUndefined(e.y)}function Eo(e){return e.color}function Ao(e){return!v.checkIfNullOrUndefined(e.y)}function ko(e){return!v.checkIfNullOrUndefined(e.y)}function Do(e){return e.layer}function Lo(e){return e.position==="before"}function No(e){return e!==0}function qo(e){return e!==0}function So(e){return e.date}function Mo(e){return!v.checkIfNullOrUndefined(e.date)&&!v.checkIfNullOrUndefined(e.y)}function To(e){return!v.checkIfNullOrUndefined(e)}function Io(e){return e.y}function $o(e){return!v.checkIfNullOrUndefined(e)}function Vo(e){return e.y}function Ho(e){return!v.checkIfNullOrUndefined(e)}function Uo(e){return e.y}function Go(e){return!v.checkIfNullOrUndefined(e)}function Wo(e){return e.y}function Yo(e){return!v.checkIfNullOrUndefined(e)}function Fo(e){return e.y}function Xo(e,t){return Ae.ascending(e,t)}function Po(e){return!v.checkIfNullOrUndefined(e.y)}function Bo(e){const t=i.compilerRuntimeExports.c(108),{data:r,graphTitle:O,showNAColor:D,colors:c,colorDomain:s,sources:K,graphDescription:ct,height:Ct,width:w,footNote:M,noOfXTicks:Q,dateFormat:q,padding:ut,backgroundColor:ft,leftMargin:Rt,rightMargin:Ft,topMargin:_,bottomMargin:Et,showColorScale:U,tooltip:l,relativeHeight:G,onSeriesMouseOver:T,showLabels:me,showHighlightedLinesLabels:Xt,refValues:xt,highlightAreaSettings:tt,graphID:ie,minValue:Pt,maxValue:Bt,highlightedLines:mt,graphDownload:R,dataDownload:S,animate:At,language:E,colorLegendTitle:re,minHeight:I,strokeWidth:et,showDots:pe,annotations:$,customHighlightAreaSettings:Zt,theme:de,ariaLabel:W,yAxisTitle:Y,noOfYTicks:se,minDate:pt,maxDate:f,curveType:V,styles:y,classNames:x,dimmedOpacity:kt,customLayers:zt,naLabel:Dt,showDateOnHover:d,numberDisplayOptions:j}=e,dt=D===void 0?!0:D,Lt=Q===void 0?10:Q,m=q===void 0?"yyyy":q,ot=ft===void 0?!1:ft,ht=Rt===void 0?30:Rt,nt=Ft===void 0?50:Ft,gt=_===void 0?20:_,it=Et===void 0?25:Et,Nt=U===void 0?!0:U,yt=me===void 0?!0:me,h=Xt===void 0?!1:Xt;let Jt;t[0]!==xt?(Jt=xt===void 0?[]:xt,t[0]=xt,t[1]=Jt):Jt=t[1];const le=Jt;let rt;t[2]!==tt?(rt=tt===void 0?[]:tt,t[2]=tt,t[3]=rt):rt=t[3];const qt=rt,st=R===void 0?!1:R,Kt=S===void 0?!1:S,p=At===void 0?!1:At,b=E===void 0?"en":E,ae=I===void 0?0:I,ce=et===void 0?2:et,A=pe===void 0?!0:pe;let F;t[4]!==$?(F=$===void 0?[]:$,t[4]=$,t[5]=F):F=t[5];const u=F;let lt;t[6]!==Zt?(lt=Zt===void 0?[]:Zt,t[6]=Zt,t[7]=lt):lt=t[7];const vt=lt,a=de===void 0?"light":de,ue=se===void 0?5:se,St=V===void 0?"curve":V,Qt=kt===void 0?.3:kt;let Mt;t[8]!==zt?(Mt=zt===void 0?[]:zt,t[8]=zt,t[9]=Mt):Mt=t[9];const jt=Mt,Tt=Dt===void 0?"NA":Dt,It=d===void 0?!1:d,[X,fe]=k.useState(0),[Ot,_t]=k.useState(0),[$t,xe]=k.useState(void 0),Vt=k.useRef(null),te=k.useRef(null);let wt,H;t[10]===Symbol.for("react.memo_cache_sentinel")?(wt=()=>{const at=new ResizeObserver(Gt=>{fe(Gt[0].target.clientWidth||620),_t(Gt[0].target.clientHeight||480)});return Vt.current&&at.observe(Vt.current),()=>at.disconnect()},H=[],t[10]=wt,t[11]=H):(wt=t[10],H=t[11]),k.useEffect(wt,H);const Ht=x?.graphContainer,Ut=y?.graphContainer;let P;t[12]!==x?.description||t[13]!==x?.title||t[14]!==r||t[15]!==Kt||t[16]!==ct||t[17]!==st||t[18]!==O||t[19]!==y?.description||t[20]!==y?.title||t[21]!==w?(P=O||ct||st||Kt?i.jsxRuntimeExports.jsx(lo.GraphHeader,{styles:{title:y?.title,description:y?.description},classNames:{title:x?.title,description:x?.description},graphTitle:O,graphDescription:ct,width:w,graphDownload:st?te:void 0,dataDownload:Kt?r.map(en).filter(tn).length>0?r.map(_o).filter(Qo):r.filter(Ko):null}):null,t[12]=x?.description,t[13]=x?.title,t[14]=r,t[15]=Kt,t[16]=ct,t[17]=st,t[18]=O,t[19]=y?.description,t[20]=y?.title,t[21]=w,t[22]=P):P=t[22];let L;t[23]!==x?.colorLegend||t[24]!==s||t[25]!==re||t[26]!==c||t[27]!==r||t[28]!==Nt||t[29]!==dt||t[30]!==a||t[31]!==w?(L=Nt&&r.filter(Jo).length!==0&&r.length>0?i.jsxRuntimeExports.jsx(co.ColorLegendWithMouseOver,{width:w,colorLegendTitle:re,colors:c||J.Colors[a].categoricalColors.colors,colorDomain:s||Ee.uniqBy(r,"color",!0),setSelectedColor:xe,showNAColor:dt,className:x?.colorLegend}):null,t[23]=x?.colorLegend,t[24]=s,t[25]=re,t[26]=c,t[27]=r,t[28]=Nt,t[29]=dt,t[30]=a,t[31]=w,t[32]=L):L=t[32];let B;t[33]!==r.length?(B=r.length===0&&i.jsxRuntimeExports.jsx(ao.EmptyState,{}),t[33]=r.length,t[34]=B):B=t[34];let Z;t[35]!==p||t[36]!==u||t[37]!==it||t[38]!==x||t[39]!==s||t[40]!==c||t[41]!==St||t[42]!==vt||t[43]!==jt||t[44]!==r||t[45]!==m||t[46]!==Qt||t[47]!==qt||t[48]!==mt||t[49]!==b||t[50]!==ht||t[51]!==f||t[52]!==Bt||t[53]!==pt||t[54]!==Pt||t[55]!==Tt||t[56]!==Lt||t[57]!==ue||t[58]!==j?.locale||t[59]!==j?.padZeros||t[60]!==j?.precision||t[61]!==j?.prefix||t[62]!==j?.suffix||t[63]!==T||t[64]!==le||t[65]!==nt||t[66]!==$t||t[67]!==It||t[68]!==A||t[69]!==h||t[70]!==yt||t[71]!==ce||t[72]!==y||t[73]!==Ot||t[74]!==X||t[75]!==a||t[76]!==l||t[77]!==gt||t[78]!==Y?(Z=X&&Ot&&r.length>0?i.jsxRuntimeExports.jsx(po,{data:r,lineColors:r.filter(zo).length===0?c?[c]:[J.Colors.primaryColors["blue-600"]]:c||J.Colors[a].categoricalColors.colors,width:X,height:Ot,dateFormat:m,noOfXTicks:Lt??uo.getNoOfTicks(X),leftMargin:ht,rightMargin:nt,topMargin:gt,bottomMargin:it,tooltip:l,onSeriesMouseOver:T,highlightAreaSettings:qt,refValues:le,minValue:Pt,maxValue:Bt,highlightedLines:mt,showHighlightedLinesLabels:h,animate:p===!0?{duration:.5,once:!0,amount:.5}:p||{duration:0,once:!0,amount:0},rtl:b==="he"||b==="ar",strokeWidth:ce,showDots:A,annotations:u,customHighlightAreaSettings:vt,yAxisTitle:Y,noOfYTicks:ue,minDate:pt,maxDate:f,curveType:St,styles:y,classNames:x,selectedColor:$t,showLabels:yt,colorDomain:r.filter(Zo).length===0?[]:s||Ee.uniqBy(r,"color",!0),dimmedOpacity:Qt,customLayers:jt,naLabel:Tt,showDateOnHover:It,locale:j?.locale||"en",padZeros:j?.padZeros||!1,suffix:j?.suffix||"",prefix:j?.prefix||"",precision:j?.precision??2}):null,t[35]=p,t[36]=u,t[37]=it,t[38]=x,t[39]=s,t[40]=c,t[41]=St,t[42]=vt,t[43]=jt,t[44]=r,t[45]=m,t[46]=Qt,t[47]=qt,t[48]=mt,t[49]=b,t[50]=ht,t[51]=f,t[52]=Bt,t[53]=pt,t[54]=Pt,t[55]=Tt,t[56]=Lt,t[57]=ue,t[58]=j?.locale,t[59]=j?.padZeros,t[60]=j?.precision,t[61]=j?.prefix,t[62]=j?.suffix,t[63]=T,t[64]=le,t[65]=nt,t[66]=$t,t[67]=It,t[68]=A,t[69]=h,t[70]=yt,t[71]=ce,t[72]=y,t[73]=Ot,t[74]=X,t[75]=a,t[76]=l,t[77]=gt,t[78]=Y,t[79]=Z):Z=t[79];let N;t[80]!==B||t[81]!==Z?(N=i.jsxRuntimeExports.jsxs(Ge.GraphArea,{ref:Vt,children:[B,Z]}),t[80]=B,t[81]=Z,t[82]=N):N=t[82];let z;t[83]!==x?.footnote||t[84]!==x?.source||t[85]!==M||t[86]!==K||t[87]!==y?.footnote||t[88]!==y?.source||t[89]!==w?(z=K||M?i.jsxRuntimeExports.jsx(so.GraphFooter,{styles:{footnote:y?.footnote,source:y?.source},classNames:{footnote:x?.footnote,source:x?.source},sources:K,footNote:M,width:w}):null,t[83]=x?.footnote,t[84]=x?.source,t[85]=M,t[86]=K,t[87]=y?.footnote,t[88]=y?.source,t[89]=w,t[90]=z):z=t[90];let bt;return t[91]!==W||t[92]!==ot||t[93]!==ie||t[94]!==Ct||t[95]!==b||t[96]!==ae||t[97]!==ut||t[98]!==G||t[99]!==Ht||t[100]!==Ut||t[101]!==P||t[102]!==L||t[103]!==N||t[104]!==z||t[105]!==a||t[106]!==w?(bt=i.jsxRuntimeExports.jsxs(Ge.GraphContainer,{className:Ht,style:Ut,id:ie,ref:te,"aria-label":W,backgroundColor:ot,theme:a,language:b,minHeight:ae,width:w,height:Ct,relativeHeight:G,padding:ut,children:[P,L,N,z]}),t[91]=W,t[92]=ot,t[93]=ie,t[94]=Ct,t[95]=b,t[96]=ae,t[97]=ut,t[98]=G,t[99]=Ht,t[100]=Ut,t[101]=P,t[102]=L,t[103]=N,t[104]=z,t[105]=a,t[106]=w,t[107]=bt):bt=t[107],bt}function Zo(e){return e.color}function zo(e){return e.color}function Jo(e){return e.color}function Ko(e){return e!==void 0}function Qo(e){return e!==void 0}function _o(e){return e.data}function tn(e){return e!==void 0}function en(e){return e.data}exports.MultiLineAltChart=Bo;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("./compiler-runtime-oPPev21o.cjs"),k=require("react"),C=require("./parse-xYI9yrvL.cjs"),Re=require("@undp/design-system-react/cn"),He=require("./index-Cno4Q0YE.cjs"),Ue=require("./numberFormattingFunction-u2iNHL_c.cjs"),Ze=require("./Tooltip-DwUFLDrj.cjs"),v=require("./checkIfNullOrUndefined-BCW3Y1ML.cjs"),$e=require("./customArea-BCGIYDQa.cjs"),ze=require("./AxisTitle-CyFFbdNU.cjs"),Je=require("./Axis-DY7jsk1Y.cjs"),Ke=require("./XTicksAndGridLines-BO6KJc8d.cjs"),Qe=require("./ReferenceLine-CxITVT1K.cjs"),_e=require("./YTicksAndGridLines-C7glLI5b.cjs"),tn=require("./index-BaXzoD4r.cjs"),J=require("./Colors.cjs"),Ee=require("./uniqBy-O05lp2S5.cjs"),ke=require("./init-DU0ybBc_.cjs"),en=require("./time-CkcKbhwe.cjs"),nn=require("./linear-CgUCbw9F.cjs"),on=require("./delaunay-rcy0HhZi.cjs"),We=require("./line-DaEMhXmx.cjs"),Ae=require("./step-BZ3C8QFW.cjs"),rn=require("./select-Bnfk0lJx.cjs"),Yt=require("./proxy-QMeVVqam.cjs"),sn=require("./pointer-Dkq5NV1q.cjs"),ln=require("./use-in-view-DjR_gqJP.cjs"),an=require("./GraphFooter.cjs"),cn=require("./GraphHeader.cjs"),un=require("./EmptyState-BoaUUuo6.cjs"),fn=require("./ColorLegendWithMouseOver.cjs"),Ge=require("./GraphContainer-gaG9TSy4.cjs"),xn=require("./getNoOfTicks-C_1CFXv_.cjs");function mn(e,t){return Array.from(t,o=>e[o])}function pn(e,...t){if(typeof e[Symbol.iterator]!="function")throw new TypeError("values is not iterable");e=Array.from(e);let[o]=t;if(o&&o.length!==2||t.length>1){const O=Uint32Array.from(e,(D,c)=>c);return t.length>1?(t=t.map(D=>e.map(D)),O.sort((D,c)=>{for(const r of t){const K=Ve(r[D],r[c]);if(K)return K}})):(o=e.map(o),O.sort((D,c)=>Ve(o[D],o[c]))),mn(e,O)}return e.sort(dn(o))}function dn(e=ke.ascending){if(e===ke.ascending)return Ve;if(typeof e!="function")throw new TypeError("compare is not a function");return(t,o)=>{const O=e(t,o);return O||O===0?O:(e(o,o)===0)-(e(t,t)===0)}}function Ve(e,t){return(e==null||!(e>=e))-(t==null||!(t>=t))||(e<t?-1:e>t?1:0)}function hn(e){const t=s.compilerRuntimeExports.c(130),{data:o,width:O,height:D,lineColors:c,dateFormat:r,noOfXTicks:K,rightMargin:ct,topMargin:Ct,bottomMargin:w,suffix:M,prefix:Q,leftMargin:q,tooltip:ut,onSeriesMouseOver:ft,refValues:Rt,highlightAreaSettings:Ft,minValue:_,maxValue:At,highlightedLines:U,animate:l,rtl:W,strokeWidth:T,showDots:me,annotations:Xt,customHighlightAreaSettings:xt,yAxisTitle:tt,noOfYTicks:oe,minDate:Bt,maxDate:Pt,curveType:mt,styles:R,colorDomain:S,selectedColor:Et,classNames:A,showLabels:re,dimmedOpacity:I,precision:et,naLabel:pe,customLayers:$,showHighlightedLinesLabels:Zt,showDateOnHover:de,locale:G,padZeros:Y}=e,se=k.useRef(null);let pt;t[0]!==l.amount||t[1]!==l.once?(pt={once:l.once,amount:l.amount},t[0]=l.amount,t[1]=l.once,t[2]=pt):pt=t[2];const f=ln.useInView(se,pt),[V,y]=k.useState(!1);let x,kt;t[3]!==l.duration||t[4]!==V||t[5]!==f?(x=()=>{if(f&&!V){const n=setTimeout(()=>{y(!0)},(l.duration+.5)*1e3);return()=>clearTimeout(n)}},kt=[f,V,l.duration],t[3]=l.duration,t[4]=V,t[5]=f,t[6]=x,t[7]=kt):(x=t[6],kt=t[7]),k.useEffect(x,kt);const zt=mt==="linear"?We.curveLinear:mt==="step"?Ae.curveStep:mt==="stepAfter"?Ae.stepAfter:mt==="stepBefore"?Ae.stepBefore:Ae.monotoneX;let Dt;t[8]!==r?(Dt=n=>({...n,date:C.parse(`${n.date}`,r,new Date)}),t[8]=r,t[9]=Dt):Dt=t[9];const d=He.orderBy(o.map(Dt),["date"],["asc"]).filter(Pn),j=Ee.uniqBy(d,"label",!0);let dt;t[10]!==r?(dt=n=>C.parse(`${n}`,r,new Date),t[10]=r,t[11]=dt):dt=t[11];const Lt=pn(Ee.uniqBy(o,"date",!0).map(dt),Bn),[m,nt]=k.useState(void 0),[ht,it]=k.useState(void 0),[gt,ot]=k.useState(void 0),Nt=tt?q+30:q;let yt;t[12]!==w||t[13]!==ct||t[14]!==Nt||t[15]!==Ct?(yt={top:Ct,bottom:w,left:Nt,right:ct},t[12]=w,t[13]=ct,t[14]=Nt,t[15]=Ct,t[16]=yt):yt=t[16];const h=yt,Jt=k.useRef(null),le=j.map(n=>He.orderBy(d.filter(i=>i.label==n),["date"],["asc"]));let rt;if(t[17]!==r||t[18]!==Ft){let n;t[20]!==r?(n=i=>({...i,coordinates:[i.coordinates[0]===null?null:C.parse(`${i.coordinates[0]}`,r,new Date),i.coordinates[1]===null?null:C.parse(`${i.coordinates[1]}`,r,new Date)]}),t[20]=r,t[21]=n):n=t[21],rt=Ft.map(n),t[17]=r,t[18]=Ft,t[19]=rt}else rt=t[19];const qt=rt;let st;if(t[22]!==xt||t[23]!==r){let n;t[25]!==r?(n=i=>({...i,coordinates:i.coordinates.map((g,Gt)=>Gt%2===0?C.parse(`${g}`,r,new Date):g)}),t[25]=r,t[26]=n):n=t[26],st=xt.map(n),t[22]=xt,t[23]=r,t[24]=st}else st=t[24];const Kt=st,p=O-h.left-h.right,b=D-h.top-h.bottom,ae=Bt?C.parse(`${Bt}`,r,new Date):Lt[0],ce=Pt?C.parse(`${Pt}`,r,new Date):Lt[Lt.length-1],E=v.checkIfNullOrUndefined(_)?Math.min(...d.map(Xn).filter(Fn))?Math.min(...d.map(Yn).filter(Gn))>0?0:Math.min(...d.map(Wn).filter(Un)):0:_,F=Math.max(...d.map(Hn).filter(Vn))?Math.max(...d.map($n).filter(In)):0,u=en.time().domain([ae,ce]).range([0,p]);let lt;t[27]!==E||t[28]!==_?(lt=v.checkIfNullOrUndefined(_)?E:_,t[27]=E,t[28]=_,t[29]=lt):lt=t[29];let vt;t[30]!==F||t[31]!==At?(vt=v.checkIfNullOrUndefined(At)?F>0?F:0:At,t[30]=F,t[31]=At,t[32]=vt):vt=t[32];const a=nn.linear().domain([lt,vt]).range([b,0]).nice(),ue=on.Delaunay.from(d.filter(Tn),n=>u(n.date),n=>a(n.y)).voronoi([0,0,p<0?0:p,b<0?0:b]),St=We.line().x(n=>u(n.date)).y(n=>a(n.y)).curve(zt),Qt=a.ticks(oe),Mt=u.ticks(K);k.useEffect(()=>{const n=g=>{const Gt=d[ke.bisectCenter(d.map(Mn),u.invert(sn.pointer(g)[0]),0)];nt(Gt||d[d.length-1]),ot(g.clientY),it(g.clientX),ft?.(Gt||d[d.length-1])},i=()=>{nt(void 0),it(void 0),ot(void 0)};rn.select(Jt.current).on("mousemove",n).on("mouseout",i),ft?.(void 0)},[u,d,ft]);let jt;t[33]!==l||t[34]!==b||t[35]!==p||t[36]!==qt||t[37]!==f||t[38]!==u?(jt=s.jsxRuntimeExports.jsx(tn.HighlightArea,{areaSettings:qt,width:p,height:b,scale:u,animate:l,isInView:f}),t[33]=l,t[34]=b,t[35]=p,t[36]=qt,t[37]=f,t[38]=u,t[39]=jt):jt=t[39];const Tt=R?.yAxis?.gridLines,It=R?.yAxis?.labels;let X;t[40]!==Tt||t[41]!==It?(X={gridLines:Tt,labels:It},t[40]=Tt,t[41]=It,t[42]=X):X=t[42];const fe=A?.yAxis?.gridLines,Ot=A?.yAxis?.labels;let _t;t[43]!==fe||t[44]!==Ot?(_t={gridLines:fe,labels:Ot},t[43]=fe,t[44]=Ot,t[45]=_t):_t=t[45];const $t=a(E<0?0:E),xe=a(E<0?0:E),Vt=0-q,te=p+h.right,wt=E<0?0:E;let H;t[46]!==G||t[47]!==Y||t[48]!==et||t[49]!==Q||t[50]!==M||t[51]!==wt?(H=Ue.numberFormattingFunction(wt,void 0,et,Q,M,G,Y),t[46]=G,t[47]=Y,t[48]=et,t[49]=Q,t[50]=M,t[51]=wt,t[52]=H):H=t[52];const Ht=0-q,Ut=a(E<0?0:E),B=F<0?"1em":-5;let L;t[53]!==Ht||t[54]!==Ut||t[55]!==B?(L={x:Ht,y:Ut,dx:0,dy:B},t[53]=Ht,t[54]=Ut,t[55]=B,t[56]=L):L=t[56];const P=A?.xAxis?.axis,Z=A?.yAxis?.labels;let N;t[57]!==P||t[58]!==Z?(N={axis:P,label:Z},t[57]=P,t[58]=Z,t[59]=N):N=t[59];const z=R?.xAxis?.axis,bt=R?.yAxis?.labels;let at;t[60]!==z||t[61]!==bt?(at={axis:z,label:bt},t[60]=z,t[61]=bt,t[62]=at):at=t[62];let Wt;t[63]!==$t||t[64]!==xe||t[65]!==Vt||t[66]!==te||t[67]!==H||t[68]!==L||t[69]!==N||t[70]!==at?(Wt=s.jsxRuntimeExports.jsx(Je.Axis,{y1:$t,y2:xe,x1:Vt,x2:te,label:H,labelPos:L,classNames:N,styles:at}),t[63]=$t,t[64]=xe,t[65]=Vt,t[66]=te,t[67]=H,t[68]=L,t[69]=N,t[70]=at,t[71]=Wt):Wt=t[71];const De=0-q-15,Le=b/2,Ne=R?.yAxis?.title,qe=A?.yAxis?.title;let he;t[72]!==De||t[73]!==Le||t[74]!==Ne||t[75]!==qe||t[76]!==tt?(he=s.jsxRuntimeExports.jsx(ze.AxisTitle,{x:De,y:Le,style:Ne,className:qe,text:tt,rotate90:!0}),t[72]=De,t[73]=Le,t[74]=Ne,t[75]=qe,t[76]=tt,t[77]=he):he=t[77];let ge;t[78]!==r?(ge=n=>C.format(n,r),t[78]=r,t[79]=ge):ge=t[79];const Ye=Mt.map(ge),Fe=Mt.map(n=>u(n)),Se=R?.xAxis?.gridLines,Me=R?.xAxis?.labels;let ye;t[80]!==Se||t[81]!==Me?(ye={gridLines:Se,labels:Me},t[80]=Se,t[81]=Me,t[82]=ye):ye=t[82];const Te=A?.xAxis?.gridLines;let ee;t[83]!==Te?(ee=Re.cn("opacity-0",Te),t[83]=Te,t[84]=ee):ee=t[84];const Ie=A?.xAxis?.labels;let ne;t[85]!==Ie?(ne=Re.cn("fill-primary-gray-700 dark:fill-primary-gray-300 xs:max-[360px]:hidden text-[9px] md:text-[10px] lg:text-xs",Ie),t[85]=Ie,t[86]=ne):ne=t[86];let ve;t[87]!==ee||t[88]!==ne?(ve={gridLines:ee,labels:ne},t[87]=ee,t[88]=ne,t[89]=ve):ve=t[89];let je;t[90]!==$?(je=$.filter(Nn).map(Ln),t[90]=$,t[91]=je):je=t[91];const Xe=d.filter(vn).map((n,i)=>s.jsxRuntimeExports.jsx("g",{children:s.jsxRuntimeExports.jsx("path",{d:ue.renderCell(d.findIndex(g=>g.label===n.label&&g.date===n.date)),opacity:0,onMouseEnter:g=>{nt(n),ot(g.clientY),it(g.clientX),ft?.(n)},onMouseMove:g=>{nt(n),ot(g.clientY),it(g.clientX)},onMouseLeave:()=>{nt(void 0),it(void 0),ot(void 0),ft?.(void 0)}})},i));let Oe;t[92]!==l||t[93]!==p||t[94]!==f||t[95]!==q||t[96]!==h.right||t[97]!==Rt||t[98]!==a?(Oe=Rt?s.jsxRuntimeExports.jsx(s.jsxRuntimeExports.Fragment,{children:Rt.map((n,i)=>s.jsxRuntimeExports.jsx(Qe.RefLineY,{text:n.text,color:n.color,y:a(n.value),x1:0-q,x2:p+h.right,classNames:n.classNames,styles:n.styles,animate:l,isInView:f},i))}):null,t[92]=l,t[93]=p,t[94]=f,t[95]=q,t[96]=h.right,t[97]=Rt,t[98]=a,t[99]=Oe):Oe=t[99];let ie;if(t[100]!==l||t[101]!==Xt||t[102]!==r||t[103]!==p||t[104]!==f||t[105]!==h.right||t[106]!==W||t[107]!==u||t[108]!==a){let n;t[110]!==l||t[111]!==r||t[112]!==p||t[113]!==f||t[114]!==h.right||t[115]!==W||t[116]!==u||t[117]!==a?(n=(i,g)=>{const Gt=$e.getLineEndPoint({x:i.xCoordinate?u(C.parse(`${i.xCoordinate}`,r,new Date))+(i.xOffset||0):0+(i.xOffset||0),y:i.yCoordinate?a(i.yCoordinate)+(i.yOffset||0)-8:0+(i.yOffset||0)-8},{x:i.xCoordinate?u(C.parse(`${i.xCoordinate}`,r,new Date)):0,y:i.yCoordinate?a(i.yCoordinate):0},v.checkIfNullOrUndefined(i.connectorRadius)?3.5:i.connectorRadius),Be=i.showConnector?{y1:Gt.y,x1:Gt.x,y2:i.yCoordinate?a(i.yCoordinate)+(i.yOffset||0):0+(i.yOffset||0),x2:i.xCoordinate?u(C.parse(`${i.xCoordinate}`,r,new Date))+(i.xOffset||0):0+(i.xOffset||0),cy:i.yCoordinate?a(i.yCoordinate):0,cx:i.xCoordinate?u(C.parse(`${i.xCoordinate}`,r,new Date)):0,circleRadius:v.checkIfNullOrUndefined(i.connectorRadius)?3.5:i.connectorRadius,strokeWidth:i.showConnector===!0?2:Math.min(i.showConnector||0,1)}:void 0,Pe={y:i.yCoordinate?a(i.yCoordinate)+(i.yOffset||0)-8:0+(i.yOffset||0)-8,x:W?0:i.xCoordinate?u(C.parse(`${i.xCoordinate}`,r,new Date))+(i.xOffset||0):0+(i.xOffset||0),width:W?i.xCoordinate?u(C.parse(`${i.xCoordinate}`,r,new Date))+(i.xOffset||0):0+(i.xOffset||0):p+h.right-(i.xCoordinate?u(C.parse(`${i.xCoordinate}`,r,new Date))+(i.xOffset||0):0+(i.xOffset||0)),maxWidth:i.maxWidth,fontWeight:i.fontWeight,align:i.align};return s.jsxRuntimeExports.jsx($e.Annotation,{color:i.color,connectorsSettings:Be,labelSettings:Pe,text:i.text,classNames:i.classNames,styles:i.styles,animate:l,isInView:f},g)},t[110]=l,t[111]=r,t[112]=p,t[113]=f,t[114]=h.right,t[115]=W,t[116]=u,t[117]=a,t[118]=n):n=t[118],ie=Xt.map(n),t[100]=l,t[101]=Xt,t[102]=r,t[103]=p,t[104]=f,t[105]=h.right,t[106]=W,t[107]=u,t[108]=a,t[109]=ie}else ie=t[109];let we;t[119]!==ie?(we=s.jsxRuntimeExports.jsx("g",{children:ie}),t[119]=ie,t[120]=we):we=t[120];let be;t[121]!==$?(be=$.filter(yn).map(gn),t[121]=$,t[122]=be):be=t[122];let Ce;return t[123]!==A?.tooltip||t[124]!==ht||t[125]!==gt||t[126]!==m||t[127]!==R?.tooltip||t[128]!==ut?(Ce=m&&ut&&ht&&gt?s.jsxRuntimeExports.jsx(Ze.Tooltip,{data:m,body:ut,xPos:ht,yPos:gt,backgroundStyle:R?.tooltip,className:A?.tooltip}):null,t[123]=A?.tooltip,t[124]=ht,t[125]=gt,t[126]=m,t[127]=R?.tooltip,t[128]=ut,t[129]=Ce):Ce=t[129],s.jsxRuntimeExports.jsxs(s.jsxRuntimeExports.Fragment,{children:[s.jsxRuntimeExports.jsx(Yt.motion.svg,{width:`${O}px`,height:`${D}px`,viewBox:`0 0 ${O} ${D}`,direction:"ltr",ref:se,children:s.jsxRuntimeExports.jsxs("g",{transform:`translate(${h.left},${h.top})`,children:[jt,s.jsxRuntimeExports.jsx($e.CustomArea,{areaSettings:Kt,scaleX:u,scaleY:a,animate:l,isInView:f}),s.jsxRuntimeExports.jsxs("g",{children:[s.jsxRuntimeExports.jsx(_e.YTicksAndGridLines,{values:Qt.filter(Sn),y:Qt.filter(qn).map(n=>a(n)),x1:0-q,x2:p+h.right,styles:X,classNames:_t,suffix:M,prefix:Q,labelType:"secondary",showGridLines:!0,labelPos:"vertical",precision:et,locale:G,padZeros:Y}),Wt,he]}),s.jsxRuntimeExports.jsx("g",{children:s.jsxRuntimeExports.jsx(Ke.XTicksAndGridLines,{values:Ye,x:Fe,y1:0,y2:b,styles:ye,classNames:ve,suffix:M,prefix:Q,labelType:"primary",showGridLines:!0,precision:et,locale:G,padZeros:Y})}),je,s.jsxRuntimeExports.jsxs(Yt.motion.g,{children:[le.map(n=>s.jsxRuntimeExports.jsxs(Yt.motion.g,{exit:{opacity:0,transition:{duration:l.duration}},variants:{initial:{opacity:m?n[0].label===m.label?1:I:Et?n[0].color&&c[S.indexOf(n[0].color)]===Et?1:I:U?U.indexOf(n[0].label)!==-1?1:I:1},whileInView:{opacity:m?n[0].label===m.label?1:I:Et?n[0].color&&c[S.indexOf(n[0].color)]===Et?1:I:U?U.indexOf(n[0].label)!==-1?1:I:1,transition:{duration:l.duration}}},initial:"initial",animate:f?"whileInView":"initial",children:[s.jsxRuntimeExports.jsx(Yt.motion.path,{d:St(n.filter(Dn))||"",style:{fill:"none",strokeWidth:m?n[0].label===m.label?T+Math.max(2,.5*T):T:U&&U.indexOf(n[0].label)!==-1?T+Math.max(2,.5*T):T},exit:{opacity:0,transition:{duration:l.duration}},variants:{initial:{pathLength:0,d:St(n.filter(kn))||"",opacity:1,stroke:o.filter(En).length===0?c[0]:n[0].color?c[S.indexOf(n[0].color)]:J.Colors.gray},whileInView:{pathLength:1,d:St(n.filter(An))||"",opacity:1,stroke:o.filter(Rn).length===0?c[0]:n[0].color?c[S.indexOf(n[0].color)]:J.Colors.gray,transition:{duration:l.duration}}},initial:"initial",animate:f?"whileInView":"initial"}),n.map((i,g)=>s.jsxRuntimeExports.jsx(Yt.motion.g,{children:v.checkIfNullOrUndefined(i.y)?null:s.jsxRuntimeExports.jsx(s.jsxRuntimeExports.Fragment,{children:me?s.jsxRuntimeExports.jsx(Yt.motion.circle,{r:p/n.length<5?0:p/n.length<20?2:4,exit:{opacity:0,transition:{duration:l.duration}},variants:{initial:{opacity:0,fill:o.filter(Cn).length===0?c[0]:n[0].color?c[S.indexOf(n[0].color)]:J.Colors.gray,cx:u(i.date),cy:a(i.y)},whileInView:{opacity:1,fill:o.filter(bn).length===0?c[0]:n[0].color?c[S.indexOf(n[0].color)]:J.Colors.gray,transition:{duration:V?l.duration:.5,delay:V?0:l.duration},cx:u(i.date),cy:a(i.y)}},initial:"initial",animate:f?"whileInView":"initial"}):null})},g)),((U||[]).indexOf(n[0].label)!==-1&&Zt||m?.label===n[0].label)&&re?s.jsxRuntimeExports.jsx(Yt.motion.text,{className:"text-sm font-bold",dx:5,dy:4,exit:{opacity:0,transition:{duration:l.duration}},variants:{initial:{opacity:0,fill:o.filter(wn).length===0?c[0]:n[0].color?c[S.indexOf(n[0].color)]:J.Colors.gray,x:u(n[n.length-1].date),y:a(n[n.length-1].y)},whileInView:{opacity:1,fill:o.filter(On).length===0?c[0]:n[0].color?c[S.indexOf(n[0].color)]:J.Colors.gray,x:u(n[n.length-1].date),y:a(n[n.length-1].y),transition:{duration:V?l.duration:.5,delay:V?0:l.duration}}},initial:"initial",animate:f?"whileInView":"initial",children:n[0].label}):null]},n[0].label)),m?s.jsxRuntimeExports.jsxs(s.jsxRuntimeExports.Fragment,{children:[s.jsxRuntimeExports.jsx("text",{y:a(m.y)-8,x:u(m.date),className:Re.cn("graph-value text-sm font-bold",A?.graphObjectValues),style:{fill:o.filter(jn).length===0?c[0]:m.color?c[S.indexOf(m.color)]:J.Colors.gray,textAnchor:"middle",...R?.graphObjectValues||{}},children:Ue.numberFormattingFunction(m.y,pe,et,Q,M,G,Y)}),de&&s.jsxRuntimeExports.jsx("text",{y:a(m.y)+20,x:u(m.date),className:Re.cn("graph-value text-sm fill-primary-gray-500 dark:fill-primary-gray-400",A?.graphObjectValues),style:{textAnchor:"middle",...R?.graphObjectValues||{}},children:C.format(new Date(m.date),r||"yyyy")})]}):null]}),Xe,Oe,we,be]})}),Ce]})}function gn(e){return e.layer}function yn(e){return e.position==="after"}function vn(e){return!v.checkIfNullOrUndefined(e.y)}function jn(e){return e.color}function On(e){return e.color}function wn(e){return e.color}function bn(e){return e.color}function Cn(e){return e.color}function Rn(e){return e.color}function An(e){return!v.checkIfNullOrUndefined(e.y)}function En(e){return e.color}function kn(e){return!v.checkIfNullOrUndefined(e.y)}function Dn(e){return!v.checkIfNullOrUndefined(e.y)}function Ln(e){return e.layer}function Nn(e){return e.position==="before"}function qn(e){return e!==0}function Sn(e){return e!==0}function Mn(e){return e.date}function Tn(e){return!v.checkIfNullOrUndefined(e.date)&&!v.checkIfNullOrUndefined(e.y)}function In(e){return!v.checkIfNullOrUndefined(e)}function $n(e){return e.y}function Vn(e){return!v.checkIfNullOrUndefined(e)}function Hn(e){return e.y}function Un(e){return!v.checkIfNullOrUndefined(e)}function Wn(e){return e.y}function Gn(e){return!v.checkIfNullOrUndefined(e)}function Yn(e){return e.y}function Fn(e){return!v.checkIfNullOrUndefined(e)}function Xn(e){return e.y}function Bn(e,t){return ke.ascending(e,t)}function Pn(e){return!v.checkIfNullOrUndefined(e.y)}function Zn(e){const t=s.compilerRuntimeExports.c(108),{data:o,graphTitle:O,showNAColor:D,colors:c,colorDomain:r,sources:K,graphDescription:ct,height:Ct,width:w,footNote:M,noOfXTicks:Q,dateFormat:q,padding:ut,backgroundColor:ft,leftMargin:Rt,rightMargin:Ft,topMargin:_,bottomMargin:At,showColorScale:U,tooltip:l,relativeHeight:W,onSeriesMouseOver:T,showLabels:me,showHighlightedLinesLabels:Xt,refValues:xt,highlightAreaSettings:tt,graphID:oe,minValue:Bt,maxValue:Pt,highlightedLines:mt,graphDownload:R,dataDownload:S,animate:Et,language:A,colorLegendTitle:re,minHeight:I,strokeWidth:et,showDots:pe,annotations:$,customHighlightAreaSettings:Zt,theme:de,ariaLabel:G,yAxisTitle:Y,noOfYTicks:se,minDate:pt,maxDate:f,curveType:V,styles:y,classNames:x,dimmedOpacity:kt,customLayers:zt,naLabel:Dt,showDateOnHover:d,numberDisplayOptions:j}=e,dt=D===void 0?!0:D,Lt=Q===void 0?10:Q,m=q===void 0?"yyyy":q,nt=ft===void 0?!1:ft,ht=Rt===void 0?30:Rt,it=Ft===void 0?50:Ft,gt=_===void 0?20:_,ot=At===void 0?25:At,Nt=U===void 0?!0:U,yt=me===void 0?!0:me,h=Xt===void 0?!1:Xt;let Jt;t[0]!==xt?(Jt=xt===void 0?[]:xt,t[0]=xt,t[1]=Jt):Jt=t[1];const le=Jt;let rt;t[2]!==tt?(rt=tt===void 0?[]:tt,t[2]=tt,t[3]=rt):rt=t[3];const qt=rt,st=R===void 0?!1:R,Kt=S===void 0?!1:S,p=Et===void 0?!1:Et,b=A===void 0?"en":A,ae=I===void 0?0:I,ce=et===void 0?2:et,E=pe===void 0?!0:pe;let F;t[4]!==$?(F=$===void 0?[]:$,t[4]=$,t[5]=F):F=t[5];const u=F;let lt;t[6]!==Zt?(lt=Zt===void 0?[]:Zt,t[6]=Zt,t[7]=lt):lt=t[7];const vt=lt,a=de===void 0?"light":de,ue=se===void 0?5:se,St=V===void 0?"curve":V,Qt=kt===void 0?.3:kt;let Mt;t[8]!==zt?(Mt=zt===void 0?[]:zt,t[8]=zt,t[9]=Mt):Mt=t[9];const jt=Mt,Tt=Dt===void 0?"NA":Dt,It=d===void 0?!1:d,[X,fe]=k.useState(0),[Ot,_t]=k.useState(0),[$t,xe]=k.useState(void 0),Vt=k.useRef(null),te=k.useRef(null);let wt,H;t[10]===Symbol.for("react.memo_cache_sentinel")?(wt=()=>{const at=new ResizeObserver(Wt=>{fe(Wt[0].target.clientWidth||620),_t(Wt[0].target.clientHeight||480)});return Vt.current&&at.observe(Vt.current),()=>at.disconnect()},H=[],t[10]=wt,t[11]=H):(wt=t[10],H=t[11]),k.useEffect(wt,H);const Ht=x?.graphContainer,Ut=y?.graphContainer;let B;t[12]!==x?.description||t[13]!==x?.title||t[14]!==o||t[15]!==Kt||t[16]!==ct||t[17]!==st||t[18]!==O||t[19]!==y?.description||t[20]!==y?.title||t[21]!==w?(B=O||ct||st||Kt?s.jsxRuntimeExports.jsx(cn.GraphHeader,{styles:{title:y?.title,description:y?.description},classNames:{title:x?.title,description:x?.description},graphTitle:O,graphDescription:ct,width:w,graphDownload:st?te:void 0,dataDownload:Kt?o.map(ni).filter(ei).length>0?o.map(ti).filter(_n):o.filter(Qn):null}):null,t[12]=x?.description,t[13]=x?.title,t[14]=o,t[15]=Kt,t[16]=ct,t[17]=st,t[18]=O,t[19]=y?.description,t[20]=y?.title,t[21]=w,t[22]=B):B=t[22];let L;t[23]!==x?.colorLegend||t[24]!==r||t[25]!==re||t[26]!==c||t[27]!==o||t[28]!==Nt||t[29]!==dt||t[30]!==a||t[31]!==w?(L=Nt&&o.filter(Kn).length!==0&&o.length>0?s.jsxRuntimeExports.jsx(fn.ColorLegendWithMouseOver,{width:w,colorLegendTitle:re,colors:c||J.Colors[a].categoricalColors.colors,colorDomain:r||Ee.uniqBy(o,"color",!0),setSelectedColor:xe,showNAColor:dt,className:x?.colorLegend}):null,t[23]=x?.colorLegend,t[24]=r,t[25]=re,t[26]=c,t[27]=o,t[28]=Nt,t[29]=dt,t[30]=a,t[31]=w,t[32]=L):L=t[32];let P;t[33]!==o.length?(P=o.length===0&&s.jsxRuntimeExports.jsx(un.EmptyState,{}),t[33]=o.length,t[34]=P):P=t[34];let Z;t[35]!==p||t[36]!==u||t[37]!==ot||t[38]!==x||t[39]!==r||t[40]!==c||t[41]!==St||t[42]!==vt||t[43]!==jt||t[44]!==o||t[45]!==m||t[46]!==Qt||t[47]!==qt||t[48]!==mt||t[49]!==b||t[50]!==ht||t[51]!==f||t[52]!==Pt||t[53]!==pt||t[54]!==Bt||t[55]!==Tt||t[56]!==Lt||t[57]!==ue||t[58]!==j?.locale||t[59]!==j?.padZeros||t[60]!==j?.precision||t[61]!==j?.prefix||t[62]!==j?.suffix||t[63]!==T||t[64]!==le||t[65]!==it||t[66]!==$t||t[67]!==It||t[68]!==E||t[69]!==h||t[70]!==yt||t[71]!==ce||t[72]!==y||t[73]!==Ot||t[74]!==X||t[75]!==a||t[76]!==l||t[77]!==gt||t[78]!==Y?(Z=X&&Ot&&o.length>0?s.jsxRuntimeExports.jsx(hn,{data:o,lineColors:o.filter(Jn).length===0?c?[c]:[J.Colors.primaryColors["blue-600"]]:c||J.Colors[a].categoricalColors.colors,width:X,height:Ot,dateFormat:m,noOfXTicks:Lt??xn.getNoOfTicks(X),leftMargin:ht,rightMargin:it,topMargin:gt,bottomMargin:ot,tooltip:l,onSeriesMouseOver:T,highlightAreaSettings:qt,refValues:le,minValue:Bt,maxValue:Pt,highlightedLines:mt,showHighlightedLinesLabels:h,animate:p===!0?{duration:.5,once:!0,amount:.5}:p||{duration:0,once:!0,amount:0},rtl:b==="he"||b==="ar",strokeWidth:ce,showDots:E,annotations:u,customHighlightAreaSettings:vt,yAxisTitle:Y,noOfYTicks:ue,minDate:pt,maxDate:f,curveType:St,styles:y,classNames:x,selectedColor:$t,showLabels:yt,colorDomain:o.filter(zn).length===0?[]:r||Ee.uniqBy(o,"color",!0),dimmedOpacity:Qt,customLayers:jt,naLabel:Tt,showDateOnHover:It,locale:j?.locale||"en",padZeros:j?.padZeros||!1,suffix:j?.suffix||"",prefix:j?.prefix||"",precision:j?.precision??2}):null,t[35]=p,t[36]=u,t[37]=ot,t[38]=x,t[39]=r,t[40]=c,t[41]=St,t[42]=vt,t[43]=jt,t[44]=o,t[45]=m,t[46]=Qt,t[47]=qt,t[48]=mt,t[49]=b,t[50]=ht,t[51]=f,t[52]=Pt,t[53]=pt,t[54]=Bt,t[55]=Tt,t[56]=Lt,t[57]=ue,t[58]=j?.locale,t[59]=j?.padZeros,t[60]=j?.precision,t[61]=j?.prefix,t[62]=j?.suffix,t[63]=T,t[64]=le,t[65]=it,t[66]=$t,t[67]=It,t[68]=E,t[69]=h,t[70]=yt,t[71]=ce,t[72]=y,t[73]=Ot,t[74]=X,t[75]=a,t[76]=l,t[77]=gt,t[78]=Y,t[79]=Z):Z=t[79];let N;t[80]!==P||t[81]!==Z?(N=s.jsxRuntimeExports.jsxs(Ge.GraphArea,{ref:Vt,children:[P,Z]}),t[80]=P,t[81]=Z,t[82]=N):N=t[82];let z;t[83]!==x?.footnote||t[84]!==x?.source||t[85]!==M||t[86]!==K||t[87]!==y?.footnote||t[88]!==y?.source||t[89]!==w?(z=K||M?s.jsxRuntimeExports.jsx(an.GraphFooter,{styles:{footnote:y?.footnote,source:y?.source},classNames:{footnote:x?.footnote,source:x?.source},sources:K,footNote:M,width:w}):null,t[83]=x?.footnote,t[84]=x?.source,t[85]=M,t[86]=K,t[87]=y?.footnote,t[88]=y?.source,t[89]=w,t[90]=z):z=t[90];let bt;return t[91]!==G||t[92]!==nt||t[93]!==oe||t[94]!==Ct||t[95]!==b||t[96]!==ae||t[97]!==ut||t[98]!==W||t[99]!==Ht||t[100]!==Ut||t[101]!==B||t[102]!==L||t[103]!==N||t[104]!==z||t[105]!==a||t[106]!==w?(bt=s.jsxRuntimeExports.jsxs(Ge.GraphContainer,{className:Ht,style:Ut,id:oe,ref:te,"aria-label":G,backgroundColor:nt,theme:a,language:b,minHeight:ae,width:w,height:Ct,relativeHeight:W,padding:ut,children:[B,L,N,z]}),t[91]=G,t[92]=nt,t[93]=oe,t[94]=Ct,t[95]=b,t[96]=ae,t[97]=ut,t[98]=W,t[99]=Ht,t[100]=Ut,t[101]=B,t[102]=L,t[103]=N,t[104]=z,t[105]=a,t[106]=w,t[107]=bt):bt=t[107],bt}function zn(e){return e.color}function Jn(e){return e.color}function Kn(e){return e.color}function Qn(e){return e!==void 0}function _n(e){return e!==void 0}function ti(e){return e.data}function ei(e){return e!==void 0}function ni(e){return e.data}exports.MultiLineAltChart=Zn;
2
2
  //# sourceMappingURL=MultiLineAltChart.cjs.map