@undp/data-viz 2.3.17 → 2.4.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 (440) hide show
  1. package/dist/AreaChart.cjs +1 -1
  2. package/dist/AreaChart.cjs.map +1 -1
  3. package/dist/AreaChart.d.ts +2 -0
  4. package/dist/AreaChart.js +356 -354
  5. package/dist/AreaChart.js.map +1 -1
  6. package/dist/{Axis-Jt_tmhxS.cjs → Axis-BTaS9oPQ.cjs} +2 -2
  7. package/dist/{Axis-Jt_tmhxS.cjs.map → Axis-BTaS9oPQ.cjs.map} +1 -1
  8. package/dist/{Axis-RyGdzLrG.js → Axis-CNZYWzH0.js} +2 -2
  9. package/dist/{Axis-RyGdzLrG.js.map → Axis-CNZYWzH0.js.map} +1 -1
  10. package/dist/{AxisTitle-DGjX1_2v.js → AxisTitle-CyLCqpW6.js} +2 -2
  11. package/dist/{AxisTitle-DGjX1_2v.js.map → AxisTitle-CyLCqpW6.js.map} +1 -1
  12. package/dist/{AxisTitle-DV4n0RxE.cjs → AxisTitle-DP_evhbe.cjs} +2 -2
  13. package/dist/{AxisTitle-DV4n0RxE.cjs.map → AxisTitle-DP_evhbe.cjs.map} +1 -1
  14. package/dist/BarGraph.cjs +1 -1
  15. package/dist/BarGraph.cjs.map +1 -1
  16. package/dist/BarGraph.d.ts +6 -0
  17. package/dist/BarGraph.js +1735 -1726
  18. package/dist/BarGraph.js.map +1 -1
  19. package/dist/BasicStatCard.cjs +1 -1
  20. package/dist/BasicStatCard.cjs.map +1 -1
  21. package/dist/BasicStatCard.d.ts +2 -0
  22. package/dist/BasicStatCard.js +46 -45
  23. package/dist/BasicStatCard.js.map +1 -1
  24. package/dist/BeeSwarmChart.cjs +1 -1
  25. package/dist/BeeSwarmChart.cjs.map +1 -1
  26. package/dist/BeeSwarmChart.d.ts +2 -0
  27. package/dist/BeeSwarmChart.js +266 -266
  28. package/dist/BeeSwarmChart.js.map +1 -1
  29. package/dist/BiVariateChoroplethMap.cjs +1 -1
  30. package/dist/BiVariateChoroplethMap.cjs.map +1 -1
  31. package/dist/BiVariateChoroplethMap.d.ts +2 -0
  32. package/dist/BiVariateChoroplethMap.js +300 -298
  33. package/dist/BiVariateChoroplethMap.js.map +1 -1
  34. package/dist/BulletChart.cjs +1 -1
  35. package/dist/BulletChart.cjs.map +1 -1
  36. package/dist/BulletChart.d.ts +2 -0
  37. package/dist/BulletChart.js +469 -469
  38. package/dist/BulletChart.js.map +1 -1
  39. package/dist/ButterflyChart.cjs +1 -1
  40. package/dist/ButterflyChart.cjs.map +1 -1
  41. package/dist/ButterflyChart.d.ts +2 -0
  42. package/dist/ButterflyChart.js +330 -328
  43. package/dist/ButterflyChart.js.map +1 -1
  44. package/dist/ChoroplethMap.cjs +1 -1
  45. package/dist/ChoroplethMap.cjs.map +1 -1
  46. package/dist/ChoroplethMap.d.ts +2 -0
  47. package/dist/ChoroplethMap.js +303 -301
  48. package/dist/ChoroplethMap.js.map +1 -1
  49. package/dist/CirclePackingGraph.cjs +1 -1
  50. package/dist/CirclePackingGraph.d.ts +2 -0
  51. package/dist/CirclePackingGraph.js +4 -4
  52. package/dist/ColorLegend.cjs +1 -1
  53. package/dist/ColorLegend.js +2 -2
  54. package/dist/ColorLegendWithMouseOver.cjs +1 -1
  55. package/dist/ColorLegendWithMouseOver.js +2 -2
  56. package/dist/CopyTextButton.cjs +1 -1
  57. package/dist/CopyTextButton.cjs.map +1 -1
  58. package/dist/CopyTextButton.js +7 -9
  59. package/dist/CopyTextButton.js.map +1 -1
  60. package/dist/CsvDownloadButton.cjs +1 -1
  61. package/dist/CsvDownloadButton.js +2 -2
  62. package/dist/DataCards.cjs +1 -1
  63. package/dist/DataCards.cjs.map +1 -1
  64. package/dist/DataCards.js +10 -12
  65. package/dist/DataCards.js.map +1 -1
  66. package/dist/DataTable.cjs +1 -1
  67. package/dist/DataTable.cjs.map +1 -1
  68. package/dist/DataTable.d.ts +2 -0
  69. package/dist/DataTable.js +103 -102
  70. package/dist/DataTable.js.map +1 -1
  71. package/dist/{DetailsModal-C3qlUyFK.js → DetailsModal-B2XBWR7w.js} +4 -4
  72. package/dist/{DetailsModal-C3qlUyFK.js.map → DetailsModal-B2XBWR7w.js.map} +1 -1
  73. package/dist/{DetailsModal-DIRTulvr.cjs → DetailsModal-jmmKRMRM.cjs} +2 -2
  74. package/dist/{DetailsModal-DIRTulvr.cjs.map → DetailsModal-jmmKRMRM.cjs.map} +1 -1
  75. package/dist/DifferenceLineChart.cjs +1 -1
  76. package/dist/DifferenceLineChart.cjs.map +1 -1
  77. package/dist/DifferenceLineChart.d.ts +4 -0
  78. package/dist/DifferenceLineChart.js +441 -437
  79. package/dist/DifferenceLineChart.js.map +1 -1
  80. package/dist/DonutChart.cjs +1 -1
  81. package/dist/DonutChart.cjs.map +1 -1
  82. package/dist/DonutChart.d.ts +4 -0
  83. package/dist/DonutChart.js +146 -142
  84. package/dist/DonutChart.js.map +1 -1
  85. package/dist/DotDensityMap.cjs +1 -1
  86. package/dist/DotDensityMap.cjs.map +1 -1
  87. package/dist/DotDensityMap.js +265 -268
  88. package/dist/DotDensityMap.js.map +1 -1
  89. package/dist/{DropdownSelect-NNpOs7DX.cjs → DropdownSelect-CX1yMemd.cjs} +2 -2
  90. package/dist/DropdownSelect-CX1yMemd.cjs.map +1 -0
  91. package/dist/{DropdownSelect-B2WTeedJ.js → DropdownSelect-Dz7imdTB.js} +6 -9
  92. package/dist/DropdownSelect-Dz7imdTB.js.map +1 -0
  93. package/dist/DualAxisLineChart.cjs +1 -1
  94. package/dist/DualAxisLineChart.cjs.map +1 -1
  95. package/dist/DualAxisLineChart.d.ts +4 -0
  96. package/dist/DualAxisLineChart.js +336 -332
  97. package/dist/DualAxisLineChart.js.map +1 -1
  98. package/dist/DumbbellChart.cjs +1 -1
  99. package/dist/DumbbellChart.cjs.map +1 -1
  100. package/dist/DumbbellChart.d.ts +2 -0
  101. package/dist/DumbbellChart.js +484 -484
  102. package/dist/DumbbellChart.js.map +1 -1
  103. package/dist/{EmptyState-B4c-CrXs.cjs → EmptyState-CFmiFPHz.cjs} +2 -2
  104. package/dist/{EmptyState-B4c-CrXs.cjs.map → EmptyState-CFmiFPHz.cjs.map} +1 -1
  105. package/dist/{EmptyState-B3fPoH6L.js → EmptyState-CaxXCkiN.js} +4 -4
  106. package/dist/{EmptyState-B3fPoH6L.js.map → EmptyState-CaxXCkiN.js.map} +1 -1
  107. package/dist/ExcelDownloadButton.cjs +1 -1
  108. package/dist/ExcelDownloadButton.js +2 -2
  109. package/dist/FootNote.cjs +1 -1
  110. package/dist/FootNote.js +2 -2
  111. package/dist/GeoHubCompareMaps.cjs +1 -1
  112. package/dist/GeoHubCompareMaps.cjs.map +1 -1
  113. package/dist/GeoHubCompareMaps.js +111 -111
  114. package/dist/GeoHubCompareMaps.js.map +1 -1
  115. package/dist/GeoHubMap.cjs +1 -1
  116. package/dist/GeoHubMap.cjs.map +1 -1
  117. package/dist/GeoHubMap.js +71 -71
  118. package/dist/GeoHubMap.js.map +1 -1
  119. package/dist/GeoHubMapWithLayerSelection.cjs +1 -1
  120. package/dist/GeoHubMapWithLayerSelection.cjs.map +1 -1
  121. package/dist/GeoHubMapWithLayerSelection.js +83 -83
  122. package/dist/GeoHubMapWithLayerSelection.js.map +1 -1
  123. package/dist/{GraphContainer-DwMxWRCi.js → GraphContainer-B8ZqOzKI.js} +2 -2
  124. package/dist/{GraphContainer-DwMxWRCi.js.map → GraphContainer-B8ZqOzKI.js.map} +1 -1
  125. package/dist/{GraphContainer-B1EDxJ0S.cjs → GraphContainer-Cul9b74X.cjs} +2 -2
  126. package/dist/{GraphContainer-B1EDxJ0S.cjs.map → GraphContainer-Cul9b74X.cjs.map} +1 -1
  127. package/dist/GraphDescription.cjs +1 -1
  128. package/dist/GraphDescription.js +2 -2
  129. package/dist/{GraphEl-CnJf8b50.js → GraphEl-B73N4RIA.js} +48 -10
  130. package/dist/GraphEl-B73N4RIA.js.map +1 -0
  131. package/dist/GraphEl-Lt1og0C-.cjs +2 -0
  132. package/dist/GraphEl-Lt1og0C-.cjs.map +1 -0
  133. package/dist/GraphFooter.cjs +1 -1
  134. package/dist/GraphFooter.js +2 -2
  135. package/dist/GraphHeader.cjs +1 -1
  136. package/dist/GraphHeader.js +1 -1
  137. package/dist/GraphTitle.cjs +1 -1
  138. package/dist/GraphTitle.js +2 -2
  139. package/dist/GriddedGraphs.cjs +1 -1
  140. package/dist/GriddedGraphs.d.ts +1 -0
  141. package/dist/GriddedGraphs.js +6 -6
  142. package/dist/GriddedGraphsFromConfig.cjs +1 -1
  143. package/dist/GriddedGraphsFromConfig.d.ts +1 -0
  144. package/dist/GriddedGraphsFromConfig.js +2 -2
  145. package/dist/HeatMap.cjs +1 -1
  146. package/dist/HeatMap.cjs.map +1 -1
  147. package/dist/HeatMap.d.ts +4 -0
  148. package/dist/HeatMap.js +158 -155
  149. package/dist/HeatMap.js.map +1 -1
  150. package/dist/Histogram.cjs +1 -1
  151. package/dist/Histogram.cjs.map +1 -1
  152. package/dist/Histogram.d.ts +2 -0
  153. package/dist/Histogram.js +81 -80
  154. package/dist/Histogram.js.map +1 -1
  155. package/dist/HybridMap.cjs +1 -1
  156. package/dist/HybridMap.cjs.map +1 -1
  157. package/dist/HybridMap.d.ts +2 -0
  158. package/dist/HybridMap.js +314 -315
  159. package/dist/HybridMap.js.map +1 -1
  160. package/dist/ImageDownloadButton.cjs +1 -1
  161. package/dist/ImageDownloadButton.js +2 -2
  162. package/dist/LineChartWithConfidenceInterval.cjs +1 -1
  163. package/dist/LineChartWithConfidenceInterval.cjs.map +1 -1
  164. package/dist/LineChartWithConfidenceInterval.d.ts +2 -0
  165. package/dist/LineChartWithConfidenceInterval.js +367 -365
  166. package/dist/LineChartWithConfidenceInterval.js.map +1 -1
  167. package/dist/LinearColorLegend.cjs +1 -1
  168. package/dist/LinearColorLegend.cjs.map +1 -1
  169. package/dist/LinearColorLegend.d.ts +1 -0
  170. package/dist/LinearColorLegend.js +38 -37
  171. package/dist/LinearColorLegend.js.map +1 -1
  172. package/dist/{Modal-ZX55hLH-.cjs → Modal-BIErPPKT.cjs} +5 -5
  173. package/dist/{Modal-ZX55hLH-.cjs.map → Modal-BIErPPKT.cjs.map} +1 -1
  174. package/dist/{Modal-BV4rkoLM.js → Modal-CrUYln5V.js} +4 -4
  175. package/dist/{Modal-BV4rkoLM.js.map → Modal-CrUYln5V.js.map} +1 -1
  176. package/dist/MultiGraphDashboard.cjs +1 -1
  177. package/dist/MultiGraphDashboard.d.ts +1 -0
  178. package/dist/MultiGraphDashboard.js +4 -4
  179. package/dist/MultiGraphDashboardFromConfig.cjs +1 -1
  180. package/dist/MultiGraphDashboardFromConfig.d.ts +1 -0
  181. package/dist/MultiGraphDashboardFromConfig.js +2 -2
  182. package/dist/MultiGraphDashboardWideToLongFormat.cjs +1 -1
  183. package/dist/MultiGraphDashboardWideToLongFormat.js +4 -4
  184. package/dist/MultiGraphDashboardWideToLongFormatFromConfig.cjs +1 -1
  185. package/dist/MultiGraphDashboardWideToLongFormatFromConfig.js +2 -2
  186. package/dist/MultiLineAltChart.cjs +1 -1
  187. package/dist/MultiLineAltChart.cjs.map +1 -1
  188. package/dist/MultiLineAltChart.d.ts +2 -0
  189. package/dist/MultiLineAltChart.js +419 -420
  190. package/dist/MultiLineAltChart.js.map +1 -1
  191. package/dist/MultiLineChart.cjs +1 -1
  192. package/dist/MultiLineChart.cjs.map +1 -1
  193. package/dist/MultiLineChart.d.ts +4 -0
  194. package/dist/MultiLineChart.js +410 -409
  195. package/dist/MultiLineChart.js.map +1 -1
  196. package/dist/ParetoChart.cjs +1 -1
  197. package/dist/ParetoChart.cjs.map +1 -1
  198. package/dist/ParetoChart.d.ts +2 -0
  199. package/dist/ParetoChart.js +273 -271
  200. package/dist/ParetoChart.js.map +1 -1
  201. package/dist/PerformanceIntensiveMultiGraphDashboard.cjs +1 -1
  202. package/dist/PerformanceIntensiveMultiGraphDashboard.d.ts +1 -0
  203. package/dist/PerformanceIntensiveMultiGraphDashboard.js +4 -4
  204. package/dist/PerformanceIntensiveMultiGraphDashboardFromConfig.cjs +1 -1
  205. package/dist/PerformanceIntensiveMultiGraphDashboardFromConfig.d.ts +1 -0
  206. package/dist/PerformanceIntensiveMultiGraphDashboardFromConfig.js +2 -2
  207. package/dist/PerformanceIntensiveScrollStory.cjs +1 -1
  208. package/dist/PerformanceIntensiveScrollStory.d.ts +1 -0
  209. package/dist/PerformanceIntensiveScrollStory.js +3 -3
  210. package/dist/RadarChart.cjs +1 -1
  211. package/dist/RadarChart.cjs.map +1 -1
  212. package/dist/RadarChart.d.ts +2 -0
  213. package/dist/RadarChart.js +221 -219
  214. package/dist/RadarChart.js.map +1 -1
  215. package/dist/{ReferenceLine-M9aP3dj-.cjs → ReferenceLine-CpU4G01Y.cjs} +2 -2
  216. package/dist/{ReferenceLine-M9aP3dj-.cjs.map → ReferenceLine-CpU4G01Y.cjs.map} +1 -1
  217. package/dist/{ReferenceLine-CNEjAYvv.js → ReferenceLine-D41VuUhE.js} +3 -3
  218. package/dist/{ReferenceLine-CNEjAYvv.js.map → ReferenceLine-D41VuUhE.js.map} +1 -1
  219. package/dist/{RegressionLine-Ci-Dh0w0.cjs → RegressionLine-BFoBiVJk.cjs} +2 -2
  220. package/dist/{RegressionLine-Ci-Dh0w0.cjs.map → RegressionLine-BFoBiVJk.cjs.map} +1 -1
  221. package/dist/{RegressionLine-BDrndQxo.js → RegressionLine-CuwB42I6.js} +4 -4
  222. package/dist/{RegressionLine-BDrndQxo.js.map → RegressionLine-CuwB42I6.js.map} +1 -1
  223. package/dist/SVGDownloadButton.cjs +1 -1
  224. package/dist/SVGDownloadButton.js +2 -2
  225. package/dist/SankeyChart.cjs +1 -1
  226. package/dist/SankeyChart.cjs.map +1 -1
  227. package/dist/SankeyChart.d.ts +2 -0
  228. package/dist/SankeyChart.js +404 -408
  229. package/dist/SankeyChart.js.map +1 -1
  230. package/dist/ScatterPlot.cjs +1 -1
  231. package/dist/ScatterPlot.cjs.map +1 -1
  232. package/dist/ScatterPlot.d.ts +2 -0
  233. package/dist/ScatterPlot.js +444 -445
  234. package/dist/ScatterPlot.js.map +1 -1
  235. package/dist/ScrollStory.cjs +1 -1
  236. package/dist/ScrollStory.d.ts +1 -0
  237. package/dist/ScrollStory.js +3 -3
  238. package/dist/SimpleLineChart.cjs +1 -1
  239. package/dist/SimpleLineChart.cjs.map +1 -1
  240. package/dist/SimpleLineChart.d.ts +2 -0
  241. package/dist/SimpleLineChart.js +360 -358
  242. package/dist/SimpleLineChart.js.map +1 -1
  243. package/dist/SingleGraphDashboard.cjs +1 -1
  244. package/dist/SingleGraphDashboard.d.ts +1 -0
  245. package/dist/SingleGraphDashboard.js +6 -6
  246. package/dist/SingleGraphDashboardFromConfig.cjs +1 -1
  247. package/dist/SingleGraphDashboardFromConfig.d.ts +1 -0
  248. package/dist/SingleGraphDashboardFromConfig.js +2 -2
  249. package/dist/SingleGraphDashboardGeoHubMaps.cjs +1 -1
  250. package/dist/SingleGraphDashboardGeoHubMaps.d.ts +1 -0
  251. package/dist/SingleGraphDashboardGeoHubMaps.js +3 -3
  252. package/dist/SingleGraphDashboardGeoHubMapsFromConfig.cjs +1 -1
  253. package/dist/SingleGraphDashboardGeoHubMapsFromConfig.d.ts +1 -0
  254. package/dist/SingleGraphDashboardGeoHubMapsFromConfig.js +2 -2
  255. package/dist/SingleGraphDashboardThreeDGraphs.cjs +1 -1
  256. package/dist/SingleGraphDashboardThreeDGraphs.d.ts +1 -0
  257. package/dist/SingleGraphDashboardThreeDGraphs.js +6 -6
  258. package/dist/SingleGraphDashboardThreeDGraphsFromConfig.cjs +1 -1
  259. package/dist/SingleGraphDashboardThreeDGraphsFromConfig.d.ts +1 -0
  260. package/dist/SingleGraphDashboardThreeDGraphsFromConfig.js +2 -2
  261. package/dist/SlopeChart.cjs +1 -1
  262. package/dist/SlopeChart.cjs.map +1 -1
  263. package/dist/SlopeChart.js +259 -262
  264. package/dist/SlopeChart.js.map +1 -1
  265. package/dist/{Source-BOSAl3UX.cjs → Source-PKuwZOn3.cjs} +2 -2
  266. package/dist/{Source-BOSAl3UX.cjs.map → Source-PKuwZOn3.cjs.map} +1 -1
  267. package/dist/{Source-Djkz-7jX.js → Source-QGk8vhkS.js} +3 -3
  268. package/dist/{Source-Djkz-7jX.js.map → Source-QGk8vhkS.js.map} +1 -1
  269. package/dist/Source.cjs +1 -1
  270. package/dist/Source.js +3 -3
  271. package/dist/SparkLine.cjs +1 -1
  272. package/dist/SparkLine.js +3 -3
  273. package/dist/{Spinner-CtJETd5V.js → Spinner-B2IIKg9r.js} +2 -2
  274. package/dist/{Spinner-CtJETd5V.js.map → Spinner-B2IIKg9r.js.map} +1 -1
  275. package/dist/{Spinner-jTMOLuw_.cjs → Spinner-WHzzloYQ.cjs} +2 -2
  276. package/dist/{Spinner-jTMOLuw_.cjs.map → Spinner-WHzzloYQ.cjs.map} +1 -1
  277. package/dist/StatCardFromData.cjs +1 -1
  278. package/dist/StatCardFromData.cjs.map +1 -1
  279. package/dist/StatCardFromData.d.ts +4 -0
  280. package/dist/StatCardFromData.js +97 -95
  281. package/dist/StatCardFromData.js.map +1 -1
  282. package/dist/StripChart.cjs +1 -1
  283. package/dist/StripChart.cjs.map +1 -1
  284. package/dist/StripChart.d.ts +2 -0
  285. package/dist/StripChart.js +343 -343
  286. package/dist/StripChart.js.map +1 -1
  287. package/dist/ThreeDGlobe.cjs +1 -1
  288. package/dist/ThreeDGlobe.cjs.map +1 -1
  289. package/dist/ThreeDGlobe.d.ts +2 -0
  290. package/dist/ThreeDGlobe.js +198 -196
  291. package/dist/ThreeDGlobe.js.map +1 -1
  292. package/dist/ThresholdColorLegendWithMouseOver.cjs +1 -1
  293. package/dist/ThresholdColorLegendWithMouseOver.cjs.map +1 -1
  294. package/dist/ThresholdColorLegendWithMouseOver.d.ts +2 -0
  295. package/dist/ThresholdColorLegendWithMouseOver.js +50 -48
  296. package/dist/ThresholdColorLegendWithMouseOver.js.map +1 -1
  297. package/dist/{Tooltip-CohiIbLZ.js → Tooltip-Bj-s__cI.js} +3 -3
  298. package/dist/{Tooltip-CohiIbLZ.js.map → Tooltip-Bj-s__cI.js.map} +1 -1
  299. package/dist/{Tooltip-BLa2EfMs.cjs → Tooltip-Hr46paWP.cjs} +2 -2
  300. package/dist/{Tooltip-BLa2EfMs.cjs.map → Tooltip-Hr46paWP.cjs.map} +1 -1
  301. package/dist/TreeMapGraph.cjs +1 -1
  302. package/dist/TreeMapGraph.cjs.map +1 -1
  303. package/dist/TreeMapGraph.d.ts +2 -0
  304. package/dist/TreeMapGraph.js +139 -140
  305. package/dist/TreeMapGraph.js.map +1 -1
  306. package/dist/Types.d.ts +1 -0
  307. package/dist/{Typography-DMVW6JnV.js → Typography-BO0gQDIT.js} +2 -2
  308. package/dist/{Typography-DMVW6JnV.js.map → Typography-BO0gQDIT.js.map} +1 -1
  309. package/dist/{Typography-CZZxlj1W.cjs → Typography-BqmyF1gP.cjs} +2 -2
  310. package/dist/{Typography-CZZxlj1W.cjs.map → Typography-BqmyF1gP.cjs.map} +1 -1
  311. package/dist/UnitChart.cjs +1 -1
  312. package/dist/UnitChart.cjs.map +1 -1
  313. package/dist/UnitChart.d.ts +4 -0
  314. package/dist/UnitChart.js +88 -86
  315. package/dist/UnitChart.js.map +1 -1
  316. package/dist/WaterfallChart.cjs +1 -1
  317. package/dist/WaterfallChart.cjs.map +1 -1
  318. package/dist/WaterfallChart.d.ts +2 -0
  319. package/dist/WaterfallChart.js +257 -258
  320. package/dist/WaterfallChart.js.map +1 -1
  321. package/dist/{XAxesLabels-IwjMJkYS.js → XAxesLabels-B9gkjUiC.js} +3 -3
  322. package/dist/{XAxesLabels-IwjMJkYS.js.map → XAxesLabels-B9gkjUiC.js.map} +1 -1
  323. package/dist/{XAxesLabels-C6o9jJal.cjs → XAxesLabels-C03jHniq.cjs} +2 -2
  324. package/dist/{XAxesLabels-C6o9jJal.cjs.map → XAxesLabels-C03jHniq.cjs.map} +1 -1
  325. package/dist/XTicksAndGridLines-C5DuC5oY.cjs +2 -0
  326. package/dist/XTicksAndGridLines-C5DuC5oY.cjs.map +1 -0
  327. package/dist/XTicksAndGridLines-gdbGX2rm.js +39 -0
  328. package/dist/XTicksAndGridLines-gdbGX2rm.js.map +1 -0
  329. package/dist/{YAxesLabels-BQ2aCazV.cjs → YAxesLabels-DeENFC2M.cjs} +2 -2
  330. package/dist/{YAxesLabels-BQ2aCazV.cjs.map → YAxesLabels-DeENFC2M.cjs.map} +1 -1
  331. package/dist/{YAxesLabels-DoGvgHdw.js → YAxesLabels-hWEUCTvs.js} +3 -3
  332. package/dist/{YAxesLabels-DoGvgHdw.js.map → YAxesLabels-hWEUCTvs.js.map} +1 -1
  333. package/dist/YTicksAndGridLines-CsNSq9W9.js +39 -0
  334. package/dist/YTicksAndGridLines-CsNSq9W9.js.map +1 -0
  335. package/dist/YTicksAndGridLines-DFjm8RCc.cjs +2 -0
  336. package/dist/YTicksAndGridLines-DFjm8RCc.cjs.map +1 -0
  337. package/dist/{checkIfMultiple-TOaaUwS7.cjs → checkIfMultiple-CH5tqj4q.cjs} +2 -2
  338. package/dist/checkIfMultiple-CH5tqj4q.cjs.map +1 -0
  339. package/dist/{checkIfMultiple-B97uOUVq.js → checkIfMultiple-Dpyy6BUP.js} +6 -6
  340. package/dist/checkIfMultiple-Dpyy6BUP.js.map +1 -0
  341. package/dist/{customArea-B1LWQBmM.cjs → customArea-BAcQ3pBM.cjs} +2 -2
  342. package/dist/{customArea-B1LWQBmM.cjs.map → customArea-BAcQ3pBM.cjs.map} +1 -1
  343. package/dist/{customArea-Cc2whe6P.js → customArea-D89lETG0.js} +3 -3
  344. package/dist/{customArea-Cc2whe6P.js.map → customArea-D89lETG0.js.map} +1 -1
  345. package/dist/getSliderMarks-BzrpHrHS.cjs +2 -0
  346. package/dist/getSliderMarks-BzrpHrHS.cjs.map +1 -0
  347. package/dist/{getSliderMarks-vXsR8RrR.js → getSliderMarks-X-_goqH9.js} +3 -4
  348. package/dist/getSliderMarks-X-_goqH9.js.map +1 -0
  349. package/dist/{index-CZ0elhKR.js → index-ApTBN0kp.js} +20 -10
  350. package/dist/{index-CZ0elhKR.js.map → index-ApTBN0kp.js.map} +1 -1
  351. package/dist/index-B0Awa_de.js +377 -0
  352. package/dist/index-B0Awa_de.js.map +1 -0
  353. package/dist/{index-sbKVyHS2.cjs → index-BhI7mBJx.cjs} +2 -2
  354. package/dist/{index-sbKVyHS2.cjs.map → index-BhI7mBJx.cjs.map} +1 -1
  355. package/dist/{index-D69M6klB.cjs → index-BuhBhuCq.cjs} +2 -2
  356. package/dist/{index-D69M6klB.cjs.map → index-BuhBhuCq.cjs.map} +1 -1
  357. package/dist/{index-CHPV5EwG-BCLAYDCV.js → index-CHPV5EwG-BzibaIRc.js} +5 -9
  358. package/dist/index-CHPV5EwG-BzibaIRc.js.map +1 -0
  359. package/dist/{index-CHPV5EwG-6v2a2njQ.cjs → index-CHPV5EwG-D4pAp7u0.cjs} +3 -3
  360. package/dist/index-CHPV5EwG-D4pAp7u0.cjs.map +1 -0
  361. package/dist/index-CP8cmNzt.cjs +2 -0
  362. package/dist/index-CP8cmNzt.cjs.map +1 -0
  363. package/dist/{index-Co3YGYe1.js → index-Cv_5q6Rb.js} +3 -3
  364. package/dist/{index-Co3YGYe1.js.map → index-Cv_5q6Rb.js.map} +1 -1
  365. package/dist/{index-D_dtv_T9.js → index-DHVGV8Df.js} +3 -3
  366. package/dist/{index-D_dtv_T9.js.map → index-DHVGV8Df.js.map} +1 -1
  367. package/dist/{index-CoobIWNj.cjs → index-FXfr51ZM.cjs} +2 -2
  368. package/dist/{index-CoobIWNj.cjs.map → index-FXfr51ZM.cjs.map} +1 -1
  369. package/dist/{index-D6CYcVc7-BOa7Dpvf.js → index-Scxs_wcm-BAjU0Cob.js} +16 -16
  370. package/dist/index-Scxs_wcm-BAjU0Cob.js.map +1 -0
  371. package/dist/index-Scxs_wcm-DUDU-Gll.cjs +2 -0
  372. package/dist/index-Scxs_wcm-DUDU-Gll.cjs.map +1 -0
  373. package/dist/{index-DoS4bGNa-C3DbPpy3.cjs → index-w64Zl8io-DrMm5QSb.cjs} +2 -2
  374. package/dist/index-w64Zl8io-DrMm5QSb.cjs.map +1 -0
  375. package/dist/{index-DoS4bGNa-Bgab95kx.js → index-w64Zl8io-ihagHOdP.js} +2 -2
  376. package/dist/index-w64Zl8io-ihagHOdP.js.map +1 -0
  377. package/dist/index.cjs +1 -1
  378. package/dist/index.d.ts +92 -17
  379. package/dist/index.js +3 -3
  380. package/dist/numberFormattingFunction-Cn9R7CM9.cjs +2 -0
  381. package/dist/numberFormattingFunction-Cn9R7CM9.cjs.map +1 -0
  382. package/dist/numberFormattingFunction-DqMf_v1m.js +28 -0
  383. package/dist/numberFormattingFunction-DqMf_v1m.js.map +1 -0
  384. package/dist/{proxy--_f6k3NR.js → proxy-BsxtcZKa.js} +2 -2
  385. package/dist/{proxy--_f6k3NR.js.map → proxy-BsxtcZKa.js.map} +1 -1
  386. package/dist/{proxy-C4-uo6nS.cjs → proxy-CqH8m8IQ.cjs} +2 -2
  387. package/dist/{proxy-C4-uo6nS.cjs.map → proxy-CqH8m8IQ.cjs.map} +1 -1
  388. package/dist/{string2HTML-DUYZT1L9.js → string2HTML-BrFperRM.js} +2 -2
  389. package/dist/{string2HTML-DUYZT1L9.js.map → string2HTML-BrFperRM.js.map} +1 -1
  390. package/dist/{string2HTML-xx9MzTtY.cjs → string2HTML-ZoGd08P_.cjs} +2 -2
  391. package/dist/{string2HTML-xx9MzTtY.cjs.map → string2HTML-ZoGd08P_.cjs.map} +1 -1
  392. package/dist/style.css +1 -1
  393. package/dist/{use-in-view-DqvKAveg.js → use-in-view-KOXq5Kmc.js} +2 -2
  394. package/dist/{use-in-view-DqvKAveg.js.map → use-in-view-KOXq5Kmc.js.map} +1 -1
  395. package/dist/{use-in-view-C3o_ntMv.cjs → use-in-view-dnRv_qqF.cjs} +2 -2
  396. package/dist/{use-in-view-C3o_ntMv.cjs.map → use-in-view-dnRv_qqF.cjs.map} +1 -1
  397. package/dist/utils.cjs +1 -1
  398. package/dist/utils.d.ts +9 -18
  399. package/dist/utils.js +1 -1
  400. package/dist/x-BXShoIAM-BC2sxios.cjs +2 -0
  401. package/dist/x-BXShoIAM-BC2sxios.cjs.map +1 -0
  402. package/dist/{x-BBpi7a_7-BsvWCzYM.js → x-BXShoIAM-D6VWO6z5.js} +3 -5
  403. package/dist/x-BXShoIAM-D6VWO6z5.js.map +1 -0
  404. package/package.json +2 -2
  405. package/dist/DropdownSelect-B2WTeedJ.js.map +0 -1
  406. package/dist/DropdownSelect-NNpOs7DX.cjs.map +0 -1
  407. package/dist/GraphEl-CnJf8b50.js.map +0 -1
  408. package/dist/GraphEl-D_w0Qak4.cjs +0 -2
  409. package/dist/GraphEl-D_w0Qak4.cjs.map +0 -1
  410. package/dist/XTicksAndGridLines-BDmF9etl.js +0 -38
  411. package/dist/XTicksAndGridLines-BDmF9etl.js.map +0 -1
  412. package/dist/XTicksAndGridLines-CekrPykD.cjs +0 -2
  413. package/dist/XTicksAndGridLines-CekrPykD.cjs.map +0 -1
  414. package/dist/YTicksAndGridLines-C3GW1xFG.js +0 -38
  415. package/dist/YTicksAndGridLines-C3GW1xFG.js.map +0 -1
  416. package/dist/YTicksAndGridLines-UzVC5eBM.cjs +0 -2
  417. package/dist/YTicksAndGridLines-UzVC5eBM.cjs.map +0 -1
  418. package/dist/checkIfMultiple-B97uOUVq.js.map +0 -1
  419. package/dist/checkIfMultiple-TOaaUwS7.cjs.map +0 -1
  420. package/dist/getSliderMarks-CIuSoedo.cjs +0 -2
  421. package/dist/getSliderMarks-CIuSoedo.cjs.map +0 -1
  422. package/dist/getSliderMarks-vXsR8RrR.js.map +0 -1
  423. package/dist/index-C6VwVS8W.js +0 -378
  424. package/dist/index-C6VwVS8W.js.map +0 -1
  425. package/dist/index-CHPV5EwG-6v2a2njQ.cjs.map +0 -1
  426. package/dist/index-CHPV5EwG-BCLAYDCV.js.map +0 -1
  427. package/dist/index-D6CYcVc7-BOa7Dpvf.js.map +0 -1
  428. package/dist/index-D6CYcVc7-CTEcAtiQ.cjs +0 -2
  429. package/dist/index-D6CYcVc7-CTEcAtiQ.cjs.map +0 -1
  430. package/dist/index-DoS4bGNa-Bgab95kx.js.map +0 -1
  431. package/dist/index-DoS4bGNa-C3DbPpy3.cjs.map +0 -1
  432. package/dist/index-_TlgeI_i.cjs +0 -2
  433. package/dist/index-_TlgeI_i.cjs.map +0 -1
  434. package/dist/numberFormattingFunction-02t-wJta.cjs +0 -2
  435. package/dist/numberFormattingFunction-02t-wJta.cjs.map +0 -1
  436. package/dist/numberFormattingFunction-14YCbkN2.js +0 -13
  437. package/dist/numberFormattingFunction-14YCbkN2.js.map +0 -1
  438. package/dist/x-BBpi7a_7-BsvWCzYM.js.map +0 -1
  439. package/dist/x-BBpi7a_7-DXYIEFwN.cjs +0 -2
  440. package/dist/x-BBpi7a_7-DXYIEFwN.cjs.map +0 -1
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("./index-CHPV5EwG-6v2a2njQ.cjs"),b=require("react"),Ft=require("./parse-xYI9yrvL.cjs"),be=require("./index-Cno4Q0YE.cjs"),xe=require("./numberFormattingFunction-02t-wJta.cjs"),ke=require("./Tooltip-BLa2EfMs.cjs"),q=require("./checkIfNullOrUndefined-BCW3Y1ML.cjs"),Ne=require("./XTicksAndGridLines-CekrPykD.cjs"),ge=require("./Axis-Jt_tmhxS.cjs"),Ae=require("./AxisTitle-DV4n0RxE.cjs"),Oe=require("./index-D69M6klB.cjs"),Le=require("./time-CkcKbhwe.cjs"),we=require("./linear-CgUCbw9F.cjs"),ve=require("./line-DaEMhXmx.cjs"),me=require("./step-BZ3C8QFW.cjs"),Ie=require("./select-Bnfk0lJx.cjs"),mt=require("./proxy-C4-uo6nS.cjs"),Se=require("./init-DU0ybBc_.cjs"),De=require("./pointer-Dkq5NV1q.cjs"),qe=require("./use-in-view-C3o_ntMv.cjs"),Me=require("./GraphFooter.cjs"),Te=require("./GraphHeader.cjs"),Ce=require("./ColorLegend.cjs"),Ee=require("./Colors.cjs"),Ve=require("./EmptyState-B4c-CrXs.cjs"),Re=require("./GraphContainer-B1EDxJ0S.cjs"),$e=require("./getNoOfTicks-C_1CFXv_.cjs");function Fe(e){const t=n.compilerRuntimeExports.c(117),{data:v,width:K,height:Q,lineColors:o,labels:j,sameAxes:A,dateFormat:f,showValues:Rt,noOfXTicks:Kt,rightMargin:Qt,leftMargin:Pt,topMargin:Z,bottomMargin:bt,tooltip:ft,highlightAreaSettings:kt,onSeriesMouseOver:Nt,animate:s,strokeWidth:G,showDots:M,noOfYTicks:pt,lineSuffixes:H,linePrefixes:_,minDate:dt,maxDate:Ot,curveType:tt,styles:a,classNames:c,precision:et,customLayers:U,showAxisLabels:W}=e,Gt=b.useRef(null);let ht;t[0]!==s.amount||t[1]!==s.once?(ht={once:s.once,amount:s.amount},t[0]=s.amount,t[1]=s.once,t[2]=ht):ht=t[2];const d=qe.useInView(Gt,ht),[y,Ht]=b.useState(!1);let yt,it;t[3]!==s.duration||t[4]!==y||t[5]!==d?(yt=()=>{if(d&&!y){const i=setTimeout(()=>{Ht(!0)},(s.duration+.5)*1e3);return()=>clearTimeout(i)}},it=[d,y,s.duration],t[3]=s.duration,t[4]=y,t[5]=d,t[6]=yt,t[7]=it):(yt=t[6],it=t[7]),b.useEffect(yt,it);const Ut=tt==="linear"?ve.curveLinear:tt==="step"?me.curveStep:tt==="stepAfter"?me.stepAfter:tt==="stepBefore"?me.stepBefore:me.monotoneX,[N,Lt]=b.useState(void 0),[gt,p]=b.useState(void 0),[u,Wt]=b.useState(void 0),nt=Pt+50,It=Qt+65;let st;t[8]!==bt||t[9]!==nt||t[10]!==It||t[11]!==Z?(st={top:Z,bottom:bt,left:nt,right:It},t[8]=bt,t[9]=nt,t[10]=It,t[11]=Z,t[12]=st):st=t[12];const h=st,X=b.useRef(null);let O;t[13]!==f?(O=i=>({...i,date:Ft.parse(`${i.date}`,f,new Date)}),t[13]=f,t[14]=O):O=t[14];const r=be.orderBy(v.map(O),["date"],["asc"]);let ot;if(t[15]!==f||t[16]!==kt){let i;t[18]!==f?(i=R=>({...R,coordinates:[R.coordinates[0]===null?null:Ft.parse(`${R.coordinates[0]}`,f,new Date),R.coordinates[1]===null?null:Ft.parse(`${R.coordinates[1]}`,f,new Date)]}),t[18]=f,t[19]=i):i=t[19],ot=kt.map(i),t[15]=f,t[16]=kt,t[17]=ot}else ot=t[17];const vt=ot,x=K-h.left-h.right,l=Q-h.top-h.bottom,Xt=dt?Ft.parse(`${dt}`,f,new Date):r[0].date,St=Ot?Ft.parse(`${Ot}`,f,new Date):r[r.length-1].date,jt=Math.min(...r.map(yi).filter(hi))!==1/0?Math.min(...r.map(di).filter(pi))>0?0:Math.min(...r.map(fi).filter(mi)):0,rt=Math.min(...r.map(xi).filter(ui))!==1/0?Math.min(...r.map(ci).filter(ai))>0?0:Math.min(...r.map(li).filter(ri)):0,lt=Math.max(...r.map(oi).filter(si))!==1/0?Math.max(...r.map(ni).filter(ii)):0,Y=Math.max(...r.map(ei).filter(ti))!==1/0?Math.max(...r.map(_e).filter(Ze)):0,Dt=jt<rt?jt:rt,B=lt>Y?lt:Y,m=Le.time().domain([Xt,St]).range([0,x]),k=we.linear().domain([A?Dt:jt,A?B>0?B:0:lt>0?lt:0]).range([l,0]).nice(),g=we.linear().domain([A?Dt:rt,A?B>0?B:0:Y>0?Y:0]).range([l,0]).nice(),qt=ve.line().defined(Qe).x(i=>m(i.date)).y(i=>k(i.y1)).curve(Ut),At=ve.line().defined(Ke).x(i=>m(i.date)).y(i=>g(i.y2)).curve(Ut),Yt=k.ticks(pt),Bt=g.ticks(pt),Mt=m.ticks(Kt);b.useEffect(()=>{const i=ye=>{const je=r[Se.bisectCenter(r.map(Je),m.invert(De.pointer(ye)[0]),0)];Lt(je||r[r.length-1]),Nt?.(je||r[r.length-1]),Wt(ye.clientY),p(ye.clientX)},R=()=>{Lt(void 0),p(void 0),Wt(void 0),Nt?.(void 0)};Ie.select(X.current).on("mousemove",i).on("mouseout",R)},[m,r,Nt]);let at;t[20]!==s||t[21]!==l||t[22]!==x||t[23]!==vt||t[24]!==d||t[25]!==m?(at=n.jsxRuntimeExports.jsx(Oe.HighlightArea,{areaSettings:vt,width:x,height:l,scale:m,animate:s,isInView:d}),t[20]=s,t[21]=l,t[22]=x,t[23]=vt,t[24]=d,t[25]=m,t[26]=at):at=t[26];const wt=c?.xAxis?.axis;let T;t[27]!==wt?(T={axis:wt},t[27]=wt,t[28]=T):T=t[28];let L;t[29]!==a?.xAxis?.axis?(L=a?.xAxis?.axis||{},t[29]=a?.xAxis?.axis,t[30]=L):L=t[30];let C;t[31]!==o[0]||t[32]!==L?(C={axis:{stroke:o[0],...L}},t[31]=o[0],t[32]=L,t[33]=C):C=t[33];let ct;t[34]!==l||t[35]!==T||t[36]!==C?(ct=n.jsxRuntimeExports.jsx(ge.Axis,{y1:0,y2:l,x1:-15,x2:-15,classNames:T,styles:C}),t[34]=l,t[35]=T,t[36]=C,t[37]=ct):ct=t[37];let V;t[38]!==c?.yAxis?.title||t[39]!==l||t[40]!==j||t[41]!==o[0]||t[42]!==h.left||t[43]!==W||t[44]!==a?.yAxis?.title?(V=W?n.jsxRuntimeExports.jsx(Ae.AxisTitle,{x:10-h.left,y:l/2,style:{fill:o[0],...a?.yAxis?.title||{}},className:c?.yAxis?.title,text:j[0].length>100?`${j[0].substring(0,100)}...`:j[0],rotate90:!0}):null,t[38]=c?.yAxis?.title,t[39]=l,t[40]=j,t[41]=o[0],t[42]=h.left,t[43]=W,t[44]=a?.yAxis?.title,t[45]=V):V=t[45];const zt=x+15,ut=x+15,Jt=c?.xAxis?.axis;let $;t[46]!==Jt?($={axis:Jt},t[46]=Jt,t[47]=$):$=t[47];let z;t[48]!==a?.xAxis?.axis?(z=a?.xAxis?.axis||{},t[48]=a?.xAxis?.axis,t[49]=z):z=t[49];let I;t[50]!==o[1]||t[51]!==z?(I={axis:{stroke:o[1],...z}},t[50]=o[1],t[51]=z,t[52]=I):I=t[52];let J;t[53]!==l||t[54]!==zt||t[55]!==ut||t[56]!==$||t[57]!==I?(J=n.jsxRuntimeExports.jsx(ge.Axis,{y1:0,y2:l,x1:zt,x2:ut,classNames:$,styles:I}),t[53]=l,t[54]=zt,t[55]=ut,t[56]=$,t[57]=I,t[58]=J):J=t[58];let xt;t[59]!==c?.yAxis?.title||t[60]!==l||t[61]!==x||t[62]!==j||t[63]!==o[1]||t[64]!==h.right||t[65]!==W||t[66]!==a?.yAxis?.title?(xt=W?n.jsxRuntimeExports.jsx(Ae.AxisTitle,{x:x+h.right-15,y:l/2,style:{fill:o[1],...a?.yAxis?.title||{}},className:c?.yAxis?.title,text:j[1].length>100?`${j[1].substring(0,100)}...`:j[1],rotate90:!0}):null,t[59]=c?.yAxis?.title,t[60]=l,t[61]=x,t[62]=j,t[63]=o[1],t[64]=h.right,t[65]=W,t[66]=a?.yAxis?.title,t[67]=xt):xt=t[67];const Et=x+15,F=c?.xAxis?.axis;let w;t[68]!==F?(w={axis:F},t[68]=F,t[69]=w):w=t[69];const P=a?.xAxis?.axis;let E;t[70]!==P?(E={axis:P},t[70]=P,t[71]=E):E=t[71];let S;t[72]!==l||t[73]!==Et||t[74]!==w||t[75]!==E?(S=n.jsxRuntimeExports.jsx(ge.Axis,{y1:l,y2:l,x1:-15,x2:Et,classNames:w,styles:E}),t[72]=l,t[73]=Et,t[74]=w,t[75]=E,t[76]=S):S=t[76];let D;t[77]!==f?(D=i=>Ft.format(i,f),t[77]=f,t[78]=D):D=t[78];const Tt=Mt.map(D),Zt=Mt.map(i=>m(i)),Ct=a?.xAxis?.gridLines,fe=a?.xAxis?.labels;let _t;t[79]!==Ct||t[80]!==fe?(_t={gridLines:Ct,labels:fe},t[79]=Ct,t[80]=fe,t[81]=_t):_t=t[81];const pe=c?.xAxis?.gridLines;let Vt;t[82]!==pe?(Vt=n.mo("opacity-0",pe),t[82]=pe,t[83]=Vt):Vt=t[83];const de=c?.xAxis?.labels;let $t;t[84]!==de?($t=n.mo("fill-primary-gray-700 dark:fill-primary-gray-300 xs:max-[360px]:hidden text-[9px] md:text-[10px] lg:text-xs",de),t[84]=de,t[85]=$t):$t=t[85];let te;t[86]!==Vt||t[87]!==$t?(te={gridLines:Vt,labels:$t},t[86]=Vt,t[87]=$t,t[88]=te):te=t[88];let ee;t[89]!==U?(ee=U.filter(ze).map(Be),t[89]=U,t[90]=ee):ee=t[90];let ie;t[91]!==o[0]||t[92]!==G?(ie={stroke:o[0],strokeWidth:G,fill:"none"},t[91]=o[0],t[92]=G,t[93]=ie):ie=t[93];let ne;t[94]!==s.duration?(ne={opacity:0,transition:{duration:s.duration}},t[94]=s.duration,t[95]=ne):ne=t[95];let se;t[96]!==o[1]||t[97]!==G?(se={stroke:o[1],strokeWidth:G,fill:"none"},t[96]=o[1],t[97]=G,t[98]=se):se=t[98];let oe;t[99]!==s.duration?(oe={opacity:0,transition:{duration:s.duration}},t[99]=s.duration,t[100]=oe):oe=t[100];const he=r.map((i,R)=>n.jsxRuntimeExports.jsxs(mt.motion.g,{children:[q.checkIfNullOrUndefined(i.y1)?null:n.jsxRuntimeExports.jsxs(n.jsxRuntimeExports.Fragment,{children:[M?n.jsxRuntimeExports.jsx(mt.motion.circle,{r:x/r.length<5?0:x/r.length<20?2:4,exit:{opacity:0,transition:{duration:s.duration}},variants:{initial:{opacity:0,cx:m(i.date),cy:k(i.y1),fill:o[0]},whileInView:{opacity:1,fill:o[0],transition:{duration:y?s.duration:.5,delay:y?0:s.duration},cx:m(i.date),cy:k(i.y1)}},initial:"initial",animate:d?"whileInView":"initial"}):null,Rt?n.jsxRuntimeExports.jsx(mt.motion.text,{dy:q.checkIfNullOrUndefined(i.y2)||i.y2<i.y1?-8:"1em",style:{textAnchor:"middle",...a?.graphObjectValues||{}},className:n.mo("graph-value graph-value-line-1 text-xs font-bold",c?.graphObjectValues),exit:{opacity:0,transition:{duration:s.duration}},variants:{initial:{opacity:0,x:m(i.date),y:g(i.y1),fill:o[0]},whileInView:{opacity:1,x:m(i.date),fill:o[0],y:g(i.y1),transition:{duration:y?s.duration:.5,delay:y?0:s.duration}}},initial:"initial",animate:d?"whileInView":"initial",children:xe.numberFormattingFunction(i.y1,"NA",et,_[0],H[0])}):null]}),q.checkIfNullOrUndefined(i.y2)?null:n.jsxRuntimeExports.jsxs(n.jsxRuntimeExports.Fragment,{children:[M?n.jsxRuntimeExports.jsx(mt.motion.circle,{r:x/r.length<5?0:x/r.length<20?2:4,exit:{opacity:0,transition:{duration:s.duration}},variants:{initial:{opacity:0,cx:m(i.date),cy:g(i.y2),fill:o[1]},whileInView:{opacity:1,transition:{duration:y?s.duration:.5,delay:y?0:s.duration},fill:o[1],cx:m(i.date),cy:g(i.y2)}},initial:"initial",animate:d?"whileInView":"initial"}):null,Rt?n.jsxRuntimeExports.jsx(mt.motion.text,{dy:q.checkIfNullOrUndefined(i.y1)||i.y1<i.y2?-8:"1em",style:{textAnchor:"middle",...a?.graphObjectValues||{}},className:n.mo("graph-value graph-value-line-2 text-xs font-bold",c?.graphObjectValues),exit:{opacity:0,transition:{duration:s.duration}},variants:{initial:{opacity:0,x:m(i.date),y:g(i.y2),fill:o[1]},whileInView:{opacity:1,x:m(i.date),y:g(i.y2),fill:o[1],transition:{duration:y?s.duration:.5,delay:y?0:s.duration}}},initial:"initial",animate:d?"whileInView":"initial",children:xe.numberFormattingFunction(i.y2,"NA",et,_[1],H[1])}):null]})]},R));let re;t[101]!==he?(re=n.jsxRuntimeExports.jsx("g",{children:he}),t[101]=he,t[102]=re):re=t[102];let le;t[103]!==U?(le=U.filter(Ge).map(Pe),t[103]=U,t[104]=le):le=t[104];let ae;t[105]===Symbol.for("react.memo_cache_sentinel")?(ae={fill:"none",pointerEvents:"all"},t[105]=ae):ae=t[105];let ce;t[106]!==X||t[107]!==l||t[108]!==x?(ce=n.jsxRuntimeExports.jsx("rect",{ref:X,style:ae,width:x,height:l}),t[106]=X,t[107]=l,t[108]=x,t[109]=ce):ce=t[109];let ue;return t[110]!==c?.tooltip||t[111]!==gt||t[112]!==u||t[113]!==N||t[114]!==a?.tooltip||t[115]!==ft?(ue=N&&ft&&gt&&u?n.jsxRuntimeExports.jsx(ke.Tooltip,{data:N,body:ft,xPos:gt,yPos:u,backgroundStyle:a?.tooltip,className:c?.tooltip}):null,t[110]=c?.tooltip,t[111]=gt,t[112]=u,t[113]=N,t[114]=a?.tooltip,t[115]=ft,t[116]=ue):ue=t[116],n.jsxRuntimeExports.jsxs(n.jsxRuntimeExports.Fragment,{children:[n.jsxRuntimeExports.jsx(mt.motion.svg,{width:`${K}px`,height:`${Q}px`,viewBox:`0 0 ${K} ${Q}`,direction:"ltr",ref:Gt,children:n.jsxRuntimeExports.jsxs("g",{transform:`translate(${h.left},${h.top})`,children:[at,n.jsxRuntimeExports.jsxs("g",{children:[Yt.map((i,R)=>n.jsxRuntimeExports.jsxs("g",{children:[n.jsxRuntimeExports.jsx("line",{y1:k(i),y2:k(i),x1:-15,x2:-20,style:{stroke:o[0],strokeWidth:1,...a?.yAxis?.gridLines||{}},className:c?.yAxis?.gridLines}),n.jsxRuntimeExports.jsx("text",{x:-25,y:k(i),dy:"0.33em",className:n.mo("text-xs",c?.yAxis?.labels),style:{textAnchor:"end",fill:o[0],...a?.yAxis?.labels||{}},children:xe.numberFormattingFunction(i,"NA",et,_[0],H[0])})]},R)),ct,V]}),n.jsxRuntimeExports.jsxs("g",{children:[Bt.map((i,R)=>n.jsxRuntimeExports.jsxs("g",{children:[n.jsxRuntimeExports.jsx("line",{y1:g(i),y2:g(i),x1:x+15,x2:x+20,style:{stroke:o[1],strokeWidth:1,...a?.yAxis?.gridLines||{}},className:c?.yAxis?.gridLines}),n.jsxRuntimeExports.jsx("text",{x:x+25,y:g(i),dy:"0.33em",dx:-2,style:{textAnchor:"start",fill:o[1],...a?.yAxis?.labels||{}},className:n.mo("text-xs",c?.yAxis?.labels),children:xe.numberFormattingFunction(i,"NA",et,_[1],H[1])})]},R)),J,xt]}),n.jsxRuntimeExports.jsxs("g",{children:[S,n.jsxRuntimeExports.jsx(Ne.XTicksAndGridLines,{values:Tt,x:Zt,y1:0,y2:l,styles:_t,classNames:te,labelType:"primary",showGridLines:!0,precision:et})]}),ee,n.jsxRuntimeExports.jsxs("g",{children:[n.jsxRuntimeExports.jsx(mt.motion.path,{style:ie,exit:ne,variants:{initial:{pathLength:0,d:qt(r.filter(Ye))||"",opacity:1},whileInView:{pathLength:1,d:qt(r.filter(Xe))||"",opacity:1,transition:{duration:s.duration}}},initial:"initial",animate:d?"whileInView":"initial"}),n.jsxRuntimeExports.jsx(mt.motion.path,{d:At(r.filter(We))||"",style:se,exit:oe,variants:{initial:{pathLength:0,d:At(r.filter(Ue))||"",opacity:1},whileInView:{pathLength:1,d:At(r.filter(He))||"",opacity:1,transition:{duration:s.duration}}},initial:"initial",animate:d?"whileInView":"initial"}),N?n.jsxRuntimeExports.jsx("line",{y1:0,y2:l,x1:m(N.date),x2:m(N.date),className:n.mo("undp-tick-line stroke-primary-gray-700 dark:stroke-primary-gray-100",c?.mouseOverLine),style:a?.mouseOverLine}):null]}),re,le,ce]})}),ue]})}function Pe(e){return e.layer}function Ge(e){return e.position==="after"}function He(e){return!q.checkIfNullOrUndefined(e.y2)}function Ue(e){return!q.checkIfNullOrUndefined(e.y2)}function We(e){return!q.checkIfNullOrUndefined(e.y2)}function Xe(e){return!q.checkIfNullOrUndefined(e.y1)}function Ye(e){return!q.checkIfNullOrUndefined(e.y1)}function Be(e){return e.layer}function ze(e){return e.position==="before"}function Je(e){return e.date}function Ke(e){return!q.checkIfNullOrUndefined(e.y2)}function Qe(e){return!q.checkIfNullOrUndefined(e.y1)}function Ze(e){return e!=null}function _e(e){return e.y2}function ti(e){return e!=null}function ei(e){return e.y2}function ii(e){return e!=null}function ni(e){return e.y1}function si(e){return e!=null}function oi(e){return e.y1}function ri(e){return e!=null}function li(e){return e.y2}function ai(e){return e!=null}function ci(e){return e.y2}function ui(e){return e!=null}function xi(e){return e.y2}function mi(e){return e!=null}function fi(e){return e.y1}function pi(e){return e!=null}function di(e){return e.y2}function hi(e){return e!=null}function yi(e){return e.y1}function gi(e){const t=n.compilerRuntimeExports.c(90),{data:v,graphTitle:K,sources:Q,graphDescription:o,height:j,width:A,footNote:f,noOfXTicks:Rt,dateFormat:Kt,showValues:Qt,padding:Pt,lineColors:Z,sameAxes:bt,backgroundColor:ft,leftMargin:kt,rightMargin:Nt,topMargin:s,bottomMargin:G,labels:M,lineSuffixes:pt,linePrefixes:H,tooltip:_,highlightAreaSettings:dt,relativeHeight:Ot,onSeriesMouseOver:tt,graphID:a,graphDownload:c,dataDownload:et,animate:U,strokeWidth:W,showDots:Gt,language:ht,showColorScale:d,minHeight:y,colorLegendTitle:Ht,theme:yt,ariaLabel:it,noOfYTicks:Ut,maxDate:N,minDate:Lt,curveType:gt,styles:p,classNames:u,precision:Wt,customLayers:nt,showAxisLabels:It}=e,st=Kt===void 0?"yyyy":Kt,h=Qt===void 0?!1:Qt;let X;t[0]!==Z?(X=Z===void 0?[Ee.Colors.light.categoricalColors.colors[0],Ee.Colors.light.categoricalColors.colors[1]]:Z,t[0]=Z,t[1]=X):X=t[1];const O=X,r=bt===void 0?!1:bt,ot=ft===void 0?!1:ft,vt=kt===void 0?80:kt,x=Nt===void 0?80:Nt,l=s===void 0?20:s,Xt=G===void 0?25:G;let St;t[2]!==pt?(St=pt===void 0?["",""]:pt,t[2]=pt,t[3]=St):St=t[3];const jt=St;let rt;t[4]!==H?(rt=H===void 0?["",""]:H,t[4]=H,t[5]=rt):rt=t[5];const lt=rt;let Y;t[6]!==dt?(Y=dt===void 0?[]:dt,t[6]=dt,t[7]=Y):Y=t[7];const Dt=Y,B=c===void 0?!1:c,m=et===void 0?!1:et,k=U===void 0?!1:U,g=W===void 0?2:W,qt=Gt===void 0?!0:Gt,At=ht===void 0?"en":ht,Yt=d===void 0?!0:d,Bt=y===void 0?0:y,Mt=yt===void 0?"light":yt,at=Ut===void 0?5:Ut,wt=gt===void 0?"curve":gt,T=Wt===void 0?2:Wt;let L;t[8]!==nt?(L=nt===void 0?[]:nt,t[8]=nt,t[9]=L):L=t[9];const C=L,ct=It===void 0?!0:It,[V,zt]=b.useState(0),[ut,Jt]=b.useState(0),$=b.useRef(null),z=b.useRef(null);let I,J;t[10]===Symbol.for("react.memo_cache_sentinel")?(I=()=>{const Zt=new ResizeObserver(Ct=>{zt(Ct[0].target.clientWidth||620),Jt(Ct[0].target.clientHeight||480)});return $.current&&Zt.observe($.current),()=>Zt.disconnect()},J=[],t[10]=I,t[11]=J):(I=t[10],J=t[11]),b.useEffect(I,J);const xt=u?.graphContainer,Et=p?.graphContainer;let F;t[12]!==u?.description||t[13]!==u?.title||t[14]!==v||t[15]!==m||t[16]!==o||t[17]!==B||t[18]!==K||t[19]!==p?.description||t[20]!==p?.title||t[21]!==A?(F=K||o||B||m?n.jsxRuntimeExports.jsx(Te.GraphHeader,{styles:{title:p?.title,description:p?.description},classNames:{title:u?.title,description:u?.description},graphTitle:K,graphDescription:o,width:A,graphDownload:B?z:void 0,dataDownload:m?v.map(Ei).filter(wi).length>0?v.map(Ai).filter(ji):v.filter(vi):null}):null,t[12]=u?.description,t[13]=u?.title,t[14]=v,t[15]=m,t[16]=o,t[17]=B,t[18]=K,t[19]=p?.description,t[20]=p?.title,t[21]=A,t[22]=F):F=t[22];let w;t[23]!==u?.colorLegend||t[24]!==Ht||t[25]!==M||t[26]!==O||t[27]!==Yt?(w=Yt&&M.length>0?n.jsxRuntimeExports.jsx(Ce.ColorLegend,{colorDomain:M,colorLegendTitle:Ht,colors:O,showNAColor:!1,className:u?.colorLegend}):null,t[23]=u?.colorLegend,t[24]=Ht,t[25]=M,t[26]=O,t[27]=Yt,t[28]=w):w=t[28];let P;t[29]!==v.length?(P=v.length===0&&n.jsxRuntimeExports.jsx(Ve.EmptyState,{}),t[29]=v.length,t[30]=P):P=t[30];let E;t[31]!==k||t[32]!==Xt||t[33]!==u||t[34]!==wt||t[35]!==C||t[36]!==v||t[37]!==st||t[38]!==Dt||t[39]!==M||t[40]!==vt||t[41]!==O||t[42]!==lt||t[43]!==jt||t[44]!==N||t[45]!==Lt||t[46]!==Rt||t[47]!==at||t[48]!==tt||t[49]!==T||t[50]!==x||t[51]!==r||t[52]!==ct||t[53]!==qt||t[54]!==h||t[55]!==g||t[56]!==p||t[57]!==ut||t[58]!==V||t[59]!==_||t[60]!==l?(E=V&&ut&&v.length>0?n.jsxRuntimeExports.jsx(Fe,{data:v,sameAxes:r,lineColors:O,width:V,height:ut,dateFormat:st,showValues:h,noOfXTicks:Rt??$e.getNoOfTicks(V),leftMargin:vt,rightMargin:x,topMargin:l,bottomMargin:Xt,labels:M,highlightAreaSettings:Dt,tooltip:_,onSeriesMouseOver:tt,animate:k===!0?{duration:.5,once:!0,amount:.5}:k||{duration:0,once:!0,amount:0},strokeWidth:g,showDots:qt,noOfYTicks:at,lineSuffixes:jt,linePrefixes:lt,minDate:Lt,maxDate:N,curveType:wt,styles:p,classNames:u,precision:T,customLayers:C,showAxisLabels:ct}):null,t[31]=k,t[32]=Xt,t[33]=u,t[34]=wt,t[35]=C,t[36]=v,t[37]=st,t[38]=Dt,t[39]=M,t[40]=vt,t[41]=O,t[42]=lt,t[43]=jt,t[44]=N,t[45]=Lt,t[46]=Rt,t[47]=at,t[48]=tt,t[49]=T,t[50]=x,t[51]=r,t[52]=ct,t[53]=qt,t[54]=h,t[55]=g,t[56]=p,t[57]=ut,t[58]=V,t[59]=_,t[60]=l,t[61]=E):E=t[61];let S;t[62]!==P||t[63]!==E?(S=n.jsxRuntimeExports.jsxs(Re.GraphArea,{ref:$,children:[P,E]}),t[62]=P,t[63]=E,t[64]=S):S=t[64];let D;t[65]!==u?.footnote||t[66]!==u?.source||t[67]!==f||t[68]!==Q||t[69]!==p?.footnote||t[70]!==p?.source||t[71]!==A?(D=Q||f?n.jsxRuntimeExports.jsx(Me.GraphFooter,{styles:{footnote:p?.footnote,source:p?.source},classNames:{footnote:u?.footnote,source:u?.source},sources:Q,footNote:f,width:A}):null,t[65]=u?.footnote,t[66]=u?.source,t[67]=f,t[68]=Q,t[69]=p?.footnote,t[70]=p?.source,t[71]=A,t[72]=D):D=t[72];let Tt;return t[73]!==it||t[74]!==ot||t[75]!==a||t[76]!==j||t[77]!==At||t[78]!==Bt||t[79]!==Pt||t[80]!==Ot||t[81]!==xt||t[82]!==Et||t[83]!==F||t[84]!==w||t[85]!==S||t[86]!==D||t[87]!==Mt||t[88]!==A?(Tt=n.jsxRuntimeExports.jsxs(Re.GraphContainer,{className:xt,style:Et,id:a,ref:z,"aria-label":it,backgroundColor:ot,theme:Mt,language:At,minHeight:Bt,width:A,height:j,relativeHeight:Ot,padding:Pt,children:[F,w,S,D]}),t[73]=it,t[74]=ot,t[75]=a,t[76]=j,t[77]=At,t[78]=Bt,t[79]=Pt,t[80]=Ot,t[81]=xt,t[82]=Et,t[83]=F,t[84]=w,t[85]=S,t[86]=D,t[87]=Mt,t[88]=A,t[89]=Tt):Tt=t[89],Tt}function vi(e){return e!==void 0}function ji(e){return e!==void 0}function Ai(e){return e.data}function wi(e){return e!==void 0}function Ei(e){return e.data}exports.DualAxisLineChart=gi;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("./index-CHPV5EwG-D4pAp7u0.cjs"),R=require("react"),Wt=require("./parse-xYI9yrvL.cjs"),Ne=require("./index-Cno4Q0YE.cjs"),pe=require("./numberFormattingFunction-Cn9R7CM9.cjs"),Le=require("./Tooltip-Hr46paWP.cjs"),S=require("./checkIfNullOrUndefined-BCW3Y1ML.cjs"),Oe=require("./XTicksAndGridLines-C5DuC5oY.cjs"),je=require("./Axis-BTaS9oPQ.cjs"),Ee=require("./AxisTitle-DP_evhbe.cjs"),Ie=require("./index-BuhBhuCq.cjs"),Se=require("./time-CkcKbhwe.cjs"),Re=require("./linear-CgUCbw9F.cjs"),Ae=require("./line-DaEMhXmx.cjs"),de=require("./step-BZ3C8QFW.cjs"),De=require("./select-Bnfk0lJx.cjs"),dt=require("./proxy-CqH8m8IQ.cjs"),qe=require("./init-DU0ybBc_.cjs"),Me=require("./pointer-Dkq5NV1q.cjs"),Te=require("./use-in-view-dnRv_qqF.cjs"),Ce=require("./GraphFooter.cjs"),Ve=require("./GraphHeader.cjs"),$e=require("./ColorLegend.cjs"),be=require("./Colors.cjs"),Fe=require("./EmptyState-CFmiFPHz.cjs"),ke=require("./GraphContainer-Cul9b74X.cjs"),Pe=require("./getNoOfTicks-C_1CFXv_.cjs");function Ge(e){const t=n.compilerRuntimeExports.c(117),{data:v,width:J,height:K,lineColors:o,labels:j,sameAxes:A,dateFormat:f,showValues:Ot,noOfXTicks:ee,rightMargin:ie,leftMargin:Xt,topMargin:Q,bottomMargin:It,tooltip:ht,highlightAreaSettings:St,onSeriesMouseOver:Dt,animate:s,strokeWidth:F,showDots:D,noOfYTicks:yt,lineSuffixes:P,linePrefixes:Z,minDate:gt,maxDate:qt,curveType:_,styles:a,classNames:c,precision:tt,customLayers:G,showAxisLabels:H,locale:et,naLabel:Yt}=e,Bt=R.useRef(null);let vt;t[0]!==s.amount||t[1]!==s.once?(vt={once:s.once,amount:s.amount},t[0]=s.amount,t[1]=s.once,t[2]=vt):vt=t[2];const d=Te.useInView(Bt,vt),[y,zt]=R.useState(!1);let jt,it;t[3]!==s.duration||t[4]!==y||t[5]!==d?(jt=()=>{if(d&&!y){const i=setTimeout(()=>{zt(!0)},(s.duration+.5)*1e3);return()=>clearTimeout(i)}},it=[d,y,s.duration],t[3]=s.duration,t[4]=y,t[5]=d,t[6]=jt,t[7]=it):(jt=t[6],it=t[7]),R.useEffect(jt,it);const Mt=_==="linear"?Ae.curveLinear:_==="step"?de.curveStep:_==="stepAfter"?de.stepAfter:_==="stepBefore"?de.stepBefore:de.monotoneX,[q,p]=R.useState(void 0),[u,Jt]=R.useState(void 0),[U,Kt]=R.useState(void 0),Tt=Xt+50,Ct=ie+65;let nt;t[8]!==It||t[9]!==Tt||t[10]!==Ct||t[11]!==Q?(nt={top:Q,bottom:It,left:Tt,right:Ct},t[8]=It,t[9]=Tt,t[10]=Ct,t[11]=Q,t[12]=nt):nt=t[12];const h=nt,W=R.useRef(null);let k;t[13]!==f?(k=i=>({...i,date:Wt.parse(`${i.date}`,f,new Date)}),t[13]=f,t[14]=k):k=t[14];const r=Ne.orderBy(v.map(k),["date"],["asc"]);let st;if(t[15]!==f||t[16]!==St){let i;t[18]!==f?(i=E=>({...E,coordinates:[E.coordinates[0]===null?null:Wt.parse(`${E.coordinates[0]}`,f,new Date),E.coordinates[1]===null?null:Wt.parse(`${E.coordinates[1]}`,f,new Date)]}),t[18]=f,t[19]=i):i=t[19],st=St.map(i),t[15]=f,t[16]=St,t[17]=st}else st=t[17];const At=st,x=J-h.left-h.right,l=K-h.top-h.bottom,Qt=gt?Wt.parse(`${gt}`,f,new Date):r[0].date,Vt=qt?Wt.parse(`${qt}`,f,new Date):r[r.length-1].date,wt=Math.min(...r.map(vi).filter(gi))!==1/0?Math.min(...r.map(yi).filter(hi))>0?0:Math.min(...r.map(di).filter(pi)):0,ot=Math.min(...r.map(fi).filter(mi))!==1/0?Math.min(...r.map(xi).filter(ui))>0?0:Math.min(...r.map(ci).filter(ai)):0,rt=Math.max(...r.map(li).filter(ri))!==1/0?Math.max(...r.map(oi).filter(si)):0,X=Math.max(...r.map(ni).filter(ii))!==1/0?Math.max(...r.map(ei).filter(ti)):0,$t=wt<ot?wt:ot,Y=rt>X?rt:X,m=Se.time().domain([Qt,Vt]).range([0,x]),b=Re.linear().domain([A?$t:wt,A?Y>0?Y:0:rt>0?rt:0]).range([l,0]).nice(),g=Re.linear().domain([A?$t:ot,A?Y>0?Y:0:X>0?X:0]).range([l,0]).nice(),Ft=Ae.line().defined(_e).x(i=>m(i.date)).y(i=>b(i.y1)).curve(Mt),Et=Ae.line().defined(Ze).x(i=>m(i.date)).y(i=>g(i.y2)).curve(Mt),Zt=b.ticks(yt),_t=g.ticks(yt),Pt=m.ticks(ee);R.useEffect(()=>{const i=ve=>{const we=r[qe.bisectCenter(r.map(Qe),m.invert(Me.pointer(ve)[0]),0)];p(we||r[r.length-1]),Dt?.(we||r[r.length-1]),Kt(ve.clientY),Jt(ve.clientX)},E=()=>{p(void 0),Jt(void 0),Kt(void 0),Dt?.(void 0)};De.select(W.current).on("mousemove",i).on("mouseout",E)},[m,r,Dt]);let lt;t[20]!==s||t[21]!==l||t[22]!==x||t[23]!==At||t[24]!==d||t[25]!==m?(lt=n.jsxRuntimeExports.jsx(Ie.HighlightArea,{areaSettings:At,width:x,height:l,scale:m,animate:s,isInView:d}),t[20]=s,t[21]=l,t[22]=x,t[23]=At,t[24]=d,t[25]=m,t[26]=lt):lt=t[26];const Rt=c?.xAxis?.axis;let M;t[27]!==Rt?(M={axis:Rt},t[27]=Rt,t[28]=M):M=t[28];let N;t[29]!==a?.xAxis?.axis?(N=a?.xAxis?.axis||{},t[29]=a?.xAxis?.axis,t[30]=N):N=t[30];let T;t[31]!==o[0]||t[32]!==N?(T={axis:{stroke:o[0],...N}},t[31]=o[0],t[32]=N,t[33]=T):T=t[33];let at;t[34]!==l||t[35]!==M||t[36]!==T?(at=n.jsxRuntimeExports.jsx(je.Axis,{y1:0,y2:l,x1:-15,x2:-15,classNames:M,styles:T}),t[34]=l,t[35]=M,t[36]=T,t[37]=at):at=t[37];let ct;t[38]!==c?.yAxis?.title||t[39]!==l||t[40]!==j||t[41]!==o[0]||t[42]!==h.left||t[43]!==H||t[44]!==a?.yAxis?.title?(ct=H?n.jsxRuntimeExports.jsx(Ee.AxisTitle,{x:10-h.left,y:l/2,style:{fill:o[0],...a?.yAxis?.title||{}},className:c?.yAxis?.title,text:j[0].length>100?`${j[0].substring(0,100)}...`:j[0],rotate90:!0}):null,t[38]=c?.yAxis?.title,t[39]=l,t[40]=j,t[41]=o[0],t[42]=h.left,t[43]=H,t[44]=a?.yAxis?.title,t[45]=ct):ct=t[45];const bt=x+15,B=x+15,te=c?.xAxis?.axis;let L;t[46]!==te?(L={axis:te},t[46]=te,t[47]=L):L=t[47];let ut;t[48]!==a?.xAxis?.axis?(ut=a?.xAxis?.axis||{},t[48]=a?.xAxis?.axis,t[49]=ut):ut=t[49];let C;t[50]!==o[1]||t[51]!==ut?(C={axis:{stroke:o[1],...ut}},t[50]=o[1],t[51]=ut,t[52]=C):C=t[52];let kt;t[53]!==l||t[54]!==bt||t[55]!==B||t[56]!==L||t[57]!==C?(kt=n.jsxRuntimeExports.jsx(je.Axis,{y1:0,y2:l,x1:bt,x2:B,classNames:L,styles:C}),t[53]=l,t[54]=bt,t[55]=B,t[56]=L,t[57]=C,t[58]=kt):kt=t[58];let z;t[59]!==c?.yAxis?.title||t[60]!==l||t[61]!==x||t[62]!==j||t[63]!==o[1]||t[64]!==h.right||t[65]!==H||t[66]!==a?.yAxis?.title?(z=H?n.jsxRuntimeExports.jsx(Ee.AxisTitle,{x:x+h.right-15,y:l/2,style:{fill:o[1],...a?.yAxis?.title||{}},className:c?.yAxis?.title,text:j[1].length>100?`${j[1].substring(0,100)}...`:j[1],rotate90:!0}):null,t[59]=c?.yAxis?.title,t[60]=l,t[61]=x,t[62]=j,t[63]=o[1],t[64]=h.right,t[65]=H,t[66]=a?.yAxis?.title,t[67]=z):z=t[67];const xt=x+15,Nt=c?.xAxis?.axis;let V;t[68]!==Nt?(V={axis:Nt},t[68]=Nt,t[69]=V):V=t[69];const $=a?.xAxis?.axis;let w;t[70]!==$?(w={axis:$},t[70]=$,t[71]=w):w=t[71];let O;t[72]!==l||t[73]!==xt||t[74]!==V||t[75]!==w?(O=n.jsxRuntimeExports.jsx(je.Axis,{y1:l,y2:l,x1:-15,x2:xt,classNames:V,styles:w}),t[72]=l,t[73]=xt,t[74]=V,t[75]=w,t[76]=O):O=t[76];let I;t[77]!==f?(I=i=>Wt.format(i,f),t[77]=f,t[78]=I):I=t[78];const mt=Pt.map(I),ft=Pt.map(i=>m(i)),pt=a?.xAxis?.gridLines,Gt=a?.xAxis?.labels;let Lt;t[79]!==pt||t[80]!==Gt?(Lt={gridLines:pt,labels:Gt},t[79]=pt,t[80]=Gt,t[81]=Lt):Lt=t[81];const he=c?.xAxis?.gridLines;let Ht;t[82]!==he?(Ht=n.mo("opacity-0",he),t[82]=he,t[83]=Ht):Ht=t[83];const ye=c?.xAxis?.labels;let Ut;t[84]!==ye?(Ut=n.mo("fill-primary-gray-700 dark:fill-primary-gray-300 xs:max-[360px]:hidden text-[9px] md:text-[10px] lg:text-xs",ye),t[84]=ye,t[85]=Ut):Ut=t[85];let ne;t[86]!==Ht||t[87]!==Ut?(ne={gridLines:Ht,labels:Ut},t[86]=Ht,t[87]=Ut,t[88]=ne):ne=t[88];let se;t[89]!==G?(se=G.filter(Ke).map(Je),t[89]=G,t[90]=se):se=t[90];let oe;t[91]!==o[0]||t[92]!==F?(oe={stroke:o[0],strokeWidth:F,fill:"none"},t[91]=o[0],t[92]=F,t[93]=oe):oe=t[93];let re;t[94]!==s.duration?(re={opacity:0,transition:{duration:s.duration}},t[94]=s.duration,t[95]=re):re=t[95];let le;t[96]!==o[1]||t[97]!==F?(le={stroke:o[1],strokeWidth:F,fill:"none"},t[96]=o[1],t[97]=F,t[98]=le):le=t[98];let ae;t[99]!==s.duration?(ae={opacity:0,transition:{duration:s.duration}},t[99]=s.duration,t[100]=ae):ae=t[100];const ge=r.map((i,E)=>n.jsxRuntimeExports.jsxs(dt.motion.g,{children:[S.checkIfNullOrUndefined(i.y1)?null:n.jsxRuntimeExports.jsxs(n.jsxRuntimeExports.Fragment,{children:[D?n.jsxRuntimeExports.jsx(dt.motion.circle,{r:x/r.length<5?0:x/r.length<20?2:4,exit:{opacity:0,transition:{duration:s.duration}},variants:{initial:{opacity:0,cx:m(i.date),cy:b(i.y1),fill:o[0]},whileInView:{opacity:1,fill:o[0],transition:{duration:y?s.duration:.5,delay:y?0:s.duration},cx:m(i.date),cy:b(i.y1)}},initial:"initial",animate:d?"whileInView":"initial"}):null,Ot?n.jsxRuntimeExports.jsx(dt.motion.text,{dy:S.checkIfNullOrUndefined(i.y2)||i.y2<i.y1?-8:"1em",style:{textAnchor:"middle",...a?.graphObjectValues||{}},className:n.mo("graph-value graph-value-line-1 text-xs font-bold",c?.graphObjectValues),exit:{opacity:0,transition:{duration:s.duration}},variants:{initial:{opacity:0,x:m(i.date),y:g(i.y1),fill:o[0]},whileInView:{opacity:1,x:m(i.date),fill:o[0],y:g(i.y1),transition:{duration:y?s.duration:.5,delay:y?0:s.duration}}},initial:"initial",animate:d?"whileInView":"initial",children:pe.numberFormattingFunction(i.y1,Yt,tt,Z[0],P[0],et)}):null]}),S.checkIfNullOrUndefined(i.y2)?null:n.jsxRuntimeExports.jsxs(n.jsxRuntimeExports.Fragment,{children:[D?n.jsxRuntimeExports.jsx(dt.motion.circle,{r:x/r.length<5?0:x/r.length<20?2:4,exit:{opacity:0,transition:{duration:s.duration}},variants:{initial:{opacity:0,cx:m(i.date),cy:g(i.y2),fill:o[1]},whileInView:{opacity:1,transition:{duration:y?s.duration:.5,delay:y?0:s.duration},fill:o[1],cx:m(i.date),cy:g(i.y2)}},initial:"initial",animate:d?"whileInView":"initial"}):null,Ot?n.jsxRuntimeExports.jsx(dt.motion.text,{dy:S.checkIfNullOrUndefined(i.y1)||i.y1<i.y2?-8:"1em",style:{textAnchor:"middle",...a?.graphObjectValues||{}},className:n.mo("graph-value graph-value-line-2 text-xs font-bold",c?.graphObjectValues),exit:{opacity:0,transition:{duration:s.duration}},variants:{initial:{opacity:0,x:m(i.date),y:g(i.y2),fill:o[1]},whileInView:{opacity:1,x:m(i.date),y:g(i.y2),fill:o[1],transition:{duration:y?s.duration:.5,delay:y?0:s.duration}}},initial:"initial",animate:d?"whileInView":"initial",children:pe.numberFormattingFunction(i.y2,Yt,tt,Z[1],P[1],et)}):null]})]},E));let ce;t[101]!==ge?(ce=n.jsxRuntimeExports.jsx("g",{children:ge}),t[101]=ge,t[102]=ce):ce=t[102];let ue;t[103]!==G?(ue=G.filter(Ue).map(He),t[103]=G,t[104]=ue):ue=t[104];let xe;t[105]===Symbol.for("react.memo_cache_sentinel")?(xe={fill:"none",pointerEvents:"all"},t[105]=xe):xe=t[105];let me;t[106]!==W||t[107]!==l||t[108]!==x?(me=n.jsxRuntimeExports.jsx("rect",{ref:W,style:xe,width:x,height:l}),t[106]=W,t[107]=l,t[108]=x,t[109]=me):me=t[109];let fe;return t[110]!==c?.tooltip||t[111]!==u||t[112]!==U||t[113]!==q||t[114]!==a?.tooltip||t[115]!==ht?(fe=q&&ht&&u&&U?n.jsxRuntimeExports.jsx(Le.Tooltip,{data:q,body:ht,xPos:u,yPos:U,backgroundStyle:a?.tooltip,className:c?.tooltip}):null,t[110]=c?.tooltip,t[111]=u,t[112]=U,t[113]=q,t[114]=a?.tooltip,t[115]=ht,t[116]=fe):fe=t[116],n.jsxRuntimeExports.jsxs(n.jsxRuntimeExports.Fragment,{children:[n.jsxRuntimeExports.jsx(dt.motion.svg,{width:`${J}px`,height:`${K}px`,viewBox:`0 0 ${J} ${K}`,direction:"ltr",ref:Bt,children:n.jsxRuntimeExports.jsxs("g",{transform:`translate(${h.left},${h.top})`,children:[lt,n.jsxRuntimeExports.jsxs("g",{children:[Zt.map((i,E)=>n.jsxRuntimeExports.jsxs("g",{children:[n.jsxRuntimeExports.jsx("line",{y1:b(i),y2:b(i),x1:-15,x2:-20,style:{stroke:o[0],strokeWidth:1,...a?.yAxis?.gridLines||{}},className:c?.yAxis?.gridLines}),n.jsxRuntimeExports.jsx("text",{x:-25,y:b(i),dy:"0.33em",className:n.mo("text-xs",c?.yAxis?.labels),style:{textAnchor:"end",fill:o[0],...a?.yAxis?.labels||{}},children:pe.numberFormattingFunction(i,void 0,tt,Z[0],P[0],et)})]},E)),at,ct]}),n.jsxRuntimeExports.jsxs("g",{children:[_t.map((i,E)=>n.jsxRuntimeExports.jsxs("g",{children:[n.jsxRuntimeExports.jsx("line",{y1:g(i),y2:g(i),x1:x+15,x2:x+20,style:{stroke:o[1],strokeWidth:1,...a?.yAxis?.gridLines||{}},className:c?.yAxis?.gridLines}),n.jsxRuntimeExports.jsx("text",{x:x+25,y:g(i),dy:"0.33em",dx:-2,style:{textAnchor:"start",fill:o[1],...a?.yAxis?.labels||{}},className:n.mo("text-xs",c?.yAxis?.labels),children:pe.numberFormattingFunction(i,void 0,tt,Z[1],P[1],et)})]},E)),kt,z]}),n.jsxRuntimeExports.jsxs("g",{children:[O,n.jsxRuntimeExports.jsx(Oe.XTicksAndGridLines,{values:mt,x:ft,y1:0,y2:l,styles:Lt,classNames:ne,labelType:"primary",showGridLines:!0,precision:tt,locale:et})]}),se,n.jsxRuntimeExports.jsxs("g",{children:[n.jsxRuntimeExports.jsx(dt.motion.path,{style:oe,exit:re,variants:{initial:{pathLength:0,d:Ft(r.filter(ze))||"",opacity:1},whileInView:{pathLength:1,d:Ft(r.filter(Be))||"",opacity:1,transition:{duration:s.duration}}},initial:"initial",animate:d?"whileInView":"initial"}),n.jsxRuntimeExports.jsx(dt.motion.path,{d:Et(r.filter(Ye))||"",style:le,exit:ae,variants:{initial:{pathLength:0,d:Et(r.filter(Xe))||"",opacity:1},whileInView:{pathLength:1,d:Et(r.filter(We))||"",opacity:1,transition:{duration:s.duration}}},initial:"initial",animate:d?"whileInView":"initial"}),q?n.jsxRuntimeExports.jsx("line",{y1:0,y2:l,x1:m(q.date),x2:m(q.date),className:n.mo("undp-tick-line stroke-primary-gray-700 dark:stroke-primary-gray-100",c?.mouseOverLine),style:a?.mouseOverLine}):null]}),ce,ue,me]})}),fe]})}function He(e){return e.layer}function Ue(e){return e.position==="after"}function We(e){return!S.checkIfNullOrUndefined(e.y2)}function Xe(e){return!S.checkIfNullOrUndefined(e.y2)}function Ye(e){return!S.checkIfNullOrUndefined(e.y2)}function Be(e){return!S.checkIfNullOrUndefined(e.y1)}function ze(e){return!S.checkIfNullOrUndefined(e.y1)}function Je(e){return e.layer}function Ke(e){return e.position==="before"}function Qe(e){return e.date}function Ze(e){return!S.checkIfNullOrUndefined(e.y2)}function _e(e){return!S.checkIfNullOrUndefined(e.y1)}function ti(e){return e!=null}function ei(e){return e.y2}function ii(e){return e!=null}function ni(e){return e.y2}function si(e){return e!=null}function oi(e){return e.y1}function ri(e){return e!=null}function li(e){return e.y1}function ai(e){return e!=null}function ci(e){return e.y2}function ui(e){return e!=null}function xi(e){return e.y2}function mi(e){return e!=null}function fi(e){return e.y2}function pi(e){return e!=null}function di(e){return e.y1}function hi(e){return e!=null}function yi(e){return e.y2}function gi(e){return e!=null}function vi(e){return e.y1}function ji(e){const t=n.compilerRuntimeExports.c(92),{data:v,graphTitle:J,sources:K,graphDescription:o,height:j,width:A,footNote:f,noOfXTicks:Ot,dateFormat:ee,showValues:ie,padding:Xt,lineColors:Q,sameAxes:It,backgroundColor:ht,leftMargin:St,rightMargin:Dt,topMargin:s,bottomMargin:F,labels:D,lineSuffixes:yt,linePrefixes:P,tooltip:Z,highlightAreaSettings:gt,relativeHeight:qt,onSeriesMouseOver:_,graphID:a,graphDownload:c,dataDownload:tt,animate:G,strokeWidth:H,showDots:et,language:Yt,showColorScale:Bt,minHeight:vt,colorLegendTitle:d,theme:y,ariaLabel:zt,noOfYTicks:jt,maxDate:it,minDate:Mt,curveType:q,styles:p,classNames:u,precision:Jt,customLayers:U,showAxisLabels:Kt,locale:Tt,naLabel:Ct}=e,nt=ee===void 0?"yyyy":ee,h=ie===void 0?!1:ie;let W;t[0]!==Q?(W=Q===void 0?[be.Colors.light.categoricalColors.colors[0],be.Colors.light.categoricalColors.colors[1]]:Q,t[0]=Q,t[1]=W):W=t[1];const k=W,r=It===void 0?!1:It,st=ht===void 0?!1:ht,At=St===void 0?80:St,x=Dt===void 0?80:Dt,l=s===void 0?20:s,Qt=F===void 0?25:F;let Vt;t[2]!==yt?(Vt=yt===void 0?["",""]:yt,t[2]=yt,t[3]=Vt):Vt=t[3];const wt=Vt;let ot;t[4]!==P?(ot=P===void 0?["",""]:P,t[4]=P,t[5]=ot):ot=t[5];const rt=ot;let X;t[6]!==gt?(X=gt===void 0?[]:gt,t[6]=gt,t[7]=X):X=t[7];const $t=X,Y=c===void 0?!1:c,m=tt===void 0?!1:tt,b=G===void 0?!1:G,g=H===void 0?2:H,Ft=et===void 0?!0:et,Et=Yt===void 0?"en":Yt,Zt=Bt===void 0?!0:Bt,_t=vt===void 0?0:vt,Pt=y===void 0?"light":y,lt=jt===void 0?5:jt,Rt=q===void 0?"curve":q,M=Jt===void 0?2:Jt;let N;t[8]!==U?(N=U===void 0?[]:U,t[8]=U,t[9]=N):N=t[9];const T=N,at=Kt===void 0?!0:Kt,ct=Tt===void 0?"en":Tt,bt=Ct===void 0?"NA":Ct,[B,te]=R.useState(0),[L,ut]=R.useState(0),C=R.useRef(null),kt=R.useRef(null);let z,xt;t[10]===Symbol.for("react.memo_cache_sentinel")?(z=()=>{const Gt=new ResizeObserver(Lt=>{te(Lt[0].target.clientWidth||620),ut(Lt[0].target.clientHeight||480)});return C.current&&Gt.observe(C.current),()=>Gt.disconnect()},xt=[],t[10]=z,t[11]=xt):(z=t[10],xt=t[11]),R.useEffect(z,xt);const Nt=u?.graphContainer,V=p?.graphContainer;let $;t[12]!==u?.description||t[13]!==u?.title||t[14]!==v||t[15]!==m||t[16]!==o||t[17]!==Y||t[18]!==J||t[19]!==p?.description||t[20]!==p?.title||t[21]!==A?($=J||o||Y||m?n.jsxRuntimeExports.jsx(Ve.GraphHeader,{styles:{title:p?.title,description:p?.description},classNames:{title:u?.title,description:u?.description},graphTitle:J,graphDescription:o,width:A,graphDownload:Y?kt:void 0,dataDownload:m?v.map(bi).filter(Ri).length>0?v.map(Ei).filter(wi):v.filter(Ai):null}):null,t[12]=u?.description,t[13]=u?.title,t[14]=v,t[15]=m,t[16]=o,t[17]=Y,t[18]=J,t[19]=p?.description,t[20]=p?.title,t[21]=A,t[22]=$):$=t[22];let w;t[23]!==u?.colorLegend||t[24]!==d||t[25]!==D||t[26]!==k||t[27]!==Zt?(w=Zt&&D.length>0?n.jsxRuntimeExports.jsx($e.ColorLegend,{colorDomain:D,colorLegendTitle:d,colors:k,showNAColor:!1,className:u?.colorLegend}):null,t[23]=u?.colorLegend,t[24]=d,t[25]=D,t[26]=k,t[27]=Zt,t[28]=w):w=t[28];let O;t[29]!==v.length?(O=v.length===0&&n.jsxRuntimeExports.jsx(Fe.EmptyState,{}),t[29]=v.length,t[30]=O):O=t[30];let I;t[31]!==b||t[32]!==Qt||t[33]!==u||t[34]!==Rt||t[35]!==T||t[36]!==v||t[37]!==nt||t[38]!==$t||t[39]!==D||t[40]!==At||t[41]!==k||t[42]!==rt||t[43]!==wt||t[44]!==ct||t[45]!==it||t[46]!==Mt||t[47]!==bt||t[48]!==Ot||t[49]!==lt||t[50]!==_||t[51]!==M||t[52]!==x||t[53]!==r||t[54]!==at||t[55]!==Ft||t[56]!==h||t[57]!==g||t[58]!==p||t[59]!==L||t[60]!==B||t[61]!==Z||t[62]!==l?(I=B&&L&&v.length>0?n.jsxRuntimeExports.jsx(Ge,{data:v,sameAxes:r,lineColors:k,width:B,height:L,dateFormat:nt,showValues:h,noOfXTicks:Ot??Pe.getNoOfTicks(B),leftMargin:At,rightMargin:x,topMargin:l,bottomMargin:Qt,labels:D,highlightAreaSettings:$t,tooltip:Z,onSeriesMouseOver:_,animate:b===!0?{duration:.5,once:!0,amount:.5}:b||{duration:0,once:!0,amount:0},strokeWidth:g,showDots:Ft,noOfYTicks:lt,lineSuffixes:wt,linePrefixes:rt,minDate:Mt,maxDate:it,curveType:Rt,styles:p,classNames:u,precision:M,customLayers:T,showAxisLabels:at,locale:ct,naLabel:bt}):null,t[31]=b,t[32]=Qt,t[33]=u,t[34]=Rt,t[35]=T,t[36]=v,t[37]=nt,t[38]=$t,t[39]=D,t[40]=At,t[41]=k,t[42]=rt,t[43]=wt,t[44]=ct,t[45]=it,t[46]=Mt,t[47]=bt,t[48]=Ot,t[49]=lt,t[50]=_,t[51]=M,t[52]=x,t[53]=r,t[54]=at,t[55]=Ft,t[56]=h,t[57]=g,t[58]=p,t[59]=L,t[60]=B,t[61]=Z,t[62]=l,t[63]=I):I=t[63];let mt;t[64]!==O||t[65]!==I?(mt=n.jsxRuntimeExports.jsxs(ke.GraphArea,{ref:C,children:[O,I]}),t[64]=O,t[65]=I,t[66]=mt):mt=t[66];let ft;t[67]!==u?.footnote||t[68]!==u?.source||t[69]!==f||t[70]!==K||t[71]!==p?.footnote||t[72]!==p?.source||t[73]!==A?(ft=K||f?n.jsxRuntimeExports.jsx(Ce.GraphFooter,{styles:{footnote:p?.footnote,source:p?.source},classNames:{footnote:u?.footnote,source:u?.source},sources:K,footNote:f,width:A}):null,t[67]=u?.footnote,t[68]=u?.source,t[69]=f,t[70]=K,t[71]=p?.footnote,t[72]=p?.source,t[73]=A,t[74]=ft):ft=t[74];let pt;return t[75]!==zt||t[76]!==st||t[77]!==a||t[78]!==j||t[79]!==Et||t[80]!==_t||t[81]!==Xt||t[82]!==qt||t[83]!==Nt||t[84]!==V||t[85]!==$||t[86]!==w||t[87]!==mt||t[88]!==ft||t[89]!==Pt||t[90]!==A?(pt=n.jsxRuntimeExports.jsxs(ke.GraphContainer,{className:Nt,style:V,id:a,ref:kt,"aria-label":zt,backgroundColor:st,theme:Pt,language:Et,minHeight:_t,width:A,height:j,relativeHeight:qt,padding:Xt,children:[$,w,mt,ft]}),t[75]=zt,t[76]=st,t[77]=a,t[78]=j,t[79]=Et,t[80]=_t,t[81]=Xt,t[82]=qt,t[83]=Nt,t[84]=V,t[85]=$,t[86]=w,t[87]=mt,t[88]=ft,t[89]=Pt,t[90]=A,t[91]=pt):pt=t[91],pt}function Ai(e){return e!==void 0}function wi(e){return e!==void 0}function Ei(e){return e.data}function Ri(e){return e!==void 0}function bi(e){return e.data}exports.DualAxisLineChart=ji;
2
2
  //# sourceMappingURL=DualAxisLineChart.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"DualAxisLineChart.cjs","sources":["../src/Components/Graphs/LineCharts/DualAxisLineChart/Graph.tsx","../src/Components/Graphs/LineCharts/DualAxisLineChart/index.tsx"],"sourcesContent":["import { useEffect, useRef, useState } from 'react';\r\nimport {\r\n line,\r\n curveMonotoneX,\r\n curveLinear,\r\n curveStep,\r\n curveStepAfter,\r\n curveStepBefore,\r\n} from 'd3-shape';\r\nimport { scaleLinear, scaleTime } from 'd3-scale';\r\nimport { format } from 'date-fns/format';\r\nimport { parse } from 'date-fns/parse';\r\nimport { bisectCenter } from 'd3-array';\r\nimport { pointer, select } from 'd3-selection';\r\nimport { motion, useInView } from 'motion/react';\r\nimport { cn } from '@undp/design-system-react/cn';\r\nimport orderBy from 'lodash.orderby';\r\n\r\nimport {\r\n AnimateDataType,\r\n ClassNameObject,\r\n CurveTypes,\r\n CustomLayerDataType,\r\n DualAxisLineChartDataType,\r\n HighlightAreaSettingsDataType,\r\n StyleObject,\r\n} from '@/Types';\r\nimport { numberFormattingFunction } from '@/Utils/numberFormattingFunction';\r\nimport { Tooltip } from '@/Components/Elements/Tooltip';\r\nimport { checkIfNullOrUndefined } from '@/Utils/checkIfNullOrUndefined';\r\nimport { XTicksAndGridLines } from '@/Components/Elements/Axes/XTicksAndGridLines';\r\nimport { Axis } from '@/Components/Elements/Axes/Axis';\r\nimport { AxisTitle } from '@/Components/Elements/Axes/AxisTitle';\r\nimport { HighlightArea } from '@/Components/Elements/HighlightArea';\r\n\r\ninterface Props {\r\n data: DualAxisLineChartDataType[];\r\n lineColors: [string, string];\r\n labels: [string, string];\r\n width: number;\r\n height: number;\r\n dateFormat: string;\r\n showValues: boolean;\r\n noOfXTicks: number;\r\n rightMargin: number;\r\n leftMargin: number;\r\n topMargin: number;\r\n bottomMargin: number;\r\n sameAxes: boolean;\r\n highlightAreaSettings: HighlightAreaSettingsDataType[];\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n tooltip?: string | ((_d: any) => React.ReactNode);\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onSeriesMouseOver?: (_d: any) => void;\r\n animate: AnimateDataType;\r\n strokeWidth: number;\r\n showDots: boolean;\r\n noOfYTicks: number;\r\n lineSuffixes: [string, string];\r\n linePrefixes: [string, string];\r\n minDate?: string | number;\r\n maxDate?: string | number;\r\n curveType: CurveTypes;\r\n styles?: StyleObject;\r\n classNames?: ClassNameObject;\r\n precision: number;\r\n customLayers: CustomLayerDataType[];\r\n showAxisLabels: boolean;\r\n}\r\n\r\ninterface FormattedDataType {\r\n y1: number;\r\n y2: number;\r\n date: Date;\r\n}\r\n\r\nexport function Graph(props: Props) {\r\n const {\r\n data,\r\n width,\r\n height,\r\n lineColors,\r\n labels,\r\n sameAxes,\r\n dateFormat,\r\n showValues,\r\n noOfXTicks,\r\n rightMargin,\r\n leftMargin,\r\n topMargin,\r\n bottomMargin,\r\n tooltip,\r\n highlightAreaSettings,\r\n onSeriesMouseOver,\r\n animate,\r\n strokeWidth,\r\n showDots,\r\n noOfYTicks,\r\n lineSuffixes,\r\n linePrefixes,\r\n minDate,\r\n maxDate,\r\n curveType,\r\n styles,\r\n classNames,\r\n precision,\r\n customLayers,\r\n showAxisLabels,\r\n } = props;\r\n const svgRef = useRef(null);\r\n const isInView = useInView(svgRef, {\r\n once: animate.once,\r\n amount: animate.amount,\r\n });\r\n const [hasAnimatedOnce, setHasAnimatedOnce] = useState(false);\r\n\r\n useEffect(() => {\r\n if (isInView && !hasAnimatedOnce) {\r\n const timeout = setTimeout(\r\n () => {\r\n setHasAnimatedOnce(true);\r\n },\r\n (animate.duration + 0.5) * 1000,\r\n );\r\n return () => clearTimeout(timeout);\r\n }\r\n }, [isInView, hasAnimatedOnce, animate.duration]);\r\n const curve =\r\n curveType === 'linear'\r\n ? curveLinear\r\n : curveType === 'step'\r\n ? curveStep\r\n : curveType === 'stepAfter'\r\n ? curveStepAfter\r\n : curveType === 'stepBefore'\r\n ? curveStepBefore\r\n : curveMonotoneX;\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const [mouseOverData, setMouseOverData] = useState<any>(undefined);\r\n const [eventX, setEventX] = useState<number | undefined>(undefined);\r\n const [eventY, setEventY] = useState<number | undefined>(undefined);\r\n const margin = {\r\n top: topMargin,\r\n bottom: bottomMargin,\r\n left: leftMargin + 50,\r\n right: rightMargin + 65,\r\n };\r\n const MouseoverRectRef = useRef(null);\r\n const dataFormatted = orderBy(\r\n data.map(d => ({\r\n ...d,\r\n date: parse(`${d.date}`, dateFormat, new Date()),\r\n })),\r\n ['date'],\r\n ['asc'],\r\n );\r\n const highlightAreaSettingsFormatted = highlightAreaSettings.map(d => ({\r\n ...d,\r\n coordinates: [\r\n d.coordinates[0] === null ? null : parse(`${d.coordinates[0]}`, dateFormat, new Date()),\r\n d.coordinates[1] === null ? null : parse(`${d.coordinates[1]}`, dateFormat, new Date()),\r\n ],\r\n }));\r\n const graphWidth = width - margin.left - margin.right;\r\n const graphHeight = height - margin.top - margin.bottom;\r\n const minYear = minDate ? parse(`${minDate}`, dateFormat, new Date()) : dataFormatted[0].date;\r\n const maxYear = maxDate\r\n ? parse(`${maxDate}`, dateFormat, new Date())\r\n : dataFormatted[dataFormatted.length - 1].date;\r\n const minParam1 =\r\n Math.min(...dataFormatted.map(d => d.y1).filter(d => d !== undefined && d !== null)) !==\r\n Infinity\r\n ? Math.min(...dataFormatted.map(d => d.y2).filter(d => d !== undefined && d !== null)) > 0\r\n ? 0\r\n : Math.min(...dataFormatted.map(d => d.y1).filter(d => d !== undefined && d !== null))\r\n : 0;\r\n const minParam2 =\r\n Math.min(...dataFormatted.map(d => d.y2).filter(d => d !== undefined && d !== null)) !==\r\n Infinity\r\n ? Math.min(...dataFormatted.map(d => d.y2).filter(d => d !== undefined && d !== null)) > 0\r\n ? 0\r\n : Math.min(...dataFormatted.map(d => d.y2).filter(d => d !== undefined && d !== null))\r\n : 0;\r\n const maxParam1 =\r\n Math.max(...dataFormatted.map(d => d.y1).filter(d => d !== undefined && d !== null)) !==\r\n Infinity\r\n ? Math.max(...dataFormatted.map(d => d.y1).filter(d => d !== undefined && d !== null))\r\n : 0;\r\n const maxParam2 =\r\n Math.max(...dataFormatted.map(d => d.y2).filter(d => d !== undefined && d !== null)) !==\r\n Infinity\r\n ? Math.max(...dataFormatted.map(d => d.y2).filter(d => d !== undefined && d !== null))\r\n : 0;\r\n\r\n const minParam = minParam1 < minParam2 ? minParam1 : minParam2;\r\n const maxParam = maxParam1 > maxParam2 ? maxParam1 : maxParam2;\r\n const x = scaleTime().domain([minYear, maxYear]).range([0, graphWidth]);\r\n\r\n const y1 = scaleLinear()\r\n .domain([\r\n sameAxes ? minParam : minParam1,\r\n sameAxes ? (maxParam > 0 ? maxParam : 0) : maxParam1 > 0 ? maxParam1 : 0,\r\n ])\r\n .range([graphHeight, 0])\r\n .nice();\r\n const y2 = scaleLinear()\r\n .domain([\r\n sameAxes ? minParam : minParam2,\r\n sameAxes ? (maxParam > 0 ? maxParam : 0) : maxParam2 > 0 ? maxParam2 : 0,\r\n ])\r\n .range([graphHeight, 0])\r\n .nice();\r\n\r\n const lineShape1 = line<FormattedDataType>()\r\n .defined(d => !checkIfNullOrUndefined(d.y1))\r\n .x(d => x(d.date))\r\n .y(d => y1(d.y1))\r\n .curve(curve);\r\n\r\n const lineShape2 = line<FormattedDataType>()\r\n .defined(d => !checkIfNullOrUndefined(d.y2))\r\n .x(d => x(d.date))\r\n .y(d => y2(d.y2))\r\n .curve(curve);\r\n const y1Ticks = y1.ticks(noOfYTicks);\r\n const y2Ticks = y2.ticks(noOfYTicks);\r\n const xTicks = x.ticks(noOfXTicks);\r\n useEffect(() => {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const mousemove = (event: any) => {\r\n const selectedData =\r\n dataFormatted[\r\n bisectCenter(\r\n dataFormatted.map(d => d.date),\r\n x.invert(pointer(event)[0]),\r\n 0,\r\n )\r\n ];\r\n setMouseOverData(selectedData || dataFormatted[dataFormatted.length - 1]);\r\n onSeriesMouseOver?.(selectedData || dataFormatted[dataFormatted.length - 1]);\r\n setEventY(event.clientY);\r\n setEventX(event.clientX);\r\n };\r\n const mouseout = () => {\r\n setMouseOverData(undefined);\r\n setEventX(undefined);\r\n setEventY(undefined);\r\n onSeriesMouseOver?.(undefined);\r\n };\r\n select(MouseoverRectRef.current).on('mousemove', mousemove).on('mouseout', mouseout);\r\n }, [x, dataFormatted, onSeriesMouseOver]);\r\n\r\n return (\r\n <>\r\n <motion.svg\r\n width={`${width}px`}\r\n height={`${height}px`}\r\n viewBox={`0 0 ${width} ${height}`}\r\n direction='ltr'\r\n ref={svgRef}\r\n >\r\n <g transform={`translate(${margin.left},${margin.top})`}>\r\n <HighlightArea\r\n areaSettings={highlightAreaSettingsFormatted}\r\n width={graphWidth}\r\n height={graphHeight}\r\n scale={x}\r\n animate={animate}\r\n isInView={isInView}\r\n />\r\n <g>\r\n {y1Ticks.map((d, i) => (\r\n <g key={i}>\r\n <line\r\n y1={y1(d)}\r\n y2={y1(d)}\r\n x1={-15}\r\n x2={-20}\r\n style={{\r\n stroke: lineColors[0],\r\n strokeWidth: 1,\r\n ...(styles?.yAxis?.gridLines || {}),\r\n }}\r\n className={classNames?.yAxis?.gridLines}\r\n />\r\n <text\r\n x={0 - 25}\r\n y={y1(d)}\r\n dy='0.33em'\r\n className={cn('text-xs', classNames?.yAxis?.labels)}\r\n style={{\r\n textAnchor: 'end',\r\n fill: lineColors[0],\r\n ...(styles?.yAxis?.labels || {}),\r\n }}\r\n >\r\n {numberFormattingFunction(d, 'NA', precision, linePrefixes[0], lineSuffixes[0])}\r\n </text>\r\n </g>\r\n ))}\r\n <Axis\r\n y1={0}\r\n y2={graphHeight}\r\n x1={-15}\r\n x2={-15}\r\n classNames={{ axis: classNames?.xAxis?.axis }}\r\n styles={{ axis: { stroke: lineColors[0], ...(styles?.xAxis?.axis || {}) } }}\r\n />\r\n\r\n {showAxisLabels ? (\r\n <AxisTitle\r\n x={10 - margin.left}\r\n y={graphHeight / 2}\r\n style={{ fill: lineColors[0], ...(styles?.yAxis?.title || {}) }}\r\n className={classNames?.yAxis?.title}\r\n text={labels[0].length > 100 ? `${labels[0].substring(0, 100)}...` : labels[0]}\r\n rotate90\r\n />\r\n ) : null}\r\n </g>\r\n <g>\r\n {y2Ticks.map((d, i) => (\r\n <g key={i}>\r\n <line\r\n y1={y2(d)}\r\n y2={y2(d)}\r\n x1={graphWidth + 15}\r\n x2={graphWidth + 20}\r\n style={{\r\n stroke: lineColors[1],\r\n strokeWidth: 1,\r\n ...(styles?.yAxis?.gridLines || {}),\r\n }}\r\n className={classNames?.yAxis?.gridLines}\r\n />\r\n <text\r\n x={graphWidth + 25}\r\n y={y2(d)}\r\n dy='0.33em'\r\n dx={-2}\r\n style={{\r\n textAnchor: 'start',\r\n fill: lineColors[1],\r\n ...(styles?.yAxis?.labels || {}),\r\n }}\r\n className={cn('text-xs', classNames?.yAxis?.labels)}\r\n >\r\n {numberFormattingFunction(d, 'NA', precision, linePrefixes[1], lineSuffixes[1])}\r\n </text>\r\n </g>\r\n ))}\r\n <Axis\r\n y1={0}\r\n y2={graphHeight}\r\n x1={graphWidth + 15}\r\n x2={graphWidth + 15}\r\n classNames={{ axis: classNames?.xAxis?.axis }}\r\n styles={{ axis: { stroke: lineColors[1], ...(styles?.xAxis?.axis || {}) } }}\r\n />\r\n {showAxisLabels ? (\r\n <AxisTitle\r\n x={graphWidth + margin.right - 15}\r\n y={graphHeight / 2}\r\n style={{ fill: lineColors[1], ...(styles?.yAxis?.title || {}) }}\r\n className={classNames?.yAxis?.title}\r\n text={labels[1].length > 100 ? `${labels[1].substring(0, 100)}...` : labels[1]}\r\n rotate90\r\n />\r\n ) : null}\r\n </g>\r\n <g>\r\n <Axis\r\n y1={graphHeight}\r\n y2={graphHeight}\r\n x1={-15}\r\n x2={graphWidth + 15}\r\n classNames={{ axis: classNames?.xAxis?.axis }}\r\n styles={{ axis: styles?.xAxis?.axis }}\r\n />\r\n <XTicksAndGridLines\r\n values={xTicks.map(d => format(d, dateFormat))}\r\n x={xTicks.map(d => x(d))}\r\n y1={0}\r\n y2={graphHeight}\r\n styles={{\r\n gridLines: styles?.xAxis?.gridLines,\r\n labels: styles?.xAxis?.labels,\r\n }}\r\n classNames={{\r\n gridLines: cn('opacity-0', classNames?.xAxis?.gridLines),\r\n labels: cn(\r\n 'fill-primary-gray-700 dark:fill-primary-gray-300 xs:max-[360px]:hidden text-[9px] md:text-[10px] lg:text-xs',\r\n classNames?.xAxis?.labels,\r\n ),\r\n }}\r\n labelType='primary'\r\n showGridLines\r\n precision={precision}\r\n />\r\n </g>\r\n {customLayers.filter(d => d.position === 'before').map(d => d.layer)}\r\n <g>\r\n <motion.path\r\n style={{\r\n stroke: lineColors[0],\r\n strokeWidth,\r\n fill: 'none',\r\n }}\r\n exit={{ opacity: 0, transition: { duration: animate.duration } }}\r\n variants={{\r\n initial: {\r\n pathLength: 0,\r\n d:\r\n lineShape1(\r\n dataFormatted.filter(\r\n (el): el is FormattedDataType => !checkIfNullOrUndefined(el.y1),\r\n ),\r\n ) || '',\r\n opacity: 1,\r\n },\r\n whileInView: {\r\n pathLength: 1,\r\n d:\r\n lineShape1(\r\n dataFormatted.filter(\r\n (el): el is FormattedDataType => !checkIfNullOrUndefined(el.y1),\r\n ),\r\n ) || '',\r\n opacity: 1,\r\n transition: { duration: animate.duration },\r\n },\r\n }}\r\n initial='initial'\r\n animate={isInView ? 'whileInView' : 'initial'}\r\n />\r\n <motion.path\r\n d={\r\n lineShape2(\r\n dataFormatted.filter(\r\n (el): el is FormattedDataType => !checkIfNullOrUndefined(el.y2),\r\n ),\r\n ) || ''\r\n }\r\n style={{\r\n stroke: lineColors[1],\r\n strokeWidth,\r\n fill: 'none',\r\n }}\r\n exit={{ opacity: 0, transition: { duration: animate.duration } }}\r\n variants={{\r\n initial: {\r\n pathLength: 0,\r\n d:\r\n lineShape2(\r\n dataFormatted.filter(\r\n (el): el is FormattedDataType => !checkIfNullOrUndefined(el.y2),\r\n ),\r\n ) || '',\r\n opacity: 1,\r\n },\r\n whileInView: {\r\n pathLength: 1,\r\n d:\r\n lineShape2(\r\n dataFormatted.filter(\r\n (el): el is FormattedDataType => !checkIfNullOrUndefined(el.y2),\r\n ),\r\n ) || '',\r\n opacity: 1,\r\n transition: { duration: animate.duration },\r\n },\r\n }}\r\n initial='initial'\r\n animate={isInView ? 'whileInView' : 'initial'}\r\n />\r\n {mouseOverData ? (\r\n <line\r\n y1={0}\r\n y2={graphHeight}\r\n x1={x(mouseOverData.date)}\r\n x2={x(mouseOverData.date)}\r\n className={cn(\r\n 'undp-tick-line stroke-primary-gray-700 dark:stroke-primary-gray-100',\r\n classNames?.mouseOverLine,\r\n )}\r\n style={styles?.mouseOverLine}\r\n />\r\n ) : null}\r\n </g>\r\n <g>\r\n {dataFormatted.map((d, i) => (\r\n <motion.g key={i}>\r\n {!checkIfNullOrUndefined(d.y1) ? (\r\n <>\r\n {showDots ? (\r\n <motion.circle\r\n r={\r\n graphWidth / dataFormatted.length < 5\r\n ? 0\r\n : graphWidth / dataFormatted.length < 20\r\n ? 2\r\n : 4\r\n }\r\n exit={{ opacity: 0, transition: { duration: animate.duration } }}\r\n variants={{\r\n initial: {\r\n opacity: 0,\r\n cx: x(d.date),\r\n cy: y1(d.y1 as number),\r\n fill: lineColors[0],\r\n },\r\n whileInView: {\r\n opacity: 1,\r\n fill: lineColors[0],\r\n transition: {\r\n duration: hasAnimatedOnce ? animate.duration : 0.5,\r\n delay: hasAnimatedOnce ? 0 : animate.duration,\r\n },\r\n cx: x(d.date),\r\n cy: y1(d.y1 as number),\r\n },\r\n }}\r\n initial='initial'\r\n animate={isInView ? 'whileInView' : 'initial'}\r\n />\r\n ) : null}\r\n {showValues ? (\r\n <motion.text\r\n dy={\r\n checkIfNullOrUndefined(d.y2)\r\n ? -8\r\n : (d.y2 as number) < (d.y1 as number)\r\n ? -8\r\n : '1em'\r\n }\r\n style={{\r\n textAnchor: 'middle',\r\n ...(styles?.graphObjectValues || {}),\r\n }}\r\n className={cn(\r\n 'graph-value graph-value-line-1 text-xs font-bold',\r\n classNames?.graphObjectValues,\r\n )}\r\n exit={{ opacity: 0, transition: { duration: animate.duration } }}\r\n variants={{\r\n initial: {\r\n opacity: 0,\r\n x: x(d.date),\r\n y: y2(d.y1 as number),\r\n fill: lineColors[0],\r\n },\r\n whileInView: {\r\n opacity: 1,\r\n x: x(d.date),\r\n fill: lineColors[0],\r\n y: y2(d.y1 as number),\r\n transition: {\r\n duration: hasAnimatedOnce ? animate.duration : 0.5,\r\n delay: hasAnimatedOnce ? 0 : animate.duration,\r\n },\r\n },\r\n }}\r\n initial='initial'\r\n animate={isInView ? 'whileInView' : 'initial'}\r\n >\r\n {numberFormattingFunction(\r\n d.y1,\r\n 'NA',\r\n precision,\r\n linePrefixes[0],\r\n lineSuffixes[0],\r\n )}\r\n </motion.text>\r\n ) : null}\r\n </>\r\n ) : null}\r\n {!checkIfNullOrUndefined(d.y2) ? (\r\n <>\r\n {showDots ? (\r\n <motion.circle\r\n r={\r\n graphWidth / dataFormatted.length < 5\r\n ? 0\r\n : graphWidth / dataFormatted.length < 20\r\n ? 2\r\n : 4\r\n }\r\n exit={{ opacity: 0, transition: { duration: animate.duration } }}\r\n variants={{\r\n initial: {\r\n opacity: 0,\r\n cx: x(d.date),\r\n cy: y2(d.y2 as number),\r\n fill: lineColors[1],\r\n },\r\n whileInView: {\r\n opacity: 1,\r\n transition: {\r\n duration: hasAnimatedOnce ? animate.duration : 0.5,\r\n delay: hasAnimatedOnce ? 0 : animate.duration,\r\n },\r\n fill: lineColors[1],\r\n cx: x(d.date),\r\n cy: y2(d.y2 as number),\r\n },\r\n }}\r\n initial='initial'\r\n animate={isInView ? 'whileInView' : 'initial'}\r\n />\r\n ) : null}\r\n {showValues ? (\r\n <motion.text\r\n dy={\r\n checkIfNullOrUndefined(d.y1)\r\n ? -8\r\n : (d.y1 as number) < (d.y2 as number)\r\n ? -8\r\n : '1em'\r\n }\r\n style={{\r\n textAnchor: 'middle',\r\n ...(styles?.graphObjectValues || {}),\r\n }}\r\n className={cn(\r\n 'graph-value graph-value-line-2 text-xs font-bold',\r\n classNames?.graphObjectValues,\r\n )}\r\n exit={{ opacity: 0, transition: { duration: animate.duration } }}\r\n variants={{\r\n initial: {\r\n opacity: 0,\r\n x: x(d.date),\r\n y: y2(d.y2 as number),\r\n fill: lineColors[1],\r\n },\r\n whileInView: {\r\n opacity: 1,\r\n x: x(d.date),\r\n y: y2(d.y2 as number),\r\n fill: lineColors[1],\r\n transition: {\r\n duration: hasAnimatedOnce ? animate.duration : 0.5,\r\n delay: hasAnimatedOnce ? 0 : animate.duration,\r\n },\r\n },\r\n }}\r\n initial='initial'\r\n animate={isInView ? 'whileInView' : 'initial'}\r\n >\r\n {numberFormattingFunction(\r\n d.y2,\r\n 'NA',\r\n precision,\r\n linePrefixes[1],\r\n lineSuffixes[1],\r\n )}\r\n </motion.text>\r\n ) : null}\r\n </>\r\n ) : null}\r\n </motion.g>\r\n ))}\r\n </g>\r\n {customLayers.filter(d => d.position === 'after').map(d => d.layer)}\r\n <rect\r\n ref={MouseoverRectRef}\r\n style={{\r\n fill: 'none',\r\n pointerEvents: 'all',\r\n }}\r\n width={graphWidth}\r\n height={graphHeight}\r\n />\r\n </g>\r\n </motion.svg>\r\n {mouseOverData && tooltip && eventX && eventY ? (\r\n <Tooltip\r\n data={mouseOverData}\r\n body={tooltip}\r\n xPos={eventX}\r\n yPos={eventY}\r\n backgroundStyle={styles?.tooltip}\r\n className={classNames?.tooltip}\r\n />\r\n ) : null}\r\n </>\r\n );\r\n}\r\n","import { useState, useRef, useEffect } from 'react';\r\n\r\nimport { Graph } from './Graph';\r\n\r\nimport { GraphFooter } from '@/Components/Elements/GraphFooter';\r\nimport { GraphHeader } from '@/Components/Elements/GraphHeader';\r\nimport { ColorLegend } from '@/Components/Elements/ColorLegend';\r\nimport {\r\n DualAxisLineChartDataType,\r\n Languages,\r\n SourcesDataType,\r\n StyleObject,\r\n ClassNameObject,\r\n HighlightAreaSettingsDataType,\r\n CurveTypes,\r\n CustomLayerDataType,\r\n AnimateDataType,\r\n} from '@/Types';\r\nimport { Colors } from '@/Components/ColorPalette';\r\nimport { EmptyState } from '@/Components/Elements/EmptyState';\r\nimport { GraphArea, GraphContainer } from '@/Components/Elements/GraphContainer';\r\nimport { getNoOfTicks } from '@/Utils/getNoOfTicks';\r\n\r\ninterface Props {\r\n // Data\r\n /** Array of data objects */\r\n data: DualAxisLineChartDataType[];\r\n\r\n // Titles, Labels, and Sources\r\n /** Title of the graph */\r\n graphTitle?: string | React.ReactNode;\r\n /** Description of the graph */\r\n graphDescription?: string | React.ReactNode;\r\n /** Footnote for the graph */\r\n footNote?: string | React.ReactNode;\r\n /** Source data for the graph */\r\n sources?: SourcesDataType[];\r\n /** Accessibility label */\r\n ariaLabel?: string;\r\n\r\n // Colors and Styling\r\n /** Array of colors for the 2 lines */\r\n lineColors?: [string, string];\r\n /** Title for the color legend */\r\n colorLegendTitle?: string;\r\n /** Background color of the graph */\r\n backgroundColor?: string | boolean;\r\n /** Custom styles for the graph. Each object should be a valid React CSS style object. */\r\n styles?: StyleObject;\r\n /** Custom class names */\r\n classNames?: ClassNameObject;\r\n\r\n // Size and Spacing\r\n /** Width of the graph */\r\n width?: number;\r\n /** Height of the graph */\r\n height?: number;\r\n /** Minimum height of the graph */\r\n minHeight?: number;\r\n /** Relative height scaling factor. This overwrites the height props */\r\n relativeHeight?: number;\r\n /** Padding around the graph. Defaults to 0 if no backgroundColor is mentioned else defaults to 1rem */\r\n padding?: string;\r\n /** Left margin of the graph */\r\n leftMargin?: number;\r\n /** Right margin of the graph */\r\n rightMargin?: number;\r\n /** Top margin of the graph */\r\n topMargin?: number;\r\n /** Bottom margin of the graph */\r\n bottomMargin?: number;\r\n\r\n // Values and Ticks\r\n /** Prefix for values of the lines */\r\n linePrefixes?: [string, string];\r\n /** Suffix for values of the lines */\r\n lineSuffixes?: [string, string];\r\n /** Maximum value of the date for the chart */\r\n maxDate?: string | number;\r\n /** Minimum value of the date for the chart */\r\n minDate?: string | number;\r\n /** No. of ticks on the x-axis */\r\n noOfXTicks?: number;\r\n /** No. of ticks on the y-axis */\r\n noOfYTicks?: number;\r\n\r\n // Graph Parameters\r\n /** Toggle visibility of values */\r\n showValues?: boolean;\r\n /** Toggle visibility of dots on the line */\r\n showDots?: boolean;\r\n /** Stroke width of the line */\r\n strokeWidth?: number;\r\n /** Toggle the initial animation of the line. If the type is number then it uses the number as the time in seconds for animation. */\r\n animate?: boolean | AnimateDataType;\r\n /** Enables same axis for the 2 lines */\r\n sameAxes?: boolean;\r\n /** Toggle visibility of color scale. */\r\n showColorScale?: boolean;\r\n /** Toggle visibility of labels of the axis. */\r\n showAxisLabels?: boolean;\r\n /** Labels for the lines */\r\n labels: [string, string];\r\n /** Format of the date in the data object. Available formats can be found [here](https://date-fns.org/docs/format) */\r\n dateFormat?: string;\r\n /** Highlighted area(square) on the chart */\r\n highlightAreaSettings?: HighlightAreaSettingsDataType[];\r\n /** Curve type for the line */\r\n curveType?: CurveTypes;\r\n /** Specifies the number of decimal places to display in the value. */\r\n precision?: number;\r\n /** Optional SVG <g> element or function that renders custom content behind or in front of the graph. */\r\n customLayers?: CustomLayerDataType[];\r\n /** Enable graph download option as png */\r\n graphDownload?: boolean;\r\n /** Enable data download option as a csv */\r\n dataDownload?: boolean;\r\n\r\n // Interactions and Callbacks\r\n /** Tooltip content. If the type is string then this uses the [handlebar](../?path=/docs/misc-handlebars-templates-and-custom-helpers--docs) template to display the data */\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n tooltip?: string | ((_d: any) => React.ReactNode);\r\n /** Callback for mouse over event */\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onSeriesMouseOver?: (_d: any) => void;\r\n\r\n // Configuration and Options\r\n /** Language setting */\r\n language?: Languages;\r\n /** Color theme */\r\n theme?: 'light' | 'dark';\r\n /** Unique ID for the graph */\r\n graphID?: string;\r\n}\r\n\r\nexport function DualAxisLineChart(props: Props) {\r\n const {\r\n data,\r\n graphTitle,\r\n sources,\r\n graphDescription,\r\n height,\r\n width,\r\n footNote,\r\n noOfXTicks,\r\n dateFormat = 'yyyy',\r\n showValues = false,\r\n padding,\r\n lineColors = [\r\n Colors.light.categoricalColors.colors[0],\r\n Colors.light.categoricalColors.colors[1],\r\n ],\r\n sameAxes = false,\r\n backgroundColor = false,\r\n leftMargin = 80,\r\n rightMargin = 80,\r\n topMargin = 20,\r\n bottomMargin = 25,\r\n labels,\r\n lineSuffixes = ['', ''],\r\n linePrefixes = ['', ''],\r\n tooltip,\r\n highlightAreaSettings = [],\r\n relativeHeight,\r\n onSeriesMouseOver,\r\n graphID,\r\n graphDownload = false,\r\n dataDownload = false,\r\n animate = false,\r\n strokeWidth = 2,\r\n showDots = true,\r\n language = 'en',\r\n showColorScale = true,\r\n minHeight = 0,\r\n colorLegendTitle,\r\n theme = 'light',\r\n ariaLabel,\r\n noOfYTicks = 5,\r\n maxDate,\r\n minDate,\r\n curveType = 'curve',\r\n styles,\r\n classNames,\r\n precision = 2,\r\n customLayers = [],\r\n showAxisLabels = true,\r\n } = props;\r\n\r\n const [svgWidth, setSvgWidth] = useState(0);\r\n const [svgHeight, setSvgHeight] = useState(0);\r\n\r\n const graphDiv = useRef<HTMLDivElement>(null);\r\n const graphParentDiv = useRef<HTMLDivElement>(null);\r\n useEffect(() => {\r\n const resizeObserver = new ResizeObserver(entries => {\r\n setSvgWidth(entries[0].target.clientWidth || 620);\r\n setSvgHeight(entries[0].target.clientHeight || 480);\r\n });\r\n if (graphDiv.current) {\r\n resizeObserver.observe(graphDiv.current);\r\n }\r\n return () => resizeObserver.disconnect();\r\n }, []);\r\n\r\n return (\r\n <GraphContainer\r\n className={classNames?.graphContainer}\r\n style={styles?.graphContainer}\r\n id={graphID}\r\n ref={graphParentDiv}\r\n aria-label={ariaLabel}\r\n backgroundColor={backgroundColor}\r\n theme={theme}\r\n language={language}\r\n minHeight={minHeight}\r\n width={width}\r\n height={height}\r\n relativeHeight={relativeHeight}\r\n padding={padding}\r\n >\r\n {graphTitle || graphDescription || graphDownload || dataDownload ? (\r\n <GraphHeader\r\n styles={{\r\n title: styles?.title,\r\n description: styles?.description,\r\n }}\r\n classNames={{\r\n title: classNames?.title,\r\n description: classNames?.description,\r\n }}\r\n graphTitle={graphTitle}\r\n graphDescription={graphDescription}\r\n width={width}\r\n graphDownload={graphDownload ? graphParentDiv : undefined}\r\n dataDownload={\r\n dataDownload\r\n ? data.map(d => d.data).filter(d => d !== undefined).length > 0\r\n ? data.map(d => d.data).filter(d => d !== undefined)\r\n : data.filter(d => d !== undefined)\r\n : null\r\n }\r\n />\r\n ) : null}\r\n {showColorScale && labels.length > 0 ? (\r\n <ColorLegend\r\n colorDomain={labels}\r\n colorLegendTitle={colorLegendTitle}\r\n colors={lineColors}\r\n showNAColor={false}\r\n className={classNames?.colorLegend}\r\n />\r\n ) : null}\r\n <GraphArea ref={graphDiv}>\r\n {data.length === 0 && <EmptyState />}\r\n {svgWidth && svgHeight && data.length > 0 ? (\r\n <Graph\r\n data={data}\r\n sameAxes={sameAxes}\r\n lineColors={lineColors}\r\n width={svgWidth}\r\n height={svgHeight}\r\n dateFormat={dateFormat}\r\n showValues={showValues}\r\n noOfXTicks={noOfXTicks ?? getNoOfTicks(svgWidth)}\r\n leftMargin={leftMargin}\r\n rightMargin={rightMargin}\r\n topMargin={topMargin}\r\n bottomMargin={bottomMargin}\r\n labels={labels}\r\n highlightAreaSettings={highlightAreaSettings}\r\n tooltip={tooltip}\r\n onSeriesMouseOver={onSeriesMouseOver}\r\n animate={\r\n animate === true\r\n ? { duration: 0.5, once: true, amount: 0.5 }\r\n : animate || { duration: 0, once: true, amount: 0 }\r\n }\r\n strokeWidth={strokeWidth}\r\n showDots={showDots}\r\n noOfYTicks={noOfYTicks}\r\n lineSuffixes={lineSuffixes}\r\n linePrefixes={linePrefixes}\r\n minDate={minDate}\r\n maxDate={maxDate}\r\n curveType={curveType}\r\n styles={styles}\r\n classNames={classNames}\r\n precision={precision}\r\n customLayers={customLayers}\r\n showAxisLabels={showAxisLabels}\r\n />\r\n ) : null}\r\n </GraphArea>\r\n {sources || footNote ? (\r\n <GraphFooter\r\n styles={{ footnote: styles?.footnote, source: styles?.source }}\r\n classNames={{\r\n footnote: classNames?.footnote,\r\n source: classNames?.source,\r\n }}\r\n sources={sources}\r\n footNote={footNote}\r\n width={width}\r\n />\r\n ) : null}\r\n </GraphContainer>\r\n );\r\n}\r\n"],"names":["Graph","props","$","_c","data","width","height","lineColors","labels","sameAxes","dateFormat","showValues","noOfXTicks","rightMargin","leftMargin","topMargin","bottomMargin","tooltip","highlightAreaSettings","onSeriesMouseOver","animate","strokeWidth","showDots","noOfYTicks","lineSuffixes","linePrefixes","minDate","maxDate","curveType","styles","classNames","precision","customLayers","showAxisLabels","svgRef","useRef","t0","amount","once","isInView","useInView","hasAnimatedOnce","setHasAnimatedOnce","useState","t1","t2","duration","timeout","setTimeout","clearTimeout","useEffect","curve","curveLinear","curveStep","curveStepAfter","curveStepBefore","curveMonotoneX","mouseOverData","setMouseOverData","undefined","eventX","setEventX","eventY","setEventY","t3","t4","t5","top","bottom","left","right","margin","MouseoverRectRef","t6","d","date","parse","Date","dataFormatted","orderBy","map","t7","t8","d_0","coordinates","highlightAreaSettingsFormatted","graphWidth","graphHeight","minYear","maxYear","length","minParam1","Math","min","_temp","filter","_temp2","Infinity","_temp3","_temp4","_temp5","_temp6","minParam2","_temp7","_temp8","_temp9","_temp0","_temp1","_temp10","maxParam1","max","_temp11","_temp12","_temp13","_temp14","maxParam2","_temp15","_temp16","_temp17","_temp18","minParam","maxParam","x","scaleTime","domain","range","y1","scaleLinear","nice","y2","lineShape1","line","defined","_temp19","y","d_23","lineShape2","_temp20","d_26","y1Ticks","ticks","y2Ticks","xTicks","mousemove","event","selectedData","bisectCenter","_temp21","invert","pointer","clientY","clientX","mouseout","select","current","on","jsx","HighlightArea","t9","xAxis","axis","t10","t11","t12","stroke","t13","Axis","t14","yAxis","title","AxisTitle","fill","substring","t15","t16","t17","t18","t19","t20","t21","t22","t23","t24","t25","t26","t27","t28","t29","d_30","format","t30","t31","d_31","t32","gridLines","t33","t34","t35","t36","cn","t37","t38","t39","t40","_temp22","_temp23","t41","t42","opacity","transition","t43","t44","t45","d_34","i_1","jsxs","motion","checkIfNullOrUndefined","Fragment","initial","cx","cy","whileInView","delay","textAnchor","graphObjectValues","numberFormattingFunction","i","t46","t47","_temp29","_temp30","t48","Symbol","for","pointerEvents","t49","t50","Tooltip","d_28","d_29","i_0","XTicksAndGridLines","pathLength","_temp24","_temp25","_temp26","_temp27","_temp28","mouseOverLine","d_36","layer","d_35","position","el_3","el","el_2","el_1","el_0","d_33","d_32","d_27","d_24","d_21","d_18","d_17","d_20","d_19","d_14","d_13","d_16","d_15","d_8","d_7","d_10","d_9","d_12","d_11","d_2","d_1","d_4","d_3","d_6","d_5","DualAxisLineChart","graphTitle","sources","graphDescription","footNote","padding","backgroundColor","relativeHeight","graphID","graphDownload","dataDownload","language","showColorScale","minHeight","colorLegendTitle","theme","ariaLabel","Colors","light","categoricalColors","colors","svgWidth","setSvgWidth","svgHeight","setSvgHeight","graphDiv","graphParentDiv","resizeObserver","ResizeObserver","entries","target","clientWidth","clientHeight","observe","disconnect","graphContainer","description","GraphHeader","colorLegend","ColorLegend","EmptyState","getNoOfTicks","GraphArea","footnote","source","GraphFooter","GraphContainer"],"mappings":"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"}
