@undp/data-viz 1.5.9 → 2.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (676) hide show
  1. package/dist/AreaChart.cjs +1 -1
  2. package/dist/AreaChart.cjs.map +1 -1
  3. package/dist/AreaChart.d.ts +1 -0
  4. package/dist/AreaChart.js +420 -520
  5. package/dist/AreaChart.js.map +1 -1
  6. package/dist/Axis-CRyfcLjc.js +32 -0
  7. package/dist/Axis-CRyfcLjc.js.map +1 -0
  8. package/dist/Axis-DxRV2yMi.cjs +2 -0
  9. package/dist/Axis-DxRV2yMi.cjs.map +1 -0
  10. package/dist/AxisTitle-jeI7am8o.js +29 -0
  11. package/dist/AxisTitle-jeI7am8o.js.map +1 -0
  12. package/dist/AxisTitle-sS5bLLR7.cjs +2 -0
  13. package/dist/AxisTitle-sS5bLLR7.cjs.map +1 -0
  14. package/dist/BarGraph.cjs +1 -1
  15. package/dist/BarGraph.cjs.map +1 -1
  16. package/dist/BarGraph.d.ts +1 -0
  17. package/dist/BarGraph.js +2185 -4042
  18. package/dist/BarGraph.js.map +1 -1
  19. package/dist/BasicStatCard.cjs +1 -1
  20. package/dist/BasicStatCard.cjs.map +1 -1
  21. package/dist/BasicStatCard.d.ts +1 -0
  22. package/dist/BasicStatCard.js +118 -186
  23. package/dist/BasicStatCard.js.map +1 -1
  24. package/dist/BeeSwarmChart.cjs +1 -1
  25. package/dist/BeeSwarmChart.cjs.map +1 -1
  26. package/dist/BeeSwarmChart.d.ts +5 -0
  27. package/dist/BeeSwarmChart.js +518 -1016
  28. package/dist/BeeSwarmChart.js.map +1 -1
  29. package/dist/BiVariateChoroplethMap.cjs +1 -1
  30. package/dist/BiVariateChoroplethMap.cjs.map +1 -1
  31. package/dist/BiVariateChoroplethMap.d.ts +1 -0
  32. package/dist/BiVariateChoroplethMap.js +456 -697
  33. package/dist/BiVariateChoroplethMap.js.map +1 -1
  34. package/dist/BulletChart.cjs +1 -1
  35. package/dist/BulletChart.cjs.map +1 -1
  36. package/dist/BulletChart.d.ts +1 -0
  37. package/dist/BulletChart.js +863 -1414
  38. package/dist/BulletChart.js.map +1 -1
  39. package/dist/ButterflyChart.cjs +1 -1
  40. package/dist/ButterflyChart.cjs.map +1 -1
  41. package/dist/ButterflyChart.d.ts +1 -0
  42. package/dist/ButterflyChart.js +474 -684
  43. package/dist/ButterflyChart.js.map +1 -1
  44. package/dist/ChoroplethMap.cjs +1 -1
  45. package/dist/ChoroplethMap.cjs.map +1 -1
  46. package/dist/ChoroplethMap.d.ts +1 -0
  47. package/dist/ChoroplethMap.js +468 -722
  48. package/dist/ChoroplethMap.js.map +1 -1
  49. package/dist/CirclePackingGraph.cjs +1 -1
  50. package/dist/CirclePackingGraph.d.ts +1 -0
  51. package/dist/CirclePackingGraph.js +5 -6
  52. package/dist/CirclePackingGraph.js.map +1 -1
  53. package/dist/ColorLegend.cjs +1 -1
  54. package/dist/ColorLegend.cjs.map +1 -1
  55. package/dist/ColorLegend.js +57 -44
  56. package/dist/ColorLegend.js.map +1 -1
  57. package/dist/ColorLegendWithMouseOver.cjs +1 -1
  58. package/dist/ColorLegendWithMouseOver.cjs.map +1 -1
  59. package/dist/ColorLegendWithMouseOver.js +60 -65
  60. package/dist/ColorLegendWithMouseOver.js.map +1 -1
  61. package/dist/Colors.cjs.map +1 -1
  62. package/dist/Colors.js +44 -430
  63. package/dist/Colors.js.map +1 -1
  64. package/dist/CopyTextButton.cjs +3 -3
  65. package/dist/CopyTextButton.cjs.map +1 -1
  66. package/dist/CopyTextButton.js +537 -455
  67. package/dist/CopyTextButton.js.map +1 -1
  68. package/dist/CsvDownloadButton.cjs +7 -7
  69. package/dist/CsvDownloadButton.cjs.map +1 -1
  70. package/dist/CsvDownloadButton.js +442 -447
  71. package/dist/CsvDownloadButton.js.map +1 -1
  72. package/dist/Data/barChart.json +70 -0
  73. package/dist/Data/basic.csv +20 -0
  74. package/dist/DataCards.cjs +5 -5
  75. package/dist/DataCards.cjs.map +1 -1
  76. package/dist/DataCards.d.ts +1 -0
  77. package/dist/DataCards.js +488 -581
  78. package/dist/DataCards.js.map +1 -1
  79. package/dist/DataTable.cjs +1 -1
  80. package/dist/DataTable.cjs.map +1 -1
  81. package/dist/DataTable.d.ts +1 -0
  82. package/dist/DataTable.js +183 -326
  83. package/dist/DataTable.js.map +1 -1
  84. package/dist/DifferenceLineChart.cjs +1 -1
  85. package/dist/DifferenceLineChart.cjs.map +1 -1
  86. package/dist/DifferenceLineChart.d.ts +1 -0
  87. package/dist/DifferenceLineChart.js +731 -795
  88. package/dist/DifferenceLineChart.js.map +1 -1
  89. package/dist/DonutChart.cjs +1 -1
  90. package/dist/DonutChart.cjs.map +1 -1
  91. package/dist/DonutChart.d.ts +1 -4
  92. package/dist/DonutChart.js +260 -444
  93. package/dist/DonutChart.js.map +1 -1
  94. package/dist/DotDensityMap.cjs +1 -1
  95. package/dist/DotDensityMap.cjs.map +1 -1
  96. package/dist/DotDensityMap.d.ts +1 -0
  97. package/dist/DotDensityMap.js +387 -574
  98. package/dist/DotDensityMap.js.map +1 -1
  99. package/dist/{DropdownSelect-6kjXM6oW.js → DropdownSelect-BbdPQa2k.js} +1401 -1374
  100. package/dist/DropdownSelect-BbdPQa2k.js.map +1 -0
  101. package/dist/DropdownSelect-Doz3mCrM.cjs +29 -0
  102. package/dist/DropdownSelect-Doz3mCrM.cjs.map +1 -0
  103. package/dist/DualAxisLineChart.cjs +1 -1
  104. package/dist/DualAxisLineChart.cjs.map +1 -1
  105. package/dist/DualAxisLineChart.d.ts +1 -0
  106. package/dist/DualAxisLineChart.js +620 -714
  107. package/dist/DualAxisLineChart.js.map +1 -1
  108. package/dist/DumbbellChart.cjs +1 -1
  109. package/dist/DumbbellChart.cjs.map +1 -1
  110. package/dist/DumbbellChart.d.ts +1 -0
  111. package/dist/DumbbellChart.js +789 -1499
  112. package/dist/DumbbellChart.js.map +1 -1
  113. package/dist/EmptyState-BZo1BbAn.js +15 -0
  114. package/dist/{EmptyState-36lXXyui.js.map → EmptyState-BZo1BbAn.js.map} +1 -1
  115. package/dist/EmptyState-sAEZ_5rU.cjs +2 -0
  116. package/dist/{EmptyState-B8IpKGcL.cjs.map → EmptyState-sAEZ_5rU.cjs.map} +1 -1
  117. package/dist/ExcelDownloadButton.cjs +1 -1
  118. package/dist/ExcelDownloadButton.cjs.map +1 -1
  119. package/dist/ExcelDownloadButton.js +20 -24
  120. package/dist/ExcelDownloadButton.js.map +1 -1
  121. package/dist/FootNote.cjs +1 -1
  122. package/dist/FootNote.cjs.map +1 -1
  123. package/dist/FootNote.js +26 -17
  124. package/dist/FootNote.js.map +1 -1
  125. package/dist/GeoHubCompareMaps.cjs +1 -1
  126. package/dist/GeoHubCompareMaps.cjs.map +1 -1
  127. package/dist/GeoHubCompareMaps.d.ts +1 -0
  128. package/dist/GeoHubCompareMaps.js +267 -342
  129. package/dist/GeoHubCompareMaps.js.map +1 -1
  130. package/dist/GeoHubMap.cjs +1 -1
  131. package/dist/GeoHubMap.cjs.map +1 -1
  132. package/dist/GeoHubMap.d.ts +1 -0
  133. package/dist/GeoHubMap.js +214 -379
  134. package/dist/GeoHubMap.js.map +1 -1
  135. package/dist/GeoHubMapWithLayerSelection.cjs +1 -1
  136. package/dist/GeoHubMapWithLayerSelection.cjs.map +1 -1
  137. package/dist/GeoHubMapWithLayerSelection.d.ts +1 -0
  138. package/dist/GeoHubMapWithLayerSelection.js +192 -278
  139. package/dist/GeoHubMapWithLayerSelection.js.map +1 -1
  140. package/dist/GraphContainer-CRqzdKu2.js +78 -0
  141. package/dist/GraphContainer-CRqzdKu2.js.map +1 -0
  142. package/dist/GraphContainer-d8A46BK2.cjs +2 -0
  143. package/dist/GraphContainer-d8A46BK2.cjs.map +1 -0
  144. package/dist/GraphDescription.cjs +1 -1
  145. package/dist/GraphDescription.cjs.map +1 -1
  146. package/dist/GraphDescription.js +23 -17
  147. package/dist/GraphDescription.js.map +1 -1
  148. package/dist/{GraphEl-2IiUDxjR.js → GraphEl-BZne2JIx.js} +181 -202
  149. package/dist/GraphEl-BZne2JIx.js.map +1 -0
  150. package/dist/GraphEl-D5MUfp45.cjs +2 -0
  151. package/dist/GraphEl-D5MUfp45.cjs.map +1 -0
  152. package/dist/GraphFooter.cjs +1 -1
  153. package/dist/GraphFooter.cjs.map +1 -1
  154. package/dist/GraphFooter.js +28 -18
  155. package/dist/GraphFooter.js.map +1 -1
  156. package/dist/GraphHeader.cjs +1 -1
  157. package/dist/GraphHeader.cjs.map +1 -1
  158. package/dist/GraphHeader.d.ts +2 -1
  159. package/dist/GraphHeader.js +45 -59
  160. package/dist/GraphHeader.js.map +1 -1
  161. package/dist/GraphTitle.cjs +1 -1
  162. package/dist/GraphTitle.cjs.map +1 -1
  163. package/dist/GraphTitle.js +29 -24
  164. package/dist/GraphTitle.js.map +1 -1
  165. package/dist/GriddedGraphs.cjs +1 -1
  166. package/dist/GriddedGraphs.cjs.map +1 -1
  167. package/dist/GriddedGraphs.d.ts +1 -0
  168. package/dist/GriddedGraphs.js +216 -450
  169. package/dist/GriddedGraphs.js.map +1 -1
  170. package/dist/GriddedGraphsFromConfig.cjs +1 -1
  171. package/dist/GriddedGraphsFromConfig.cjs.map +1 -1
  172. package/dist/GriddedGraphsFromConfig.d.ts +1 -0
  173. package/dist/GriddedGraphsFromConfig.js +22 -36
  174. package/dist/GriddedGraphsFromConfig.js.map +1 -1
  175. package/dist/HeatMap.cjs +1 -1
  176. package/dist/HeatMap.cjs.map +1 -1
  177. package/dist/HeatMap.d.ts +1 -0
  178. package/dist/HeatMap.js +278 -446
  179. package/dist/HeatMap.js.map +1 -1
  180. package/dist/Histogram.cjs +1 -1
  181. package/dist/Histogram.cjs.map +1 -1
  182. package/dist/Histogram.d.ts +1 -0
  183. package/dist/Histogram.js +154 -264
  184. package/dist/Histogram.js.map +1 -1
  185. package/dist/ImageDownloadButton.cjs +1 -1
  186. package/dist/ImageDownloadButton.cjs.map +1 -1
  187. package/dist/ImageDownloadButton.d.ts +2 -1
  188. package/dist/ImageDownloadButton.js +21 -25
  189. package/dist/ImageDownloadButton.js.map +1 -1
  190. package/dist/LineChartWithConfidenceInterval.cjs +1 -1
  191. package/dist/LineChartWithConfidenceInterval.cjs.map +1 -1
  192. package/dist/LineChartWithConfidenceInterval.d.ts +1 -0
  193. package/dist/LineChartWithConfidenceInterval.js +677 -827
  194. package/dist/LineChartWithConfidenceInterval.js.map +1 -1
  195. package/dist/LinearColorLegend.cjs +1 -1
  196. package/dist/LinearColorLegend.cjs.map +1 -1
  197. package/dist/LinearColorLegend.js +49 -30
  198. package/dist/LinearColorLegend.js.map +1 -1
  199. package/dist/Modal-DGcuAHyK.js +1047 -0
  200. package/dist/Modal-DGcuAHyK.js.map +1 -0
  201. package/dist/Modal-JW_IExO3.cjs +46 -0
  202. package/dist/Modal-JW_IExO3.cjs.map +1 -0
  203. package/dist/MultiGraphDashboard.cjs +1 -1
  204. package/dist/MultiGraphDashboard.cjs.map +1 -1
  205. package/dist/MultiGraphDashboard.d.ts +1 -0
  206. package/dist/MultiGraphDashboard.js +126 -292
  207. package/dist/MultiGraphDashboard.js.map +1 -1
  208. package/dist/MultiGraphDashboardFromConfig.cjs +1 -1
  209. package/dist/MultiGraphDashboardFromConfig.cjs.map +1 -1
  210. package/dist/MultiGraphDashboardFromConfig.d.ts +1 -0
  211. package/dist/MultiGraphDashboardFromConfig.js +22 -31
  212. package/dist/MultiGraphDashboardFromConfig.js.map +1 -1
  213. package/dist/MultiGraphDashboardWideToLongFormat.cjs +1 -1
  214. package/dist/MultiGraphDashboardWideToLongFormat.cjs.map +1 -1
  215. package/dist/MultiGraphDashboardWideToLongFormat.d.ts +1 -0
  216. package/dist/MultiGraphDashboardWideToLongFormat.js +139 -223
  217. package/dist/MultiGraphDashboardWideToLongFormat.js.map +1 -1
  218. package/dist/MultiGraphDashboardWideToLongFormatFromConfig.cjs +1 -1
  219. package/dist/MultiGraphDashboardWideToLongFormatFromConfig.cjs.map +1 -1
  220. package/dist/MultiGraphDashboardWideToLongFormatFromConfig.d.ts +1 -0
  221. package/dist/MultiGraphDashboardWideToLongFormatFromConfig.js +25 -27
  222. package/dist/MultiGraphDashboardWideToLongFormatFromConfig.js.map +1 -1
  223. package/dist/MultiLineAltChart.cjs +1 -1
  224. package/dist/MultiLineAltChart.cjs.map +1 -1
  225. package/dist/MultiLineAltChart.d.ts +1 -0
  226. package/dist/MultiLineAltChart.js +582 -659
  227. package/dist/MultiLineAltChart.js.map +1 -1
  228. package/dist/MultiLineChart.cjs +1 -1
  229. package/dist/MultiLineChart.cjs.map +1 -1
  230. package/dist/MultiLineChart.d.ts +1 -0
  231. package/dist/MultiLineChart.js +617 -724
  232. package/dist/MultiLineChart.js.map +1 -1
  233. package/dist/ParetoChart.cjs +1 -1
  234. package/dist/ParetoChart.cjs.map +1 -1
  235. package/dist/ParetoChart.d.ts +1 -0
  236. package/dist/ParetoChart.js +531 -635
  237. package/dist/ParetoChart.js.map +1 -1
  238. package/dist/PerformanceIntensiveMultiGraphDashboard.cjs +1 -1
  239. package/dist/PerformanceIntensiveMultiGraphDashboard.cjs.map +1 -1
  240. package/dist/PerformanceIntensiveMultiGraphDashboard.d.ts +1 -0
  241. package/dist/PerformanceIntensiveMultiGraphDashboard.js +148 -337
  242. package/dist/PerformanceIntensiveMultiGraphDashboard.js.map +1 -1
  243. package/dist/PerformanceIntensiveMultiGraphDashboardFromConfig.cjs +1 -1
  244. package/dist/PerformanceIntensiveMultiGraphDashboardFromConfig.cjs.map +1 -1
  245. package/dist/PerformanceIntensiveMultiGraphDashboardFromConfig.d.ts +1 -0
  246. package/dist/PerformanceIntensiveMultiGraphDashboardFromConfig.js +22 -31
  247. package/dist/PerformanceIntensiveMultiGraphDashboardFromConfig.js.map +1 -1
  248. package/dist/PerformanceIntensiveScrollStory.cjs +1 -1
  249. package/dist/PerformanceIntensiveScrollStory.cjs.map +1 -1
  250. package/dist/PerformanceIntensiveScrollStory.d.ts +1 -0
  251. package/dist/PerformanceIntensiveScrollStory.js +93 -114
  252. package/dist/PerformanceIntensiveScrollStory.js.map +1 -1
  253. package/dist/RadarChart.cjs +1 -1
  254. package/dist/RadarChart.cjs.map +1 -1
  255. package/dist/RadarChart.d.ts +1 -0
  256. package/dist/RadarChart.js +426 -575
  257. package/dist/RadarChart.js.map +1 -1
  258. package/dist/ReferenceLine-2XCwHXQ4.js +162 -0
  259. package/dist/ReferenceLine-2XCwHXQ4.js.map +1 -0
  260. package/dist/ReferenceLine-BH0qdf4R.cjs +2 -0
  261. package/dist/ReferenceLine-BH0qdf4R.cjs.map +1 -0
  262. package/dist/RegressionLine-BOTTNSrr.cjs +2 -0
  263. package/dist/RegressionLine-BOTTNSrr.cjs.map +1 -0
  264. package/dist/RegressionLine-DAcY2DjT.js +87 -0
  265. package/dist/RegressionLine-DAcY2DjT.js.map +1 -0
  266. package/dist/SVGDownloadButton.cjs +1 -1
  267. package/dist/SVGDownloadButton.cjs.map +1 -1
  268. package/dist/SVGDownloadButton.js +21 -25
  269. package/dist/SVGDownloadButton.js.map +1 -1
  270. package/dist/SankeyChart.cjs +1 -1
  271. package/dist/SankeyChart.cjs.map +1 -1
  272. package/dist/SankeyChart.d.ts +1 -0
  273. package/dist/SankeyChart.js +665 -854
  274. package/dist/SankeyChart.js.map +1 -1
  275. package/dist/ScatterPlot.cjs +1 -1
  276. package/dist/ScatterPlot.cjs.map +1 -1
  277. package/dist/ScatterPlot.d.ts +1 -0
  278. package/dist/ScatterPlot.js +675 -815
  279. package/dist/ScatterPlot.js.map +1 -1
  280. package/dist/ScrollStory.cjs +1 -1
  281. package/dist/ScrollStory.cjs.map +1 -1
  282. package/dist/ScrollStory.d.ts +1 -0
  283. package/dist/ScrollStory.js +85 -97
  284. package/dist/ScrollStory.js.map +1 -1
  285. package/dist/SimpleLineChart.cjs +1 -1
  286. package/dist/SimpleLineChart.cjs.map +1 -1
  287. package/dist/SimpleLineChart.d.ts +1 -0
  288. package/dist/SimpleLineChart.js +505 -613
  289. package/dist/SimpleLineChart.js.map +1 -1
  290. package/dist/SingleGraphDashboard.cjs +1 -1
  291. package/dist/SingleGraphDashboard.cjs.map +1 -1
  292. package/dist/SingleGraphDashboard.d.ts +2 -1
  293. package/dist/SingleGraphDashboard.js +284 -508
  294. package/dist/SingleGraphDashboard.js.map +1 -1
  295. package/dist/SingleGraphDashboardFromConfig.cjs +1 -1
  296. package/dist/SingleGraphDashboardFromConfig.cjs.map +1 -1
  297. package/dist/SingleGraphDashboardFromConfig.d.ts +2 -1
  298. package/dist/SingleGraphDashboardFromConfig.js +25 -31
  299. package/dist/SingleGraphDashboardFromConfig.js.map +1 -1
  300. package/dist/SingleGraphDashboardGeoHubMaps.cjs +1 -1
  301. package/dist/SingleGraphDashboardGeoHubMaps.cjs.map +1 -1
  302. package/dist/SingleGraphDashboardGeoHubMaps.d.ts +1 -0
  303. package/dist/SingleGraphDashboardGeoHubMaps.js +150 -168
  304. package/dist/SingleGraphDashboardGeoHubMaps.js.map +1 -1
  305. package/dist/SingleGraphDashboardGeoHubMapsFromConfig.cjs +1 -1
  306. package/dist/SingleGraphDashboardGeoHubMapsFromConfig.cjs.map +1 -1
  307. package/dist/SingleGraphDashboardGeoHubMapsFromConfig.d.ts +1 -0
  308. package/dist/SingleGraphDashboardGeoHubMapsFromConfig.js +25 -21
  309. package/dist/SingleGraphDashboardGeoHubMapsFromConfig.js.map +1 -1
  310. package/dist/SingleGraphDashboardThreeDGraphs.cjs +1 -1
  311. package/dist/SingleGraphDashboardThreeDGraphs.cjs.map +1 -1
  312. package/dist/SingleGraphDashboardThreeDGraphs.d.ts +1 -0
  313. package/dist/SingleGraphDashboardThreeDGraphs.js +363 -593
  314. package/dist/SingleGraphDashboardThreeDGraphs.js.map +1 -1
  315. package/dist/SingleGraphDashboardThreeDGraphsFromConfig.cjs +1 -1
  316. package/dist/SingleGraphDashboardThreeDGraphsFromConfig.cjs.map +1 -1
  317. package/dist/SingleGraphDashboardThreeDGraphsFromConfig.d.ts +1 -0
  318. package/dist/SingleGraphDashboardThreeDGraphsFromConfig.js +25 -31
  319. package/dist/SingleGraphDashboardThreeDGraphsFromConfig.js.map +1 -1
  320. package/dist/SlopeChart.cjs +1 -1
  321. package/dist/SlopeChart.cjs.map +1 -1
  322. package/dist/SlopeChart.d.ts +1 -0
  323. package/dist/SlopeChart.js +539 -573
  324. package/dist/SlopeChart.js.map +1 -1
  325. package/dist/Source-DYMJRrsq.cjs +2 -0
  326. package/dist/Source-DYMJRrsq.cjs.map +1 -0
  327. package/dist/Source-DwTHB8fn.js +78 -0
  328. package/dist/Source-DwTHB8fn.js.map +1 -0
  329. package/dist/Source.cjs +1 -1
  330. package/dist/Source.cjs.map +1 -1
  331. package/dist/Source.js +4 -38
  332. package/dist/Source.js.map +1 -1
  333. package/dist/SparkLine.cjs +1 -1
  334. package/dist/SparkLine.cjs.map +1 -1
  335. package/dist/SparkLine.d.ts +1 -0
  336. package/dist/SparkLine.js +286 -314
  337. package/dist/SparkLine.js.map +1 -1
  338. package/dist/Spinner-D7rnnwnA.js +47 -0
  339. package/dist/Spinner-D7rnnwnA.js.map +1 -0
  340. package/dist/Spinner-DRMBUsX7.cjs +2 -0
  341. package/dist/Spinner-DRMBUsX7.cjs.map +1 -0
  342. package/dist/StatCardFromData.cjs +1 -1
  343. package/dist/StatCardFromData.cjs.map +1 -1
  344. package/dist/StatCardFromData.d.ts +1 -0
  345. package/dist/StatCardFromData.js +161 -243
  346. package/dist/StatCardFromData.js.map +1 -1
  347. package/dist/StripChart.cjs +1 -1
  348. package/dist/StripChart.cjs.map +1 -1
  349. package/dist/StripChart.d.ts +1 -0
  350. package/dist/StripChart.js +665 -983
  351. package/dist/StripChart.js.map +1 -1
  352. package/dist/ThreeDGlobe.cjs +1 -1
  353. package/dist/ThreeDGlobe.cjs.map +1 -1
  354. package/dist/ThreeDGlobe.d.ts +1 -0
  355. package/dist/ThreeDGlobe.js +356 -519
  356. package/dist/ThreeDGlobe.js.map +1 -1
  357. package/dist/ThresholdColorLegendWithMouseOver.cjs +1 -1
  358. package/dist/ThresholdColorLegendWithMouseOver.cjs.map +1 -1
  359. package/dist/ThresholdColorLegendWithMouseOver.js +96 -126
  360. package/dist/ThresholdColorLegendWithMouseOver.js.map +1 -1
  361. package/dist/Tooltip-4dJo4_AF.cjs +2 -0
  362. package/dist/Tooltip-4dJo4_AF.cjs.map +1 -0
  363. package/dist/Tooltip-CwWUegPB.js +43 -0
  364. package/dist/Tooltip-CwWUegPB.js.map +1 -0
  365. package/dist/TreeMapGraph.cjs +1 -1
  366. package/dist/TreeMapGraph.cjs.map +1 -1
  367. package/dist/TreeMapGraph.d.ts +1 -0
  368. package/dist/TreeMapGraph.js +479 -617
  369. package/dist/TreeMapGraph.js.map +1 -1
  370. package/dist/Types.d.ts +1 -0
  371. package/dist/Typography-DX7PlgQU.cjs +2 -0
  372. package/dist/Typography-DX7PlgQU.cjs.map +1 -0
  373. package/dist/Typography-PxtFcnJb.js +142 -0
  374. package/dist/Typography-PxtFcnJb.js.map +1 -0
  375. package/dist/UnitChart.cjs +1 -1
  376. package/dist/UnitChart.cjs.map +1 -1
  377. package/dist/UnitChart.d.ts +1 -0
  378. package/dist/UnitChart.js +160 -212
  379. package/dist/UnitChart.js.map +1 -1
  380. package/dist/XAxesLabels-D5X8jngD.cjs +2 -0
  381. package/dist/XAxesLabels-D5X8jngD.cjs.map +1 -0
  382. package/dist/XAxesLabels-DNO0KmjL.js +73 -0
  383. package/dist/XAxesLabels-DNO0KmjL.js.map +1 -0
  384. package/dist/XTicksAndGridLines-B6CELS7q.cjs +2 -0
  385. package/dist/XTicksAndGridLines-B6CELS7q.cjs.map +1 -0
  386. package/dist/XTicksAndGridLines-CObVFSm4.js +38 -0
  387. package/dist/XTicksAndGridLines-CObVFSm4.js.map +1 -0
  388. package/dist/YAxesLabels-DcS85Beo.cjs +2 -0
  389. package/dist/YAxesLabels-DcS85Beo.cjs.map +1 -0
  390. package/dist/YAxesLabels-Dnnng49-.js +70 -0
  391. package/dist/YAxesLabels-Dnnng49-.js.map +1 -0
  392. package/dist/YTicksAndGridLines-4pxTRlRK.cjs +2 -0
  393. package/dist/YTicksAndGridLines-4pxTRlRK.cjs.map +1 -0
  394. package/dist/YTicksAndGridLines-Blepl7XF.js +38 -0
  395. package/dist/YTicksAndGridLines-Blepl7XF.js.map +1 -0
  396. package/dist/{band-BEjh2CHI.js → band-CyHaVft5.js} +3 -3
  397. package/dist/{band-BEjh2CHI.js.map → band-CyHaVft5.js.map} +1 -1
  398. package/dist/{band-CAApY4Pd.cjs → band-VYfcZeJ2.cjs} +2 -2
  399. package/dist/{band-CAApY4Pd.cjs.map → band-VYfcZeJ2.cjs.map} +1 -1
  400. package/dist/checkIfMultiple-Y9iKaV_u.js +950 -0
  401. package/dist/checkIfMultiple-Y9iKaV_u.js.map +1 -0
  402. package/dist/checkIfMultiple-wg6hJLXy.cjs +12 -0
  403. package/dist/checkIfMultiple-wg6hJLXy.cjs.map +1 -0
  404. package/dist/customArea-BUhPiPT6.js +163 -0
  405. package/dist/{customArea-x4L4xwLl.js.map → customArea-BUhPiPT6.js.map} +1 -1
  406. package/dist/customArea-CMF5g-C3.cjs +2 -0
  407. package/dist/{customArea-1G1S78s_.cjs.map → customArea-CMF5g-C3.cjs.map} +1 -1
  408. package/dist/delaunay-C1uAf38t.js.map +1 -1
  409. package/dist/delaunay-rcy0HhZi.cjs.map +1 -1
  410. package/dist/{ensureCompleteData-DlmibgaI.js → ensureCompleteData-DNKEGRiP.js} +12 -32
  411. package/dist/{ensureCompleteData-DlmibgaI.js.map → ensureCompleteData-DNKEGRiP.js.map} +1 -1
  412. package/dist/{ensureCompleteData-DkQYPeDa.cjs → ensureCompleteData-I6nYmT8E.cjs} +2 -2
  413. package/dist/{ensureCompleteData-DkQYPeDa.cjs.map → ensureCompleteData-I6nYmT8E.cjs.map} +1 -1
  414. package/dist/{excelDownload-BOA-lskf.js → excelDownload-BEC1AyQW.js} +12 -2
  415. package/dist/{excelDownload-BOA-lskf.js.map → excelDownload-BEC1AyQW.js.map} +1 -1
  416. package/dist/excelDownload-BQpsCa62.cjs.map +1 -1
  417. package/dist/{fetchAndParseData-sapWbnYk.js → fetchAndParseData-BpqkBPQL.js} +15 -28
  418. package/dist/{fetchAndParseData-sapWbnYk.js.map → fetchAndParseData-BpqkBPQL.js.map} +1 -1
  419. package/dist/fetchAndParseData-l5HGMAEs.cjs +16 -0
  420. package/dist/{fetchAndParseData-Ba-_CgxS.cjs.map → fetchAndParseData-l5HGMAEs.cjs.map} +1 -1
  421. package/dist/fetchAndParseData.cjs +1 -1
  422. package/dist/fetchAndParseData.js +1 -1
  423. package/dist/{filterData-9nEcQ-Jp.js → filterData-DsAiFzKY.js} +3 -5
  424. package/dist/{filterData-9nEcQ-Jp.js.map → filterData-DsAiFzKY.js.map} +1 -1
  425. package/dist/{filterData-BoYadk0l.cjs → filterData-T5DQBE9b.cjs} +2 -2
  426. package/dist/{filterData-BoYadk0l.cjs.map → filterData-T5DQBE9b.cjs.map} +1 -1
  427. package/dist/generateRandomString-B5zBiJzS.cjs.map +1 -1
  428. package/dist/generateRandomString-za3IQGfQ.js.map +1 -1
  429. package/dist/{getCentroidCoordinates-Dfk6IqEG.js → getCentroidCoordinates-D7r34N4w.js} +2 -2
  430. package/dist/{getCentroidCoordinates-Dfk6IqEG.js.map → getCentroidCoordinates-D7r34N4w.js.map} +1 -1
  431. package/dist/{getCentroidCoordinates-DxTBqzp2.cjs → getCentroidCoordinates-Dng1HVjO.cjs} +2 -2
  432. package/dist/{getCentroidCoordinates-DxTBqzp2.cjs.map → getCentroidCoordinates-Dng1HVjO.cjs.map} +1 -1
  433. package/dist/getGraphList-BpEWn1Tk.js +227 -0
  434. package/dist/{getGraphList-DuColTJM.js.map → getGraphList-BpEWn1Tk.js.map} +1 -1
  435. package/dist/getGraphList-gf02xgT2.cjs.map +1 -1
  436. package/dist/getJenks-BbngDoBQ.js.map +1 -1
  437. package/dist/getJenks-GYmdwBqm.cjs.map +1 -1
  438. package/dist/getNoOfTicks-C_1CFXv_.cjs +2 -0
  439. package/dist/getNoOfTicks-C_1CFXv_.cjs.map +1 -0
  440. package/dist/getNoOfTicks-CpmRjcRF.js +7 -0
  441. package/dist/getNoOfTicks-CpmRjcRF.js.map +1 -0
  442. package/dist/getSchema.cjs.map +1 -1
  443. package/dist/getSchema.js +445 -231
  444. package/dist/getSchema.js.map +1 -1
  445. package/dist/getSliderMarks-BmADcPQt.cjs +6 -0
  446. package/dist/getSliderMarks-BmADcPQt.cjs.map +1 -0
  447. package/dist/getSliderMarks-HIDJ0_Cd.js +1033 -0
  448. package/dist/getSliderMarks-HIDJ0_Cd.js.map +1 -0
  449. package/dist/{getTextColorBasedOnBgColor-B6Nk2WBf.js → getTextColorBasedOnBgColor-CDY808zi.js} +11 -3
  450. package/dist/{getTextColorBasedOnBgColor-B6Nk2WBf.js.map → getTextColorBasedOnBgColor-CDY808zi.js.map} +1 -1
  451. package/dist/getTextColorBasedOnBgColor-nqY-bsM_.cjs.map +1 -1
  452. package/dist/{getUniqValue-DiCh_MOD.js → getUniqValue-BKHCm3zE.js} +2 -4
  453. package/dist/{getUniqValue-DiCh_MOD.js.map → getUniqValue-BKHCm3zE.js.map} +1 -1
  454. package/dist/getUniqValue-RViz8tTw.cjs.map +1 -1
  455. package/dist/{imageDownload-Dcci2LEy.js → imageDownload-BX6SILNZ.js} +4 -2
  456. package/dist/{imageDownload-Dcci2LEy.js.map → imageDownload-BX6SILNZ.js.map} +1 -1
  457. package/dist/imageDownload-CgDcm1Sj.cjs.map +1 -1
  458. package/dist/{index-DvVprvy6.js → index-BZQYSqar.js} +7 -7
  459. package/dist/{index-DvVprvy6.js.map → index-BZQYSqar.js.map} +1 -1
  460. package/dist/index-B_sAFsEV.cjs +2 -0
  461. package/dist/{index-BHe3wsWF.cjs.map → index-B_sAFsEV.cjs.map} +1 -1
  462. package/dist/index-BqfRwk1n.js +146 -0
  463. package/dist/index-BqfRwk1n.js.map +1 -0
  464. package/dist/{index-V_JXij1_.js → index-BuwmuDFJ.js} +3 -3
  465. package/dist/{index-V_JXij1_.js.map → index-BuwmuDFJ.js.map} +1 -1
  466. package/dist/index-C6LorfZ-.cjs +2 -0
  467. package/dist/index-C6LorfZ-.cjs.map +1 -0
  468. package/dist/index-CHPV5EwG-CTPQjnHt.cjs +84 -0
  469. package/dist/index-CHPV5EwG-CTPQjnHt.cjs.map +1 -0
  470. package/dist/{index-CHPV5EwG-DBWUSD9b.js → index-CHPV5EwG-Curnpaqc.js} +724 -625
  471. package/dist/index-CHPV5EwG-Curnpaqc.js.map +1 -0
  472. package/dist/index-Ceppbd8C.js +342 -0
  473. package/dist/index-Ceppbd8C.js.map +1 -0
  474. package/dist/index-Cno4Q0YE.cjs +2 -0
  475. package/dist/{index-CQ3e6Ewi.cjs.map → index-Cno4Q0YE.cjs.map} +1 -1
  476. package/dist/{index-Cw8sCyo_-BuI_jX5Z.js → index-Cw8sCyo_-B2hEKjzG.js} +16 -16
  477. package/dist/{index-Cw8sCyo_-BuI_jX5Z.js.map → index-Cw8sCyo_-B2hEKjzG.js.map} +1 -1
  478. package/dist/{index-Cw8sCyo_-gxT8ADyn.cjs → index-Cw8sCyo_-BrHiWiRF.cjs} +2 -2
  479. package/dist/{index-Cw8sCyo_-gxT8ADyn.cjs.map → index-Cw8sCyo_-BrHiWiRF.cjs.map} +1 -1
  480. package/dist/index-CyZ1lmi_.cjs +2 -0
  481. package/dist/{index-D72cOtq7.cjs.map → index-CyZ1lmi_.cjs.map} +1 -1
  482. package/dist/index-D491FEn1.js +184 -0
  483. package/dist/index-D491FEn1.js.map +1 -0
  484. package/dist/index-DG2bgAva.cjs +10 -0
  485. package/dist/index-DG2bgAva.cjs.map +1 -0
  486. package/dist/index-DRXx7m-C.cjs +2 -0
  487. package/dist/index-DRXx7m-C.cjs.map +1 -0
  488. package/dist/index-DxXnJ8Ti.cjs +2 -0
  489. package/dist/index-DxXnJ8Ti.cjs.map +1 -0
  490. package/dist/{index-Dzc_aaI9-BKklH89r.js → index-Dzc_aaI9-Bb7gobH_.js} +2 -2
  491. package/dist/{index-Dzc_aaI9-BKklH89r.js.map → index-Dzc_aaI9-Bb7gobH_.js.map} +1 -1
  492. package/dist/{index-Dzc_aaI9-RIk2GRHD.cjs → index-Dzc_aaI9-BmkfPMyc.cjs} +2 -2
  493. package/dist/{index-Dzc_aaI9-RIk2GRHD.cjs.map → index-Dzc_aaI9-BmkfPMyc.cjs.map} +1 -1
  494. package/dist/{index-9tDEUqOZ.js → index-GEsywGxz.js} +9 -9
  495. package/dist/index-GEsywGxz.js.map +1 -0
  496. package/dist/index-SKgJALZg.js +99 -0
  497. package/dist/{index-Bw_eHBVN.js.map → index-SKgJALZg.js.map} +1 -1
  498. package/dist/index.cjs +1 -1
  499. package/dist/index.d.ts +10 -8
  500. package/dist/index.js +13 -13
  501. package/dist/{init-BhZylTFx.js → init-BJFW6EwE.js} +3 -3
  502. package/dist/{init-BhZylTFx.js.map → init-BJFW6EwE.js.map} +1 -1
  503. package/dist/{linear-BVckp9RD.cjs → linear-BwPAspcq.cjs} +2 -2
  504. package/dist/{linear-BVckp9RD.cjs.map → linear-BwPAspcq.cjs.map} +1 -1
  505. package/dist/{linear-DUdu7l2G.js → linear-BwnDd9KF.js} +3 -3
  506. package/dist/{linear-DUdu7l2G.js.map → linear-BwnDd9KF.js.map} +1 -1
  507. package/dist/numberFormattingFunction-02t-wJta.cjs.map +1 -1
  508. package/dist/numberFormattingFunction-14YCbkN2.js.map +1 -1
  509. package/dist/{ordinal-BOeNbyae.cjs → ordinal-CrsysVE-.cjs} +2 -2
  510. package/dist/ordinal-CrsysVE-.cjs.map +1 -0
  511. package/dist/{ordinal-w9Lu4Stb.js → ordinal-P77xw8aL.js} +24 -24
  512. package/dist/ordinal-P77xw8aL.js.map +1 -0
  513. package/dist/{pow-e8zx3AQJ.js → pow-DE4c7dbW.js} +3 -3
  514. package/dist/{pow-e8zx3AQJ.js.map → pow-DE4c7dbW.js.map} +1 -1
  515. package/dist/{pow-B5-jkdHU.cjs → pow-DgrUorRi.cjs} +2 -2
  516. package/dist/{pow-B5-jkdHU.cjs.map → pow-DgrUorRi.cjs.map} +1 -1
  517. package/dist/{proxy-BYIC9BuT.js → proxy-BxkFHwUw.js} +144 -134
  518. package/dist/proxy-BxkFHwUw.js.map +1 -0
  519. package/dist/proxy-BxvUI_9l.cjs +2 -0
  520. package/dist/proxy-BxvUI_9l.cjs.map +1 -0
  521. package/dist/{removeOutliers-DR48e-18.js → removeOutliers-BqW0sPqj.js} +2 -5
  522. package/dist/{removeOutliers-DR48e-18.js.map → removeOutliers-BqW0sPqj.js.map} +1 -1
  523. package/dist/removeOutliers-WELHHqiI.cjs.map +1 -1
  524. package/dist/{sort-DfK1b0F5.js → sort-BIvMlUH1.js} +5 -5
  525. package/dist/{sort-DfK1b0F5.js.map → sort-BIvMlUH1.js.map} +1 -1
  526. package/dist/{string-CRoCZCYa.cjs → string-C-kRh1bQ.cjs} +2 -2
  527. package/dist/{string-CRoCZCYa.cjs.map → string-C-kRh1bQ.cjs.map} +1 -1
  528. package/dist/{string-B8KlVSPX.js → string-C_xJ4Wg4.js} +3 -3
  529. package/dist/{string-B8KlVSPX.js.map → string-C_xJ4Wg4.js.map} +1 -1
  530. package/dist/string2HTML-CPGr_I5E.cjs +3 -0
  531. package/dist/{string2HTML-z7CwHXcx.cjs.map → string2HTML-CPGr_I5E.cjs.map} +1 -1
  532. package/dist/{string2HTML-oFCROsus.js → string2HTML-DhG75NqA.js} +15 -9
  533. package/dist/{string2HTML-oFCROsus.js.map → string2HTML-DhG75NqA.js.map} +1 -1
  534. package/dist/style.css +1 -1
  535. package/dist/{svgDownload-C2-E3yf2.js → svgDownload-BAoarWNt.js} +4 -2
  536. package/dist/{svgDownload-C2-E3yf2.js.map → svgDownload-BAoarWNt.js.map} +1 -1
  537. package/dist/svgDownload-D9zEGjTF.cjs.map +1 -1
  538. package/dist/{threshold-DFfqcDMa.js → threshold-Bgr20hik.js} +2 -2
  539. package/dist/{threshold-DFfqcDMa.js.map → threshold-Bgr20hik.js.map} +1 -1
  540. package/dist/{time-Byw_jYQ7.cjs → time-CZd5YLSP.cjs} +2 -2
  541. package/dist/{time-Byw_jYQ7.cjs.map → time-CZd5YLSP.cjs.map} +1 -1
  542. package/dist/{time-BzJP5SPC.js → time-DCCfQk3V.js} +3 -3
  543. package/dist/{time-BzJP5SPC.js.map → time-DCCfQk3V.js.map} +1 -1
  544. package/dist/transformData.cjs +1 -1
  545. package/dist/transformData.js +3 -3
  546. package/dist/transformDataForAggregation-CE3bAlHU.js +585 -0
  547. package/dist/{transformDataForAggregation-sBpdlX8n.js.map → transformDataForAggregation-CE3bAlHU.js.map} +1 -1
  548. package/dist/transformDataForAggregation-KXGm6flX.cjs.map +1 -1
  549. package/dist/transformDataForGraphFromFile-BExxcITV.js +14 -0
  550. package/dist/{transformDataForGraphFromFile-ComYvzuz.js.map → transformDataForGraphFromFile-BExxcITV.js.map} +1 -1
  551. package/dist/{transformDataForGraphFromFile-DVZodTHd.cjs → transformDataForGraphFromFile-DaJHQCsL.cjs} +2 -2
  552. package/dist/{transformDataForGraphFromFile-DVZodTHd.cjs.map → transformDataForGraphFromFile-DaJHQCsL.cjs.map} +1 -1
  553. package/dist/transformDataForSelect-D8AuvYdf.js.map +1 -1
  554. package/dist/transformDataForSelect-YmStusCI.cjs.map +1 -1
  555. package/dist/uniqBy-BHy4I8PK.js.map +1 -1
  556. package/dist/uniqBy-O05lp2S5.cjs.map +1 -1
  557. package/dist/{use-in-view-DR-UTB96.js → use-in-view-Cxa7y1TH.js} +2 -2
  558. package/dist/use-in-view-Cxa7y1TH.js.map +1 -0
  559. package/dist/use-in-view-QcfiW0w3.cjs +2 -0
  560. package/dist/use-in-view-QcfiW0w3.cjs.map +1 -0
  561. package/dist/utils.cjs +1 -1
  562. package/dist/utils.js +8 -8
  563. package/dist/validateSchema.cjs.map +1 -1
  564. package/dist/validateSchema.js +33 -29
  565. package/dist/validateSchema.js.map +1 -1
  566. package/dist/{x-BBpi7a_7-Dz2vKSfu.cjs → x-BBpi7a_7-mTo40uId.cjs} +2 -2
  567. package/dist/{x-BBpi7a_7-Dz2vKSfu.cjs.map → x-BBpi7a_7-mTo40uId.cjs.map} +1 -1
  568. package/dist/{y-D0sAaVii.js → y-BqfogMAB.js} +3 -3
  569. package/dist/{y-D0sAaVii.js.map → y-BqfogMAB.js.map} +1 -1
  570. package/dist/{zoom-QipiAl5W.js → zoom-C9MFjAaV.js} +5 -5
  571. package/dist/{zoom-QipiAl5W.js.map → zoom-C9MFjAaV.js.map} +1 -1
  572. package/dist/zoom-DPw8bba-.cjs +2 -0
  573. package/dist/{zoom-BiMNsz72.cjs.map → zoom-DPw8bba-.cjs.map} +1 -1
  574. package/package.json +7 -6
  575. package/dist/Axis-4gUOL8B7.js +0 -43
  576. package/dist/Axis-4gUOL8B7.js.map +0 -1
  577. package/dist/Axis-CkNn1wit.cjs +0 -2
  578. package/dist/Axis-CkNn1wit.cjs.map +0 -1
  579. package/dist/AxisTitle-Wkz-xeQL.cjs +0 -2
  580. package/dist/AxisTitle-Wkz-xeQL.cjs.map +0 -1
  581. package/dist/AxisTitle-v6_xcXZ-.js +0 -20
  582. package/dist/AxisTitle-v6_xcXZ-.js.map +0 -1
  583. package/dist/DropdownSelect-6kjXM6oW.js.map +0 -1
  584. package/dist/DropdownSelect-vt8yiB-g.cjs +0 -29
  585. package/dist/DropdownSelect-vt8yiB-g.cjs.map +0 -1
  586. package/dist/EmptyState-36lXXyui.js +0 -22
  587. package/dist/EmptyState-B8IpKGcL.cjs +0 -2
  588. package/dist/GraphEl-2IiUDxjR.js.map +0 -1
  589. package/dist/GraphEl-qrlfGPe3.cjs +0 -2
  590. package/dist/GraphEl-qrlfGPe3.cjs.map +0 -1
  591. package/dist/Modal-Cg8daIlV.js +0 -1030
  592. package/dist/Modal-Cg8daIlV.js.map +0 -1
  593. package/dist/Modal-CuuJdWkD.cjs +0 -46
  594. package/dist/Modal-CuuJdWkD.cjs.map +0 -1
  595. package/dist/ReferenceLine-CPMaAX0r.js +0 -128
  596. package/dist/ReferenceLine-CPMaAX0r.js.map +0 -1
  597. package/dist/ReferenceLine-D04j-zeV.cjs +0 -2
  598. package/dist/ReferenceLine-D04j-zeV.cjs.map +0 -1
  599. package/dist/RegressionLine-CW7iViH2.js +0 -49
  600. package/dist/RegressionLine-CW7iViH2.js.map +0 -1
  601. package/dist/RegressionLine-D-49RaHa.cjs +0 -2
  602. package/dist/RegressionLine-D-49RaHa.cjs.map +0 -1
  603. package/dist/Spinner-Bpz70q_g.js +0 -30
  604. package/dist/Spinner-Bpz70q_g.js.map +0 -1
  605. package/dist/Spinner-C6wLp85s.cjs +0 -2
  606. package/dist/Spinner-C6wLp85s.cjs.map +0 -1
  607. package/dist/Tooltip-6LIdPQGC.js +0 -46
  608. package/dist/Tooltip-6LIdPQGC.js.map +0 -1
  609. package/dist/Tooltip-Cpv0QohJ.cjs +0 -2
  610. package/dist/Tooltip-Cpv0QohJ.cjs.map +0 -1
  611. package/dist/Typography-BDULiwlF.cjs +0 -2
  612. package/dist/Typography-BDULiwlF.cjs.map +0 -1
  613. package/dist/Typography-LmZ9LEpe.js +0 -140
  614. package/dist/Typography-LmZ9LEpe.js.map +0 -1
  615. package/dist/XAxesLabels-CLZnBgSr.cjs +0 -2
  616. package/dist/XAxesLabels-CLZnBgSr.cjs.map +0 -1
  617. package/dist/XAxesLabels-SOSmso5J.js +0 -57
  618. package/dist/XAxesLabels-SOSmso5J.js.map +0 -1
  619. package/dist/XTicksAndGridLines-DuydSnZ_.js +0 -56
  620. package/dist/XTicksAndGridLines-DuydSnZ_.js.map +0 -1
  621. package/dist/XTicksAndGridLines-RKy7BVCO.cjs +0 -2
  622. package/dist/XTicksAndGridLines-RKy7BVCO.cjs.map +0 -1
  623. package/dist/YAxesLabels-DlDyLvhi.js +0 -52
  624. package/dist/YAxesLabels-DlDyLvhi.js.map +0 -1
  625. package/dist/YAxesLabels-Dqd259-t.cjs +0 -2
  626. package/dist/YAxesLabels-Dqd259-t.cjs.map +0 -1
  627. package/dist/YTicksAndGridLines-7t4MKtGw.js +0 -56
  628. package/dist/YTicksAndGridLines-7t4MKtGw.js.map +0 -1
  629. package/dist/YTicksAndGridLines-qGpRo_t1.cjs +0 -2
  630. package/dist/YTicksAndGridLines-qGpRo_t1.cjs.map +0 -1
  631. package/dist/checkIfMultiple-Dko_cBvE.cjs +0 -12
  632. package/dist/checkIfMultiple-Dko_cBvE.cjs.map +0 -1
  633. package/dist/checkIfMultiple-u2SmbiCf.js +0 -912
  634. package/dist/checkIfMultiple-u2SmbiCf.js.map +0 -1
  635. package/dist/customArea-1G1S78s_.cjs +0 -2
  636. package/dist/customArea-x4L4xwLl.js +0 -175
  637. package/dist/fetchAndParseData-Ba-_CgxS.cjs +0 -16
  638. package/dist/getGraphList-DuColTJM.js +0 -265
  639. package/dist/getSliderMarks-CUxPy36E.cjs +0 -6
  640. package/dist/getSliderMarks-CUxPy36E.cjs.map +0 -1
  641. package/dist/getSliderMarks-_pYOWEtO.js +0 -1023
  642. package/dist/getSliderMarks-_pYOWEtO.js.map +0 -1
  643. package/dist/index-9tDEUqOZ.js.map +0 -1
  644. package/dist/index-BHe3wsWF.cjs +0 -2
  645. package/dist/index-Bw_eHBVN.js +0 -77
  646. package/dist/index-C0bpbS4F.cjs +0 -2
  647. package/dist/index-C0bpbS4F.cjs.map +0 -1
  648. package/dist/index-CE9pmfxt.js +0 -430
  649. package/dist/index-CE9pmfxt.js.map +0 -1
  650. package/dist/index-CEJwW3lL.cjs +0 -2
  651. package/dist/index-CEJwW3lL.cjs.map +0 -1
  652. package/dist/index-CHPV5EwG-DBWUSD9b.js.map +0 -1
  653. package/dist/index-CHPV5EwG-DjM48pIC.cjs +0 -44
  654. package/dist/index-CHPV5EwG-DjM48pIC.cjs.map +0 -1
  655. package/dist/index-CQ3e6Ewi.cjs +0 -2
  656. package/dist/index-Cm8NIdOO.cjs +0 -10
  657. package/dist/index-Cm8NIdOO.cjs.map +0 -1
  658. package/dist/index-CoZbeNM9.cjs +0 -2
  659. package/dist/index-CoZbeNM9.cjs.map +0 -1
  660. package/dist/index-Cwgh7i7X.js +0 -122
  661. package/dist/index-Cwgh7i7X.js.map +0 -1
  662. package/dist/index-D72cOtq7.cjs +0 -2
  663. package/dist/index-zZjQEHlm.js +0 -342
  664. package/dist/index-zZjQEHlm.js.map +0 -1
  665. package/dist/ordinal-BOeNbyae.cjs.map +0 -1
  666. package/dist/ordinal-w9Lu4Stb.js.map +0 -1
  667. package/dist/proxy-BYIC9BuT.js.map +0 -1
  668. package/dist/proxy-CKadx4lC.cjs +0 -2
  669. package/dist/proxy-CKadx4lC.cjs.map +0 -1
  670. package/dist/string2HTML-z7CwHXcx.cjs +0 -3
  671. package/dist/transformDataForAggregation-sBpdlX8n.js +0 -755
  672. package/dist/transformDataForGraphFromFile-ComYvzuz.js +0 -24
  673. package/dist/use-in-view-CEwlc_dd.cjs +0 -2
  674. package/dist/use-in-view-CEwlc_dd.cjs.map +0 -1
  675. package/dist/use-in-view-DR-UTB96.js.map +0 -1
  676. package/dist/zoom-BiMNsz72.cjs +0 -2
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./index-CHPV5EwG-DjM48pIC.cjs"),g=require("react"),d=require("./parse-hMnG_lRV.cjs"),De=require("./index-CQ3e6Ewi.cjs"),qe=require("./numberFormattingFunction-02t-wJta.cjs"),Me=require("./Tooltip-Cpv0QohJ.cjs"),h=require("./checkIfNullOrUndefined-BCW3Y1ML.cjs"),Ae=require("./customArea-1G1S78s_.cjs"),$e=require("./AxisTitle-Wkz-xeQL.cjs"),Te=require("./Axis-CkNn1wit.cjs"),Ve=require("./XTicksAndGridLines-RKy7BVCO.cjs"),Ue=require("./ReferenceLine-D04j-zeV.cjs"),Fe=require("./YTicksAndGridLines-qGpRo_t1.cjs"),He=require("./index-BHe3wsWF.cjs"),A=require("./Colors.cjs"),fe=require("./uniqBy-O05lp2S5.cjs"),We=require("./sort-O96oMZLb.cjs"),Le=require("./init-DU0ybBc_.cjs"),Ge=require("./time-Byw_jYQ7.cjs"),Ye=require("./linear-BVckp9RD.cjs"),Pe=require("./delaunay-rcy0HhZi.cjs"),Ie=require("./line-DHV4JwCR.cjs"),he=require("./step-BZ3C8QFW.cjs"),Xe=require("./select-Bnfk0lJx.cjs"),Be=require("./pointer-Dkq5NV1q.cjs"),ze=require("./use-in-view-CEwlc_dd.cjs"),Y=require("./proxy-CKadx4lC.cjs"),Je=require("./GraphFooter.cjs"),Ke=require("./GraphHeader.cjs"),Qe=require("./EmptyState-B8IpKGcL.cjs"),Ze=require("./ColorLegendWithMouseOver.cjs");function _e(de){const{data:n,width:I,height:K,lineColors:r,dateFormat:x,noOfXTicks:ge,rightMargin:_,topMargin:pe,bottomMargin:P,suffix:N,prefix:m,leftMargin:C,tooltip:ee,onSeriesMouseOver:T,refValues:Q,highlightAreaSettings:S,minValue:X,maxValue:te,highlightedLines:k,animate:s,rtl:ie,strokeWidth:D,showDots:B,annotations:ye,customHighlightAreaSettings:je,yAxisTitle:oe,noOfYTicks:we,minDate:re,maxDate:ne,curveType:z,styles:O,colorDomain:p,selectedColor:V,classNames:y,showLabels:U,dimmedOpacity:R,precision:q,naLabel:be,customLayers:se}=de,ae=g.useRef(null),j=ze.useInView(ae,{once:s.once,amount:s.amount}),[E,ve]=g.useState(!1);g.useEffect(()=>{if(j&&!E){const e=setTimeout(()=>{ve(!0)},(s.duration+.5)*1e3);return()=>clearTimeout(e)}},[j,E,s.duration]);const Oe=z==="linear"?Ie.curveLinear:z==="step"?he.curveStep:z==="stepAfter"?he.stepAfter:z==="stepBefore"?he.stepBefore:he.monotoneX,l=De.orderBy(n.map(e=>({...e,date:d.parse(`${e.date}`,x,new Date)})),["date"],["asc"]).filter(e=>!h.checkIfNullOrUndefined(e.y)),Ce=fe.uniqBy(l,"label",!0),Z=We.sort(fe.uniqBy(n,"date",!0).map(e=>d.parse(`${e}`,x,new Date)),(e,i)=>Le.ascending(e,i)),[f,w]=g.useState(void 0),[L,F]=g.useState(void 0),[le,H]=g.useState(void 0),b={top:pe,bottom:P,left:oe?C+30:C,right:_},W=g.useRef(null),ce=Ce.map(e=>De.orderBy(l.filter(i=>i.label==e),["date"],["asc"])),ue=S.map(e=>({...e,coordinates:[e.coordinates[0]===null?null:d.parse(`${e.coordinates[0]}`,x,new Date),e.coordinates[1]===null?null:d.parse(`${e.coordinates[1]}`,x,new Date)]})),xe=je.map(e=>({...e,coordinates:e.coordinates.map((i,u)=>u%2===0?d.parse(`${i}`,x,new Date):i)})),v=I-b.left-b.right,M=K-b.top-b.bottom,G=re?d.parse(`${re}`,x,new Date):Z[0],me=ne?d.parse(`${ne}`,x,new Date):Z[Z.length-1],o=h.checkIfNullOrUndefined(X)?Math.min(...l.map(e=>e.y).filter(e=>!h.checkIfNullOrUndefined(e)))?Math.min(...l.map(e=>e.y).filter(e=>!h.checkIfNullOrUndefined(e)))>0?0:Math.min(...l.map(e=>e.y).filter(e=>!h.checkIfNullOrUndefined(e))):0:X,J=Math.max(...l.map(e=>e.y).filter(e=>!h.checkIfNullOrUndefined(e)))?Math.max(...l.map(e=>e.y).filter(e=>!h.checkIfNullOrUndefined(e))):0,a=Ge.time().domain([G,me]).range([0,v]),c=Ye.linear().domain([h.checkIfNullOrUndefined(X)?o:X,h.checkIfNullOrUndefined(te)?J>0?J:0:te]).range([M,0]).nice(),Se=Pe.Delaunay.from(l.filter(e=>!h.checkIfNullOrUndefined(e.date)&&!h.checkIfNullOrUndefined(e.y)),e=>a(e.date),e=>c(e.y)).voronoi([0,0,v<0?0:v,M<0?0:M]),Re=Ie.line().x(e=>a(e.date)).y(e=>c(e.y)).curve(Oe),Ne=c.ticks(we),ke=a.ticks(ge);return g.useEffect(()=>{const e=u=>{const $=l[Le.bisectCenter(l.map(Ee=>Ee.date),a.invert(Be.pointer(u)[0]),0)];w($||l[l.length-1]),H(u.clientY),F(u.clientX),T?.($||l[l.length-1])},i=()=>{w(void 0),F(void 0),H(void 0)};Xe.select(W.current).on("mousemove",e).on("mouseout",i),T?.(void 0)},[a,l,T]),t.jsxRuntimeExports.jsxs(t.jsxRuntimeExports.Fragment,{children:[t.jsxRuntimeExports.jsx(Y.motion.svg,{width:`${I}px`,height:`${K}px`,viewBox:`0 0 ${I} ${K}`,direction:"ltr",ref:ae,children:t.jsxRuntimeExports.jsxs("g",{transform:`translate(${b.left},${b.top})`,children:[t.jsxRuntimeExports.jsx(He.HighlightArea,{areaSettings:ue,width:v,height:M,scale:a,animate:s,isInView:j}),t.jsxRuntimeExports.jsx(Ae.CustomArea,{areaSettings:xe,scaleX:a,scaleY:c,animate:s,isInView:j}),t.jsxRuntimeExports.jsxs("g",{children:[t.jsxRuntimeExports.jsx(Fe.YTicksAndGridLines,{values:Ne.filter(e=>e!==0),y:Ne.filter(e=>e!==0).map(e=>c(e)),x1:0-C,x2:v+b.right,styles:{gridLines:O?.yAxis?.gridLines,labels:O?.yAxis?.labels},classNames:{gridLines:y?.yAxis?.gridLines,labels:y?.yAxis?.labels},suffix:N,prefix:m,labelType:"secondary",showGridLines:!0,labelPos:"vertical",precision:q}),t.jsxRuntimeExports.jsx(Te.Axis,{y1:c(o<0?0:o),y2:c(o<0?0:o),x1:0-C,x2:v+b.right,label:qe.numberFormattingFunction(o<0?0:o,"NA",q,m,N),labelPos:{x:0-C,y:c(o<0?0:o),dx:0,dy:J<0?"1em":-5},classNames:{axis:y?.xAxis?.axis,label:y?.yAxis?.labels},styles:{axis:O?.xAxis?.axis,label:O?.yAxis?.labels}}),t.jsxRuntimeExports.jsx($e.AxisTitle,{x:0-C-15,y:M/2,style:O?.yAxis?.title,className:y?.yAxis?.title,text:oe,rotate90:!0})]}),t.jsxRuntimeExports.jsx("g",{children:t.jsxRuntimeExports.jsx(Ve.XTicksAndGridLines,{values:ke.map(e=>d.format(e,x)),x:ke.map(e=>a(e)),y1:0,y2:M,styles:{gridLines:O?.xAxis?.gridLines,labels:O?.xAxis?.labels},classNames:{gridLines:t.mo("opacity-0",y?.xAxis?.gridLines),labels:t.mo("fill-primary-gray-700 dark:fill-primary-gray-300 xs:max-[360px]:hidden text-[9px] md:text-[10px] lg:text-xs",y?.xAxis?.labels)},suffix:N,prefix:m,labelType:"primary",showGridLines:!0,precision:q})}),se.filter(e=>e.position==="before").map(e=>e.layer),t.jsxRuntimeExports.jsxs(Y.motion.g,{children:[ce.map(e=>t.jsxRuntimeExports.jsxs(Y.motion.g,{exit:{opacity:0,transition:{duration:s.duration}},variants:{initial:{opacity:f?e[0].label===f.label?1:R:V?e[0].color&&r[p.indexOf(e[0].color)]===V?1:R:k.length!==0?k.indexOf(e[0].label)!==-1?1:R:1},whileInView:{opacity:f?e[0].label===f.label?1:R:V?e[0].color&&r[p.indexOf(e[0].color)]===V?1:R:k.length!==0?k.indexOf(e[0].label)!==-1?1:R:1,transition:{duration:s.duration}}},initial:"initial",animate:j?"whileInView":"initial",children:[t.jsxRuntimeExports.jsx(Y.motion.path,{d:Re(e.filter(i=>!h.checkIfNullOrUndefined(i.y)))||"",style:{fill:"none",strokeWidth:f?e[0].label===f.label?D+Math.max(2,.5*D):D:k.length!==0&&k.indexOf(e[0].label)!==-1?D+Math.max(2,.5*D):D},exit:{opacity:0,transition:{duration:s.duration}},variants:{initial:{pathLength:0,d:Re(e.filter(i=>!h.checkIfNullOrUndefined(i.y)))||"",opacity:1,stroke:n.filter(i=>i.color).length===0?r[0]:e[0].color?r[p.indexOf(e[0].color)]:A.Colors.gray},whileInView:{pathLength:1,d:Re(e.filter(i=>!h.checkIfNullOrUndefined(i.y)))||"",opacity:1,stroke:n.filter(i=>i.color).length===0?r[0]:e[0].color?r[p.indexOf(e[0].color)]:A.Colors.gray,transition:{duration:s.duration}}},initial:"initial",animate:j?"whileInView":"initial"}),e.map((i,u)=>t.jsxRuntimeExports.jsx(Y.motion.g,{children:h.checkIfNullOrUndefined(i.y)?null:t.jsxRuntimeExports.jsx(t.jsxRuntimeExports.Fragment,{children:B?t.jsxRuntimeExports.jsx(Y.motion.circle,{r:v/e.length<5?0:v/e.length<20?2:4,exit:{opacity:0,transition:{duration:s.duration}},variants:{initial:{opacity:0,fill:n.filter($=>$.color).length===0?r[0]:e[0].color?r[p.indexOf(e[0].color)]:A.Colors.gray,cx:a(i.date),cy:c(i.y)},whileInView:{opacity:1,fill:n.filter($=>$.color).length===0?r[0]:e[0].color?r[p.indexOf(e[0].color)]:A.Colors.gray,transition:{duration:E?s.duration:.5,delay:E?0:s.duration},cx:a(i.date),cy:c(i.y)}},initial:"initial",animate:j?"whileInView":"initial"}):null})},u)),(k.indexOf(e[0].label)!==-1||f?.label===e[0].label)&&U?t.jsxRuntimeExports.jsx(Y.motion.text,{className:"text-sm font-bold",dx:5,dy:4,exit:{opacity:0,transition:{duration:s.duration}},variants:{initial:{opacity:0,fill:n.filter(i=>i.color).length===0?r[0]:e[0].color?r[p.indexOf(e[0].color)]:A.Colors.gray,x:a(e[e.length-1].date),y:c(e[e.length-1].y)},whileInView:{opacity:1,fill:n.filter(i=>i.color).length===0?r[0]:e[0].color?r[p.indexOf(e[0].color)]:A.Colors.gray,x:a(e[e.length-1].date),y:c(e[e.length-1].y),transition:{duration:E?s.duration:.5,delay:E?0:s.duration}}},initial:"initial",animate:j?"whileInView":"initial",children:e[0].label}):null]},e[0].label)),f?t.jsxRuntimeExports.jsx("text",{y:c(f.y)-8,x:a(f.date),className:t.mo("graph-value text-sm font-bold",y?.graphObjectValues),style:{fill:n.filter(e=>e.color).length===0?r[0]:f.color?r[p.indexOf(f.color)]:A.Colors.gray,textAnchor:"middle",...O?.graphObjectValues||{}},children:qe.numberFormattingFunction(f.y,be,q,m,N)}):null]}),l.filter(e=>!h.checkIfNullOrUndefined(e.y)).map((e,i)=>t.jsxRuntimeExports.jsx("g",{children:t.jsxRuntimeExports.jsx("path",{d:Se.renderCell(l.findIndex(u=>u.label===e.label&&u.date===e.date)),opacity:0,onMouseEnter:u=>{w(e),H(u.clientY),F(u.clientX),T?.(e)},onMouseMove:u=>{w(e),H(u.clientY),F(u.clientX)},onMouseLeave:()=>{w(void 0),F(void 0),H(void 0),T?.(void 0)}})},i)),Q?t.jsxRuntimeExports.jsx(t.jsxRuntimeExports.Fragment,{children:Q.map((e,i)=>t.jsxRuntimeExports.jsx(Ue.RefLineY,{text:e.text,color:e.color,y:c(e.value),x1:0-C,x2:v+b.right,classNames:e.classNames,styles:e.styles,animate:s,isInView:j},i))}):null,t.jsxRuntimeExports.jsx("g",{children:ye.map((e,i)=>{const u=Ae.getLineEndPoint({x:e.xCoordinate?a(d.parse(`${e.xCoordinate}`,x,new Date))+(e.xOffset||0):0+(e.xOffset||0),y:e.yCoordinate?c(e.yCoordinate)+(e.yOffset||0)-8:0+(e.yOffset||0)-8},{x:e.xCoordinate?a(d.parse(`${e.xCoordinate}`,x,new Date)):0,y:e.yCoordinate?c(e.yCoordinate):0},h.checkIfNullOrUndefined(e.connectorRadius)?3.5:e.connectorRadius),$=e.showConnector?{y1:u.y,x1:u.x,y2:e.yCoordinate?c(e.yCoordinate)+(e.yOffset||0):0+(e.yOffset||0),x2:e.xCoordinate?a(d.parse(`${e.xCoordinate}`,x,new Date))+(e.xOffset||0):0+(e.xOffset||0),cy:e.yCoordinate?c(e.yCoordinate):0,cx:e.xCoordinate?a(d.parse(`${e.xCoordinate}`,x,new Date)):0,circleRadius:h.checkIfNullOrUndefined(e.connectorRadius)?3.5:e.connectorRadius,strokeWidth:e.showConnector===!0?2:Math.min(e.showConnector||0,1)}:void 0,Ee={y:e.yCoordinate?c(e.yCoordinate)+(e.yOffset||0)-8:0+(e.yOffset||0)-8,x:ie?0:e.xCoordinate?a(d.parse(`${e.xCoordinate}`,x,new Date))+(e.xOffset||0):0+(e.xOffset||0),width:ie?e.xCoordinate?a(d.parse(`${e.xCoordinate}`,x,new Date))+(e.xOffset||0):0+(e.xOffset||0):v+b.right-(e.xCoordinate?a(d.parse(`${e.xCoordinate}`,x,new Date))+(e.xOffset||0):0+(e.xOffset||0)),maxWidth:e.maxWidth,fontWeight:e.fontWeight,align:e.align};return t.jsxRuntimeExports.jsx(Ae.Annotation,{color:e.color,connectorsSettings:$,labelSettings:Ee,text:e.text,classNames:e.classNames,styles:e.styles,animate:s,isInView:j},i)})}),se.filter(e=>e.position==="after").map(e=>e.layer)]})}),f&&ee&&L&&le?t.jsxRuntimeExports.jsx(Me.Tooltip,{data:f,body:ee,xPos:L,yPos:le,backgroundStyle:O?.tooltip,className:y?.tooltip}):null]})}function et(de){const{data:n,graphTitle:I,showNAColor:K=!0,colors:r,colorDomain:x,suffix:ge="",sources:_,prefix:pe="",graphDescription:P,height:N,width:m,footNote:C,noOfXTicks:ee=10,dateFormat:T="yyyy",padding:Q,backgroundColor:S=!1,leftMargin:X=30,rightMargin:te=50,topMargin:k=20,bottomMargin:s=25,showColorScale:ie=!0,tooltip:D,relativeHeight:B,onSeriesMouseOver:ye,showLabels:je=!0,refValues:oe=[],highlightAreaSettings:we=[],graphID:re,minValue:ne,maxValue:z,highlightedLines:O=[],graphDownload:p=!1,dataDownload:V=!1,animate:y=!1,language:U="en",colorLegendTitle:R,minHeight:q=0,strokeWidth:be=2,showDots:se=!0,annotations:ae=[],customHighlightAreaSettings:j=[],theme:E="light",ariaLabel:ve,yAxisTitle:Oe,noOfYTicks:l=5,minDate:Ce,maxDate:Z,curveType:f="curve",styles:w,classNames:L,dimmedOpacity:F=.3,precision:le=2,customLayers:H=[],naLabel:b="NA"}=de,[W,ce]=g.useState(0),[ue,xe]=g.useState(0),[v,M]=g.useState(void 0),G=g.useRef(null),me=g.useRef(null);return g.useEffect(()=>{const o=new ResizeObserver(J=>{ce(m||J[0].target.clientWidth||620),xe(N||J[0].target.clientHeight||480)});return G.current&&(xe(G.current.clientHeight||480),ce(G.current.clientWidth||620),m||o.observe(G.current)),()=>o.disconnect()},[m,N]),t.jsxRuntimeExports.jsx("div",{className:`${E||"light"} flex ${m?"w-fit grow-0":"w-full grow"}`,dir:U==="he"||U==="ar"?"rtl":void 0,children:t.jsxRuntimeExports.jsx("div",{className:t.mo(`${S?S===!0?"bg-primary-gray-200 dark:bg-primary-gray-650 ":"":"bg-transparent "}ml-auto mr-auto flex flex-col grow h-inherit ${U||"en"}`,m?"w-fit":"w-full",L?.graphContainer),style:{...w?.graphContainer||{},...S&&S!==!0?{backgroundColor:S}:{}},id:re,ref:me,"aria-label":ve||`${I?`The graph shows ${I}. `:""}This is a multi-line chart that shows trends over time.${P?` ${P}`:""}`,children:t.jsxRuntimeExports.jsx("div",{className:"flex grow",style:{padding:S?Q||"1rem":Q||0},children:t.jsxRuntimeExports.jsxs("div",{className:"flex flex-col w-full gap-4 grow justify-between",children:[I||P||p||V?t.jsxRuntimeExports.jsx(Ke.GraphHeader,{styles:{title:w?.title,description:w?.description},classNames:{title:L?.title,description:L?.description},graphTitle:I,graphDescription:P,width:m,graphDownload:p?me.current:void 0,dataDownload:V?n.map(o=>o.data).filter(o=>o!==void 0).length>0?n.map(o=>o.data).filter(o=>o!==void 0):n.filter(o=>o!==void 0):null}):null,t.jsxRuntimeExports.jsx("div",{className:"grow flex flex-col justify-center gap-3 w-full",children:n.length===0?t.jsxRuntimeExports.jsx(Qe.EmptyState,{}):t.jsxRuntimeExports.jsxs(t.jsxRuntimeExports.Fragment,{children:[ie&&n.filter(o=>o.color).length!==0?t.jsxRuntimeExports.jsx(Ze.ColorLegendWithMouseOver,{width:m,colorLegendTitle:R,colors:r||A.Colors[E].categoricalColors.colors,colorDomain:x||fe.uniqBy(n,"color",!0),setSelectedColor:M,showNAColor:K}):null,t.jsxRuntimeExports.jsx("div",{className:"w-full grow leading-0",ref:G,"aria-label":"Graph area",children:(m||W)&&(N||ue)?t.jsxRuntimeExports.jsx(_e,{data:n,lineColors:n.filter(o=>o.color).length===0?r?[r]:[A.Colors.primaryColors["blue-600"]]:r||A.Colors[E].categoricalColors.colors,width:m||W,height:Math.max(q,N||(B?q?(m||W)*B>q?(m||W)*B:q:(m||W)*B:ue)),dateFormat:T,noOfXTicks:ee,leftMargin:X,rightMargin:te,topMargin:k,bottomMargin:s,tooltip:D,onSeriesMouseOver:ye,suffix:ge,prefix:pe,highlightAreaSettings:we,refValues:oe,minValue:ne,maxValue:z,highlightedLines:O,animate:y===!0?{duration:.5,once:!0,amount:.5}:y||{duration:0,once:!0,amount:0},rtl:U==="he"||U==="ar",strokeWidth:be,showDots:se,annotations:ae,customHighlightAreaSettings:j,yAxisTitle:Oe,noOfYTicks:l,minDate:Ce,maxDate:Z,curveType:f,styles:w,classNames:L,selectedColor:v,showLabels:je,colorDomain:n.filter(o=>o.color).length===0?[]:x||fe.uniqBy(n,"color",!0),dimmedOpacity:F,precision:le,customLayers:H,naLabel:b}):null})]})}),_||C?t.jsxRuntimeExports.jsx(Je.GraphFooter,{styles:{footnote:w?.footnote,source:w?.source},classNames:{footnote:L?.footnote,source:L?.source},sources:_,footNote:C,width:m}):null]})})})})}exports.MultiLineAltChart=et;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("./index-CHPV5EwG-CTPQjnHt.cjs"),R=require("react"),b=require("./parse-hMnG_lRV.cjs"),qe=require("./index-Cno4Q0YE.cjs"),Se=require("./numberFormattingFunction-02t-wJta.cjs"),Ge=require("./Tooltip-4dJo4_AF.cjs"),v=require("./checkIfNullOrUndefined-BCW3Y1ML.cjs"),Le=require("./customArea-CMF5g-C3.cjs"),We=require("./AxisTitle-sS5bLLR7.cjs"),Ye=require("./Axis-DxRV2yMi.cjs"),Xe=require("./XTicksAndGridLines-B6CELS7q.cjs"),Pe=require("./ReferenceLine-BH0qdf4R.cjs"),Be=require("./YTicksAndGridLines-4pxTRlRK.cjs"),ze=require("./index-B_sAFsEV.cjs"),G=require("./Colors.cjs"),Ee=require("./uniqBy-O05lp2S5.cjs"),Je=require("./sort-O96oMZLb.cjs"),Ke=require("./time-CZd5YLSP.cjs"),Qe=require("./linear-BwPAspcq.cjs"),Ze=require("./delaunay-rcy0HhZi.cjs"),Me=require("./line-DHV4JwCR.cjs"),Re=require("./step-BZ3C8QFW.cjs"),_e=require("./select-Bnfk0lJx.cjs"),Te=require("./init-DU0ybBc_.cjs"),ti=require("./pointer-Dkq5NV1q.cjs"),ei=require("./use-in-view-QcfiW0w3.cjs"),Ut=require("./proxy-BxvUI_9l.cjs"),ii=require("./GraphFooter.cjs"),oi=require("./GraphHeader.cjs"),ni=require("./EmptyState-sAEZ_5rU.cjs"),ri=require("./ColorLegendWithMouseOver.cjs"),Ie=require("./GraphContainer-d8A46BK2.cjs"),si=require("./getNoOfTicks-C_1CFXv_.cjs");function li(i){const t=n.compilerRuntimeExports.c(128),{data:u,width:tt,height:Ft,lineColors:f,dateFormat:r,noOfXTicks:me,rightMargin:et,topMargin:Ht,bottomMargin:it,suffix:$,prefix:h,leftMargin:C,tooltip:yt,onSeriesMouseOver:ot,refValues:nt,highlightAreaSettings:Gt,minValue:W,maxValue:vt,highlightedLines:V,animate:s,rtl:Y,strokeWidth:q,showDots:oe,annotations:jt,customHighlightAreaSettings:Wt,yAxisTitle:X,noOfYTicks:Yt,minDate:Xt,maxDate:Pt,curveType:rt,styles:j,colorDomain:k,selectedColor:Ot,classNames:w,showLabels:pe,dimmedOpacity:N,precision:P,naLabel:de,customLayers:B}=i,bt=R.useRef(null);let z;t[0]!==s.amount||t[1]!==s.once?(z={once:s.once,amount:s.amount},t[0]=s.amount,t[1]=s.once,t[2]=z):z=t[2];const x=ei.useInView(bt,z),[D,ne]=R.useState(!1);let Ct,st;t[3]!==s.duration||t[4]!==D||t[5]!==x?(Ct=()=>{if(x&&!D){const e=setTimeout(()=>{ne(!0)},(s.duration+.5)*1e3);return()=>clearTimeout(e)}},st=[x,D,s.duration],t[3]=s.duration,t[4]=D,t[5]=x,t[6]=Ct,t[7]=st):(Ct=t[6],st=t[7]),R.useEffect(Ct,st);const re=rt==="linear"?Me.curveLinear:rt==="step"?Re.curveStep:rt==="stepAfter"?Re.stepAfter:rt==="stepBefore"?Re.stepBefore:Re.monotoneX;let wt;t[8]!==r?(wt=e=>({...e,date:b.parse(`${e.date}`,r,new Date)}),t[8]=r,t[9]=wt):wt=t[9];const l=qe.orderBy(u.map(wt),["date"],["asc"]).filter(Vi),g=Ee.uniqBy(l,"label",!0);let Rt;t[10]!==r?(Rt=e=>b.parse(`${e}`,r,new Date),t[10]=r,t[11]=Rt):Rt=t[11];const Bt=Je.sort(Ee.uniqBy(u,"date",!0).map(Rt),$i),[m,lt]=R.useState(void 0),[at,J]=R.useState(void 0),[ct,K]=R.useState(void 0),Et=X?C+30:C;let ut;t[12]!==it||t[13]!==et||t[14]!==Et||t[15]!==Ht?(ut={top:Ht,bottom:it,left:Et,right:et},t[12]=it,t[13]=et,t[14]=Et,t[15]=Ht,t[16]=ut):ut=t[16];const d=ut,se=R.useRef(null),le=g.map(e=>qe.orderBy(l.filter(o=>o.label==e),["date"],["asc"]));let ft;if(t[17]!==r||t[18]!==Gt){let e;t[20]!==r?(e=o=>({...o,coordinates:[o.coordinates[0]===null?null:b.parse(`${o.coordinates[0]}`,r,new Date),o.coordinates[1]===null?null:b.parse(`${o.coordinates[1]}`,r,new Date)]}),t[20]=r,t[21]=e):e=t[21],ft=Gt.map(e),t[17]=r,t[18]=Gt,t[19]=ft}else ft=t[19];const At=ft;let xt;if(t[22]!==Wt||t[23]!==r){let e;t[25]!==r?(e=o=>({...o,coordinates:o.coordinates.map((y,Vt)=>Vt%2===0?b.parse(`${y}`,r,new Date):y)}),t[25]=r,t[26]=e):e=t[26],xt=Wt.map(e),t[22]=Wt,t[23]=r,t[24]=xt}else xt=t[24];const zt=xt,p=tt-d.left-d.right,E=Ft-d.top-d.bottom,ae=Xt?b.parse(`${Xt}`,r,new Date):Bt[0],Jt=Pt?b.parse(`${Pt}`,r,new Date):Bt[Bt.length-1],O=v.checkIfNullOrUndefined(W)?Math.min(...l.map(Ti).filter(Ii))?Math.min(...l.map(Mi).filter(Si))>0?0:Math.min(...l.map(qi).filter(Li)):0:W,U=Math.max(...l.map(Di).filter(Ni))?Math.max(...l.map(ki).filter(Ai)):0,a=Ke.time().domain([ae,Jt]).range([0,p]);let Q;t[27]!==O||t[28]!==W?(Q=v.checkIfNullOrUndefined(W)?O:W,t[27]=O,t[28]=W,t[29]=Q):Q=t[29];let L;t[30]!==U||t[31]!==vt?(L=v.checkIfNullOrUndefined(vt)?U>0?U:0:vt,t[30]=U,t[31]=vt,t[32]=L):L=t[32];const c=Qe.linear().domain([Q,L]).range([E,0]).nice(),ce=Ze.Delaunay.from(l.filter(Ei),e=>a(e.date),e=>c(e.y)).voronoi([0,0,p<0?0:p,E<0?0:E]),kt=Me.line().x(e=>a(e.date)).y(e=>c(e.y)).curve(re),Nt=c.ticks(Yt),Kt=a.ticks(me);R.useEffect(()=>{const e=y=>{const Vt=l[Te.bisectCenter(l.map(Ri),a.invert(ti.pointer(y)[0]),0)];lt(Vt||l[l.length-1]),K(y.clientY),J(y.clientX),ot?.(Vt||l[l.length-1])},o=()=>{lt(void 0),J(void 0),K(void 0)};_e.select(se.current).on("mousemove",e).on("mouseout",o),ot?.(void 0)},[a,l,ot]);let Z;t[33]!==s||t[34]!==E||t[35]!==p||t[36]!==At||t[37]!==x||t[38]!==a?(Z=n.jsxRuntimeExports.jsx(ze.HighlightArea,{areaSettings:At,width:p,height:E,scale:a,animate:s,isInView:x}),t[33]=s,t[34]=E,t[35]=p,t[36]=At,t[37]=x,t[38]=a,t[39]=Z):Z=t[39];const Dt=j?.yAxis?.gridLines,S=j?.yAxis?.labels;let mt;t[40]!==Dt||t[41]!==S?(mt={gridLines:Dt,labels:S},t[40]=Dt,t[41]=S,t[42]=mt):mt=t[42];const Lt=w?.yAxis?.gridLines,qt=w?.yAxis?.labels;let pt;t[43]!==Lt||t[44]!==qt?(pt={gridLines:Lt,labels:qt},t[43]=Lt,t[44]=qt,t[45]=pt):pt=t[45];const dt=c(O<0?0:O),St=c(O<0?0:O),Mt=0-C,_=p+d.right,ue=O<0?0:O;let M;t[46]!==P||t[47]!==h||t[48]!==$||t[49]!==ue?(M=Se.numberFormattingFunction(ue,"NA",P,h,$),t[46]=P,t[47]=h,t[48]=$,t[49]=ue,t[50]=M):M=t[50];const fe=0-C,It=c(O<0?0:O),xe=U<0?"1em":-5;let F;t[51]!==fe||t[52]!==It||t[53]!==xe?(F={x:fe,y:It,dx:0,dy:xe},t[51]=fe,t[52]=It,t[53]=xe,t[54]=F):F=t[54];const Qt=w?.xAxis?.axis,ht=w?.yAxis?.labels;let I;t[55]!==Qt||t[56]!==ht?(I={axis:Qt,label:ht},t[55]=Qt,t[56]=ht,t[57]=I):I=t[57];const Tt=j?.xAxis?.axis,$t=j?.yAxis?.labels;let A;t[58]!==Tt||t[59]!==$t?(A={axis:Tt,label:$t},t[58]=Tt,t[59]=$t,t[60]=A):A=t[60];let T;t[61]!==dt||t[62]!==St||t[63]!==Mt||t[64]!==_||t[65]!==M||t[66]!==F||t[67]!==I||t[68]!==A?(T=n.jsxRuntimeExports.jsx(Ye.Axis,{y1:dt,y2:St,x1:Mt,x2:_,label:M,labelPos:F,classNames:I,styles:A}),t[61]=dt,t[62]=St,t[63]=Mt,t[64]=_,t[65]=M,t[66]=F,t[67]=I,t[68]=A,t[69]=T):T=t[69];const H=0-C-15,gt=E/2,Zt=j?.yAxis?.title,_t=w?.yAxis?.title;let he;t[70]!==H||t[71]!==gt||t[72]!==Zt||t[73]!==_t||t[74]!==X?(he=n.jsxRuntimeExports.jsx(We.AxisTitle,{x:H,y:gt,style:Zt,className:_t,text:X,rotate90:!0}),t[70]=H,t[71]=gt,t[72]=Zt,t[73]=_t,t[74]=X,t[75]=he):he=t[75];let ge;t[76]!==r?(ge=e=>b.format(e,r),t[76]=r,t[77]=ge):ge=t[77];const $e=Kt.map(ge),Ve=Kt.map(e=>a(e)),Ae=j?.xAxis?.gridLines,ke=j?.xAxis?.labels;let ye;t[78]!==Ae||t[79]!==ke?(ye={gridLines:Ae,labels:ke},t[78]=Ae,t[79]=ke,t[80]=ye):ye=t[80];const Ne=w?.xAxis?.gridLines;let te;t[81]!==Ne?(te=n.mo("opacity-0",Ne),t[81]=Ne,t[82]=te):te=t[82];const De=w?.xAxis?.labels;let ee;t[83]!==De?(ee=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[83]=De,t[84]=ee):ee=t[84];let ve;t[85]!==te||t[86]!==ee?(ve={gridLines:te,labels:ee},t[85]=te,t[86]=ee,t[87]=ve):ve=t[87];let je;t[88]!==B?(je=B.filter(bi).map(Oi),t[88]=B,t[89]=je):je=t[89];const Ue=l.filter(ui).map((e,o)=>n.jsxRuntimeExports.jsx("g",{children:n.jsxRuntimeExports.jsx("path",{d:ce.renderCell(l.findIndex(y=>y.label===e.label&&y.date===e.date)),opacity:0,onMouseEnter:y=>{lt(e),K(y.clientY),J(y.clientX),ot?.(e)},onMouseMove:y=>{lt(e),K(y.clientY),J(y.clientX)},onMouseLeave:()=>{lt(void 0),J(void 0),K(void 0),ot?.(void 0)}})},o));let Oe;t[90]!==s||t[91]!==p||t[92]!==x||t[93]!==C||t[94]!==d.right||t[95]!==nt||t[96]!==c?(Oe=nt?n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:nt.map((e,o)=>n.jsxRuntimeExports.jsx(Pe.RefLineY,{text:e.text,color:e.color,y:c(e.value),x1:0-C,x2:p+d.right,classNames:e.classNames,styles:e.styles,animate:s,isInView:x},o))}):null,t[90]=s,t[91]=p,t[92]=x,t[93]=C,t[94]=d.right,t[95]=nt,t[96]=c,t[97]=Oe):Oe=t[97];let ie;if(t[98]!==s||t[99]!==jt||t[100]!==r||t[101]!==p||t[102]!==x||t[103]!==d.right||t[104]!==Y||t[105]!==a||t[106]!==c){let e;t[108]!==s||t[109]!==r||t[110]!==p||t[111]!==x||t[112]!==d.right||t[113]!==Y||t[114]!==a||t[115]!==c?(e=(o,y)=>{const Vt=Le.getLineEndPoint({x:o.xCoordinate?a(b.parse(`${o.xCoordinate}`,r,new Date))+(o.xOffset||0):0+(o.xOffset||0),y:o.yCoordinate?c(o.yCoordinate)+(o.yOffset||0)-8:0+(o.yOffset||0)-8},{x:o.xCoordinate?a(b.parse(`${o.xCoordinate}`,r,new Date)):0,y:o.yCoordinate?c(o.yCoordinate):0},v.checkIfNullOrUndefined(o.connectorRadius)?3.5:o.connectorRadius),Fe=o.showConnector?{y1:Vt.y,x1:Vt.x,y2:o.yCoordinate?c(o.yCoordinate)+(o.yOffset||0):0+(o.yOffset||0),x2:o.xCoordinate?a(b.parse(`${o.xCoordinate}`,r,new Date))+(o.xOffset||0):0+(o.xOffset||0),cy:o.yCoordinate?c(o.yCoordinate):0,cx:o.xCoordinate?a(b.parse(`${o.xCoordinate}`,r,new Date)):0,circleRadius:v.checkIfNullOrUndefined(o.connectorRadius)?3.5:o.connectorRadius,strokeWidth:o.showConnector===!0?2:Math.min(o.showConnector||0,1)}:void 0,He={y:o.yCoordinate?c(o.yCoordinate)+(o.yOffset||0)-8:0+(o.yOffset||0)-8,x:Y?0:o.xCoordinate?a(b.parse(`${o.xCoordinate}`,r,new Date))+(o.xOffset||0):0+(o.xOffset||0),width:Y?o.xCoordinate?a(b.parse(`${o.xCoordinate}`,r,new Date))+(o.xOffset||0):0+(o.xOffset||0):p+d.right-(o.xCoordinate?a(b.parse(`${o.xCoordinate}`,r,new Date))+(o.xOffset||0):0+(o.xOffset||0)),maxWidth:o.maxWidth,fontWeight:o.fontWeight,align:o.align};return n.jsxRuntimeExports.jsx(Le.Annotation,{color:o.color,connectorsSettings:Fe,labelSettings:He,text:o.text,classNames:o.classNames,styles:o.styles,animate:s,isInView:x},y)},t[108]=s,t[109]=r,t[110]=p,t[111]=x,t[112]=d.right,t[113]=Y,t[114]=a,t[115]=c,t[116]=e):e=t[116],ie=jt.map(e),t[98]=s,t[99]=jt,t[100]=r,t[101]=p,t[102]=x,t[103]=d.right,t[104]=Y,t[105]=a,t[106]=c,t[107]=ie}else ie=t[107];let be;t[117]!==ie?(be=n.jsxRuntimeExports.jsx("g",{children:ie}),t[117]=ie,t[118]=be):be=t[118];let Ce;t[119]!==B?(Ce=B.filter(ci).map(ai),t[119]=B,t[120]=Ce):Ce=t[120];let we;return t[121]!==w?.tooltip||t[122]!==at||t[123]!==ct||t[124]!==m||t[125]!==j?.tooltip||t[126]!==yt?(we=m&&yt&&at&&ct?n.jsxRuntimeExports.jsx(Ge.Tooltip,{data:m,body:yt,xPos:at,yPos:ct,backgroundStyle:j?.tooltip,className:w?.tooltip}):null,t[121]=w?.tooltip,t[122]=at,t[123]=ct,t[124]=m,t[125]=j?.tooltip,t[126]=yt,t[127]=we):we=t[127],n.jsxRuntimeExports.jsxs(n.jsxRuntimeExports.Fragment,{children:[n.jsxRuntimeExports.jsx(Ut.motion.svg,{width:`${tt}px`,height:`${Ft}px`,viewBox:`0 0 ${tt} ${Ft}`,direction:"ltr",ref:bt,children:n.jsxRuntimeExports.jsxs("g",{transform:`translate(${d.left},${d.top})`,children:[Z,n.jsxRuntimeExports.jsx(Le.CustomArea,{areaSettings:zt,scaleX:a,scaleY:c,animate:s,isInView:x}),n.jsxRuntimeExports.jsxs("g",{children:[n.jsxRuntimeExports.jsx(Be.YTicksAndGridLines,{values:Nt.filter(wi),y:Nt.filter(Ci).map(e=>c(e)),x1:0-C,x2:p+d.right,styles:mt,classNames:pt,suffix:$,prefix:h,labelType:"secondary",showGridLines:!0,labelPos:"vertical",precision:P}),T,he]}),n.jsxRuntimeExports.jsx("g",{children:n.jsxRuntimeExports.jsx(Xe.XTicksAndGridLines,{values:$e,x:Ve,y1:0,y2:E,styles:ye,classNames:ve,suffix:$,prefix:h,labelType:"primary",showGridLines:!0,precision:P})}),je,n.jsxRuntimeExports.jsxs(Ut.motion.g,{children:[le.map(e=>n.jsxRuntimeExports.jsxs(Ut.motion.g,{exit:{opacity:0,transition:{duration:s.duration}},variants:{initial:{opacity:m?e[0].label===m.label?1:N:Ot?e[0].color&&f[k.indexOf(e[0].color)]===Ot?1:N:V.length!==0?V.indexOf(e[0].label)!==-1?1:N:1},whileInView:{opacity:m?e[0].label===m.label?1:N:Ot?e[0].color&&f[k.indexOf(e[0].color)]===Ot?1:N:V.length!==0?V.indexOf(e[0].label)!==-1?1:N:1,transition:{duration:s.duration}}},initial:"initial",animate:x?"whileInView":"initial",children:[n.jsxRuntimeExports.jsx(Ut.motion.path,{d:kt(e.filter(ji))||"",style:{fill:"none",strokeWidth:m?e[0].label===m.label?q+Math.max(2,.5*q):q:V.length!==0&&V.indexOf(e[0].label)!==-1?q+Math.max(2,.5*q):q},exit:{opacity:0,transition:{duration:s.duration}},variants:{initial:{pathLength:0,d:kt(e.filter(vi))||"",opacity:1,stroke:u.filter(yi).length===0?f[0]:e[0].color?f[k.indexOf(e[0].color)]:G.Colors.gray},whileInView:{pathLength:1,d:kt(e.filter(gi))||"",opacity:1,stroke:u.filter(hi).length===0?f[0]:e[0].color?f[k.indexOf(e[0].color)]:G.Colors.gray,transition:{duration:s.duration}}},initial:"initial",animate:x?"whileInView":"initial"}),e.map((o,y)=>n.jsxRuntimeExports.jsx(Ut.motion.g,{children:v.checkIfNullOrUndefined(o.y)?null:n.jsxRuntimeExports.jsx(n.jsxRuntimeExports.Fragment,{children:oe?n.jsxRuntimeExports.jsx(Ut.motion.circle,{r:p/e.length<5?0:p/e.length<20?2:4,exit:{opacity:0,transition:{duration:s.duration}},variants:{initial:{opacity:0,fill:u.filter(di).length===0?f[0]:e[0].color?f[k.indexOf(e[0].color)]:G.Colors.gray,cx:a(o.date),cy:c(o.y)},whileInView:{opacity:1,fill:u.filter(pi).length===0?f[0]:e[0].color?f[k.indexOf(e[0].color)]:G.Colors.gray,transition:{duration:D?s.duration:.5,delay:D?0:s.duration},cx:a(o.date),cy:c(o.y)}},initial:"initial",animate:x?"whileInView":"initial"}):null})},y)),(V.indexOf(e[0].label)!==-1||m?.label===e[0].label)&&pe?n.jsxRuntimeExports.jsx(Ut.motion.text,{className:"text-sm font-bold",dx:5,dy:4,exit:{opacity:0,transition:{duration:s.duration}},variants:{initial:{opacity:0,fill:u.filter(mi).length===0?f[0]:e[0].color?f[k.indexOf(e[0].color)]:G.Colors.gray,x:a(e[e.length-1].date),y:c(e[e.length-1].y)},whileInView:{opacity:1,fill:u.filter(xi).length===0?f[0]:e[0].color?f[k.indexOf(e[0].color)]:G.Colors.gray,x:a(e[e.length-1].date),y:c(e[e.length-1].y),transition:{duration:D?s.duration:.5,delay:D?0:s.duration}}},initial:"initial",animate:x?"whileInView":"initial",children:e[0].label}):null]},e[0].label)),m?n.jsxRuntimeExports.jsx("text",{y:c(m.y)-8,x:a(m.date),className:n.mo("graph-value text-sm font-bold",w?.graphObjectValues),style:{fill:u.filter(fi).length===0?f[0]:m.color?f[k.indexOf(m.color)]:G.Colors.gray,textAnchor:"middle",...j?.graphObjectValues||{}},children:Se.numberFormattingFunction(m.y,de,P,h,$)}):null]}),Ue,Oe,be,Ce]})}),we]})}function ai(i){return i.layer}function ci(i){return i.position==="after"}function ui(i){return!v.checkIfNullOrUndefined(i.y)}function fi(i){return i.color}function xi(i){return i.color}function mi(i){return i.color}function pi(i){return i.color}function di(i){return i.color}function hi(i){return i.color}function gi(i){return!v.checkIfNullOrUndefined(i.y)}function yi(i){return i.color}function vi(i){return!v.checkIfNullOrUndefined(i.y)}function ji(i){return!v.checkIfNullOrUndefined(i.y)}function Oi(i){return i.layer}function bi(i){return i.position==="before"}function Ci(i){return i!==0}function wi(i){return i!==0}function Ri(i){return i.date}function Ei(i){return!v.checkIfNullOrUndefined(i.date)&&!v.checkIfNullOrUndefined(i.y)}function Ai(i){return!v.checkIfNullOrUndefined(i)}function ki(i){return i.y}function Ni(i){return!v.checkIfNullOrUndefined(i)}function Di(i){return i.y}function Li(i){return!v.checkIfNullOrUndefined(i)}function qi(i){return i.y}function Si(i){return!v.checkIfNullOrUndefined(i)}function Mi(i){return i.y}function Ii(i){return!v.checkIfNullOrUndefined(i)}function Ti(i){return i.y}function $i(i,t){return Te.ascending(i,t)}function Vi(i){return!v.checkIfNullOrUndefined(i.y)}function Ui(i){const t=n.compilerRuntimeExports.c(94),{data:u,graphTitle:tt,showNAColor:Ft,colors:f,colorDomain:r,suffix:me,sources:et,prefix:Ht,graphDescription:it,height:$,width:h,footNote:C,noOfXTicks:yt,dateFormat:ot,padding:nt,backgroundColor:Gt,leftMargin:W,rightMargin:vt,topMargin:V,bottomMargin:s,showColorScale:Y,tooltip:q,relativeHeight:oe,onSeriesMouseOver:jt,showLabels:Wt,refValues:X,highlightAreaSettings:Yt,graphID:Xt,minValue:Pt,maxValue:rt,highlightedLines:j,graphDownload:k,dataDownload:Ot,animate:w,language:pe,colorLegendTitle:N,minHeight:P,strokeWidth:de,showDots:B,annotations:bt,customHighlightAreaSettings:z,theme:x,ariaLabel:D,yAxisTitle:ne,noOfYTicks:Ct,minDate:st,maxDate:re,curveType:wt,styles:l,classNames:g,dimmedOpacity:Rt,precision:Bt,customLayers:m,naLabel:lt}=i,at=Ft===void 0?!0:Ft,J=me===void 0?"":me,ct=Ht===void 0?"":Ht,K=yt===void 0?10:yt,Et=ot===void 0?"yyyy":ot,ut=Gt===void 0?!1:Gt,d=W===void 0?30:W,se=vt===void 0?50:vt,le=V===void 0?20:V,ft=s===void 0?25:s,At=Y===void 0?!0:Y,xt=Wt===void 0?!0:Wt;let zt;t[0]!==X?(zt=X===void 0?[]:X,t[0]=X,t[1]=zt):zt=t[1];const p=zt;let E;t[2]!==Yt?(E=Yt===void 0?[]:Yt,t[2]=Yt,t[3]=E):E=t[3];const ae=E;let Jt;t[4]!==j?(Jt=j===void 0?[]:j,t[4]=j,t[5]=Jt):Jt=t[5];const O=Jt,U=k===void 0?!1:k,a=Ot===void 0?!1:Ot,Q=w===void 0?!1:w,L=pe===void 0?"en":pe,c=P===void 0?0:P,ce=de===void 0?2:de,kt=B===void 0?!0:B;let Nt;t[6]!==bt?(Nt=bt===void 0?[]:bt,t[6]=bt,t[7]=Nt):Nt=t[7];const Kt=Nt;let Z;t[8]!==z?(Z=z===void 0?[]:z,t[8]=z,t[9]=Z):Z=t[9];const Dt=Z,S=x===void 0?"light":x,mt=Ct===void 0?5:Ct,Lt=wt===void 0?"curve":wt,qt=Rt===void 0?.3:Rt,pt=Bt===void 0?2:Bt;let dt;t[10]!==m?(dt=m===void 0?[]:m,t[10]=m,t[11]=dt):dt=t[11];const St=dt,Mt=lt===void 0?"NA":lt,[_,ue]=R.useState(0),[M,fe]=R.useState(0),[It,xe]=R.useState(void 0),F=R.useRef(null),Qt=R.useRef(null);let ht,I;t[12]===Symbol.for("react.memo_cache_sentinel")?(ht=()=>{const Zt=new ResizeObserver(_t=>{ue(_t[0].target.clientWidth||620),fe(_t[0].target.clientHeight||480)});return F.current&&Zt.observe(F.current),()=>Zt.disconnect()},I=[],t[12]=ht,t[13]=I):(ht=t[12],I=t[13]),R.useEffect(ht,I);const Tt=g?.graphContainer,$t=l?.graphContainer;let A;t[14]!==g?.description||t[15]!==g?.title||t[16]!==u||t[17]!==a||t[18]!==it||t[19]!==U||t[20]!==tt||t[21]!==l?.description||t[22]!==l?.title||t[23]!==h?(A=tt||it||U||a?n.jsxRuntimeExports.jsx(oi.GraphHeader,{styles:{title:l?.title,description:l?.description},classNames:{title:g?.title,description:g?.description},graphTitle:tt,graphDescription:it,width:h,graphDownload:U?Qt:void 0,dataDownload:a?u.map(Bi).filter(Pi).length>0?u.map(Xi).filter(Yi):u.filter(Wi):null}):null,t[14]=g?.description,t[15]=g?.title,t[16]=u,t[17]=a,t[18]=it,t[19]=U,t[20]=tt,t[21]=l?.description,t[22]=l?.title,t[23]=h,t[24]=A):A=t[24];let T;t[25]!==Q||t[26]!==Kt||t[27]!==ft||t[28]!==g||t[29]!==r||t[30]!==N||t[31]!==f||t[32]!==Lt||t[33]!==Dt||t[34]!==St||t[35]!==u||t[36]!==Et||t[37]!==qt||t[38]!==ae||t[39]!==O||t[40]!==L||t[41]!==d||t[42]!==re||t[43]!==rt||t[44]!==st||t[45]!==Pt||t[46]!==Mt||t[47]!==K||t[48]!==mt||t[49]!==jt||t[50]!==pt||t[51]!==ct||t[52]!==p||t[53]!==se||t[54]!==It||t[55]!==At||t[56]!==kt||t[57]!==xt||t[58]!==at||t[59]!==ce||t[60]!==l||t[61]!==J||t[62]!==M||t[63]!==_||t[64]!==S||t[65]!==q||t[66]!==le||t[67]!==h||t[68]!==ne?(T=u.length===0?n.jsxRuntimeExports.jsx(ni.EmptyState,{}):n.jsxRuntimeExports.jsxs(n.jsxRuntimeExports.Fragment,{children:[At&&u.filter(Gi).length!==0?n.jsxRuntimeExports.jsx(ri.ColorLegendWithMouseOver,{width:h,colorLegendTitle:N,colors:f||G.Colors[S].categoricalColors.colors,colorDomain:r||Ee.uniqBy(u,"color",!0),setSelectedColor:xe,showNAColor:at,className:g?.colorLegend}):null,n.jsxRuntimeExports.jsx(Ie.GraphArea,{ref:F,children:_&&M?n.jsxRuntimeExports.jsx(li,{data:u,lineColors:u.filter(Hi).length===0?f?[f]:[G.Colors.primaryColors["blue-600"]]:f||G.Colors[S].categoricalColors.colors,width:_,height:M,dateFormat:Et,noOfXTicks:K??si.getNoOfTicks(_),leftMargin:d,rightMargin:se,topMargin:le,bottomMargin:ft,tooltip:q,onSeriesMouseOver:jt,suffix:J,prefix:ct,highlightAreaSettings:ae,refValues:p,minValue:Pt,maxValue:rt,highlightedLines:O,animate:Q===!0?{duration:.5,once:!0,amount:.5}:Q||{duration:0,once:!0,amount:0},rtl:L==="he"||L==="ar",strokeWidth:ce,showDots:kt,annotations:Kt,customHighlightAreaSettings:Dt,yAxisTitle:ne,noOfYTicks:mt,minDate:st,maxDate:re,curveType:Lt,styles:l,classNames:g,selectedColor:It,showLabels:xt,colorDomain:u.filter(Fi).length===0?[]:r||Ee.uniqBy(u,"color",!0),dimmedOpacity:qt,precision:pt,customLayers:St,naLabel:Mt}):null})]}),t[25]=Q,t[26]=Kt,t[27]=ft,t[28]=g,t[29]=r,t[30]=N,t[31]=f,t[32]=Lt,t[33]=Dt,t[34]=St,t[35]=u,t[36]=Et,t[37]=qt,t[38]=ae,t[39]=O,t[40]=L,t[41]=d,t[42]=re,t[43]=rt,t[44]=st,t[45]=Pt,t[46]=Mt,t[47]=K,t[48]=mt,t[49]=jt,t[50]=pt,t[51]=ct,t[52]=p,t[53]=se,t[54]=It,t[55]=At,t[56]=kt,t[57]=xt,t[58]=at,t[59]=ce,t[60]=l,t[61]=J,t[62]=M,t[63]=_,t[64]=S,t[65]=q,t[66]=le,t[67]=h,t[68]=ne,t[69]=T):T=t[69];let H;t[70]!==g?.footnote||t[71]!==g?.source||t[72]!==C||t[73]!==et||t[74]!==l?.footnote||t[75]!==l?.source||t[76]!==h?(H=et||C?n.jsxRuntimeExports.jsx(ii.GraphFooter,{styles:{footnote:l?.footnote,source:l?.source},classNames:{footnote:g?.footnote,source:g?.source},sources:et,footNote:C,width:h}):null,t[70]=g?.footnote,t[71]=g?.source,t[72]=C,t[73]=et,t[74]=l?.footnote,t[75]=l?.source,t[76]=h,t[77]=H):H=t[77];let gt;return t[78]!==D||t[79]!==ut||t[80]!==Xt||t[81]!==$||t[82]!==L||t[83]!==c||t[84]!==nt||t[85]!==oe||t[86]!==Tt||t[87]!==$t||t[88]!==A||t[89]!==T||t[90]!==H||t[91]!==S||t[92]!==h?(gt=n.jsxRuntimeExports.jsxs(Ie.GraphContainer,{className:Tt,style:$t,id:Xt,ref:Qt,"aria-label":D,backgroundColor:ut,theme:S,language:L,minHeight:c,width:h,height:$,relativeHeight:oe,padding:nt,children:[A,T,H]}),t[78]=D,t[79]=ut,t[80]=Xt,t[81]=$,t[82]=L,t[83]=c,t[84]=nt,t[85]=oe,t[86]=Tt,t[87]=$t,t[88]=A,t[89]=T,t[90]=H,t[91]=S,t[92]=h,t[93]=gt):gt=t[93],gt}function Fi(i){return i.color}function Hi(i){return i.color}function Gi(i){return i.color}function Wi(i){return i!==void 0}function Yi(i){return i!==void 0}function Xi(i){return i.data}function Pi(i){return i!==void 0}function Bi(i){return i.data}exports.MultiLineAltChart=Ui;
2
2
  //# sourceMappingURL=MultiLineAltChart.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"MultiLineAltChart.cjs","sources":["../src/Components/Graphs/LineCharts/MultiLineAltChart/Graph.tsx","../src/Components/Graphs/LineCharts/MultiLineAltChart/index.tsx"],"sourcesContent":["import { useEffect, useRef, useState } from 'react';\r\nimport {\r\n line,\r\n curveLinear,\r\n curveMonotoneX,\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 { ascending, sort } from 'd3-array';\r\nimport { cn } from '@undp/design-system-react/cn';\r\nimport { Delaunay } from 'd3-delaunay';\r\nimport { motion, useInView } from 'motion/react';\r\nimport orderBy from 'lodash.orderby';\r\n\r\nimport {\r\n AnimateDataType,\r\n AnnotationSettingsDataType,\r\n ClassNameObject,\r\n CurveTypes,\r\n CustomHighlightAreaSettingsDataType,\r\n CustomLayerDataType,\r\n HighlightAreaSettingsDataType,\r\n MultiLineAltChartDataType,\r\n ReferenceDataType,\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 { getLineEndPoint } from '@/Utils/getLineEndPoint';\r\nimport { AxisTitle } from '@/Components/Elements/Axes/AxisTitle';\r\nimport { Axis } from '@/Components/Elements/Axes/Axis';\r\nimport { XTicksAndGridLines } from '@/Components/Elements/Axes/XTicksAndGridLines';\r\nimport { RefLineY } from '@/Components/Elements/ReferenceLine';\r\nimport { Annotation } from '@/Components/Elements/Annotations';\r\nimport { YTicksAndGridLines } from '@/Components/Elements/Axes/YTicksAndGridLines';\r\nimport { CustomArea } from '@/Components/Elements/HighlightArea/customArea';\r\nimport { HighlightArea } from '@/Components/Elements/HighlightArea';\r\nimport { Colors } from '@/Components/ColorPalette';\r\nimport { uniqBy } from '@/Utils/uniqBy';\r\n\r\ninterface Props {\r\n // Data\r\n /** Array of data objects */\r\n data: MultiLineAltChartDataType[];\r\n lineColors: string[];\r\n width: number;\r\n height: number;\r\n dateFormat: string;\r\n noOfXTicks: number;\r\n topMargin: number;\r\n bottomMargin: number;\r\n leftMargin: number;\r\n rightMargin: number;\r\n suffix: string;\r\n prefix: string;\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n tooltip?: string | ((_d: any) => React.ReactNode);\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onSeriesMouseOver?: (_d: any) => void;\r\n highlightAreaSettings: HighlightAreaSettingsDataType[];\r\n refValues: ReferenceDataType[];\r\n maxValue?: number;\r\n minValue?: number;\r\n highlightedLines: (string | number)[];\r\n animate: AnimateDataType;\r\n rtl: boolean;\r\n strokeWidth: number;\r\n showLabels: boolean;\r\n showDots: boolean;\r\n annotations: AnnotationSettingsDataType[];\r\n customHighlightAreaSettings: CustomHighlightAreaSettingsDataType[];\r\n yAxisTitle?: string;\r\n noOfYTicks: number;\r\n minDate?: string | number;\r\n maxDate?: string | number;\r\n colorDomain: (string | number)[];\r\n curveType: CurveTypes;\r\n styles?: StyleObject;\r\n classNames?: ClassNameObject;\r\n selectedColor?: string;\r\n dimmedOpacity: number;\r\n precision: number;\r\n customLayers: CustomLayerDataType[];\r\n naLabel: string;\r\n}\r\n\r\ninterface FormattedDataType {\r\n y: number;\r\n date: Date;\r\n label: number | string;\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 dateFormat,\r\n noOfXTicks,\r\n rightMargin,\r\n topMargin,\r\n bottomMargin,\r\n suffix,\r\n prefix,\r\n leftMargin,\r\n tooltip,\r\n onSeriesMouseOver,\r\n refValues,\r\n highlightAreaSettings,\r\n minValue,\r\n maxValue,\r\n highlightedLines,\r\n animate,\r\n rtl,\r\n strokeWidth,\r\n showDots,\r\n annotations,\r\n customHighlightAreaSettings,\r\n yAxisTitle,\r\n noOfYTicks,\r\n minDate,\r\n maxDate,\r\n curveType,\r\n styles,\r\n colorDomain,\r\n selectedColor,\r\n classNames,\r\n showLabels,\r\n dimmedOpacity,\r\n precision,\r\n naLabel,\r\n customLayers,\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 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 ).filter(d => !checkIfNullOrUndefined(d.y));\r\n const labels = uniqBy(dataFormatted, 'label', true) as (string | number)[];\r\n const dates = sort(\r\n uniqBy(data, 'date', true).map(d => parse(`${d}`, dateFormat, new Date())),\r\n (a, b) => ascending(a, b),\r\n );\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: yAxisTitle ? leftMargin + 30 : leftMargin,\r\n right: rightMargin,\r\n };\r\n const MouseoverRectRef = useRef(null);\r\n const lineArray = labels.map(d =>\r\n orderBy(\r\n dataFormatted.filter(el => el.label == d),\r\n ['date'],\r\n ['asc'],\r\n ),\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 customHighlightAreaSettingsFormatted = customHighlightAreaSettings.map(d => ({\r\n ...d,\r\n coordinates: d.coordinates.map((el, j) =>\r\n j % 2 === 0 ? parse(`${el}`, dateFormat, new Date()) : (el as number),\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()) : dates[0];\r\n const maxYear = maxDate ? parse(`${maxDate}`, dateFormat, new Date()) : dates[dates.length - 1];\r\n const minParam: number = checkIfNullOrUndefined(minValue)\r\n ? Math.min(...(dataFormatted.map(d => d.y).filter(d => !checkIfNullOrUndefined(d)) as number[]))\r\n ? (Math.min(\r\n ...(dataFormatted.map(d => d.y).filter(d => !checkIfNullOrUndefined(d)) as number[]),\r\n ) as number) > 0\r\n ? 0\r\n : (Math.min(\r\n ...(dataFormatted.map(d => d.y).filter(d => !checkIfNullOrUndefined(d)) as number[]),\r\n ) as number)\r\n : 0\r\n : (minValue as number);\r\n const maxParam: number = (Math.max(\r\n ...(dataFormatted.map(d => d.y).filter(d => !checkIfNullOrUndefined(d)) as number[]),\r\n ) as number)\r\n ? (Math.max(\r\n ...(dataFormatted.map(d => d.y).filter(d => !checkIfNullOrUndefined(d)) as number[]),\r\n ) as number)\r\n : 0;\r\n\r\n const x = scaleTime().domain([minYear, maxYear]).range([0, graphWidth]);\r\n const y = scaleLinear()\r\n .domain([\r\n checkIfNullOrUndefined(minValue) ? minParam : (minValue as number),\r\n checkIfNullOrUndefined(maxValue) ? (maxParam > 0 ? maxParam : 0) : (maxValue as number),\r\n ])\r\n .range([graphHeight, 0])\r\n .nice();\r\n\r\n const voronoiDiagram = Delaunay.from(\r\n dataFormatted.filter(d => !checkIfNullOrUndefined(d.date) && !checkIfNullOrUndefined(d.y)),\r\n d => x(d.date),\r\n d => y(d.y as number),\r\n ).voronoi([0, 0, graphWidth < 0 ? 0 : graphWidth, graphHeight < 0 ? 0 : graphHeight]);\r\n const lineShape = line<FormattedDataType>()\r\n .x(d => x(d.date))\r\n .y(d => y(d.y))\r\n .curve(curve);\r\n const yTicks = y.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 setEventY(event.clientY);\r\n setEventX(event.clientX);\r\n onSeriesMouseOver?.(selectedData || dataFormatted[dataFormatted.length - 1]);\r\n };\r\n const mouseout = () => {\r\n setMouseOverData(undefined);\r\n setEventX(undefined);\r\n setEventY(undefined);\r\n };\r\n select(MouseoverRectRef.current).on('mousemove', mousemove).on('mouseout', mouseout);\r\n onSeriesMouseOver?.(undefined);\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 <CustomArea\r\n areaSettings={customHighlightAreaSettingsFormatted}\r\n scaleX={x}\r\n scaleY={y}\r\n animate={animate}\r\n isInView={isInView}\r\n />\r\n <g>\r\n <YTicksAndGridLines\r\n values={yTicks.filter(d => d !== 0)}\r\n y={yTicks.filter(d => d !== 0).map(d => y(d))}\r\n x1={0 - leftMargin}\r\n x2={graphWidth + margin.right}\r\n styles={{\r\n gridLines: styles?.yAxis?.gridLines,\r\n labels: styles?.yAxis?.labels,\r\n }}\r\n classNames={{\r\n gridLines: classNames?.yAxis?.gridLines,\r\n labels: classNames?.yAxis?.labels,\r\n }}\r\n suffix={suffix}\r\n prefix={prefix}\r\n labelType='secondary'\r\n showGridLines\r\n labelPos='vertical'\r\n precision={precision}\r\n />\r\n <Axis\r\n y1={y(minParam < 0 ? 0 : minParam)}\r\n y2={y(minParam < 0 ? 0 : minParam)}\r\n x1={0 - leftMargin}\r\n x2={graphWidth + margin.right}\r\n label={numberFormattingFunction(\r\n minParam < 0 ? 0 : minParam,\r\n 'NA',\r\n precision,\r\n prefix,\r\n suffix,\r\n )}\r\n labelPos={{\r\n x: 0 - leftMargin,\r\n y: y(minParam < 0 ? 0 : minParam),\r\n dx: 0,\r\n dy: maxParam < 0 ? '1em' : -5,\r\n }}\r\n classNames={{\r\n axis: classNames?.xAxis?.axis,\r\n label: classNames?.yAxis?.labels,\r\n }}\r\n styles={{\r\n axis: styles?.xAxis?.axis,\r\n label: styles?.yAxis?.labels,\r\n }}\r\n />\r\n <AxisTitle\r\n x={0 - leftMargin - 15}\r\n y={graphHeight / 2}\r\n style={styles?.yAxis?.title}\r\n className={classNames?.yAxis?.title}\r\n text={yAxisTitle}\r\n rotate90\r\n />\r\n </g>\r\n <g>\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 suffix={suffix}\r\n prefix={prefix}\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 <motion.g>\r\n {lineArray.map(d => (\r\n <motion.g\r\n key={d[0].label}\r\n exit={{ opacity: 0, transition: { duration: animate.duration } }}\r\n variants={{\r\n initial: {\r\n opacity: mouseOverData\r\n ? d[0].label === mouseOverData.label\r\n ? 1\r\n : dimmedOpacity\r\n : selectedColor\r\n ? d[0].color\r\n ? lineColors[colorDomain.indexOf(d[0].color)] === selectedColor\r\n ? 1\r\n : dimmedOpacity\r\n : dimmedOpacity\r\n : highlightedLines.length !== 0\r\n ? highlightedLines.indexOf(d[0].label) !== -1\r\n ? 1\r\n : dimmedOpacity\r\n : 1,\r\n },\r\n whileInView: {\r\n opacity: mouseOverData\r\n ? d[0].label === mouseOverData.label\r\n ? 1\r\n : dimmedOpacity\r\n : selectedColor\r\n ? d[0].color\r\n ? lineColors[colorDomain.indexOf(d[0].color)] === selectedColor\r\n ? 1\r\n : dimmedOpacity\r\n : dimmedOpacity\r\n : highlightedLines.length !== 0\r\n ? highlightedLines.indexOf(d[0].label) !== -1\r\n ? 1\r\n : dimmedOpacity\r\n : 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 lineShape(\r\n d.filter((el): el is FormattedDataType => !checkIfNullOrUndefined(el.y)),\r\n ) || ''\r\n }\r\n style={{\r\n fill: 'none',\r\n strokeWidth: mouseOverData\r\n ? d[0].label === mouseOverData.label\r\n ? strokeWidth + Math.max(2, 0.5 * strokeWidth)\r\n : strokeWidth\r\n : highlightedLines.length !== 0\r\n ? highlightedLines.indexOf(d[0].label) !== -1\r\n ? strokeWidth + Math.max(2, 0.5 * strokeWidth)\r\n : strokeWidth\r\n : strokeWidth,\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 lineShape(\r\n d.filter((el): el is FormattedDataType => !checkIfNullOrUndefined(el.y)),\r\n ) || '',\r\n opacity: 1,\r\n stroke:\r\n data.filter(el => el.color).length === 0\r\n ? lineColors[0]\r\n : !d[0].color\r\n ? Colors.gray\r\n : lineColors[colorDomain.indexOf(d[0].color)],\r\n },\r\n whileInView: {\r\n pathLength: 1,\r\n d:\r\n lineShape(\r\n d.filter((el): el is FormattedDataType => !checkIfNullOrUndefined(el.y)),\r\n ) || '',\r\n opacity: 1,\r\n stroke:\r\n data.filter(el => el.color).length === 0\r\n ? lineColors[0]\r\n : !d[0].color\r\n ? Colors.gray\r\n : lineColors[colorDomain.indexOf(d[0].color)],\r\n transition: { duration: animate.duration },\r\n },\r\n }}\r\n initial='initial'\r\n animate={isInView ? 'whileInView' : 'initial'}\r\n />\r\n {d.map((el, j) => (\r\n <motion.g key={j}>\r\n {!checkIfNullOrUndefined(el.y) ? (\r\n <>\r\n {showDots ? (\r\n <motion.circle\r\n r={graphWidth / d.length < 5 ? 0 : graphWidth / d.length < 20 ? 2 : 4}\r\n exit={{ opacity: 0, transition: { duration: animate.duration } }}\r\n variants={{\r\n initial: {\r\n opacity: 0,\r\n fill:\r\n data.filter(el => el.color).length === 0\r\n ? lineColors[0]\r\n : !d[0].color\r\n ? Colors.gray\r\n : lineColors[colorDomain.indexOf(d[0].color)],\r\n cx: x(el.date),\r\n cy: y(el.y as number),\r\n },\r\n whileInView: {\r\n opacity: 1,\r\n fill:\r\n data.filter(el => el.color).length === 0\r\n ? lineColors[0]\r\n : !d[0].color\r\n ? Colors.gray\r\n : lineColors[colorDomain.indexOf(d[0].color)],\r\n transition: {\r\n duration: hasAnimatedOnce ? animate.duration : 0.5,\r\n delay: hasAnimatedOnce ? 0 : animate.duration,\r\n },\r\n cx: x(el.date),\r\n cy: y(el.y as number),\r\n },\r\n }}\r\n initial='initial'\r\n animate={isInView ? 'whileInView' : 'initial'}\r\n />\r\n ) : null}\r\n </>\r\n ) : null}\r\n </motion.g>\r\n ))}\r\n {(highlightedLines.indexOf(d[0].label) !== -1 ||\r\n mouseOverData?.label === d[0].label) &&\r\n showLabels ? (\r\n <motion.text\r\n className='text-sm font-bold'\r\n dx={5}\r\n dy={4}\r\n exit={{ opacity: 0, transition: { duration: animate.duration } }}\r\n variants={{\r\n initial: {\r\n opacity: 0,\r\n fill:\r\n data.filter(el => el.color).length === 0\r\n ? lineColors[0]\r\n : !d[0].color\r\n ? Colors.gray\r\n : lineColors[colorDomain.indexOf(d[0].color)],\r\n x: x(d[d.length - 1].date),\r\n y: y(d[d.length - 1].y as number),\r\n },\r\n whileInView: {\r\n opacity: 1,\r\n fill:\r\n data.filter(el => el.color).length === 0\r\n ? lineColors[0]\r\n : !d[0].color\r\n ? Colors.gray\r\n : lineColors[colorDomain.indexOf(d[0].color)],\r\n x: x(d[d.length - 1].date),\r\n y: y(d[d.length - 1].y 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 {d[0].label}\r\n </motion.text>\r\n ) : null}\r\n </motion.g>\r\n ))}\r\n {mouseOverData ? (\r\n <text\r\n y={y(mouseOverData.y) - 8}\r\n x={x(mouseOverData.date)}\r\n className={cn('graph-value text-sm font-bold', classNames?.graphObjectValues)}\r\n style={{\r\n fill:\r\n data.filter(el => el.color).length === 0\r\n ? lineColors[0]\r\n : !mouseOverData.color\r\n ? Colors.gray\r\n : lineColors[colorDomain.indexOf(mouseOverData.color)],\r\n textAnchor: 'middle',\r\n ...(styles?.graphObjectValues || {}),\r\n }}\r\n >\r\n {numberFormattingFunction(mouseOverData.y, naLabel, precision, prefix, suffix)}\r\n </text>\r\n ) : null}\r\n </motion.g>\r\n {dataFormatted\r\n .filter(d => !checkIfNullOrUndefined(d.y))\r\n .map((d, i) => {\r\n return (\r\n <g key={i}>\r\n <path\r\n d={voronoiDiagram.renderCell(\r\n dataFormatted.findIndex(el => el.label === d.label && el.date === d.date),\r\n )}\r\n opacity={0}\r\n onMouseEnter={event => {\r\n setMouseOverData(d);\r\n setEventY(event.clientY);\r\n setEventX(event.clientX);\r\n onSeriesMouseOver?.(d);\r\n }}\r\n onMouseMove={event => {\r\n setMouseOverData(d);\r\n setEventY(event.clientY);\r\n setEventX(event.clientX);\r\n }}\r\n onMouseLeave={() => {\r\n setMouseOverData(undefined);\r\n setEventX(undefined);\r\n setEventY(undefined);\r\n onSeriesMouseOver?.(undefined);\r\n }}\r\n />\r\n </g>\r\n );\r\n })}\r\n {refValues ? (\r\n <>\r\n {refValues.map((el, i) => (\r\n <RefLineY\r\n key={i}\r\n text={el.text}\r\n color={el.color}\r\n y={y(el.value as number)}\r\n x1={0 - leftMargin}\r\n x2={graphWidth + margin.right}\r\n classNames={el.classNames}\r\n styles={el.styles}\r\n animate={animate}\r\n isInView={isInView}\r\n />\r\n ))}\r\n </>\r\n ) : null}\r\n <g>\r\n {annotations.map((d, i) => {\r\n const endPoints = getLineEndPoint(\r\n {\r\n x: d.xCoordinate\r\n ? x(parse(`${d.xCoordinate}`, dateFormat, new Date())) + (d.xOffset || 0)\r\n : 0 + (d.xOffset || 0),\r\n y: d.yCoordinate\r\n ? y(d.yCoordinate as number) + (d.yOffset || 0) - 8\r\n : 0 + (d.yOffset || 0) - 8,\r\n },\r\n {\r\n x: d.xCoordinate ? x(parse(`${d.xCoordinate}`, dateFormat, new Date())) : 0,\r\n y: d.yCoordinate ? y(d.yCoordinate as number) : 0,\r\n },\r\n checkIfNullOrUndefined(d.connectorRadius) ? 3.5 : (d.connectorRadius as number),\r\n );\r\n const connectorSettings = d.showConnector\r\n ? {\r\n y1: endPoints.y,\r\n x1: endPoints.x,\r\n y2: d.yCoordinate\r\n ? y(d.yCoordinate as number) + (d.yOffset || 0)\r\n : 0 + (d.yOffset || 0),\r\n x2: d.xCoordinate\r\n ? x(parse(`${d.xCoordinate}`, dateFormat, new Date())) + (d.xOffset || 0)\r\n : 0 + (d.xOffset || 0),\r\n cy: d.yCoordinate ? y(d.yCoordinate as number) : 0,\r\n cx: d.xCoordinate ? x(parse(`${d.xCoordinate}`, dateFormat, new Date())) : 0,\r\n circleRadius: checkIfNullOrUndefined(d.connectorRadius)\r\n ? 3.5\r\n : (d.connectorRadius as number),\r\n strokeWidth: d.showConnector === true ? 2 : Math.min(d.showConnector || 0, 1),\r\n }\r\n : undefined;\r\n const labelSettings = {\r\n y: d.yCoordinate\r\n ? y(d.yCoordinate as number) + (d.yOffset || 0) - 8\r\n : 0 + (d.yOffset || 0) - 8,\r\n x: rtl\r\n ? 0\r\n : d.xCoordinate\r\n ? x(parse(`${d.xCoordinate}`, dateFormat, new Date())) + (d.xOffset || 0)\r\n : 0 + (d.xOffset || 0),\r\n width: rtl\r\n ? d.xCoordinate\r\n ? x(parse(`${d.xCoordinate}`, dateFormat, new Date())) + (d.xOffset || 0)\r\n : 0 + (d.xOffset || 0)\r\n : graphWidth +\r\n margin.right -\r\n (d.xCoordinate\r\n ? x(parse(`${d.xCoordinate}`, dateFormat, new Date())) + (d.xOffset || 0)\r\n : 0 + (d.xOffset || 0)),\r\n maxWidth: d.maxWidth,\r\n fontWeight: d.fontWeight,\r\n align: d.align,\r\n };\r\n return (\r\n <Annotation\r\n key={i}\r\n color={d.color}\r\n connectorsSettings={connectorSettings}\r\n labelSettings={labelSettings}\r\n text={d.text}\r\n classNames={d.classNames}\r\n styles={d.styles}\r\n animate={animate}\r\n isInView={isInView}\r\n />\r\n );\r\n })}\r\n </g>\r\n {customLayers.filter(d => d.position === 'after').map(d => d.layer)}\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\nimport { cn } from '@undp/design-system-react/cn';\r\n\r\nimport { Graph } from './Graph';\r\n\r\nimport {\r\n AnnotationSettingsDataType,\r\n CustomHighlightAreaSettingsDataType,\r\n Languages,\r\n MultiLineAltChartDataType,\r\n ReferenceDataType,\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 { GraphFooter } from '@/Components/Elements/GraphFooter';\r\nimport { GraphHeader } from '@/Components/Elements/GraphHeader';\r\nimport { Colors } from '@/Components/ColorPalette';\r\nimport { EmptyState } from '@/Components/Elements/EmptyState';\r\nimport { ColorLegendWithMouseOver } from '@/Components/Elements/ColorLegendWithMouseOver';\r\nimport { uniqBy } from '@/Utils/uniqBy';\r\n\r\ninterface Props {\r\n // Data\r\n /** Array of data objects */\r\n data: MultiLineAltChartDataType[];\r\n\r\n // Titles, Labels, and Sources\r\n /** Title of the graph */\r\n graphTitle?: string | React.ReactNode;\r\n /** Description of the graph */\r\n graphDescription?: string | React.ReactNode;\r\n /** Footnote for the graph */\r\n footNote?: string | React.ReactNode;\r\n /** Source data for the graph */\r\n sources?: SourcesDataType[];\r\n /** Accessibility label */\r\n ariaLabel?: string;\r\n\r\n // Colors and Styling\r\n /** Color or array of colors for lines */\r\n colors?: string | string[];\r\n /** Domain of colors for the graph */\r\n colorDomain?: (string | number)[];\r\n /** Toggle the visibility of labels of the lines when highlighted or mouse hovered */\r\n showLabels?: boolean;\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 */\r\n prefix?: string;\r\n /** Suffix for values */\r\n suffix?: string;\r\n /** Maximum value for the chart */\r\n maxValue?: number;\r\n /** Minimum value for the chart */\r\n minValue?: number;\r\n /** Reference values for comparison */\r\n refValues?: ReferenceDataType[];\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 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 /** 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 /** Title for the Y-axis */\r\n yAxisTitle?: string;\r\n /** Toggle visibility of color scale. This is only applicable if the data props hae color parameter */\r\n showColorScale?: boolean;\r\n /** Toggle visibility of NA color in the color scale. This is only applicable if the data props hae color parameter and showColorScale prop is true */\r\n showNAColor?: boolean;\r\n /** Defines how “NA” values should be displayed/labelled in the graph */\r\n naLabel?: string;\r\n /** Data points to highlight. Use the label value from data to highlight the data point */\r\n highlightedLines?: (string | number)[];\r\n /** Defines the opacity of the non-highlighted data */\r\n dimmedOpacity?: number;\r\n /** Annotations on the chart */\r\n annotations?: AnnotationSettingsDataType[];\r\n /** Highlighted area(square) on the chart */\r\n highlightAreaSettings?: HighlightAreaSettingsDataType[];\r\n /** Highlighted area(custom shape) on the chart */\r\n customHighlightAreaSettings?: CustomHighlightAreaSettingsDataType[];\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 MultiLineAltChart(props: Props) {\r\n const {\r\n data,\r\n graphTitle,\r\n showNAColor = true,\r\n colors,\r\n colorDomain,\r\n suffix = '',\r\n sources,\r\n prefix = '',\r\n graphDescription,\r\n height,\r\n width,\r\n footNote,\r\n noOfXTicks = 10,\r\n dateFormat = 'yyyy',\r\n padding,\r\n backgroundColor = false,\r\n leftMargin = 30,\r\n rightMargin = 50,\r\n topMargin = 20,\r\n bottomMargin = 25,\r\n showColorScale = true,\r\n tooltip,\r\n relativeHeight,\r\n onSeriesMouseOver,\r\n showLabels = true,\r\n refValues = [],\r\n highlightAreaSettings = [],\r\n graphID,\r\n minValue,\r\n maxValue,\r\n highlightedLines = [],\r\n graphDownload = false,\r\n dataDownload = false,\r\n animate = false,\r\n language = 'en',\r\n colorLegendTitle,\r\n minHeight = 0,\r\n strokeWidth = 2,\r\n showDots = true,\r\n annotations = [],\r\n customHighlightAreaSettings = [],\r\n theme = 'light',\r\n ariaLabel,\r\n yAxisTitle,\r\n noOfYTicks = 5,\r\n minDate,\r\n maxDate,\r\n curveType = 'curve',\r\n styles,\r\n classNames,\r\n dimmedOpacity = 0.3,\r\n precision = 2,\r\n customLayers = [],\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 const [selectedColor, setSelectedColor] = useState<string | undefined>(undefined);\r\n\r\n const graphDiv = useRef<HTMLDivElement>(null);\r\n const graphParentDiv = useRef<HTMLDivElement>(null);\r\n useEffect(() => {\r\n const resizeObserver = new ResizeObserver(entries => {\r\n setSvgWidth(width || entries[0].target.clientWidth || 620);\r\n setSvgHeight(height || entries[0].target.clientHeight || 480);\r\n });\r\n if (graphDiv.current) {\r\n setSvgHeight(graphDiv.current.clientHeight || 480);\r\n setSvgWidth(graphDiv.current.clientWidth || 620);\r\n if (!width) resizeObserver.observe(graphDiv.current);\r\n }\r\n return () => resizeObserver.disconnect();\r\n }, [width, height]);\r\n\r\n return (\r\n <div\r\n className={`${theme || 'light'} flex ${width ? 'w-fit grow-0' : 'w-full grow'}`}\r\n dir={language === 'he' || language === 'ar' ? 'rtl' : undefined}\r\n >\r\n <div\r\n className={cn(\r\n `${\r\n !backgroundColor\r\n ? 'bg-transparent '\r\n : backgroundColor === true\r\n ? 'bg-primary-gray-200 dark:bg-primary-gray-650 '\r\n : ''\r\n }ml-auto mr-auto flex flex-col grow h-inherit ${language || 'en'}`,\r\n width ? 'w-fit' : 'w-full',\r\n classNames?.graphContainer,\r\n )}\r\n style={{\r\n ...(styles?.graphContainer || {}),\r\n ...(backgroundColor && backgroundColor !== true ? { backgroundColor } : {}),\r\n }}\r\n id={graphID}\r\n ref={graphParentDiv}\r\n aria-label={\r\n ariaLabel ||\r\n `${\r\n graphTitle ? `The graph shows ${graphTitle}. ` : ''\r\n }This is a multi-line chart that shows trends over time.${\r\n graphDescription ? ` ${graphDescription}` : ''\r\n }`\r\n }\r\n >\r\n <div\r\n className='flex grow'\r\n style={{ padding: backgroundColor ? padding || '1rem' : padding || 0 }}\r\n >\r\n <div className='flex flex-col w-full gap-4 grow justify-between'>\r\n {graphTitle || graphDescription || graphDownload || dataDownload ? (\r\n <GraphHeader\r\n styles={{\r\n title: styles?.title,\r\n description: styles?.description,\r\n }}\r\n classNames={{\r\n title: classNames?.title,\r\n description: classNames?.description,\r\n }}\r\n graphTitle={graphTitle}\r\n graphDescription={graphDescription}\r\n width={width}\r\n graphDownload={graphDownload ? graphParentDiv.current : undefined}\r\n dataDownload={\r\n dataDownload\r\n ? data.map(d => d.data).filter(d => d !== undefined).length > 0\r\n ? data.map(d => d.data).filter(d => d !== undefined)\r\n : data.filter(d => d !== undefined)\r\n : null\r\n }\r\n />\r\n ) : null}\r\n <div className='grow flex flex-col justify-center gap-3 w-full'>\r\n {data.length === 0 ? (\r\n <EmptyState />\r\n ) : (\r\n <>\r\n {showColorScale && data.filter(el => el.color).length !== 0 ? (\r\n <ColorLegendWithMouseOver\r\n width={width}\r\n colorLegendTitle={colorLegendTitle}\r\n colors={\r\n (colors as string[] | undefined) || Colors[theme].categoricalColors.colors\r\n }\r\n colorDomain={colorDomain || (uniqBy(data, 'color', true) as string[])}\r\n setSelectedColor={setSelectedColor}\r\n showNAColor={showNAColor}\r\n />\r\n ) : null}\r\n <div className='w-full grow leading-0' ref={graphDiv} aria-label='Graph area'>\r\n {(width || svgWidth) && (height || svgHeight) ? (\r\n <Graph\r\n data={data}\r\n lineColors={\r\n data.filter(el => el.color).length === 0\r\n ? colors\r\n ? [colors as string]\r\n : [Colors.primaryColors['blue-600']]\r\n : (colors as string[] | undefined) ||\r\n Colors[theme].categoricalColors.colors\r\n }\r\n width={width || svgWidth}\r\n height={Math.max(\r\n minHeight,\r\n height ||\r\n (relativeHeight\r\n ? minHeight\r\n ? (width || svgWidth) * relativeHeight > minHeight\r\n ? (width || svgWidth) * relativeHeight\r\n : minHeight\r\n : (width || svgWidth) * relativeHeight\r\n : svgHeight),\r\n )}\r\n dateFormat={dateFormat}\r\n noOfXTicks={noOfXTicks}\r\n leftMargin={leftMargin}\r\n rightMargin={rightMargin}\r\n topMargin={topMargin}\r\n bottomMargin={bottomMargin}\r\n tooltip={tooltip}\r\n onSeriesMouseOver={onSeriesMouseOver}\r\n suffix={suffix}\r\n prefix={prefix}\r\n highlightAreaSettings={highlightAreaSettings}\r\n refValues={refValues}\r\n minValue={minValue}\r\n maxValue={maxValue}\r\n highlightedLines={highlightedLines}\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 rtl={language === 'he' || language === 'ar'}\r\n strokeWidth={strokeWidth}\r\n showDots={showDots}\r\n annotations={annotations}\r\n customHighlightAreaSettings={customHighlightAreaSettings}\r\n yAxisTitle={yAxisTitle}\r\n noOfYTicks={noOfYTicks}\r\n minDate={minDate}\r\n maxDate={maxDate}\r\n curveType={curveType}\r\n styles={styles}\r\n classNames={classNames}\r\n selectedColor={selectedColor}\r\n showLabels={showLabels}\r\n colorDomain={\r\n data.filter(el => el.color).length === 0\r\n ? []\r\n : colorDomain || (uniqBy(data, 'color', true) as string[])\r\n }\r\n dimmedOpacity={dimmedOpacity}\r\n precision={precision}\r\n customLayers={customLayers}\r\n naLabel={naLabel}\r\n />\r\n ) : null}\r\n </div>\r\n </>\r\n )}\r\n </div>\r\n {sources || footNote ? (\r\n <GraphFooter\r\n styles={{ footnote: styles?.footnote, source: styles?.source }}\r\n classNames={{\r\n footnote: classNames?.footnote,\r\n source: classNames?.source,\r\n }}\r\n sources={sources}\r\n footNote={footNote}\r\n width={width}\r\n />\r\n ) : null}\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n );\r\n}\r\n"],"names":["Graph","props","data","width","height","lineColors","dateFormat","noOfXTicks","rightMargin","topMargin","bottomMargin","suffix","prefix","leftMargin","tooltip","onSeriesMouseOver","refValues","highlightAreaSettings","minValue","maxValue","highlightedLines","animate","rtl","strokeWidth","showDots","annotations","customHighlightAreaSettings","yAxisTitle","noOfYTicks","minDate","maxDate","curveType","styles","colorDomain","selectedColor","classNames","showLabels","dimmedOpacity","precision","naLabel","customLayers","svgRef","useRef","isInView","useInView","hasAnimatedOnce","setHasAnimatedOnce","useState","useEffect","timeout","curve","curveLinear","curveStep","curveStepAfter","curveStepBefore","curveMonotoneX","dataFormatted","orderBy","d","parse","checkIfNullOrUndefined","labels","uniqBy","dates","sort","a","b","ascending","mouseOverData","setMouseOverData","eventX","setEventX","eventY","setEventY","margin","MouseoverRectRef","lineArray","el","highlightAreaSettingsFormatted","customHighlightAreaSettingsFormatted","j","graphWidth","graphHeight","minYear","maxYear","minParam","maxParam","x","scaleTime","y","scaleLinear","voronoiDiagram","Delaunay","lineShape","line","yTicks","xTicks","mousemove","event","selectedData","bisectCenter","pointer","mouseout","select","jsxs","Fragment","jsx","motion","HighlightArea","CustomArea","YTicksAndGridLines","Axis","numberFormattingFunction","AxisTitle","XTicksAndGridLines","format","cn","Colors","RefLineY","endPoints","getLineEndPoint","connectorSettings","labelSettings","Annotation","Tooltip","MultiLineAltChart","graphTitle","showNAColor","colors","sources","graphDescription","footNote","padding","backgroundColor","showColorScale","relativeHeight","graphID","graphDownload","dataDownload","language","colorLegendTitle","minHeight","theme","ariaLabel","svgWidth","setSvgWidth","svgHeight","setSvgHeight","setSelectedColor","graphDiv","graphParentDiv","resizeObserver","entries","GraphHeader","EmptyState","ColorLegendWithMouseOver","GraphFooter"],"mappings":"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"}
