@undp/data-viz 2.1.9 → 2.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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.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 +48 -48
- 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 +207 -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/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 +213 -3252
- package/dist/index.js +145 -161
- 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/{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 +23 -15
- 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/getSchema.cjs +0 -2
- package/dist/getSchema.cjs.map +0 -1
- package/dist/getSchema.d.ts +0 -3258
- package/dist/getSchema.js +0 -1129
- package/dist/getSchema.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/validateSchema.cjs +0 -2
- package/dist/validateSchema.cjs.map +0 -1
- package/dist/validateSchema.d.ts +0 -66
- package/dist/validateSchema.js +0 -109
- package/dist/validateSchema.js.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,2 +0,0 @@
|
|
|
1
|
-
"use strict";const q=require("./index-BS2TADPj.cjs"),m=require("./checkIfNullOrUndefined-BCW3Y1ML.cjs"),h=require("./getGraphList-CA17dvFB.cjs"),o=require("./index-CSNtgibC.cjs"),g=require("./uniqBy-O05lp2S5.cjs"),c=[{chartID:"barChart",configuration:[{id:"label",required:!0,multiple:!1},{id:"size",required:!0,multiple:!1},{id:"color",required:!1,multiple:!1},{id:"date",required:!1,multiple:!1}]},{chartID:"bulletChart",configuration:[{id:"label",required:!0,multiple:!1},{id:"size",required:!0,multiple:!1},{id:"target",required:!1,multiple:!1},{id:"qualitativeRange",required:!1,multiple:!0},{id:"date",required:!1,multiple:!1}]},{chartID:"radarChart",configuration:[{id:"label",required:!1,multiple:!1},{id:"values",required:!0,multiple:!0},{id:"color",required:!1,multiple:!1}]},{chartID:"stackedBarChart",configuration:[{id:"label",required:!0,multiple:!1},{id:"size",multiple:!0,required:!0},{id:"date",required:!1,multiple:!1}]},{chartID:"groupedBarChart",configuration:[{id:"label",required:!0,multiple:!1},{id:"size",multiple:!0,required:!0},{id:"date",required:!1,multiple:!1}]},{chartID:"lineChart",configuration:[{id:"date",required:!0,multiple:!1},{id:"y",required:!0,multiple:!1}]},{chartID:"dualAxisLineChart",configuration:[{id:"date",required:!0,multiple:!1},{id:"y1",multiple:!1,required:!0},{id:"y2",multiple:!1,required:!0}]},{chartID:"differenceLineChart",configuration:[{id:"date",required:!0,multiple:!1},{id:"y1",multiple:!1,required:!0},{id:"y2",multiple:!1,required:!0}]},{chartID:"multiLineChart",configuration:[{id:"date",required:!0,multiple:!1},{id:"y",multiple:!0,required:!0}]},{chartID:"multiLineAltChart",configuration:[{id:"date",required:!0,multiple:!1},{id:"y",multiple:!1,required:!0},{id:"label",multiple:!1,required:!0},{id:"color",multiple:!1,required:!1}]},{chartID:"stackedAreaChart",configuration:[{id:"date",required:!0,multiple:!1},{id:"y",multiple:!0,required:!0}]},{chartID:"threeDGlobe",configuration:[{id:"id",required:!0,multiple:!1},{id:"x",required:!0,multiple:!1}]},{chartID:"choroplethMap",configuration:[{id:"id",required:!0,multiple:!1},{id:"x",required:!0,multiple:!1},{id:"date",required:!1,multiple:!1}]},{chartID:"biVariateChoroplethMap",configuration:[{id:"id",required:!0,multiple:!1},{id:"x",required:!0,multiple:!1},{id:"y",required:!0,multiple:!1},{id:"date",required:!1,multiple:!1}]},{chartID:"dotDensityMap",configuration:[{id:"lat",required:!0,multiple:!1},{id:"long",required:!0,multiple:!1},{id:"label",multiple:!1,required:!1},{id:"color",multiple:!1,required:!1},{id:"radius",required:!1,multiple:!1},{id:"date",required:!1,multiple:!1}]},{chartID:"hybridMap",configuration:[{id:"id",required:!1,multiple:!1},{id:"x",required:!1,multiple:!1},{id:"lat",required:!1,multiple:!1},{id:"long",required:!1,multiple:!1},{id:"label",multiple:!1,required:!1},{id:"radius",required:!1,multiple:!1},{id:"date",required:!1,multiple:!1}]},{chartID:"donutChart",configuration:[{id:"label",required:!0,multiple:!1},{id:"size",required:!0,multiple:!1}]},{chartID:"slopeChart",configuration:[{id:"label",required:!0,multiple:!1},{id:"y1",required:!0,multiple:!1},{id:"y2",required:!0,multiple:!1},{id:"color",required:!1,multiple:!1}]},{chartID:"scatterPlot",configuration:[{id:"x",required:!0,multiple:!1},{id:"y",required:!0,multiple:!1},{id:"radius",required:!1,multiple:!1},{id:"color",required:!1,multiple:!1},{id:"label",required:!0,multiple:!1},{id:"date",required:!1,multiple:!1}]},{chartID:"dumbbellChart",configuration:[{id:"label",required:!0,multiple:!1},{id:"x",multiple:!0,required:!0},{id:"date",required:!1,multiple:!1}]},{chartID:"treeMap",configuration:[{id:"label",required:!0,multiple:!1},{id:"size",required:!0,multiple:!1},{id:"color",required:!1,multiple:!1}]},{chartID:"circlePacking",configuration:[{id:"label",required:!0,multiple:!1},{id:"size",required:!1,multiple:!1},{id:"color",required:!1,multiple:!1}]},{chartID:"sankeyChart",configuration:[{id:"source",required:!0,multiple:!1},{id:"target",required:!0,multiple:!1},{id:"value",required:!1,multiple:!1}]},{chartID:"heatMap",configuration:[{id:"row",required:!0,multiple:!1},{id:"column",required:!0,multiple:!1},{id:"value",required:!0,multiple:!1}]},{chartID:"stripChart",configuration:[{id:"label",required:!0,multiple:!1},{id:"position",required:!0,multiple:!1},{id:"color",required:!1,multiple:!1}]},{chartID:"statCard",configuration:[{id:"value",required:!0,multiple:!1}]},{chartID:"beeSwarmChart",configuration:[{id:"label",required:!0,multiple:!1},{id:"position",required:!0,multiple:!1},{id:"radius",required:!1,multiple:!1},{id:"color",required:!1,multiple:!1}]},{chartID:"butterflyChart",configuration:[{id:"label",required:!0,multiple:!1},{id:"leftBar",required:!0,multiple:!1},{id:"rightBar",required:!0,multiple:!1},{id:"date",required:!1,multiple:!1}]},{chartID:"lineChartWithConfidenceInterval",configuration:[{id:"date",required:!0,multiple:!1},{id:"y",required:!0,multiple:!1},{id:"yMin",required:!1,multiple:!1},{id:"yMax",required:!1,multiple:!1}]},{chartID:"histogram",configuration:[{id:"value",required:!0,multiple:!1}]},{chartID:"sparkLine",configuration:[{id:"dale",required:!0,multiple:!1},{id:"y",required:!0,multiple:!1}]},{chartID:"paretoChart",configuration:[{id:"label",required:!0,multiple:!1},{id:"bar",required:!0,multiple:!1},{id:"line",required:!0,multiple:!1}]},{chartID:"unitChart",configuration:[{id:"label",required:!0,multiple:!1},{id:"value",required:!0,multiple:!1}]}];function p(l,a){return a.filter(d=>!l.includes(d))}function I(l,a,d){const f=q.flattenDeep(l.map(e=>e.columnId)),u=p(d,f);if(u.length!==0)return{isValid:!1,err:`Key(s) in configuration that don't match keys in the data: ${u.join(", ")}. Possible reason: If you are using 'dataTransform' then the allowed keys (columns) are only the one present in 'aggregationColumnsSetting' array in 'dataTransform' object plus an additional key called 'count'.`};const s=l.map(e=>e.chartConfigId),t=c[c.findIndex(e=>e.chartID===a)].configuration.filter(e=>e.required).map(e=>e.id),i=p(s,t);return{isValid:i.length===0,err:i.length===0?void 0:`Missing required ID(s) in configuration: ${i.join(", ")}`}}function D(l,a,d){if(h.graphList.filter(u=>u.geoHubMapPresentation).map(u=>u.graphID).indexOf(a)!==-1)return l;if(!l)return"Cannot fetch data";if(a==="dataTable"||a==="dataCards"||l.length===0)return l;if(!d)return console.error("Your data configuration is not accurate"),"No graph configuration is provided";const f=I(d,a,Object.keys(l[0]));if(f.isValid){const u=c[c.findIndex(t=>t.chartID===a)].configuration;return l.map(t=>{const i={};return d.filter(e=>e.columnId).forEach(e=>{u[u.findIndex(r=>r.id===e.chartConfigId)].multiple?(i[u[u.findIndex(r=>r.id===e.chartConfigId)].id]=[],e.columnId.forEach(r=>{i[u[u.findIndex(n=>n.id===e.chartConfigId)].id].push(m.checkIfNullOrUndefined(t[r])?null:t[r])})):i[u[u.findIndex(r=>r.id===e.chartConfigId)].id]=m.checkIfNullOrUndefined(t[e.columnId])?null:t[e.columnId],i[`${e.chartConfigId}Columns`]=e.columnId}),i.data=t,i})}return console.error(f.err),f.err}function b(l,a,d){return l.length===0?[]:typeof l[0][a]!="object"?g.uniqBy(l,a).map(t=>{const i={};i[a]=t;const e=l.filter(r=>r[a]===t);return i.count=e.length,i.rollUpData=e,d?.forEach(r=>{i[r.column]=r.aggregationMethod==="average"?parseFloat((o.sum(e.map(n=>n[r.column]))/e.length).toFixed(2)):r.aggregationMethod==="max"?Math.max(...e.map(n=>n[r.column])):r.aggregationMethod==="min"?Math.min(...e.map(n=>n[r.column])):o.sum(e.map(n=>n[r.column]))}),i}):[...new Set(q.flattenDeep(l.map(s=>s[a])))].map(s=>{const t={};t[a]=s;const i=l.filter(e=>e[a].indexOf(s)!==-1);return t.rollUpData=i,t.count=i.length,d?.forEach(e=>{t[e.column]=e.aggregationMethod==="average"?parseFloat((o.sum(i.map(r=>r[e.column]))/i.length).toFixed(2)):e.aggregationMethod==="max"?Math.max(...i.map(r=>r[e.column])):e.aggregationMethod==="min"?Math.min(...i.map(r=>r[e.column])):o.sum(i.map(r=>r[e.column]))}),t})}exports.transformDataForAggregation=b;exports.transformDataForGraph=D;
|
|
2
|
-
//# sourceMappingURL=transformDataForAggregation-CYoB5Xsk.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"transformDataForAggregation-CYoB5Xsk.cjs","sources":["../src/Utils/transformData/graphConfig.ts","../src/Utils/checkDataValidity.ts","../src/Utils/transformData/transformDataForGraph.ts","../src/Utils/transformData/transformDataForAggregation.ts"],"sourcesContent":["import { GraphType, ThreeDGraphType } from '@/Types';\r\n\r\nexport const ChartConfiguration: {\r\n chartID: GraphType | ThreeDGraphType;\r\n configuration: { id: string; required: boolean; multiple: boolean }[];\r\n}[] = [\r\n {\r\n chartID: 'barChart',\r\n configuration: [\r\n {\r\n id: 'label',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'size',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'color',\r\n required: false,\r\n multiple: false,\r\n },\r\n {\r\n id: 'date',\r\n required: false,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'bulletChart',\r\n configuration: [\r\n {\r\n id: 'label',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'size',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'target',\r\n required: false,\r\n multiple: false,\r\n },\r\n {\r\n id: 'qualitativeRange',\r\n required: false,\r\n multiple: true,\r\n },\r\n {\r\n id: 'date',\r\n required: false,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'radarChart',\r\n configuration: [\r\n {\r\n id: 'label',\r\n required: false,\r\n multiple: false,\r\n },\r\n {\r\n id: 'values',\r\n required: true,\r\n multiple: true,\r\n },\r\n {\r\n id: 'color',\r\n required: false,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'stackedBarChart',\r\n configuration: [\r\n {\r\n id: 'label',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'size',\r\n multiple: true,\r\n required: true,\r\n },\r\n {\r\n id: 'date',\r\n required: false,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'groupedBarChart',\r\n configuration: [\r\n {\r\n id: 'label',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'size',\r\n multiple: true,\r\n required: true,\r\n },\r\n {\r\n id: 'date',\r\n required: false,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'lineChart',\r\n configuration: [\r\n {\r\n id: 'date',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'y',\r\n required: true,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'dualAxisLineChart',\r\n configuration: [\r\n {\r\n id: 'date',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'y1',\r\n multiple: false,\r\n required: true,\r\n },\r\n {\r\n id: 'y2',\r\n multiple: false,\r\n required: true,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'differenceLineChart',\r\n configuration: [\r\n {\r\n id: 'date',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'y1',\r\n multiple: false,\r\n required: true,\r\n },\r\n {\r\n id: 'y2',\r\n multiple: false,\r\n required: true,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'multiLineChart',\r\n configuration: [\r\n {\r\n id: 'date',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'y',\r\n multiple: true,\r\n required: true,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'multiLineAltChart',\r\n configuration: [\r\n {\r\n id: 'date',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'y',\r\n multiple: false,\r\n required: true,\r\n },\r\n {\r\n id: 'label',\r\n multiple: false,\r\n required: true,\r\n },\r\n {\r\n id: 'color',\r\n multiple: false,\r\n required: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'stackedAreaChart',\r\n configuration: [\r\n {\r\n id: 'date',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'y',\r\n multiple: true,\r\n required: true,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'threeDGlobe',\r\n configuration: [\r\n {\r\n id: 'id',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'x',\r\n required: true,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'choroplethMap',\r\n configuration: [\r\n {\r\n id: 'id',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'x',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'date',\r\n required: false,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'biVariateChoroplethMap',\r\n configuration: [\r\n {\r\n id: 'id',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'x',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'y',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'date',\r\n required: false,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'dotDensityMap',\r\n configuration: [\r\n {\r\n id: 'lat',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'long',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'label',\r\n multiple: false,\r\n required: false,\r\n },\r\n {\r\n id: 'color',\r\n multiple: false,\r\n required: false,\r\n },\r\n {\r\n id: 'radius',\r\n required: false,\r\n multiple: false,\r\n },\r\n {\r\n id: 'date',\r\n required: false,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'hybridMap',\r\n configuration: [\r\n {\r\n id: 'id',\r\n required: false,\r\n multiple: false,\r\n },\r\n {\r\n id: 'x',\r\n required: false,\r\n multiple: false,\r\n },\r\n {\r\n id: 'lat',\r\n required: false,\r\n multiple: false,\r\n },\r\n {\r\n id: 'long',\r\n required: false,\r\n multiple: false,\r\n },\r\n {\r\n id: 'label',\r\n multiple: false,\r\n required: false,\r\n },\r\n {\r\n id: 'radius',\r\n required: false,\r\n multiple: false,\r\n },\r\n {\r\n id: 'date',\r\n required: false,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'donutChart',\r\n configuration: [\r\n {\r\n id: 'label',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'size',\r\n required: true,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'slopeChart',\r\n configuration: [\r\n {\r\n id: 'label',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'y1',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'y2',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'color',\r\n required: false,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'scatterPlot',\r\n configuration: [\r\n {\r\n id: 'x',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'y',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'radius',\r\n required: false,\r\n multiple: false,\r\n },\r\n {\r\n id: 'color',\r\n required: false,\r\n multiple: false,\r\n },\r\n {\r\n id: 'label',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'date',\r\n required: false,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'dumbbellChart',\r\n configuration: [\r\n {\r\n id: 'label',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'x',\r\n multiple: true,\r\n required: true,\r\n },\r\n {\r\n id: 'date',\r\n required: false,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'treeMap',\r\n configuration: [\r\n {\r\n id: 'label',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'size',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'color',\r\n required: false,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'circlePacking',\r\n configuration: [\r\n {\r\n id: 'label',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'size',\r\n required: false,\r\n multiple: false,\r\n },\r\n {\r\n id: 'color',\r\n required: false,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'sankeyChart',\r\n configuration: [\r\n {\r\n id: 'source',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'target',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'value',\r\n required: false,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'heatMap',\r\n configuration: [\r\n {\r\n id: 'row',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'column',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'value',\r\n required: true,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'stripChart',\r\n configuration: [\r\n {\r\n id: 'label',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'position',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'color',\r\n required: false,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'statCard',\r\n configuration: [\r\n {\r\n id: 'value',\r\n required: true,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'beeSwarmChart',\r\n configuration: [\r\n {\r\n id: 'label',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'position',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'radius',\r\n required: false,\r\n multiple: false,\r\n },\r\n {\r\n id: 'color',\r\n required: false,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'butterflyChart',\r\n configuration: [\r\n {\r\n id: 'label',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'leftBar',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'rightBar',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'date',\r\n required: false,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'lineChartWithConfidenceInterval',\r\n configuration: [\r\n {\r\n id: 'date',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'y',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'yMin',\r\n required: false,\r\n multiple: false,\r\n },\r\n {\r\n id: 'yMax',\r\n required: false,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'histogram',\r\n configuration: [\r\n {\r\n id: 'value',\r\n required: true,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'sparkLine',\r\n configuration: [\r\n {\r\n id: 'dale',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'y',\r\n required: true,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'paretoChart',\r\n configuration: [\r\n {\r\n id: 'label',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'bar',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'line',\r\n required: true,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'unitChart',\r\n configuration: [\r\n {\r\n id: 'label',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'value',\r\n required: true,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n];\r\n","import flattenDeep from 'lodash.flattendeep';\r\n\r\nimport { ChartConfiguration } from './transformData/graphConfig';\r\n\r\nimport { GraphConfigurationDataType, GraphType, ThreeDGraphType } from '@/Types';\r\n\r\nfunction missingValuesInArray(superset: string[], subset: string[]): string[] {\r\n return subset.filter(value => !superset.includes(value));\r\n}\r\n\r\nexport function checkDataConfigValidity(\r\n dataConfig: GraphConfigurationDataType[],\r\n graph: GraphType | ThreeDGraphType,\r\n dataKeys: string[],\r\n) {\r\n const dataKeyFromDataConfig = flattenDeep(dataConfig.map(d => d.columnId));\r\n const checkDataKeys = missingValuesInArray(dataKeys, dataKeyFromDataConfig);\r\n if (checkDataKeys.length !== 0)\r\n return {\r\n isValid: false,\r\n err: `Key(s) in configuration that don't match keys in the data: ${checkDataKeys.join(\r\n ', ',\r\n )}. Possible reason: If you are using 'dataTransform' then the allowed keys (columns) are only the one present in 'aggregationColumnsSetting' array in 'dataTransform' object plus an additional key called 'count'.`,\r\n };\r\n const ids = dataConfig.map(el => el.chartConfigId);\r\n const requiredIds = ChartConfiguration[\r\n ChartConfiguration.findIndex(el => el.chartID === graph)\r\n ].configuration\r\n .filter(el => el.required)\r\n .map(el => el.id);\r\n const ifRequiredIdsPresent = missingValuesInArray(ids, requiredIds);\r\n return {\r\n isValid: ifRequiredIdsPresent.length === 0,\r\n err:\r\n ifRequiredIdsPresent.length === 0\r\n ? undefined\r\n : `Missing required ID(s) in configuration: ${ifRequiredIdsPresent.join(', ')}`,\r\n };\r\n}\r\n","import { checkDataConfigValidity } from '../checkDataValidity';\r\nimport { checkIfNullOrUndefined } from '../checkIfNullOrUndefined';\r\nimport { graphList } from '../getGraphList';\r\n\r\nimport { ChartConfiguration } from './graphConfig';\r\n\r\nimport { GraphConfigurationDataType, GraphType, ThreeDGraphType } from '@/Types';\r\n/**\r\n * Transforms the input data into a format suitable for graph visualization based on the given graph type and configuration.\r\n *\r\n * The function formats the data according to the specified graph configuration and checks the validity of the configuration.\r\n * It also handles cases for graphs like \"dataTable\" and \"dataCards\" without additional processing, and it processes\r\n * more complex graphs (e.g., charts) with a specific configuration.\r\n *\r\n * @param data - The data to be transformed, typically an array of objects representing rows of data.\r\n * @param graph - The type of graph to transform the data for (e.g., lineChart, barChart, etc.).\r\n * @param config - An optional array of configuration objects that define how the data should be mapped to the graph.\r\n * Each object in the array should define column mappings and how data should be grouped or aggregated.\r\n *\r\n * @returns The transformed data in the format required by the graph. If no valid configuration is provided, or if\r\n * data is invalid, an error message is returned.\r\n * - If the graph type is \"dataTable\" or \"dataCards\", the original data is returned unchanged.\r\n * - If data is invalid, an error message will be returned.\r\n *\r\n * @throws {string} If the configuration is invalid or the data can't be processed, an error message is logged and\r\n * returned.\r\n *\r\n * @example\r\n * const graphData = [\r\n * { category: 'A', value: 10 },\r\n * { category: 'B', value: 15 },\r\n * ];\r\n * const graph = 'barChart';\r\n * const config = [\r\n * { columnId: 'category', chartConfigId: 'label' },\r\n * { columnId: 'value', chartConfigId: 'size' },\r\n * ];\r\n * const transformedData = transformDataForGraph(graphData, graph, config);\r\n * console.log(transformedData);\r\n */\r\nexport function transformDataForGraph(\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n data: any,\r\n graph: GraphType | ThreeDGraphType,\r\n config?: GraphConfigurationDataType[],\r\n) {\r\n if (\r\n graphList\r\n .filter(el => el.geoHubMapPresentation)\r\n .map(el => el.graphID)\r\n .indexOf(graph) !== -1\r\n )\r\n return data;\r\n if (!data) return 'Cannot fetch data';\r\n if (graph === 'dataTable' || graph === 'dataCards' || data.length === 0) return data;\r\n if (!config) {\r\n console.error('Your data configuration is not accurate');\r\n return 'No graph configuration is provided';\r\n }\r\n const dataConfigValidity = checkDataConfigValidity(config, graph, Object.keys(data[0]));\r\n if (dataConfigValidity.isValid) {\r\n const chartConfig =\r\n ChartConfiguration[ChartConfiguration.findIndex(d => d.chartID === graph)].configuration;\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const dataFormatted = data.map((d: any) => {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const obj: any = {};\r\n config\r\n .filter(el => el.columnId)\r\n .forEach(el => {\r\n if (chartConfig[chartConfig.findIndex(k => k.id === el.chartConfigId)].multiple) {\r\n obj[chartConfig[chartConfig.findIndex(k => k.id === el.chartConfigId)].id] = [];\r\n (el.columnId as string[]).forEach(l => {\r\n obj[chartConfig[chartConfig.findIndex(k => k.id === el.chartConfigId)].id].push(\r\n checkIfNullOrUndefined(d[l]) ? null : d[l],\r\n );\r\n });\r\n } else {\r\n obj[chartConfig[chartConfig.findIndex(k => k.id === el.chartConfigId)].id] =\r\n checkIfNullOrUndefined(d[el.columnId as string]) ? null : d[el.columnId as string];\r\n }\r\n obj[`${el.chartConfigId}Columns`] = el.columnId;\r\n });\r\n obj.data = d;\r\n return obj;\r\n });\r\n return dataFormatted;\r\n }\r\n console.error(dataConfigValidity.err);\r\n return dataConfigValidity.err;\r\n}\r\n","import sum from 'lodash.sum';\r\nimport flattenDeep from 'lodash.flattendeep';\r\n\r\nimport { uniqBy } from '../uniqBy';\r\n\r\nimport { AggregationSettingsDataType } from '@/Types';\r\n/**\r\n * Transforms the data for aggregation based on a key column and specified aggregation settings.\r\n * It groups the data by unique values in the key column and applies the aggregation methods to each group.\r\n *\r\n * @param data - The input data to be aggregated. Can be an array of objects, where each object represents a data row.\r\n * @param keyColumn - The name of the column to group the data by (key column).\r\n * @param aggregationSettings - Optional settings for the aggregation, specifying the column and aggregation method (e.g., 'average', 'max', 'min', 'sum').\r\n * Each setting can define a column and a corresponding aggregation method to apply to that column.\r\n *\r\n * @returns An array of objects where each object contains the aggregated values for each unique value in the key column.\r\n * Each object includes the key column value, count of occurrences, and the aggregated values for each specified column.\r\n *\r\n * @example\r\n * const data = [\r\n * { category: 'A', value: 10, amount: 5 },\r\n * { category: 'A', value: 20, amount: 10 },\r\n * { category: 'B', value: 15, amount: 7 },\r\n * ];\r\n * const aggregationSettings = [\r\n * { column: 'value', aggregationMethod: 'average' },\r\n * { column: 'amount', aggregationMethod: 'sum' },\r\n * ];\r\n * const transformedData = transformDataForAggregation(data, 'category', aggregationSettings);\r\n * console.log(transformedData);\r\n * // Output:\r\n * // [\r\n * // { category: 'A', count: 2, value: 15, amount: 15 },\r\n * // { category: 'B', count: 1, value: 15, amount: 7 },\r\n * // ]\r\n */\r\nexport function transformDataForAggregation(\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n data: any,\r\n keyColumn: string,\r\n aggregationSettings?: AggregationSettingsDataType[],\r\n) {\r\n if (data.length === 0) return [];\r\n if (typeof data[0][keyColumn] !== 'object') {\r\n const uniqValues = uniqBy(data, keyColumn).map(d => {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const dataObj: any = {};\r\n dataObj[keyColumn] = d;\r\n const filteredData = data.filter(\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n (j: any) => j[keyColumn] === d,\r\n );\r\n dataObj.count = filteredData.length;\r\n dataObj.rollUpData = filteredData;\r\n aggregationSettings?.forEach(el => {\r\n dataObj[el.column] =\r\n el.aggregationMethod === 'average'\r\n ? parseFloat(\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n (sum(filteredData.map((j: any) => j[el.column])) / filteredData.length).toFixed(2),\r\n )\r\n : el.aggregationMethod === 'max'\r\n ? // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n Math.max(...filteredData.map((j: any) => j[el.column]))\r\n : el.aggregationMethod === 'min'\r\n ? // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n Math.min(...filteredData.map((j: any) => j[el.column]))\r\n : // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n sum(filteredData.map((j: any) => j[el.column]));\r\n });\r\n return dataObj;\r\n });\r\n return uniqValues;\r\n }\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const values = [...new Set(flattenDeep(data.map((d: any) => d[keyColumn])))];\r\n const uniqValues = values.map(d => {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const dataObj: any = {};\r\n dataObj[keyColumn] = d;\r\n const filteredData = data.filter(\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n (j: any) => j[keyColumn].indexOf(d) !== -1,\r\n );\r\n dataObj.rollUpData = filteredData;\r\n dataObj.count = filteredData.length;\r\n aggregationSettings?.forEach(el => {\r\n dataObj[el.column] =\r\n el.aggregationMethod === 'average'\r\n ? parseFloat(\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n (sum(filteredData.map((j: any) => j[el.column])) / filteredData.length).toFixed(2),\r\n )\r\n : el.aggregationMethod === 'max'\r\n ? // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n Math.max(...filteredData.map((j: any) => j[el.column]))\r\n : el.aggregationMethod === 'min'\r\n ? // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n Math.min(...filteredData.map((j: any) => j[el.column]))\r\n : // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n sum(filteredData.map((j: any) => j[el.column]));\r\n });\r\n return dataObj;\r\n });\r\n return uniqValues;\r\n}\r\n"],"names":["ChartConfiguration","chartID","configuration","id","required","multiple","missingValuesInArray","superset","subset","filter","value","includes","checkDataConfigValidity","dataConfig","graph","dataKeys","dataKeyFromDataConfig","flattenDeep","map","d","columnId","checkDataKeys","length","isValid","err","join","ids","el","chartConfigId","requiredIds","findIndex","ifRequiredIdsPresent","undefined","transformDataForGraph","data","config","graphList","geoHubMapPresentation","graphID","indexOf","console","error","dataConfigValidity","Object","keys","chartConfig","obj","forEach","k","l","push","checkIfNullOrUndefined","transformDataForAggregation","keyColumn","aggregationSettings","uniqBy","dataObj","filteredData","j","count","rollUpData","column","aggregationMethod","parseFloat","sum","toFixed","Math","max","min","Set"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"transformDataForAggregation-j34UL73s.js","sources":["../src/Utils/transformData/graphConfig.ts","../src/Utils/checkDataValidity.ts","../src/Utils/transformData/transformDataForGraph.ts","../src/Utils/transformData/transformDataForAggregation.ts"],"sourcesContent":["import { GraphType, ThreeDGraphType } from '@/Types';\r\n\r\nexport const ChartConfiguration: {\r\n chartID: GraphType | ThreeDGraphType;\r\n configuration: { id: string; required: boolean; multiple: boolean }[];\r\n}[] = [\r\n {\r\n chartID: 'barChart',\r\n configuration: [\r\n {\r\n id: 'label',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'size',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'color',\r\n required: false,\r\n multiple: false,\r\n },\r\n {\r\n id: 'date',\r\n required: false,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'bulletChart',\r\n configuration: [\r\n {\r\n id: 'label',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'size',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'target',\r\n required: false,\r\n multiple: false,\r\n },\r\n {\r\n id: 'qualitativeRange',\r\n required: false,\r\n multiple: true,\r\n },\r\n {\r\n id: 'date',\r\n required: false,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'radarChart',\r\n configuration: [\r\n {\r\n id: 'label',\r\n required: false,\r\n multiple: false,\r\n },\r\n {\r\n id: 'values',\r\n required: true,\r\n multiple: true,\r\n },\r\n {\r\n id: 'color',\r\n required: false,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'stackedBarChart',\r\n configuration: [\r\n {\r\n id: 'label',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'size',\r\n multiple: true,\r\n required: true,\r\n },\r\n {\r\n id: 'date',\r\n required: false,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'groupedBarChart',\r\n configuration: [\r\n {\r\n id: 'label',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'size',\r\n multiple: true,\r\n required: true,\r\n },\r\n {\r\n id: 'date',\r\n required: false,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'lineChart',\r\n configuration: [\r\n {\r\n id: 'date',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'y',\r\n required: true,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'dualAxisLineChart',\r\n configuration: [\r\n {\r\n id: 'date',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'y1',\r\n multiple: false,\r\n required: true,\r\n },\r\n {\r\n id: 'y2',\r\n multiple: false,\r\n required: true,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'differenceLineChart',\r\n configuration: [\r\n {\r\n id: 'date',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'y1',\r\n multiple: false,\r\n required: true,\r\n },\r\n {\r\n id: 'y2',\r\n multiple: false,\r\n required: true,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'multiLineChart',\r\n configuration: [\r\n {\r\n id: 'date',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'y',\r\n multiple: true,\r\n required: true,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'multiLineAltChart',\r\n configuration: [\r\n {\r\n id: 'date',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'y',\r\n multiple: false,\r\n required: true,\r\n },\r\n {\r\n id: 'label',\r\n multiple: false,\r\n required: true,\r\n },\r\n {\r\n id: 'color',\r\n multiple: false,\r\n required: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'stackedAreaChart',\r\n configuration: [\r\n {\r\n id: 'date',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'y',\r\n multiple: true,\r\n required: true,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'threeDGlobe',\r\n configuration: [\r\n {\r\n id: 'id',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'x',\r\n required: true,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'choroplethMap',\r\n configuration: [\r\n {\r\n id: 'id',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'x',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'date',\r\n required: false,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'biVariateChoroplethMap',\r\n configuration: [\r\n {\r\n id: 'id',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'x',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'y',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'date',\r\n required: false,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'dotDensityMap',\r\n configuration: [\r\n {\r\n id: 'lat',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'long',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'label',\r\n multiple: false,\r\n required: false,\r\n },\r\n {\r\n id: 'color',\r\n multiple: false,\r\n required: false,\r\n },\r\n {\r\n id: 'radius',\r\n required: false,\r\n multiple: false,\r\n },\r\n {\r\n id: 'date',\r\n required: false,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'hybridMap',\r\n configuration: [\r\n {\r\n id: 'id',\r\n required: false,\r\n multiple: false,\r\n },\r\n {\r\n id: 'x',\r\n required: false,\r\n multiple: false,\r\n },\r\n {\r\n id: 'lat',\r\n required: false,\r\n multiple: false,\r\n },\r\n {\r\n id: 'long',\r\n required: false,\r\n multiple: false,\r\n },\r\n {\r\n id: 'label',\r\n multiple: false,\r\n required: false,\r\n },\r\n {\r\n id: 'radius',\r\n required: false,\r\n multiple: false,\r\n },\r\n {\r\n id: 'date',\r\n required: false,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'donutChart',\r\n configuration: [\r\n {\r\n id: 'label',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'size',\r\n required: true,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'slopeChart',\r\n configuration: [\r\n {\r\n id: 'label',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'y1',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'y2',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'color',\r\n required: false,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'scatterPlot',\r\n configuration: [\r\n {\r\n id: 'x',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'y',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'radius',\r\n required: false,\r\n multiple: false,\r\n },\r\n {\r\n id: 'color',\r\n required: false,\r\n multiple: false,\r\n },\r\n {\r\n id: 'label',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'date',\r\n required: false,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'dumbbellChart',\r\n configuration: [\r\n {\r\n id: 'label',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'x',\r\n multiple: true,\r\n required: true,\r\n },\r\n {\r\n id: 'date',\r\n required: false,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'treeMap',\r\n configuration: [\r\n {\r\n id: 'label',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'size',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'color',\r\n required: false,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'circlePacking',\r\n configuration: [\r\n {\r\n id: 'label',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'size',\r\n required: false,\r\n multiple: false,\r\n },\r\n {\r\n id: 'color',\r\n required: false,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'sankeyChart',\r\n configuration: [\r\n {\r\n id: 'source',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'target',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'value',\r\n required: false,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'heatMap',\r\n configuration: [\r\n {\r\n id: 'row',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'column',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'value',\r\n required: true,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'stripChart',\r\n configuration: [\r\n {\r\n id: 'label',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'position',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'color',\r\n required: false,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'statCard',\r\n configuration: [\r\n {\r\n id: 'value',\r\n required: true,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'beeSwarmChart',\r\n configuration: [\r\n {\r\n id: 'label',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'position',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'radius',\r\n required: false,\r\n multiple: false,\r\n },\r\n {\r\n id: 'color',\r\n required: false,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'butterflyChart',\r\n configuration: [\r\n {\r\n id: 'label',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'leftBar',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'rightBar',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'date',\r\n required: false,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'lineChartWithConfidenceInterval',\r\n configuration: [\r\n {\r\n id: 'date',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'y',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'yMin',\r\n required: false,\r\n multiple: false,\r\n },\r\n {\r\n id: 'yMax',\r\n required: false,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'histogram',\r\n configuration: [\r\n {\r\n id: 'value',\r\n required: true,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'sparkLine',\r\n configuration: [\r\n {\r\n id: 'dale',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'y',\r\n required: true,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'paretoChart',\r\n configuration: [\r\n {\r\n id: 'label',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'bar',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'line',\r\n required: true,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n {\r\n chartID: 'unitChart',\r\n configuration: [\r\n {\r\n id: 'label',\r\n required: true,\r\n multiple: false,\r\n },\r\n {\r\n id: 'value',\r\n required: true,\r\n multiple: false,\r\n },\r\n ],\r\n },\r\n];\r\n","import flattenDeep from 'lodash.flattendeep';\r\n\r\nimport { ChartConfiguration } from './transformData/graphConfig';\r\n\r\nimport { GraphConfigurationDataType, GraphType, ThreeDGraphType } from '@/Types';\r\n\r\nfunction missingValuesInArray(superset: string[], subset: string[]): string[] {\r\n return subset.filter(value => !superset.includes(value));\r\n}\r\n\r\nexport function checkDataConfigValidity(\r\n dataConfig: GraphConfigurationDataType[],\r\n graph: GraphType | ThreeDGraphType,\r\n dataKeys: string[],\r\n) {\r\n const dataKeyFromDataConfig = flattenDeep(dataConfig.map(d => d.columnId));\r\n const checkDataKeys = missingValuesInArray(dataKeys, dataKeyFromDataConfig);\r\n if (checkDataKeys.length !== 0)\r\n return {\r\n isValid: false,\r\n err: `Key(s) in configuration that don't match keys in the data: ${checkDataKeys.join(\r\n ', ',\r\n )}. Possible reason: If you are using 'dataTransform' then the allowed keys (columns) are only the one present in 'aggregationColumnsSetting' array in 'dataTransform' object plus an additional key called 'count'.`,\r\n };\r\n const ids = dataConfig.map(el => el.chartConfigId);\r\n const requiredIds = ChartConfiguration[\r\n ChartConfiguration.findIndex(el => el.chartID === graph)\r\n ].configuration\r\n .filter(el => el.required)\r\n .map(el => el.id);\r\n const ifRequiredIdsPresent = missingValuesInArray(ids, requiredIds);\r\n return {\r\n isValid: ifRequiredIdsPresent.length === 0,\r\n err:\r\n ifRequiredIdsPresent.length === 0\r\n ? undefined\r\n : `Missing required ID(s) in configuration: ${ifRequiredIdsPresent.join(', ')}`,\r\n };\r\n}\r\n","import { checkDataConfigValidity } from '../checkDataValidity';\r\nimport { checkIfNullOrUndefined } from '../checkIfNullOrUndefined';\r\nimport { graphList } from '../getGraphList';\r\n\r\nimport { ChartConfiguration } from './graphConfig';\r\n\r\nimport { GraphConfigurationDataType, GraphType, ThreeDGraphType } from '@/Types';\r\n/**\r\n * Transforms the input data into a format suitable for graph visualization based on the given graph type and configuration.\r\n *\r\n * The function formats the data according to the specified graph configuration and checks the validity of the configuration.\r\n * It also handles cases for graphs like \"dataTable\" and \"dataCards\" without additional processing, and it processes\r\n * more complex graphs (e.g., charts) with a specific configuration.\r\n *\r\n * @param data - The data to be transformed, typically an array of objects representing rows of data.\r\n * @param graph - The type of graph to transform the data for (e.g., lineChart, barChart, etc.).\r\n * @param config - An optional array of configuration objects that define how the data should be mapped to the graph.\r\n * Each object in the array should define column mappings and how data should be grouped or aggregated.\r\n *\r\n * @returns The transformed data in the format required by the graph. If no valid configuration is provided, or if\r\n * data is invalid, an error message is returned.\r\n * - If the graph type is \"dataTable\" or \"dataCards\", the original data is returned unchanged.\r\n * - If data is invalid, an error message will be returned.\r\n *\r\n * @throws {string} If the configuration is invalid or the data can't be processed, an error message is logged and\r\n * returned.\r\n *\r\n * @example\r\n * const graphData = [\r\n * { category: 'A', value: 10 },\r\n * { category: 'B', value: 15 },\r\n * ];\r\n * const graph = 'barChart';\r\n * const config = [\r\n * { columnId: 'category', chartConfigId: 'label' },\r\n * { columnId: 'value', chartConfigId: 'size' },\r\n * ];\r\n * const transformedData = transformDataForGraph(graphData, graph, config);\r\n * console.log(transformedData);\r\n */\r\nexport function transformDataForGraph(\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n data: any,\r\n graph: GraphType | ThreeDGraphType,\r\n config?: GraphConfigurationDataType[],\r\n) {\r\n if (\r\n graphList\r\n .filter(el => el.geoHubMapPresentation)\r\n .map(el => el.graphID)\r\n .indexOf(graph) !== -1\r\n )\r\n return data;\r\n if (!data) return 'Cannot fetch data';\r\n if (graph === 'dataTable' || graph === 'dataCards' || data.length === 0) return data;\r\n if (!config) {\r\n console.error('Your data configuration is not accurate');\r\n return 'No graph configuration is provided';\r\n }\r\n const dataConfigValidity = checkDataConfigValidity(config, graph, Object.keys(data[0]));\r\n if (dataConfigValidity.isValid) {\r\n const chartConfig =\r\n ChartConfiguration[ChartConfiguration.findIndex(d => d.chartID === graph)].configuration;\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const dataFormatted = data.map((d: any) => {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const obj: any = {};\r\n config\r\n .filter(el => el.columnId)\r\n .forEach(el => {\r\n if (chartConfig[chartConfig.findIndex(k => k.id === el.chartConfigId)].multiple) {\r\n obj[chartConfig[chartConfig.findIndex(k => k.id === el.chartConfigId)].id] = [];\r\n (el.columnId as string[]).forEach(l => {\r\n obj[chartConfig[chartConfig.findIndex(k => k.id === el.chartConfigId)].id].push(\r\n checkIfNullOrUndefined(d[l]) ? null : d[l],\r\n );\r\n });\r\n } else {\r\n obj[chartConfig[chartConfig.findIndex(k => k.id === el.chartConfigId)].id] =\r\n checkIfNullOrUndefined(d[el.columnId as string]) ? null : d[el.columnId as string];\r\n }\r\n obj[`${el.chartConfigId}Columns`] = el.columnId;\r\n });\r\n obj.data = d;\r\n return obj;\r\n });\r\n return dataFormatted;\r\n }\r\n console.error(dataConfigValidity.err);\r\n return dataConfigValidity.err;\r\n}\r\n","import sum from 'lodash.sum';\r\nimport flattenDeep from 'lodash.flattendeep';\r\n\r\nimport { uniqBy } from '../uniqBy';\r\n\r\nimport { AggregationSettingsDataType } from '@/Types';\r\n/**\r\n * Transforms the data for aggregation based on a key column and specified aggregation settings.\r\n * It groups the data by unique values in the key column and applies the aggregation methods to each group.\r\n *\r\n * @param data - The input data to be aggregated. Can be an array of objects, where each object represents a data row.\r\n * @param keyColumn - The name of the column to group the data by (key column).\r\n * @param aggregationSettings - Optional settings for the aggregation, specifying the column and aggregation method (e.g., 'average', 'max', 'min', 'sum').\r\n * Each setting can define a column and a corresponding aggregation method to apply to that column.\r\n *\r\n * @returns An array of objects where each object contains the aggregated values for each unique value in the key column.\r\n * Each object includes the key column value, count of occurrences, and the aggregated values for each specified column.\r\n *\r\n * @example\r\n * const data = [\r\n * { category: 'A', value: 10, amount: 5 },\r\n * { category: 'A', value: 20, amount: 10 },\r\n * { category: 'B', value: 15, amount: 7 },\r\n * ];\r\n * const aggregationSettings = [\r\n * { column: 'value', aggregationMethod: 'average' },\r\n * { column: 'amount', aggregationMethod: 'sum' },\r\n * ];\r\n * const transformedData = transformDataForAggregation(data, 'category', aggregationSettings);\r\n * console.log(transformedData);\r\n * // Output:\r\n * // [\r\n * // { category: 'A', count: 2, value: 15, amount: 15 },\r\n * // { category: 'B', count: 1, value: 15, amount: 7 },\r\n * // ]\r\n */\r\nexport function transformDataForAggregation(\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n data: any,\r\n keyColumn: string,\r\n aggregationSettings?: AggregationSettingsDataType[],\r\n) {\r\n if (data.length === 0) return [];\r\n if (typeof data[0][keyColumn] !== 'object') {\r\n const uniqValues = uniqBy(data, keyColumn).map(d => {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const dataObj: any = {};\r\n dataObj[keyColumn] = d;\r\n const filteredData = data.filter(\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n (j: any) => j[keyColumn] === d,\r\n );\r\n dataObj.count = filteredData.length;\r\n dataObj.rollUpData = filteredData;\r\n aggregationSettings?.forEach(el => {\r\n dataObj[el.column] =\r\n el.aggregationMethod === 'average'\r\n ? parseFloat(\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n (sum(filteredData.map((j: any) => j[el.column])) / filteredData.length).toFixed(2),\r\n )\r\n : el.aggregationMethod === 'max'\r\n ? // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n Math.max(...filteredData.map((j: any) => j[el.column]))\r\n : el.aggregationMethod === 'min'\r\n ? // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n Math.min(...filteredData.map((j: any) => j[el.column]))\r\n : // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n sum(filteredData.map((j: any) => j[el.column]));\r\n });\r\n return dataObj;\r\n });\r\n return uniqValues;\r\n }\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const values = [...new Set(flattenDeep(data.map((d: any) => d[keyColumn])))];\r\n const uniqValues = values.map(d => {\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const dataObj: any = {};\r\n dataObj[keyColumn] = d;\r\n const filteredData = data.filter(\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n (j: any) => j[keyColumn].indexOf(d) !== -1,\r\n );\r\n dataObj.rollUpData = filteredData;\r\n dataObj.count = filteredData.length;\r\n aggregationSettings?.forEach(el => {\r\n dataObj[el.column] =\r\n el.aggregationMethod === 'average'\r\n ? parseFloat(\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n (sum(filteredData.map((j: any) => j[el.column])) / filteredData.length).toFixed(2),\r\n )\r\n : el.aggregationMethod === 'max'\r\n ? // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n Math.max(...filteredData.map((j: any) => j[el.column]))\r\n : el.aggregationMethod === 'min'\r\n ? // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n Math.min(...filteredData.map((j: any) => j[el.column]))\r\n : // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n sum(filteredData.map((j: any) => j[el.column]));\r\n });\r\n return dataObj;\r\n });\r\n return uniqValues;\r\n}\r\n"],"names":["ChartConfiguration","chartID","configuration","id","required","multiple","missingValuesInArray","superset","subset","filter","value","includes","checkDataConfigValidity","dataConfig","graph","dataKeys","dataKeyFromDataConfig","flattenDeep","map","d","columnId","checkDataKeys","length","isValid","err","join","ids","el","chartConfigId","requiredIds","findIndex","ifRequiredIdsPresent","undefined","transformDataForGraph","data","config","graphList","geoHubMapPresentation","graphID","indexOf","console","error","dataConfigValidity","Object","keys","chartConfig","obj","forEach","k","l","push","checkIfNullOrUndefined","transformDataForAggregation","keyColumn","aggregationSettings","uniqBy","dataObj","filteredData","j","count","rollUpData","column","aggregationMethod","parseFloat","sum","toFixed","Math","max","min","Set"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"use-in-view-Cxa7y1TH.js","sources":["../node_modules/framer-motion/dist/es/render/dom/viewport/index.mjs","../node_modules/framer-motion/dist/es/utils/use-in-view.mjs"],"sourcesContent":["import { resolveElements } from 'motion-dom';\n\nconst thresholds = {\n some: 0,\n all: 1,\n};\nfunction inView(elementOrSelector, onStart, { root, margin: rootMargin, amount = \"some\" } = {}) {\n const elements = resolveElements(elementOrSelector);\n const activeIntersections = new WeakMap();\n const onIntersectionChange = (entries) => {\n entries.forEach((entry) => {\n const onEnd = activeIntersections.get(entry.target);\n /**\n * If there's no change to the intersection, we don't need to\n * do anything here.\n */\n if (entry.isIntersecting === Boolean(onEnd))\n return;\n if (entry.isIntersecting) {\n const newOnEnd = onStart(entry.target, entry);\n if (typeof newOnEnd === \"function\") {\n activeIntersections.set(entry.target, newOnEnd);\n }\n else {\n observer.unobserve(entry.target);\n }\n }\n else if (typeof onEnd === \"function\") {\n onEnd(entry);\n activeIntersections.delete(entry.target);\n }\n });\n };\n const observer = new IntersectionObserver(onIntersectionChange, {\n root,\n rootMargin,\n threshold: typeof amount === \"number\" ? amount : thresholds[amount],\n });\n elements.forEach((element) => observer.observe(element));\n return () => observer.disconnect();\n}\n\nexport { inView };\n","\"use client\";\nimport { useState, useEffect } from 'react';\nimport { inView } from '../render/dom/viewport/index.mjs';\n\nfunction useInView(ref, { root, margin, amount, once = false, initial = false, } = {}) {\n const [isInView, setInView] = useState(initial);\n useEffect(() => {\n if (!ref.current || (once && isInView))\n return;\n const onEnter = () => {\n setInView(true);\n return once ? undefined : () => setInView(false);\n };\n const options = {\n root: (root && root.current) || undefined,\n margin,\n amount,\n };\n return inView(ref.current, onEnter, options);\n }, [root, ref, margin, once, amount]);\n return isInView;\n}\n\nexport { useInView };\n"],"names":["thresholds","inView","elementOrSelector","onStart","root","rootMargin","amount","elements","resolveElements","activeIntersections","onIntersectionChange","entries","entry","onEnd","newOnEnd","observer","element","useInView","ref","margin","once","initial","isInView","setInView","useState","useEffect","onEnter","options"],"mappings":";;AAEA,MAAMA,IAAa;AAAA,EACf,MAAM;AAAA,EACN,KAAK;AACT;AACA,SAASC,EAAOC,GAAmBC,GAAS,EAAE,MAAAC,GAAM,QAAQC,GAAY,QAAAC,IAAS,OAAM,IAAK,IAAI;AAC5F,QAAMC,IAAWC,EAAgBN,CAAiB,GAC5CO,IAAsB,oBAAI,QAAO,GACjCC,IAAuB,CAACC,MAAY;AACtC,IAAAA,EAAQ,QAAQ,CAACC,MAAU;AACvB,YAAMC,IAAQJ,EAAoB,IAAIG,EAAM,MAAM;AAKlD,UAAIA,EAAM,mBAAmB,EAAQC;AAErC,YAAID,EAAM,gBAAgB;AACtB,gBAAME,IAAWX,EAAQS,EAAM,QAAQA,CAAK;AAC5C,UAAI,OAAOE,KAAa,aACpBL,EAAoB,IAAIG,EAAM,QAAQE,CAAQ,IAG9CC,EAAS,UAAUH,EAAM,MAAM;AAAA,QAEvC,MACK,CAAI,OAAOC,KAAU,eACtBA,EAAMD,CAAK,GACXH,EAAoB,OAAOG,EAAM,MAAM;AAAA,IAE/C,CAAC;AAAA,EACL,GACMG,IAAW,IAAI,qBAAqBL,GAAsB;AAAA,IAC5D,MAAAN;AAAA,IACA,YAAAC;AAAA,IACA,WAAW,OAAOC,KAAW,WAAWA,IAASN,EAAWM,CAAM;AAAA,EAC1E,CAAK;AACD,SAAAC,EAAS,QAAQ,CAACS,MAAYD,EAAS,QAAQC,CAAO,CAAC,GAChD,MAAMD,EAAS,WAAU;AACpC;ACpCA,SAASE,EAAUC,GAAK,EAAE,MAAAd,GAAM,QAAAe,GAAQ,QAAAb,GAAQ,MAAAc,IAAO,IAAO,SAAAC,IAAU,GAAK,IAAM,CAAA,GAAI;AACnF,QAAM,CAACC,GAAUC,CAAS,IAAIC,EAASH,CAAO;AAC9C,SAAAI,EAAU,MAAM;AACZ,QAAI,CAACP,EAAI,WAAYE,KAAQE;AACzB;AACJ,UAAMI,IAAU,OACZH,EAAU,EAAI,GACPH,IAAO,SAAY,MAAMG,EAAU,EAAK,IAE7CI,IAAU;AAAA,MACZ,MAAOvB,KAAQA,EAAK,WAAY;AAAA,MAChC,QAAAe;AAAA,MACA,QAAAb;AAAA,IACZ;AACQ,WAAOL,EAAOiB,EAAI,SAASQ,GAASC,CAAO;AAAA,EAC/C,GAAG,CAACvB,GAAMc,GAAKC,GAAQC,GAAMd,CAAM,CAAC,GAC7BgB;AACX;","x_google_ignoreList":[0,1]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"use-in-view-QcfiW0w3.cjs","sources":["../node_modules/framer-motion/dist/es/render/dom/viewport/index.mjs","../node_modules/framer-motion/dist/es/utils/use-in-view.mjs"],"sourcesContent":["import { resolveElements } from 'motion-dom';\n\nconst thresholds = {\n some: 0,\n all: 1,\n};\nfunction inView(elementOrSelector, onStart, { root, margin: rootMargin, amount = \"some\" } = {}) {\n const elements = resolveElements(elementOrSelector);\n const activeIntersections = new WeakMap();\n const onIntersectionChange = (entries) => {\n entries.forEach((entry) => {\n const onEnd = activeIntersections.get(entry.target);\n /**\n * If there's no change to the intersection, we don't need to\n * do anything here.\n */\n if (entry.isIntersecting === Boolean(onEnd))\n return;\n if (entry.isIntersecting) {\n const newOnEnd = onStart(entry.target, entry);\n if (typeof newOnEnd === \"function\") {\n activeIntersections.set(entry.target, newOnEnd);\n }\n else {\n observer.unobserve(entry.target);\n }\n }\n else if (typeof onEnd === \"function\") {\n onEnd(entry);\n activeIntersections.delete(entry.target);\n }\n });\n };\n const observer = new IntersectionObserver(onIntersectionChange, {\n root,\n rootMargin,\n threshold: typeof amount === \"number\" ? amount : thresholds[amount],\n });\n elements.forEach((element) => observer.observe(element));\n return () => observer.disconnect();\n}\n\nexport { inView };\n","\"use client\";\nimport { useState, useEffect } from 'react';\nimport { inView } from '../render/dom/viewport/index.mjs';\n\nfunction useInView(ref, { root, margin, amount, once = false, initial = false, } = {}) {\n const [isInView, setInView] = useState(initial);\n useEffect(() => {\n if (!ref.current || (once && isInView))\n return;\n const onEnter = () => {\n setInView(true);\n return once ? undefined : () => setInView(false);\n };\n const options = {\n root: (root && root.current) || undefined,\n margin,\n amount,\n };\n return inView(ref.current, onEnter, options);\n }, [root, ref, margin, once, amount]);\n return isInView;\n}\n\nexport { useInView };\n"],"names":["thresholds","inView","elementOrSelector","onStart","root","rootMargin","amount","elements","resolveElements","activeIntersections","onIntersectionChange","entries","entry","onEnd","newOnEnd","observer","element","useInView","ref","margin","once","initial","isInView","setInView","useState","useEffect","onEnter","options"],"mappings":"wEAEMA,EAAa,CACf,KAAM,EACN,IAAK,CACT,EACA,SAASC,EAAOC,EAAmBC,EAAS,CAAE,KAAAC,EAAM,OAAQC,EAAY,OAAAC,EAAS,MAAM,EAAK,GAAI,CAC5F,MAAMC,EAAWC,EAAAA,gBAAgBN,CAAiB,EAC5CO,EAAsB,IAAI,QAC1BC,EAAwBC,GAAY,CACtCA,EAAQ,QAASC,GAAU,CACvB,MAAMC,EAAQJ,EAAoB,IAAIG,EAAM,MAAM,EAKlD,GAAIA,EAAM,iBAAmB,EAAQC,EAErC,GAAID,EAAM,eAAgB,CACtB,MAAME,EAAWX,EAAQS,EAAM,OAAQA,CAAK,EACxC,OAAOE,GAAa,WACpBL,EAAoB,IAAIG,EAAM,OAAQE,CAAQ,EAG9CC,EAAS,UAAUH,EAAM,MAAM,CAEvC,MACS,OAAOC,GAAU,aACtBA,EAAMD,CAAK,EACXH,EAAoB,OAAOG,EAAM,MAAM,EAE/C,CAAC,CACL,EACMG,EAAW,IAAI,qBAAqBL,EAAsB,CAC5D,KAAAN,EACA,WAAAC,EACA,UAAW,OAAOC,GAAW,SAAWA,EAASN,EAAWM,CAAM,CAC1E,CAAK,EACD,OAAAC,EAAS,QAASS,GAAYD,EAAS,QAAQC,CAAO,CAAC,EAChD,IAAMD,EAAS,WAAU,CACpC,CCpCA,SAASE,EAAUC,EAAK,CAAE,KAAAd,EAAM,OAAAe,EAAQ,OAAAb,EAAQ,KAAAc,EAAO,GAAO,QAAAC,EAAU,EAAK,EAAM,CAAA,EAAI,CACnF,KAAM,CAACC,EAAUC,CAAS,EAAIC,EAAAA,SAASH,CAAO,EAC9CI,OAAAA,EAAAA,UAAU,IAAM,CACZ,GAAI,CAACP,EAAI,SAAYE,GAAQE,EACzB,OACJ,MAAMI,EAAU,KACZH,EAAU,EAAI,EACPH,EAAO,OAAY,IAAMG,EAAU,EAAK,GAE7CI,EAAU,CACZ,KAAOvB,GAAQA,EAAK,SAAY,OAChC,OAAAe,EACA,OAAAb,CACZ,EACQ,OAAOL,EAAOiB,EAAI,QAASQ,EAASC,CAAO,CAC/C,EAAG,CAACvB,EAAMc,EAAKC,EAAQC,EAAMd,CAAM,CAAC,EAC7BgB,CACX","x_google_ignoreList":[0,1]}
|
package/dist/validateSchema.cjs
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
"use strict";var u=Object.create;var c=Object.defineProperty;var h=Object.getOwnPropertyDescriptor;var m=Object.getOwnPropertyNames;var v=Object.getPrototypeOf,p=Object.prototype.hasOwnProperty;var f=(e,a,i,o)=>{if(a&&typeof a=="object"||typeof a=="function")for(let r of m(a))!p.call(e,r)&&r!==i&&c(e,r,{get:()=>a[r],enumerable:!(o=h(a,r))||o.enumerable});return e};var n=(e,a,i)=>(i=e!=null?u(v(e)):{},f(a||!e||!e.__esModule?c(i,"default",{value:e,enumerable:!0}):i,e));Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const S=require("./getGraphList-CA17dvFB.cjs"),l=require("./getSchema.cjs");async function g(e,a){let i;try{i=(await import("ajv")).default}catch(t){throw console.error(t),new Error("AJV is not installed. Please install it to use runtime validation.")}const o=new i({allErrors:!0,allowUnionTypes:!0});if(S.graphList.filter(t=>t.geoHubMapPresentation).map(t=>t.graphID).indexOf(a)!==-1)return{isValid:!0,err:void 0};if(!e)return{isValid:!1,err:"No data provided"};if(a==="dataTable"||a==="dataCards"||e.length===0)return{isValid:!0,err:void 0};const r=await l.getDataSchema(a);if(!r)return{isValid:!1,err:`Invalid chart type: ${a}`};const s=o.compile(r);return s(e)?{isValid:!0,err:void 0}:(console.error(s.errors),{isValid:!1,err:s.errors?.map(t=>`Error at ${t.instancePath}: ${t.message}`).join("; ")})}async function w(e,a){let i;try{i=(await import("ajv")).default}catch(t){throw console.error(t),new Error("AJV is not installed. Please install it to use runtime validation.")}const o=new i({allErrors:!0,allowUnionTypes:!0}),r=await l.getSettingsSchema(a);if(!r)return{isValid:!1,err:`Invalid chart type: ${a}`};const s=o.compile(r);return s(e)?{isValid:!0,err:void 0}:(console.error(s.errors),{isValid:!1,err:s.errors?.map(t=>`Error at ${t.instancePath}: ${t.message}`).join("; ")})}async function y(e,a){let i;try{i=(await import("ajv")).default}catch(t){throw console.error(t),new Error("AJV is not installed. Please install it to use runtime validation.")}const o=new i({allErrors:!0,allowUnionTypes:!0});let r;switch(a){case"griddedGraph":r=l.getGriddedGraphJSONSchema(void 0,e.graphType);break;case"multiGraphDashboard":r=l.getDashboardJSONSchema();break;case"singleGraphDashboard":r=l.getSingleGraphJSONSchema(void 0,e.graphType);break;case"multiGraphDashboardWideToLongFormat":r=l.getDashboardWideToLongFormatJSONSchema();break}if(!r)return{isValid:!1,err:`Invalid chart type: ${a}`};const s=o.compile(r);return s(e)?{isValid:!0,err:void 0}:(console.error(s.errors),{isValid:!1,err:s.errors?.map(t=>`Error at ${t.instancePath}: ${t.message}`).join("; ")})}exports.validateConfigSchema=y;exports.validateDataSchema=g;exports.validateSettingsSchema=w;
|
|
2
|
-
//# sourceMappingURL=validateSchema.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"validateSchema.cjs","sources":["../src/Utils/validateSchema.ts"],"sourcesContent":["import { graphList } from './getGraphList';\r\n\r\nimport { GraphType } from '@/Types';\r\nimport {\r\n getDashboardJSONSchema,\r\n getDashboardWideToLongFormatJSONSchema,\r\n getDataSchema,\r\n getGriddedGraphJSONSchema,\r\n getSettingsSchema,\r\n getSingleGraphJSONSchema,\r\n} from '@/Schemas/getSchema';\r\n\r\n/**\r\n * Validates the data against the appropriate schema for the given graph type.\r\n *\r\n * @param data - The data to validate.\r\n * @param graph - The graph type for which the data validation is performed.\r\n *\r\n * @returns A promise with `isValid` indicating the validation result and `err` containing any error messages if the validation fails.\r\n *\r\n * @example\r\n * const result = validateDataSchema(data, 'barChart').then(result => {\r\n * if (!result.isValid) {\r\n * console.error(result.err);\r\n * }\r\n * });\r\n */\r\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\r\nexport async function validateDataSchema(data: any, graph: GraphType) {\r\n let Ajv;\r\n try {\r\n Ajv = (await import('ajv')).default;\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n } catch (e: any) {\r\n console.error(e);\r\n throw new Error('AJV is not installed. Please install it to use runtime validation.');\r\n }\r\n\r\n const ajv = new Ajv({ allErrors: true, allowUnionTypes: true });\r\n if (\r\n graphList\r\n .filter(el => el.geoHubMapPresentation)\r\n .map(el => el.graphID)\r\n .indexOf(graph) !== -1\r\n )\r\n return {\r\n isValid: true,\r\n err: undefined,\r\n };\r\n if (!data) {\r\n return {\r\n isValid: false,\r\n err: `No data provided`,\r\n };\r\n }\r\n if (graph === 'dataTable' || graph === 'dataCards' || data.length === 0)\r\n return {\r\n isValid: true,\r\n err: undefined,\r\n };\r\n\r\n const schema = await getDataSchema(graph);\r\n\r\n if (!schema)\r\n return {\r\n isValid: false,\r\n err: `Invalid chart type: ${graph}`,\r\n };\r\n\r\n const validate = ajv.compile(schema);\r\n const valid = validate(data);\r\n if (!valid) {\r\n console.error(validate.errors);\r\n return {\r\n isValid: false,\r\n err: validate.errors\r\n ?.map(error => `Error at ${error.instancePath}: ${error.message}`)\r\n .join('; '),\r\n };\r\n }\r\n return {\r\n isValid: true,\r\n err: undefined,\r\n };\r\n}\r\n/**\r\n * Validates the settings against the appropriate schema for the given graph type. This does not validate graphTitle, graphDescription, footNote, tooltip, detailsOnClick, and cardTemplate.\r\n *\r\n * @param settings - The settings to validate.\r\n * @param graph - The graph type for which the settings validation is performed.\r\n *\r\n * @returns A promise with `isValid` indicating the validation result and `err` containing any error messages if the validation fails.\r\n *\r\n * @example\r\n * const result = validateSettingsSchema(settings, 'barChart').then(result => {\r\n * if (!result.isValid) {\r\n * console.error(result.err);\r\n * }\r\n * });\r\n */\r\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\r\nexport async function validateSettingsSchema(settings: any, graph: GraphType) {\r\n let Ajv;\r\n try {\r\n Ajv = (await import('ajv')).default;\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n } catch (e: any) {\r\n console.error(e);\r\n throw new Error('AJV is not installed. Please install it to use runtime validation.');\r\n }\r\n\r\n const ajv = new Ajv({ allErrors: true, allowUnionTypes: true });\r\n const schema = await getSettingsSchema(graph);\r\n\r\n if (!schema)\r\n return {\r\n isValid: false,\r\n err: `Invalid chart type: ${graph}`,\r\n };\r\n\r\n const validate = ajv.compile(schema);\r\n const valid = validate(settings);\r\n if (!valid) {\r\n console.error(validate.errors);\r\n return {\r\n isValid: false,\r\n err: validate.errors\r\n ?.map(error => `Error at ${error.instancePath}: ${error.message}`)\r\n .join('; '),\r\n };\r\n }\r\n return {\r\n isValid: true,\r\n err: undefined,\r\n };\r\n}\r\n/**\r\n * Validates the configuration against the appropriate schema for the given graph type. This does not validate graphTitle, graphDescription, footNote, tooltip, detailsOnClick or cardTemplate in the graphSettings.\r\n *\r\n * @param config - The configuration to validate.\r\n * @param graph - The graph type for which the configuration validation is performed. Can be one of:\r\n * 'singleGraphDashboard', 'multiGraphDashboard', 'griddedGraph', or 'multiGraphDashboardWideToLongFormat'.\r\n *\r\n * @returns A promise with `isValid` indicating the validation result and `err` containing any error messages if the validation fails.\r\n *\r\n * @example\r\n * const result = validateConfigSchema(config, 'griddedGraph').then(result => {\r\n * if (!result.isValid) {\r\n * console.error(result.err);\r\n * }\r\n * });\r\n */\r\nexport async function validateConfigSchema(\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n config: any,\r\n graph:\r\n | 'singleGraphDashboard'\r\n | 'multiGraphDashboard'\r\n | 'griddedGraph'\r\n | 'multiGraphDashboardWideToLongFormat',\r\n) {\r\n let Ajv;\r\n try {\r\n Ajv = (await import('ajv')).default;\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n } catch (e: any) {\r\n console.error(e);\r\n throw new Error('AJV is not installed. Please install it to use runtime validation.');\r\n }\r\n\r\n const ajv = new Ajv({ allErrors: true, allowUnionTypes: true });\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n let schema: any;\r\n switch (graph) {\r\n case 'griddedGraph':\r\n schema = getGriddedGraphJSONSchema(undefined, config.graphType);\r\n break;\r\n case 'multiGraphDashboard':\r\n schema = getDashboardJSONSchema();\r\n break;\r\n case 'singleGraphDashboard':\r\n schema = getSingleGraphJSONSchema(undefined, config.graphType);\r\n break;\r\n case 'multiGraphDashboardWideToLongFormat':\r\n schema = getDashboardWideToLongFormatJSONSchema();\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n if (!schema)\r\n return {\r\n isValid: false,\r\n err: `Invalid chart type: ${graph}`,\r\n };\r\n const validate = ajv.compile(schema);\r\n const valid = validate(config);\r\n if (!valid) {\r\n console.error(validate.errors);\r\n return {\r\n isValid: false,\r\n err: validate.errors\r\n ?.map(error => `Error at ${error.instancePath}: ${error.message}`)\r\n .join('; '),\r\n };\r\n }\r\n return {\r\n isValid: true,\r\n err: undefined,\r\n };\r\n}\r\n"],"names":["validateDataSchema","data","graph","Ajv","default","e","console","error","Error","ajv","allErrors","allowUnionTypes","graphList","filter","el","geoHubMapPresentation","map","graphID","indexOf","isValid","err","undefined","length","schema","getDataSchema","validate","compile","errors","instancePath","message","join","validateSettingsSchema","settings","getSettingsSchema","validateConfigSchema","config","getGriddedGraphJSONSchema","graphType","getDashboardJSONSchema","getSingleGraphJSONSchema","getDashboardWideToLongFormatJSONSchema"],"mappings":"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"}
|
package/dist/validateSchema.d.ts
DELETED
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
declare type GraphType = GraphTypeForGriddedGraph;
|
|
2
|
-
|
|
3
|
-
declare type GraphTypeForGriddedGraph = 'barChart' | 'stackedBarChart' | 'groupedBarChart' | 'lineChart' | 'dualAxisLineChart' | 'multiLineChart' | 'multiLineAltChart' | 'differenceLineChart' | 'stackedAreaChart' | 'choroplethMap' | 'biVariateChoroplethMap' | 'hybridMap' | 'dotDensityMap' | 'donutChart' | 'slopeChart' | 'scatterPlot' | 'dumbbellChart' | 'treeMap' | 'circlePacking' | 'heatMap' | 'stripChart' | 'beeSwarmChart' | 'butterflyChart' | 'histogram' | 'sparkLine' | 'paretoChart' | 'dataTable' | 'statCard' | 'unitChart' | 'sankeyChart' | 'lineChartWithConfidenceInterval' | 'dataCards' | 'radarChart' | 'bulletChart';
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* Validates the configuration against the appropriate schema for the given graph type. This does not validate graphTitle, graphDescription, footNote, tooltip, detailsOnClick or cardTemplate in the graphSettings.
|
|
7
|
-
*
|
|
8
|
-
* @param config - The configuration to validate.
|
|
9
|
-
* @param graph - The graph type for which the configuration validation is performed. Can be one of:
|
|
10
|
-
* 'singleGraphDashboard', 'multiGraphDashboard', 'griddedGraph', or 'multiGraphDashboardWideToLongFormat'.
|
|
11
|
-
*
|
|
12
|
-
* @returns A promise with `isValid` indicating the validation result and `err` containing any error messages if the validation fails.
|
|
13
|
-
*
|
|
14
|
-
* @example
|
|
15
|
-
* const result = validateConfigSchema(config, 'griddedGraph').then(result => {
|
|
16
|
-
* if (!result.isValid) {
|
|
17
|
-
* console.error(result.err);
|
|
18
|
-
* }
|
|
19
|
-
* });
|
|
20
|
-
*/
|
|
21
|
-
export declare function validateConfigSchema(config: any, graph: 'singleGraphDashboard' | 'multiGraphDashboard' | 'griddedGraph' | 'multiGraphDashboardWideToLongFormat'): Promise<{
|
|
22
|
-
isValid: boolean;
|
|
23
|
-
err: string | undefined;
|
|
24
|
-
}>;
|
|
25
|
-
|
|
26
|
-
/**
|
|
27
|
-
* Validates the data against the appropriate schema for the given graph type.
|
|
28
|
-
*
|
|
29
|
-
* @param data - The data to validate.
|
|
30
|
-
* @param graph - The graph type for which the data validation is performed.
|
|
31
|
-
*
|
|
32
|
-
* @returns A promise with `isValid` indicating the validation result and `err` containing any error messages if the validation fails.
|
|
33
|
-
*
|
|
34
|
-
* @example
|
|
35
|
-
* const result = validateDataSchema(data, 'barChart').then(result => {
|
|
36
|
-
* if (!result.isValid) {
|
|
37
|
-
* console.error(result.err);
|
|
38
|
-
* }
|
|
39
|
-
* });
|
|
40
|
-
*/
|
|
41
|
-
export declare function validateDataSchema(data: any, graph: GraphType): Promise<{
|
|
42
|
-
isValid: boolean;
|
|
43
|
-
err: string | undefined;
|
|
44
|
-
}>;
|
|
45
|
-
|
|
46
|
-
/**
|
|
47
|
-
* Validates the settings against the appropriate schema for the given graph type. This does not validate graphTitle, graphDescription, footNote, tooltip, detailsOnClick, and cardTemplate.
|
|
48
|
-
*
|
|
49
|
-
* @param settings - The settings to validate.
|
|
50
|
-
* @param graph - The graph type for which the settings validation is performed.
|
|
51
|
-
*
|
|
52
|
-
* @returns A promise with `isValid` indicating the validation result and `err` containing any error messages if the validation fails.
|
|
53
|
-
*
|
|
54
|
-
* @example
|
|
55
|
-
* const result = validateSettingsSchema(settings, 'barChart').then(result => {
|
|
56
|
-
* if (!result.isValid) {
|
|
57
|
-
* console.error(result.err);
|
|
58
|
-
* }
|
|
59
|
-
* });
|
|
60
|
-
*/
|
|
61
|
-
export declare function validateSettingsSchema(settings: any, graph: GraphType): Promise<{
|
|
62
|
-
isValid: boolean;
|
|
63
|
-
err: string | undefined;
|
|
64
|
-
}>;
|
|
65
|
-
|
|
66
|
-
export { }
|
package/dist/validateSchema.js
DELETED
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
import { g as n } from "./getGraphList-Dxwo9TDb.js";
|
|
2
|
-
import { getDataSchema as d, getSettingsSchema as c, getDashboardWideToLongFormatJSONSchema as u, getSingleGraphJSONSchema as m, getDashboardJSONSchema as h, getGriddedGraphJSONSchema as v } from "./getSchema.js";
|
|
3
|
-
async function w(i, a) {
|
|
4
|
-
let o;
|
|
5
|
-
try {
|
|
6
|
-
o = (await import("ajv")).default;
|
|
7
|
-
} catch (e) {
|
|
8
|
-
throw console.error(e), new Error("AJV is not installed. Please install it to use runtime validation.");
|
|
9
|
-
}
|
|
10
|
-
const s = new o({
|
|
11
|
-
allErrors: !0,
|
|
12
|
-
allowUnionTypes: !0
|
|
13
|
-
});
|
|
14
|
-
if (n.filter((e) => e.geoHubMapPresentation).map((e) => e.graphID).indexOf(a) !== -1) return {
|
|
15
|
-
isValid: !0,
|
|
16
|
-
err: void 0
|
|
17
|
-
};
|
|
18
|
-
if (!i)
|
|
19
|
-
return {
|
|
20
|
-
isValid: !1,
|
|
21
|
-
err: "No data provided"
|
|
22
|
-
};
|
|
23
|
-
if (a === "dataTable" || a === "dataCards" || i.length === 0) return {
|
|
24
|
-
isValid: !0,
|
|
25
|
-
err: void 0
|
|
26
|
-
};
|
|
27
|
-
const r = await d(a);
|
|
28
|
-
if (!r) return {
|
|
29
|
-
isValid: !1,
|
|
30
|
-
err: `Invalid chart type: ${a}`
|
|
31
|
-
};
|
|
32
|
-
const t = s.compile(r);
|
|
33
|
-
return t(i) ? {
|
|
34
|
-
isValid: !0,
|
|
35
|
-
err: void 0
|
|
36
|
-
} : (console.error(t.errors), {
|
|
37
|
-
isValid: !1,
|
|
38
|
-
err: t.errors?.map((e) => `Error at ${e.instancePath}: ${e.message}`).join("; ")
|
|
39
|
-
});
|
|
40
|
-
}
|
|
41
|
-
async function g(i, a) {
|
|
42
|
-
let o;
|
|
43
|
-
try {
|
|
44
|
-
o = (await import("ajv")).default;
|
|
45
|
-
} catch (e) {
|
|
46
|
-
throw console.error(e), new Error("AJV is not installed. Please install it to use runtime validation.");
|
|
47
|
-
}
|
|
48
|
-
const s = new o({
|
|
49
|
-
allErrors: !0,
|
|
50
|
-
allowUnionTypes: !0
|
|
51
|
-
}), r = await c(a);
|
|
52
|
-
if (!r) return {
|
|
53
|
-
isValid: !1,
|
|
54
|
-
err: `Invalid chart type: ${a}`
|
|
55
|
-
};
|
|
56
|
-
const t = s.compile(r);
|
|
57
|
-
return t(i) ? {
|
|
58
|
-
isValid: !0,
|
|
59
|
-
err: void 0
|
|
60
|
-
} : (console.error(t.errors), {
|
|
61
|
-
isValid: !1,
|
|
62
|
-
err: t.errors?.map((e) => `Error at ${e.instancePath}: ${e.message}`).join("; ")
|
|
63
|
-
});
|
|
64
|
-
}
|
|
65
|
-
async function S(i, a) {
|
|
66
|
-
let o;
|
|
67
|
-
try {
|
|
68
|
-
o = (await import("ajv")).default;
|
|
69
|
-
} catch (e) {
|
|
70
|
-
throw console.error(e), new Error("AJV is not installed. Please install it to use runtime validation.");
|
|
71
|
-
}
|
|
72
|
-
const s = new o({
|
|
73
|
-
allErrors: !0,
|
|
74
|
-
allowUnionTypes: !0
|
|
75
|
-
});
|
|
76
|
-
let r;
|
|
77
|
-
switch (a) {
|
|
78
|
-
case "griddedGraph":
|
|
79
|
-
r = v(void 0, i.graphType);
|
|
80
|
-
break;
|
|
81
|
-
case "multiGraphDashboard":
|
|
82
|
-
r = h();
|
|
83
|
-
break;
|
|
84
|
-
case "singleGraphDashboard":
|
|
85
|
-
r = m(void 0, i.graphType);
|
|
86
|
-
break;
|
|
87
|
-
case "multiGraphDashboardWideToLongFormat":
|
|
88
|
-
r = u();
|
|
89
|
-
break;
|
|
90
|
-
}
|
|
91
|
-
if (!r) return {
|
|
92
|
-
isValid: !1,
|
|
93
|
-
err: `Invalid chart type: ${a}`
|
|
94
|
-
};
|
|
95
|
-
const t = s.compile(r);
|
|
96
|
-
return t(i) ? {
|
|
97
|
-
isValid: !0,
|
|
98
|
-
err: void 0
|
|
99
|
-
} : (console.error(t.errors), {
|
|
100
|
-
isValid: !1,
|
|
101
|
-
err: t.errors?.map((e) => `Error at ${e.instancePath}: ${e.message}`).join("; ")
|
|
102
|
-
});
|
|
103
|
-
}
|
|
104
|
-
export {
|
|
105
|
-
S as validateConfigSchema,
|
|
106
|
-
w as validateDataSchema,
|
|
107
|
-
g as validateSettingsSchema
|
|
108
|
-
};
|
|
109
|
-
//# sourceMappingURL=validateSchema.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"validateSchema.js","sources":["../src/Utils/validateSchema.ts"],"sourcesContent":["import { graphList } from './getGraphList';\r\n\r\nimport { GraphType } from '@/Types';\r\nimport {\r\n getDashboardJSONSchema,\r\n getDashboardWideToLongFormatJSONSchema,\r\n getDataSchema,\r\n getGriddedGraphJSONSchema,\r\n getSettingsSchema,\r\n getSingleGraphJSONSchema,\r\n} from '@/Schemas/getSchema';\r\n\r\n/**\r\n * Validates the data against the appropriate schema for the given graph type.\r\n *\r\n * @param data - The data to validate.\r\n * @param graph - The graph type for which the data validation is performed.\r\n *\r\n * @returns A promise with `isValid` indicating the validation result and `err` containing any error messages if the validation fails.\r\n *\r\n * @example\r\n * const result = validateDataSchema(data, 'barChart').then(result => {\r\n * if (!result.isValid) {\r\n * console.error(result.err);\r\n * }\r\n * });\r\n */\r\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\r\nexport async function validateDataSchema(data: any, graph: GraphType) {\r\n let Ajv;\r\n try {\r\n Ajv = (await import('ajv')).default;\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n } catch (e: any) {\r\n console.error(e);\r\n throw new Error('AJV is not installed. Please install it to use runtime validation.');\r\n }\r\n\r\n const ajv = new Ajv({ allErrors: true, allowUnionTypes: true });\r\n if (\r\n graphList\r\n .filter(el => el.geoHubMapPresentation)\r\n .map(el => el.graphID)\r\n .indexOf(graph) !== -1\r\n )\r\n return {\r\n isValid: true,\r\n err: undefined,\r\n };\r\n if (!data) {\r\n return {\r\n isValid: false,\r\n err: `No data provided`,\r\n };\r\n }\r\n if (graph === 'dataTable' || graph === 'dataCards' || data.length === 0)\r\n return {\r\n isValid: true,\r\n err: undefined,\r\n };\r\n\r\n const schema = await getDataSchema(graph);\r\n\r\n if (!schema)\r\n return {\r\n isValid: false,\r\n err: `Invalid chart type: ${graph}`,\r\n };\r\n\r\n const validate = ajv.compile(schema);\r\n const valid = validate(data);\r\n if (!valid) {\r\n console.error(validate.errors);\r\n return {\r\n isValid: false,\r\n err: validate.errors\r\n ?.map(error => `Error at ${error.instancePath}: ${error.message}`)\r\n .join('; '),\r\n };\r\n }\r\n return {\r\n isValid: true,\r\n err: undefined,\r\n };\r\n}\r\n/**\r\n * Validates the settings against the appropriate schema for the given graph type. This does not validate graphTitle, graphDescription, footNote, tooltip, detailsOnClick, and cardTemplate.\r\n *\r\n * @param settings - The settings to validate.\r\n * @param graph - The graph type for which the settings validation is performed.\r\n *\r\n * @returns A promise with `isValid` indicating the validation result and `err` containing any error messages if the validation fails.\r\n *\r\n * @example\r\n * const result = validateSettingsSchema(settings, 'barChart').then(result => {\r\n * if (!result.isValid) {\r\n * console.error(result.err);\r\n * }\r\n * });\r\n */\r\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\r\nexport async function validateSettingsSchema(settings: any, graph: GraphType) {\r\n let Ajv;\r\n try {\r\n Ajv = (await import('ajv')).default;\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n } catch (e: any) {\r\n console.error(e);\r\n throw new Error('AJV is not installed. Please install it to use runtime validation.');\r\n }\r\n\r\n const ajv = new Ajv({ allErrors: true, allowUnionTypes: true });\r\n const schema = await getSettingsSchema(graph);\r\n\r\n if (!schema)\r\n return {\r\n isValid: false,\r\n err: `Invalid chart type: ${graph}`,\r\n };\r\n\r\n const validate = ajv.compile(schema);\r\n const valid = validate(settings);\r\n if (!valid) {\r\n console.error(validate.errors);\r\n return {\r\n isValid: false,\r\n err: validate.errors\r\n ?.map(error => `Error at ${error.instancePath}: ${error.message}`)\r\n .join('; '),\r\n };\r\n }\r\n return {\r\n isValid: true,\r\n err: undefined,\r\n };\r\n}\r\n/**\r\n * Validates the configuration against the appropriate schema for the given graph type. This does not validate graphTitle, graphDescription, footNote, tooltip, detailsOnClick or cardTemplate in the graphSettings.\r\n *\r\n * @param config - The configuration to validate.\r\n * @param graph - The graph type for which the configuration validation is performed. Can be one of:\r\n * 'singleGraphDashboard', 'multiGraphDashboard', 'griddedGraph', or 'multiGraphDashboardWideToLongFormat'.\r\n *\r\n * @returns A promise with `isValid` indicating the validation result and `err` containing any error messages if the validation fails.\r\n *\r\n * @example\r\n * const result = validateConfigSchema(config, 'griddedGraph').then(result => {\r\n * if (!result.isValid) {\r\n * console.error(result.err);\r\n * }\r\n * });\r\n */\r\nexport async function validateConfigSchema(\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n config: any,\r\n graph:\r\n | 'singleGraphDashboard'\r\n | 'multiGraphDashboard'\r\n | 'griddedGraph'\r\n | 'multiGraphDashboardWideToLongFormat',\r\n) {\r\n let Ajv;\r\n try {\r\n Ajv = (await import('ajv')).default;\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n } catch (e: any) {\r\n console.error(e);\r\n throw new Error('AJV is not installed. Please install it to use runtime validation.');\r\n }\r\n\r\n const ajv = new Ajv({ allErrors: true, allowUnionTypes: true });\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n let schema: any;\r\n switch (graph) {\r\n case 'griddedGraph':\r\n schema = getGriddedGraphJSONSchema(undefined, config.graphType);\r\n break;\r\n case 'multiGraphDashboard':\r\n schema = getDashboardJSONSchema();\r\n break;\r\n case 'singleGraphDashboard':\r\n schema = getSingleGraphJSONSchema(undefined, config.graphType);\r\n break;\r\n case 'multiGraphDashboardWideToLongFormat':\r\n schema = getDashboardWideToLongFormatJSONSchema();\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n if (!schema)\r\n return {\r\n isValid: false,\r\n err: `Invalid chart type: ${graph}`,\r\n };\r\n const validate = ajv.compile(schema);\r\n const valid = validate(config);\r\n if (!valid) {\r\n console.error(validate.errors);\r\n return {\r\n isValid: false,\r\n err: validate.errors\r\n ?.map(error => `Error at ${error.instancePath}: ${error.message}`)\r\n .join('; '),\r\n };\r\n }\r\n return {\r\n isValid: true,\r\n err: undefined,\r\n };\r\n}\r\n"],"names":["validateDataSchema","data","graph","Ajv","default","e","console","error","Error","ajv","allErrors","allowUnionTypes","graphList","filter","el","geoHubMapPresentation","map","graphID","indexOf","isValid","err","undefined","length","schema","getDataSchema","validate","compile","errors","instancePath","message","join","validateSettingsSchema","settings","getSettingsSchema","validateConfigSchema","config","getGriddedGraphJSONSchema","graphType","getDashboardJSONSchema","getSingleGraphJSONSchema","getDashboardWideToLongFormatJSONSchema"],"mappings":"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"}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
"use strict";const i=require("react");/**
|
|
2
|
-
* @license lucide-react v0.542.0 - ISC
|
|
3
|
-
*
|
|
4
|
-
* This source code is licensed under the ISC license.
|
|
5
|
-
* See the LICENSE file in the root directory of this source tree.
|
|
6
|
-
*/const k=r=>r.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),w=r=>r.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,o)=>o?o.toUpperCase():t.toLowerCase()),c=r=>{const e=w(r);return e.charAt(0).toUpperCase()+e.slice(1)},l=(...r)=>r.filter((e,t,o)=>!!e&&e.trim()!==""&&o.indexOf(e)===t).join(" ").trim(),p=r=>{for(const e in r)if(e.startsWith("aria-")||e==="role"||e==="title")return!0};/**
|
|
7
|
-
* @license lucide-react v0.542.0 - ISC
|
|
8
|
-
*
|
|
9
|
-
* This source code is licensed under the ISC license.
|
|
10
|
-
* See the LICENSE file in the root directory of this source tree.
|
|
11
|
-
*/var N={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};/**
|
|
12
|
-
* @license lucide-react v0.542.0 - ISC
|
|
13
|
-
*
|
|
14
|
-
* This source code is licensed under the ISC license.
|
|
15
|
-
* See the LICENSE file in the root directory of this source tree.
|
|
16
|
-
*/const g=i.forwardRef(({color:r="currentColor",size:e=24,strokeWidth:t=2,absoluteStrokeWidth:o,className:a="",children:s,iconNode:h,...n},u)=>i.createElement("svg",{ref:u,...N,width:e,height:e,stroke:r,strokeWidth:o?Number(t)*24/Number(e):t,className:l("lucide",a),...!s&&!p(n)&&{"aria-hidden":"true"},...n},[...h.map(([m,f])=>i.createElement(m,f)),...Array.isArray(s)?s:[s]]));/**
|
|
17
|
-
* @license lucide-react v0.542.0 - ISC
|
|
18
|
-
*
|
|
19
|
-
* This source code is licensed under the ISC license.
|
|
20
|
-
* See the LICENSE file in the root directory of this source tree.
|
|
21
|
-
*/const d=(r,e)=>{const t=i.forwardRef(({className:o,...a},s)=>i.createElement(g,{ref:s,iconNode:e,className:l(`lucide-${k(c(r))}`,`lucide-${r}`,o),...a}));return t.displayName=c(r),t};/**
|
|
22
|
-
* @license lucide-react v0.542.0 - ISC
|
|
23
|
-
*
|
|
24
|
-
* This source code is licensed under the ISC license.
|
|
25
|
-
* See the LICENSE file in the root directory of this source tree.
|
|
26
|
-
*/const A=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],C=d("x",A);exports.k=d;exports.t=C;
|
|
27
|
-
//# sourceMappingURL=x-BBpi7a_7-mTo40uId.cjs.map
|