1
+ {"version":3,"file":"DualAxisLineChart.cjs","sources":["../src/Components/Graphs/LineCharts/DualAxisLineChart/Graph.tsx","../src/Components/Graphs/LineCharts/DualAxisLineChart/index.tsx"],"sourcesContent":["import { useEffect, useRef, useState } from 'react';\r\nimport {\r\n line,\r\n curveMonotoneX,\r\n curveLinear,\r\n curveStep,\r\n curveStepAfter,\r\n curveStepBefore,\r\n} from 'd3-shape';\r\nimport { scaleLinear, scaleTime } from 'd3-scale';\r\nimport { format } from 'date-fns/format';\r\nimport { parse } from 'date-fns/parse';\r\nimport { bisectCenter } from 'd3-array';\r\nimport { pointer, select } from 'd3-selection';\r\nimport { motion, useInView } from 'motion/react';\r\nimport { cn } from '@undp/design-system-react/cn';\r\nimport orderBy from 'lodash.orderby';\r\n\r\nimport {\r\n AnimateDataType,\r\n ClassNameObject,\r\n CurveTypes,\r\n CustomLayerDataType,\r\n DualAxisLineChartDataType,\r\n HighlightAreaSettingsDataType,\r\n StyleObject,\r\n} from '@/Types';\r\nimport { numberFormattingFunction } from '@/Utils/numberFormattingFunction';\r\nimport { Tooltip } from '@/Components/Elements/Tooltip';\r\nimport { checkIfNullOrUndefined } from '@/Utils/checkIfNullOrUndefined';\r\nimport { XTicksAndGridLines } from '@/Components/Elements/Axes/XTicksAndGridLines';\r\nimport { Axis } from '@/Components/Elements/Axes/Axis';\r\nimport { AxisTitle } from '@/Components/Elements/Axes/AxisTitle';\r\nimport { HighlightArea } from '@/Components/Elements/HighlightArea';\r\n\r\ninterface Props {\r\n data: DualAxisLineChartDataType[];\r\n lineColors: [string, string];\r\n labels: [string, string];\r\n width: number;\r\n height: number;\r\n dateFormat: string;\r\n showValues: boolean;\r\n noOfXTicks: number;\r\n rightMargin: number;\r\n leftMargin: number;\r\n topMargin: number;\r\n bottomMargin: number;\r\n sameAxes: boolean;\r\n highlightAreaSettings: HighlightAreaSettingsDataType[];\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n tooltip?: string | ((_d: any) => React.ReactNode);\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onSeriesMouseOver?: (_d: any) => void;\r\n animate: AnimateDataType;\r\n strokeWidth: number;\r\n showDots: boolean;\r\n noOfYTicks: number;\r\n lineSuffixes: [string, string];\r\n linePrefixes: [string, string];\r\n minDate?: string | number;\r\n maxDate?: string | number;\r\n curveType: CurveTypes;\r\n styles?: StyleObject;\r\n classNames?: ClassNameObject;\r\n precision: number;\r\n customLayers: CustomLayerDataType[];\r\n showAxisLabels: boolean;\r\n locale: string;\r\n naLabel: string;\r\n}\r\n\r\ninterface FormattedDataType {\r\n y1: number;\r\n y2: number;\r\n date: Date;\r\n}\r\n\r\nexport function Graph(props: Props) {\r\n const {\r\n data,\r\n width,\r\n height,\r\n lineColors,\r\n labels,\r\n sameAxes,\r\n dateFormat,\r\n showValues,\r\n noOfXTicks,\r\n rightMargin,\r\n leftMargin,\r\n topMargin,\r\n bottomMargin,\r\n tooltip,\r\n highlightAreaSettings,\r\n onSeriesMouseOver,\r\n animate,\r\n strokeWidth,\r\n showDots,\r\n noOfYTicks,\r\n lineSuffixes,\r\n linePrefixes,\r\n minDate,\r\n maxDate,\r\n curveType,\r\n styles,\r\n classNames,\r\n precision,\r\n customLayers,\r\n showAxisLabels,\r\n locale,\r\n naLabel,\r\n } = props;\r\n const svgRef = useRef(null);\r\n const isInView = useInView(svgRef, {\r\n once: animate.once,\r\n amount: animate.amount,\r\n });\r\n const [hasAnimatedOnce, setHasAnimatedOnce] = useState(false);\r\n\r\n useEffect(() => {\r\n if (isInView && !hasAnimatedOnce) {\r\n const timeout = setTimeout(\r\n () => {\r\n setHasAnimatedOnce(true);\r\n },\r\n (animate.duration + 0.5) * 1000,\r\n );\r\n return () => clearTimeout(timeout);\r\n }\r\n }, [isInView, hasAnimatedOnce, animate.duration]);\r\n const curve =\r\n curveType === 'linear'\r\n ? curveLinear\r\n : curveType === 'step'\r\n ? curveStep\r\n : curveType === 'stepAfter'\r\n ? curveStepAfter\r\n : curveType === 'stepBefore'\r\n ? curveStepBefore\r\n : curveMonotoneX;\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const [mouseOverData, setMouseOverData] = useState<any>(undefined);\r\n const [eventX, setEventX] = useState<number | undefined>(undefined);\r\n const [eventY, setEventY] = useState<number | undefined>(undefined);\r\n const margin = {\r\n top: topMargin,\r\n bottom: bottomMargin,\r\n left: leftMargin + 50,\r\n right: rightMargin + 65,\r\n };\r\n const MouseoverRectRef = useRef(null);\r\n const dataFormatted = orderBy(\r\n data.map(d => ({\r\n ...d,\r\n date: parse(`${d.date}`, dateFormat, new Date()),\r\n })),\r\n ['date'],\r\n ['asc'],\r\n );\r\n const highlightAreaSettingsFormatted = highlightAreaSettings.map(d => ({\r\n ...d,\r\n coordinates: [\r\n d.coordinates[0] === null ? null : parse(`${d.coordinates[0]}`, dateFormat, new Date()),\r\n d.coordinates[1] === null ? null : parse(`${d.coordinates[1]}`, dateFormat, new Date()),\r\n ],\r\n }));\r\n const graphWidth = width - margin.left - margin.right;\r\n const graphHeight = height - margin.top - margin.bottom;\r\n const minYear = minDate ? parse(`${minDate}`, dateFormat, new Date()) : dataFormatted[0].date;\r\n const maxYear = maxDate\r\n ? parse(`${maxDate}`, dateFormat, new Date())\r\n : dataFormatted[dataFormatted.length - 1].date;\r\n const minParam1 =\r\n Math.min(...dataFormatted.map(d => d.y1).filter(d => d !== undefined && d !== null)) !==\r\n Infinity\r\n ? Math.min(...dataFormatted.map(d => d.y2).filter(d => d !== undefined && d !== null)) > 0\r\n ? 0\r\n : Math.min(...dataFormatted.map(d => d.y1).filter(d => d !== undefined && d !== null))\r\n : 0;\r\n const minParam2 =\r\n Math.min(...dataFormatted.map(d => d.y2).filter(d => d !== undefined && d !== null)) !==\r\n Infinity\r\n ? Math.min(...dataFormatted.map(d => d.y2).filter(d => d !== undefined && d !== null)) > 0\r\n ? 0\r\n : Math.min(...dataFormatted.map(d => d.y2).filter(d => d !== undefined && d !== null))\r\n : 0;\r\n const maxParam1 =\r\n Math.max(...dataFormatted.map(d => d.y1).filter(d => d !== undefined && d !== null)) !==\r\n Infinity\r\n ? Math.max(...dataFormatted.map(d => d.y1).filter(d => d !== undefined && d !== null))\r\n : 0;\r\n const maxParam2 =\r\n Math.max(...dataFormatted.map(d => d.y2).filter(d => d !== undefined && d !== null)) !==\r\n Infinity\r\n ? Math.max(...dataFormatted.map(d => d.y2).filter(d => d !== undefined && d !== null))\r\n : 0;\r\n\r\n const minParam = minParam1 < minParam2 ? minParam1 : minParam2;\r\n const maxParam = maxParam1 > maxParam2 ? maxParam1 : maxParam2;\r\n const x = scaleTime().domain([minYear, maxYear]).range([0, graphWidth]);\r\n\r\n const y1 = scaleLinear()\r\n .domain([\r\n sameAxes ? minParam : minParam1,\r\n sameAxes ? (maxParam > 0 ? maxParam : 0) : maxParam1 > 0 ? maxParam1 : 0,\r\n ])\r\n .range([graphHeight, 0])\r\n .nice();\r\n const y2 = scaleLinear()\r\n .domain([\r\n sameAxes ? minParam : minParam2,\r\n sameAxes ? (maxParam > 0 ? maxParam : 0) : maxParam2 > 0 ? maxParam2 : 0,\r\n ])\r\n .range([graphHeight, 0])\r\n .nice();\r\n\r\n const lineShape1 = line<FormattedDataType>()\r\n .defined(d => !checkIfNullOrUndefined(d.y1))\r\n .x(d => x(d.date))\r\n .y(d => y1(d.y1))\r\n .curve(curve);\r\n\r\n const lineShape2 = line<FormattedDataType>()\r\n .defined(d => !checkIfNullOrUndefined(d.y2))\r\n .x(d => x(d.date))\r\n .y(d => y2(d.y2))\r\n .curve(curve);\r\n const y1Ticks = y1.ticks(noOfYTicks);\r\n const y2Ticks = y2.ticks(noOfYTicks);\r\n const xTicks = x.ticks(noOfXTicks);\r\n useEffect(() => {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const mousemove = (event: any) => {\r\n const selectedData =\r\n dataFormatted[\r\n bisectCenter(\r\n dataFormatted.map(d => d.date),\r\n x.invert(pointer(event)[0]),\r\n 0,\r\n )\r\n ];\r\n setMouseOverData(selectedData || dataFormatted[dataFormatted.length - 1]);\r\n onSeriesMouseOver?.(selectedData || dataFormatted[dataFormatted.length - 1]);\r\n setEventY(event.clientY);\r\n setEventX(event.clientX);\r\n };\r\n const mouseout = () => {\r\n setMouseOverData(undefined);\r\n setEventX(undefined);\r\n setEventY(undefined);\r\n onSeriesMouseOver?.(undefined);\r\n };\r\n select(MouseoverRectRef.current).on('mousemove', mousemove).on('mouseout', mouseout);\r\n }, [x, dataFormatted, onSeriesMouseOver]);\r\n\r\n return (\r\n <>\r\n <motion.svg\r\n width={`${width}px`}\r\n height={`${height}px`}\r\n viewBox={`0 0 ${width} ${height}`}\r\n direction='ltr'\r\n ref={svgRef}\r\n >\r\n <g transform={`translate(${margin.left},${margin.top})`}>\r\n <HighlightArea\r\n areaSettings={highlightAreaSettingsFormatted}\r\n width={graphWidth}\r\n height={graphHeight}\r\n scale={x}\r\n animate={animate}\r\n isInView={isInView}\r\n />\r\n <g>\r\n {y1Ticks.map((d, i) => (\r\n <g key={i}>\r\n <line\r\n y1={y1(d)}\r\n y2={y1(d)}\r\n x1={-15}\r\n x2={-20}\r\n style={{\r\n stroke: lineColors[0],\r\n strokeWidth: 1,\r\n ...(styles?.yAxis?.gridLines || {}),\r\n }}\r\n className={classNames?.yAxis?.gridLines}\r\n />\r\n <text\r\n x={0 - 25}\r\n y={y1(d)}\r\n dy='0.33em'\r\n className={cn('text-xs', classNames?.yAxis?.labels)}\r\n style={{\r\n textAnchor: 'end',\r\n fill: lineColors[0],\r\n ...(styles?.yAxis?.labels || {}),\r\n }}\r\n >\r\n {numberFormattingFunction(\r\n d,\r\n undefined,\r\n precision,\r\n linePrefixes[0],\r\n lineSuffixes[0],\r\n locale,\r\n )}\r\n </text>\r\n </g>\r\n ))}\r\n <Axis\r\n y1={0}\r\n y2={graphHeight}\r\n x1={-15}\r\n x2={-15}\r\n classNames={{ axis: classNames?.xAxis?.axis }}\r\n styles={{ axis: { stroke: lineColors[0], ...(styles?.xAxis?.axis || {}) } }}\r\n />\r\n\r\n {showAxisLabels ? (\r\n <AxisTitle\r\n x={10 - margin.left}\r\n y={graphHeight / 2}\r\n style={{ fill: lineColors[0], ...(styles?.yAxis?.title || {}) }}\r\n className={classNames?.yAxis?.title}\r\n text={labels[0].length > 100 ? `${labels[0].substring(0, 100)}...` : labels[0]}\r\n rotate90\r\n />\r\n ) : null}\r\n </g>\r\n <g>\r\n {y2Ticks.map((d, i) => (\r\n <g key={i}>\r\n <line\r\n y1={y2(d)}\r\n y2={y2(d)}\r\n x1={graphWidth + 15}\r\n x2={graphWidth + 20}\r\n style={{\r\n stroke: lineColors[1],\r\n strokeWidth: 1,\r\n ...(styles?.yAxis?.gridLines || {}),\r\n }}\r\n className={classNames?.yAxis?.gridLines}\r\n />\r\n <text\r\n x={graphWidth + 25}\r\n y={y2(d)}\r\n dy='0.33em'\r\n dx={-2}\r\n style={{\r\n textAnchor: 'start',\r\n fill: lineColors[1],\r\n ...(styles?.yAxis?.labels || {}),\r\n }}\r\n className={cn('text-xs', classNames?.yAxis?.labels)}\r\n >\r\n {numberFormattingFunction(\r\n d,\r\n undefined,\r\n precision,\r\n linePrefixes[1],\r\n lineSuffixes[1],\r\n locale,\r\n )}\r\n </text>\r\n </g>\r\n ))}\r\n <Axis\r\n y1={0}\r\n y2={graphHeight}\r\n x1={graphWidth + 15}\r\n x2={graphWidth + 15}\r\n classNames={{ axis: classNames?.xAxis?.axis }}\r\n styles={{ axis: { stroke: lineColors[1], ...(styles?.xAxis?.axis || {}) } }}\r\n />\r\n {showAxisLabels ? (\r\n <AxisTitle\r\n x={graphWidth + margin.right - 15}\r\n y={graphHeight / 2}\r\n style={{ fill: lineColors[1], ...(styles?.yAxis?.title || {}) }}\r\n className={classNames?.yAxis?.title}\r\n text={labels[1].length > 100 ? `${labels[1].substring(0, 100)}...` : labels[1]}\r\n rotate90\r\n />\r\n ) : null}\r\n </g>\r\n <g>\r\n <Axis\r\n y1={graphHeight}\r\n y2={graphHeight}\r\n x1={-15}\r\n x2={graphWidth + 15}\r\n classNames={{ axis: classNames?.xAxis?.axis }}\r\n styles={{ axis: styles?.xAxis?.axis }}\r\n />\r\n <XTicksAndGridLines\r\n values={xTicks.map(d => format(d, dateFormat))}\r\n x={xTicks.map(d => x(d))}\r\n y1={0}\r\n y2={graphHeight}\r\n styles={{\r\n gridLines: styles?.xAxis?.gridLines,\r\n labels: styles?.xAxis?.labels,\r\n }}\r\n classNames={{\r\n gridLines: cn('opacity-0', classNames?.xAxis?.gridLines),\r\n labels: cn(\r\n 'fill-primary-gray-700 dark:fill-primary-gray-300 xs:max-[360px]:hidden text-[9px] md:text-[10px] lg:text-xs',\r\n classNames?.xAxis?.labels,\r\n ),\r\n }}\r\n labelType='primary'\r\n showGridLines\r\n precision={precision}\r\n locale={locale}\r\n />\r\n </g>\r\n {customLayers.filter(d => d.position === 'before').map(d => d.layer)}\r\n <g>\r\n <motion.path\r\n style={{\r\n stroke: lineColors[0],\r\n strokeWidth,\r\n fill: 'none',\r\n }}\r\n exit={{ opacity: 0, transition: { duration: animate.duration } }}\r\n variants={{\r\n initial: {\r\n pathLength: 0,\r\n d:\r\n lineShape1(\r\n dataFormatted.filter(\r\n (el): el is FormattedDataType => !checkIfNullOrUndefined(el.y1),\r\n ),\r\n ) || '',\r\n opacity: 1,\r\n },\r\n whileInView: {\r\n pathLength: 1,\r\n d:\r\n lineShape1(\r\n dataFormatted.filter(\r\n (el): el is FormattedDataType => !checkIfNullOrUndefined(el.y1),\r\n ),\r\n ) || '',\r\n opacity: 1,\r\n transition: { duration: animate.duration },\r\n },\r\n }}\r\n initial='initial'\r\n animate={isInView ? 'whileInView' : 'initial'}\r\n />\r\n <motion.path\r\n d={\r\n lineShape2(\r\n dataFormatted.filter(\r\n (el): el is FormattedDataType => !checkIfNullOrUndefined(el.y2),\r\n ),\r\n ) || ''\r\n }\r\n style={{\r\n stroke: lineColors[1],\r\n strokeWidth,\r\n fill: 'none',\r\n }}\r\n exit={{ opacity: 0, transition: { duration: animate.duration } }}\r\n variants={{\r\n initial: {\r\n pathLength: 0,\r\n d:\r\n lineShape2(\r\n dataFormatted.filter(\r\n (el): el is FormattedDataType => !checkIfNullOrUndefined(el.y2),\r\n ),\r\n ) || '',\r\n opacity: 1,\r\n },\r\n whileInView: {\r\n pathLength: 1,\r\n d:\r\n lineShape2(\r\n dataFormatted.filter(\r\n (el): el is FormattedDataType => !checkIfNullOrUndefined(el.y2),\r\n ),\r\n ) || '',\r\n opacity: 1,\r\n transition: { duration: animate.duration },\r\n },\r\n }}\r\n initial='initial'\r\n animate={isInView ? 'whileInView' : 'initial'}\r\n />\r\n {mouseOverData ? (\r\n <line\r\n y1={0}\r\n y2={graphHeight}\r\n x1={x(mouseOverData.date)}\r\n x2={x(mouseOverData.date)}\r\n className={cn(\r\n 'undp-tick-line stroke-primary-gray-700 dark:stroke-primary-gray-100',\r\n classNames?.mouseOverLine,\r\n )}\r\n style={styles?.mouseOverLine}\r\n />\r\n ) : null}\r\n </g>\r\n <g>\r\n {dataFormatted.map((d, i) => (\r\n <motion.g key={i}>\r\n {!checkIfNullOrUndefined(d.y1) ? (\r\n <>\r\n {showDots ? (\r\n <motion.circle\r\n r={\r\n graphWidth / dataFormatted.length < 5\r\n ? 0\r\n : graphWidth / dataFormatted.length < 20\r\n ? 2\r\n : 4\r\n }\r\n exit={{ opacity: 0, transition: { duration: animate.duration } }}\r\n variants={{\r\n initial: {\r\n opacity: 0,\r\n cx: x(d.date),\r\n cy: y1(d.y1 as number),\r\n fill: lineColors[0],\r\n },\r\n whileInView: {\r\n opacity: 1,\r\n fill: lineColors[0],\r\n transition: {\r\n duration: hasAnimatedOnce ? animate.duration : 0.5,\r\n delay: hasAnimatedOnce ? 0 : animate.duration,\r\n },\r\n cx: x(d.date),\r\n cy: y1(d.y1 as number),\r\n },\r\n }}\r\n initial='initial'\r\n animate={isInView ? 'whileInView' : 'initial'}\r\n />\r\n ) : null}\r\n {showValues ? (\r\n <motion.text\r\n dy={\r\n checkIfNullOrUndefined(d.y2)\r\n ? -8\r\n : (d.y2 as number) < (d.y1 as number)\r\n ? -8\r\n : '1em'\r\n }\r\n style={{\r\n textAnchor: 'middle',\r\n ...(styles?.graphObjectValues || {}),\r\n }}\r\n className={cn(\r\n 'graph-value graph-value-line-1 text-xs font-bold',\r\n classNames?.graphObjectValues,\r\n )}\r\n exit={{ opacity: 0, transition: { duration: animate.duration } }}\r\n variants={{\r\n initial: {\r\n opacity: 0,\r\n x: x(d.date),\r\n y: y2(d.y1 as number),\r\n fill: lineColors[0],\r\n },\r\n whileInView: {\r\n opacity: 1,\r\n x: x(d.date),\r\n fill: lineColors[0],\r\n y: y2(d.y1 as number),\r\n transition: {\r\n duration: hasAnimatedOnce ? animate.duration : 0.5,\r\n delay: hasAnimatedOnce ? 0 : animate.duration,\r\n },\r\n },\r\n }}\r\n initial='initial'\r\n animate={isInView ? 'whileInView' : 'initial'}\r\n >\r\n {numberFormattingFunction(\r\n d.y1,\r\n naLabel,\r\n precision,\r\n linePrefixes[0],\r\n lineSuffixes[0],\r\n locale,\r\n )}\r\n </motion.text>\r\n ) : null}\r\n </>\r\n ) : null}\r\n {!checkIfNullOrUndefined(d.y2) ? (\r\n <>\r\n {showDots ? (\r\n <motion.circle\r\n r={\r\n graphWidth / dataFormatted.length < 5\r\n ? 0\r\n : graphWidth / dataFormatted.length < 20\r\n ? 2\r\n : 4\r\n }\r\n exit={{ opacity: 0, transition: { duration: animate.duration } }}\r\n variants={{\r\n initial: {\r\n opacity: 0,\r\n cx: x(d.date),\r\n cy: y2(d.y2 as number),\r\n fill: lineColors[1],\r\n },\r\n whileInView: {\r\n opacity: 1,\r\n transition: {\r\n duration: hasAnimatedOnce ? animate.duration : 0.5,\r\n delay: hasAnimatedOnce ? 0 : animate.duration,\r\n },\r\n fill: lineColors[1],\r\n cx: x(d.date),\r\n cy: y2(d.y2 as number),\r\n },\r\n }}\r\n initial='initial'\r\n animate={isInView ? 'whileInView' : 'initial'}\r\n />\r\n ) : null}\r\n {showValues ? (\r\n <motion.text\r\n dy={\r\n checkIfNullOrUndefined(d.y1)\r\n ? -8\r\n : (d.y1 as number) < (d.y2 as number)\r\n ? -8\r\n : '1em'\r\n }\r\n style={{\r\n textAnchor: 'middle',\r\n ...(styles?.graphObjectValues || {}),\r\n }}\r\n className={cn(\r\n 'graph-value graph-value-line-2 text-xs font-bold',\r\n classNames?.graphObjectValues,\r\n )}\r\n exit={{ opacity: 0, transition: { duration: animate.duration } }}\r\n variants={{\r\n initial: {\r\n opacity: 0,\r\n x: x(d.date),\r\n y: y2(d.y2 as number),\r\n fill: lineColors[1],\r\n },\r\n whileInView: {\r\n opacity: 1,\r\n x: x(d.date),\r\n y: y2(d.y2 as number),\r\n fill: lineColors[1],\r\n transition: {\r\n duration: hasAnimatedOnce ? animate.duration : 0.5,\r\n delay: hasAnimatedOnce ? 0 : animate.duration,\r\n },\r\n },\r\n }}\r\n initial='initial'\r\n animate={isInView ? 'whileInView' : 'initial'}\r\n >\r\n {numberFormattingFunction(\r\n d.y2,\r\n naLabel,\r\n precision,\r\n linePrefixes[1],\r\n lineSuffixes[1],\r\n locale,\r\n )}\r\n </motion.text>\r\n ) : null}\r\n </>\r\n ) : null}\r\n </motion.g>\r\n ))}\r\n </g>\r\n {customLayers.filter(d => d.position === 'after').map(d => d.layer)}\r\n <rect\r\n ref={MouseoverRectRef}\r\n style={{\r\n fill: 'none',\r\n pointerEvents: 'all',\r\n }}\r\n width={graphWidth}\r\n height={graphHeight}\r\n />\r\n </g>\r\n </motion.svg>\r\n {mouseOverData && tooltip && eventX && eventY ? (\r\n <Tooltip\r\n data={mouseOverData}\r\n body={tooltip}\r\n xPos={eventX}\r\n yPos={eventY}\r\n backgroundStyle={styles?.tooltip}\r\n className={classNames?.tooltip}\r\n />\r\n ) : null}\r\n </>\r\n );\r\n}\r\n","import { useState, useRef, useEffect } from 'react';\r\n\r\nimport { Graph } from './Graph';\r\n\r\nimport { GraphFooter } from '@/Components/Elements/GraphFooter';\r\nimport { GraphHeader } from '@/Components/Elements/GraphHeader';\r\nimport { ColorLegend } from '@/Components/Elements/ColorLegend';\r\nimport {\r\n DualAxisLineChartDataType,\r\n Languages,\r\n SourcesDataType,\r\n StyleObject,\r\n ClassNameObject,\r\n HighlightAreaSettingsDataType,\r\n CurveTypes,\r\n CustomLayerDataType,\r\n AnimateDataType,\r\n} from '@/Types';\r\nimport { Colors } from '@/Components/ColorPalette';\r\nimport { EmptyState } from '@/Components/Elements/EmptyState';\r\nimport { GraphArea, GraphContainer } from '@/Components/Elements/GraphContainer';\r\nimport { getNoOfTicks } from '@/Utils/getNoOfTicks';\r\n\r\ninterface Props {\r\n // Data\r\n /** Array of data objects */\r\n data: DualAxisLineChartDataType[];\r\n\r\n // Titles, Labels, and Sources\r\n /** Title of the graph */\r\n graphTitle?: string | React.ReactNode;\r\n /** Description of the graph */\r\n graphDescription?: string | React.ReactNode;\r\n /** Footnote for the graph */\r\n footNote?: string | React.ReactNode;\r\n /** Source data for the graph */\r\n sources?: SourcesDataType[];\r\n /** Accessibility label */\r\n ariaLabel?: string;\r\n\r\n // Colors and Styling\r\n /** Array of colors for the 2 lines */\r\n lineColors?: [string, string];\r\n /** Title for the color legend */\r\n colorLegendTitle?: string;\r\n /** Background color of the graph */\r\n backgroundColor?: string | boolean;\r\n /** Custom styles for the graph. Each object should be a valid React CSS style object. */\r\n styles?: StyleObject;\r\n /** Custom class names */\r\n classNames?: ClassNameObject;\r\n\r\n // Size and Spacing\r\n /** Width of the graph */\r\n width?: number;\r\n /** Height of the graph */\r\n height?: number;\r\n /** Minimum height of the graph */\r\n minHeight?: number;\r\n /** Relative height scaling factor. This overwrites the height props */\r\n relativeHeight?: number;\r\n /** Padding around the graph. Defaults to 0 if no backgroundColor is mentioned else defaults to 1rem */\r\n padding?: string;\r\n /** Left margin of the graph */\r\n leftMargin?: number;\r\n /** Right margin of the graph */\r\n rightMargin?: number;\r\n /** Top margin of the graph */\r\n topMargin?: number;\r\n /** Bottom margin of the graph */\r\n bottomMargin?: number;\r\n\r\n // Values and Ticks\r\n /** Prefix for values of the lines */\r\n linePrefixes?: [string, string];\r\n /** Suffix for values of the lines */\r\n lineSuffixes?: [string, string];\r\n /** Maximum value of the date for the chart */\r\n maxDate?: string | number;\r\n /** Minimum value of the date for the chart */\r\n minDate?: string | number;\r\n /** No. of ticks on the x-axis */\r\n noOfXTicks?: number;\r\n /** No. of ticks on the y-axis */\r\n noOfYTicks?: number;\r\n\r\n // Graph Parameters\r\n /** Toggle visibility of values */\r\n showValues?: boolean;\r\n /** Toggle visibility of dots on the line */\r\n showDots?: boolean;\r\n /** Stroke width of the line */\r\n strokeWidth?: number;\r\n /** Toggle the initial animation of the line. If the type is number then it uses the number as the time in seconds for animation. */\r\n animate?: boolean | AnimateDataType;\r\n /** Enables same axis for the 2 lines */\r\n sameAxes?: boolean;\r\n /** Toggle visibility of color scale. */\r\n showColorScale?: boolean;\r\n /** Toggle visibility of labels of the axis. */\r\n showAxisLabels?: boolean;\r\n /** Labels for the lines */\r\n labels: [string, string];\r\n /** Format of the date in the data object. Available formats can be found [here](https://date-fns.org/docs/format) */\r\n dateFormat?: string;\r\n /** Highlighted area(square) on the chart */\r\n highlightAreaSettings?: HighlightAreaSettingsDataType[];\r\n /** Curve type for the line */\r\n curveType?: CurveTypes;\r\n /** Specifies the number of decimal places to display in the value. */\r\n precision?: number;\r\n /** Locale for number formatting. Must matches what `Intl.NumberFormat` expects. */\r\n locale?: string;\r\n /** Defines how “NA” values should be displayed/labelled in the graph */\r\n naLabel?: string;\r\n /** Optional SVG <g> element or function that renders custom content behind or in front of the graph. */\r\n customLayers?: CustomLayerDataType[];\r\n /** Enable graph download option as png */\r\n graphDownload?: boolean;\r\n /** Enable data download option as a csv */\r\n dataDownload?: boolean;\r\n\r\n // Interactions and Callbacks\r\n /** Tooltip content. If the type is string then this uses the [handlebar](../?path=/docs/misc-handlebars-templates-and-custom-helpers--docs) template to display the data */\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n tooltip?: string | ((_d: any) => React.ReactNode);\r\n /** Callback for mouse over event */\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onSeriesMouseOver?: (_d: any) => void;\r\n\r\n // Configuration and Options\r\n /** Language setting */\r\n language?: Languages;\r\n /** Color theme */\r\n theme?: 'light' | 'dark';\r\n /** Unique ID for the graph */\r\n graphID?: string;\r\n}\r\n\r\nexport function DualAxisLineChart(props: Props) {\r\n const {\r\n data,\r\n graphTitle,\r\n sources,\r\n graphDescription,\r\n height,\r\n width,\r\n footNote,\r\n noOfXTicks,\r\n dateFormat = 'yyyy',\r\n showValues = false,\r\n padding,\r\n lineColors = [\r\n Colors.light.categoricalColors.colors[0],\r\n Colors.light.categoricalColors.colors[1],\r\n ],\r\n sameAxes = false,\r\n backgroundColor = false,\r\n leftMargin = 80,\r\n rightMargin = 80,\r\n topMargin = 20,\r\n bottomMargin = 25,\r\n labels,\r\n lineSuffixes = ['', ''],\r\n linePrefixes = ['', ''],\r\n tooltip,\r\n highlightAreaSettings = [],\r\n relativeHeight,\r\n onSeriesMouseOver,\r\n graphID,\r\n graphDownload = false,\r\n dataDownload = false,\r\n animate = false,\r\n strokeWidth = 2,\r\n showDots = true,\r\n language = 'en',\r\n showColorScale = true,\r\n minHeight = 0,\r\n colorLegendTitle,\r\n theme = 'light',\r\n ariaLabel,\r\n noOfYTicks = 5,\r\n maxDate,\r\n minDate,\r\n curveType = 'curve',\r\n styles,\r\n classNames,\r\n precision = 2,\r\n customLayers = [],\r\n showAxisLabels = true,\r\n locale = 'en',\r\n naLabel = 'NA',\r\n } = props;\r\n\r\n const [svgWidth, setSvgWidth] = useState(0);\r\n const [svgHeight, setSvgHeight] = useState(0);\r\n\r\n const graphDiv = useRef<HTMLDivElement>(null);\r\n const graphParentDiv = useRef<HTMLDivElement>(null);\r\n useEffect(() => {\r\n const resizeObserver = new ResizeObserver(entries => {\r\n setSvgWidth(entries[0].target.clientWidth || 620);\r\n setSvgHeight(entries[0].target.clientHeight || 480);\r\n });\r\n if (graphDiv.current) {\r\n resizeObserver.observe(graphDiv.current);\r\n }\r\n return () => resizeObserver.disconnect();\r\n }, []);\r\n\r\n return (\r\n <GraphContainer\r\n className={classNames?.graphContainer}\r\n style={styles?.graphContainer}\r\n id={graphID}\r\n ref={graphParentDiv}\r\n aria-label={ariaLabel}\r\n backgroundColor={backgroundColor}\r\n theme={theme}\r\n language={language}\r\n minHeight={minHeight}\r\n width={width}\r\n height={height}\r\n relativeHeight={relativeHeight}\r\n padding={padding}\r\n >\r\n {graphTitle || graphDescription || graphDownload || dataDownload ? (\r\n <GraphHeader\r\n styles={{\r\n title: styles?.title,\r\n description: styles?.description,\r\n }}\r\n classNames={{\r\n title: classNames?.title,\r\n description: classNames?.description,\r\n }}\r\n graphTitle={graphTitle}\r\n graphDescription={graphDescription}\r\n width={width}\r\n graphDownload={graphDownload ? graphParentDiv : undefined}\r\n dataDownload={\r\n dataDownload\r\n ? data.map(d => d.data).filter(d => d !== undefined).length > 0\r\n ? data.map(d => d.data).filter(d => d !== undefined)\r\n : data.filter(d => d !== undefined)\r\n : null\r\n }\r\n />\r\n ) : null}\r\n {showColorScale && labels.length > 0 ? (\r\n <ColorLegend\r\n colorDomain={labels}\r\n colorLegendTitle={colorLegendTitle}\r\n colors={lineColors}\r\n showNAColor={false}\r\n className={classNames?.colorLegend}\r\n />\r\n ) : null}\r\n <GraphArea ref={graphDiv}>\r\n {data.length === 0 && <EmptyState />}\r\n {svgWidth && svgHeight && data.length > 0 ? (\r\n <Graph\r\n data={data}\r\n sameAxes={sameAxes}\r\n lineColors={lineColors}\r\n width={svgWidth}\r\n height={svgHeight}\r\n dateFormat={dateFormat}\r\n showValues={showValues}\r\n noOfXTicks={noOfXTicks ?? getNoOfTicks(svgWidth)}\r\n leftMargin={leftMargin}\r\n rightMargin={rightMargin}\r\n topMargin={topMargin}\r\n bottomMargin={bottomMargin}\r\n labels={labels}\r\n highlightAreaSettings={highlightAreaSettings}\r\n tooltip={tooltip}\r\n onSeriesMouseOver={onSeriesMouseOver}\r\n animate={\r\n animate === true\r\n ? { duration: 0.5, once: true, amount: 0.5 }\r\n : animate || { duration: 0, once: true, amount: 0 }\r\n }\r\n strokeWidth={strokeWidth}\r\n showDots={showDots}\r\n noOfYTicks={noOfYTicks}\r\n lineSuffixes={lineSuffixes}\r\n linePrefixes={linePrefixes}\r\n minDate={minDate}\r\n maxDate={maxDate}\r\n curveType={curveType}\r\n styles={styles}\r\n classNames={classNames}\r\n precision={precision}\r\n customLayers={customLayers}\r\n showAxisLabels={showAxisLabels}\r\n locale={locale}\r\n naLabel={naLabel}\r\n />\r\n ) : null}\r\n </GraphArea>\r\n {sources || footNote ? (\r\n <GraphFooter\r\n styles={{ footnote: styles?.footnote, source: styles?.source }}\r\n classNames={{\r\n footnote: classNames?.footnote,\r\n source: classNames?.source,\r\n }}\r\n sources={sources}\r\n footNote={footNote}\r\n width={width}\r\n />\r\n ) : null}\r\n </GraphContainer>\r\n );\r\n}\r\n"],"names":["Graph","props","$","_c","data","width","height","lineColors","labels","sameAxes","dateFormat","showValues","noOfXTicks","rightMargin","leftMargin","topMargin","bottomMargin","tooltip","highlightAreaSettings","onSeriesMouseOver","animate","strokeWidth","showDots","noOfYTicks","lineSuffixes","linePrefixes","minDate","maxDate","curveType","styles","classNames","precision","customLayers","showAxisLabels","locale","naLabel","svgRef","useRef","t0","amount","once","isInView","useInView","hasAnimatedOnce","setHasAnimatedOnce","useState","t1","t2","duration","timeout","setTimeout","clearTimeout","useEffect","curve","curveLinear","curveStep","curveStepAfter","curveStepBefore","curveMonotoneX","mouseOverData","setMouseOverData","undefined","eventX","setEventX","eventY","setEventY","t3","t4","t5","top","bottom","left","right","margin","MouseoverRectRef","t6","d","date","parse","Date","dataFormatted","orderBy","map","t7","t8","d_0","coordinates","highlightAreaSettingsFormatted","graphWidth","graphHeight","minYear","maxYear","length","minParam1","Math","min","_temp","filter","_temp2","Infinity","_temp3","_temp4","_temp5","_temp6","minParam2","_temp7","_temp8","_temp9","_temp0","_temp1","_temp10","maxParam1","max","_temp11","_temp12","_temp13","_temp14","maxParam2","_temp15","_temp16","_temp17","_temp18","minParam","maxParam","x","scaleTime","domain","range","y1","scaleLinear","nice","y2","lineShape1","line","defined","_temp19","y","d_23","lineShape2","_temp20","d_26","y1Ticks","ticks","y2Ticks","xTicks","mousemove","event","selectedData","bisectCenter","_temp21","invert","pointer","clientY","clientX","mouseout","select","current","on","jsx","HighlightArea","t9","xAxis","axis","t10","t11","t12","stroke","t13","Axis","t14","yAxis","title","AxisTitle","fill","substring","t15","t16","t17","t18","t19","t20","t21","t22","t23","t24","t25","t26","t27","t28","t29","d_30","format","t30","t31","d_31","t32","gridLines","t33","t34","t35","t36","cn","t37","t38","t39","t40","_temp22","_temp23","t41","t42","opacity","transition","t43","t44","t45","d_34","i_1","jsxs","motion","checkIfNullOrUndefined","Fragment","initial","cx","cy","whileInView","delay","textAnchor","graphObjectValues","numberFormattingFunction","i","t46","t47","_temp29","_temp30","t48","Symbol","for","pointerEvents","t49","t50","Tooltip","d_28","d_29","i_0","XTicksAndGridLines","pathLength","_temp24","_temp25","_temp26","_temp27","_temp28","mouseOverLine","d_36","layer","d_35","position","el_3","el","el_2","el_1","el_0","d_33","d_32","d_27","d_24","d_21","d_18","d_17","d_20","d_19","d_14","d_13","d_16","d_15","d_8","d_7","d_10","d_9","d_12","d_11","d_2","d_1","d_4","d_3","d_6","d_5","DualAxisLineChart","graphTitle","sources","graphDescription","footNote","padding","backgroundColor","relativeHeight","graphID","graphDownload","dataDownload","language","showColorScale","minHeight","colorLegendTitle","theme","ariaLabel","Colors","light","categoricalColors","colors","svgWidth","setSvgWidth","svgHeight","setSvgHeight","graphDiv","graphParentDiv","resizeObserver","ResizeObserver","entries","target","clientWidth","clientHeight","observe","disconnect","graphContainer","description","GraphHeader","colorLegend","ColorLegend","EmptyState","getNoOfTicks","GraphArea","footnote","source","GraphFooter","GraphContainer"],"mappings":"8jCA8EO,SAAAA,GAAAC,EAAA,CAAA,MAAAC,EAAAC,EAAAA,uBAAAA,EAAA,GAAA,EACL,CAAAC,KAAAA,EAAAC,MAAAA,EAAAC,OAAAA,EAAAC,WAAAA,EAAAC,OAAAA,EAAAC,SAAAA,EAAAC,WAAAA,EAAAC,WAAAA,GAAAC,WAAAA,GAAAC,YAAAA,GAAAC,WAAAA,GAAAC,UAAAA,EAAAC,aAAAA,GAAAC,QAAAA,GAAAC,sBAAAA,GAAAC,kBAAAA,GAAAC,QAAAA,EAAAC,YAAAA,EAAAC,SAAAA,EAAAC,WAAAA,GAAAC,aAAAA,EAAAC,aAAAA,EAAAC,QAAAA,GAAAC,QAAAA,GAAAC,UAAAA,EAAAC,OAAAA,EAAAC,WAAAA,EAAAC,UAAAA,GAAAC,aAAAA,EAAAC,eAAAA,EAAAC,OAAAA,GAAAC,QAAAA,EAAAA,EAiCIlC,EACJmC,GAAeC,EAAAA,OAAO,IAAI,EAAE,IAAAC,GAAApC,EAAA,CAAA,IAAAkB,EAAAmB,QAAArC,EAAA,CAAA,IAAAkB,EAAAoB,MACOF,GAAA,CAAAE,KAC3BpB,EAAOoB,KAAKD,OACVnB,EAAOmB,MAAAA,EAChBrC,EAAA,CAAA,EAAAkB,EAAAmB,OAAArC,EAAA,CAAA,EAAAkB,EAAAoB,KAAAtC,KAAAoC,IAAAA,GAAApC,EAAA,CAAA,EAHD,MAAAuC,EAAiBC,GAAAA,UAAUN,GAAQE,EAGlC,EACD,CAAAK,EAAAC,EAAA,EAA8CC,EAAAA,SAAS,EAAK,EAAE,IAAAC,GAAAC,GAAA7C,EAAA,CAAA,IAAAkB,EAAA4B,UAAA9C,EAAA,CAAA,IAAAyC,GAAAzC,EAAA,CAAA,IAAAuC,GAEpDK,GAAAA,IAAA,CACR,GAAIL,GAAA,CAAaE,EAAe,CAC9B,MAAAM,EAAgBC,WACd,IAAA,CACEN,GAAmB,EAAI,CAAC,GAEzBxB,EAAO4B,SAAY,IAAO,GAC7B,EAAE,MACK,IAAMG,aAAaF,CAAO,CAAC,CACnC,EACAF,GAAA,CAACN,EAAUE,EAAiBvB,EAAO4B,QAAS,EAAC9C,EAAA,CAAA,EAAAkB,EAAA4B,SAAA9C,KAAAyC,EAAAzC,KAAAuC,EAAAvC,KAAA4C,GAAA5C,KAAA6C,KAAAD,GAAA5C,EAAA,CAAA,EAAA6C,GAAA7C,EAAA,CAAA,GAVhDkD,EAAAA,UAAUN,GAUPC,EAA6C,EAChD,MAAAM,GACEzB,IAAc,SAAd0B,GAAAA,YAEI1B,IAAc,OAAd2B,GAAAA,UAEE3B,IAAc,YAAd4B,GAAAA,UAEE5B,IAAc,aAAd6B,GAAAA,WAAAC,GAAAA,UAIV,CAAAC,EAAAC,CAAA,EAA0Cf,EAAAA,SAAcgB,MAAS,EACjE,CAAAC,EAAAC,EAAA,EAA4BlB,EAAAA,SAA6BgB,MAAS,EAClE,CAAAG,EAAAC,EAAA,EAA4BpB,EAAAA,SAA6BgB,MAAS,EAI1DK,GAAApD,GAAa,GACZqD,GAAAtD,GAAc,GAAE,IAAAuD,GAAAlE,EAAA,CAAA,IAAAc,IAAAd,EAAA,CAAA,IAAAgE,IAAAhE,EAAA,EAAA,IAAAiE,IAAAjE,QAAAa,GAJVqD,GAAA,CAAAC,IACRtD,EAASuD,OACNtD,GAAYuD,KACdL,GAAeM,MACdL,EAAAA,EACRjE,KAAAc,GAAAd,KAAAgE,GAAAhE,MAAAiE,GAAAjE,MAAAa,EAAAb,MAAAkE,IAAAA,GAAAlE,EAAA,EAAA,EALD,MAAAuE,EAAeL,GAMfM,EAAyBrC,EAAAA,OAAO,IAAI,EAAE,IAAAsC,EAAAzE,QAAAQ,GAE3BiE,EAAAC,IAAM,CAAA,GACVA,EAACC,KACEC,GAAAA,MAAM,GAAGF,EAACC,IAAK,GAAInE,EAAY,IAAIqE,IAAM,CAAA,GAC/C7E,MAAAQ,EAAAR,MAAAyE,GAAAA,EAAAzE,EAAA,EAAA,EAJJ,MAAA8E,EAAsBC,WACpB7E,EAAI8E,IAAKP,CAGP,EACF,CAAC,MAAM,EACP,CAAC,KAAK,CACR,EAAE,IAAAQ,GAAA,GAAAjF,EAAA,EAAA,IAAAQ,GAAAR,QAAAgB,GAAA,CAAA,IAAAkE,EAAAlF,QAAAQ,GAC+D0E,EAAAC,IAAM,CAAA,GAClET,EAACU,YACS,CACXV,EAACU,iBAAoB,KAArB,KAAmCR,GAAAA,MAAM,GAAGF,EAACU,YAAY,CAAA,CAAG,GAAI5E,EAAY,IAAIqE,IAAM,EACtFH,EAACU,YAAY,CAAA,IAAQ,KAArB,KAAmCR,SAAM,GAAGF,EAACU,YAAY,CAAA,CAAG,GAAI5E,EAAY,IAAIqE,IAAM,CAAC,CAAA,GAEzF7E,MAAAQ,EAAAR,MAAAkF,GAAAA,EAAAlF,EAAA,EAAA,EANqCiF,GAAAjE,GAAqBgE,IAAKE,CAM/D,EAAClF,MAAAQ,EAAAR,MAAAgB,GAAAhB,MAAAiF,EAAA,MAAAA,GAAAjF,EAAA,EAAA,EANH,MAAAqF,GAAuCJ,GAOvCK,EAAmBnF,EAAQoE,EAAMF,KAAQE,EAAMD,MAC/CiB,EAAoBnF,EAASmE,EAAMJ,IAAOI,EAAMH,OAChDoB,GAAgBhE,GAAUoD,SAAM,GAAGpD,EAAO,GAAIhB,EAAY,IAAIqE,IAA8B,EAApBC,EAAa,CAAA,EAAGH,KACxFc,GAAgBhE,GACZmD,GAAAA,MAAM,GAAGnD,EAAO,GAAIjB,EAAY,IAAIqE,IACO,EAA3CC,EAAcA,EAAaY,OAAU,CAAC,EAACf,KAC3CgB,GACEC,KAAIC,IAAI,GAAIf,EAAaE,IAAKc,EAAS,EAACC,OAAQC,EAAkC,CAAC,IACnFC,IACIL,KAAIC,IAAI,GAAIf,EAAaE,IAAKkB,EAAS,EAACH,OAAQI,EAAkC,CAAC,EAAI,EAAvF,EAEEP,KAAIC,IAAI,GAAIf,EAAaE,IAAKoB,EAAS,EAACL,OAAQM,EAAkC,CAAC,EAJzF,EAMFC,GACEV,KAAIC,IAAI,GAAIf,EAAaE,IAAKuB,EAAS,EAACR,OAAQS,EAAkC,CAAC,IACnFP,IACIL,KAAIC,IAAI,GAAIf,EAAaE,IAAKyB,EAAS,EAACV,OAAQW,EAAkC,CAAC,EAAI,EAAvF,EAEEd,KAAIC,IAAI,GAAIf,EAAaE,IAAK2B,EAAS,EAACZ,OAAQa,EAAkC,CAAC,EAJzF,EAMFC,GACEjB,KAAIkB,OAAQhC,EAAaE,IAAK+B,EAAS,EAAChB,OAAQiB,EAAkC,CAAC,IACnFf,IACIL,KAAIkB,IAAI,GAAIhC,EAAaE,IAAKiC,EAAS,EAAClB,OAAQmB,EAAkC,CAClF,EAHJ,EAIFC,EACEvB,KAAIkB,OAAQhC,EAAaE,IAAKoC,EAAS,EAACrB,OAAQsB,EAAkC,CAAC,IACnFpB,IACIL,KAAIkB,IAAI,GAAIhC,EAAaE,IAAKsC,EAAS,EAACvB,OAAQwB,EAAkC,CAClF,EAHJ,EAKFC,GAAiB7B,GAAYW,GAAZX,GAAAW,GACjBmB,EAAiBZ,GAAYM,EAAZN,GAAAM,EACjBO,EAAUC,GAAAA,OAAWC,OAAQ,CAACpC,GAASC,EAAO,CAAC,EAACoC,MAAO,CAAC,EAAGvC,CAAU,CAAC,EAEtEwC,EAAWC,GAAAA,SAAaH,OACd,CACNrH,EAAAiH,GAAA7B,GACApF,EAAYkH,EAAW,EAAXA,EAAA,EAA+BZ,GAAY,EAAZA,GAAA,CAA6B,CACzE,EAACgB,MACK,CAACtC,EAAa,CAAC,CAAC,EAACyC,KAAAA,EAE1BC,EAAWF,GAAAA,SAAaH,OACd,CACNrH,EAAAiH,GAAAlB,GACA/F,EAAYkH,EAAW,EAAXA,EAAA,EAA+BN,EAAY,EAAZA,EAAA,CAA6B,CACzE,EAACU,MACK,CAACtC,EAAa,CAAC,CAAC,EAACyC,KAAAA,EAG1BE,GAAmBC,UAAyBC,QACjCC,EAAkC,EAACX,KACpCA,EAAEhD,EAACC,IAAK,CAAC,EAAC2D,EACfC,GAAKT,EAAGpD,EAACoD,EAAG,CAAC,EAAC3E,MACVA,EAAK,EAEdqF,GAAmBL,UAAyBC,QACjCK,EAAkC,EAACf,KACpCA,EAAEhD,EAACC,IAAK,CAAC,EAAC2D,EACfI,GAAKT,EAAGvD,EAACuD,EAAG,CAAC,EAAC9E,MACVA,EAAK,EACdwF,GAAgBb,EAAEc,MAAOvH,EAAU,EACnCwH,GAAgBZ,EAAEW,MAAOvH,EAAU,EACnCyH,GAAepB,EAACkB,MAAOlI,EAAU,EACjCwC,EAAAA,UAAU,IAAA,CAER,MAAA6F,EAAkBC,IAAA,CAChB,MAAAC,GACEnE,EACEoE,GAAAA,aACEpE,EAAaE,IAAKmE,EAAW,EAC7BzB,EAAC0B,OAAQC,GAAAA,QAAQL,EAAK,EAAC,CAAA,CAAG,EAC1B,CACF,CAAC,EAELtF,EAAiBuF,IAAgBnE,EAAcA,EAAaY,OAAU,CAAC,CAAC,EACxEzE,KAAoBgI,IAAgBnE,EAAcA,EAAaY,OAAU,CAAC,CAAC,EAC3E3B,GAAUiF,GAAKM,OAAQ,EACvBzF,GAAUmF,GAAKO,OAAQ,CAAC,EAE1BC,EAAiBA,IAAA,CACf9F,EAAiBC,MAAS,EAC1BE,GAAUF,MAAS,EACnBI,GAAUJ,MAAS,EACnB1C,KAAoB0C,MAAS,CAAC,EAEhC8F,UAAOjF,EAAgBkF,OAAQ,EAACC,GAAI,YAAaZ,CAAS,EAACY,GAAI,WAAYH,CAAQ,CAAC,EACnF,CAAC9B,EAAG5C,EAAe7D,EAAiB,CAAC,EAAC,IAAAiE,GAAAlF,QAAAkB,GAAAlB,EAAA,EAAA,IAAAuF,GAAAvF,EAAA,EAAA,IAAAsF,GAAAtF,EAAA,EAAA,IAAAqF,IAAArF,QAAAuC,GAAAvC,EAAA,EAAA,IAAA0H,GAYjCxC,GAAA0E,EAAAA,kBAAAA,IAACC,GAAAA,cAAA,CACexE,aAAAA,GACPC,MAAAA,EACCC,OAAAA,EACDmC,MAAAA,EACExG,QAAAA,EACCqB,SAAAA,CAAAA,CAAQ,EAClBvC,MAAAkB,EAAAlB,MAAAuF,EAAAvF,MAAAsF,EAAAtF,MAAAqF,GAAArF,MAAAuC,EAAAvC,MAAA0H,EAAA1H,MAAAkF,IAAAA,GAAAlF,EAAA,EAAA,EA2CsB,MAAA8J,GAAAlI,GAAUmI,OAAaC,KAAA,IAAAC,EAAAjK,QAAA8J,IAA/BG,EAAA,CAAAD,KAAQF,EAAAA,EAAyB9J,MAAA8J,GAAA9J,MAAAiK,GAAAA,EAAAjK,EAAA,EAAA,EAAA,IAAAkK,EAAAlK,EAAA,EAAA,IAAA2B,GAAAoI,OAAAC,MACAE,EAAAvI,GAAMoI,OAAaC,MAAnB,CAAA,EAAyBhK,EAAA,EAAA,EAAA2B,GAAAoI,OAAAC,KAAAhK,MAAAkK,GAAAA,EAAAlK,EAAA,EAAA,EAAA,IAAAmK,EAAAnK,EAAA,EAAA,IAAAK,EAAA,CAAA,GAAAL,QAAAkK,GAA9DC,EAAA,CAAAH,KAAQ,CAAAI,OAAU/J,EAAU,CAAA,EAAG,GAAM6J,CAAAA,CAA2B,EAAGlK,MAAAK,EAAA,CAAA,EAAAL,MAAAkK,EAAAlK,MAAAmK,GAAAA,EAAAnK,EAAA,EAAA,EAAA,IAAAqK,GAAArK,EAAA,EAAA,IAAAuF,GAAAvF,QAAAiK,GAAAjK,EAAA,EAAA,IAAAmK,GAN7EE,GAAAT,EAAAA,kBAAAA,IAACU,GAAAA,KAAA,CACK,GAAA,EACA/E,GAAAA,EACA,GAAA,IACA,GAAA,IACQ,WAAA0E,EACJ,OAAAE,EAAmE,EAC3EnK,MAAAuF,EAAAvF,MAAAiK,EAAAjK,MAAAmK,EAAAnK,MAAAqK,IAAAA,GAAArK,EAAA,EAAA,EAAA,IAAAuK,GAAAvK,EAAA,EAAA,IAAA4B,GAAA4I,OAAAC,OAAAzK,EAAA,EAAA,IAAAuF,GAAAvF,EAAA,EAAA,IAAAM,GAAAN,EAAA,EAAA,IAAAK,EAAA,CAAA,GAAAL,EAAA,EAAA,IAAAuE,EAAAF,MAAArE,EAAA,EAAA,IAAA+B,GAAA/B,EAAA,EAAA,IAAA2B,GAAA6I,OAAAC,OAEDF,GAAAxI,EACC6H,EAAAA,kBAAAA,IAACc,GAAAA,UAAA,CACI,EAAA,GAAKnG,EAAMF,KACX,EAAAkB,EAAc,EACV,MAAA,CAAAoF,KAAQtK,EAAU,CAAA,EAAG,GAAMsB,GAAM6I,OAAcC,OAApB,CAAA,CAAyB,EAChD,UAAA7I,GAAU4I,OAAcC,MAC7B,KAAAnK,KAASoF,OAAU,IAAnB,GAA4BpF,EAAM,CAAA,EAAGsK,UAAW,EAAG,GAAG,CAAC,MAAQtK,EAAM,CAAA,EAC3E,YAAQ,EAPX,KASON,EAAA,EAAA,EAAA4B,GAAA4I,OAAAC,MAAAzK,MAAAuF,EAAAvF,MAAAM,EAAAN,MAAAK,EAAA,CAAA,EAAAL,EAAA,EAAA,EAAAuE,EAAAF,KAAArE,MAAA+B,EAAA/B,EAAA,EAAA,EAAA2B,GAAA6I,OAAAC,MAAAzK,MAAAuK,IAAAA,GAAAvK,EAAA,EAAA,EA2CF,MAAA6K,GAAAvF,EAAa,GACbwF,EAAAxF,EAAa,GACGyF,GAAAnJ,GAAUmI,OAAaC,KAAA,IAAAgB,EAAAhL,QAAA+K,IAA/BC,EAAA,CAAAhB,KAAQe,EAAAA,EAAyB/K,MAAA+K,GAAA/K,MAAAgL,GAAAA,EAAAhL,EAAA,EAAA,EAAA,IAAAiL,GAAAjL,EAAA,EAAA,IAAA2B,GAAAoI,OAAAC,MACAiB,GAAAtJ,GAAMoI,OAAaC,MAAnB,CAAA,EAAyBhK,EAAA,EAAA,EAAA2B,GAAAoI,OAAAC,KAAAhK,MAAAiL,IAAAA,GAAAjL,EAAA,EAAA,EAAA,IAAAkL,EAAAlL,EAAA,EAAA,IAAAK,EAAA,CAAA,GAAAL,QAAAiL,IAA9DC,EAAA,CAAAlB,KAAQ,CAAAI,OAAU/J,EAAU,CAAA,EAAG,GAAM4K,EAAAA,CAA2B,EAAGjL,MAAAK,EAAA,CAAA,EAAAL,MAAAiL,GAAAjL,MAAAkL,GAAAA,EAAAlL,EAAA,EAAA,EAAA,IAAAmL,GAAAnL,EAAA,EAAA,IAAAuF,GAAAvF,EAAA,EAAA,IAAA6K,IAAA7K,EAAA,EAAA,IAAA8K,GAAA9K,EAAA,EAAA,IAAAgL,GAAAhL,QAAAkL,GAN7EC,GAAAvB,EAAAA,kBAAAA,IAACU,GAAAA,KAAA,CACK,GAAA,EACA/E,KACA,GAAAsF,GACA,GAAAC,EACQ,WAAAE,EACJ,OAAAE,EAAmE,EAC3ElL,MAAAuF,EAAAvF,MAAA6K,GAAA7K,MAAA8K,EAAA9K,MAAAgL,EAAAhL,MAAAkL,EAAAlL,MAAAmL,IAAAA,GAAAnL,EAAA,EAAA,EAAA,IAAAoL,EAAApL,EAAA,EAAA,IAAA4B,GAAA4I,OAAAC,OAAAzK,EAAA,EAAA,IAAAuF,GAAAvF,EAAA,EAAA,IAAAsF,GAAAtF,QAAAM,GAAAN,EAAA,EAAA,IAAAK,EAAA,CAAA,GAAAL,QAAAuE,EAAAD,OAAAtE,EAAA,EAAA,IAAA+B,GAAA/B,EAAA,EAAA,IAAA2B,GAAA6I,OAAAC,OACDW,EAAArJ,EACC6H,EAAAA,kBAAAA,IAACc,GAAAA,UAAA,CACI,EAAApF,EAAaf,EAAMD,MAAS,GAC5B,EAAAiB,EAAc,EACV,MAAA,CAAAoF,KAAQtK,EAAU,CAAA,EAAG,GAAMsB,GAAM6I,OAAcC,OAApB,CAAA,CAAyB,EAChD,UAAA7I,GAAU4I,OAAcC,MAC7B,KAAAnK,KAASoF,OAAU,IAAnB,GAA4BpF,EAAM,CAAA,EAAGsK,UAAW,EAAG,GAAG,CAAC,MAAQtK,EAAM,CAAA,EAC3E,YAAQ,EAPX,KASON,EAAA,EAAA,EAAA4B,GAAA4I,OAAAC,MAAAzK,MAAAuF,EAAAvF,MAAAsF,EAAAtF,MAAAM,EAAAN,MAAAK,EAAA,CAAA,EAAAL,EAAA,EAAA,EAAAuE,EAAAD,MAAAtE,MAAA+B,EAAA/B,EAAA,EAAA,EAAA2B,GAAA6I,OAAAC,MAAAzK,MAAAoL,GAAAA,EAAApL,EAAA,EAAA,EAOF,MAAAqL,GAAA/F,EAAa,GACGgG,GAAA1J,GAAUmI,OAAaC,KAAA,IAAAuB,EAAAvL,QAAAsL,IAA/BC,EAAA,CAAAvB,KAAQsB,EAAAA,EAAyBtL,MAAAsL,GAAAtL,MAAAuL,GAAAA,EAAAvL,EAAA,EAAA,EAC7B,MAAAwL,EAAA7J,GAAMoI,OAAaC,KAAA,IAAAyB,EAAAzL,QAAAwL,GAA3BC,EAAA,CAAAzB,KAAQwB,CAAAA,EAAqBxL,MAAAwL,EAAAxL,MAAAyL,GAAAA,EAAAzL,EAAA,EAAA,EAAA,IAAA0L,EAAA1L,EAAA,EAAA,IAAAuF,GAAAvF,EAAA,EAAA,IAAAqL,IAAArL,EAAA,EAAA,IAAAuL,GAAAvL,QAAAyL,GANvCC,EAAA9B,EAAAA,kBAAAA,IAACU,GAAAA,KAAA,CACK/E,GAAAA,EACAA,GAAAA,EACA,GAAA,IACA,GAAA8F,GACQ,WAAAE,EACJ,OAAAE,EAA6B,EACrCzL,MAAAuF,EAAAvF,MAAAqL,GAAArL,MAAAuL,EAAAvL,MAAAyL,EAAAzL,MAAA0L,GAAAA,EAAA1L,EAAA,EAAA,EAAA,IAAA2L,EAAA3L,QAAAQ,GAEmBmL,EAAAC,GAAKC,UAAOnH,EAAGlE,CAAU,EAACR,MAAAQ,EAAAR,MAAA2L,GAAAA,EAAA3L,EAAA,EAAA,EAArC,MAAA8L,GAAAhD,GAAM9D,IAAK2G,CAA0B,EAC1CI,GAAAjD,GAAM9D,IAAKgH,GAAKtE,EAAEhD,CAAC,CAAC,EAIVuH,GAAAtK,GAAMoI,OAAkBmC,UAC3BC,GAAAxK,GAAMoI,OAAezJ,OAAA,IAAA8L,GAAApM,EAAA,EAAA,IAAAiM,IAAAjM,QAAAmM,IAFvBC,GAAA,CAAAF,UACKD,GAAwB3L,OAC3B6L,EAAAA,EACTnM,MAAAiM,GAAAjM,MAAAmM,GAAAnM,MAAAoM,IAAAA,GAAApM,EAAA,EAAA,EAE4B,MAAAqM,GAAAzK,GAAUmI,OAAkBmC,UAAA,IAAAI,GAAAtM,QAAAqM,IAA5CC,GAAAC,EAAAA,GAAG,YAAaF,EAA4B,EAACrM,MAAAqM,GAAArM,MAAAsM,IAAAA,GAAAtM,EAAA,EAAA,EAGtD,MAAAwM,GAAA5K,GAAUmI,OAAezJ,OAAA,IAAAmM,GAAAzM,QAAAwM,IAFnBC,GAAAF,EAAAA,GACN,8GACAC,EACF,EAACxM,MAAAwM,GAAAxM,MAAAyM,IAAAA,GAAAzM,EAAA,EAAA,EAAA,IAAA0M,GAAA1M,EAAA,EAAA,IAAAsM,IAAAtM,QAAAyM,IALSC,GAAA,CAAAR,UACCI,GAA6ChM,OAChDmM,EAAAA,EAITzM,MAAAsM,GAAAtM,MAAAyM,GAAAzM,MAAA0M,IAAAA,GAAA1M,EAAA,EAAA,EAAA,IAAA2M,GAAA3M,QAAA8B,GAOJ6K,GAAA7K,EAAYiE,OAAQ6G,EAA4B,EAAC5H,IAAK6H,EAAY,EAAC7M,MAAA8B,EAAA9B,MAAA2M,IAAAA,GAAA3M,EAAA,EAAA,EAAA,IAAA8M,GAAA9M,EAAA,EAAA,IAAAK,EAAA,CAAA,GAAAL,QAAAmB,GAGzD2L,GAAA,CAAA1C,OACG/J,EAAU,CAAA,EAAGc,YAAAA,EAAAwJ,KAEf,MAAA,EACP3K,MAAAK,EAAA,CAAA,EAAAL,MAAAmB,EAAAnB,MAAA8M,IAAAA,GAAA9M,EAAA,EAAA,EAAA,IAAA+M,GAAA/M,EAAA,EAAA,IAAAkB,EAAA4B,UACKiK,GAAA,CAAAC,QAAW,EAACC,WAAc,CAAAnK,SAAY5B,EAAO4B,QAAAA,CAAU,EAAG9C,EAAA,EAAA,EAAAkB,EAAA4B,SAAA9C,MAAA+M,IAAAA,GAAA/M,EAAA,EAAA,EAAA,IAAAkN,GAAAlN,EAAA,EAAA,IAAAK,EAAA,CAAA,GAAAL,QAAAmB,GAmCzD+L,GAAA,CAAA9C,OACG/J,EAAU,CAAA,EAAGc,YAAAA,EAAAwJ,KAEf,MAAA,EACP3K,MAAAK,EAAA,CAAA,EAAAL,MAAAmB,EAAAnB,MAAAkN,IAAAA,GAAAlN,EAAA,EAAA,EAAA,IAAAmN,GAAAnN,EAAA,EAAA,IAAAkB,EAAA4B,UACKqK,GAAA,CAAAH,QAAW,EAACC,WAAc,CAAAnK,SAAY5B,EAAO4B,QAAAA,CAAU,EAAG9C,EAAA,EAAA,EAAAkB,EAAA4B,SAAA9C,OAAAmN,IAAAA,GAAAnN,EAAA,GAAA,EA0CjE,MAAAoN,GAAAtI,EAAaE,IAAK,CAAAqI,EAAAC,IACjBC,EAAAA,kBAAAA,KAAAC,GAAAA,OAAA,EAAA,CACG,SAAA,CAACC,EAAAA,uBAAuB/I,EAACoD,EAAG,EAA5B,KAAAyF,EAAAA,kBAAAA,KAAAG,EAAAA,kBAAAA,SAAA,CAEItM,SAAAA,CAAAA,0BACCoM,UAAA,OAAA,CAEI,EAAAlI,EAAaR,EAAaY,OAAU,EAApC,EAEIJ,EAAaR,EAAaY,OAAU,GAApC,EAAA,EAIA,KAAA,CAAAsH,QAAW,EAACC,WAAc,CAAAnK,SAAY5B,EAAO4B,QAAAA,CAAU,EACnD,SAAA,CAAA6K,QACC,CAAAX,QACE,EAACY,GACNlG,EAAEhD,EAACC,IAAK,EAACkJ,GACT/F,EAAGpD,EAACoD,EAAa,EAAC6C,KAChBtK,EAAU,CAAA,CAAA,EACjByN,YACY,CAAAd,QACF,EAACrC,KACJtK,EAAU,CAAA,EAAG4M,WACP,CAAAnK,SACAL,EAAkBvB,EAAO4B,SAAzB,GAAwCiL,MAC3CtL,EAAA,EAAsBvB,EAAO4B,QAAAA,EACrC8K,GACGlG,EAAEhD,EAACC,IAAK,EAACkJ,GACT/F,EAAGpD,EAACoD,EAAa,CAAA,CACvB,EAEM,QAAA,UACC,QAAAvF,EAAA,cAAA,UAAoC,EA7BhD,KAgCA9B,GACCmJ,EAAAA,kBAAAA,IAAA4D,UAAA,KAAA,CAEI,GAAAC,EAAAA,uBAAuB/I,EAACuD,EAId,GAFLvD,EAACuD,GAAkBvD,EAACoD,GAFzB,GAEI,MAIC,MAAA,CAAAkG,WACO,SAAQ,GAChBrM,GAAMsM,mBAAN,CAAA,CAA8B,EAEzB,UAAA1B,EAAAA,GACT,mDACA3K,GAAUqM,iBACZ,EACM,KAAA,CAAAjB,QAAW,EAACC,WAAc,CAAAnK,SAAY5B,EAAO4B,QAAAA,CAAU,EACnD,SAAA,CAAA6K,QACC,CAAAX,QACE,EAACtF,EACPA,EAAEhD,EAACC,IAAK,EAAC2D,EACTL,EAAGvD,EAACoD,EAAa,EAAC6C,KACftK,EAAU,CAAA,CAAA,EACjByN,YACY,CAAAd,QACF,EAACtF,EACPA,EAAEhD,EAACC,IAAK,EAACgG,KACNtK,EAAU,CAAA,EAAGiI,EAChBL,EAAGvD,EAACoD,EAAa,EAACmF,WACT,CAAAnK,SACAL,EAAkBvB,EAAO4B,SAAzB,GAAwCiL,MAC3CtL,EAAA,EAAsBvB,EAAO4B,QAAAA,CACtC,CACF,EAEM,QAAA,UACC,QAAAP,EAAA,cAAA,UAER2L,qCACCxJ,EAACoD,GACD7F,GACAJ,GACAN,KACAD,EAAY,CAAA,EACZU,EACF,EACF,EA/CD,IAAA,CAAA,CAgDO,EAGVyL,EAAAA,uBAAuB/I,EAACuD,EAAG,EAA5B,KAAAsF,EAAAA,kBAAAA,KAAAG,EAAAA,kBAAAA,SAAA,CAEItM,SAAAA,CAAAA,0BACCoM,UAAA,OAAA,CAEI,EAAAlI,EAAaR,EAAaY,OAAU,EAApC,EAEIJ,EAAaR,EAAaY,OAAU,GAApC,EAAA,EAIA,KAAA,CAAAsH,QAAW,EAACC,WAAc,CAAAnK,SAAY5B,EAAO4B,QAAAA,CAAU,EACnD,SAAA,CAAA6K,QACC,CAAAX,QACE,EAACY,GACNlG,EAAEhD,EAACC,IAAK,EAACkJ,GACT5F,EAAGvD,EAACuD,EAAa,EAAC0C,KAChBtK,EAAU,CAAA,CAAA,EACjByN,YACY,CAAAd,QACF,EAACC,WACE,CAAAnK,SACAL,EAAkBvB,EAAO4B,SAAzB,GAAwCiL,MAC3CtL,EAAA,EAAsBvB,EAAO4B,QAAAA,EACrC6H,KACKtK,EAAU,CAAA,EAAGuN,GACflG,EAAEhD,EAACC,IAAK,EAACkJ,GACT5F,EAAGvD,EAACuD,EAAa,CAAA,CACvB,EAEM,QAAA,UACC,QAAA1F,EAAA,cAAA,UAAoC,EA7BhD,KAgCA9B,GACCmJ,EAAAA,kBAAAA,IAAA4D,UAAA,KAAA,CAEI,GAAAC,EAAAA,uBAAuB/I,EAACoD,EAId,GAFLpD,EAACoD,GAAkBpD,EAACuD,GAFzB,GAEI,MAIC,MAAA,CAAA+F,WACO,SAAQ,GAChBrM,GAAMsM,mBAAN,CAAA,CAA8B,EAEzB,UAAA1B,EAAAA,GACT,mDACA3K,GAAUqM,iBACZ,EACM,KAAA,CAAAjB,QAAW,EAACC,WAAc,CAAAnK,SAAY5B,EAAO4B,QAAAA,CAAU,EACnD,SAAA,CAAA6K,QACC,CAAAX,QACE,EAACtF,EACPA,EAAEhD,EAACC,IAAK,EAAC2D,EACTL,EAAGvD,EAACuD,EAAa,EAAC0C,KACftK,EAAU,CAAA,CAAA,EACjByN,YACY,CAAAd,QACF,EAACtF,EACPA,EAAEhD,EAACC,IAAK,EAAC2D,EACTL,EAAGvD,EAACuD,EAAa,EAAC0C,KACftK,EAAU,CAAA,EAAG4M,WACP,CAAAnK,SACAL,EAAkBvB,EAAO4B,SAAzB,GAAwCiL,MAC3CtL,EAAA,EAAsBvB,EAAO4B,QAAAA,CACtC,CACF,EAEM,QAAA,UACC,QAAAP,EAAA,cAAA,UAER2L,qCACCxJ,EAACuD,GACDhG,GACAJ,GACAN,KACAD,KACAU,EACF,EACF,EA/CD,IAAA,CAAA,CAgDO,CAlFX,CAAA,EAtFYmM,CA2Kf,CACD,EAAC,IAAAC,GAAApO,SAAAoN,IA9KJgB,gCACGhB,SAAAA,EAAAA,CA8KH,EAAIpN,OAAAoN,GAAApN,OAAAoO,IAAAA,GAAApO,EAAA,GAAA,EAAA,IAAAqO,GAAArO,SAAA8B,GACHuM,GAAAvM,EAAYiE,OAAQuI,EAA2B,EAACtJ,IAAKuJ,EAAY,EAACvO,OAAA8B,EAAA9B,OAAAqO,IAAAA,GAAArO,EAAA,GAAA,EAAA,IAAAwO,GAAAxO,EAAA,GAAA,IAAAyO,OAAAC,IAAA,2BAAA,GAG1DF,GAAA,CAAA7D,KACC,OAAMgE,cACG,KAAA,EAChB3O,OAAAwO,IAAAA,GAAAxO,EAAA,GAAA,EAAA,IAAA4O,GAAA5O,EAAA,GAAA,IAAAwE,GAAAxE,SAAAuF,GAAAvF,EAAA,GAAA,IAAAsF,GALHsJ,GAAAhF,EAAAA,kBAAAA,IAAA,QACOpF,MACE,MAAAgK,GAIAlJ,MAAAA,EACCC,OAAAA,CAAAA,CAAW,EACnBvF,OAAAwE,EAAAxE,OAAAuF,EAAAvF,OAAAsF,EAAAtF,OAAA4O,IAAAA,GAAA5O,EAAA,GAAA,EAAA,IAAA6O,GAAA,OAAA7O,EAAA,GAAA,IAAA4B,GAAAb,SAAAf,EAAA,GAAA,IAAA4D,GAAA5D,EAAA,GAAA,IAAA8D,GAAA9D,EAAA,GAAA,IAAAyD,GAAAzD,EAAA,GAAA,IAAA2B,GAAAZ,SAAAf,EAAA,GAAA,IAAAe,IAGL8N,GAAApL,GAAA1C,IAAA6C,GAAAE,0BACEgL,GAAAA,QAAA,CACOrL,OACA1C,KAAAA,GACA6C,OACAE,KAAAA,EACW,gBAAAnC,GAAMZ,QACZ,UAAAa,GAAUb,QAAS,EAPjC,KASOf,EAAA,GAAA,EAAA4B,GAAAb,QAAAf,OAAA4D,EAAA5D,OAAA8D,EAAA9D,OAAAyD,EAAAzD,EAAA,GAAA,EAAA2B,GAAAZ,QAAAf,OAAAe,GAAAf,OAAA6O,IAAAA,GAAA7O,EAAA,GAAA,EAhcVuN,EAAAA,kBAAAA,KAAAG,6BAAA,CACE,SAAA,CAAA9D,EAAAA,kBAAAA,mBACS,SAAGzJ,CAAK,KACP,UAAGC,CAAM,KACR,QAAA,OAAOD,CAAK,IAAIC,CAAM,GACrB,UAAA,MACL8B,IAAAA,GAEL,SAAAqL,EAAAA,kBAAAA,KAAA,IAAA,CAAc,UAAA,aAAahJ,EAAMF,IAAK,IAAIE,EAAMJ,GAAI,IAClDe,SAAAA,CAAAA,4BAQA,IAAA,CACGyD,SAAAA,CAAAA,GAAO3D,IAAK,CAAA+J,EAAAZ,6BACX,IAAA,CACE,SAAA,CAAAvE,EAAAA,kBAAAA,IAAA,OAAA,CACM,GAAA9B,EAAGpD,CAAC,EACJ,GAAAoD,EAAGpD,CAAC,EACJ,GAAA,IACA,GAAA,IACG,MAAA,CAAA0F,OACG/J,EAAU,CAAA,EAAGc,YACR,EAAC,GACVQ,GAAM6I,OAAkB0B,WAAxB,CAAA,CAA6B,EAExB,UAAAtK,GAAU4I,OAAkB0B,SAAAA,2BAEzC,OAAA,CACK,EAAA,IACA,EAAApE,EAAGpD,CAAC,EACJ,GAAA,SACQ,UAAA6H,EAAAA,GAAG,UAAW3K,GAAU4I,OAAelK,MAAA,EAC3C,MAAA,CAAA0N,WACO,MAAKrD,KACXtK,EAAU,CAAA,EAAG,GACfsB,GAAM6I,OAAelK,QAArB,CAAA,CAA0B,EAG/B4N,SAAAA,GAAAA,yBACCxJ,EACAf,OACA9B,GACAN,EAAY,CAAA,EACZD,EAAY,CAAA,EACZU,EACF,CAAA,CACF,CAAA,CAAA,EAhCMmM,CAiCR,CACD,EACD9D,GASCE,EAAAA,EAUH,2BACA,IAAA,CACG1B,SAAAA,CAAAA,GAAO7D,IAAK,CAAAgK,EAAAC,kCAET,SAAA,CAAArF,EAAAA,kBAAAA,IAAA,OAAA,CACM,GAAA3B,EAAGvD,CAAC,EACJ,GAAAuD,EAAGvD,CAAC,EACJ,GAAAY,EAAa,GACb,GAAAA,EAAa,GACV,MAAA,CAAA8E,OACG/J,EAAU,CAAA,EAAGc,YACR,EAAC,GACVQ,GAAM6I,OAAkB0B,WAAxB,CAAA,CAA6B,EAExB,UAAAtK,GAAU4I,OAAkB0B,SAAAA,GAEzCtC,EAAAA,kBAAAA,IAAA,OAAA,CACK,EAAAtE,EAAa,GACb,EAAA2C,EAAGvD,CAAC,EACJ,GAAA,SACC,MACG,MAAA,CAAAsJ,WACO,QAAOrD,KACbtK,EAAU,CAAA,EAAG,GACfsB,GAAM6I,OAAelK,QAArB,CAAA,CAA0B,EAErB,UAAAiM,EAAAA,GAAG,UAAW3K,GAAU4I,OAAelK,MAAA,EAEjD4N,SAAAA,GAAAA,yBACCxJ,EACAf,OACA9B,GACAN,EAAY,CAAA,EACZD,KACAU,EACF,CAAA,CACF,CAAA,CAAA,EAjCMmM,CAkCR,CACD,EACDhD,GAQCC,CAAAA,EAUH,2BACA,IAAA,CACEM,SAAAA,CAAAA,0BAQCwD,GAAAA,mBAAA,CACS,OAAApD,GACL,EAAAC,GACC,GAAA,EACAxG,GAAAA,EACI,OAAA6G,GAII,WAAAM,GAOF,UAAA,UACV,iBACW7K,UAAAA,GACHG,OAAAA,EAAAA,CAAM,CAAA,EAElB,EACC2K,4BACD,IAAA,CACE,SAAA,CAAA/C,wBAAA4D,GAAAA,OAAA,KAAA,CACS,MAAAV,GAKD,KAAAC,GACI,SAAA,CAAAY,QACC,CAAAwB,WACK,EAACzK,EAEXwD,GACEpD,EAAaiB,OACXqJ,EACF,CACI,GAJN,GAIOpC,QACA,CAAA,EACVc,YACY,CAAAqB,WACC,EAACzK,EAEXwD,GACEpD,EAAaiB,OACXsJ,EACF,CACI,GAJN,GAIOrC,QACA,EAACC,WACE,CAAAnK,SAAY5B,EAAO4B,QAAAA,CAAU,CAC3C,EAEM,QAAA,UACC,QAAAP,EAAA,cAAA,UAAoC,0BAE/CiL,GAAAA,OAAA,KAAA,CAEI,EAAAhF,GACE1D,EAAaiB,OACXuJ,EACF,CACI,GAJN,GAMK,MAAApC,GAKD,KAAAC,GACI,SAAA,CAAAQ,QACC,CAAAwB,WACK,EAACzK,EAEX8D,GACE1D,EAAaiB,OACXwJ,EACF,CACI,GAJN,GAIOvC,QACA,CAAA,EACVc,YACY,CAAAqB,WACC,EAACzK,EAEX8D,GACE1D,EAAaiB,OACXyJ,EACF,CACI,GAJN,GAIOxC,QACA,EAACC,WACE,CAAAnK,SAAY5B,EAAO4B,QAAAA,CAAU,CAC3C,EAEM,QAAA,UACC,QAAAP,EAAA,cAAA,UAAoC,EAE9CkB,EACCmG,EAAAA,kBAAAA,YACM,GAAA,EACArE,GAAAA,EACA,GAAAmC,EAAEjE,EAAakB,IAAK,EACpB,GAAA+C,EAAEjE,EAAakB,IAAK,EACb,UAAA4H,EAAAA,GACT,sEACA3K,GAAU6N,aACZ,EACO,MAAA9N,GAAM8N,aAAAA,CAAe,EAV/B,IAAA,EAaH,EACArB,GAgLCC,GACDO,EAAAA,CAAAA,CASF,CAAA,CACF,EACCC,EAAAA,EASO,CACP,CApnBA,SAAAN,GAAAmB,EAAA,CAAA,OA8lB8DhL,EAACiL,KAAM,CA9lBrE,SAAArB,GAAAsB,EAAA,CAAA,OA8lB6BlL,EAACmL,WAAc,OAAO,CA9lBnD,SAAAL,GAAAM,EAAA,CAAA,MAsZkD,CAACrC,EAAAA,uBAAuBsC,EAAE9H,EAAG,CAAC,CAtZhF,SAAAsH,GAAAS,EAAA,CAAA,MA4YkD,CAACvC,EAAAA,uBAAuBsC,EAAE9H,EAAG,CAAC,CA5YhF,SAAAqH,GAAAW,EAAA,CAAA,MA4X8C,CAACxC,EAAAA,uBAAuBsC,EAAE9H,EAAG,CAAC,CA5X5E,SAAAoH,GAAAa,EAAA,CAAA,MA8WkD,CAACzC,EAAAA,uBAAuBsC,EAAEjI,EAAG,CAAC,CA9WhF,SAAAsH,GAAAW,EAAA,CAAA,MAoWkD,CAACtC,EAAAA,uBAAuBsC,EAAEjI,EAAG,CAAC,CApWhF,SAAA+E,GAAAsD,EAAA,CAAA,OAqV+DzL,EAACiL,KAAM,CArVtE,SAAA/C,GAAAwD,EAAA,CAAA,OAqV6B1L,EAACmL,WAAc,QAAQ,CArVpD,SAAA1G,GAAAkH,EAAA,CAAA,OA+J4B3L,EAACC,IAAK,CA/JlC,SAAA8D,GAAA6H,EAAA,CAAA,MAkJW,CAAC7C,EAAAA,uBAAuB/I,EAACuD,EAAG,CAAC,CAlJxC,SAAAI,GAAAkI,EAAA,CAAA,MA4IW,CAAC9C,EAAAA,uBAAuB/I,EAACoD,EAAG,CAAC,CA5IxC,SAAAP,GAAAiJ,EAAA,CAAA,OAqHyE9L,GAAM,IAAI,CArHnF,SAAA4C,GAAAmJ,EAAA,CAAA,OAqHoC/L,EAACuD,EAAG,CArHxC,SAAAZ,GAAAqJ,EAAA,CAAA,OAmHqEhM,GAAM,IAAI,CAnH/E,SAAA0C,GAAAuJ,EAAA,CAAA,OAmHgCjM,EAACuD,EAAG,CAnHpC,SAAAf,GAAA0J,EAAA,CAAA,OAgHyElM,GAAM,IAAI,CAhHnF,SAAAuC,GAAA4J,EAAA,CAAA,OAgHoCnM,EAACoD,EAAG,CAhHxC,SAAAd,GAAA8J,EAAA,CAAA,OA8GqEpM,GAAM,IAAI,CA9G/E,SAAAqC,GAAAgK,EAAA,CAAA,OA8GgCrM,EAACoD,EAAG,CA9GpC,SAAAlB,GAAAoK,EAAA,CAAA,OA2G2EtM,GAAM,IAAI,CA3GrF,SAAAiC,GAAAsK,EAAA,CAAA,OA2GsCvM,EAACuD,EAAG,CA3G1C,SAAAvB,GAAAwK,EAAA,CAAA,OAyGyExM,GAAM,IAAI,CAzGnF,SAAA+B,GAAA0K,EAAA,CAAA,OAyGoCzM,EAACuD,EAAG,CAzGxC,SAAAzB,GAAA4K,EAAA,CAAA,OAuGqE1M,GAAM,IAAI,CAvG/E,SAAA6B,GAAA8K,EAAA,CAAA,OAuGgC3M,EAACuD,EAAG,CAvGpC,SAAA5B,GAAAiL,EAAA,CAAA,OAoG2E5M,GAAM,IAAI,CApGrF,SAAA0B,GAAAmL,EAAA,CAAA,OAoGsC7M,EAACoD,EAAG,CApG1C,SAAA3B,GAAAqL,EAAA,CAAA,OAkGyE9M,GAAM,IAAI,CAlGnF,SAAAwB,GAAAuL,EAAA,CAAA,OAkGoC/M,EAACuD,EAAG,CAlGxC,SAAAjC,GAAA0L,EAAA,CAAA,OAgGqEhN,GAAM,IAAI,CAhG/E,SAAAoB,GAAA6L,EAAA,CAAA,OAgGgCjN,EAACoD,EAAG,CCnCpC,SAAA8J,GAAA7R,EAAA,CAAA,MAAAC,EAAAC,EAAAA,uBAAAA,EAAA,EAAA,EACL,CAAAC,KAAAA,EAAA2R,WAAAA,EAAAC,QAAAA,EAAAC,iBAAAA,EAAA3R,OAAAA,EAAAD,MAAAA,EAAA6R,SAAAA,EAAAtR,WAAAA,GAAAF,WAAA4B,GAAA3B,WAAAmC,GAAAqP,QAAAA,GAAA5R,WAAAwC,EAAAtC,SAAAyD,GAAAkO,gBAAAjO,GAAArD,WAAAsD,GAAAvD,YAAA8D,GAAA5D,UAAAoE,EAAAnE,aAAAoE,EAAA5E,OAAAA,EAAAgB,aAAAwI,GAAAvI,aAAA0I,EAAAlJ,QAAAA,EAAAC,sBAAAkJ,GAAAiI,eAAAA,GAAAlR,kBAAAA,EAAAmR,QAAAA,EAAAC,cAAAlI,EAAAmI,aAAAjI,GAAAnJ,QAAAqJ,EAAApJ,YAAA0J,EAAAzJ,SAAA0J,GAAAyH,SAAAxH,GAAAyH,eAAAxH,GAAAyH,UAAAxH,GAAAyH,iBAAAA,EAAAC,MAAAzH,EAAA0H,UAAAA,GAAAvR,WAAA8J,GAAA1J,QAAAA,GAAAD,QAAAA,GAAAE,UAAA0J,EAAAzJ,OAAAA,EAAAC,WAAAA,EAAAC,UAAAwJ,GAAAvJ,aAAAwJ,EAAAvJ,eAAAwJ,GAAAvJ,OAAAwJ,GAAAvJ,QAAAwJ,EAAAA,EAoDI1L,EA3CFS,GAAA4B,KAAAuB,OAAA,OAAAvB,GACA3B,EAAAmC,KAAAe,OAAA,GAAAf,GAAkB,IAAA8I,EAAA1L,OAAA6C,GAElB6I,EAAA7I,IAAAc,OAAA,CACEkP,GAAAA,OAAMC,MAAMC,kBAAkBC,OAAO,CAAA,EACrCH,GAAAA,OAAMC,MAAMC,kBAAkBC,OAAO,CAAA,CAAG,EAF1CnQ,EAGC7C,KAAA6C,EAAA7C,KAAA0L,GAAAA,EAAA1L,EAAA,CAAA,EAHD,MAAAK,EAAAqL,EAIAnL,EAAAyD,KAAAL,OAAA,GAAAK,GACAkO,GAAAjO,KAAAN,OAAA,GAAAM,GACArD,GAAAsD,KAAAP,OAAA,GAAAO,GACAvD,EAAA8D,KAAAd,OAAA,GAAAc,GACA5D,EAAAoE,IAAAtB,OAAA,GAAAsB,EACAnE,GAAAoE,IAAAvB,OAAA,GAAAuB,EAAiB,IAAAyG,GAAA3L,OAAA8J,IAEjB6B,GAAA7B,KAAAnG,OAAA,CAAgB,GAAI,EAAE,EAAtBmG,GAAuB9J,KAAA8J,GAAA9J,KAAA2L,IAAAA,GAAA3L,EAAA,CAAA,EAAvB,MAAAsB,GAAAqK,GAAuB,IAAAG,GAAA9L,OAAAiK,GACvB6B,GAAA7B,IAAAtG,OAAA,CAAgB,GAAI,EAAE,EAAtBsG,EAAuBjK,KAAAiK,EAAAjK,KAAA8L,IAAAA,GAAA9L,EAAA,CAAA,EAAvB,MAAAuB,GAAAuK,GAAuB,IAAAC,EAAA/L,OAAAkK,IAEvB6B,EAAA7B,KAAAvG,OAAA,CAAA,EAAAuG,GAA0BlK,KAAAkK,GAAAlK,KAAA+L,GAAAA,EAAA/L,EAAA,CAAA,EAA1B,MAAAgB,GAAA+K,EAIAsG,EAAAlI,IAAAxG,OAAA,GAAAwG,EACAmI,EAAAjI,KAAA1G,OAAA,GAAA0G,GACAnJ,EAAAqJ,IAAA5G,OAAA,GAAA4G,EACApJ,EAAA0J,IAAAlH,OAAA,EAAAkH,EACAzJ,GAAA0J,KAAAnH,OAAA,GAAAmH,GACAyH,GAAAxH,KAAApH,OAAA,KAAAoH,GACAyH,GAAAxH,KAAArH,OAAA,GAAAqH,GACAyH,GAAAxH,KAAAtH,OAAA,EAAAsH,GAEA0H,GAAAzH,IAAAvH,OAAA,QAAAuH,EAEA7J,GAAA8J,KAAAxH,OAAA,EAAAwH,GAGAzJ,GAAA0J,IAAAzH,OAAA,QAAAyH,EAGAvJ,EAAAwJ,KAAA1H,OAAA,EAAA0H,GAAa,IAAAY,EAAAjM,OAAAsL,GACbW,EAAAX,IAAA3H,OAAA,CAAA,EAAA2H,EAAiBtL,KAAAsL,EAAAtL,KAAAiM,GAAAA,EAAAjM,EAAA,CAAA,EAAjB,MAAA8B,EAAAmK,EACAlK,GAAAwJ,KAAA5H,OAAA,GAAA4H,GACAvJ,GAAAwJ,KAAA7H,OAAA,KAAA6H,GACAvJ,GAAAwJ,KAAA9H,OAAA,KAAA8H,GAGF,CAAAwH,EAAAC,EAAA,EAAgCvQ,EAAAA,SAAS,CAAC,EAC1C,CAAAwQ,EAAAC,EAAA,EAAkCzQ,EAAAA,SAAS,CAAC,EAE5C0Q,EAAiBlR,EAAAA,OAAuB,IAAI,EAC5CmR,GAAuBnR,EAAAA,OAAuB,IAAI,EAAE,IAAAgK,EAAAC,GAAApM,EAAA,EAAA,IAAAyO,OAAAC,IAAA,2BAAA,GAC1CvC,EAAAA,IAAA,CACR,MAAAoH,GAAuB,IAAIC,eAAeC,IAAA,CACxCP,GAAYO,GAAO,CAAA,EAAGC,OAAOC,aAAjB,GAAoC,EAChDP,GAAaK,GAAO,CAAA,EAAGC,OAAOE,cAAjB,GAAqC,CAAC,CACpD,EACD,OAAIP,EAAQ3J,SACV6J,GAAcM,QAASR,EAAQ3J,OAAQ,EAElC,IAAM6J,GAAcO,WAAAA,CAAa,EACvC1H,GAAA,CAAA,EAAEpM,MAAAmM,EAAAnM,MAAAoM,KAAAD,EAAAnM,EAAA,EAAA,EAAAoM,GAAApM,EAAA,EAAA,GATLkD,EAAAA,UAAUiJ,EASPC,EAAE,EAIU,MAAAC,GAAAzK,GAAUmS,eACdzH,EAAA3K,GAAMoS,eAAgB,IAAAvH,EAAAxM,QAAA4B,GAAAoS,aAAAhU,QAAA4B,GAAA6I,OAAAzK,QAAAE,GAAAF,EAAA,EAAA,IAAAsS,GAAAtS,EAAA,EAAA,IAAA+R,GAAA/R,EAAA,EAAA,IAAAqS,GAAArS,QAAA6R,GAAA7R,EAAA,EAAA,IAAA2B,GAAAqS,aAAAhU,EAAA,EAAA,IAAA2B,GAAA8I,OAAAzK,EAAA,EAAA,IAAAG,GAa5BqM,EAAAqF,GAAAE,GAAAM,GAAAC,EACC1I,wBAACqK,GAAAA,aACS,OAAA,CAAAxJ,MACC9I,GAAM8I,MAAOuJ,YACPrS,GAAMqS,WAAAA,EAET,WAAA,CAAAvJ,MACH7I,GAAU6I,MAAOuJ,YACXpS,GAAUoS,WAAAA,EAEbnC,WAAAA,EACME,iBAAAA,EACX5R,MAAAA,EACQ,cAAAkS,EAAAiB,GAAA3P,OAEb,aAAA2O,EACIpS,EAAI8E,IAAKc,EAAW,EAACC,OAAQC,EAAoB,EAACN,OAAU,EAC1DxF,EAAI8E,IAAKkB,EAAW,EAACH,OAAQI,EACG,EAAhCjG,EAAI6F,OAAQK,EAAoB,EAHtC,KAIQ,EAnBb,KAsBOpG,EAAA,EAAA,EAAA4B,GAAAoS,YAAAhU,EAAA,EAAA,EAAA4B,GAAA6I,MAAAzK,MAAAE,EAAAF,MAAAsS,EAAAtS,MAAA+R,EAAA/R,MAAAqS,EAAArS,MAAA6R,EAAA7R,EAAA,EAAA,EAAA2B,GAAAqS,YAAAhU,EAAA,EAAA,EAAA2B,GAAA8I,MAAAzK,MAAAG,EAAAH,MAAAwM,GAAAA,EAAAxM,EAAA,EAAA,EAAA,IAAAyM,EAAAzM,QAAA4B,GAAAsS,aAAAlU,QAAA0S,GAAA1S,EAAA,EAAA,IAAAM,GAAAN,EAAA,EAAA,IAAAK,GAAAL,QAAAwS,IACP/F,EAAA+F,IAAkBlS,EAAMoF,OAAU,EACjCkE,wBAACuK,GAAAA,aACc7T,cACKoS,iBAAAA,EACVrS,OAAAA,EACK,YAAA,GACF,UAAAuB,GAAUsS,YAAa,EANrC,KAQOlU,EAAA,EAAA,EAAA4B,GAAAsS,YAAAlU,MAAA0S,EAAA1S,MAAAM,EAAAN,MAAAK,EAAAL,MAAAwS,GAAAxS,MAAAyM,GAAAA,EAAAzM,EAAA,EAAA,EAAA,IAAA0M,EAAA1M,EAAA,EAAA,IAAAE,EAAAwF,QAELgH,EAAAxM,EAAIwF,SAAY,GAAKkE,EAAAA,kBAAAA,IAACwK,GAAAA,WAAA,EAAU,EAAGpU,EAAA,EAAA,EAAAE,EAAAwF,OAAA1F,MAAA0M,GAAAA,EAAA1M,EAAA,EAAA,EAAA,IAAA2M,EAAA3M,EAAA,EAAA,IAAAkB,GAAAlB,EAAA,EAAA,IAAAc,IAAAd,EAAA,EAAA,IAAA4B,GAAA5B,EAAA,EAAA,IAAA0B,IAAA1B,EAAA,EAAA,IAAA8B,GAAA9B,EAAA,EAAA,IAAAE,GAAAF,EAAA,EAAA,IAAAQ,IAAAR,EAAA,EAAA,IAAAgB,IAAAhB,EAAA,EAAA,IAAAM,GAAAN,EAAA,EAAA,IAAAY,IAAAZ,EAAA,EAAA,IAAAK,GAAAL,EAAA,EAAA,IAAAuB,IAAAvB,EAAA,EAAA,IAAAsB,IAAAtB,EAAA,EAAA,IAAAgC,IAAAhC,EAAA,EAAA,IAAAyB,IAAAzB,EAAA,EAAA,IAAAwB,IAAAxB,EAAA,EAAA,IAAAiC,IAAAjC,EAAA,EAAA,IAAAU,IAAAV,EAAA,EAAA,IAAAqB,IAAArB,EAAA,EAAA,IAAAiB,GAAAjB,EAAA,EAAA,IAAA6B,GAAA7B,EAAA,EAAA,IAAAW,GAAAX,EAAA,EAAA,IAAAO,GAAAP,EAAA,EAAA,IAAA+B,IAAA/B,EAAA,EAAA,IAAAoB,IAAApB,EAAA,EAAA,IAAAS,GAAAT,EAAA,EAAA,IAAAmB,GAAAnB,EAAA,EAAA,IAAA2B,GAAA3B,EAAA,EAAA,IAAAmT,GAAAnT,EAAA,EAAA,IAAAiT,GAAAjT,EAAA,EAAA,IAAAe,GAAAf,QAAAa,GACnC8L,EAAAsG,GAAAE,GAAyBjT,EAAIwF,OAAU,EACtCkE,wBAAC9J,GAAA,CACOI,KAAAA,EACIK,SAAAA,EACEF,WAAAA,EACL4S,QACCE,OAAAA,EACI3S,WAAAA,GACAC,WAAAA,EACA,WAAAC,IAAc2T,GAAAA,aAAapB,CAAQ,EACnCrS,WAAAA,GACCD,YAAAA,EACFE,UAAAA,EACGC,aAAAA,GACNR,OAAAA,EACeU,sBAAAA,GACdD,QAAAA,EACUE,kBAAAA,EAEjB,QAAAC,IAAY,GAAZ,CAAA4B,SACgB,GAAGR,KAAQ,GAAID,OAAU,EAAA,EACrCnB,GAAA,CAAA4B,SAAuB,EAACR,KAAQ,GAAID,OAAU,CAAA,EAEvClB,YAAAA,EACHC,SAAAA,GACEC,WAAAA,GACEC,aAAAA,GACAC,aAAAA,GACLC,QAAAA,GACAC,QAAAA,GACEC,UAAAA,GACHC,OAAAA,EACIC,WAAAA,EACDC,UAAAA,EACGC,aAAAA,EACEC,eAAAA,GACRC,OAAAA,GACCC,QAAAA,GAAO,EArCnB,KAuCOjC,MAAAkB,EAAAlB,MAAAc,GAAAd,MAAA4B,EAAA5B,MAAA0B,GAAA1B,MAAA8B,EAAA9B,MAAAE,EAAAF,MAAAQ,GAAAR,MAAAgB,GAAAhB,MAAAM,EAAAN,MAAAY,GAAAZ,MAAAK,EAAAL,MAAAuB,GAAAvB,MAAAsB,GAAAtB,MAAAgC,GAAAhC,MAAAyB,GAAAzB,MAAAwB,GAAAxB,MAAAiC,GAAAjC,MAAAU,GAAAV,MAAAqB,GAAArB,MAAAiB,EAAAjB,MAAA6B,EAAA7B,MAAAW,EAAAX,MAAAO,EAAAP,MAAA+B,GAAA/B,MAAAoB,GAAApB,MAAAS,EAAAT,MAAAmB,EAAAnB,MAAA2B,EAAA3B,MAAAmT,EAAAnT,MAAAiT,EAAAjT,MAAAe,EAAAf,MAAAa,EAAAb,MAAA2M,GAAAA,EAAA3M,EAAA,EAAA,EAAA,IAAA8M,GAAA9M,EAAA,EAAA,IAAA0M,GAAA1M,QAAA2M,GAzCVG,4BAACwH,GAAAA,UAAA,CAAejB,MACb3G,SAAAA,CAAAA,EACAC,CAAAA,EAwCH,EAAY3M,MAAA0M,EAAA1M,MAAA2M,EAAA3M,MAAA8M,IAAAA,GAAA9M,EAAA,EAAA,EAAA,IAAA+M,GAAA/M,EAAA,EAAA,IAAA4B,GAAA2S,UAAAvU,EAAA,EAAA,IAAA4B,GAAA4S,QAAAxU,EAAA,EAAA,IAAAgS,GAAAhS,EAAA,EAAA,IAAA8R,GAAA9R,EAAA,EAAA,IAAA2B,GAAA4S,UAAAvU,EAAA,EAAA,IAAA2B,GAAA6S,QAAAxU,QAAAG,GACX4M,GAAA+E,GAAAE,EACCpI,EAAAA,kBAAAA,IAAC6K,GAAAA,YAAA,CACS,OAAA,CAAAF,SAAY5S,GAAM4S,SAAUC,OAAU7S,GAAM6S,MAAAA,EACxC,WAAA,CAAAD,SACA3S,GAAU2S,SAAUC,OACtB5S,GAAU4S,MAAAA,EAEX1C,QAAAA,EACCE,SAAAA,EACH7R,MAAAA,CAAAA,CAAK,EATf,KAWOH,EAAA,EAAA,EAAA4B,GAAA2S,SAAAvU,EAAA,EAAA,EAAA4B,GAAA4S,OAAAxU,MAAAgS,EAAAhS,MAAA8R,EAAA9R,EAAA,EAAA,EAAA2B,GAAA4S,SAAAvU,EAAA,EAAA,EAAA2B,GAAA6S,OAAAxU,MAAAG,EAAAH,MAAA+M,IAAAA,GAAA/M,EAAA,EAAA,EAAA,IAAAkN,GAAA,OAAAlN,EAAA,EAAA,IAAA4S,IAAA5S,EAAA,EAAA,IAAAkS,IAAAlS,EAAA,EAAA,IAAAoS,GAAApS,EAAA,EAAA,IAAAI,GAAAJ,EAAA,EAAA,IAAAuS,IAAAvS,EAAA,EAAA,IAAAyS,IAAAzS,EAAA,EAAA,IAAAiS,IAAAjS,EAAA,EAAA,IAAAmS,IAAAnS,EAAA,EAAA,IAAAqM,IAAArM,EAAA,EAAA,IAAAsM,GAAAtM,EAAA,EAAA,IAAAwM,GAAAxM,EAAA,EAAA,IAAAyM,GAAAzM,EAAA,EAAA,IAAA8M,IAAA9M,EAAA,EAAA,IAAA+M,IAAA/M,EAAA,EAAA,IAAA2S,IAAA3S,QAAAG,GArGV+M,4BAACwH,kBAAA,CACY,UAAArI,GACJ,MAAAC,EACH8F,KACCkB,OACOV,aAAAA,GACKV,gBAAAA,GACVS,MAAAA,GACGJ,SAAAA,GACCE,UAAAA,GACJtS,MAAAA,EACCC,OAAAA,EACQ+R,eAAAA,GACPF,QAAAA,GAERzF,SAAAA,CAAAA,EAuBAC,EASDK,GA2CCC,EAAAA,EAYH,EAAiB/M,MAAA4S,GAAA5S,MAAAkS,GAAAlS,MAAAoS,EAAApS,MAAAI,EAAAJ,MAAAuS,GAAAvS,MAAAyS,GAAAzS,MAAAiS,GAAAjS,MAAAmS,GAAAnS,MAAAqM,GAAArM,MAAAsM,EAAAtM,MAAAwM,EAAAxM,MAAAyM,EAAAzM,MAAA8M,GAAA9M,MAAA+M,GAAA/M,MAAA2S,GAAA3S,MAAAG,EAAAH,MAAAkN,IAAAA,GAAAlN,EAAA,EAAA,EAtGjBkN,EAsGiB,CA9Kd,SAAA9G,GAAAmL,EAAA,CAAA,OAyG4B7M,IAAMf,MAAS,CAzG3C,SAAAwC,GAAAhB,EAAA,CAAA,OAwG6CT,IAAMf,MAAS,CAxG5D,SAAAuC,GAAAxB,EAAA,CAAA,OAwGyBA,EAACxE,IAAK,CAxG/B,SAAA8F,GAAAyL,EAAA,CAAA,OAuG2C/M,IAAMf,MAAS,CAvG1D,SAAAmC,GAAAwL,EAAA,CAAA,OAuGuB5M,EAACxE,IAAK"}
@@ -142,6 +142,10 @@ declare interface Props {
142
142
  curveType?: CurveTypes;
143
143
  /** Specifies the number of decimal places to display in the value. */
144
144
  precision?: number;
145
+ /** Locale for number formatting. Must matches what `Intl.NumberFormat` expects. */
146
+ locale?: string;
147
+ /** Defines how “NA” values should be displayed/labelled in the graph */
148
+ naLabel?: string;
145
149
  /** Optional SVG <g> element or function that renders custom content behind or in front of the graph. */
146
150
  customLayers?: CustomLayerDataType[];
147
151
  /** Enable graph download option as png */