@undp/data-viz 2.1.8 → 2.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/AreaChart.cjs +1 -1
- package/dist/AreaChart.js +19 -19
- package/dist/AreaChart.js.map +1 -1
- package/dist/{Axis-CRyfcLjc.js → Axis-DoOqnt6g.js} +2 -2
- package/dist/{Axis-CRyfcLjc.js.map → Axis-DoOqnt6g.js.map} +1 -1
- package/dist/{Axis-DxRV2yMi.cjs → Axis-Dtjn-EgM.cjs} +2 -2
- package/dist/{Axis-DxRV2yMi.cjs.map → Axis-Dtjn-EgM.cjs.map} +1 -1
- package/dist/{AxisTitle-sS5bLLR7.cjs → AxisTitle-DV4n0RxE.cjs} +2 -2
- package/dist/{AxisTitle-sS5bLLR7.cjs.map → AxisTitle-DV4n0RxE.cjs.map} +1 -1
- package/dist/{AxisTitle-jeI7am8o.js → AxisTitle-VFq89Olw.js} +2 -2
- package/dist/{AxisTitle-jeI7am8o.js.map → AxisTitle-VFq89Olw.js.map} +1 -1
- package/dist/BarGraph.cjs +1 -1
- package/dist/BarGraph.js +24 -24
- package/dist/BarGraph.js.map +1 -1
- package/dist/BasicStatCard.cjs +1 -1
- package/dist/BasicStatCard.js +2 -2
- package/dist/BeeSwarmChart.cjs +1 -1
- package/dist/BeeSwarmChart.js +14 -14
- package/dist/BeeSwarmChart.js.map +1 -1
- package/dist/BiVariateChoroplethMap.cjs +1 -1
- package/dist/BiVariateChoroplethMap.cjs.map +1 -1
- package/dist/BiVariateChoroplethMap.js +48 -48
- package/dist/BiVariateChoroplethMap.js.map +1 -1
- package/dist/BulletChart.cjs +1 -1
- package/dist/BulletChart.js +22 -22
- package/dist/BulletChart.js.map +1 -1
- package/dist/ButterflyChart.cjs +1 -1
- package/dist/ButterflyChart.js +19 -19
- package/dist/ButterflyChart.js.map +1 -1
- package/dist/ChoroplethMap.cjs +1 -1
- package/dist/ChoroplethMap.cjs.map +1 -1
- package/dist/ChoroplethMap.js +51 -51
- package/dist/ChoroplethMap.js.map +1 -1
- package/dist/CirclePackingGraph.cjs +1 -1
- package/dist/CirclePackingGraph.js +4 -4
- package/dist/ColorLegend.cjs +1 -1
- package/dist/ColorLegend.js +2 -2
- package/dist/ColorLegendWithMouseOver.cjs +1 -1
- package/dist/ColorLegendWithMouseOver.js +2 -2
- package/dist/CopyTextButton.cjs +1 -16
- package/dist/CopyTextButton.cjs.map +1 -1
- package/dist/CopyTextButton.js +13 -31
- package/dist/CopyTextButton.js.map +1 -1
- package/dist/CsvDownloadButton.cjs +2 -20
- package/dist/CsvDownloadButton.cjs.map +1 -1
- package/dist/CsvDownloadButton.js +5 -26
- package/dist/CsvDownloadButton.js.map +1 -1
- package/dist/DataCards.cjs +1 -21
- package/dist/DataCards.cjs.map +1 -1
- package/dist/DataCards.js +18 -42
- package/dist/DataCards.js.map +1 -1
- package/dist/DataTable.cjs +1 -1
- package/dist/DataTable.js +6 -6
- package/dist/DataTable.js.map +1 -1
- package/dist/{DetailsModal-0Ry5nXiC.js → DetailsModal-BMCTgVsk.js} +4 -4
- package/dist/{DetailsModal-0Ry5nXiC.js.map → DetailsModal-BMCTgVsk.js.map} +1 -1
- package/dist/{DetailsModal-BN0HDFlV.cjs → DetailsModal-DHttOA80.cjs} +2 -2
- package/dist/{DetailsModal-BN0HDFlV.cjs.map → DetailsModal-DHttOA80.cjs.map} +1 -1
- package/dist/DifferenceLineChart.cjs +1 -1
- package/dist/DifferenceLineChart.js +22 -22
- package/dist/DifferenceLineChart.js.map +1 -1
- package/dist/DonutChart.cjs +1 -1
- package/dist/DonutChart.js +10 -10
- package/dist/DotDensityMap.cjs +1 -1
- package/dist/DotDensityMap.cjs.map +1 -1
- package/dist/DotDensityMap.d.ts +1 -1
- package/dist/DotDensityMap.js +78 -78
- package/dist/DotDensityMap.js.map +1 -1
- package/dist/{DropdownSelect-BbdPQa2k.js → DropdownSelect-D8rFbygC.js} +5 -33
- package/dist/{DropdownSelect-BbdPQa2k.js.map → DropdownSelect-D8rFbygC.js.map} +1 -1
- package/dist/{DropdownSelect-Doz3mCrM.cjs → DropdownSelect-NNpOs7DX.cjs} +2 -26
- package/dist/{DropdownSelect-Doz3mCrM.cjs.map → DropdownSelect-NNpOs7DX.cjs.map} +1 -1
- package/dist/DualAxisLineChart.cjs +1 -1
- package/dist/DualAxisLineChart.js +15 -15
- package/dist/DualAxisLineChart.js.map +1 -1
- package/dist/DumbbellChart.cjs +1 -1
- package/dist/DumbbellChart.js +22 -22
- package/dist/DumbbellChart.js.map +1 -1
- package/dist/{EmptyState-gLDRXBHm.cjs → EmptyState-CGeBqbmR.cjs} +2 -2
- package/dist/{EmptyState-gLDRXBHm.cjs.map → EmptyState-CGeBqbmR.cjs.map} +1 -1
- package/dist/EmptyState-tZBErBKF.js +15 -0
- package/dist/{EmptyState-C7ZXkZWd.js.map → EmptyState-tZBErBKF.js.map} +1 -1
- package/dist/ExcelDownloadButton.cjs +1 -1
- package/dist/ExcelDownloadButton.js +2 -2
- package/dist/FootNote.cjs +1 -1
- package/dist/FootNote.js +2 -2
- package/dist/GeoHubCompareMaps.cjs +1 -1
- package/dist/GeoHubCompareMaps.js +13 -13
- package/dist/GeoHubCompareMaps.js.map +1 -1
- package/dist/GeoHubMap.cjs +1 -1
- package/dist/GeoHubMap.js +8 -8
- package/dist/GeoHubMap.js.map +1 -1
- package/dist/GeoHubMapWithLayerSelection.cjs +1 -1
- package/dist/GeoHubMapWithLayerSelection.js +12 -12
- package/dist/GeoHubMapWithLayerSelection.js.map +1 -1
- package/dist/{GraphContainer-d8A46BK2.cjs → GraphContainer-B1EDxJ0S.cjs} +2 -2
- package/dist/{GraphContainer-d8A46BK2.cjs.map → GraphContainer-B1EDxJ0S.cjs.map} +1 -1
- package/dist/{GraphContainer-CRqzdKu2.js → GraphContainer-CF6ws3pd.js} +2 -2
- package/dist/{GraphContainer-CRqzdKu2.js.map → GraphContainer-CF6ws3pd.js.map} +1 -1
- package/dist/GraphDescription.cjs +1 -1
- package/dist/GraphDescription.js +2 -2
- package/dist/GraphEl-CBZdcvb7.cjs +2 -0
- package/dist/GraphEl-CBZdcvb7.cjs.map +1 -0
- package/dist/{GraphEl-Dyu_EIQb.js → GraphEl-DKrjuQNB.js} +79 -18
- package/dist/GraphEl-DKrjuQNB.js.map +1 -0
- package/dist/GraphFooter.cjs +1 -1
- package/dist/GraphFooter.js +2 -2
- package/dist/GraphHeader.cjs +1 -1
- package/dist/GraphHeader.js +1 -1
- package/dist/GraphTitle.cjs +1 -1
- package/dist/GraphTitle.js +2 -2
- package/dist/GriddedGraphs.cjs +1 -1
- package/dist/GriddedGraphs.d.ts +1 -1
- package/dist/GriddedGraphs.js +8 -8
- package/dist/GriddedGraphsFromConfig.cjs +1 -1
- package/dist/GriddedGraphsFromConfig.d.ts +1 -1
- package/dist/GriddedGraphsFromConfig.js +4 -4
- package/dist/GriddedGraphsFromConfig.js.map +1 -1
- package/dist/HeatMap.cjs +1 -1
- package/dist/HeatMap.js +14 -14
- package/dist/HeatMap.js.map +1 -1
- package/dist/Histogram.cjs +1 -1
- package/dist/Histogram.js +5 -5
- package/dist/Histogram.js.map +1 -1
- package/dist/HybridMap.cjs +1 -1
- package/dist/HybridMap.cjs.map +1 -1
- package/dist/HybridMap.js +134 -133
- package/dist/HybridMap.js.map +1 -1
- package/dist/ImageDownloadButton.cjs +1 -1
- package/dist/ImageDownloadButton.js +3 -3
- package/dist/LineChartWithConfidenceInterval.cjs +1 -1
- package/dist/LineChartWithConfidenceInterval.js +18 -18
- package/dist/LineChartWithConfidenceInterval.js.map +1 -1
- package/dist/LinearColorLegend.cjs +1 -1
- package/dist/LinearColorLegend.js +2 -2
- package/dist/{Modal-JW_IExO3.cjs → Modal-CaYa_TLE.cjs} +2 -2
- package/dist/{Modal-JW_IExO3.cjs.map → Modal-CaYa_TLE.cjs.map} +1 -1
- package/dist/{Modal-bMQA6bL_.js → Modal-Ch9wvKxF.js} +4 -4
- package/dist/{Modal-bMQA6bL_.js.map → Modal-Ch9wvKxF.js.map} +1 -1
- package/dist/MultiGraphDashboard.cjs +1 -1
- package/dist/MultiGraphDashboard.d.ts +1 -1
- package/dist/MultiGraphDashboard.js +5 -5
- package/dist/MultiGraphDashboardFromConfig.cjs +1 -1
- package/dist/MultiGraphDashboardFromConfig.d.ts +1 -1
- package/dist/MultiGraphDashboardFromConfig.js +4 -4
- package/dist/MultiGraphDashboardFromConfig.js.map +1 -1
- package/dist/MultiGraphDashboardWideToLongFormat.cjs +1 -1
- package/dist/MultiGraphDashboardWideToLongFormat.js +5 -5
- package/dist/MultiGraphDashboardWideToLongFormatFromConfig.cjs +1 -1
- package/dist/MultiGraphDashboardWideToLongFormatFromConfig.js +4 -4
- package/dist/MultiGraphDashboardWideToLongFormatFromConfig.js.map +1 -1
- package/dist/MultiLineAltChart.cjs +1 -1
- package/dist/MultiLineAltChart.js +17 -17
- package/dist/MultiLineAltChart.js.map +1 -1
- package/dist/MultiLineChart.cjs +1 -1
- package/dist/MultiLineChart.js +19 -19
- package/dist/MultiLineChart.js.map +1 -1
- package/dist/ParetoChart.cjs +1 -1
- package/dist/ParetoChart.js +15 -15
- package/dist/ParetoChart.js.map +1 -1
- package/dist/PerformanceIntensiveMultiGraphDashboard.cjs +1 -1
- package/dist/PerformanceIntensiveMultiGraphDashboard.d.ts +1 -1
- package/dist/PerformanceIntensiveMultiGraphDashboard.js +5 -5
- package/dist/PerformanceIntensiveMultiGraphDashboardFromConfig.cjs +1 -1
- package/dist/PerformanceIntensiveMultiGraphDashboardFromConfig.d.ts +1 -1
- package/dist/PerformanceIntensiveMultiGraphDashboardFromConfig.js +4 -4
- package/dist/PerformanceIntensiveMultiGraphDashboardFromConfig.js.map +1 -1
- package/dist/PerformanceIntensiveScrollStory.cjs +1 -1
- package/dist/PerformanceIntensiveScrollStory.d.ts +1 -1
- package/dist/PerformanceIntensiveScrollStory.js +6 -6
- package/dist/PerformanceIntensiveScrollStory.js.map +1 -1
- package/dist/RadarChart.cjs +1 -1
- package/dist/RadarChart.cjs.map +1 -1
- package/dist/RadarChart.js +9 -9
- package/dist/{ReferenceLine-2XCwHXQ4.js → ReferenceLine-DgtoRgw0.js} +5 -5
- package/dist/ReferenceLine-DgtoRgw0.js.map +1 -0
- package/dist/{ReferenceLine-BH0qdf4R.cjs → ReferenceLine-M9aP3dj-.cjs} +2 -2
- package/dist/{ReferenceLine-BH0qdf4R.cjs.map → ReferenceLine-M9aP3dj-.cjs.map} +1 -1
- package/dist/{RegressionLine-BOTTNSrr.cjs → RegressionLine-Ci-Dh0w0.cjs} +2 -2
- package/dist/{RegressionLine-BOTTNSrr.cjs.map → RegressionLine-Ci-Dh0w0.cjs.map} +1 -1
- package/dist/{RegressionLine-DAcY2DjT.js → RegressionLine-D2aqeBKp.js} +6 -6
- package/dist/RegressionLine-D2aqeBKp.js.map +1 -0
- package/dist/SVGDownloadButton.cjs +1 -1
- package/dist/SVGDownloadButton.js +2 -2
- package/dist/SankeyChart.cjs +1 -1
- package/dist/SankeyChart.cjs.map +1 -1
- package/dist/SankeyChart.js +61 -67
- package/dist/SankeyChart.js.map +1 -1
- package/dist/ScatterPlot.cjs +1 -1
- package/dist/ScatterPlot.js +23 -23
- package/dist/ScatterPlot.js.map +1 -1
- package/dist/ScrollStory.cjs +1 -1
- package/dist/ScrollStory.d.ts +1 -1
- package/dist/ScrollStory.js +4 -4
- package/dist/ScrollStory.js.map +1 -1
- package/dist/SimpleLineChart.cjs +1 -1
- package/dist/SimpleLineChart.js +19 -19
- package/dist/SimpleLineChart.js.map +1 -1
- package/dist/SingleGraphDashboard.cjs +1 -1
- package/dist/SingleGraphDashboard.d.ts +1 -1
- package/dist/SingleGraphDashboard.js +9 -9
- package/dist/SingleGraphDashboardFromConfig.cjs +1 -1
- package/dist/SingleGraphDashboardFromConfig.d.ts +1 -1
- package/dist/SingleGraphDashboardFromConfig.js +4 -4
- package/dist/SingleGraphDashboardFromConfig.js.map +1 -1
- package/dist/SingleGraphDashboardGeoHubMaps.cjs +1 -1
- package/dist/SingleGraphDashboardGeoHubMaps.js +5 -5
- package/dist/SingleGraphDashboardGeoHubMaps.js.map +1 -1
- package/dist/SingleGraphDashboardGeoHubMapsFromConfig.cjs +1 -1
- package/dist/SingleGraphDashboardGeoHubMapsFromConfig.js +4 -4
- package/dist/SingleGraphDashboardGeoHubMapsFromConfig.js.map +1 -1
- package/dist/SingleGraphDashboardThreeDGraphs.cjs +1 -1
- package/dist/SingleGraphDashboardThreeDGraphs.cjs.map +1 -1
- package/dist/SingleGraphDashboardThreeDGraphs.js +63 -70
- package/dist/SingleGraphDashboardThreeDGraphs.js.map +1 -1
- package/dist/SingleGraphDashboardThreeDGraphsFromConfig.cjs +1 -1
- package/dist/SingleGraphDashboardThreeDGraphsFromConfig.js +4 -4
- package/dist/SingleGraphDashboardThreeDGraphsFromConfig.js.map +1 -1
- package/dist/SlopeChart.cjs +1 -1
- package/dist/SlopeChart.js +12 -12
- package/dist/SlopeChart.js.map +1 -1
- package/dist/{Source-DYMJRrsq.cjs → Source-B5AoSlsi.cjs} +2 -2
- package/dist/{Source-DYMJRrsq.cjs.map → Source-B5AoSlsi.cjs.map} +1 -1
- package/dist/{Source-DwTHB8fn.js → Source-F8EYCYkV.js} +4 -4
- package/dist/{Source-DwTHB8fn.js.map → Source-F8EYCYkV.js.map} +1 -1
- package/dist/Source.cjs +1 -1
- package/dist/Source.js +3 -3
- package/dist/SparkLine.cjs +1 -1
- package/dist/SparkLine.js +8 -8
- package/dist/SparkLine.js.map +1 -1
- package/dist/{Spinner-DVBnY6Vg.js → Spinner--r2RrJV8.js} +2 -2
- package/dist/{Spinner-DVBnY6Vg.js.map → Spinner--r2RrJV8.js.map} +1 -1
- package/dist/{Spinner-CQZcjzwd.cjs → Spinner-jTMOLuw_.cjs} +2 -2
- package/dist/{Spinner-CQZcjzwd.cjs.map → Spinner-jTMOLuw_.cjs.map} +1 -1
- package/dist/StatCardFromData.cjs +1 -1
- package/dist/StatCardFromData.js +2 -2
- package/dist/StripChart.cjs +1 -1
- package/dist/StripChart.js +10 -10
- package/dist/StripChart.js.map +1 -1
- package/dist/ThreeDGlobe.cjs +1 -1
- package/dist/ThreeDGlobe.js +13 -13
- package/dist/ThreeDGlobe.js.map +1 -1
- package/dist/ThresholdColorLegendWithMouseOver.cjs +1 -1
- package/dist/ThresholdColorLegendWithMouseOver.js +3 -3
- package/dist/ThresholdColorLegendWithMouseOver.js.map +1 -1
- package/dist/{Tooltip-uUdw6wJL.cjs → Tooltip-BLa2EfMs.cjs} +2 -2
- package/dist/{Tooltip-uUdw6wJL.cjs.map → Tooltip-BLa2EfMs.cjs.map} +1 -1
- package/dist/{Tooltip-Dj5eVppQ.js → Tooltip-BRnAz2Gv.js} +3 -3
- package/dist/{Tooltip-Dj5eVppQ.js.map → Tooltip-BRnAz2Gv.js.map} +1 -1
- package/dist/TreeMapGraph.cjs +1 -1
- package/dist/TreeMapGraph.js +10 -10
- package/dist/TreeMapGraph.js.map +1 -1
- package/dist/Types.d.ts +8 -1
- package/dist/{Typography-PxtFcnJb.js → Typography-hWfh3H0J.js} +2 -2
- package/dist/{Typography-PxtFcnJb.js.map → Typography-hWfh3H0J.js.map} +1 -1
- package/dist/{Typography-DX7PlgQU.cjs → Typography-sa1UE0oF.cjs} +2 -2
- package/dist/{Typography-DX7PlgQU.cjs.map → Typography-sa1UE0oF.cjs.map} +1 -1
- package/dist/UnitChart.cjs +1 -1
- package/dist/UnitChart.js +8 -8
- package/dist/WaterfallChart.cjs +2 -0
- package/dist/WaterfallChart.cjs.map +1 -0
- package/dist/WaterfallChart.d.ts +208 -0
- package/dist/WaterfallChart.js +427 -0
- package/dist/WaterfallChart.js.map +1 -0
- package/dist/{XAxesLabels-Bt5NZBmX.cjs → XAxesLabels-C6o9jJal.cjs} +2 -2
- package/dist/{XAxesLabels-Bt5NZBmX.cjs.map → XAxesLabels-C6o9jJal.cjs.map} +1 -1
- package/dist/{XAxesLabels-Dy8E1SEo.js → XAxesLabels-rhK7lRjO.js} +3 -3
- package/dist/{XAxesLabels-Dy8E1SEo.js.map → XAxesLabels-rhK7lRjO.js.map} +1 -1
- package/dist/{XTicksAndGridLines-CObVFSm4.js → XTicksAndGridLines-CVZkZkpS.js} +2 -2
- package/dist/{XTicksAndGridLines-CObVFSm4.js.map → XTicksAndGridLines-CVZkZkpS.js.map} +1 -1
- package/dist/{XTicksAndGridLines-B6CELS7q.cjs → XTicksAndGridLines-CekrPykD.cjs} +2 -2
- package/dist/{XTicksAndGridLines-B6CELS7q.cjs.map → XTicksAndGridLines-CekrPykD.cjs.map} +1 -1
- package/dist/{YAxesLabels-DesLesUP.cjs → YAxesLabels-BQ2aCazV.cjs} +2 -2
- package/dist/{YAxesLabels-DesLesUP.cjs.map → YAxesLabels-BQ2aCazV.cjs.map} +1 -1
- package/dist/{YAxesLabels-a57ZRv-0.js → YAxesLabels-QICWVsHf.js} +3 -3
- package/dist/{YAxesLabels-a57ZRv-0.js.map → YAxesLabels-QICWVsHf.js.map} +1 -1
- package/dist/{YTicksAndGridLines-Blepl7XF.js → YTicksAndGridLines-GnXnSRF2.js} +2 -2
- package/dist/{YTicksAndGridLines-Blepl7XF.js.map → YTicksAndGridLines-GnXnSRF2.js.map} +1 -1
- package/dist/{YTicksAndGridLines-4pxTRlRK.cjs → YTicksAndGridLines-UzVC5eBM.cjs} +2 -2
- package/dist/{YTicksAndGridLines-4pxTRlRK.cjs.map → YTicksAndGridLines-UzVC5eBM.cjs.map} +1 -1
- package/dist/{band-DHUZ2X7J.js → band-DYty33LD.js} +2 -2
- package/dist/{band-DHUZ2X7J.js.map → band-DYty33LD.js.map} +1 -1
- package/dist/{checkIfMultiple-CIRtG0KE.js → checkIfMultiple-D9fVkeOq.js} +7 -19
- package/dist/{checkIfMultiple-CIRtG0KE.js.map → checkIfMultiple-D9fVkeOq.js.map} +1 -1
- package/dist/checkIfMultiple-DxnGtm3t.cjs +2 -0
- package/dist/{checkIfMultiple-wg6hJLXy.cjs.map → checkIfMultiple-DxnGtm3t.cjs.map} +1 -1
- package/dist/{customArea-BUhPiPT6.js → customArea-ASDaSE4u.js} +5 -5
- package/dist/{customArea-BUhPiPT6.js.map → customArea-ASDaSE4u.js.map} +1 -1
- package/dist/{customArea-CMF5g-C3.cjs → customArea-B1LWQBmM.cjs} +2 -2
- package/dist/{customArea-CMF5g-C3.cjs.map → customArea-B1LWQBmM.cjs.map} +1 -1
- package/dist/defaultLocale-C4wbwF1n.cjs +2 -0
- package/dist/defaultLocale-C4wbwF1n.cjs.map +1 -0
- package/dist/defaultLocale-CPy_WVtp.js +172 -0
- package/dist/defaultLocale-CPy_WVtp.js.map +1 -0
- package/dist/{ensureCompleteData-DH5c52Ub.js → ensureCompleteData-CDIukSG6.js} +2 -2
- package/dist/{ensureCompleteData-DH5c52Ub.js.map → ensureCompleteData-CDIukSG6.js.map} +1 -1
- package/dist/{ensureCompleteData-pZ9QO6kB.cjs → ensureCompleteData-D9bQTiVS.cjs} +2 -2
- package/dist/{ensureCompleteData-pZ9QO6kB.cjs.map → ensureCompleteData-D9bQTiVS.cjs.map} +1 -1
- package/dist/{fetchAndParseData-BpqkBPQL.js → fetchAndParseData-BAXhgTDM.js} +12 -18
- package/dist/{fetchAndParseData-BpqkBPQL.js.map → fetchAndParseData-BAXhgTDM.js.map} +1 -1
- package/dist/{fetchAndParseData-l5HGMAEs.cjs → fetchAndParseData-QTF6tjij.cjs} +3 -8
- package/dist/{fetchAndParseData-l5HGMAEs.cjs.map → fetchAndParseData-QTF6tjij.cjs.map} +1 -1
- package/dist/fetchAndParseData.cjs +1 -1
- package/dist/fetchAndParseData.js +1 -1
- package/dist/getCentroidCoordinates-CtBGrNC8.cjs +2 -0
- package/dist/getCentroidCoordinates-CtBGrNC8.cjs.map +1 -0
- package/dist/{getCentroidCoordinates-D7r34N4w.js → getCentroidCoordinates-s0OOUjLF.js} +15 -15
- package/dist/getCentroidCoordinates-s0OOUjLF.js.map +1 -0
- package/dist/{getGraphList-Dxwo9TDb.js → getGraphList-Bpd3PVmF.js} +7 -1
- package/dist/getGraphList-Bpd3PVmF.js.map +1 -0
- package/dist/getGraphList-DQ24IzAn.cjs +2 -0
- package/dist/getGraphList-DQ24IzAn.cjs.map +1 -0
- package/dist/{getJenks-GYmdwBqm.cjs → getJenks-BzJvhy_H.cjs} +2 -2
- package/dist/{getJenks-GYmdwBqm.cjs.map → getJenks-BzJvhy_H.cjs.map} +1 -1
- package/dist/{getJenks-BbngDoBQ.js → getJenks-DTCcQSDi.js} +2 -2
- package/dist/{getJenks-BbngDoBQ.js.map → getJenks-DTCcQSDi.js.map} +1 -1
- package/dist/getSchema.cjs +1 -1
- package/dist/getSchema.cjs.map +1 -1
- package/dist/getSchema.d.ts +3 -3
- package/dist/getSchema.js +24 -16
- package/dist/getSchema.js.map +1 -1
- package/dist/getSliderMarks-CIuSoedo.cjs +2 -0
- package/dist/{getSliderMarks-BmADcPQt.cjs.map → getSliderMarks-CIuSoedo.cjs.map} +1 -1
- package/dist/{getSliderMarks-HIDJ0_Cd.js → getSliderMarks-Cvg8zHBU.js} +4 -9
- package/dist/getSliderMarks-Cvg8zHBU.js.map +1 -0
- package/dist/{imageDownload-NYXbvKob.cjs → imageDownload-61q6jyJW.cjs} +3 -3
- package/dist/imageDownload-61q6jyJW.cjs.map +1 -0
- package/dist/{imageDownload-BU4qnxJP.js → imageDownload-Diofs_vY.js} +14 -15
- package/dist/imageDownload-Diofs_vY.js.map +1 -0
- package/dist/{index-D491FEn1.js → index-BQYOuXdl.js} +15 -15
- package/dist/{index-D491FEn1.js.map → index-BQYOuXdl.js.map} +1 -1
- package/dist/{index-DxXnJ8Ti.cjs → index-C5K--w8d.cjs} +2 -2
- package/dist/index-C5K--w8d.cjs.map +1 -0
- package/dist/{index-DRXx7m-C.cjs → index-C6er0ety.cjs} +2 -2
- package/dist/{index-DRXx7m-C.cjs.map → index-C6er0ety.cjs.map} +1 -1
- package/dist/{index-CHPV5EwG-CTPQjnHt.cjs → index-CHPV5EwG-6v2a2njQ.cjs} +5 -69
- package/dist/{index-CHPV5EwG-CTPQjnHt.cjs.map → index-CHPV5EwG-6v2a2njQ.cjs.map} +1 -1
- package/dist/{index-CHPV5EwG-Curnpaqc.js → index-CHPV5EwG-DecW7_qr.js} +5 -77
- package/dist/{index-CHPV5EwG-Curnpaqc.js.map → index-CHPV5EwG-DecW7_qr.js.map} +1 -1
- package/dist/{index-SKgJALZg.js → index-CSiFiXPj.js} +3 -3
- package/dist/{index-SKgJALZg.js.map → index-CSiFiXPj.js.map} +1 -1
- package/dist/index-CoobIWNj.cjs +10 -0
- package/dist/index-CoobIWNj.cjs.map +1 -0
- package/dist/index-CtMBjvtq.js +148 -0
- package/dist/index-CtMBjvtq.js.map +1 -0
- package/dist/{index-Cw8sCyo_-BrHiWiRF.cjs → index-Cw8sCyo_-CEcCMKUi.cjs} +2 -2
- package/dist/{index-Cw8sCyo_-BrHiWiRF.cjs.map → index-Cw8sCyo_-CEcCMKUi.cjs.map} +1 -1
- package/dist/{index-Cw8sCyo_-B2hEKjzG.js → index-Cw8sCyo_-n4AacHGk.js} +6 -4
- package/dist/{index-Cw8sCyo_-B2hEKjzG.js.map → index-Cw8sCyo_-n4AacHGk.js.map} +1 -1
- package/dist/{index-R1gTfap5.js → index-D5ihtaJJ.js} +12 -12
- package/dist/{index-R1gTfap5.js.map → index-D5ihtaJJ.js.map} +1 -1
- package/dist/{index-B_sAFsEV.cjs → index-D69M6klB.cjs} +2 -2
- package/dist/{index-B_sAFsEV.cjs.map → index-D69M6klB.cjs.map} +1 -1
- package/dist/{index-GEsywGxz.js → index-DCsFBfJ_.js} +160 -104
- package/dist/index-DCsFBfJ_.js.map +1 -0
- package/dist/{index-WML2dCZ0.cjs → index-Dgjq6aZ2.cjs} +2 -2
- package/dist/{index-WML2dCZ0.cjs.map → index-Dgjq6aZ2.cjs.map} +1 -1
- package/dist/{index-Dzc_aaI9-BmkfPMyc.cjs → index-Dzc_aaI9-C3DbPpy3.cjs} +2 -2
- package/dist/{index-Dzc_aaI9-BmkfPMyc.cjs.map → index-Dzc_aaI9-C3DbPpy3.cjs.map} +1 -1
- package/dist/{index-Dzc_aaI9-Bb7gobH_.js → index-Dzc_aaI9-CG2Ar7l1.js} +4 -4
- package/dist/{index-Dzc_aaI9-Bb7gobH_.js.map → index-Dzc_aaI9-CG2Ar7l1.js.map} +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.d.ts +209 -94
- package/dist/index.js +129 -127
- package/dist/index.js.map +1 -1
- package/dist/{linear-BqltdMeF.js → linear-CalFSAaO.js} +2 -2
- package/dist/{linear-BqltdMeF.js.map → linear-CalFSAaO.js.map} +1 -1
- package/dist/{linear-BwPAspcq.cjs → linear-CgUCbw9F.cjs} +2 -2
- package/dist/{linear-BwPAspcq.cjs.map → linear-CgUCbw9F.cjs.map} +1 -1
- package/dist/{ordinal-BJ6O_LC5.js → ordinal-CHaxGJ_l.js} +2 -2
- package/dist/{ordinal-BJ6O_LC5.js.map → ordinal-CHaxGJ_l.js.map} +1 -1
- package/dist/{parse-DlCRUFh_.js → parse-Dv4of-PN.js} +2 -67
- package/dist/{parse-DlCRUFh_.js.map → parse-Dv4of-PN.js.map} +1 -1
- package/dist/parse-xYI9yrvL.cjs +2 -0
- package/dist/{parse-hMnG_lRV.cjs.map → parse-xYI9yrvL.cjs.map} +1 -1
- package/dist/{pow-DgrUorRi.cjs → pow-BnyPO-NX.cjs} +2 -2
- package/dist/{pow-DgrUorRi.cjs.map → pow-BnyPO-NX.cjs.map} +1 -1
- package/dist/{pow-CM2aze4M.js → pow-CaIrlM4J.js} +2 -2
- package/dist/{pow-CM2aze4M.js.map → pow-CaIrlM4J.js.map} +1 -1
- package/dist/proxy-C4-uo6nS.cjs +2 -0
- package/dist/proxy-C4-uo6nS.cjs.map +1 -0
- package/dist/{proxy-BxkFHwUw.js → proxy-DRuSUlPL.js} +2828 -2717
- package/dist/proxy-DRuSUlPL.js.map +1 -0
- package/dist/{string2HTML-DhG75NqA.js → string2HTML-DUYZT1L9.js} +17 -17
- package/dist/{string2HTML-DhG75NqA.js.map → string2HTML-DUYZT1L9.js.map} +1 -1
- package/dist/{string2HTML-CPGr_I5E.cjs → string2HTML-xx9MzTtY.cjs} +3 -3
- package/dist/{string2HTML-CPGr_I5E.cjs.map → string2HTML-xx9MzTtY.cjs.map} +1 -1
- package/dist/style.css +1 -1
- package/dist/{time-BUL-dwnK.js → time-CAtex-RV.js} +2 -2
- package/dist/{time-BUL-dwnK.js.map → time-CAtex-RV.js.map} +1 -1
- package/dist/{time-CZd5YLSP.cjs → time-CkcKbhwe.cjs} +2 -2
- package/dist/{time-CZd5YLSP.cjs.map → time-CkcKbhwe.cjs.map} +1 -1
- package/dist/transformData.cjs +1 -1
- package/dist/transformData.d.ts +1 -1
- package/dist/transformData.js +3 -3
- package/dist/transformDataForAggregation-BFdha9Dx.cjs +2 -0
- package/dist/transformDataForAggregation-BFdha9Dx.cjs.map +1 -0
- package/dist/{transformDataForAggregation-j34UL73s.js → transformDataForAggregation-wdPf8bNt.js} +26 -11
- package/dist/transformDataForAggregation-wdPf8bNt.js.map +1 -0
- package/dist/{transformDataForGraphFromFile-CuXxR8uA.cjs → transformDataForGraphFromFile-DOhp1qrp.cjs} +2 -2
- package/dist/{transformDataForGraphFromFile-CuXxR8uA.cjs.map → transformDataForGraphFromFile-DOhp1qrp.cjs.map} +1 -1
- package/dist/{transformDataForGraphFromFile-DyP-83Nh.js → transformDataForGraphFromFile-dt9sHTVy.js} +3 -3
- package/dist/{transformDataForGraphFromFile-DyP-83Nh.js.map → transformDataForGraphFromFile-dt9sHTVy.js.map} +1 -1
- package/dist/{use-in-view-QcfiW0w3.cjs → use-in-view-C3o_ntMv.cjs} +2 -2
- package/dist/use-in-view-C3o_ntMv.cjs.map +1 -0
- package/dist/{use-in-view-Cxa7y1TH.js → use-in-view-Dl5L8LtP.js} +2 -2
- package/dist/use-in-view-Dl5L8LtP.js.map +1 -0
- package/dist/utils.cjs +1 -1
- package/dist/utils.js +4 -4
- package/dist/validateSchema.cjs +1 -1
- package/dist/validateSchema.d.ts +1 -1
- package/dist/validateSchema.js +1 -1
- package/dist/{x-BBpi7a_7-WVdj1j6r.js → x-BBpi7a_7-BsvWCzYM.js} +1 -31
- package/dist/{x-BBpi7a_7-WVdj1j6r.js.map → x-BBpi7a_7-BsvWCzYM.js.map} +1 -1
- package/dist/x-BBpi7a_7-DXYIEFwN.cjs +2 -0
- package/dist/{x-BBpi7a_7-mTo40uId.cjs.map → x-BBpi7a_7-DXYIEFwN.cjs.map} +1 -1
- package/dist/{zoom-C9MFjAaV.js → zoom-5AkJSuWO.js} +3 -3
- package/dist/zoom-5AkJSuWO.js.map +1 -0
- package/dist/{zoom-DPw8bba-.cjs → zoom-ChcvXFIz.cjs} +2 -2
- package/dist/zoom-ChcvXFIz.cjs.map +1 -0
- package/package.json +21 -1
- package/readme.md +33 -22
- package/dist/EmptyState-C7ZXkZWd.js +0 -15
- package/dist/GraphEl-BixTEyKW.cjs +0 -2
- package/dist/GraphEl-BixTEyKW.cjs.map +0 -1
- package/dist/GraphEl-Dyu_EIQb.js.map +0 -1
- package/dist/ReferenceLine-2XCwHXQ4.js.map +0 -1
- package/dist/RegressionLine-DAcY2DjT.js.map +0 -1
- package/dist/checkIfMultiple-wg6hJLXy.cjs +0 -12
- package/dist/defaultLocale-BEa-49Qz.js +0 -172
- package/dist/defaultLocale-BEa-49Qz.js.map +0 -1
- package/dist/defaultLocale-DIVzfLaQ.cjs +0 -2
- package/dist/defaultLocale-DIVzfLaQ.cjs.map +0 -1
- package/dist/getCentroidCoordinates-D7r34N4w.js.map +0 -1
- package/dist/getCentroidCoordinates-Dng1HVjO.cjs +0 -2
- package/dist/getCentroidCoordinates-Dng1HVjO.cjs.map +0 -1
- package/dist/getGraphList-CA17dvFB.cjs +0 -2
- package/dist/getGraphList-CA17dvFB.cjs.map +0 -1
- package/dist/getGraphList-Dxwo9TDb.js.map +0 -1
- package/dist/getSliderMarks-BmADcPQt.cjs +0 -6
- package/dist/getSliderMarks-HIDJ0_Cd.js.map +0 -1
- package/dist/imageDownload-BU4qnxJP.js.map +0 -1
- package/dist/imageDownload-NYXbvKob.cjs.map +0 -1
- package/dist/index-BqfRwk1n.js +0 -146
- package/dist/index-BqfRwk1n.js.map +0 -1
- package/dist/index-DG2bgAva.cjs +0 -10
- package/dist/index-DG2bgAva.cjs.map +0 -1
- package/dist/index-DxXnJ8Ti.cjs.map +0 -1
- package/dist/index-GEsywGxz.js.map +0 -1
- package/dist/parse-hMnG_lRV.cjs +0 -2
- package/dist/proxy-BxkFHwUw.js.map +0 -1
- package/dist/proxy-BxvUI_9l.cjs +0 -2
- package/dist/proxy-BxvUI_9l.cjs.map +0 -1
- package/dist/transformDataForAggregation-CYoB5Xsk.cjs +0 -2
- package/dist/transformDataForAggregation-CYoB5Xsk.cjs.map +0 -1
- package/dist/transformDataForAggregation-j34UL73s.js.map +0 -1
- package/dist/use-in-view-Cxa7y1TH.js.map +0 -1
- package/dist/use-in-view-QcfiW0w3.cjs.map +0 -1
- package/dist/x-BBpi7a_7-mTo40uId.cjs +0 -27
- package/dist/zoom-C9MFjAaV.js.map +0 -1
- package/dist/zoom-DPw8bba-.cjs.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SingleGraphDashboardThreeDGraphs.cjs","sources":["../src/Components/Dashboard/PerformanceIntensive/ThreeDGraphEl.tsx","../src/Components/Dashboard/PerformanceIntensive/SingleGraphDashboardThreeDGraphs.tsx"],"sourcesContent":["import { P } from '@undp/design-system-react/Typography';\r\n\r\nimport { ThreeDGlobe } from '../../Graphs/Maps/ThreeDGlobe';\r\n\r\nimport { getValues } from '@/Utils/getValues';\r\nimport { GraphConfigurationDataType, GraphSettingsDataType, ThreeDGraphType } from '@/Types';\r\n\r\ninterface Props {\r\n graph: ThreeDGraphType;\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n graphData: any;\r\n settings?: GraphSettingsDataType;\r\n debugMode?: boolean;\r\n graphDataConfiguration?: GraphConfigurationDataType[];\r\n readableHeader: {\r\n value: string;\r\n label: string;\r\n }[];\r\n updateFilters?: (_d: string) => void;\r\n}\r\n\r\nfunction ThreeDGraphEl(props: Props) {\r\n const {\r\n settings,\r\n graph,\r\n graphData,\r\n debugMode,\r\n graphDataConfiguration,\r\n readableHeader,\r\n updateFilters,\r\n } = props;\r\n if (debugMode) {\r\n // eslint-disable-next-line no-console\r\n console.log(`Graph: ${graph}`);\r\n // eslint-disable-next-line no-console\r\n console.log('Transformed data:', graphData);\r\n // eslint-disable-next-line no-console\r\n console.log('Settings:', settings);\r\n }\r\n if (typeof graphData === 'string')\r\n return (\r\n <div\r\n className={`flex my-0 mx-auto grow flex-col justify-center ${\r\n settings?.width ? 'w-fit' : 'w-full'\r\n }`}\r\n style={{ height: 'inherit' }}\r\n >\r\n <P\r\n size='sm'\r\n marginBottom='none'\r\n className='p-2 text-center text-accent-dark-red dark:text-accent-red'\r\n >\r\n {graphData}\r\n </P>\r\n </div>\r\n );\r\n const graphComponents: Record<ThreeDGraphType, React.ElementType | null> = {\r\n threeDGlobe: ThreeDGlobe,\r\n };\r\n const getGraphProps = (graphType: ThreeDGraphType) => {\r\n switch (graphType) {\r\n case 'threeDGlobe':\r\n return {\r\n globeOffset: settings?.globeOffset,\r\n collapseColorScaleByDefault: settings?.collapseColorScaleByDefault,\r\n polygonAltitude: settings?.polygonAltitude,\r\n highlightedIds: settings?.highlightedIds,\r\n scale: settings?.scale,\r\n theme: settings?.theme,\r\n resetSelectionOnDoubleClick: settings?.resetSelectionOnDoubleClick,\r\n graphTitle: settings?.graphTitle,\r\n mapData: settings?.mapData,\r\n graphDescription: settings?.graphDescription,\r\n footNote: settings?.footNote,\r\n width: settings?.width,\r\n height: settings?.height,\r\n sources: settings?.sources,\r\n colorDomain: settings?.colorDomain as string[] | number[],\r\n colors: settings?.colors as string[] | undefined,\r\n colorLegendTitle:\r\n Object.keys(settings || {}).indexOf('colorLegendTitle') !== -1\r\n ? settings?.colorLegendTitle\r\n : getValues('x', graphDataConfiguration || [], readableHeader || []),\r\n scaleType: settings?.scaleType,\r\n data: graphData,\r\n centerPoint: settings?.centerPoint,\r\n backgroundColor: settings?.backgroundColor,\r\n mapNoDataColor: settings?.mapNoDataColor,\r\n mapBorderColor: settings?.mapBorderColor,\r\n relativeHeight: settings?.relativeHeight,\r\n padding: settings?.padding,\r\n tooltip: settings?.tooltip,\r\n showColorScale: settings?.showColorScale,\r\n graphID: settings?.graphID,\r\n dataDownload: settings?.dataDownload,\r\n mapProperty: settings?.mapProperty,\r\n language: settings?.language,\r\n minHeight: settings?.minHeight,\r\n ariaLabel: settings?.ariaLabel,\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onSeriesMouseClick: (el: any) => {\r\n updateFilters?.(el.id);\r\n },\r\n detailsOnClick: settings?.detailsOnClick,\r\n styles: settings?.styles,\r\n classNames: settings?.classNames,\r\n autoRotate: settings?.autoRotate,\r\n globeMaterial: settings?.globeMaterial,\r\n atmosphereColor: settings?.atmosphereColor,\r\n enableZoom: settings?.enableZoom,\r\n atmosphereAltitude: settings?.atmosphereAltitude,\r\n globeCurvatureResolution: settings?.globeCurvatureResolution,\r\n fogSettings: settings?.fogSetting,\r\n lights: settings?.lights,\r\n highlightedAltitude: settings?.highlightedAltitude,\r\n selectedId: settings?.selectedId,\r\n };\r\n default:\r\n return {};\r\n }\r\n };\r\n const GraphComponent = graphComponents[graph];\r\n const graphProps = getGraphProps(graph);\r\n return (\r\n <div\r\n className={`grow my-0 mx-auto flex flex-col w-full justify-center ${settings?.theme || 'light'}`}\r\n style={{ minHeight: 'inherit' }}\r\n >\r\n {GraphComponent ? (\r\n <GraphComponent {...graphProps} />\r\n ) : (\r\n <P\r\n size='sm'\r\n marginBottom='none'\r\n className='p-2 text-center text-accent-dark-red dark:text-accent-red'\r\n >\r\n {`Invalid chart type: ${graph}`}\r\n </P>\r\n )}\r\n </div>\r\n );\r\n}\r\n\r\nexport default ThreeDGraphEl;\r\n","import { useEffect, useEffectEvent, useRef, useState } from 'react';\r\nimport intersection from 'lodash.intersection';\r\nimport flattenDeep from 'lodash.flattendeep';\r\nimport isEqual from 'fast-deep-equal';\r\nimport { createFilter, DropdownSelect } from '@undp/design-system-react/DropdownSelect';\r\nimport { CheckboxGroup, CheckboxGroupItem } from '@undp/design-system-react/CheckboxGroup';\r\nimport { RadioGroup, RadioGroupItem } from '@undp/design-system-react/RadioGroup';\r\nimport { Spinner } from '@undp/design-system-react/Spinner';\r\nimport { Label } from '@undp/design-system-react/Label';\r\n\r\nimport ThreeDGraphEl from './ThreeDGraphEl';\r\n\r\nimport {\r\n AdvancedDataSelectionDataType,\r\n AggregationSettingsDataType,\r\n DataFilterDataType,\r\n DataSelectionDataType,\r\n DataSettingsDataType,\r\n FilterSettingsDataType,\r\n FilterUiSettingsDataType,\r\n GraphConfigurationDataType,\r\n GraphSettingsDataType,\r\n HighlightDataPointSettingsDataType,\r\n ThreeDGraphType,\r\n} from '@/Types';\r\nimport {\r\n fetchAndParseCSV,\r\n fetchAndParseJSON,\r\n fetchAndParseMultipleDataSources,\r\n fetchAndTransformDataFromAPI,\r\n} from '@/Utils/fetchAndParseData';\r\nimport { transformDataForGraph } from '@/Utils/transformData/transformDataForGraph';\r\nimport { getUniqValue } from '@/Utils/getUniqValue';\r\nimport { transformDataForAggregation } from '@/Utils/transformData/transformDataForAggregation';\r\nimport { GraphHeader } from '@/Components/Elements/GraphHeader';\r\nimport { filterData } from '@/Utils/transformData/filterData';\r\nimport { checkIfMultiple } from '@/Utils/checkIfMultiple';\r\nimport { transformColumnsToArray } from '@/Utils/transformData/transformColumnsToArray';\r\nimport { graphList } from '@/Utils/getGraphList';\r\nimport { transformDefaultValue } from '@/Utils/transformDataForSelect';\r\nimport { GraphContainer } from '@/Components/Elements/GraphContainer';\r\n\r\ninterface Props {\r\n graphSettings?: GraphSettingsDataType;\r\n readableHeader?: {\r\n value: string;\r\n label: string;\r\n }[];\r\n dataSettings: DataSettingsDataType;\r\n filters?: FilterUiSettingsDataType[];\r\n highlightDataPointSettings?: HighlightDataPointSettingsDataType;\r\n noOfFiltersPerRow?: number;\r\n graphType: ThreeDGraphType;\r\n dataTransform?: {\r\n keyColumn: string;\r\n aggregationColumnsSetting?: AggregationSettingsDataType[];\r\n };\r\n dataFilters?: DataFilterDataType[];\r\n graphDataConfiguration?: GraphConfigurationDataType[];\r\n dataSelectionOptions?: DataSelectionDataType[];\r\n advancedDataSelectionOptions?: AdvancedDataSelectionDataType[];\r\n debugMode?: boolean;\r\n uiMode?: 'light' | 'normal';\r\n updateFilters?: (_d: string) => void;\r\n}\r\n\r\nconst getGraphSettings = (\r\n dataSelectionOptions: DataSelectionDataType[],\r\n updatedConfig?: GraphConfigurationDataType[],\r\n) => {\r\n const updatedSettings =\r\n updatedConfig?.map(c => {\r\n const indx = dataSelectionOptions?.findIndex(opt => opt.chartConfigId === c.chartConfigId);\r\n if (indx === -1) return {};\r\n const allowedValIndx = dataSelectionOptions[indx]?.allowedColumnIds?.findIndex(\r\n col => col.value === c.columnId,\r\n );\r\n if (allowedValIndx === -1) return {};\r\n return dataSelectionOptions[indx].allowedColumnIds[allowedValIndx].graphSettings || {};\r\n }) || [];\r\n return Object.assign({}, ...updatedSettings);\r\n};\r\n\r\nexport function SingleGraphDashboardThreeDGraphs(props: Props) {\r\n const {\r\n graphSettings,\r\n dataSettings,\r\n filters,\r\n graphType,\r\n dataTransform,\r\n graphDataConfiguration,\r\n dataFilters,\r\n debugMode,\r\n dataSelectionOptions,\r\n advancedDataSelectionOptions,\r\n readableHeader,\r\n noOfFiltersPerRow = 4,\r\n updateFilters,\r\n uiMode = 'normal',\r\n highlightDataPointSettings,\r\n } = props;\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const [filteredData, setFilteredData] = useState<any>(undefined);\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const [data, setData] = useState<any>(undefined);\r\n const [graphConfig, setGraphConfig] = useState<GraphConfigurationDataType[] | undefined>(\r\n graphDataConfiguration,\r\n );\r\n const [advancedGraphSettings, setAdvancedGraphSettings] = useState<GraphSettingsDataType>({});\r\n const [highlightedDataPointList, setHighlightedDataPointList] = useState<\r\n (string | number)[] | undefined\r\n >(undefined);\r\n const [highlightedDataPointOptions, setHighlightedDataPointOption] = useState<\r\n { label: string | number; value: string | number }[]\r\n >([]);\r\n const graphParentDiv = useRef<HTMLDivElement>(null);\r\n\r\n const prevGraphDataConfigRef = useRef<GraphConfigurationDataType[] | undefined>(\r\n graphDataConfiguration,\r\n );\r\n const [filterSettings, setFilterSettings] = useState<FilterSettingsDataType[]>([]);\r\n\r\n const filterConfig = {\r\n ignoreCase: true,\r\n ignoreAccents: true,\r\n trim: true,\r\n };\r\n\r\n const updateFiltersEvent = useEffectEvent(() => {\r\n const filterSettingsTemp = (filters || []).map(el => ({\r\n filter: el.column,\r\n label: el.label || `Filter by ${el.column}`,\r\n singleSelect: el.singleSelect,\r\n clearable: el.clearable,\r\n defaultValue: transformDefaultValue(el.defaultValue),\r\n value: transformDefaultValue(el.defaultValue),\r\n availableValues: getUniqValue(data, el.column)\r\n .filter(v => !el.excludeValues?.includes(`${v}`))\r\n .map(v => ({ value: v, label: v })),\r\n allowSelectAll: el.allowSelectAll,\r\n width: el.width,\r\n }));\r\n setFilterSettings(filterSettingsTemp);\r\n });\r\n useEffect(() => {\r\n const fetchData = async () => {\r\n try {\r\n const dataFromFile = dataSettings.dataURL\r\n ? typeof dataSettings.dataURL === 'string'\r\n ? dataSettings.fileType === 'json'\r\n ? await fetchAndParseJSON(\r\n dataSettings.dataURL,\r\n dataSettings.columnsToArray,\r\n dataSettings.dataTransformation,\r\n debugMode,\r\n )\r\n : dataSettings.fileType === 'api'\r\n ? await fetchAndTransformDataFromAPI(\r\n dataSettings.dataURL,\r\n dataSettings.apiHeaders,\r\n dataSettings.columnsToArray,\r\n dataSettings.dataTransformation,\r\n debugMode,\r\n )\r\n : await fetchAndParseCSV(\r\n dataSettings.dataURL,\r\n dataSettings.dataTransformation,\r\n dataSettings.columnsToArray,\r\n debugMode,\r\n dataSettings.delimiter,\r\n true,\r\n )\r\n : await fetchAndParseMultipleDataSources(\r\n dataSettings.dataURL,\r\n dataSettings.idColumnTitle,\r\n )\r\n : await transformColumnsToArray(dataSettings.data, dataSettings.columnsToArray);\r\n setData(dataFromFile);\r\n } catch (error) {\r\n console.error('Data fetching error:', error);\r\n }\r\n };\r\n fetchData();\r\n updateFiltersEvent();\r\n }, [dataSettings, debugMode]);\r\n\r\n useEffect(() => {\r\n updateFiltersEvent();\r\n }, [filters, data]);\r\n\r\n const filteredDataEvent = useEffectEvent(() => {\r\n if (!data || filterSettings.length === 0) setFilteredData(data);\r\n else {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const result = data.filter((item: any) =>\r\n filterSettings.every(filter =>\r\n filter.value && flattenDeep([filter.value]).length > 0\r\n ? intersection(\r\n flattenDeep([item[filter.filter]]),\r\n flattenDeep([filter.value]).map(el => el.value),\r\n ).length > 0\r\n : true,\r\n ),\r\n );\r\n setFilteredData(result);\r\n }\r\n });\r\n\r\n useEffect(() => {\r\n filteredDataEvent();\r\n }, [filterSettings, data]);\r\n\r\n useEffect(() => {\r\n if (dataSelectionOptions)\r\n // eslint-disable-next-line react-hooks/set-state-in-effect\r\n setAdvancedGraphSettings(getGraphSettings(dataSelectionOptions, graphDataConfiguration));\r\n }, [dataSelectionOptions, graphDataConfiguration]);\r\n\r\n const updateHighlightedDataPointOptions = useEffectEvent(() => {\r\n if (highlightDataPointSettings?.column && filteredData)\r\n setHighlightedDataPointOption(\r\n getUniqValue(filteredData, highlightDataPointSettings.column)\r\n .filter(v => !highlightDataPointSettings?.excludeValues?.includes(`${v}`))\r\n .map(d => ({ value: d, label: d })),\r\n );\r\n });\r\n\r\n useEffect(() => {\r\n updateHighlightedDataPointOptions();\r\n }, [highlightDataPointSettings]);\r\n\r\n useEffect(() => {\r\n if (!isEqual(prevGraphDataConfigRef.current, graphDataConfiguration)) {\r\n // eslint-disable-next-line react-hooks/set-state-in-effect\r\n setGraphConfig(graphDataConfiguration);\r\n prevGraphDataConfigRef.current = graphDataConfiguration;\r\n }\r\n }, [graphDataConfiguration]);\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const handleFilterChange = (filter: string, values: any) => {\r\n setFilterSettings(prev => prev.map(f => (f.filter === filter ? { ...f, value: values } : f)));\r\n };\r\n\r\n const graphData = !data\r\n ? undefined\r\n : transformDataForGraph(\r\n dataTransform\r\n ? transformDataForAggregation(\r\n filterData(data, dataFilters || []),\r\n dataTransform.keyColumn,\r\n dataTransform.aggregationColumnsSetting,\r\n )\r\n : filterData(data, dataFilters || []),\r\n graphType,\r\n graphConfig,\r\n );\r\n return (\r\n <GraphContainer\r\n className={graphSettings?.classNames?.graphContainer}\r\n style={graphSettings?.styles?.graphContainer}\r\n id={graphSettings?.graphID}\r\n ref={graphParentDiv}\r\n aria-label={graphSettings?.ariaLabel}\r\n backgroundColor={graphSettings?.backgroundColor ?? false}\r\n theme={graphSettings?.theme || 'light'}\r\n language={graphSettings?.language || 'en'}\r\n width={graphSettings?.width}\r\n height={graphSettings?.height}\r\n padding={graphSettings?.padding}\r\n minHeight={graphSettings?.minHeight}\r\n relativeHeight={graphSettings?.relativeHeight}\r\n >\r\n {data ||\r\n graphList\r\n .filter(el => el.geoHubMapPresentation)\r\n .map(el => el.graphID)\r\n .indexOf(graphType) !== -1 ? (\r\n <>\r\n {advancedGraphSettings?.graphTitle ||\r\n advancedGraphSettings?.graphDescription ||\r\n graphSettings?.graphTitle ||\r\n graphSettings?.graphDescription ||\r\n graphSettings?.graphDownload ||\r\n graphSettings?.dataDownload ? (\r\n <GraphHeader\r\n styles={{\r\n title: advancedGraphSettings?.styles?.title || graphSettings?.styles?.title,\r\n description:\r\n advancedGraphSettings?.styles?.description || graphSettings?.styles?.description,\r\n }}\r\n classNames={{\r\n title: advancedGraphSettings?.classNames?.title || graphSettings?.classNames?.title,\r\n description:\r\n advancedGraphSettings?.classNames?.description ||\r\n graphSettings?.classNames?.description,\r\n }}\r\n graphTitle={advancedGraphSettings?.graphTitle || graphSettings?.graphTitle}\r\n graphDescription={\r\n advancedGraphSettings?.graphDescription || graphSettings?.graphDescription\r\n }\r\n width={advancedGraphSettings?.width || graphSettings?.width}\r\n graphDownload={graphSettings?.graphDownload ? graphParentDiv : undefined}\r\n dataDownload={\r\n graphSettings?.dataDownload && data ? (data.length > 0 ? data : null) : null\r\n }\r\n />\r\n ) : null}\r\n {filterSettings.length !== 0 ||\r\n (dataSelectionOptions || []).length !== 0 ||\r\n (advancedDataSelectionOptions || []).length !== 0 ||\r\n highlightDataPointSettings ? (\r\n <div className='flex flex-wrap items-start gap-x-4 gap-y-0 w-full'>\r\n {advancedDataSelectionOptions?.map((d, i) => (\r\n <div\r\n style={{\r\n width:\r\n d.width ||\r\n `calc(${100 / noOfFiltersPerRow}% - ${\r\n (noOfFiltersPerRow - 1) / noOfFiltersPerRow\r\n }rem)`,\r\n flexGrow: d.width ? 0 : 1,\r\n flexShrink: d.ui !== 'radio' || d.width ? 0 : 1,\r\n minWidth: '240px',\r\n }}\r\n key={i}\r\n className='pb-4'\r\n >\r\n <Label className='mb-2'>{d.label || 'Graph by'}</Label>\r\n {d.ui !== 'radio' ? (\r\n <DropdownSelect\r\n options={d.options.map(opt => ({\r\n ...opt,\r\n value: opt.label,\r\n }))}\r\n size='sm'\r\n isClearable={false}\r\n isSearchable\r\n variant={uiMode}\r\n controlShouldRenderValue\r\n defaultValue={\r\n d.defaultValue\r\n ? {\r\n ...d.defaultValue,\r\n value: d.defaultValue?.label,\r\n }\r\n : {\r\n ...d.options[0],\r\n value: d.options[0].label,\r\n }\r\n }\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onChange={(el: any) => {\r\n setAdvancedGraphSettings(el?.graphSettings || {});\r\n setGraphConfig(el?.dataConfiguration);\r\n }}\r\n />\r\n ) : (\r\n <RadioGroup\r\n defaultValue={d.defaultValue?.label || d.options[0].label}\r\n variant={uiMode}\r\n onValueChange={el => {\r\n const selectedOption =\r\n d.options[d.options.findIndex(opt => opt.label === el)];\r\n setAdvancedGraphSettings(selectedOption.graphSettings || {});\r\n setGraphConfig(selectedOption.dataConfiguration);\r\n }}\r\n >\r\n {d.options.map((el, j) => (\r\n <RadioGroupItem label={el.label} value={el.label} key={j} />\r\n ))}\r\n </RadioGroup>\r\n )}\r\n </div>\r\n ))}\r\n {dataSelectionOptions?.map((d, i) => (\r\n <div\r\n style={{\r\n width:\r\n d.width ||\r\n `calc(${100 / noOfFiltersPerRow}% - ${\r\n (noOfFiltersPerRow - 1) / noOfFiltersPerRow\r\n }rem)`,\r\n flexGrow: d.width ? 0 : 1,\r\n flexShrink: d.ui !== 'radio' || d.width ? 0 : 1,\r\n minWidth: '240px',\r\n }}\r\n key={i}\r\n className='pb-4'\r\n >\r\n <Label className='mb-2'>{d.label || `Visualize ${d.chartConfigId} by`}</Label>\r\n {!checkIfMultiple(d.chartConfigId, graphConfig || []) ? (\r\n d.ui !== 'radio' ? (\r\n <DropdownSelect\r\n options={d.allowedColumnIds}\r\n size='sm'\r\n isClearable={false}\r\n isSearchable\r\n variant={uiMode}\r\n controlShouldRenderValue\r\n defaultValue={\r\n graphDataConfiguration\r\n ? d.allowedColumnIds[\r\n d.allowedColumnIds.findIndex(\r\n j =>\r\n j.value ===\r\n (graphDataConfiguration[\r\n graphDataConfiguration.findIndex(\r\n el => el.chartConfigId === d.chartConfigId,\r\n )\r\n ].columnId as string),\r\n )\r\n ]\r\n : undefined\r\n }\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onChange={(el: any) => {\r\n const newGraphConfig = {\r\n columnId: el?.value as string,\r\n chartConfigId: d.chartConfigId,\r\n };\r\n const updatedConfig = graphConfig?.map(item =>\r\n item.chartConfigId === newGraphConfig.chartConfigId\r\n ? newGraphConfig\r\n : item,\r\n );\r\n setAdvancedGraphSettings(\r\n getGraphSettings(dataSelectionOptions, updatedConfig),\r\n );\r\n setGraphConfig(updatedConfig);\r\n }}\r\n />\r\n ) : (\r\n <RadioGroup\r\n variant={uiMode}\r\n defaultValue={\r\n graphDataConfiguration\r\n ? d.allowedColumnIds[\r\n d.allowedColumnIds.findIndex(\r\n j =>\r\n j.value ===\r\n (graphDataConfiguration[\r\n graphDataConfiguration.findIndex(\r\n el => el.chartConfigId === d.chartConfigId,\r\n )\r\n ].columnId as string),\r\n )\r\n ].label\r\n : ''\r\n }\r\n onValueChange={el => {\r\n const selectedOption =\r\n d.allowedColumnIds[\r\n d.allowedColumnIds.findIndex(opt => opt.label === el)\r\n ];\r\n const newGraphConfig = {\r\n columnId: selectedOption.value,\r\n chartConfigId: d.chartConfigId,\r\n };\r\n const updatedConfig = graphConfig?.map(item =>\r\n item.chartConfigId === newGraphConfig.chartConfigId\r\n ? newGraphConfig\r\n : item,\r\n );\r\n setAdvancedGraphSettings(\r\n getGraphSettings(dataSelectionOptions, updatedConfig),\r\n );\r\n setGraphConfig(updatedConfig);\r\n }}\r\n >\r\n {d.allowedColumnIds.map((el, j) => (\r\n <RadioGroupItem label={el.label} value={el.label} key={j} />\r\n ))}\r\n </RadioGroup>\r\n )\r\n ) : d.ui !== 'radio' ? (\r\n <DropdownSelect\r\n options={d.allowedColumnIds}\r\n size='sm'\r\n isMulti\r\n isSearchable\r\n variant={uiMode}\r\n controlShouldRenderValue\r\n defaultValue={\r\n graphDataConfiguration\r\n ? (\r\n graphDataConfiguration[\r\n graphDataConfiguration.findIndex(\r\n el => el.chartConfigId === d.chartConfigId,\r\n )\r\n ].columnId as string[]\r\n ).map(\r\n el =>\r\n d.allowedColumnIds[\r\n d.allowedColumnIds.findIndex(j => j.value === el)\r\n ],\r\n )\r\n : undefined\r\n }\r\n filterOption={createFilter(filterConfig)}\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onChange={(el: any) => {\r\n const newGraphConfig = {\r\n columnId: (el || []).map(\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n (item: any) => item.value,\r\n ) as string[],\r\n chartConfigId: d.chartConfigId,\r\n };\r\n const updatedConfig = graphConfig?.map(item =>\r\n item.chartConfigId === newGraphConfig.chartConfigId\r\n ? newGraphConfig\r\n : item,\r\n );\r\n setGraphConfig(updatedConfig);\r\n }}\r\n />\r\n ) : (\r\n <CheckboxGroup\r\n variant={uiMode}\r\n defaultValue={\r\n graphDataConfiguration\r\n ? (\r\n graphDataConfiguration[\r\n graphDataConfiguration.findIndex(\r\n el => el.chartConfigId === d.chartConfigId,\r\n )\r\n ].columnId as string[]\r\n )\r\n .map(\r\n el =>\r\n d.allowedColumnIds[\r\n d.allowedColumnIds.findIndex(j => j.value === el)\r\n ],\r\n )\r\n .map(el => el.value)\r\n : []\r\n }\r\n onValueChange={el => {\r\n const newGraphConfig = {\r\n columnId: el || [],\r\n chartConfigId: d.chartConfigId,\r\n };\r\n const updatedConfig = graphConfig?.map(item =>\r\n item.chartConfigId === newGraphConfig.chartConfigId\r\n ? newGraphConfig\r\n : item,\r\n );\r\n setGraphConfig(updatedConfig);\r\n }}\r\n >\r\n {d.allowedColumnIds.map((el, j) => (\r\n <CheckboxGroupItem label={el.label} value={el.label} key={j} />\r\n ))}\r\n </CheckboxGroup>\r\n )}\r\n </div>\r\n ))}\r\n {filterSettings?.map((d, i) => (\r\n <div\r\n style={{\r\n width:\r\n d.width ||\r\n `calc(${100 / noOfFiltersPerRow}% - ${\r\n (noOfFiltersPerRow - 1) / noOfFiltersPerRow\r\n }rem)`,\r\n flexGrow: d.width ? 0 : 1,\r\n flexShrink: d.ui !== 'radio' || d.width ? 0 : 1,\r\n minWidth: '240px',\r\n }}\r\n key={i}\r\n className='pb-4'\r\n >\r\n <Label className='mb-2'>{d.label}</Label>\r\n {d.singleSelect ? (\r\n d.ui !== 'radio' ? (\r\n <DropdownSelect\r\n options={d.availableValues}\r\n variant={uiMode}\r\n isClearable={d.clearable === undefined ? true : d.clearable}\r\n isSearchable\r\n controlShouldRenderValue\r\n filterOption={createFilter(filterConfig)}\r\n onChange={el => {\r\n handleFilterChange(d.filter, el);\r\n }}\r\n value={d.value}\r\n defaultValue={d.defaultValue}\r\n />\r\n ) : (\r\n <RadioGroup\r\n variant={uiMode}\r\n defaultValue={(d.defaultValue as { value: string; label: string }).value}\r\n onValueChange={el => {\r\n handleFilterChange(\r\n d.filter,\r\n d.availableValues.filter(v => v.value === el),\r\n );\r\n }}\r\n >\r\n {d.availableValues.map((el, j) => (\r\n <RadioGroupItem label={`${el.label}`} value={`${el.value}`} key={j} />\r\n ))}\r\n </RadioGroup>\r\n )\r\n ) : (\r\n <>\r\n {d.ui !== 'radio' ? (\r\n <DropdownSelect\r\n options={d.availableValues}\r\n variant={uiMode}\r\n size='sm'\r\n isMulti\r\n isClearable={d.clearable === undefined ? true : d.clearable}\r\n isSearchable\r\n controlShouldRenderValue\r\n filterOption={createFilter(filterConfig)}\r\n onChange={el => {\r\n handleFilterChange(d.filter, el);\r\n }}\r\n value={d.value}\r\n defaultValue={d.defaultValue}\r\n />\r\n ) : (\r\n <CheckboxGroup\r\n variant={uiMode}\r\n defaultValue={\r\n d.defaultValue\r\n ? (\r\n d.defaultValue as {\r\n value: string | number;\r\n label: string | number;\r\n }[]\r\n ).map(el => `${el.value}`)\r\n : []\r\n }\r\n value={\r\n d.value\r\n ? (\r\n d.value as {\r\n value: string | number;\r\n label: string | number;\r\n }[]\r\n ).map(el => `${el.value}`)\r\n : undefined\r\n }\r\n onValueChange={el => {\r\n handleFilterChange(\r\n d.filter,\r\n d.availableValues.filter(v => el.indexOf(`${v.value}`) !== -1),\r\n );\r\n }}\r\n >\r\n {d.availableValues.map((el, j) => (\r\n <CheckboxGroupItem\r\n label={`${el.label}`}\r\n value={`${el.value}`}\r\n key={j}\r\n />\r\n ))}\r\n </CheckboxGroup>\r\n )}\r\n {d.allowSelectAll ? (\r\n <button\r\n type='button'\r\n className='bg-transparent border-0 p-0 mt-2 cursor-pointer text-primary-blue-600 dark:text-primary-blue-400'\r\n onClick={() => {\r\n handleFilterChange(d.filter, d.availableValues);\r\n }}\r\n >\r\n Select all options\r\n </button>\r\n ) : null}\r\n </>\r\n )}\r\n </div>\r\n ))}\r\n {highlightDataPointSettings ? (\r\n <div\r\n style={{\r\n width:\r\n highlightDataPointSettings.width ||\r\n `calc(${100 / noOfFiltersPerRow}% - ${\r\n (noOfFiltersPerRow - 1) / noOfFiltersPerRow\r\n }rem)`,\r\n flexGrow: highlightDataPointSettings.width ? 0 : 1,\r\n flexShrink: 0,\r\n minWidth: '240px',\r\n }}\r\n className='pb-4'\r\n >\r\n <Label className='mb-2'>\r\n {highlightDataPointSettings.label || 'Highlight data'}\r\n </Label>\r\n <DropdownSelect\r\n options={highlightedDataPointOptions}\r\n variant={uiMode}\r\n size='sm'\r\n isMulti\r\n isClearable\r\n isSearchable\r\n controlShouldRenderValue\r\n filterOption={createFilter(filterConfig)}\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onChange={(el: any) => {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n setHighlightedDataPointList(el?.map((d: any) => d.value));\r\n }}\r\n value={highlightedDataPointList?.map(d => ({\r\n label: d,\r\n value: d,\r\n }))}\r\n defaultValue={highlightDataPointSettings.defaultValues?.map(d => ({\r\n label: d,\r\n value: d,\r\n }))}\r\n />\r\n </div>\r\n ) : null}\r\n </div>\r\n ) : null}\r\n <ThreeDGraphEl\r\n graph={graphType}\r\n graphData={graphData}\r\n graphDataConfiguration={graphConfig}\r\n debugMode={debugMode}\r\n readableHeader={readableHeader || []}\r\n updateFilters={updateFilters}\r\n settings={{\r\n ...(graphSettings || {}),\r\n ...advancedGraphSettings,\r\n graphTitle: undefined,\r\n graphDescription: undefined,\r\n graphDownload: false,\r\n dataDownload: false,\r\n backgroundColor: undefined,\r\n padding: '0',\r\n width: undefined,\r\n height: undefined,\r\n relativeHeight: undefined,\r\n minHeight: undefined,\r\n theme: graphSettings?.theme,\r\n ...(highlightedDataPointList\r\n ? {\r\n highlightedDataPoints: highlightedDataPointList,\r\n highlightedIds: highlightedDataPointList?.map(d => `${d}`),\r\n highlightedLines: highlightedDataPointList?.map(d => d),\r\n }\r\n : {}),\r\n }}\r\n />\r\n </>\r\n ) : (\r\n <div className='w-full flex justify-center p-4'>\r\n <Spinner />\r\n </div>\r\n )}\r\n </GraphContainer>\r\n );\r\n}\r\n"],"names":["ThreeDGraphEl","props","$","_c","settings","graph","graphData","debugMode","graphDataConfiguration","readableHeader","updateFilters","console","log","t0","width","t1","Symbol","for","height","t2","P","t3","threeDGlobe","ThreeDGlobe","graphComponents","graphType","globeOffset","collapseColorScaleByDefault","polygonAltitude","highlightedIds","scale","theme","resetSelectionOnDoubleClick","graphTitle","mapData","graphDescription","footNote","sources","colorDomain","colors","colorLegendTitle","Object","keys","indexOf","getValues","scaleType","data","centerPoint","backgroundColor","mapNoDataColor","mapBorderColor","relativeHeight","padding","tooltip","showColorScale","graphID","dataDownload","mapProperty","language","minHeight","ariaLabel","onSeriesMouseClick","el","id","detailsOnClick","styles","classNames","autoRotate","globeMaterial","atmosphereColor","enableZoom","atmosphereAltitude","globeCurvatureResolution","fogSettings","fogSetting","lights","highlightedAltitude","selectedId","getGraphProps","GraphComponent","graphProps","t4","t5","jsx","t6","getGraphSettings","dataSelectionOptions","updatedConfig","updatedSettings","map","c","indx","findIndex","opt","chartConfigId","allowedValIndx","allowedColumnIds","col","value","columnId","graphSettings","assign","SingleGraphDashboardThreeDGraphs","dataSettings","filters","dataTransform","dataFilters","advancedDataSelectionOptions","noOfFiltersPerRow","uiMode","highlightDataPointSettings","filteredData","setFilteredData","useState","undefined","setData","graphConfig","setGraphConfig","advancedGraphSettings","setAdvancedGraphSettings","highlightedDataPointList","setHighlightedDataPointList","highlightedDataPointOptions","setHighlightedDataPointOption","graphParentDiv","useRef","prevGraphDataConfigRef","filterSettings","setFilterSettings","filterConfig","ignoreCase","ignoreAccents","trim","updateFiltersEvent","useEffectEvent","filterSettingsTemp","filter","column","label","singleSelect","clearable","defaultValue","transformDefaultValue","availableValues","getUniqValue","v","excludeValues","includes","allowSelectAll","useEffect","dataFromFile","dataURL","fileType","fetchAndParseJSON","columnsToArray","dataTransformation","fetchAndTransformDataFromAPI","apiHeaders","fetchAndParseCSV","delimiter","fetchAndParseMultipleDataSources","idColumnTitle","transformColumnsToArray","error","fetchData","filteredDataEvent","length","result","item","every","flattenDeep","intersection","updateHighlightedDataPointOptions","d","isEqual","current","handleFilterChange","values","prev","f","transformDataForGraph","transformDataForAggregation","filterData","keyColumn","aggregationColumnsSetting","GraphContainer","graphContainer","graphList","geoHubMapPresentation","jsxs","Fragment","graphDownload","GraphHeader","title","description","i","flexGrow","flexShrink","ui","minWidth","Label","DropdownSelect","options","dataConfiguration","RadioGroup","selectedOption","j","RadioGroupItem","checkIfMultiple","createFilter","newGraphConfig","CheckboxGroup","CheckboxGroupItem","defaultValues","highlightedDataPoints","highlightedLines","Spinner"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SingleGraphDashboardThreeDGraphs.cjs","sources":["../src/Components/Dashboard/PerformanceIntensive/ThreeDGraphEl.tsx","../src/Components/Dashboard/PerformanceIntensive/SingleGraphDashboardThreeDGraphs.tsx"],"sourcesContent":["import { P } from '@undp/design-system-react/Typography';\r\n\r\nimport { ThreeDGlobe } from '../../Graphs/Maps/ThreeDGlobe';\r\n\r\nimport { getValues } from '@/Utils/getValues';\r\nimport { GraphConfigurationDataType, GraphSettingsDataType, ThreeDGraphType } from '@/Types';\r\n\r\ninterface Props {\r\n graph: ThreeDGraphType;\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n graphData: any;\r\n settings?: GraphSettingsDataType;\r\n debugMode?: boolean;\r\n graphDataConfiguration?: GraphConfigurationDataType[];\r\n readableHeader: {\r\n value: string;\r\n label: string;\r\n }[];\r\n updateFilters?: (_d: string) => void;\r\n}\r\n\r\nfunction ThreeDGraphEl(props: Props) {\r\n const {\r\n settings,\r\n graph,\r\n graphData,\r\n debugMode,\r\n graphDataConfiguration,\r\n readableHeader,\r\n updateFilters,\r\n } = props;\r\n if (debugMode) {\r\n // eslint-disable-next-line no-console\r\n console.log(`Graph: ${graph}`);\r\n // eslint-disable-next-line no-console\r\n console.log('Transformed data:', graphData);\r\n // eslint-disable-next-line no-console\r\n console.log('Settings:', settings);\r\n }\r\n if (typeof graphData === 'string')\r\n return (\r\n <div\r\n className={`flex my-0 mx-auto grow flex-col justify-center ${\r\n settings?.width ? 'w-fit' : 'w-full'\r\n }`}\r\n style={{ height: 'inherit' }}\r\n >\r\n <P\r\n size='sm'\r\n marginBottom='none'\r\n className='p-2 text-center text-accent-dark-red dark:text-accent-red'\r\n >\r\n {graphData}\r\n </P>\r\n </div>\r\n );\r\n const graphComponents: Record<ThreeDGraphType, React.ElementType | null> = {\r\n threeDGlobe: ThreeDGlobe,\r\n };\r\n const getGraphProps = (graphType: ThreeDGraphType) => {\r\n switch (graphType) {\r\n case 'threeDGlobe':\r\n return {\r\n globeOffset: settings?.globeOffset,\r\n collapseColorScaleByDefault: settings?.collapseColorScaleByDefault,\r\n polygonAltitude: settings?.polygonAltitude,\r\n highlightedIds: settings?.highlightedIds,\r\n scale: settings?.scale,\r\n theme: settings?.theme,\r\n resetSelectionOnDoubleClick: settings?.resetSelectionOnDoubleClick,\r\n graphTitle: settings?.graphTitle,\r\n mapData: settings?.mapData,\r\n graphDescription: settings?.graphDescription,\r\n footNote: settings?.footNote,\r\n width: settings?.width,\r\n height: settings?.height,\r\n sources: settings?.sources,\r\n colorDomain: settings?.colorDomain as string[] | number[],\r\n colors: settings?.colors as string[] | undefined,\r\n colorLegendTitle:\r\n Object.keys(settings || {}).indexOf('colorLegendTitle') !== -1\r\n ? settings?.colorLegendTitle\r\n : getValues('x', graphDataConfiguration || [], readableHeader || []),\r\n scaleType: settings?.scaleType,\r\n data: graphData,\r\n centerPoint: settings?.centerPoint,\r\n backgroundColor: settings?.backgroundColor,\r\n mapNoDataColor: settings?.mapNoDataColor,\r\n mapBorderColor: settings?.mapBorderColor,\r\n relativeHeight: settings?.relativeHeight,\r\n padding: settings?.padding,\r\n tooltip: settings?.tooltip,\r\n showColorScale: settings?.showColorScale,\r\n graphID: settings?.graphID,\r\n dataDownload: settings?.dataDownload,\r\n mapProperty: settings?.mapProperty,\r\n language: settings?.language,\r\n minHeight: settings?.minHeight,\r\n ariaLabel: settings?.ariaLabel,\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onSeriesMouseClick: (el: any) => {\r\n updateFilters?.(el.id);\r\n },\r\n detailsOnClick: settings?.detailsOnClick,\r\n styles: settings?.styles,\r\n classNames: settings?.classNames,\r\n autoRotate: settings?.autoRotate,\r\n globeMaterial: settings?.globeMaterial,\r\n atmosphereColor: settings?.atmosphereColor,\r\n enableZoom: settings?.enableZoom,\r\n atmosphereAltitude: settings?.atmosphereAltitude,\r\n globeCurvatureResolution: settings?.globeCurvatureResolution,\r\n fogSettings: settings?.fogSetting,\r\n lights: settings?.lights,\r\n highlightedAltitude: settings?.highlightedAltitude,\r\n selectedId: settings?.selectedId,\r\n };\r\n default:\r\n return {};\r\n }\r\n };\r\n const GraphComponent = graphComponents[graph];\r\n const graphProps = getGraphProps(graph);\r\n return (\r\n <div\r\n className={`grow my-0 mx-auto flex flex-col w-full justify-center ${settings?.theme || 'light'}`}\r\n style={{ minHeight: 'inherit' }}\r\n >\r\n {GraphComponent ? (\r\n <GraphComponent {...graphProps} />\r\n ) : (\r\n <P\r\n size='sm'\r\n marginBottom='none'\r\n className='p-2 text-center text-accent-dark-red dark:text-accent-red'\r\n >\r\n {`Invalid chart type: ${graph}`}\r\n </P>\r\n )}\r\n </div>\r\n );\r\n}\r\n\r\nexport default ThreeDGraphEl;\r\n","import { useEffect, useEffectEvent, useRef, useState } from 'react';\r\nimport intersection from 'lodash.intersection';\r\nimport flattenDeep from 'lodash.flattendeep';\r\nimport isEqual from 'fast-deep-equal';\r\nimport { createFilter, DropdownSelect } from '@undp/design-system-react/DropdownSelect';\r\nimport { CheckboxGroup, CheckboxGroupItem } from '@undp/design-system-react/CheckboxGroup';\r\nimport { RadioGroup, RadioGroupItem } from '@undp/design-system-react/RadioGroup';\r\nimport { Spinner } from '@undp/design-system-react/Spinner';\r\nimport { Label } from '@undp/design-system-react/Label';\r\n\r\nimport ThreeDGraphEl from './ThreeDGraphEl';\r\n\r\nimport {\r\n AdvancedDataSelectionDataType,\r\n AggregationSettingsDataType,\r\n DataFilterDataType,\r\n DataSelectionDataType,\r\n DataSettingsDataType,\r\n FilterSettingsDataType,\r\n FilterUiSettingsDataType,\r\n GraphConfigurationDataType,\r\n GraphSettingsDataType,\r\n HighlightDataPointSettingsDataType,\r\n ThreeDGraphType,\r\n} from '@/Types';\r\nimport {\r\n fetchAndParseCSV,\r\n fetchAndParseJSON,\r\n fetchAndParseMultipleDataSources,\r\n fetchAndTransformDataFromAPI,\r\n} from '@/Utils/fetchAndParseData';\r\nimport { transformDataForGraph } from '@/Utils/transformData/transformDataForGraph';\r\nimport { getUniqValue } from '@/Utils/getUniqValue';\r\nimport { transformDataForAggregation } from '@/Utils/transformData/transformDataForAggregation';\r\nimport { GraphHeader } from '@/Components/Elements/GraphHeader';\r\nimport { filterData } from '@/Utils/transformData/filterData';\r\nimport { checkIfMultiple } from '@/Utils/checkIfMultiple';\r\nimport { transformColumnsToArray } from '@/Utils/transformData/transformColumnsToArray';\r\nimport { graphList } from '@/Utils/getGraphList';\r\nimport { transformDefaultValue } from '@/Utils/transformDataForSelect';\r\nimport { GraphContainer } from '@/Components/Elements/GraphContainer';\r\n\r\ninterface Props {\r\n graphSettings?: GraphSettingsDataType;\r\n readableHeader?: {\r\n value: string;\r\n label: string;\r\n }[];\r\n dataSettings: DataSettingsDataType;\r\n filters?: FilterUiSettingsDataType[];\r\n highlightDataPointSettings?: HighlightDataPointSettingsDataType;\r\n noOfFiltersPerRow?: number;\r\n graphType: ThreeDGraphType;\r\n dataTransform?: {\r\n keyColumn: string;\r\n aggregationColumnsSetting?: AggregationSettingsDataType[];\r\n };\r\n dataFilters?: DataFilterDataType[];\r\n graphDataConfiguration?: GraphConfigurationDataType[];\r\n dataSelectionOptions?: DataSelectionDataType[];\r\n advancedDataSelectionOptions?: AdvancedDataSelectionDataType[];\r\n debugMode?: boolean;\r\n uiMode?: 'light' | 'normal';\r\n updateFilters?: (_d: string) => void;\r\n}\r\n\r\nconst getGraphSettings = (\r\n dataSelectionOptions: DataSelectionDataType[],\r\n updatedConfig?: GraphConfigurationDataType[],\r\n) => {\r\n const updatedSettings =\r\n updatedConfig?.map(c => {\r\n const indx = dataSelectionOptions?.findIndex(opt => opt.chartConfigId === c.chartConfigId);\r\n if (indx === -1) return {};\r\n const allowedValIndx = dataSelectionOptions[indx]?.allowedColumnIds?.findIndex(\r\n col => col.value === c.columnId,\r\n );\r\n if (allowedValIndx === -1) return {};\r\n return dataSelectionOptions[indx].allowedColumnIds[allowedValIndx].graphSettings || {};\r\n }) || [];\r\n return Object.assign({}, ...updatedSettings);\r\n};\r\n\r\nexport function SingleGraphDashboardThreeDGraphs(props: Props) {\r\n const {\r\n graphSettings,\r\n dataSettings,\r\n filters,\r\n graphType,\r\n dataTransform,\r\n graphDataConfiguration,\r\n dataFilters,\r\n debugMode,\r\n dataSelectionOptions,\r\n advancedDataSelectionOptions,\r\n readableHeader,\r\n noOfFiltersPerRow = 4,\r\n updateFilters,\r\n uiMode = 'normal',\r\n highlightDataPointSettings,\r\n } = props;\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const [filteredData, setFilteredData] = useState<any>(undefined);\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const [data, setData] = useState<any>(undefined);\r\n const [graphConfig, setGraphConfig] = useState<GraphConfigurationDataType[] | undefined>(\r\n graphDataConfiguration,\r\n );\r\n const [advancedGraphSettings, setAdvancedGraphSettings] = useState<GraphSettingsDataType>({});\r\n const [highlightedDataPointList, setHighlightedDataPointList] = useState<\r\n (string | number)[] | undefined\r\n >(undefined);\r\n const [highlightedDataPointOptions, setHighlightedDataPointOption] = useState<\r\n { label: string | number; value: string | number }[]\r\n >([]);\r\n const graphParentDiv = useRef<HTMLDivElement>(null);\r\n\r\n const prevGraphDataConfigRef = useRef<GraphConfigurationDataType[] | undefined>(\r\n graphDataConfiguration,\r\n );\r\n const [filterSettings, setFilterSettings] = useState<FilterSettingsDataType[]>([]);\r\n\r\n const filterConfig = {\r\n ignoreCase: true,\r\n ignoreAccents: true,\r\n trim: true,\r\n };\r\n\r\n const updateFiltersEvent = useEffectEvent(() => {\r\n const filterSettingsTemp = (filters || []).map(el => ({\r\n filter: el.column,\r\n label: el.label || `Filter by ${el.column}`,\r\n singleSelect: el.singleSelect,\r\n clearable: el.clearable,\r\n defaultValue: transformDefaultValue(el.defaultValue),\r\n value: transformDefaultValue(el.defaultValue),\r\n availableValues: getUniqValue(data, el.column)\r\n .filter(v => !el.excludeValues?.includes(`${v}`))\r\n .map(v => ({ value: v, label: v })),\r\n allowSelectAll: el.allowSelectAll,\r\n width: el.width,\r\n }));\r\n setFilterSettings(filterSettingsTemp);\r\n });\r\n useEffect(() => {\r\n const fetchData = async () => {\r\n try {\r\n const dataFromFile = dataSettings.dataURL\r\n ? typeof dataSettings.dataURL === 'string'\r\n ? dataSettings.fileType === 'json'\r\n ? await fetchAndParseJSON(\r\n dataSettings.dataURL,\r\n dataSettings.columnsToArray,\r\n dataSettings.dataTransformation,\r\n debugMode,\r\n )\r\n : dataSettings.fileType === 'api'\r\n ? await fetchAndTransformDataFromAPI(\r\n dataSettings.dataURL,\r\n dataSettings.apiHeaders,\r\n dataSettings.columnsToArray,\r\n dataSettings.dataTransformation,\r\n debugMode,\r\n )\r\n : await fetchAndParseCSV(\r\n dataSettings.dataURL,\r\n dataSettings.dataTransformation,\r\n dataSettings.columnsToArray,\r\n debugMode,\r\n dataSettings.delimiter,\r\n true,\r\n )\r\n : await fetchAndParseMultipleDataSources(\r\n dataSettings.dataURL,\r\n dataSettings.idColumnTitle,\r\n )\r\n : await transformColumnsToArray(dataSettings.data, dataSettings.columnsToArray);\r\n setData(dataFromFile);\r\n } catch (error) {\r\n console.error('Data fetching error:', error);\r\n }\r\n };\r\n fetchData();\r\n updateFiltersEvent();\r\n }, [dataSettings, debugMode]);\r\n\r\n useEffect(() => {\r\n updateFiltersEvent();\r\n }, [filters, data]);\r\n\r\n const filteredDataEvent = useEffectEvent(() => {\r\n if (!data || filterSettings.length === 0) setFilteredData(data);\r\n else {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const result = data.filter((item: any) =>\r\n filterSettings.every(filter =>\r\n filter.value && flattenDeep([filter.value]).length > 0\r\n ? intersection(\r\n flattenDeep([item[filter.filter]]),\r\n flattenDeep([filter.value]).map(el => el.value),\r\n ).length > 0\r\n : true,\r\n ),\r\n );\r\n setFilteredData(result);\r\n }\r\n });\r\n\r\n useEffect(() => {\r\n filteredDataEvent();\r\n }, [filterSettings, data]);\r\n\r\n useEffect(() => {\r\n if (dataSelectionOptions)\r\n // eslint-disable-next-line react-hooks/set-state-in-effect\r\n setAdvancedGraphSettings(getGraphSettings(dataSelectionOptions, graphDataConfiguration));\r\n }, [dataSelectionOptions, graphDataConfiguration]);\r\n\r\n const updateHighlightedDataPointOptions = useEffectEvent(() => {\r\n if (highlightDataPointSettings?.column && filteredData)\r\n setHighlightedDataPointOption(\r\n getUniqValue(filteredData, highlightDataPointSettings.column)\r\n .filter(v => !highlightDataPointSettings?.excludeValues?.includes(`${v}`))\r\n .map(d => ({ value: d, label: d })),\r\n );\r\n });\r\n\r\n useEffect(() => {\r\n updateHighlightedDataPointOptions();\r\n }, [highlightDataPointSettings]);\r\n\r\n useEffect(() => {\r\n if (!isEqual(prevGraphDataConfigRef.current, graphDataConfiguration)) {\r\n // eslint-disable-next-line react-hooks/set-state-in-effect\r\n setGraphConfig(graphDataConfiguration);\r\n prevGraphDataConfigRef.current = graphDataConfiguration;\r\n }\r\n }, [graphDataConfiguration]);\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const handleFilterChange = (filter: string, values: any) => {\r\n setFilterSettings(prev => prev.map(f => (f.filter === filter ? { ...f, value: values } : f)));\r\n };\r\n\r\n const graphData = !data\r\n ? undefined\r\n : transformDataForGraph(\r\n dataTransform\r\n ? transformDataForAggregation(\r\n filterData(data, dataFilters || []),\r\n dataTransform.keyColumn,\r\n dataTransform.aggregationColumnsSetting,\r\n )\r\n : filterData(data, dataFilters || []),\r\n graphType,\r\n graphConfig,\r\n );\r\n return (\r\n <GraphContainer\r\n className={graphSettings?.classNames?.graphContainer}\r\n style={graphSettings?.styles?.graphContainer}\r\n id={graphSettings?.graphID}\r\n ref={graphParentDiv}\r\n aria-label={graphSettings?.ariaLabel}\r\n backgroundColor={graphSettings?.backgroundColor ?? false}\r\n theme={graphSettings?.theme || 'light'}\r\n language={graphSettings?.language || 'en'}\r\n width={graphSettings?.width}\r\n height={graphSettings?.height}\r\n padding={graphSettings?.padding}\r\n minHeight={graphSettings?.minHeight}\r\n relativeHeight={graphSettings?.relativeHeight}\r\n >\r\n {data ||\r\n graphList\r\n .filter(el => el.geoHubMapPresentation)\r\n .map(el => el.graphID)\r\n .indexOf(graphType) !== -1 ? (\r\n <>\r\n {advancedGraphSettings?.graphTitle ||\r\n advancedGraphSettings?.graphDescription ||\r\n graphSettings?.graphTitle ||\r\n graphSettings?.graphDescription ||\r\n graphSettings?.graphDownload ||\r\n graphSettings?.dataDownload ? (\r\n <GraphHeader\r\n styles={{\r\n title: advancedGraphSettings?.styles?.title || graphSettings?.styles?.title,\r\n description:\r\n advancedGraphSettings?.styles?.description || graphSettings?.styles?.description,\r\n }}\r\n classNames={{\r\n title: advancedGraphSettings?.classNames?.title || graphSettings?.classNames?.title,\r\n description:\r\n advancedGraphSettings?.classNames?.description ||\r\n graphSettings?.classNames?.description,\r\n }}\r\n graphTitle={advancedGraphSettings?.graphTitle || graphSettings?.graphTitle}\r\n graphDescription={\r\n advancedGraphSettings?.graphDescription || graphSettings?.graphDescription\r\n }\r\n width={advancedGraphSettings?.width || graphSettings?.width}\r\n graphDownload={graphSettings?.graphDownload ? graphParentDiv : undefined}\r\n dataDownload={\r\n graphSettings?.dataDownload && data ? (data.length > 0 ? data : null) : null\r\n }\r\n />\r\n ) : null}\r\n {filterSettings.length !== 0 ||\r\n (dataSelectionOptions || []).length !== 0 ||\r\n (advancedDataSelectionOptions || []).length !== 0 ||\r\n highlightDataPointSettings ? (\r\n <div className='flex flex-wrap items-start gap-x-4 gap-y-0 w-full'>\r\n {advancedDataSelectionOptions?.map((d, i) => (\r\n <div\r\n style={{\r\n width:\r\n d.width ||\r\n `calc(${100 / noOfFiltersPerRow}% - ${\r\n (noOfFiltersPerRow - 1) / noOfFiltersPerRow\r\n }rem)`,\r\n flexGrow: d.width ? 0 : 1,\r\n flexShrink: d.ui !== 'radio' || d.width ? 0 : 1,\r\n minWidth: '240px',\r\n }}\r\n key={i}\r\n className='pb-4'\r\n >\r\n <Label className='mb-2'>{d.label || 'Graph by'}</Label>\r\n {d.ui !== 'radio' ? (\r\n <DropdownSelect\r\n options={d.options.map(opt => ({\r\n ...opt,\r\n value: opt.label,\r\n }))}\r\n size='sm'\r\n isClearable={false}\r\n isSearchable\r\n variant={uiMode}\r\n controlShouldRenderValue\r\n defaultValue={\r\n d.defaultValue\r\n ? {\r\n ...d.defaultValue,\r\n value: d.defaultValue?.label,\r\n }\r\n : {\r\n ...d.options[0],\r\n value: d.options[0].label,\r\n }\r\n }\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onChange={(el: any) => {\r\n setAdvancedGraphSettings(el?.graphSettings || {});\r\n setGraphConfig(el?.dataConfiguration);\r\n }}\r\n />\r\n ) : (\r\n <RadioGroup\r\n defaultValue={d.defaultValue?.label || d.options[0].label}\r\n variant={uiMode}\r\n onValueChange={el => {\r\n const selectedOption =\r\n d.options[d.options.findIndex(opt => opt.label === el)];\r\n setAdvancedGraphSettings(selectedOption.graphSettings || {});\r\n setGraphConfig(selectedOption.dataConfiguration);\r\n }}\r\n >\r\n {d.options.map((el, j) => (\r\n <RadioGroupItem label={el.label} value={el.label} key={j} />\r\n ))}\r\n </RadioGroup>\r\n )}\r\n </div>\r\n ))}\r\n {dataSelectionOptions?.map((d, i) => (\r\n <div\r\n style={{\r\n width:\r\n d.width ||\r\n `calc(${100 / noOfFiltersPerRow}% - ${\r\n (noOfFiltersPerRow - 1) / noOfFiltersPerRow\r\n }rem)`,\r\n flexGrow: d.width ? 0 : 1,\r\n flexShrink: d.ui !== 'radio' || d.width ? 0 : 1,\r\n minWidth: '240px',\r\n }}\r\n key={i}\r\n className='pb-4'\r\n >\r\n <Label className='mb-2'>{d.label || `Visualize ${d.chartConfigId} by`}</Label>\r\n {!checkIfMultiple(d.chartConfigId, graphConfig || []) ? (\r\n d.ui !== 'radio' ? (\r\n <DropdownSelect\r\n options={d.allowedColumnIds}\r\n size='sm'\r\n isClearable={false}\r\n isSearchable\r\n variant={uiMode}\r\n controlShouldRenderValue\r\n defaultValue={\r\n graphDataConfiguration\r\n ? d.allowedColumnIds[\r\n d.allowedColumnIds.findIndex(\r\n j =>\r\n j.value ===\r\n (graphDataConfiguration[\r\n graphDataConfiguration.findIndex(\r\n el => el.chartConfigId === d.chartConfigId,\r\n )\r\n ].columnId as string),\r\n )\r\n ]\r\n : undefined\r\n }\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onChange={(el: any) => {\r\n const newGraphConfig = {\r\n columnId: el?.value as string,\r\n chartConfigId: d.chartConfigId,\r\n };\r\n const updatedConfig = graphConfig?.map(item =>\r\n item.chartConfigId === newGraphConfig.chartConfigId\r\n ? newGraphConfig\r\n : item,\r\n );\r\n setAdvancedGraphSettings(\r\n getGraphSettings(dataSelectionOptions, updatedConfig),\r\n );\r\n setGraphConfig(updatedConfig);\r\n }}\r\n />\r\n ) : (\r\n <RadioGroup\r\n variant={uiMode}\r\n defaultValue={\r\n graphDataConfiguration\r\n ? d.allowedColumnIds[\r\n d.allowedColumnIds.findIndex(\r\n j =>\r\n j.value ===\r\n (graphDataConfiguration[\r\n graphDataConfiguration.findIndex(\r\n el => el.chartConfigId === d.chartConfigId,\r\n )\r\n ].columnId as string),\r\n )\r\n ].label\r\n : ''\r\n }\r\n onValueChange={el => {\r\n const selectedOption =\r\n d.allowedColumnIds[\r\n d.allowedColumnIds.findIndex(opt => opt.label === el)\r\n ];\r\n const newGraphConfig = {\r\n columnId: selectedOption.value,\r\n chartConfigId: d.chartConfigId,\r\n };\r\n const updatedConfig = graphConfig?.map(item =>\r\n item.chartConfigId === newGraphConfig.chartConfigId\r\n ? newGraphConfig\r\n : item,\r\n );\r\n setAdvancedGraphSettings(\r\n getGraphSettings(dataSelectionOptions, updatedConfig),\r\n );\r\n setGraphConfig(updatedConfig);\r\n }}\r\n >\r\n {d.allowedColumnIds.map((el, j) => (\r\n <RadioGroupItem label={el.label} value={el.label} key={j} />\r\n ))}\r\n </RadioGroup>\r\n )\r\n ) : d.ui !== 'radio' ? (\r\n <DropdownSelect\r\n options={d.allowedColumnIds}\r\n size='sm'\r\n isMulti\r\n isSearchable\r\n variant={uiMode}\r\n controlShouldRenderValue\r\n defaultValue={\r\n graphDataConfiguration\r\n ? (\r\n graphDataConfiguration[\r\n graphDataConfiguration.findIndex(\r\n el => el.chartConfigId === d.chartConfigId,\r\n )\r\n ].columnId as string[]\r\n ).map(\r\n el =>\r\n d.allowedColumnIds[\r\n d.allowedColumnIds.findIndex(j => j.value === el)\r\n ],\r\n )\r\n : undefined\r\n }\r\n filterOption={createFilter(filterConfig)}\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onChange={(el: any) => {\r\n const newGraphConfig = {\r\n columnId: (el || []).map(\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n (item: any) => item.value,\r\n ) as string[],\r\n chartConfigId: d.chartConfigId,\r\n };\r\n const updatedConfig = graphConfig?.map(item =>\r\n item.chartConfigId === newGraphConfig.chartConfigId\r\n ? newGraphConfig\r\n : item,\r\n );\r\n setGraphConfig(updatedConfig);\r\n }}\r\n />\r\n ) : (\r\n <CheckboxGroup\r\n variant={uiMode}\r\n defaultValue={\r\n graphDataConfiguration\r\n ? (\r\n graphDataConfiguration[\r\n graphDataConfiguration.findIndex(\r\n el => el.chartConfigId === d.chartConfigId,\r\n )\r\n ].columnId as string[]\r\n )\r\n .map(\r\n el =>\r\n d.allowedColumnIds[\r\n d.allowedColumnIds.findIndex(j => j.value === el)\r\n ],\r\n )\r\n .map(el => el.value)\r\n : []\r\n }\r\n onValueChange={el => {\r\n const newGraphConfig = {\r\n columnId: el || [],\r\n chartConfigId: d.chartConfigId,\r\n };\r\n const updatedConfig = graphConfig?.map(item =>\r\n item.chartConfigId === newGraphConfig.chartConfigId\r\n ? newGraphConfig\r\n : item,\r\n );\r\n setGraphConfig(updatedConfig);\r\n }}\r\n >\r\n {d.allowedColumnIds.map((el, j) => (\r\n <CheckboxGroupItem label={el.label} value={el.label} key={j} />\r\n ))}\r\n </CheckboxGroup>\r\n )}\r\n </div>\r\n ))}\r\n {filterSettings?.map((d, i) => (\r\n <div\r\n style={{\r\n width:\r\n d.width ||\r\n `calc(${100 / noOfFiltersPerRow}% - ${\r\n (noOfFiltersPerRow - 1) / noOfFiltersPerRow\r\n }rem)`,\r\n flexGrow: d.width ? 0 : 1,\r\n flexShrink: d.ui !== 'radio' || d.width ? 0 : 1,\r\n minWidth: '240px',\r\n }}\r\n key={i}\r\n className='pb-4'\r\n >\r\n <Label className='mb-2'>{d.label}</Label>\r\n {d.singleSelect ? (\r\n d.ui !== 'radio' ? (\r\n <DropdownSelect\r\n options={d.availableValues}\r\n variant={uiMode}\r\n isClearable={d.clearable === undefined ? true : d.clearable}\r\n isSearchable\r\n controlShouldRenderValue\r\n filterOption={createFilter(filterConfig)}\r\n onChange={el => {\r\n handleFilterChange(d.filter, el);\r\n }}\r\n value={d.value}\r\n defaultValue={d.defaultValue}\r\n />\r\n ) : (\r\n <RadioGroup\r\n variant={uiMode}\r\n defaultValue={(d.defaultValue as { value: string; label: string }).value}\r\n onValueChange={el => {\r\n handleFilterChange(\r\n d.filter,\r\n d.availableValues.filter(v => v.value === el),\r\n );\r\n }}\r\n >\r\n {d.availableValues.map((el, j) => (\r\n <RadioGroupItem label={`${el.label}`} value={`${el.value}`} key={j} />\r\n ))}\r\n </RadioGroup>\r\n )\r\n ) : (\r\n <>\r\n {d.ui !== 'radio' ? (\r\n <DropdownSelect\r\n options={d.availableValues}\r\n variant={uiMode}\r\n size='sm'\r\n isMulti\r\n isClearable={d.clearable === undefined ? true : d.clearable}\r\n isSearchable\r\n controlShouldRenderValue\r\n filterOption={createFilter(filterConfig)}\r\n onChange={el => {\r\n handleFilterChange(d.filter, el);\r\n }}\r\n value={d.value}\r\n defaultValue={d.defaultValue}\r\n />\r\n ) : (\r\n <CheckboxGroup\r\n variant={uiMode}\r\n defaultValue={\r\n d.defaultValue\r\n ? (\r\n d.defaultValue as {\r\n value: string | number;\r\n label: string | number;\r\n }[]\r\n ).map(el => `${el.value}`)\r\n : []\r\n }\r\n value={\r\n d.value\r\n ? (\r\n d.value as {\r\n value: string | number;\r\n label: string | number;\r\n }[]\r\n ).map(el => `${el.value}`)\r\n : undefined\r\n }\r\n onValueChange={el => {\r\n handleFilterChange(\r\n d.filter,\r\n d.availableValues.filter(v => el.indexOf(`${v.value}`) !== -1),\r\n );\r\n }}\r\n >\r\n {d.availableValues.map((el, j) => (\r\n <CheckboxGroupItem\r\n label={`${el.label}`}\r\n value={`${el.value}`}\r\n key={j}\r\n />\r\n ))}\r\n </CheckboxGroup>\r\n )}\r\n {d.allowSelectAll ? (\r\n <button\r\n type='button'\r\n className='bg-transparent border-0 p-0 mt-2 cursor-pointer text-primary-blue-600 dark:text-primary-blue-400'\r\n onClick={() => {\r\n handleFilterChange(d.filter, d.availableValues);\r\n }}\r\n >\r\n Select all options\r\n </button>\r\n ) : null}\r\n </>\r\n )}\r\n </div>\r\n ))}\r\n {highlightDataPointSettings ? (\r\n <div\r\n style={{\r\n width:\r\n highlightDataPointSettings.width ||\r\n `calc(${100 / noOfFiltersPerRow}% - ${\r\n (noOfFiltersPerRow - 1) / noOfFiltersPerRow\r\n }rem)`,\r\n flexGrow: highlightDataPointSettings.width ? 0 : 1,\r\n flexShrink: 0,\r\n minWidth: '240px',\r\n }}\r\n className='pb-4'\r\n >\r\n <Label className='mb-2'>\r\n {highlightDataPointSettings.label || 'Highlight data'}\r\n </Label>\r\n <DropdownSelect\r\n options={highlightedDataPointOptions}\r\n variant={uiMode}\r\n size='sm'\r\n isMulti\r\n isClearable\r\n isSearchable\r\n controlShouldRenderValue\r\n filterOption={createFilter(filterConfig)}\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onChange={(el: any) => {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n setHighlightedDataPointList(el?.map((d: any) => d.value));\r\n }}\r\n value={highlightedDataPointList?.map(d => ({\r\n label: d,\r\n value: d,\r\n }))}\r\n defaultValue={highlightDataPointSettings.defaultValues?.map(d => ({\r\n label: d,\r\n value: d,\r\n }))}\r\n />\r\n </div>\r\n ) : null}\r\n </div>\r\n ) : null}\r\n <ThreeDGraphEl\r\n graph={graphType}\r\n graphData={graphData}\r\n graphDataConfiguration={graphConfig}\r\n debugMode={debugMode}\r\n readableHeader={readableHeader || []}\r\n updateFilters={updateFilters}\r\n settings={{\r\n ...(graphSettings || {}),\r\n ...advancedGraphSettings,\r\n graphTitle: undefined,\r\n graphDescription: undefined,\r\n graphDownload: false,\r\n dataDownload: false,\r\n backgroundColor: undefined,\r\n padding: '0',\r\n width: undefined,\r\n height: undefined,\r\n relativeHeight: undefined,\r\n minHeight: undefined,\r\n theme: graphSettings?.theme,\r\n ...(highlightedDataPointList\r\n ? {\r\n highlightedDataPoints: highlightedDataPointList,\r\n highlightedIds: highlightedDataPointList?.map(d => `${d}`),\r\n highlightedLines: highlightedDataPointList?.map(d => d),\r\n }\r\n : {}),\r\n }}\r\n />\r\n </>\r\n ) : (\r\n <div className='w-full flex justify-center p-4'>\r\n <Spinner />\r\n </div>\r\n )}\r\n </GraphContainer>\r\n );\r\n}\r\n"],"names":["ThreeDGraphEl","props","$","_c","settings","graph","graphData","debugMode","graphDataConfiguration","readableHeader","updateFilters","console","log","t0","width","t1","Symbol","for","height","t2","P","t3","threeDGlobe","ThreeDGlobe","graphComponents","graphType","globeOffset","collapseColorScaleByDefault","polygonAltitude","highlightedIds","scale","theme","resetSelectionOnDoubleClick","graphTitle","mapData","graphDescription","footNote","sources","colorDomain","colors","colorLegendTitle","Object","keys","indexOf","getValues","scaleType","data","centerPoint","backgroundColor","mapNoDataColor","mapBorderColor","relativeHeight","padding","tooltip","showColorScale","graphID","dataDownload","mapProperty","language","minHeight","ariaLabel","onSeriesMouseClick","el","id","detailsOnClick","styles","classNames","autoRotate","globeMaterial","atmosphereColor","enableZoom","atmosphereAltitude","globeCurvatureResolution","fogSettings","fogSetting","lights","highlightedAltitude","selectedId","getGraphProps","GraphComponent","graphProps","t4","t5","jsx","t6","getGraphSettings","dataSelectionOptions","updatedConfig","updatedSettings","map","c","indx","findIndex","opt","chartConfigId","allowedValIndx","allowedColumnIds","col","value","columnId","graphSettings","assign","SingleGraphDashboardThreeDGraphs","dataSettings","filters","dataTransform","dataFilters","advancedDataSelectionOptions","noOfFiltersPerRow","uiMode","highlightDataPointSettings","filteredData","setFilteredData","useState","undefined","setData","graphConfig","setGraphConfig","advancedGraphSettings","setAdvancedGraphSettings","highlightedDataPointList","setHighlightedDataPointList","highlightedDataPointOptions","setHighlightedDataPointOption","graphParentDiv","useRef","prevGraphDataConfigRef","filterSettings","setFilterSettings","filterConfig","ignoreCase","ignoreAccents","trim","updateFiltersEvent","useEffectEvent","filterSettingsTemp","filter","column","label","singleSelect","clearable","defaultValue","transformDefaultValue","availableValues","getUniqValue","v","excludeValues","includes","allowSelectAll","useEffect","dataFromFile","dataURL","fileType","fetchAndParseJSON","columnsToArray","dataTransformation","fetchAndTransformDataFromAPI","apiHeaders","fetchAndParseCSV","delimiter","fetchAndParseMultipleDataSources","idColumnTitle","transformColumnsToArray","error","fetchData","filteredDataEvent","length","result","item","every","flattenDeep","intersection","updateHighlightedDataPointOptions","d","isEqual","current","handleFilterChange","values","prev","f","transformDataForGraph","transformDataForAggregation","filterData","keyColumn","aggregationColumnsSetting","GraphContainer","graphContainer","graphList","geoHubMapPresentation","jsxs","Fragment","graphDownload","GraphHeader","title","description","i","flexGrow","flexShrink","ui","minWidth","Label","DropdownSelect","options","dataConfiguration","RadioGroup","selectedOption","j","RadioGroupItem","checkIfMultiple","createFilter","newGraphConfig","CheckboxGroup","CheckboxGroupItem","defaultValues","highlightedDataPoints","highlightedLines","Spinner"],"mappings":"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"}
|
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
import { c as ue, j as o } from "./index-CHPV5EwG-
|
|
1
|
+
import { c as ue, j as o } from "./index-CHPV5EwG-DecW7_qr.js";
|
|
2
2
|
import { useState as S, useRef as Q, useEffectEvent as E, useEffect as $ } from "react";
|
|
3
3
|
import { i as de } from "./index-BuwmuDFJ.js";
|
|
4
4
|
import { f as z } from "./index-EArKRVKg.js";
|
|
5
5
|
import { i as ce } from "./index-Bwrro8-q.js";
|
|
6
|
-
import { j as k, D as L } from "./DropdownSelect-
|
|
7
|
-
import { g as he, b as M, y as U, h as B, c as ge, $ as X, P as Y } from "./checkIfMultiple-
|
|
8
|
-
import { w as pe } from "./Spinner
|
|
9
|
-
import { j as _ } from "./Typography-
|
|
6
|
+
import { j as k, D as L } from "./DropdownSelect-D8rFbygC.js";
|
|
7
|
+
import { g as he, b as M, y as U, h as B, c as ge, $ as X, P as Y } from "./checkIfMultiple-D9fVkeOq.js";
|
|
8
|
+
import { w as pe } from "./Spinner--r2RrJV8.js";
|
|
9
|
+
import { j as _ } from "./Typography-hWfh3H0J.js";
|
|
10
10
|
import { ThreeDGlobe as fe } from "./ThreeDGlobe.js";
|
|
11
|
-
import { f as me, a as Ce, b as be, c as ve, t as xe } from "./fetchAndParseData-
|
|
12
|
-
import { a as we, t as Ie } from "./transformDataForAggregation-
|
|
11
|
+
import { f as me, a as Ce, b as be, c as ve, t as xe } from "./fetchAndParseData-BAXhgTDM.js";
|
|
12
|
+
import { a as we, t as Ie } from "./transformDataForAggregation-wdPf8bNt.js";
|
|
13
13
|
import { g as ee } from "./getUniqValue-DsqSii6M.js";
|
|
14
14
|
import { GraphHeader as De } from "./GraphHeader.js";
|
|
15
15
|
import { f as ae } from "./filterData-DsAiFzKY.js";
|
|
16
|
-
import { g as ye } from "./getGraphList-
|
|
16
|
+
import { g as ye } from "./getGraphList-Bpd3PVmF.js";
|
|
17
17
|
import { t as te } from "./transformDataForSelect-D8AuvYdf.js";
|
|
18
|
-
import { G as Se } from "./GraphContainer-
|
|
18
|
+
import { G as Se } from "./GraphContainer-CF6ws3pd.js";
|
|
19
19
|
function Ve(D) {
|
|
20
20
|
const a = ue.c(24), {
|
|
21
21
|
settings: t,
|
|
@@ -29,7 +29,7 @@ function Ve(D) {
|
|
|
29
29
|
if (I && (console.log(`Graph: ${g}`), console.log("Transformed data:", d), console.log("Settings:", t)), typeof d == "string") {
|
|
30
30
|
const m = `flex my-0 mx-auto grow flex-col justify-center ${t?.width ? "w-fit" : "w-full"}`;
|
|
31
31
|
let f;
|
|
32
|
-
a[0] === Symbol.for("react.memo_cache_sentinel") ? (f = {
|
|
32
|
+
a[0] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (f = {
|
|
33
33
|
height: "inherit"
|
|
34
34
|
}, a[0] = f) : f = a[0];
|
|
35
35
|
let u;
|
|
@@ -38,75 +38,68 @@ function Ve(D) {
|
|
|
38
38
|
return a[3] !== m || a[4] !== u ? (x = /* @__PURE__ */ o.jsx("div", { className: m, style: f, children: u }), a[3] = m, a[4] = u, a[5] = x) : x = a[5], x;
|
|
39
39
|
}
|
|
40
40
|
let b;
|
|
41
|
-
a[6] === Symbol.for("react.memo_cache_sentinel") ? (b = {
|
|
41
|
+
a[6] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (b = {
|
|
42
42
|
threeDGlobe: fe
|
|
43
43
|
}, a[6] = b) : b = a[6];
|
|
44
44
|
const P = b;
|
|
45
45
|
let j;
|
|
46
|
-
a[7] !== d || a[8] !== r || a[9] !== V || a[10] !== t || a[11] !== w ? (j = (m) => {
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
highlightedAltitude: t?.highlightedAltitude,
|
|
98
|
-
selectedId: t?.selectedId
|
|
99
|
-
};
|
|
100
|
-
default:
|
|
101
|
-
return {};
|
|
102
|
-
}
|
|
103
|
-
}, a[7] = d, a[8] = r, a[9] = V, a[10] = t, a[11] = w, a[12] = j) : j = a[12];
|
|
46
|
+
a[7] !== d || a[8] !== r || a[9] !== V || a[10] !== t || a[11] !== w ? (j = (m) => m === "threeDGlobe" ? {
|
|
47
|
+
globeOffset: t?.globeOffset,
|
|
48
|
+
collapseColorScaleByDefault: t?.collapseColorScaleByDefault,
|
|
49
|
+
polygonAltitude: t?.polygonAltitude,
|
|
50
|
+
highlightedIds: t?.highlightedIds,
|
|
51
|
+
scale: t?.scale,
|
|
52
|
+
theme: t?.theme,
|
|
53
|
+
resetSelectionOnDoubleClick: t?.resetSelectionOnDoubleClick,
|
|
54
|
+
graphTitle: t?.graphTitle,
|
|
55
|
+
mapData: t?.mapData,
|
|
56
|
+
graphDescription: t?.graphDescription,
|
|
57
|
+
footNote: t?.footNote,
|
|
58
|
+
width: t?.width,
|
|
59
|
+
height: t?.height,
|
|
60
|
+
sources: t?.sources,
|
|
61
|
+
colorDomain: t?.colorDomain,
|
|
62
|
+
colors: t?.colors,
|
|
63
|
+
colorLegendTitle: Object.keys(t || {}).indexOf("colorLegendTitle") !== -1 ? t?.colorLegendTitle : he("x", r || [], V || []),
|
|
64
|
+
scaleType: t?.scaleType,
|
|
65
|
+
data: d,
|
|
66
|
+
centerPoint: t?.centerPoint,
|
|
67
|
+
backgroundColor: t?.backgroundColor,
|
|
68
|
+
mapNoDataColor: t?.mapNoDataColor,
|
|
69
|
+
mapBorderColor: t?.mapBorderColor,
|
|
70
|
+
relativeHeight: t?.relativeHeight,
|
|
71
|
+
padding: t?.padding,
|
|
72
|
+
tooltip: t?.tooltip,
|
|
73
|
+
showColorScale: t?.showColorScale,
|
|
74
|
+
graphID: t?.graphID,
|
|
75
|
+
dataDownload: t?.dataDownload,
|
|
76
|
+
mapProperty: t?.mapProperty,
|
|
77
|
+
language: t?.language,
|
|
78
|
+
minHeight: t?.minHeight,
|
|
79
|
+
ariaLabel: t?.ariaLabel,
|
|
80
|
+
onSeriesMouseClick: (f) => {
|
|
81
|
+
w?.(f.id);
|
|
82
|
+
},
|
|
83
|
+
detailsOnClick: t?.detailsOnClick,
|
|
84
|
+
styles: t?.styles,
|
|
85
|
+
classNames: t?.classNames,
|
|
86
|
+
autoRotate: t?.autoRotate,
|
|
87
|
+
globeMaterial: t?.globeMaterial,
|
|
88
|
+
atmosphereColor: t?.atmosphereColor,
|
|
89
|
+
enableZoom: t?.enableZoom,
|
|
90
|
+
atmosphereAltitude: t?.atmosphereAltitude,
|
|
91
|
+
globeCurvatureResolution: t?.globeCurvatureResolution,
|
|
92
|
+
fogSettings: t?.fogSetting,
|
|
93
|
+
lights: t?.lights,
|
|
94
|
+
highlightedAltitude: t?.highlightedAltitude,
|
|
95
|
+
selectedId: t?.selectedId
|
|
96
|
+
} : {}, a[7] = d, a[8] = r, a[9] = V, a[10] = t, a[11] = w, a[12] = j) : j = a[12];
|
|
104
97
|
const c = j, T = P[g];
|
|
105
98
|
let h;
|
|
106
99
|
a[13] !== c || a[14] !== g ? (h = c(g), a[13] = c, a[14] = g, a[15] = h) : h = a[15];
|
|
107
100
|
const p = h, N = `grow my-0 mx-auto flex flex-col w-full justify-center ${t?.theme || "light"}`;
|
|
108
101
|
let y;
|
|
109
|
-
a[16] === Symbol.for("react.memo_cache_sentinel") ? (y = {
|
|
102
|
+
a[16] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (y = {
|
|
110
103
|
minHeight: "inherit"
|
|
111
104
|
}, a[16] = y) : y = a[16];
|
|
112
105
|
let s;
|