1
+ {"version":3,"file":"MultiLineAltChart.cjs","sources":["../src/Components/Graphs/LineCharts/MultiLineAltChart/Graph.tsx","../src/Components/Graphs/LineCharts/MultiLineAltChart/index.tsx"],"sourcesContent":["import { useEffect, useRef, useState } from 'react';\r\nimport {\r\n line,\r\n curveLinear,\r\n curveMonotoneX,\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 { ascending, sort } from 'd3-array';\r\nimport { cn } from '@undp/design-system-react/cn';\r\nimport { Delaunay } from 'd3-delaunay';\r\nimport { motion, useInView } from 'motion/react';\r\nimport orderBy from 'lodash.orderby';\r\n\r\nimport {\r\n AnimateDataType,\r\n AnnotationSettingsDataType,\r\n ClassNameObject,\r\n CurveTypes,\r\n CustomHighlightAreaSettingsDataType,\r\n CustomLayerDataType,\r\n HighlightAreaSettingsDataType,\r\n MultiLineAltChartDataType,\r\n ReferenceDataType,\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 { getLineEndPoint } from '@/Utils/getLineEndPoint';\r\nimport { AxisTitle } from '@/Components/Elements/Axes/AxisTitle';\r\nimport { Axis } from '@/Components/Elements/Axes/Axis';\r\nimport { XTicksAndGridLines } from '@/Components/Elements/Axes/XTicksAndGridLines';\r\nimport { RefLineY } from '@/Components/Elements/ReferenceLine';\r\nimport { Annotation } from '@/Components/Elements/Annotations';\r\nimport { YTicksAndGridLines } from '@/Components/Elements/Axes/YTicksAndGridLines';\r\nimport { CustomArea } from '@/Components/Elements/HighlightArea/customArea';\r\nimport { HighlightArea } from '@/Components/Elements/HighlightArea';\r\nimport { Colors } from '@/Components/ColorPalette';\r\nimport { uniqBy } from '@/Utils/uniqBy';\r\n\r\ninterface Props {\r\n // Data\r\n /** Array of data objects */\r\n data: MultiLineAltChartDataType[];\r\n lineColors: string[];\r\n width: number;\r\n height: number;\r\n dateFormat: string;\r\n noOfXTicks: number;\r\n topMargin: number;\r\n bottomMargin: number;\r\n leftMargin: number;\r\n rightMargin: number;\r\n suffix: string;\r\n prefix: string;\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n tooltip?: string | ((_d: any) => React.ReactNode);\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onSeriesMouseOver?: (_d: any) => void;\r\n highlightAreaSettings: HighlightAreaSettingsDataType[];\r\n refValues: ReferenceDataType[];\r\n maxValue?: number;\r\n minValue?: number;\r\n highlightedLines: (string | number)[];\r\n animate: AnimateDataType;\r\n rtl: boolean;\r\n strokeWidth: number;\r\n showLabels: boolean;\r\n showDots: boolean;\r\n annotations: AnnotationSettingsDataType[];\r\n customHighlightAreaSettings: CustomHighlightAreaSettingsDataType[];\r\n yAxisTitle?: string;\r\n noOfYTicks: number;\r\n minDate?: string | number;\r\n maxDate?: string | number;\r\n colorDomain: (string | number)[];\r\n curveType: CurveTypes;\r\n styles?: StyleObject;\r\n classNames?: ClassNameObject;\r\n selectedColor?: string;\r\n dimmedOpacity: number;\r\n precision: number;\r\n customLayers: CustomLayerDataType[];\r\n naLabel: string;\r\n}\r\n\r\ninterface FormattedDataType {\r\n y: number;\r\n date: Date;\r\n label: number | string;\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 dateFormat,\r\n noOfXTicks,\r\n rightMargin,\r\n topMargin,\r\n bottomMargin,\r\n suffix,\r\n prefix,\r\n leftMargin,\r\n tooltip,\r\n onSeriesMouseOver,\r\n refValues,\r\n highlightAreaSettings,\r\n minValue,\r\n maxValue,\r\n highlightedLines,\r\n animate,\r\n rtl,\r\n strokeWidth,\r\n showDots,\r\n annotations,\r\n customHighlightAreaSettings,\r\n yAxisTitle,\r\n noOfYTicks,\r\n minDate,\r\n maxDate,\r\n curveType,\r\n styles,\r\n colorDomain,\r\n selectedColor,\r\n classNames,\r\n showLabels,\r\n dimmedOpacity,\r\n precision,\r\n naLabel,\r\n customLayers,\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 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 ).filter(d => !checkIfNullOrUndefined(d.y));\r\n const labels = uniqBy(dataFormatted, 'label', true) as (string | number)[];\r\n const dates = sort(\r\n uniqBy(data, 'date', true).map(d => parse(`${d}`, dateFormat, new Date())),\r\n (a, b) => ascending(a, b),\r\n );\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: yAxisTitle ? leftMargin + 30 : leftMargin,\r\n right: rightMargin,\r\n };\r\n const MouseoverRectRef = useRef(null);\r\n const lineArray = labels.map(d =>\r\n orderBy(\r\n dataFormatted.filter(el => el.label == d),\r\n ['date'],\r\n ['asc'],\r\n ),\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 customHighlightAreaSettingsFormatted = customHighlightAreaSettings.map(d => ({\r\n ...d,\r\n coordinates: d.coordinates.map((el, j) =>\r\n j % 2 === 0 ? parse(`${el}`, dateFormat, new Date()) : (el as number),\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()) : dates[0];\r\n const maxYear = maxDate ? parse(`${maxDate}`, dateFormat, new Date()) : dates[dates.length - 1];\r\n const minParam: number = checkIfNullOrUndefined(minValue)\r\n ? Math.min(...(dataFormatted.map(d => d.y).filter(d => !checkIfNullOrUndefined(d)) as number[]))\r\n ? (Math.min(\r\n ...(dataFormatted.map(d => d.y).filter(d => !checkIfNullOrUndefined(d)) as number[]),\r\n ) as number) > 0\r\n ? 0\r\n : (Math.min(\r\n ...(dataFormatted.map(d => d.y).filter(d => !checkIfNullOrUndefined(d)) as number[]),\r\n ) as number)\r\n : 0\r\n : (minValue as number);\r\n const maxParam: number = (Math.max(\r\n ...(dataFormatted.map(d => d.y).filter(d => !checkIfNullOrUndefined(d)) as number[]),\r\n ) as number)\r\n ? (Math.max(\r\n ...(dataFormatted.map(d => d.y).filter(d => !checkIfNullOrUndefined(d)) as number[]),\r\n ) as number)\r\n : 0;\r\n\r\n const x = scaleTime().domain([minYear, maxYear]).range([0, graphWidth]);\r\n const y = scaleLinear()\r\n .domain([\r\n checkIfNullOrUndefined(minValue) ? minParam : (minValue as number),\r\n checkIfNullOrUndefined(maxValue) ? (maxParam > 0 ? maxParam : 0) : (maxValue as number),\r\n ])\r\n .range([graphHeight, 0])\r\n .nice();\r\n\r\n const voronoiDiagram = Delaunay.from(\r\n dataFormatted.filter(d => !checkIfNullOrUndefined(d.date) && !checkIfNullOrUndefined(d.y)),\r\n d => x(d.date),\r\n d => y(d.y as number),\r\n ).voronoi([0, 0, graphWidth < 0 ? 0 : graphWidth, graphHeight < 0 ? 0 : graphHeight]);\r\n const lineShape = line<FormattedDataType>()\r\n .x(d => x(d.date))\r\n .y(d => y(d.y))\r\n .curve(curve);\r\n const yTicks = y.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 setEventY(event.clientY);\r\n setEventX(event.clientX);\r\n onSeriesMouseOver?.(selectedData || dataFormatted[dataFormatted.length - 1]);\r\n };\r\n const mouseout = () => {\r\n setMouseOverData(undefined);\r\n setEventX(undefined);\r\n setEventY(undefined);\r\n };\r\n select(MouseoverRectRef.current).on('mousemove', mousemove).on('mouseout', mouseout);\r\n onSeriesMouseOver?.(undefined);\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 <CustomArea\r\n areaSettings={customHighlightAreaSettingsFormatted}\r\n scaleX={x}\r\n scaleY={y}\r\n animate={animate}\r\n isInView={isInView}\r\n />\r\n <g>\r\n <YTicksAndGridLines\r\n values={yTicks.filter(d => d !== 0)}\r\n y={yTicks.filter(d => d !== 0).map(d => y(d))}\r\n x1={0 - leftMargin}\r\n x2={graphWidth + margin.right}\r\n styles={{\r\n gridLines: styles?.yAxis?.gridLines,\r\n labels: styles?.yAxis?.labels,\r\n }}\r\n classNames={{\r\n gridLines: classNames?.yAxis?.gridLines,\r\n labels: classNames?.yAxis?.labels,\r\n }}\r\n suffix={suffix}\r\n prefix={prefix}\r\n labelType='secondary'\r\n showGridLines\r\n labelPos='vertical'\r\n precision={precision}\r\n />\r\n <Axis\r\n y1={y(minParam < 0 ? 0 : minParam)}\r\n y2={y(minParam < 0 ? 0 : minParam)}\r\n x1={0 - leftMargin}\r\n x2={graphWidth + margin.right}\r\n label={numberFormattingFunction(\r\n minParam < 0 ? 0 : minParam,\r\n 'NA',\r\n precision,\r\n prefix,\r\n suffix,\r\n )}\r\n labelPos={{\r\n x: 0 - leftMargin,\r\n y: y(minParam < 0 ? 0 : minParam),\r\n dx: 0,\r\n dy: maxParam < 0 ? '1em' : -5,\r\n }}\r\n classNames={{\r\n axis: classNames?.xAxis?.axis,\r\n label: classNames?.yAxis?.labels,\r\n }}\r\n styles={{\r\n axis: styles?.xAxis?.axis,\r\n label: styles?.yAxis?.labels,\r\n }}\r\n />\r\n <AxisTitle\r\n x={0 - leftMargin - 15}\r\n y={graphHeight / 2}\r\n style={styles?.yAxis?.title}\r\n className={classNames?.yAxis?.title}\r\n text={yAxisTitle}\r\n rotate90\r\n />\r\n </g>\r\n <g>\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 suffix={suffix}\r\n prefix={prefix}\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 <motion.g>\r\n {lineArray.map(d => (\r\n <motion.g\r\n key={d[0].label}\r\n exit={{ opacity: 0, transition: { duration: animate.duration } }}\r\n variants={{\r\n initial: {\r\n opacity: mouseOverData\r\n ? d[0].label === mouseOverData.label\r\n ? 1\r\n : dimmedOpacity\r\n : selectedColor\r\n ? d[0].color\r\n ? lineColors[colorDomain.indexOf(d[0].color)] === selectedColor\r\n ? 1\r\n : dimmedOpacity\r\n : dimmedOpacity\r\n : highlightedLines.length !== 0\r\n ? highlightedLines.indexOf(d[0].label) !== -1\r\n ? 1\r\n : dimmedOpacity\r\n : 1,\r\n },\r\n whileInView: {\r\n opacity: mouseOverData\r\n ? d[0].label === mouseOverData.label\r\n ? 1\r\n : dimmedOpacity\r\n : selectedColor\r\n ? d[0].color\r\n ? lineColors[colorDomain.indexOf(d[0].color)] === selectedColor\r\n ? 1\r\n : dimmedOpacity\r\n : dimmedOpacity\r\n : highlightedLines.length !== 0\r\n ? highlightedLines.indexOf(d[0].label) !== -1\r\n ? 1\r\n : dimmedOpacity\r\n : 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 lineShape(\r\n d.filter((el): el is FormattedDataType => !checkIfNullOrUndefined(el.y)),\r\n ) || ''\r\n }\r\n style={{\r\n fill: 'none',\r\n strokeWidth: mouseOverData\r\n ? d[0].label === mouseOverData.label\r\n ? strokeWidth + Math.max(2, 0.5 * strokeWidth)\r\n : strokeWidth\r\n : highlightedLines.length !== 0\r\n ? highlightedLines.indexOf(d[0].label) !== -1\r\n ? strokeWidth + Math.max(2, 0.5 * strokeWidth)\r\n : strokeWidth\r\n : strokeWidth,\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 lineShape(\r\n d.filter((el): el is FormattedDataType => !checkIfNullOrUndefined(el.y)),\r\n ) || '',\r\n opacity: 1,\r\n stroke:\r\n data.filter(el => el.color).length === 0\r\n ? lineColors[0]\r\n : !d[0].color\r\n ? Colors.gray\r\n : lineColors[colorDomain.indexOf(d[0].color)],\r\n },\r\n whileInView: {\r\n pathLength: 1,\r\n d:\r\n lineShape(\r\n d.filter((el): el is FormattedDataType => !checkIfNullOrUndefined(el.y)),\r\n ) || '',\r\n opacity: 1,\r\n stroke:\r\n data.filter(el => el.color).length === 0\r\n ? lineColors[0]\r\n : !d[0].color\r\n ? Colors.gray\r\n : lineColors[colorDomain.indexOf(d[0].color)],\r\n transition: { duration: animate.duration },\r\n },\r\n }}\r\n initial='initial'\r\n animate={isInView ? 'whileInView' : 'initial'}\r\n />\r\n {d.map((el, j) => (\r\n <motion.g key={j}>\r\n {!checkIfNullOrUndefined(el.y) ? (\r\n <>\r\n {showDots ? (\r\n <motion.circle\r\n r={graphWidth / d.length < 5 ? 0 : graphWidth / d.length < 20 ? 2 : 4}\r\n exit={{ opacity: 0, transition: { duration: animate.duration } }}\r\n variants={{\r\n initial: {\r\n opacity: 0,\r\n fill:\r\n data.filter(el => el.color).length === 0\r\n ? lineColors[0]\r\n : !d[0].color\r\n ? Colors.gray\r\n : lineColors[colorDomain.indexOf(d[0].color)],\r\n cx: x(el.date),\r\n cy: y(el.y as number),\r\n },\r\n whileInView: {\r\n opacity: 1,\r\n fill:\r\n data.filter(el => el.color).length === 0\r\n ? lineColors[0]\r\n : !d[0].color\r\n ? Colors.gray\r\n : lineColors[colorDomain.indexOf(d[0].color)],\r\n transition: {\r\n duration: hasAnimatedOnce ? animate.duration : 0.5,\r\n delay: hasAnimatedOnce ? 0 : animate.duration,\r\n },\r\n cx: x(el.date),\r\n cy: y(el.y as number),\r\n },\r\n }}\r\n initial='initial'\r\n animate={isInView ? 'whileInView' : 'initial'}\r\n />\r\n ) : null}\r\n </>\r\n ) : null}\r\n </motion.g>\r\n ))}\r\n {(highlightedLines.indexOf(d[0].label) !== -1 ||\r\n mouseOverData?.label === d[0].label) &&\r\n showLabels ? (\r\n <motion.text\r\n className='text-sm font-bold'\r\n dx={5}\r\n dy={4}\r\n exit={{ opacity: 0, transition: { duration: animate.duration } }}\r\n variants={{\r\n initial: {\r\n opacity: 0,\r\n fill:\r\n data.filter(el => el.color).length === 0\r\n ? lineColors[0]\r\n : !d[0].color\r\n ? Colors.gray\r\n : lineColors[colorDomain.indexOf(d[0].color)],\r\n x: x(d[d.length - 1].date),\r\n y: y(d[d.length - 1].y as number),\r\n },\r\n whileInView: {\r\n opacity: 1,\r\n fill:\r\n data.filter(el => el.color).length === 0\r\n ? lineColors[0]\r\n : !d[0].color\r\n ? Colors.gray\r\n : lineColors[colorDomain.indexOf(d[0].color)],\r\n x: x(d[d.length - 1].date),\r\n y: y(d[d.length - 1].y 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 {d[0].label}\r\n </motion.text>\r\n ) : null}\r\n </motion.g>\r\n ))}\r\n {mouseOverData ? (\r\n <text\r\n y={y(mouseOverData.y) - 8}\r\n x={x(mouseOverData.date)}\r\n className={cn('graph-value text-sm font-bold', classNames?.graphObjectValues)}\r\n style={{\r\n fill:\r\n data.filter(el => el.color).length === 0\r\n ? lineColors[0]\r\n : !mouseOverData.color\r\n ? Colors.gray\r\n : lineColors[colorDomain.indexOf(mouseOverData.color)],\r\n textAnchor: 'middle',\r\n ...(styles?.graphObjectValues || {}),\r\n }}\r\n >\r\n {numberFormattingFunction(mouseOverData.y, naLabel, precision, prefix, suffix)}\r\n </text>\r\n ) : null}\r\n </motion.g>\r\n {dataFormatted\r\n .filter(d => !checkIfNullOrUndefined(d.y))\r\n .map((d, i) => {\r\n return (\r\n <g key={i}>\r\n <path\r\n d={voronoiDiagram.renderCell(\r\n dataFormatted.findIndex(el => el.label === d.label && el.date === d.date),\r\n )}\r\n opacity={0}\r\n onMouseEnter={event => {\r\n setMouseOverData(d);\r\n setEventY(event.clientY);\r\n setEventX(event.clientX);\r\n onSeriesMouseOver?.(d);\r\n }}\r\n onMouseMove={event => {\r\n setMouseOverData(d);\r\n setEventY(event.clientY);\r\n setEventX(event.clientX);\r\n }}\r\n onMouseLeave={() => {\r\n setMouseOverData(undefined);\r\n setEventX(undefined);\r\n setEventY(undefined);\r\n onSeriesMouseOver?.(undefined);\r\n }}\r\n />\r\n </g>\r\n );\r\n })}\r\n {refValues ? (\r\n <>\r\n {refValues.map((el, i) => (\r\n <RefLineY\r\n key={i}\r\n text={el.text}\r\n color={el.color}\r\n y={y(el.value as number)}\r\n x1={0 - leftMargin}\r\n x2={graphWidth + margin.right}\r\n classNames={el.classNames}\r\n styles={el.styles}\r\n animate={animate}\r\n isInView={isInView}\r\n />\r\n ))}\r\n </>\r\n ) : null}\r\n <g>\r\n {annotations.map((d, i) => {\r\n const endPoints = getLineEndPoint(\r\n {\r\n x: d.xCoordinate\r\n ? x(parse(`${d.xCoordinate}`, dateFormat, new Date())) + (d.xOffset || 0)\r\n : 0 + (d.xOffset || 0),\r\n y: d.yCoordinate\r\n ? y(d.yCoordinate as number) + (d.yOffset || 0) - 8\r\n : 0 + (d.yOffset || 0) - 8,\r\n },\r\n {\r\n x: d.xCoordinate ? x(parse(`${d.xCoordinate}`, dateFormat, new Date())) : 0,\r\n y: d.yCoordinate ? y(d.yCoordinate as number) : 0,\r\n },\r\n checkIfNullOrUndefined(d.connectorRadius) ? 3.5 : (d.connectorRadius as number),\r\n );\r\n const connectorSettings = d.showConnector\r\n ? {\r\n y1: endPoints.y,\r\n x1: endPoints.x,\r\n y2: d.yCoordinate\r\n ? y(d.yCoordinate as number) + (d.yOffset || 0)\r\n : 0 + (d.yOffset || 0),\r\n x2: d.xCoordinate\r\n ? x(parse(`${d.xCoordinate}`, dateFormat, new Date())) + (d.xOffset || 0)\r\n : 0 + (d.xOffset || 0),\r\n cy: d.yCoordinate ? y(d.yCoordinate as number) : 0,\r\n cx: d.xCoordinate ? x(parse(`${d.xCoordinate}`, dateFormat, new Date())) : 0,\r\n circleRadius: checkIfNullOrUndefined(d.connectorRadius)\r\n ? 3.5\r\n : (d.connectorRadius as number),\r\n strokeWidth: d.showConnector === true ? 2 : Math.min(d.showConnector || 0, 1),\r\n }\r\n : undefined;\r\n const labelSettings = {\r\n y: d.yCoordinate\r\n ? y(d.yCoordinate as number) + (d.yOffset || 0) - 8\r\n : 0 + (d.yOffset || 0) - 8,\r\n x: rtl\r\n ? 0\r\n : d.xCoordinate\r\n ? x(parse(`${d.xCoordinate}`, dateFormat, new Date())) + (d.xOffset || 0)\r\n : 0 + (d.xOffset || 0),\r\n width: rtl\r\n ? d.xCoordinate\r\n ? x(parse(`${d.xCoordinate}`, dateFormat, new Date())) + (d.xOffset || 0)\r\n : 0 + (d.xOffset || 0)\r\n : graphWidth +\r\n margin.right -\r\n (d.xCoordinate\r\n ? x(parse(`${d.xCoordinate}`, dateFormat, new Date())) + (d.xOffset || 0)\r\n : 0 + (d.xOffset || 0)),\r\n maxWidth: d.maxWidth,\r\n fontWeight: d.fontWeight,\r\n align: d.align,\r\n };\r\n return (\r\n <Annotation\r\n key={i}\r\n color={d.color}\r\n connectorsSettings={connectorSettings}\r\n labelSettings={labelSettings}\r\n text={d.text}\r\n classNames={d.classNames}\r\n styles={d.styles}\r\n animate={animate}\r\n isInView={isInView}\r\n />\r\n );\r\n })}\r\n </g>\r\n {customLayers.filter(d => d.position === 'after').map(d => d.layer)}\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 {\r\n AnnotationSettingsDataType,\r\n CustomHighlightAreaSettingsDataType,\r\n Languages,\r\n MultiLineAltChartDataType,\r\n ReferenceDataType,\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 { GraphFooter } from '@/Components/Elements/GraphFooter';\r\nimport { GraphHeader } from '@/Components/Elements/GraphHeader';\r\nimport { Colors } from '@/Components/ColorPalette';\r\nimport { EmptyState } from '@/Components/Elements/EmptyState';\r\nimport { ColorLegendWithMouseOver } from '@/Components/Elements/ColorLegendWithMouseOver';\r\nimport { uniqBy } from '@/Utils/uniqBy';\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: MultiLineAltChartDataType[];\r\n\r\n // Titles, Labels, and Sources\r\n /** Title of the graph */\r\n graphTitle?: string | React.ReactNode;\r\n /** Description of the graph */\r\n graphDescription?: string | React.ReactNode;\r\n /** Footnote for the graph */\r\n footNote?: string | React.ReactNode;\r\n /** Source data for the graph */\r\n sources?: SourcesDataType[];\r\n /** Accessibility label */\r\n ariaLabel?: string;\r\n\r\n // Colors and Styling\r\n /** Color or array of colors for lines */\r\n colors?: string | string[];\r\n /** Domain of colors for the graph */\r\n colorDomain?: (string | number)[];\r\n /** Toggle the visibility of labels of the lines when highlighted or mouse hovered */\r\n showLabels?: boolean;\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 */\r\n prefix?: string;\r\n /** Suffix for values */\r\n suffix?: string;\r\n /** Maximum value for the chart */\r\n maxValue?: number;\r\n /** Minimum value for the chart */\r\n minValue?: number;\r\n /** Reference values for comparison */\r\n refValues?: ReferenceDataType[];\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 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 /** 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 /** Title for the Y-axis */\r\n yAxisTitle?: string;\r\n /** Toggle visibility of color scale. This is only applicable if the data props hae color parameter */\r\n showColorScale?: boolean;\r\n /** Toggle visibility of NA color in the color scale. This is only applicable if the data props hae color parameter and showColorScale prop is true */\r\n showNAColor?: boolean;\r\n /** Defines how “NA” values should be displayed/labelled in the graph */\r\n naLabel?: string;\r\n /** Data points to highlight. Use the label value from data to highlight the data point */\r\n highlightedLines?: (string | number)[];\r\n /** Defines the opacity of the non-highlighted data */\r\n dimmedOpacity?: number;\r\n /** Annotations on the chart */\r\n annotations?: AnnotationSettingsDataType[];\r\n /** Highlighted area(square) on the chart */\r\n highlightAreaSettings?: HighlightAreaSettingsDataType[];\r\n /** Highlighted area(custom shape) on the chart */\r\n customHighlightAreaSettings?: CustomHighlightAreaSettingsDataType[];\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 MultiLineAltChart(props: Props) {\r\n const {\r\n data,\r\n graphTitle,\r\n showNAColor = true,\r\n colors,\r\n colorDomain,\r\n suffix = '',\r\n sources,\r\n prefix = '',\r\n graphDescription,\r\n height,\r\n width,\r\n footNote,\r\n noOfXTicks = 10,\r\n dateFormat = 'yyyy',\r\n padding,\r\n backgroundColor = false,\r\n leftMargin = 30,\r\n rightMargin = 50,\r\n topMargin = 20,\r\n bottomMargin = 25,\r\n showColorScale = true,\r\n tooltip,\r\n relativeHeight,\r\n onSeriesMouseOver,\r\n showLabels = true,\r\n refValues = [],\r\n highlightAreaSettings = [],\r\n graphID,\r\n minValue,\r\n maxValue,\r\n highlightedLines = [],\r\n graphDownload = false,\r\n dataDownload = false,\r\n animate = false,\r\n language = 'en',\r\n colorLegendTitle,\r\n minHeight = 0,\r\n strokeWidth = 2,\r\n showDots = true,\r\n annotations = [],\r\n customHighlightAreaSettings = [],\r\n theme = 'light',\r\n ariaLabel,\r\n yAxisTitle,\r\n noOfYTicks = 5,\r\n minDate,\r\n maxDate,\r\n curveType = 'curve',\r\n styles,\r\n classNames,\r\n dimmedOpacity = 0.3,\r\n precision = 2,\r\n customLayers = [],\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 const [selectedColor, setSelectedColor] = useState<string | undefined>(undefined);\r\n\r\n const graphDiv = useRef<HTMLDivElement>(null);\r\n const graphParentDiv = useRef<HTMLDivElement>(null);\r\n useEffect(() => {\r\n const resizeObserver = new ResizeObserver(entries => {\r\n setSvgWidth(entries[0].target.clientWidth || 620);\r\n setSvgHeight(entries[0].target.clientHeight || 480);\r\n });\r\n if (graphDiv.current) {\r\n resizeObserver.observe(graphDiv.current);\r\n }\r\n return () => resizeObserver.disconnect();\r\n }, []);\r\n\r\n return (\r\n <GraphContainer\r\n className={classNames?.graphContainer}\r\n style={styles?.graphContainer}\r\n id={graphID}\r\n ref={graphParentDiv}\r\n aria-label={ariaLabel}\r\n backgroundColor={backgroundColor}\r\n theme={theme}\r\n language={language}\r\n minHeight={minHeight}\r\n width={width}\r\n height={height}\r\n relativeHeight={relativeHeight}\r\n padding={padding}\r\n >\r\n {graphTitle || graphDescription || graphDownload || dataDownload ? (\r\n <GraphHeader\r\n styles={{\r\n title: styles?.title,\r\n description: styles?.description,\r\n }}\r\n classNames={{\r\n title: classNames?.title,\r\n description: classNames?.description,\r\n }}\r\n graphTitle={graphTitle}\r\n graphDescription={graphDescription}\r\n width={width}\r\n graphDownload={graphDownload ? graphParentDiv : undefined}\r\n dataDownload={\r\n dataDownload\r\n ? data.map(d => d.data).filter(d => d !== undefined).length > 0\r\n ? data.map(d => d.data).filter(d => d !== undefined)\r\n : data.filter(d => d !== undefined)\r\n : null\r\n }\r\n />\r\n ) : null}\r\n {data.length === 0 ? (\r\n <EmptyState />\r\n ) : (\r\n <>\r\n {showColorScale && data.filter(el => el.color).length !== 0 ? (\r\n <ColorLegendWithMouseOver\r\n width={width}\r\n colorLegendTitle={colorLegendTitle}\r\n colors={(colors as string[] | undefined) || Colors[theme].categoricalColors.colors}\r\n colorDomain={colorDomain || (uniqBy(data, 'color', true) as string[])}\r\n setSelectedColor={setSelectedColor}\r\n showNAColor={showNAColor}\r\n className={classNames?.colorLegend}\r\n />\r\n ) : null}\r\n <GraphArea ref={graphDiv}>\r\n {svgWidth && svgHeight ? (\r\n <Graph\r\n data={data}\r\n lineColors={\r\n data.filter(el => el.color).length === 0\r\n ? colors\r\n ? [colors as string]\r\n : [Colors.primaryColors['blue-600']]\r\n : (colors as string[] | undefined) || Colors[theme].categoricalColors.colors\r\n }\r\n width={svgWidth}\r\n height={svgHeight}\r\n dateFormat={dateFormat}\r\n noOfXTicks={noOfXTicks ?? getNoOfTicks(svgWidth)}\r\n leftMargin={leftMargin}\r\n rightMargin={rightMargin}\r\n topMargin={topMargin}\r\n bottomMargin={bottomMargin}\r\n tooltip={tooltip}\r\n onSeriesMouseOver={onSeriesMouseOver}\r\n suffix={suffix}\r\n prefix={prefix}\r\n highlightAreaSettings={highlightAreaSettings}\r\n refValues={refValues}\r\n minValue={minValue}\r\n maxValue={maxValue}\r\n highlightedLines={highlightedLines}\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 rtl={language === 'he' || language === 'ar'}\r\n strokeWidth={strokeWidth}\r\n showDots={showDots}\r\n annotations={annotations}\r\n customHighlightAreaSettings={customHighlightAreaSettings}\r\n yAxisTitle={yAxisTitle}\r\n noOfYTicks={noOfYTicks}\r\n minDate={minDate}\r\n maxDate={maxDate}\r\n curveType={curveType}\r\n styles={styles}\r\n classNames={classNames}\r\n selectedColor={selectedColor}\r\n showLabels={showLabels}\r\n colorDomain={\r\n data.filter(el => el.color).length === 0\r\n ? []\r\n : colorDomain || (uniqBy(data, 'color', true) as string[])\r\n }\r\n dimmedOpacity={dimmedOpacity}\r\n precision={precision}\r\n customLayers={customLayers}\r\n naLabel={naLabel}\r\n />\r\n ) : null}\r\n </GraphArea>\r\n </>\r\n )}\r\n {sources || footNote ? (\r\n <GraphFooter\r\n styles={{ footnote: styles?.footnote, source: styles?.source }}\r\n classNames={{\r\n footnote: classNames?.footnote,\r\n source: classNames?.source,\r\n }}\r\n sources={sources}\r\n footNote={footNote}\r\n width={width}\r\n />\r\n ) : null}\r\n </GraphContainer>\r\n );\r\n}\r\n"],"names":["Graph","props","$","_c","data","width","height","lineColors","dateFormat","noOfXTicks","rightMargin","topMargin","bottomMargin","suffix","prefix","leftMargin","tooltip","onSeriesMouseOver","refValues","highlightAreaSettings","minValue","maxValue","highlightedLines","animate","rtl","strokeWidth","showDots","annotations","customHighlightAreaSettings","yAxisTitle","noOfYTicks","minDate","maxDate","curveType","styles","colorDomain","selectedColor","classNames","showLabels","dimmedOpacity","precision","naLabel","customLayers","svgRef","useRef","t0","amount","once","isInView","useInView","hasAnimatedOnce","setHasAnimatedOnce","useState","t1","t2","duration","timeout","setTimeout","clearTimeout","useEffect","curve","curveLinear","curveStep","curveStepAfter","curveStepBefore","curveMonotoneX","t3","d","date","parse","Date","dataFormatted","orderBy","map","filter","_temp","labels","uniqBy","t4","d_1","dates","sort","_temp2","mouseOverData","setMouseOverData","undefined","eventX","setEventX","eventY","setEventY","t5","t6","top","bottom","left","right","margin","MouseoverRectRef","lineArray","el","label","t7","t8","d_3","coordinates","highlightAreaSettingsFormatted","t9","d_4","el_0","j","customHighlightAreaSettingsFormatted","graphWidth","graphHeight","minYear","maxYear","length","minParam","checkIfNullOrUndefined","Math","min","_temp3","_temp4","_temp5","_temp6","_temp7","_temp8","maxParam","max","_temp9","_temp0","_temp1","_temp10","x","scaleTime","domain","range","t10","y","scaleLinear","nice","voronoiDiagram","Delaunay","from","_temp11","d_16","voronoi","lineShape","line","d_18","yTicks","ticks","xTicks","mousemove","event","selectedData","bisectCenter","_temp12","invert","pointer","clientY","clientX","mouseout","select","current","on","t11","jsx","HighlightArea","t12","yAxis","gridLines","t13","t14","t15","t16","t17","t18","t19","t20","t21","t22","t23","numberFormattingFunction","t24","t25","t26","t27","dx","dy","t28","xAxis","axis","t29","t30","t31","t32","t33","t34","Axis","t35","t36","t37","title","t38","t39","AxisTitle","t40","d_24","format","t41","t42","d_25","t43","t44","t45","t46","t47","cn","t48","t49","t50","t51","_temp15","_temp16","t52","_temp27","d_30","i","renderCell","findIndex","el_12","event_0","event_1","t53","Fragment","el_13","i_0","RefLineY","text","color","value","t54","t55","d_31","i_1","endPoints","getLineEndPoint","xCoordinate","xOffset","yCoordinate","yOffset","connectorRadius","connectorSettings","showConnector","y1","x1","y2","x2","cy","cx","circleRadius","labelSettings","maxWidth","fontWeight","align","Annotation","t56","_temp28","_temp29","t57","Tooltip","jsxs","motion","CustomArea","YTicksAndGridLines","_temp13","_temp14","d_23","XTicksAndGridLines","d_28","opacity","transition","initial","indexOf","whileInView","_temp17","fill","pathLength","_temp18","stroke","_temp19","Colors","gray","_temp20","_temp21","el_6","j_0","_temp22","_temp23","delay","_temp24","_temp25","graphObjectValues","_temp26","textAnchor","d_33","layer","d_32","position","d_29","el_11","el_10","el_9","el_8","el_7","el_5","el_4","el_3","el_2","el_1","d_27","d_26","d_22","d_21","d_20","d_15","d_12","d_11","d_14","d_13","d_6","d_5","d_8","d_7","d_10","d_9","a","b","ascending","d_0","MultiLineAltChart","graphTitle","showNAColor","colors","sources","graphDescription","footNote","padding","backgroundColor","showColorScale","relativeHeight","graphID","graphDownload","dataDownload","language","colorLegendTitle","minHeight","theme","ariaLabel","svgWidth","setSvgWidth","svgHeight","setSvgHeight","setSelectedColor","graphDiv","graphParentDiv","Symbol","for","resizeObserver","ResizeObserver","entries","target","clientWidth","clientHeight","observe","disconnect","graphContainer","description","GraphHeader","EmptyState","ColorLegendWithMouseOver","categoricalColors","colorLegend","GraphArea","primaryColors","getNoOfTicks","footnote","source","GraphFooter","GraphContainer","d_2"],"mappings":"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"}
@@ -57,6 +57,7 @@ declare interface ClassNameObject {
57
57
  mouseOverLine?: string;
58
58
  regLine?: string;
59
59
  dataCards?: string;
60
+ colorLegend?: string;
60
61
  }
61
62
 
62
63
  declare type CurveTypes = 'linear' | 'curve' | 'step' | 'stepAfter' | 'stepBefore';