@hisptz/dhis2-analytics 2.0.0-alpha.0 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/ChartAnalytics/DHIS2Chart.js +11 -11
- package/dist/components/ChartAnalytics/DHIS2Chart.js.map +1 -1
- package/dist/components/ChartAnalytics/components/DownloadMenu/components/Menu.js +2 -2
- package/dist/components/ChartAnalytics/components/DownloadMenu/components/Menu.js.map +1 -1
- package/dist/components/ChartAnalytics/components/DownloadMenu/index.js +10 -10
- package/dist/components/ChartAnalytics/components/DownloadMenu/index.js.map +1 -1
- package/dist/components/ChartAnalytics/hooks/useChart.js +7 -7
- package/dist/components/ChartAnalytics/hooks/useChart.js.map +1 -1
- package/dist/components/ChartAnalytics/index.js +3 -3
- package/dist/components/ChartAnalytics/index.js.map +1 -1
- package/dist/components/ChartAnalytics/models/bar.js +2 -2
- package/dist/components/ChartAnalytics/models/bar.js.map +1 -1
- package/dist/components/ChartAnalytics/models/column.js +5 -5
- package/dist/components/ChartAnalytics/models/column.js.map +1 -1
- package/dist/components/ChartAnalytics/models/index.js +0 -3
- package/dist/components/ChartAnalytics/models/index.js.map +1 -1
- package/dist/components/ChartAnalytics/models/line.js +5 -5
- package/dist/components/ChartAnalytics/models/line.js.map +1 -1
- package/dist/components/ChartAnalytics/models/multi-series.js +22 -9
- package/dist/components/ChartAnalytics/models/multi-series.js.map +1 -1
- package/dist/components/ChartAnalytics/models/pie.js +5 -3
- package/dist/components/ChartAnalytics/models/pie.js.map +1 -1
- package/dist/components/ChartAnalytics/services/export.js +3 -3
- package/dist/components/ChartAnalytics/services/export.js.map +1 -1
- package/dist/components/ChartAnalytics/styles/custom-highchart.css +40 -0
- package/dist/components/ChartAnalytics/styles/custom-highchart.css.map +1 -0
- package/dist/components/ChartAnalytics/utils/chart.js +12 -12
- package/dist/components/ChartAnalytics/utils/chart.js.map +1 -1
- package/dist/components/CircularProgressDashboard/CircularProgressIndicator.js +3 -3
- package/dist/components/CircularProgressDashboard/CircularProgressIndicator.js.map +1 -1
- package/dist/components/CircularProgressDashboard/index.js +6 -6
- package/dist/components/CircularProgressDashboard/index.js.map +1 -1
- package/dist/components/DHIS2PivotTable/DHIS2PivotTable.js +10 -10
- package/dist/components/DHIS2PivotTable/DHIS2PivotTable.js.map +1 -1
- package/dist/components/DHIS2PivotTable/components/TableBody/index.js +8 -8
- package/dist/components/DHIS2PivotTable/components/TableBody/index.js.map +1 -1
- package/dist/components/DHIS2PivotTable/components/TableHeaders/index.js +5 -5
- package/dist/components/DHIS2PivotTable/components/TableHeaders/index.js.map +1 -1
- package/dist/components/DHIS2PivotTable/index.js +6 -6
- package/dist/components/DHIS2PivotTable/index.js.map +1 -1
- package/dist/components/DHIS2PivotTable/services/engine.js +0 -6
- package/dist/components/DHIS2PivotTable/services/engine.js.map +1 -1
- package/dist/components/DHIS2PivotTable/state/engine.js.map +1 -1
- package/dist/components/Map/DHIS2Map.js +3 -3
- package/dist/components/Map/DHIS2Map.js.map +1 -1
- package/dist/components/Map/components/EarthEngineLayerConfiguration/EarthEngineLayerConfigModal.js +2 -2
- package/dist/components/Map/components/EarthEngineLayerConfiguration/EarthEngineLayerConfigModal.js.map +1 -1
- package/dist/components/Map/components/EarthEngineLayerConfiguration/EarthEngineLayerConfiguration.js +10 -10
- package/dist/components/Map/components/EarthEngineLayerConfiguration/EarthEngineLayerConfiguration.js.map +1 -1
- package/dist/components/Map/components/EarthEngineLayerConfiguration/components/AggregationSelector.js +2 -2
- package/dist/components/Map/components/EarthEngineLayerConfiguration/components/AggregationSelector.js.map +1 -1
- package/dist/components/Map/components/EarthEngineLayerConfiguration/components/ColorConfig.js +11 -11
- package/dist/components/Map/components/EarthEngineLayerConfiguration/components/ColorConfig.js.map +1 -1
- package/dist/components/Map/components/EarthEngineLayerConfiguration/components/Name.js +2 -2
- package/dist/components/Map/components/EarthEngineLayerConfiguration/components/Name.js.map +1 -1
- package/dist/components/Map/components/EarthEngineLayerConfiguration/components/PeriodSelector.js +3 -3
- package/dist/components/Map/components/EarthEngineLayerConfiguration/components/PeriodSelector.js.map +1 -1
- package/dist/components/Map/components/EarthEngineLayerConfiguration/components/StylesConfig.js +4 -4
- package/dist/components/Map/components/EarthEngineLayerConfiguration/components/StylesConfig.js.map +1 -1
- package/dist/components/Map/components/EarthEngineLayerConfiguration/components/TypeField.js +3 -3
- package/dist/components/Map/components/EarthEngineLayerConfiguration/components/TypeField.js.map +1 -1
- package/dist/components/Map/components/EarthEngineLayerConfiguration/hooks/data.js +8 -8
- package/dist/components/Map/components/EarthEngineLayerConfiguration/hooks/data.js.map +1 -1
- package/dist/components/Map/components/EarthEngineLayerConfiguration/index.js +6 -6
- package/dist/components/Map/components/EarthEngineLayerConfiguration/index.js.map +1 -1
- package/dist/components/Map/components/MapArea/index.js +42 -27
- package/dist/components/Map/components/MapArea/index.js.map +1 -1
- package/dist/components/Map/components/MapControls/index.js +16 -4
- package/dist/components/Map/components/MapControls/index.js.map +1 -1
- package/dist/components/Map/components/MapLayer/components/BoundaryLayer/hooks/useBoundaryData.js +2 -2
- package/dist/components/Map/components/MapLayer/components/BoundaryLayer/hooks/useBoundaryData.js.map +1 -1
- package/dist/components/Map/components/MapLayer/components/BoundaryLayer/index.js +5 -5
- package/dist/components/Map/components/MapLayer/components/BoundaryLayer/index.js.map +1 -1
- package/dist/components/Map/components/MapLayer/components/GoogleEngineLayer/components/EarthEngineLegend.js +49 -14
- package/dist/components/Map/components/MapLayer/components/GoogleEngineLayer/components/EarthEngineLegend.js.map +1 -1
- package/dist/components/Map/components/MapLayer/components/GoogleEngineLayer/constants/index.js +26 -8
- package/dist/components/Map/components/MapLayer/components/GoogleEngineLayer/constants/index.js.map +1 -1
- package/dist/components/Map/components/MapLayer/components/GoogleEngineLayer/hooks/index.js +2 -2
- package/dist/components/Map/components/MapLayer/components/GoogleEngineLayer/hooks/index.js.map +1 -1
- package/dist/components/Map/components/MapLayer/components/GoogleEngineLayer/index.js +8 -8
- package/dist/components/Map/components/MapLayer/components/GoogleEngineLayer/index.js.map +1 -1
- package/dist/components/Map/components/MapLayer/components/GoogleEngineLayer/services/api.js +31468 -0
- package/dist/components/Map/components/MapLayer/components/GoogleEngineLayer/services/api.js.map +1 -0
- package/dist/components/Map/components/MapLayer/components/GoogleEngineLayer/services/engine.js +56 -34
- package/dist/components/Map/components/MapLayer/components/GoogleEngineLayer/services/engine.js.map +1 -1
- package/dist/components/Map/components/MapLayer/components/GoogleEngineLayer/utils/index.js +33 -22
- package/dist/components/Map/components/MapLayer/components/GoogleEngineLayer/utils/index.js.map +1 -1
- package/dist/components/Map/components/MapLayer/components/LegendArea/index.js +10 -10
- package/dist/components/Map/components/MapLayer/components/LegendArea/index.js.map +1 -1
- package/dist/components/Map/components/MapLayer/components/PointLayer/components/PointLegend/index.js +22 -8
- package/dist/components/Map/components/MapLayer/components/PointLayer/components/PointLegend/index.js.map +1 -1
- package/dist/components/Map/components/MapLayer/components/PointLayer/hooks/index.js +2 -2
- package/dist/components/Map/components/MapLayer/components/PointLayer/hooks/index.js.map +1 -1
- package/dist/components/Map/components/MapLayer/components/PointLayer/index.js +5 -5
- package/dist/components/Map/components/MapLayer/components/PointLayer/index.js.map +1 -1
- package/dist/components/Map/components/MapLayer/components/ThematicLayer/components/Bubble/components/BubbleLegend/components/Bubble.js +34 -6
- package/dist/components/Map/components/MapLayer/components/ThematicLayer/components/Bubble/components/BubbleLegend/components/Bubble.js.map +1 -1
- package/dist/components/Map/components/MapLayer/components/ThematicLayer/components/Bubble/components/BubbleLegend/components/Bubbles.js +28 -9
- package/dist/components/Map/components/MapLayer/components/ThematicLayer/components/Bubble/components/BubbleLegend/components/Bubbles.js.map +1 -1
- package/dist/components/Map/components/MapLayer/components/ThematicLayer/components/Bubble/components/BubbleLegend/index.js +2 -2
- package/dist/components/Map/components/MapLayer/components/ThematicLayer/components/Bubble/components/BubbleLegend/index.js.map +1 -1
- package/dist/components/Map/components/MapLayer/components/ThematicLayer/components/Bubble/index.js +5 -5
- package/dist/components/Map/components/MapLayer/components/ThematicLayer/components/Bubble/index.js.map +1 -1
- package/dist/components/Map/components/MapLayer/components/ThematicLayer/components/Choropleth/components/ChoroplethLegend.js +18 -4
- package/dist/components/Map/components/MapLayer/components/ThematicLayer/components/Choropleth/components/ChoroplethLegend.js.map +1 -1
- package/dist/components/Map/components/MapLayer/components/ThematicLayer/components/Choropleth/index.js +9 -6
- package/dist/components/Map/components/MapLayer/components/ThematicLayer/components/Choropleth/index.js.map +1 -1
- package/dist/components/Map/components/MapLayer/components/ThematicLayer/components/CustomTooltip/index.js +2 -2
- package/dist/components/Map/components/MapLayer/components/ThematicLayer/components/CustomTooltip/index.js.map +1 -1
- package/dist/components/Map/components/MapLayer/components/ThematicLayer/hooks/config.js +2 -2
- package/dist/components/Map/components/MapLayer/components/ThematicLayer/hooks/config.js.map +1 -1
- package/dist/components/Map/components/MapLayer/components/ThematicLayer/index.js +3 -3
- package/dist/components/Map/components/MapLayer/components/ThematicLayer/index.js.map +1 -1
- package/dist/components/Map/components/MapLayer/components/ThematicLayer/styles/legends.css +56 -0
- package/dist/components/Map/components/MapLayer/components/ThematicLayer/styles/legends.css.map +1 -0
- package/dist/components/Map/components/MapLayer/index.js +5 -5
- package/dist/components/Map/components/MapLayer/index.js.map +1 -1
- package/dist/components/Map/components/MapLayer/interfaces/index.js +6 -1
- package/dist/components/Map/components/MapLayer/interfaces/index.js.map +1 -1
- package/dist/components/Map/components/MapProvider/components/MapLayerProvider/hooks/index.js +24 -24
- package/dist/components/Map/components/MapProvider/components/MapLayerProvider/hooks/index.js.map +1 -1
- package/dist/components/Map/components/MapProvider/components/MapLayerProvider/index.js +9 -9
- package/dist/components/Map/components/MapProvider/components/MapLayerProvider/index.js.map +1 -1
- package/dist/components/Map/components/MapProvider/hooks/index.js +4 -4
- package/dist/components/Map/components/MapProvider/hooks/index.js.map +1 -1
- package/dist/components/Map/components/MapProvider/index.js +7 -7
- package/dist/components/Map/components/MapProvider/index.js.map +1 -1
- package/dist/components/Map/components/MapUpdater/index.js +2 -2
- package/dist/components/Map/components/MapUpdater/index.js.map +1 -1
- package/dist/components/Map/components/ThematicLayerConfiguration/ThematicLayerConfigModal.js +2 -2
- package/dist/components/Map/components/ThematicLayerConfiguration/ThematicLayerConfigModal.js.map +1 -1
- package/dist/components/Map/components/ThematicLayerConfiguration/ThematicLayerConfiguration.js +12 -12
- package/dist/components/Map/components/ThematicLayerConfiguration/ThematicLayerConfiguration.js.map +1 -1
- package/dist/components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/components/ColorScale/index.js +16 -4
- package/dist/components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/components/ColorScale/index.js.map +1 -1
- package/dist/components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/index.js +6 -6
- package/dist/components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/index.js.map +1 -1
- package/dist/components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/utils/colors.js +13 -5
- package/dist/components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/utils/colors.js.map +1 -1
- package/dist/components/Map/components/ThematicLayerConfiguration/components/CustomLegend/index.js +5 -5
- package/dist/components/Map/components/ThematicLayerConfiguration/components/CustomLegend/index.js.map +1 -1
- package/dist/components/Map/components/ThematicLayerConfiguration/index.js +9 -9
- package/dist/components/Map/components/ThematicLayerConfiguration/index.js.map +1 -1
- package/dist/components/Map/hooks/map.js +2 -2
- package/dist/components/Map/hooks/map.js.map +1 -1
- package/dist/components/Map/index.js +15 -15
- package/dist/components/Map/index.js.map +1 -1
- package/dist/components/Map/state/index.js.map +1 -1
- package/dist/components/Map/utils/colors.js +13 -5
- package/dist/components/Map/utils/colors.js.map +1 -1
- package/dist/components/Map/utils/map.js +18 -7
- package/dist/components/Map/utils/map.js.map +1 -1
- package/dist/components/SingleValueContainer/SingleValueVisualizer.js +4 -4
- package/dist/components/SingleValueContainer/SingleValueVisualizer.js.map +1 -1
- package/dist/components/SingleValueContainer/components/SingleValueItem/SingleValueItem.js +1 -1
- package/dist/components/SingleValueContainer/components/SingleValueItem/SingleValueItem.js.map +1 -1
- package/dist/components/SingleValueContainer/index.js +13 -6
- package/dist/components/SingleValueContainer/index.js.map +1 -1
- package/dist/components/Visualization/components/AnalyticsDataProvider/index.js +39 -12
- package/dist/components/Visualization/components/AnalyticsDataProvider/index.js.map +1 -1
- package/dist/components/Visualization/components/LayoutProvider/index.js +5 -4
- package/dist/components/Visualization/components/LayoutProvider/index.js.map +1 -1
- package/dist/components/Visualization/components/VisualizationDimensionSelector/index.js +6 -6
- package/dist/components/Visualization/components/VisualizationDimensionSelector/index.js.map +1 -1
- package/dist/components/Visualization/components/VisualizationProvider/index.js +12 -6
- package/dist/components/Visualization/components/VisualizationProvider/index.js.map +1 -1
- package/dist/components/Visualization/components/VisualizationSelector/index.js +17 -17
- package/dist/components/Visualization/components/VisualizationSelector/index.js.map +1 -1
- package/dist/components/Visualization/components/VisualizationTypeProvider/index.js +5 -1
- package/dist/components/Visualization/components/VisualizationTypeProvider/index.js.map +1 -1
- package/dist/components/Visualization/components/VisualizationTypeSelector/index.js +25 -9
- package/dist/components/Visualization/components/VisualizationTypeSelector/index.js.map +1 -1
- package/dist/components/Visualization/index.js +8 -8
- package/dist/components/Visualization/index.js.map +1 -1
- package/dist/{components/ChartAnalytics/ChartAnalytics.stories.mjs → esm/components/ChartAnalytics/ChartAnalytics.stories.js} +1 -1
- package/dist/esm/components/ChartAnalytics/ChartAnalytics.stories.js.map +1 -0
- package/dist/{components/ChartAnalytics/DHIS2Chart.mjs → esm/components/ChartAnalytics/DHIS2Chart.js} +5 -5
- package/dist/esm/components/ChartAnalytics/DHIS2Chart.js.map +1 -0
- package/dist/{components/ChartAnalytics/components/DownloadMenu/components/Menu.mjs → esm/components/ChartAnalytics/components/DownloadMenu/components/Menu.js} +2 -2
- package/dist/esm/components/ChartAnalytics/components/DownloadMenu/components/Menu.js.map +1 -0
- package/dist/{components/ChartAnalytics/components/DownloadMenu/constants/menu.mjs → esm/components/ChartAnalytics/components/DownloadMenu/constants/menu.js} +1 -1
- package/dist/esm/components/ChartAnalytics/components/DownloadMenu/constants/menu.js.map +1 -0
- package/dist/{components/ChartAnalytics/components/DownloadMenu/index.mjs → esm/components/ChartAnalytics/components/DownloadMenu/index.js} +3 -3
- package/dist/esm/components/ChartAnalytics/components/DownloadMenu/index.js.map +1 -0
- package/dist/{components/ChartAnalytics/components/DownloadMenu/interfaces/menu.mjs → esm/components/ChartAnalytics/components/DownloadMenu/interfaces/menu.js} +1 -1
- package/dist/{components/ChartAnalytics/hooks/useChart.mjs → esm/components/ChartAnalytics/hooks/useChart.js} +2 -2
- package/dist/esm/components/ChartAnalytics/hooks/useChart.js.map +1 -0
- package/dist/esm/components/ChartAnalytics/index.js +3 -0
- package/dist/esm/components/ChartAnalytics/index.js.map +1 -0
- package/dist/{components/ChartAnalytics/models/bar.mjs → esm/components/ChartAnalytics/models/bar.js} +2 -2
- package/dist/esm/components/ChartAnalytics/models/bar.js.map +1 -0
- package/dist/{components/ChartAnalytics/models/column.mjs → esm/components/ChartAnalytics/models/column.js} +3 -3
- package/dist/esm/components/ChartAnalytics/models/column.js.map +1 -0
- package/dist/{components/ChartAnalytics/models/index.mjs → esm/components/ChartAnalytics/models/index.js} +1 -4
- package/dist/esm/components/ChartAnalytics/models/index.js.map +1 -0
- package/dist/{components/ChartAnalytics/models/line.mjs → esm/components/ChartAnalytics/models/line.js} +3 -3
- package/dist/esm/components/ChartAnalytics/models/line.js.map +1 -0
- package/dist/{components/ChartAnalytics/models/multi-series.mjs → esm/components/ChartAnalytics/models/multi-series.js} +21 -8
- package/dist/esm/components/ChartAnalytics/models/multi-series.js.map +1 -0
- package/dist/{components/ChartAnalytics/models/pie.mjs → esm/components/ChartAnalytics/models/pie.js} +5 -3
- package/dist/esm/components/ChartAnalytics/models/pie.js.map +1 -0
- package/dist/{components/ChartAnalytics/services/export.mjs → esm/components/ChartAnalytics/services/export.js} +4 -4
- package/dist/esm/components/ChartAnalytics/services/export.js.map +1 -0
- package/dist/esm/components/ChartAnalytics/styles/custom-highchart.css +40 -0
- package/dist/esm/components/ChartAnalytics/styles/custom-highchart.css.map +1 -0
- package/dist/esm/components/ChartAnalytics/types/props.js +3 -0
- package/dist/{components/ChartAnalytics/utils/chart.mjs → esm/components/ChartAnalytics/utils/chart.js} +6 -6
- package/dist/esm/components/ChartAnalytics/utils/chart.js.map +1 -0
- package/dist/{components/CircularProgressDashboard/CircularProgressIndicator.mjs → esm/components/CircularProgressDashboard/CircularProgressIndicator.js} +2 -2
- package/dist/esm/components/CircularProgressDashboard/CircularProgressIndicator.js.map +1 -0
- package/dist/{components/CircularProgressDashboard/CircularProgressIndicator.stories.mjs → esm/components/CircularProgressDashboard/CircularProgressIndicator.stories.js} +1 -1
- package/dist/esm/components/CircularProgressDashboard/CircularProgressIndicator.stories.js.map +1 -0
- package/dist/esm/components/CircularProgressDashboard/index.js +4 -0
- package/dist/esm/components/CircularProgressDashboard/index.js.map +1 -0
- package/dist/esm/components/CircularProgressDashboard/types/props.js +3 -0
- package/dist/{components/DHIS2PivotTable/DHIS2PivotTable.mjs → esm/components/DHIS2PivotTable/DHIS2PivotTable.js} +6 -6
- package/dist/esm/components/DHIS2PivotTable/DHIS2PivotTable.js.map +1 -0
- package/dist/{components/DHIS2PivotTable/DHIS2PivotTable.stories.mjs → esm/components/DHIS2PivotTable/DHIS2PivotTable.stories.js} +1 -1
- package/dist/esm/components/DHIS2PivotTable/DHIS2PivotTable.stories.js.map +1 -0
- package/dist/{components/DHIS2PivotTable/components/Table/index.mjs → esm/components/DHIS2PivotTable/components/Table/index.js} +1 -1
- package/dist/esm/components/DHIS2PivotTable/components/Table/index.js.map +1 -0
- package/dist/esm/components/DHIS2PivotTable/components/TableBody/TableBody.module.css +11 -0
- package/dist/esm/components/DHIS2PivotTable/components/TableBody/TableBody.module.css.map +1 -0
- package/dist/{components/DHIS2PivotTable/components/TableBody/index.mjs → esm/components/DHIS2PivotTable/components/TableBody/index.js} +2 -2
- package/dist/esm/components/DHIS2PivotTable/components/TableBody/index.js.map +1 -0
- package/dist/esm/components/DHIS2PivotTable/components/TableHeaders/TableHeaders.module.css +10 -0
- package/dist/esm/components/DHIS2PivotTable/components/TableHeaders/TableHeaders.module.css.map +1 -0
- package/dist/{components/DHIS2PivotTable/components/TableHeaders/index.mjs → esm/components/DHIS2PivotTable/components/TableHeaders/index.js} +2 -2
- package/dist/esm/components/DHIS2PivotTable/components/TableHeaders/index.js.map +1 -0
- package/dist/esm/components/DHIS2PivotTable/index.js +4 -0
- package/dist/esm/components/DHIS2PivotTable/index.js.map +1 -0
- package/dist/esm/components/DHIS2PivotTable/interfaces/index.js +3 -0
- package/dist/{components/DHIS2PivotTable/services/engine.mjs → esm/components/DHIS2PivotTable/services/engine.js} +1 -7
- package/dist/esm/components/DHIS2PivotTable/services/engine.js.map +1 -0
- package/dist/{components/DHIS2PivotTable/state/engine.mjs → esm/components/DHIS2PivotTable/state/engine.js} +1 -1
- package/dist/esm/components/DHIS2PivotTable/state/engine.js.map +1 -0
- package/dist/{components/Map/DHIS2Map.mjs → esm/components/Map/DHIS2Map.js} +3 -3
- package/dist/esm/components/Map/DHIS2Map.js.map +1 -0
- package/dist/{components/Map/DHIS2Map.stories.mjs → esm/components/Map/DHIS2Map.stories.js} +1 -1
- package/dist/esm/components/Map/DHIS2Map.stories.js.map +1 -0
- package/dist/{components/Map/components/EarthEngineLayerConfiguration/EarthEngineLayerConfigModal.mjs → esm/components/Map/components/EarthEngineLayerConfiguration/EarthEngineLayerConfigModal.js} +2 -2
- package/dist/esm/components/Map/components/EarthEngineLayerConfiguration/EarthEngineLayerConfigModal.js.map +1 -0
- package/dist/{components/Map/components/EarthEngineLayerConfiguration/EarthEngineLayerConfigModal.stories.mjs → esm/components/Map/components/EarthEngineLayerConfiguration/EarthEngineLayerConfigModal.stories.js} +1 -1
- package/dist/esm/components/Map/components/EarthEngineLayerConfiguration/EarthEngineLayerConfigModal.stories.js.map +1 -0
- package/dist/{components/Map/components/EarthEngineLayerConfiguration/EarthEngineLayerConfiguration.mjs → esm/components/Map/components/EarthEngineLayerConfiguration/EarthEngineLayerConfiguration.js} +6 -6
- package/dist/esm/components/Map/components/EarthEngineLayerConfiguration/EarthEngineLayerConfiguration.js.map +1 -0
- package/dist/{components/Map/components/EarthEngineLayerConfiguration/EarthEngineLayerConfiguration.stories.mjs → esm/components/Map/components/EarthEngineLayerConfiguration/EarthEngineLayerConfiguration.stories.js} +1 -1
- package/dist/esm/components/Map/components/EarthEngineLayerConfiguration/EarthEngineLayerConfiguration.stories.js.map +1 -0
- package/dist/{components/Map/components/EarthEngineLayerConfiguration/components/AggregationSelector.mjs → esm/components/Map/components/EarthEngineLayerConfiguration/components/AggregationSelector.js} +2 -2
- package/dist/esm/components/Map/components/EarthEngineLayerConfiguration/components/AggregationSelector.js.map +1 -0
- package/dist/{components/Map/components/EarthEngineLayerConfiguration/components/ColorConfig.mjs → esm/components/Map/components/EarthEngineLayerConfiguration/components/ColorConfig.js} +3 -3
- package/dist/esm/components/Map/components/EarthEngineLayerConfiguration/components/ColorConfig.js.map +1 -0
- package/dist/{components/Map/components/EarthEngineLayerConfiguration/components/Name.mjs → esm/components/Map/components/EarthEngineLayerConfiguration/components/Name.js} +2 -2
- package/dist/esm/components/Map/components/EarthEngineLayerConfiguration/components/Name.js.map +1 -0
- package/dist/{components/Map/components/EarthEngineLayerConfiguration/components/PeriodSelector.mjs → esm/components/Map/components/EarthEngineLayerConfiguration/components/PeriodSelector.js} +2 -2
- package/dist/esm/components/Map/components/EarthEngineLayerConfiguration/components/PeriodSelector.js.map +1 -0
- package/dist/{components/Map/components/EarthEngineLayerConfiguration/components/StylesConfig.mjs → esm/components/Map/components/EarthEngineLayerConfiguration/components/StylesConfig.js} +3 -3
- package/dist/esm/components/Map/components/EarthEngineLayerConfiguration/components/StylesConfig.js.map +1 -0
- package/dist/{components/Map/components/EarthEngineLayerConfiguration/components/TypeField.mjs → esm/components/Map/components/EarthEngineLayerConfiguration/components/TypeField.js} +2 -2
- package/dist/esm/components/Map/components/EarthEngineLayerConfiguration/components/TypeField.js.map +1 -0
- package/dist/{components/Map/components/EarthEngineLayerConfiguration/hooks/data.mjs → esm/components/Map/components/EarthEngineLayerConfiguration/hooks/data.js} +4 -4
- package/dist/esm/components/Map/components/EarthEngineLayerConfiguration/hooks/data.js.map +1 -0
- package/dist/esm/components/Map/components/EarthEngineLayerConfiguration/index.js +4 -0
- package/dist/esm/components/Map/components/EarthEngineLayerConfiguration/index.js.map +1 -0
- package/dist/{components/Map/components/MapArea/index.mjs → esm/components/Map/components/MapArea/index.js} +41 -26
- package/dist/esm/components/Map/components/MapArea/index.js.map +1 -0
- package/dist/esm/components/Map/components/MapArea/interfaces/index.js +3 -0
- package/dist/{components/Map/components/MapControls/components/CustomControl/index.mjs → esm/components/Map/components/MapControls/components/CustomControl/index.js} +1 -1
- package/dist/esm/components/Map/components/MapControls/components/CustomControl/index.js.map +1 -0
- package/dist/{components/Map/components/MapControls/components/DownloadControl/index.mjs → esm/components/Map/components/MapControls/components/DownloadControl/index.js} +1 -1
- package/dist/esm/components/Map/components/MapControls/components/DownloadControl/index.js.map +1 -0
- package/dist/{components/Map/components/MapControls/components/FullscreenControl/index.mjs → esm/components/Map/components/MapControls/components/FullscreenControl/index.js} +1 -1
- package/dist/esm/components/Map/components/MapControls/components/FullscreenControl/index.js.map +1 -0
- package/dist/{components/Map/components/MapControls/index.mjs → esm/components/Map/components/MapControls/index.js} +17 -5
- package/dist/esm/components/Map/components/MapControls/index.js.map +1 -0
- package/dist/{components/Map/components/MapLayer/components/BoundaryLayer/hooks/useBoundaryData.mjs → esm/components/Map/components/MapLayer/components/BoundaryLayer/hooks/useBoundaryData.js} +2 -2
- package/dist/esm/components/Map/components/MapLayer/components/BoundaryLayer/hooks/useBoundaryData.js.map +1 -0
- package/dist/{components/Map/components/MapLayer/components/BoundaryLayer/index.mjs → esm/components/Map/components/MapLayer/components/BoundaryLayer/index.js} +3 -3
- package/dist/esm/components/Map/components/MapLayer/components/BoundaryLayer/index.js.map +1 -0
- package/dist/{components/Map/components/MapLayer/components/GoogleEngineLayer/components/EarthEngineLegend.mjs → esm/components/Map/components/MapLayer/components/GoogleEngineLayer/components/EarthEngineLegend.js} +50 -15
- package/dist/esm/components/Map/components/MapLayer/components/GoogleEngineLayer/components/EarthEngineLegend.js.map +1 -0
- package/dist/{components/Map/components/MapLayer/components/GoogleEngineLayer/constants/index.mjs → esm/components/Map/components/MapLayer/components/GoogleEngineLayer/constants/index.js} +27 -9
- package/dist/esm/components/Map/components/MapLayer/components/GoogleEngineLayer/constants/index.js.map +1 -0
- package/dist/{components/Map/components/MapLayer/components/GoogleEngineLayer/hooks/index.mjs → esm/components/Map/components/MapLayer/components/GoogleEngineLayer/hooks/index.js} +2 -2
- package/dist/esm/components/Map/components/MapLayer/components/GoogleEngineLayer/hooks/index.js.map +1 -0
- package/dist/{components/Map/components/MapLayer/components/GoogleEngineLayer/index.mjs → esm/components/Map/components/MapLayer/components/GoogleEngineLayer/index.js} +5 -5
- package/dist/esm/components/Map/components/MapLayer/components/GoogleEngineLayer/index.js.map +1 -0
- package/dist/esm/components/Map/components/MapLayer/components/GoogleEngineLayer/interfaces/index.js +3 -0
- package/dist/esm/components/Map/components/MapLayer/components/GoogleEngineLayer/services/api.js +31466 -0
- package/dist/esm/components/Map/components/MapLayer/components/GoogleEngineLayer/services/api.js.map +1 -0
- package/dist/{components/Map/components/MapLayer/components/GoogleEngineLayer/services/engine.mjs → esm/components/Map/components/MapLayer/components/GoogleEngineLayer/services/engine.js} +29 -23
- package/dist/esm/components/Map/components/MapLayer/components/GoogleEngineLayer/services/engine.js.map +1 -0
- package/dist/{components/Map/components/MapLayer/components/GoogleEngineLayer/utils/index.mjs → esm/components/Map/components/MapLayer/components/GoogleEngineLayer/utils/index.js} +34 -23
- package/dist/esm/components/Map/components/MapLayer/components/GoogleEngineLayer/utils/index.js.map +1 -0
- package/dist/esm/components/Map/components/MapLayer/components/LegendArea/LegendArea.module.css +10 -0
- package/dist/esm/components/Map/components/MapLayer/components/LegendArea/LegendArea.module.css.map +1 -0
- package/dist/{components/Map/components/MapLayer/components/LegendArea/components/LegendCardHeader/index.mjs → esm/components/Map/components/MapLayer/components/LegendArea/components/LegendCardHeader/index.js} +1 -1
- package/dist/esm/components/Map/components/MapLayer/components/LegendArea/components/LegendCardHeader/index.js.map +1 -0
- package/dist/{components/Map/components/MapLayer/components/LegendArea/index.mjs → esm/components/Map/components/MapLayer/components/LegendArea/index.js} +8 -8
- package/dist/esm/components/Map/components/MapLayer/components/LegendArea/index.js.map +1 -0
- package/dist/{components/Map/components/MapLayer/components/PointLayer/components/PointLegend/index.mjs → esm/components/Map/components/MapLayer/components/PointLayer/components/PointLegend/index.js} +20 -6
- package/dist/esm/components/Map/components/MapLayer/components/PointLayer/components/PointLegend/index.js.map +1 -0
- package/dist/{components/Map/components/MapLayer/components/PointLayer/hooks/index.mjs → esm/components/Map/components/MapLayer/components/PointLayer/hooks/index.js} +2 -2
- package/dist/esm/components/Map/components/MapLayer/components/PointLayer/hooks/index.js.map +1 -0
- package/dist/{components/Map/components/MapLayer/components/PointLayer/index.mjs → esm/components/Map/components/MapLayer/components/PointLayer/index.js} +3 -3
- package/dist/esm/components/Map/components/MapLayer/components/PointLayer/index.js.map +1 -0
- package/dist/{components/Map/components/MapLayer/components/ThematicLayer/components/Bubble/components/BubbleLegend/components/Bubble.mjs → esm/components/Map/components/MapLayer/components/ThematicLayer/components/Bubble/components/BubbleLegend/components/Bubble.js} +33 -5
- package/dist/esm/components/Map/components/MapLayer/components/ThematicLayer/components/Bubble/components/BubbleLegend/components/Bubble.js.map +1 -0
- package/dist/{components/Map/components/MapLayer/components/ThematicLayer/components/Bubble/components/BubbleLegend/components/Bubbles.mjs → esm/components/Map/components/MapLayer/components/ThematicLayer/components/Bubble/components/BubbleLegend/components/Bubbles.js} +27 -8
- package/dist/esm/components/Map/components/MapLayer/components/ThematicLayer/components/Bubble/components/BubbleLegend/components/Bubbles.js.map +1 -0
- package/dist/{components/Map/components/MapLayer/components/ThematicLayer/components/Bubble/components/BubbleLegend/index.mjs → esm/components/Map/components/MapLayer/components/ThematicLayer/components/Bubble/components/BubbleLegend/index.js} +3 -3
- package/dist/esm/components/Map/components/MapLayer/components/ThematicLayer/components/Bubble/components/BubbleLegend/index.js.map +1 -0
- package/dist/{components/Map/components/MapLayer/components/ThematicLayer/components/Bubble/index.mjs → esm/components/Map/components/MapLayer/components/ThematicLayer/components/Bubble/index.js} +3 -3
- package/dist/esm/components/Map/components/MapLayer/components/ThematicLayer/components/Bubble/index.js.map +1 -0
- package/dist/{components/Map/components/MapLayer/components/ThematicLayer/components/Choropleth/components/ChoroplethLegend.mjs → esm/components/Map/components/MapLayer/components/ThematicLayer/components/Choropleth/components/ChoroplethLegend.js} +19 -5
- package/dist/esm/components/Map/components/MapLayer/components/ThematicLayer/components/Choropleth/components/ChoroplethLegend.js.map +1 -0
- package/dist/{components/Map/components/MapLayer/components/ThematicLayer/components/Choropleth/index.mjs → esm/components/Map/components/MapLayer/components/ThematicLayer/components/Choropleth/index.js} +7 -4
- package/dist/esm/components/Map/components/MapLayer/components/ThematicLayer/components/Choropleth/index.js.map +1 -0
- package/dist/{components/Map/components/MapLayer/components/ThematicLayer/components/CustomTooltip/index.mjs → esm/components/Map/components/MapLayer/components/ThematicLayer/components/CustomTooltip/index.js} +2 -2
- package/dist/esm/components/Map/components/MapLayer/components/ThematicLayer/components/CustomTooltip/index.js.map +1 -0
- package/dist/{components/Map/components/MapLayer/components/ThematicLayer/hooks/config.mjs → esm/components/Map/components/MapLayer/components/ThematicLayer/hooks/config.js} +2 -2
- package/dist/esm/components/Map/components/MapLayer/components/ThematicLayer/hooks/config.js.map +1 -0
- package/dist/{components/Map/components/MapLayer/components/ThematicLayer/index.mjs → esm/components/Map/components/MapLayer/components/ThematicLayer/index.js} +4 -4
- package/dist/esm/components/Map/components/MapLayer/components/ThematicLayer/index.js.map +1 -0
- package/dist/esm/components/Map/components/MapLayer/components/ThematicLayer/styles/legends.css +56 -0
- package/dist/esm/components/Map/components/MapLayer/components/ThematicLayer/styles/legends.css.map +1 -0
- package/dist/{components/Map/components/MapLayer/index.mjs → esm/components/Map/components/MapLayer/index.js} +5 -5
- package/dist/esm/components/Map/components/MapLayer/index.js.map +1 -0
- package/dist/esm/components/Map/components/MapLayer/interfaces/index.js +10 -0
- package/dist/esm/components/Map/components/MapLayer/interfaces/index.js.map +1 -0
- package/dist/{components/Map/components/MapProvider/components/MapLayerProvider/hooks/index.mjs → esm/components/Map/components/MapProvider/components/MapLayerProvider/hooks/index.js} +8 -8
- package/dist/esm/components/Map/components/MapProvider/components/MapLayerProvider/hooks/index.js.map +1 -0
- package/dist/{components/Map/components/MapProvider/components/MapLayerProvider/index.mjs → esm/components/Map/components/MapProvider/components/MapLayerProvider/index.js} +4 -4
- package/dist/esm/components/Map/components/MapProvider/components/MapLayerProvider/index.js.map +1 -0
- package/dist/{components/Map/components/MapProvider/hooks/index.mjs → esm/components/Map/components/MapProvider/hooks/index.js} +2 -2
- package/dist/esm/components/Map/components/MapProvider/hooks/index.js.map +1 -0
- package/dist/{components/Map/components/MapProvider/index.mjs → esm/components/Map/components/MapProvider/index.js} +3 -3
- package/dist/esm/components/Map/components/MapProvider/index.js.map +1 -0
- package/dist/{components/Map/components/MapUpdater/index.mjs → esm/components/Map/components/MapUpdater/index.js} +2 -2
- package/dist/esm/components/Map/components/MapUpdater/index.js.map +1 -0
- package/dist/{components/Map/components/ThematicLayerConfiguration/ThematicLayerConfigModal.mjs → esm/components/Map/components/ThematicLayerConfiguration/ThematicLayerConfigModal.js} +2 -2
- package/dist/esm/components/Map/components/ThematicLayerConfiguration/ThematicLayerConfigModal.js.map +1 -0
- package/dist/{components/Map/components/ThematicLayerConfiguration/ThematicLayerConfigModal.stories.mjs → esm/components/Map/components/ThematicLayerConfiguration/ThematicLayerConfigModal.stories.js} +1 -1
- package/dist/esm/components/Map/components/ThematicLayerConfiguration/ThematicLayerConfigModal.stories.js.map +1 -0
- package/dist/{components/Map/components/ThematicLayerConfiguration/ThematicLayerConfiguration.mjs → esm/components/Map/components/ThematicLayerConfiguration/ThematicLayerConfiguration.js} +7 -7
- package/dist/esm/components/Map/components/ThematicLayerConfiguration/ThematicLayerConfiguration.js.map +1 -0
- package/dist/{components/Map/components/ThematicLayerConfiguration/ThematicLayerConfiguration.stories.mjs → esm/components/Map/components/ThematicLayerConfiguration/ThematicLayerConfiguration.stories.js} +1 -1
- package/dist/esm/components/Map/components/ThematicLayerConfiguration/ThematicLayerConfiguration.stories.js.map +1 -0
- package/dist/{components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/components/ColorScale/index.mjs → esm/components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/components/ColorScale/index.js} +16 -4
- package/dist/esm/components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/components/ColorScale/index.js.map +1 -0
- package/dist/{components/Map/constants/colors.mjs → esm/components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/constants/colors.js} +1 -1
- package/dist/esm/components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/constants/colors.js.map +1 -0
- package/dist/{components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/index.mjs → esm/components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/index.js} +3 -3
- package/dist/esm/components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/index.js.map +1 -0
- package/dist/esm/components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/styles/ColorScale.module.css +15 -0
- package/dist/esm/components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/styles/ColorScale.module.css.map +1 -0
- package/dist/esm/components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/styles/ColorScaleSelect.module.css +12 -0
- package/dist/esm/components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/styles/ColorScaleSelect.module.css.map +1 -0
- package/dist/{components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/utils/colors.mjs → esm/components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/utils/colors.js} +13 -5
- package/dist/esm/components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/utils/colors.js.map +1 -0
- package/dist/{components/Map/components/ThematicLayerConfiguration/components/CustomLegend/index.mjs → esm/components/Map/components/ThematicLayerConfiguration/components/CustomLegend/index.js} +3 -3
- package/dist/esm/components/Map/components/ThematicLayerConfiguration/components/CustomLegend/index.js.map +1 -0
- package/dist/{components/Map/components/ThematicLayerConfiguration/components/IndicatorSelectorModal/index.mjs → esm/components/Map/components/ThematicLayerConfiguration/components/IndicatorSelectorModal/index.js} +1 -1
- package/dist/esm/components/Map/components/ThematicLayerConfiguration/components/IndicatorSelectorModal/index.js.map +1 -0
- package/dist/{components/Map/components/ThematicLayerConfiguration/components/LegendSetSelector/index.mjs → esm/components/Map/components/ThematicLayerConfiguration/components/LegendSetSelector/index.js} +1 -1
- package/dist/esm/components/Map/components/ThematicLayerConfiguration/components/LegendSetSelector/index.js.map +1 -0
- package/dist/{components/Map/components/ThematicLayerConfiguration/components/RadiusField.mjs → esm/components/Map/components/ThematicLayerConfiguration/components/RadiusField.js} +1 -1
- package/dist/esm/components/Map/components/ThematicLayerConfiguration/components/RadiusField.js.map +1 -0
- package/dist/{components/Map/components/ThematicLayerConfiguration/components/TypeField.mjs → esm/components/Map/components/ThematicLayerConfiguration/components/TypeField.js} +1 -1
- package/dist/esm/components/Map/components/ThematicLayerConfiguration/components/TypeField.js.map +1 -0
- package/dist/esm/components/Map/components/ThematicLayerConfiguration/index.js +5 -0
- package/dist/esm/components/Map/components/ThematicLayerConfiguration/index.js.map +1 -0
- package/dist/esm/components/Map/components/ThematicLayerConfiguration/types/index.js +3 -0
- package/dist/{components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/constants/colors.mjs → esm/components/Map/constants/colors.js} +1 -1
- package/dist/esm/components/Map/constants/colors.js.map +1 -0
- package/dist/{components/Map/constants/legendSet.mjs → esm/components/Map/constants/legendSet.js} +1 -1
- package/dist/esm/components/Map/constants/legendSet.js.map +1 -0
- package/dist/{components/Map/hooks/map.mjs → esm/components/Map/hooks/map.js} +2 -2
- package/dist/esm/components/Map/hooks/map.js.map +1 -0
- package/dist/esm/components/Map/index.js +7 -0
- package/dist/esm/components/Map/index.js.map +1 -0
- package/dist/esm/components/Map/interfaces/index.js +3 -0
- package/dist/{components/Map/state/index.mjs → esm/components/Map/state/index.js} +1 -1
- package/dist/esm/components/Map/state/index.js.map +1 -0
- package/dist/{components/Map/utils/colors.mjs → esm/components/Map/utils/colors.js} +13 -5
- package/dist/esm/components/Map/utils/colors.js.map +1 -0
- package/dist/{components/Map/utils/helpers.mjs → esm/components/Map/utils/helpers.js} +1 -1
- package/dist/esm/components/Map/utils/helpers.js.map +1 -0
- package/dist/{components/Map/utils/map.mjs → esm/components/Map/utils/map.js} +16 -5
- package/dist/esm/components/Map/utils/map.js.map +1 -0
- package/dist/{components/SingleValueContainer/SingleValueContainer.stories.mjs → esm/components/SingleValueContainer/SingleValueContainer.stories.js} +1 -1
- package/dist/esm/components/SingleValueContainer/SingleValueContainer.stories.js.map +1 -0
- package/dist/{components/SingleValueContainer/SingleValueVisualizer.mjs → esm/components/SingleValueContainer/SingleValueVisualizer.js} +4 -4
- package/dist/esm/components/SingleValueContainer/SingleValueVisualizer.js.map +1 -0
- package/dist/{components/SingleValueContainer/components/SingleValueItem/SingleValueItem.mjs → esm/components/SingleValueContainer/components/SingleValueItem/SingleValueItem.js} +2 -2
- package/dist/esm/components/SingleValueContainer/components/SingleValueItem/SingleValueItem.js.map +1 -0
- package/dist/{components/SingleValueContainer/components/SingleValueItem/SingleValuePercentage.mjs → esm/components/SingleValueContainer/components/SingleValueItem/SingleValuePercentage.js} +1 -1
- package/dist/esm/components/SingleValueContainer/components/SingleValueItem/SingleValuePercentage.js.map +1 -0
- package/dist/esm/components/SingleValueContainer/index.js +5 -0
- package/dist/esm/components/SingleValueContainer/index.js.map +1 -0
- package/dist/esm/components/SingleValueContainer/styles/SingleValueContainer.module.css +32 -0
- package/dist/esm/components/SingleValueContainer/styles/SingleValueContainer.module.css.map +1 -0
- package/dist/esm/components/SingleValueContainer/types/props.js +3 -0
- package/dist/{components/Visualization/components/AnalyticsDataProvider/index.mjs → esm/components/Visualization/components/AnalyticsDataProvider/index.js} +38 -11
- package/dist/esm/components/Visualization/components/AnalyticsDataProvider/index.js.map +1 -0
- package/dist/{components/Visualization/components/DimensionsProvider/index.mjs → esm/components/Visualization/components/DimensionsProvider/index.js} +1 -1
- package/dist/esm/components/Visualization/components/DimensionsProvider/index.js.map +1 -0
- package/dist/{components/Visualization/components/LayoutProvider/index.mjs → esm/components/Visualization/components/LayoutProvider/index.js} +6 -5
- package/dist/esm/components/Visualization/components/LayoutProvider/index.js.map +1 -0
- package/dist/{components/Visualization/components/VisualizationDimensionSelector/index.mjs → esm/components/Visualization/components/VisualizationDimensionSelector/index.js} +4 -4
- package/dist/esm/components/Visualization/components/VisualizationDimensionSelector/index.js.map +1 -0
- package/dist/{components/Visualization/components/VisualizationProvider/index.mjs → esm/components/Visualization/components/VisualizationProvider/index.js} +12 -6
- package/dist/esm/components/Visualization/components/VisualizationProvider/index.js.map +1 -0
- package/dist/{components/Visualization/components/VisualizationSelector/index.mjs → esm/components/Visualization/components/VisualizationSelector/index.js} +8 -8
- package/dist/esm/components/Visualization/components/VisualizationSelector/index.js.map +1 -0
- package/dist/{components/Visualization/components/VisualizationTypeProvider/index.mjs → esm/components/Visualization/components/VisualizationTypeProvider/index.js} +6 -2
- package/dist/esm/components/Visualization/components/VisualizationTypeProvider/index.js.map +1 -0
- package/dist/{components/Visualization/components/VisualizationTypeSelector/index.mjs → esm/components/Visualization/components/VisualizationTypeSelector/index.js} +24 -8
- package/dist/esm/components/Visualization/components/VisualizationTypeSelector/index.js.map +1 -0
- package/dist/{components/Visualization/index.mjs → esm/components/Visualization/index.js} +5 -5
- package/dist/esm/components/Visualization/index.js.map +1 -0
- package/dist/esm/index.js +8 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/index.js +18 -18
- package/dist/index.js.map +1 -1
- package/dist/types/components/ChartAnalytics/DHIS2Chart.d.ts +4 -4
- package/dist/types/components/ChartAnalytics/DHIS2Chart.d.ts.map +1 -1
- package/dist/types/components/ChartAnalytics/components/DownloadMenu/components/Menu.d.ts +2 -2
- package/dist/types/components/ChartAnalytics/components/DownloadMenu/components/Menu.d.ts.map +1 -1
- package/dist/types/components/ChartAnalytics/components/DownloadMenu/index.d.ts +2 -2
- package/dist/types/components/ChartAnalytics/components/DownloadMenu/index.d.ts.map +1 -1
- package/dist/types/components/ChartAnalytics/hooks/useChart.d.ts +1 -1
- package/dist/types/components/ChartAnalytics/hooks/useChart.d.ts.map +1 -1
- package/dist/types/components/ChartAnalytics/index.d.ts +1 -1
- package/dist/types/components/ChartAnalytics/index.d.ts.map +1 -1
- package/dist/types/components/ChartAnalytics/models/bar.d.ts +1 -1
- package/dist/types/components/ChartAnalytics/models/bar.d.ts.map +1 -1
- package/dist/types/components/ChartAnalytics/models/column.d.ts +1 -1
- package/dist/types/components/ChartAnalytics/models/column.d.ts.map +1 -1
- package/dist/types/components/ChartAnalytics/models/index.d.ts +1 -1
- package/dist/types/components/ChartAnalytics/models/index.d.ts.map +1 -1
- package/dist/types/components/ChartAnalytics/models/line.d.ts +1 -1
- package/dist/types/components/ChartAnalytics/models/line.d.ts.map +1 -1
- package/dist/types/components/ChartAnalytics/models/multi-series.d.ts +1 -1
- package/dist/types/components/ChartAnalytics/models/multi-series.d.ts.map +1 -1
- package/dist/types/components/ChartAnalytics/models/pie.d.ts +1 -1
- package/dist/types/components/ChartAnalytics/models/pie.d.ts.map +1 -1
- package/dist/types/components/ChartAnalytics/services/export.d.ts.map +1 -1
- package/dist/types/components/ChartAnalytics/utils/chart.d.ts +2 -2
- package/dist/types/components/ChartAnalytics/utils/chart.d.ts.map +1 -1
- package/dist/types/components/CircularProgressDashboard/CircularProgressIndicator.d.ts +2 -2
- package/dist/types/components/CircularProgressDashboard/CircularProgressIndicator.d.ts.map +1 -1
- package/dist/types/components/CircularProgressDashboard/index.d.ts +2 -2
- package/dist/types/components/CircularProgressDashboard/index.d.ts.map +1 -1
- package/dist/types/components/DHIS2PivotTable/DHIS2PivotTable.d.ts +2 -2
- package/dist/types/components/DHIS2PivotTable/DHIS2PivotTable.d.ts.map +1 -1
- package/dist/types/components/DHIS2PivotTable/components/TableHeaders/index.d.ts +1 -1
- package/dist/types/components/DHIS2PivotTable/components/TableHeaders/index.d.ts.map +1 -1
- package/dist/types/components/DHIS2PivotTable/index.d.ts +2 -2
- package/dist/types/components/DHIS2PivotTable/index.d.ts.map +1 -1
- package/dist/types/components/DHIS2PivotTable/services/engine.d.ts +1 -1
- package/dist/types/components/DHIS2PivotTable/services/engine.d.ts.map +1 -1
- package/dist/types/components/DHIS2PivotTable/state/engine.d.ts +2 -2
- package/dist/types/components/DHIS2PivotTable/state/engine.d.ts.map +1 -1
- package/dist/types/components/Map/DHIS2Map.d.ts +1 -1
- package/dist/types/components/Map/DHIS2Map.d.ts.map +1 -1
- package/dist/types/components/Map/components/EarthEngineLayerConfiguration/EarthEngineLayerConfigModal.d.ts +2 -2
- package/dist/types/components/Map/components/EarthEngineLayerConfiguration/EarthEngineLayerConfigModal.d.ts.map +1 -1
- package/dist/types/components/Map/components/EarthEngineLayerConfiguration/components/AggregationSelector.d.ts +1 -1
- package/dist/types/components/Map/components/EarthEngineLayerConfiguration/components/AggregationSelector.d.ts.map +1 -1
- package/dist/types/components/Map/components/EarthEngineLayerConfiguration/components/ColorConfig.d.ts +1 -1
- package/dist/types/components/Map/components/EarthEngineLayerConfiguration/components/ColorConfig.d.ts.map +1 -1
- package/dist/types/components/Map/components/EarthEngineLayerConfiguration/components/Name.d.ts +1 -1
- package/dist/types/components/Map/components/EarthEngineLayerConfiguration/components/Name.d.ts.map +1 -1
- package/dist/types/components/Map/components/EarthEngineLayerConfiguration/components/PeriodSelector.d.ts +1 -1
- package/dist/types/components/Map/components/EarthEngineLayerConfiguration/components/PeriodSelector.d.ts.map +1 -1
- package/dist/types/components/Map/components/EarthEngineLayerConfiguration/components/StylesConfig.d.ts +1 -1
- package/dist/types/components/Map/components/EarthEngineLayerConfiguration/components/StylesConfig.d.ts.map +1 -1
- package/dist/types/components/Map/components/EarthEngineLayerConfiguration/components/TypeField.d.ts +1 -1
- package/dist/types/components/Map/components/EarthEngineLayerConfiguration/components/TypeField.d.ts.map +1 -1
- package/dist/types/components/Map/components/EarthEngineLayerConfiguration/hooks/data.d.ts +1 -1
- package/dist/types/components/Map/components/EarthEngineLayerConfiguration/hooks/data.d.ts.map +1 -1
- package/dist/types/components/Map/components/EarthEngineLayerConfiguration/index.d.ts +2 -2
- package/dist/types/components/Map/components/EarthEngineLayerConfiguration/index.d.ts.map +1 -1
- package/dist/types/components/Map/components/MapArea/index.d.ts +1 -1
- package/dist/types/components/Map/components/MapArea/index.d.ts.map +1 -1
- package/dist/types/components/Map/components/MapControls/index.d.ts +2 -2
- package/dist/types/components/Map/components/MapControls/index.d.ts.map +1 -1
- package/dist/types/components/Map/components/MapLayer/components/BoundaryLayer/hooks/useBoundaryData.d.ts +1 -1
- package/dist/types/components/Map/components/MapLayer/components/BoundaryLayer/hooks/useBoundaryData.d.ts.map +1 -1
- package/dist/types/components/Map/components/MapLayer/components/BoundaryLayer/index.d.ts +2 -2
- package/dist/types/components/Map/components/MapLayer/components/BoundaryLayer/index.d.ts.map +1 -1
- package/dist/types/components/Map/components/MapLayer/components/GoogleEngineLayer/components/EarthEngineLegend.d.ts +2 -2
- package/dist/types/components/Map/components/MapLayer/components/GoogleEngineLayer/components/EarthEngineLegend.d.ts.map +1 -1
- package/dist/types/components/Map/components/MapLayer/components/GoogleEngineLayer/constants/index.d.ts +1 -1
- package/dist/types/components/Map/components/MapLayer/components/GoogleEngineLayer/constants/index.d.ts.map +1 -1
- package/dist/types/components/Map/components/MapLayer/components/GoogleEngineLayer/hooks/index.d.ts +2 -2
- package/dist/types/components/Map/components/MapLayer/components/GoogleEngineLayer/hooks/index.d.ts.map +1 -1
- package/dist/types/components/Map/components/MapLayer/components/GoogleEngineLayer/index.d.ts +1 -1
- package/dist/types/components/Map/components/MapLayer/components/GoogleEngineLayer/index.d.ts.map +1 -1
- package/dist/types/components/Map/components/MapLayer/components/GoogleEngineLayer/interfaces/index.d.ts +1 -1
- package/dist/types/components/Map/components/MapLayer/components/GoogleEngineLayer/interfaces/index.d.ts.map +1 -1
- package/dist/types/components/Map/components/MapLayer/components/GoogleEngineLayer/services/engine.d.ts +2 -2
- package/dist/types/components/Map/components/MapLayer/components/GoogleEngineLayer/services/engine.d.ts.map +1 -1
- package/dist/types/components/Map/components/MapLayer/components/GoogleEngineLayer/utils/index.d.ts +2 -2
- package/dist/types/components/Map/components/MapLayer/components/GoogleEngineLayer/utils/index.d.ts.map +1 -1
- package/dist/types/components/Map/components/MapLayer/components/LegendArea/index.d.ts +3 -3
- package/dist/types/components/Map/components/MapLayer/components/LegendArea/index.d.ts.map +1 -1
- package/dist/types/components/Map/components/MapLayer/components/PointLayer/components/PointLegend/index.d.ts.map +1 -1
- package/dist/types/components/Map/components/MapLayer/components/PointLayer/hooks/index.d.ts +1 -1
- package/dist/types/components/Map/components/MapLayer/components/PointLayer/hooks/index.d.ts.map +1 -1
- package/dist/types/components/Map/components/MapLayer/components/PointLayer/index.d.ts +1 -1
- package/dist/types/components/Map/components/MapLayer/components/PointLayer/index.d.ts.map +1 -1
- package/dist/types/components/Map/components/MapLayer/components/ThematicLayer/components/Bubble/components/BubbleLegend/components/Bubble.d.ts +1 -1
- package/dist/types/components/Map/components/MapLayer/components/ThematicLayer/components/Bubble/components/BubbleLegend/components/Bubble.d.ts.map +1 -1
- package/dist/types/components/Map/components/MapLayer/components/ThematicLayer/components/Bubble/components/BubbleLegend/components/Bubbles.d.ts +2 -2
- package/dist/types/components/Map/components/MapLayer/components/ThematicLayer/components/Bubble/components/BubbleLegend/components/Bubbles.d.ts.map +1 -1
- package/dist/types/components/Map/components/MapLayer/components/ThematicLayer/components/Bubble/components/BubbleLegend/index.d.ts +1 -1
- package/dist/types/components/Map/components/MapLayer/components/ThematicLayer/components/Bubble/components/BubbleLegend/index.d.ts.map +1 -1
- package/dist/types/components/Map/components/MapLayer/components/ThematicLayer/components/Bubble/index.d.ts +2 -2
- package/dist/types/components/Map/components/MapLayer/components/ThematicLayer/components/Bubble/index.d.ts.map +1 -1
- package/dist/types/components/Map/components/MapLayer/components/ThematicLayer/components/Choropleth/components/ChoroplethLegend.d.ts +1 -1
- package/dist/types/components/Map/components/MapLayer/components/ThematicLayer/components/Choropleth/components/ChoroplethLegend.d.ts.map +1 -1
- package/dist/types/components/Map/components/MapLayer/components/ThematicLayer/components/Choropleth/index.d.ts +4 -4
- package/dist/types/components/Map/components/MapLayer/components/ThematicLayer/components/Choropleth/index.d.ts.map +1 -1
- package/dist/types/components/Map/components/MapLayer/components/ThematicLayer/components/CustomTooltip/index.d.ts +2 -2
- package/dist/types/components/Map/components/MapLayer/components/ThematicLayer/components/CustomTooltip/index.d.ts.map +1 -1
- package/dist/types/components/Map/components/MapLayer/components/ThematicLayer/hooks/config.d.ts +1 -1
- package/dist/types/components/Map/components/MapLayer/components/ThematicLayer/hooks/config.d.ts.map +1 -1
- package/dist/types/components/Map/components/MapLayer/components/ThematicLayer/index.d.ts +1 -1
- package/dist/types/components/Map/components/MapLayer/components/ThematicLayer/index.d.ts.map +1 -1
- package/dist/types/components/Map/components/MapLayer/index.d.ts +2 -2
- package/dist/types/components/Map/components/MapLayer/index.d.ts.map +1 -1
- package/dist/types/components/Map/components/MapLayer/interfaces/index.d.ts +4 -4
- package/dist/types/components/Map/components/MapLayer/interfaces/index.d.ts.map +1 -1
- package/dist/types/components/Map/components/MapProvider/components/MapLayerProvider/index.d.ts +2 -2
- package/dist/types/components/Map/components/MapProvider/components/MapLayerProvider/index.d.ts.map +1 -1
- package/dist/types/components/Map/components/MapProvider/hooks/index.d.ts +3 -3
- package/dist/types/components/Map/components/MapProvider/index.d.ts +2 -2
- package/dist/types/components/Map/components/MapProvider/index.d.ts.map +1 -1
- package/dist/types/components/Map/components/MapUpdater/index.d.ts +1 -1
- package/dist/types/components/Map/components/MapUpdater/index.d.ts.map +1 -1
- package/dist/types/components/Map/components/ThematicLayerConfiguration/ThematicLayerConfiguration.d.ts +2 -2
- package/dist/types/components/Map/components/ThematicLayerConfiguration/ThematicLayerConfiguration.d.ts.map +1 -1
- package/dist/types/components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/components/ColorScale/index.d.ts +1 -1
- package/dist/types/components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/components/ColorScale/index.d.ts.map +1 -1
- package/dist/types/components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/index.d.ts +1 -1
- package/dist/types/components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/index.d.ts.map +1 -1
- package/dist/types/components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/utils/colors.d.ts +1 -1
- package/dist/types/components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/utils/colors.d.ts.map +1 -1
- package/dist/types/components/Map/components/ThematicLayerConfiguration/components/CustomLegend/index.d.ts +1 -1
- package/dist/types/components/Map/components/ThematicLayerConfiguration/components/CustomLegend/index.d.ts.map +1 -1
- package/dist/types/components/Map/components/ThematicLayerConfiguration/index.d.ts +3 -3
- package/dist/types/components/Map/components/ThematicLayerConfiguration/index.d.ts.map +1 -1
- package/dist/types/components/Map/hooks/map.d.ts.map +1 -1
- package/dist/types/components/Map/index.d.ts +5 -5
- package/dist/types/components/Map/index.d.ts.map +1 -1
- package/dist/types/components/Map/interfaces/index.d.ts +2 -2
- package/dist/types/components/Map/interfaces/index.d.ts.map +1 -1
- package/dist/types/components/Map/state/index.d.ts +2 -2
- package/dist/types/components/Map/state/index.d.ts.map +1 -1
- package/dist/types/components/Map/utils/colors.d.ts +1 -1
- package/dist/types/components/Map/utils/colors.d.ts.map +1 -1
- package/dist/types/components/Map/utils/map.d.ts.map +1 -1
- package/dist/types/components/SingleValueContainer/SingleValueVisualizer.d.ts +3 -3
- package/dist/types/components/SingleValueContainer/SingleValueVisualizer.d.ts.map +1 -1
- package/dist/types/components/SingleValueContainer/components/SingleValueItem/SingleValueItem.d.ts +1 -1
- package/dist/types/components/SingleValueContainer/components/SingleValueItem/SingleValueItem.d.ts.map +1 -1
- package/dist/types/components/SingleValueContainer/index.d.ts +3 -2
- package/dist/types/components/SingleValueContainer/index.d.ts.map +1 -1
- package/dist/types/components/Visualization/components/AnalyticsDataProvider/index.d.ts +1 -1
- package/dist/types/components/Visualization/components/AnalyticsDataProvider/index.d.ts.map +1 -1
- package/dist/types/components/Visualization/components/LayoutProvider/index.d.ts +2 -2
- package/dist/types/components/Visualization/components/LayoutProvider/index.d.ts.map +1 -1
- package/dist/types/components/Visualization/components/VisualizationDimensionSelector/index.d.ts +1 -1
- package/dist/types/components/Visualization/components/VisualizationDimensionSelector/index.d.ts.map +1 -1
- package/dist/types/components/Visualization/components/VisualizationProvider/index.d.ts +4 -4
- package/dist/types/components/Visualization/components/VisualizationProvider/index.d.ts.map +1 -1
- package/dist/types/components/Visualization/components/VisualizationSelector/index.d.ts +10 -10
- package/dist/types/components/Visualization/components/VisualizationSelector/index.d.ts.map +1 -1
- package/dist/types/components/Visualization/components/VisualizationTypeProvider/index.d.ts +2 -2
- package/dist/types/components/Visualization/components/VisualizationTypeProvider/index.d.ts.map +1 -1
- package/dist/types/components/Visualization/components/VisualizationTypeSelector/index.d.ts +1 -1
- package/dist/types/components/Visualization/components/VisualizationTypeSelector/index.d.ts.map +1 -1
- package/dist/types/components/Visualization/index.d.ts +6 -6
- package/dist/types/components/Visualization/index.d.ts.map +1 -1
- package/dist/types/index.d.ts +6 -6
- package/dist/types/index.d.ts.map +1 -1
- package/package.json +5 -5
- package/dist/components/ChartAnalytics/ChartAnalytics.stories.mjs.map +0 -1
- package/dist/components/ChartAnalytics/DHIS2Chart.mjs.map +0 -1
- package/dist/components/ChartAnalytics/components/DownloadMenu/components/Menu.mjs.map +0 -1
- package/dist/components/ChartAnalytics/components/DownloadMenu/constants/menu.mjs.map +0 -1
- package/dist/components/ChartAnalytics/components/DownloadMenu/index.mjs.map +0 -1
- package/dist/components/ChartAnalytics/hooks/useChart.mjs.map +0 -1
- package/dist/components/ChartAnalytics/index.mjs +0 -3
- package/dist/components/ChartAnalytics/index.mjs.map +0 -1
- package/dist/components/ChartAnalytics/models/bar.mjs.map +0 -1
- package/dist/components/ChartAnalytics/models/column.mjs.map +0 -1
- package/dist/components/ChartAnalytics/models/index.mjs.map +0 -1
- package/dist/components/ChartAnalytics/models/line.mjs.map +0 -1
- package/dist/components/ChartAnalytics/models/multi-series.mjs.map +0 -1
- package/dist/components/ChartAnalytics/models/pie.mjs.map +0 -1
- package/dist/components/ChartAnalytics/services/export.mjs.map +0 -1
- package/dist/components/ChartAnalytics/types/props.mjs +0 -3
- package/dist/components/ChartAnalytics/utils/chart.mjs.map +0 -1
- package/dist/components/CircularProgressDashboard/CircularProgressIndicator.mjs.map +0 -1
- package/dist/components/CircularProgressDashboard/CircularProgressIndicator.stories.mjs.map +0 -1
- package/dist/components/CircularProgressDashboard/index.mjs +0 -4
- package/dist/components/CircularProgressDashboard/index.mjs.map +0 -1
- package/dist/components/CircularProgressDashboard/types/props.mjs +0 -3
- package/dist/components/DHIS2PivotTable/DHIS2PivotTable.mjs.map +0 -1
- package/dist/components/DHIS2PivotTable/DHIS2PivotTable.stories.mjs.map +0 -1
- package/dist/components/DHIS2PivotTable/components/Table/index.mjs.map +0 -1
- package/dist/components/DHIS2PivotTable/components/TableBody/index.mjs.map +0 -1
- package/dist/components/DHIS2PivotTable/components/TableHeaders/index.mjs.map +0 -1
- package/dist/components/DHIS2PivotTable/index.mjs +0 -4
- package/dist/components/DHIS2PivotTable/index.mjs.map +0 -1
- package/dist/components/DHIS2PivotTable/interfaces/index.mjs +0 -3
- package/dist/components/DHIS2PivotTable/services/engine.mjs.map +0 -1
- package/dist/components/DHIS2PivotTable/state/engine.mjs.map +0 -1
- package/dist/components/Map/DHIS2Map.mjs.map +0 -1
- package/dist/components/Map/DHIS2Map.stories.mjs.map +0 -1
- package/dist/components/Map/components/EarthEngineLayerConfiguration/EarthEngineLayerConfigModal.mjs.map +0 -1
- package/dist/components/Map/components/EarthEngineLayerConfiguration/EarthEngineLayerConfigModal.stories.mjs.map +0 -1
- package/dist/components/Map/components/EarthEngineLayerConfiguration/EarthEngineLayerConfiguration.mjs.map +0 -1
- package/dist/components/Map/components/EarthEngineLayerConfiguration/EarthEngineLayerConfiguration.stories.mjs.map +0 -1
- package/dist/components/Map/components/EarthEngineLayerConfiguration/components/AggregationSelector.mjs.map +0 -1
- package/dist/components/Map/components/EarthEngineLayerConfiguration/components/ColorConfig.mjs.map +0 -1
- package/dist/components/Map/components/EarthEngineLayerConfiguration/components/Name.mjs.map +0 -1
- package/dist/components/Map/components/EarthEngineLayerConfiguration/components/PeriodSelector.mjs.map +0 -1
- package/dist/components/Map/components/EarthEngineLayerConfiguration/components/StylesConfig.mjs.map +0 -1
- package/dist/components/Map/components/EarthEngineLayerConfiguration/components/TypeField.mjs.map +0 -1
- package/dist/components/Map/components/EarthEngineLayerConfiguration/hooks/data.mjs.map +0 -1
- package/dist/components/Map/components/EarthEngineLayerConfiguration/index.mjs +0 -4
- package/dist/components/Map/components/EarthEngineLayerConfiguration/index.mjs.map +0 -1
- package/dist/components/Map/components/MapArea/index.mjs.map +0 -1
- package/dist/components/Map/components/MapArea/interfaces/index.mjs +0 -3
- package/dist/components/Map/components/MapControls/components/CustomControl/index.mjs.map +0 -1
- package/dist/components/Map/components/MapControls/components/DownloadControl/index.mjs.map +0 -1
- package/dist/components/Map/components/MapControls/components/FullscreenControl/index.mjs.map +0 -1
- package/dist/components/Map/components/MapControls/index.mjs.map +0 -1
- package/dist/components/Map/components/MapLayer/components/BoundaryLayer/hooks/useBoundaryData.mjs.map +0 -1
- package/dist/components/Map/components/MapLayer/components/BoundaryLayer/index.mjs.map +0 -1
- package/dist/components/Map/components/MapLayer/components/GoogleEngineLayer/components/EarthEngineLegend.mjs.map +0 -1
- package/dist/components/Map/components/MapLayer/components/GoogleEngineLayer/constants/index.mjs.map +0 -1
- package/dist/components/Map/components/MapLayer/components/GoogleEngineLayer/hooks/index.mjs.map +0 -1
- package/dist/components/Map/components/MapLayer/components/GoogleEngineLayer/index.mjs.map +0 -1
- package/dist/components/Map/components/MapLayer/components/GoogleEngineLayer/interfaces/index.mjs +0 -3
- package/dist/components/Map/components/MapLayer/components/GoogleEngineLayer/services/engine.mjs.map +0 -1
- package/dist/components/Map/components/MapLayer/components/GoogleEngineLayer/utils/index.mjs.map +0 -1
- package/dist/components/Map/components/MapLayer/components/LegendArea/components/LegendCardHeader/index.mjs.map +0 -1
- package/dist/components/Map/components/MapLayer/components/LegendArea/index.mjs.map +0 -1
- package/dist/components/Map/components/MapLayer/components/PointLayer/components/PointLegend/index.mjs.map +0 -1
- package/dist/components/Map/components/MapLayer/components/PointLayer/hooks/index.mjs.map +0 -1
- package/dist/components/Map/components/MapLayer/components/PointLayer/index.mjs.map +0 -1
- package/dist/components/Map/components/MapLayer/components/ThematicLayer/components/Bubble/components/BubbleLegend/components/Bubble.mjs.map +0 -1
- package/dist/components/Map/components/MapLayer/components/ThematicLayer/components/Bubble/components/BubbleLegend/components/Bubbles.mjs.map +0 -1
- package/dist/components/Map/components/MapLayer/components/ThematicLayer/components/Bubble/components/BubbleLegend/index.mjs.map +0 -1
- package/dist/components/Map/components/MapLayer/components/ThematicLayer/components/Bubble/index.mjs.map +0 -1
- package/dist/components/Map/components/MapLayer/components/ThematicLayer/components/Choropleth/components/ChoroplethLegend.mjs.map +0 -1
- package/dist/components/Map/components/MapLayer/components/ThematicLayer/components/Choropleth/index.mjs.map +0 -1
- package/dist/components/Map/components/MapLayer/components/ThematicLayer/components/CustomTooltip/index.mjs.map +0 -1
- package/dist/components/Map/components/MapLayer/components/ThematicLayer/hooks/config.mjs.map +0 -1
- package/dist/components/Map/components/MapLayer/components/ThematicLayer/index.mjs.map +0 -1
- package/dist/components/Map/components/MapLayer/index.mjs.map +0 -1
- package/dist/components/Map/components/MapLayer/interfaces/index.mjs +0 -5
- package/dist/components/Map/components/MapLayer/interfaces/index.mjs.map +0 -1
- package/dist/components/Map/components/MapProvider/components/MapLayerProvider/hooks/index.mjs.map +0 -1
- package/dist/components/Map/components/MapProvider/components/MapLayerProvider/index.mjs.map +0 -1
- package/dist/components/Map/components/MapProvider/hooks/index.mjs.map +0 -1
- package/dist/components/Map/components/MapProvider/index.mjs.map +0 -1
- package/dist/components/Map/components/MapUpdater/index.mjs.map +0 -1
- package/dist/components/Map/components/ThematicLayerConfiguration/ThematicLayerConfigModal.mjs.map +0 -1
- package/dist/components/Map/components/ThematicLayerConfiguration/ThematicLayerConfigModal.stories.mjs.map +0 -1
- package/dist/components/Map/components/ThematicLayerConfiguration/ThematicLayerConfiguration.mjs.map +0 -1
- package/dist/components/Map/components/ThematicLayerConfiguration/ThematicLayerConfiguration.stories.mjs.map +0 -1
- package/dist/components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/components/ColorScale/index.mjs.map +0 -1
- package/dist/components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/constants/colors.mjs.map +0 -1
- package/dist/components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/index.mjs.map +0 -1
- package/dist/components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/utils/colors.mjs.map +0 -1
- package/dist/components/Map/components/ThematicLayerConfiguration/components/CustomLegend/index.mjs.map +0 -1
- package/dist/components/Map/components/ThematicLayerConfiguration/components/IndicatorSelectorModal/index.mjs.map +0 -1
- package/dist/components/Map/components/ThematicLayerConfiguration/components/LegendSetSelector/index.mjs.map +0 -1
- package/dist/components/Map/components/ThematicLayerConfiguration/components/RadiusField.mjs.map +0 -1
- package/dist/components/Map/components/ThematicLayerConfiguration/components/TypeField.mjs.map +0 -1
- package/dist/components/Map/components/ThematicLayerConfiguration/index.mjs +0 -5
- package/dist/components/Map/components/ThematicLayerConfiguration/index.mjs.map +0 -1
- package/dist/components/Map/components/ThematicLayerConfiguration/types/index.mjs +0 -3
- package/dist/components/Map/constants/colors.mjs.map +0 -1
- package/dist/components/Map/constants/legendSet.mjs.map +0 -1
- package/dist/components/Map/hooks/map.mjs.map +0 -1
- package/dist/components/Map/index.mjs +0 -7
- package/dist/components/Map/index.mjs.map +0 -1
- package/dist/components/Map/interfaces/index.mjs +0 -3
- package/dist/components/Map/state/index.mjs.map +0 -1
- package/dist/components/Map/utils/colors.mjs.map +0 -1
- package/dist/components/Map/utils/helpers.mjs.map +0 -1
- package/dist/components/Map/utils/map.mjs.map +0 -1
- package/dist/components/SingleValueContainer/SingleValueContainer.stories.mjs.map +0 -1
- package/dist/components/SingleValueContainer/SingleValueVisualizer.mjs.map +0 -1
- package/dist/components/SingleValueContainer/components/SingleValueItem/SingleValueItem.mjs.map +0 -1
- package/dist/components/SingleValueContainer/components/SingleValueItem/SingleValuePercentage.mjs.map +0 -1
- package/dist/components/SingleValueContainer/index.mjs +0 -4
- package/dist/components/SingleValueContainer/index.mjs.map +0 -1
- package/dist/components/SingleValueContainer/types/props.mjs +0 -3
- package/dist/components/Visualization/components/AnalyticsDataProvider/index.mjs.map +0 -1
- package/dist/components/Visualization/components/DimensionsProvider/index.mjs.map +0 -1
- package/dist/components/Visualization/components/LayoutProvider/index.mjs.map +0 -1
- package/dist/components/Visualization/components/VisualizationDimensionSelector/index.mjs.map +0 -1
- package/dist/components/Visualization/components/VisualizationProvider/index.mjs.map +0 -1
- package/dist/components/Visualization/components/VisualizationSelector/index.mjs.map +0 -1
- package/dist/components/Visualization/components/VisualizationTypeProvider/index.mjs.map +0 -1
- package/dist/components/Visualization/components/VisualizationTypeSelector/index.mjs.map +0 -1
- package/dist/components/Visualization/index.mjs.map +0 -1
- package/dist/index.mjs +0 -8
- package/dist/index.mjs.map +0 -1
- /package/dist/{components/ChartAnalytics/components/DownloadMenu/interfaces/menu.mjs.map → esm/components/ChartAnalytics/components/DownloadMenu/interfaces/menu.js.map} +0 -0
- /package/dist/{components/ChartAnalytics/types/props.mjs.map → esm/components/ChartAnalytics/types/props.js.map} +0 -0
- /package/dist/{components/CircularProgressDashboard/types/props.mjs.map → esm/components/CircularProgressDashboard/types/props.js.map} +0 -0
- /package/dist/{components/DHIS2PivotTable/interfaces/index.mjs.map → esm/components/DHIS2PivotTable/interfaces/index.js.map} +0 -0
- /package/dist/{components/Map/components/MapArea/interfaces/index.mjs.map → esm/components/Map/components/MapArea/interfaces/index.js.map} +0 -0
- /package/dist/{components/Map/components/MapLayer/components/GoogleEngineLayer/interfaces/index.mjs.map → esm/components/Map/components/MapLayer/components/GoogleEngineLayer/interfaces/index.js.map} +0 -0
- /package/dist/{components/Map/components/ThematicLayerConfiguration/types/index.mjs.map → esm/components/Map/components/ThematicLayerConfiguration/types/index.js.map} +0 -0
- /package/dist/{components/Map/interfaces/index.mjs.map → esm/components/Map/interfaces/index.js.map} +0 -0
- /package/dist/{components/SingleValueContainer/types/props.mjs.map → esm/components/SingleValueContainer/types/props.js.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../src/components/Map/components/MapLayer/interfaces/index.ts"],"names":[],"mappings":"AASO,MAAM,gCAAgC,
|
|
1
|
+
{"version":3,"sources":["../../../../../../src/components/Map/components/MapLayer/interfaces/index.ts"],"names":[],"mappings":"AASO,MAAM,gCAAgC;AAAA,EAC5C;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACD","sourcesContent":["import type { Legend } from \"@hisptz/dhis2-utils\";\nimport { MapOrgUnit, PointOrgUnit } from \"../../../interfaces/index.js\";\nimport { LegendColorScale } from \"../../../utils/colors.js\";\nimport { EarthEngineOptions } from \"../components/GoogleEngineLayer/interfaces/index.js\";\nimport { EarthEngine } from \"../components/GoogleEngineLayer/services/engine.js\";\n\nexport type BoundaryLayerType = \"basemap\" | \"overlay\";\nexport type ThematicLayerType = \"choropleth\" | \"bubble\";\n\nexport const SUPPORTED_EARTH_ENGINE_LAYERS = [\n\t\"population\",\n\t\"footprints\",\n\t\"elevation\",\n\t\"landCover\",\n];\n\nexport type GoogleEngineLayerType =\n\t| \"population\"\n\t| \"footprints\"\n\t| \"elevation\"\n\t| \"landCover\";\n\nexport interface CustomBoundaryLayer extends CustomMapLayer {\n\tid: string;\n\ttype: BoundaryLayerType;\n\tenabled: boolean;\n}\n\nexport interface EarthEngineLayerConfig extends CustomMapLayer {\n\ttype: GoogleEngineLayerType;\n\taggregations?: string[];\n\tname?: string;\n\tfilters?: {\n\t\tperiod: string;\n\t};\n\tparams?: {\n\t\tmin: number;\n\t\tmax: number;\n\t\tpalette?: string;\n\t};\n}\n\nexport interface CustomGoogleEngineLayer extends CustomMapLayer {\n\ttype: GoogleEngineLayerType;\n\toptions: EarthEngineOptions;\n\taggregations?: string[];\n\tname: string;\n\turl: string;\n\tengine?: EarthEngine;\n}\n\nexport interface CustomPointLayer extends CustomMapLayer {\n\tid: string;\n\ttype: \"point\";\n\tlabel?: string;\n\tlevel?: string | number;\n\tgroup?: string;\n\tstyle?: {\n\t\ticon?: string;\n\t\tgroupSet?: string;\n\t\torgUnitGroups?: Array<{ name: string; symbol: string }>;\n\t};\n\tpoints?: Array<PointOrgUnit>;\n}\n\nexport type DataItemType = \"dataElement\" | \"indicator\" | \"programIndicator\";\n\nexport interface ThematicLayerDataItem {\n\tid: string;\n\tdisplayName: string;\n\ttype: DataItemType;\n\tlegendSet?: string;\n\tlegendConfig?: {\n\t\tcolorClass: LegendColorScale;\n\t\tscale: number;\n\t};\n}\n\nexport interface ThematicLayerControl {\n\tposition: \"topleft\" | \"topright\" | \"bottomleft\" | \"bottomright\";\n\tenabled: boolean;\n}\n\nexport interface ThematicLayerData {\n\torgUnit: MapOrgUnit;\n\tdata?: number;\n\tdataItem: ThematicLayerDataItem;\n}\n\nexport interface ThematicLayerRawData {\n\torgUnit: string;\n\tdata?: number;\n\tdataItem: string;\n}\n\nexport interface CustomChoroplethLayer extends CustomMapLayer {\n\tenabled: boolean;\n\tname?: string;\n\tdata: ThematicLayerData[];\n\tdataItem: ThematicLayerDataItem;\n\ttype: \"choropleth\";\n\tcontrol?: ThematicLayerControl;\n\tlegends?: Legend[];\n}\n\nexport interface CustomBubbleLayer extends CustomMapLayer {\n\tenabled: boolean;\n\tname?: string;\n\tdata: ThematicLayerData[];\n\tdataItem: ThematicLayerDataItem;\n\ttype: \"bubble\";\n\tcontrol?: ThematicLayerControl;\n\tlegends?: Legend[];\n\tradius?: {\n\t\tmin: number;\n\t\tmax: number;\n\t};\n}\n\nexport type CustomThematicLayer = CustomBubbleLayer | CustomChoroplethLayer;\n\nexport interface ThematicLayerConfig {\n\tid: string;\n\tdata?: ThematicLayerRawData[];\n\tenabled: boolean;\n\tname?: string;\n\tdataItem: ThematicLayerDataItem;\n\ttype: ThematicLayerType;\n\tcontrol?: ThematicLayerControl;\n\tradius?: {\n\t\tmin: number;\n\t\tmax: number;\n\t};\n}\n\nexport interface CustomMapLayer {\n\tid: string;\n\ttype: string;\n\tenabled: boolean;\n}\n\nexport type MapLayer =\n\t| CustomBoundaryLayer\n\t| ThematicLayerConfig\n\t| CustomPointLayer\n\t| CustomGoogleEngineLayer;\n\nexport interface MapLayerProps {\n\tenabled: boolean;\n\ttype: \"boundary\" | \"thematic\" | \"external\" | \"point\" | \"earthEngine\";\n\tlayer: MapLayer;\n}\n"]}
|
package/dist/components/Map/components/MapProvider/components/MapLayerProvider/hooks/index.js
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var lodash = require('lodash');
|
|
4
|
-
var
|
|
4
|
+
var index_js = require('../../../hooks/index.js');
|
|
5
5
|
var react = require('react');
|
|
6
|
-
var
|
|
6
|
+
var map_js = require('../../../../../utils/map.js');
|
|
7
7
|
var appRuntime = require('@dhis2/app-runtime');
|
|
8
8
|
var asyncEs = require('async-es');
|
|
9
|
-
var
|
|
10
|
-
var
|
|
11
|
-
var
|
|
12
|
-
var
|
|
13
|
-
var
|
|
9
|
+
var colors_js = require('../../../../../utils/colors.js');
|
|
10
|
+
var index_js$1 = require('../../../../MapLayer/components/GoogleEngineLayer/hooks/index.js');
|
|
11
|
+
var useBoundaryData_js = require('../../../../MapLayer/components/BoundaryLayer/hooks/useBoundaryData.js');
|
|
12
|
+
var engine_js = require('../../../../MapLayer/components/GoogleEngineLayer/services/engine.js');
|
|
13
|
+
var index_js$2 = require('../../../../MapLayer/components/GoogleEngineLayer/constants/index.js');
|
|
14
14
|
|
|
15
15
|
const analyticsQuery = {
|
|
16
16
|
analytics: {
|
|
@@ -74,10 +74,10 @@ const legendSetsQuery = {
|
|
|
74
74
|
function useThematicLayers() {
|
|
75
75
|
const engine = appRuntime.useDataEngine();
|
|
76
76
|
const [loading, setLoading] = react.useState(false);
|
|
77
|
-
const { orgUnits, orgUnitSelection } =
|
|
78
|
-
const { periods, range } =
|
|
77
|
+
const { orgUnits, orgUnitSelection } = index_js.useMapOrganisationUnit();
|
|
78
|
+
const { periods, range } = index_js.useMapPeriods() ?? {};
|
|
79
79
|
const ou = react.useMemo(
|
|
80
|
-
() =>
|
|
80
|
+
() => map_js.getOrgUnitsSelection(orgUnitSelection),
|
|
81
81
|
[orgUnitSelection]
|
|
82
82
|
);
|
|
83
83
|
const pe = react.useMemo(() => periods?.map((pe2) => pe2.id), [periods]);
|
|
@@ -89,8 +89,8 @@ function useThematicLayers() {
|
|
|
89
89
|
};
|
|
90
90
|
}
|
|
91
91
|
return {
|
|
92
|
-
startDate:
|
|
93
|
-
endDate:
|
|
92
|
+
startDate: map_js.sanitizeDate(range.start.toDateString()),
|
|
93
|
+
endDate: map_js.sanitizeDate(range.end.toDateString())
|
|
94
94
|
};
|
|
95
95
|
}, [range]);
|
|
96
96
|
const sanitizeData = (data, layer) => {
|
|
@@ -148,14 +148,14 @@ function useThematicLayers() {
|
|
|
148
148
|
}
|
|
149
149
|
} else {
|
|
150
150
|
const { scale, colorClass } = layer.dataItem.legendConfig ?? {
|
|
151
|
-
scale:
|
|
152
|
-
colorClass:
|
|
151
|
+
scale: colors_js.defaultClasses,
|
|
152
|
+
colorClass: colors_js.defaultColorScaleName
|
|
153
153
|
};
|
|
154
154
|
const sortedData = lodash.sortBy(
|
|
155
155
|
layer.data.filter((datum) => !!datum.data),
|
|
156
156
|
"data"
|
|
157
157
|
);
|
|
158
|
-
const autoLegends =
|
|
158
|
+
const autoLegends = map_js.generateLegends(
|
|
159
159
|
lodash.last(sortedData)?.data ?? 0,
|
|
160
160
|
lodash.head(sortedData)?.data ?? 0,
|
|
161
161
|
{
|
|
@@ -233,13 +233,13 @@ function useThematicLayers() {
|
|
|
233
233
|
}
|
|
234
234
|
function usePointLayer() {
|
|
235
235
|
const engine = appRuntime.useDataEngine();
|
|
236
|
-
const { orgUnitSelection } =
|
|
236
|
+
const { orgUnitSelection } = index_js.useMapOrganisationUnit();
|
|
237
237
|
const [loading, setLoading] = react.useState(false);
|
|
238
238
|
const sanitizePointData = react.useCallback(
|
|
239
239
|
(orgUnitData, groupSetData) => {
|
|
240
240
|
const { analytics, layer } = orgUnitData ?? {};
|
|
241
|
-
const rawOrgUnits =
|
|
242
|
-
const geoJSONObjects =
|
|
241
|
+
const rawOrgUnits = map_js.sanitizeOrgUnits(analytics?.metaData);
|
|
242
|
+
const geoJSONObjects = map_js.toGeoJson(
|
|
243
243
|
layer?.filter((bound) => bound.co)
|
|
244
244
|
);
|
|
245
245
|
return lodash.compact(
|
|
@@ -282,7 +282,7 @@ function usePointLayer() {
|
|
|
282
282
|
const level = layer.level ? `LEVEL-${layer.level}` : void 0;
|
|
283
283
|
const group = layer.group ? `OU_GROUP-${layer.group}` : void 0;
|
|
284
284
|
const ous = [
|
|
285
|
-
...
|
|
285
|
+
...map_js.getOrgUnitsSelection(orgUnitSelection),
|
|
286
286
|
level,
|
|
287
287
|
group
|
|
288
288
|
];
|
|
@@ -330,8 +330,8 @@ function usePointLayer() {
|
|
|
330
330
|
};
|
|
331
331
|
}
|
|
332
332
|
function useGoogleEngineLayers() {
|
|
333
|
-
const { refresh } =
|
|
334
|
-
const orgUnits =
|
|
333
|
+
const { refresh } = index_js$1.useGoogleEngineToken();
|
|
334
|
+
const orgUnits = useBoundaryData_js.useBoundaryData();
|
|
335
335
|
async function getImageUrl(earthEngine, { filters }) {
|
|
336
336
|
if (earthEngine.initialized) {
|
|
337
337
|
try {
|
|
@@ -359,12 +359,12 @@ function useGoogleEngineLayers() {
|
|
|
359
359
|
);
|
|
360
360
|
return [];
|
|
361
361
|
}
|
|
362
|
-
await
|
|
362
|
+
await engine_js.EarthEngine.setToken(token, refresh);
|
|
363
363
|
return asyncEs.map(
|
|
364
364
|
layers,
|
|
365
365
|
asyncEs.asyncify(async (layer) => {
|
|
366
366
|
try {
|
|
367
|
-
const defaultOptions = lodash.find(
|
|
367
|
+
const defaultOptions = lodash.find(index_js$2.EARTH_ENGINE_LAYERS, ["id", layer.type]) ?? {};
|
|
368
368
|
const options = {
|
|
369
369
|
...defaultOptions,
|
|
370
370
|
aggregations: layer.aggregations ?? defaultOptions?.aggregations,
|
|
@@ -374,7 +374,7 @@ function useGoogleEngineLayers() {
|
|
|
374
374
|
...layer,
|
|
375
375
|
options
|
|
376
376
|
};
|
|
377
|
-
const earthEngine = new
|
|
377
|
+
const earthEngine = new engine_js.EarthEngine({ options });
|
|
378
378
|
const url = await getImageUrl(
|
|
379
379
|
earthEngine,
|
|
380
380
|
updatedLayer
|
package/dist/components/Map/components/MapProvider/components/MapLayerProvider/hooks/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../../../src/components/Map/components/MapProvider/components/MapLayerProvider/hooks/index.tsx"],"names":["pe","ou","row","ouGroup"],"mappings":"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","sourcesContent":["import {\n\tcompact,\n\tdifferenceBy,\n\tfind,\n\thead,\n\tisEmpty,\n\tlast,\n\tsortBy,\n} from \"lodash\";\nimport { useMapOrganisationUnit, useMapPeriods } from \"../../../hooks\";\nimport { useCallback, useMemo, useState } from \"react\";\nimport {\n\tgenerateLegends,\n\tgetOrgUnitsSelection,\n\tsanitizeDate,\n\tsanitizeOrgUnits,\n\ttoGeoJson,\n} from \"../../../../../utils/map\";\nimport { useDataEngine } from \"@dhis2/app-runtime\";\nimport {\n\tCustomGoogleEngineLayer,\n\tCustomPointLayer,\n\tCustomThematicLayer,\n\tEarthEngineLayerConfig,\n\tThematicLayerConfig,\n} from \"../../../../MapLayer/interfaces\";\nimport { MapOrgUnit, PointOrgUnit } from \"../../../../../interfaces\";\nimport { asyncify, map } from \"async-es\";\nimport { LegendSet } from \"@hisptz/dhis2-utils\";\nimport {\n\tdefaultClasses,\n\tdefaultColorScaleName,\n} from \"../../../../../utils/colors\";\nimport { useGoogleEngineToken } from \"../../../../MapLayer/components/GoogleEngineLayer/hooks\";\nimport { useBoundaryData } from \"../../../../MapLayer/components/BoundaryLayer/hooks/useBoundaryData\";\nimport { EarthEngine } from \"../../../../MapLayer/components/GoogleEngineLayer/services/engine\";\nimport { EARTH_ENGINE_LAYERS } from \"../../../../MapLayer/components/GoogleEngineLayer/constants\";\nimport { EarthEngineOptions } from \"../../../../MapLayer/components/GoogleEngineLayer/interfaces\";\n\nconst analyticsQuery = {\n\tanalytics: {\n\t\tresource: \"analytics\",\n\t\tparams: ({ ou, pe, dx, startDate, endDate }: any) => {\n\t\t\tconst peDimension = !isEmpty(pe)\n\t\t\t\t? `pe:${pe?.join(\";\")}`\n\t\t\t\t: undefined;\n\t\t\tconst ouDimension = !isEmpty(ou)\n\t\t\t\t? `ou:${ou?.join(\";\")}`\n\t\t\t\t: undefined;\n\t\t\tconst dxDimension = !isEmpty(dx)\n\t\t\t\t? `dx:${dx?.join(\";\")}`\n\t\t\t\t: undefined;\n\n\t\t\treturn {\n\t\t\t\tdimension: compact([dxDimension, peDimension, ouDimension]),\n\t\t\t\tstartDate,\n\t\t\t\tendDate,\n\t\t\t\tdisplayProperty: \"NAME\",\n\t\t\t};\n\t\t},\n\t},\n};\nconst query = {\n\tlayer: {\n\t\tresource: \"geoFeatures\",\n\t\tparams: ({ ous }: any) => ({\n\t\t\tou: `ou:${ous.join(\";\")}`,\n\t\t}),\n\t},\n\tanalytics: {\n\t\tresource: \"analytics\",\n\t\tparams: ({ ous }: any) => ({\n\t\t\tdimension: [\n\t\t\t\t`ou:${ous.join(\";\")}`,\n\t\t\t\t`pe:${new Date().getFullYear()}`,\n\t\t\t],\n\t\t\tskipData: true,\n\t\t\thierarchyMeta: true,\n\t\t}),\n\t},\n};\nconst groupSetQuery = {\n\tgroupSet: {\n\t\tresource: \"organisationUnitGroupSets\",\n\t\tid: ({ groupSet }: any) => groupSet,\n\t\tparams: {\n\t\t\tfields: [\n\t\t\t\t\"organisationUnitGroups[name,color,symbol,organisationUnits[id]]\",\n\t\t\t],\n\t\t},\n\t},\n};\nconst legendSetsQuery = {\n\tlegendSets: {\n\t\tresource: \"legendSets\",\n\t\tid: ({ id }: any) => id,\n\t\tparams: {\n\t\t\tfields: [\n\t\t\t\t\"id\",\n\t\t\t\t\"displayName\",\n\t\t\t\t\"legends[id,code,startValue,endValue,color]\",\n\t\t\t],\n\t\t},\n\t},\n};\n\nexport function useThematicLayers(): any {\n\tconst engine = useDataEngine();\n\tconst [loading, setLoading] = useState(false);\n\tconst { orgUnits, orgUnitSelection } = useMapOrganisationUnit();\n\tconst { periods, range } = useMapPeriods() ?? {};\n\tconst ou = useMemo(\n\t\t() => getOrgUnitsSelection(orgUnitSelection),\n\t\t[orgUnitSelection],\n\t);\n\tconst pe = useMemo(() => periods?.map((pe: any) => pe.id), [periods]);\n\n\tconst { startDate, endDate } = useMemo(() => {\n\t\tif (!range) {\n\t\t\treturn {\n\t\t\t\tstartDate: undefined,\n\t\t\t\tendDate: undefined,\n\t\t\t};\n\t\t}\n\t\treturn {\n\t\t\tstartDate: sanitizeDate(range.start.toDateString()),\n\t\t\tendDate: sanitizeDate(range.end.toDateString()),\n\t\t};\n\t}, [range]);\n\tconst sanitizeData = (data: any, layer: ThematicLayerConfig) => {\n\t\tif (data) {\n\t\t\tconst { analytics } = data as any;\n\t\t\tconst rows = analytics?.rows;\n\t\t\tconst ouIndex = analytics.headers.findIndex(\n\t\t\t\t(header: any) => header.name === \"ou\",\n\t\t\t);\n\t\t\tconst dxIndex = analytics.headers.findIndex(\n\t\t\t\t(header: any) => header.name === \"dx\",\n\t\t\t);\n\t\t\tconst valueIndex = analytics.headers.findIndex(\n\t\t\t\t(header: any) => header.name === \"value\",\n\t\t\t);\n\n\t\t\tif (!isEmpty(rows)) {\n\t\t\t\treturn sortBy(\n\t\t\t\t\torgUnits?.map((ou: MapOrgUnit) => {\n\t\t\t\t\t\tconst row = rows.find(\n\t\t\t\t\t\t\t(row: any) =>\n\t\t\t\t\t\t\t\trow[ouIndex] === ou.id &&\n\t\t\t\t\t\t\t\trow[dxIndex] === layer.dataItem.id,\n\t\t\t\t\t\t);\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\torgUnit: ou,\n\t\t\t\t\t\t\tdata: row ? parseFloat(row[valueIndex]) : undefined,\n\t\t\t\t\t\t\tdataItem: {\n\t\t\t\t\t\t\t\t...layer.dataItem,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t};\n\t\t\t\t\t}),\n\t\t\t\t\t[\"data\"],\n\t\t\t\t);\n\t\t\t}\n\t\t\treturn [];\n\t\t}\n\t\treturn [];\n\t};\n\n\tconst sanitizeLegends = async (\n\t\tlayers: CustomThematicLayer[],\n\t): Promise<CustomThematicLayer[]> => {\n\t\treturn (await map(\n\t\t\tlayers,\n\t\t\tasyncify(async (layer: CustomThematicLayer) => {\n\t\t\t\ttry {\n\t\t\t\t\tconst legends = [];\n\t\t\t\t\tif (layer.dataItem.legendSet) {\n\t\t\t\t\t\tconst legendSetData = await engine.query(\n\t\t\t\t\t\t\tlegendSetsQuery,\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tvariables: {\n\t\t\t\t\t\t\t\t\tid: layer.dataItem.legendSet,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t);\n\t\t\t\t\t\tconst legendSet: LegendSet =\n\t\t\t\t\t\t\tlegendSetData?.legendSets as LegendSet;\n\t\t\t\t\t\tif (legendSet) {\n\t\t\t\t\t\t\tlegends.push(...legendSet.legends);\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tconst { scale, colorClass } = layer.dataItem\n\t\t\t\t\t\t\t.legendConfig ?? {\n\t\t\t\t\t\t\tscale: defaultClasses,\n\t\t\t\t\t\t\tcolorClass: defaultColorScaleName,\n\t\t\t\t\t\t};\n\t\t\t\t\t\tconst sortedData = sortBy(\n\t\t\t\t\t\t\tlayer.data.filter((datum) => !!datum.data),\n\t\t\t\t\t\t\t\"data\",\n\t\t\t\t\t\t);\n\t\t\t\t\t\tconst autoLegends = generateLegends(\n\t\t\t\t\t\t\tlast(sortedData)?.data ?? 0,\n\t\t\t\t\t\t\thead(sortedData)?.data ?? 0,\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tclassesCount: scale,\n\t\t\t\t\t\t\t\tcolorClass,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t);\n\t\t\t\t\t\tlegends.push(...autoLegends);\n\t\t\t\t\t}\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...layer,\n\t\t\t\t\t\tlegends,\n\t\t\t\t\t};\n\t\t\t\t} catch (e) {\n\t\t\t\t\treturn layer;\n\t\t\t\t}\n\t\t\t}),\n\t\t)) as CustomThematicLayer[];\n\t};\n\n\tconst sanitizeLayers = async (\n\t\tlayers: ThematicLayerConfig[],\n\t): Promise<CustomThematicLayer[]> => {\n\t\ttry {\n\t\t\tsetLoading(true);\n\t\t\tconst layersWithoutData = layers?.filter((layer) => !layer.data);\n\t\t\tconst layersWithData = differenceBy(\n\t\t\t\tlayers,\n\t\t\t\tlayersWithoutData,\n\t\t\t\t\"id\",\n\t\t\t);\n\t\t\tconst dx = layersWithoutData.map((layer) => layer.dataItem.id);\n\t\t\tlet sanitizedLayersWithData: any = [];\n\n\t\t\tconsole.log({ layersWithoutData });\n\n\t\t\tif (!isEmpty(dx)) {\n\t\t\t\tconst data = await engine.query(analyticsQuery, {\n\t\t\t\t\tvariables: {\n\t\t\t\t\t\tdx,\n\t\t\t\t\t\tou,\n\t\t\t\t\t\tpe,\n\t\t\t\t\t\tstartDate,\n\t\t\t\t\t\tendDate,\n\t\t\t\t\t},\n\t\t\t\t});\n\t\t\t\tsanitizedLayersWithData = layersWithoutData.map((layer) => ({\n\t\t\t\t\t...layer,\n\t\t\t\t\tname:\n\t\t\t\t\t\tlayer?.name ?? layer?.dataItem?.displayName ?? layer.id,\n\t\t\t\t\tdata: sanitizeData(data, layer),\n\t\t\t\t}));\n\t\t\t}\n\t\t\tconst sanitizedLayersWithOrgUnits = layersWithData.map((layer) => ({\n\t\t\t\t...layer,\n\t\t\t\tdata: layer.data?.map((datum) => ({\n\t\t\t\t\t...datum,\n\t\t\t\t\torgUnit: find(orgUnits, [\n\t\t\t\t\t\t\"id\",\n\t\t\t\t\t\tdatum.orgUnit,\n\t\t\t\t\t]) as MapOrgUnit,\n\t\t\t\t\tdataItem: layer.dataItem,\n\t\t\t\t\tname:\n\t\t\t\t\t\tlayer?.name ?? layer?.dataItem?.displayName ?? layer.id,\n\t\t\t\t})),\n\t\t\t}));\n\t\t\tsetLoading(false);\n\t\t\treturn await sanitizeLegends([\n\t\t\t\t...sanitizedLayersWithData,\n\t\t\t\t...sanitizedLayersWithOrgUnits,\n\t\t\t]);\n\t\t} catch (e: any) {\n\t\t\tconsole.error(`Error getting thematic layers`, e.details);\n\t\t\tsetLoading(false);\n\t\t\treturn [];\n\t\t}\n\t};\n\n\treturn {\n\t\tsanitizeLayers,\n\t\tloading,\n\t};\n}\n\nexport function usePointLayer() {\n\tconst engine = useDataEngine();\n\tconst { orgUnitSelection } = useMapOrganisationUnit();\n\tconst [loading, setLoading] = useState(false);\n\n\tconst sanitizePointData = useCallback(\n\t\t(orgUnitData: any, groupSetData: any): PointOrgUnit[] => {\n\t\t\tconst { analytics, layer } = (orgUnitData as any) ?? {};\n\t\t\tconst rawOrgUnits = sanitizeOrgUnits(analytics?.metaData);\n\t\t\tconst geoJSONObjects = toGeoJson(\n\t\t\t\tlayer?.filter((bound: any) => bound.co),\n\t\t\t);\n\t\t\treturn compact(\n\t\t\t\trawOrgUnits.map((orgUnit: any) => {\n\t\t\t\t\tconst geoJSONObject: any = geoJSONObjects?.find(\n\t\t\t\t\t\t(geoJSON: any) => geoJSON.properties.id === orgUnit.id,\n\t\t\t\t\t);\n\t\t\t\t\tconst orgUnitGroups: any =\n\t\t\t\t\t\t(groupSetData?.groupSet as any)\n\t\t\t\t\t\t\t?.organisationUnitGroups ?? [];\n\t\t\t\t\tconst ouGroup = find(\n\t\t\t\t\t\torgUnitGroups,\n\t\t\t\t\t\t(ouGroup) =>\n\t\t\t\t\t\t\t!!find(ouGroup?.organisationUnits ?? [], [\n\t\t\t\t\t\t\t\t\"id\",\n\t\t\t\t\t\t\t\torgUnit.id,\n\t\t\t\t\t\t\t]),\n\t\t\t\t\t);\n\n\t\t\t\t\tif (\n\t\t\t\t\t\t!geoJSONObject ||\n\t\t\t\t\t\tgeoJSONObject.properties.type !== \"Point\"\n\t\t\t\t\t) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...orgUnit,\n\t\t\t\t\t\tgeoJSON: geoJSONObject,\n\t\t\t\t\t\tlevel: geoJSONObject.properties.level,\n\t\t\t\t\t\ticon: {\n\t\t\t\t\t\t\ttype: \"groupIcon\",\n\t\t\t\t\t\t\ticon: ouGroup?.symbol,\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\t\t\t\t}),\n\t\t\t);\n\t\t},\n\t\t[],\n\t);\n\n\tconst sanitizeLayer = useCallback(\n\t\tasync (\n\t\t\tlayer: CustomPointLayer,\n\t\t): Promise<CustomPointLayer | undefined> => {\n\t\t\ttry {\n\t\t\t\tif (!layer.level && !layer.group) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tsetLoading(true);\n\t\t\t\tconst level = layer.level ? `LEVEL-${layer.level}` : undefined;\n\t\t\t\tconst group = layer.group\n\t\t\t\t\t? `OU_GROUP-${layer.group}`\n\t\t\t\t\t: undefined;\n\t\t\t\tconst ous = [\n\t\t\t\t\t...getOrgUnitsSelection(orgUnitSelection),\n\t\t\t\t\tlevel,\n\t\t\t\t\tgroup,\n\t\t\t\t];\n\n\t\t\t\tconst pointData = await engine.query(query, {\n\t\t\t\t\tvariables: {\n\t\t\t\t\t\tous,\n\t\t\t\t\t},\n\t\t\t\t});\n\t\t\t\tconst groupSetData = await engine.query(groupSetQuery, {\n\t\t\t\t\tvariables: {\n\t\t\t\t\t\tgroupSet: layer.style?.groupSet,\n\t\t\t\t\t},\n\t\t\t\t});\n\t\t\t\tconst sanitizedOrgUnitData = sanitizePointData(\n\t\t\t\t\tpointData,\n\t\t\t\t\tgroupSetData,\n\t\t\t\t);\n\n\t\t\t\tconst orgUnitGroups =\n\t\t\t\t\t(groupSetData?.groupSet as any)?.organisationUnitGroups ??\n\t\t\t\t\t[];\n\n\t\t\t\tconst sanitizedOrgUnitGroups = orgUnitGroups.map(\n\t\t\t\t\t(ouGroup: any) => ({\n\t\t\t\t\t\t...ouGroup,\n\t\t\t\t\t\torganisationUnits: undefined,\n\t\t\t\t\t}),\n\t\t\t\t);\n\t\t\t\tsetLoading(false);\n\t\t\t\treturn {\n\t\t\t\t\t...layer,\n\t\t\t\t\tpoints: sanitizedOrgUnitData,\n\t\t\t\t\tstyle: {\n\t\t\t\t\t\t...layer.style,\n\t\t\t\t\t\torgUnitGroups: sanitizedOrgUnitGroups,\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t} catch (e: any) {\n\t\t\t\tsetLoading(false);\n\t\t\t\tconsole.error(`Error getting point layer`, e.details);\n\t\t\t\treturn;\n\t\t\t}\n\t\t},\n\t\t[],\n\t);\n\n\treturn {\n\t\tloading,\n\t\tsanitizeLayer,\n\t};\n}\n\nexport function useGoogleEngineLayers() {\n\tconst { refresh } = useGoogleEngineToken();\n\tconst orgUnits = useBoundaryData();\n\n\tasync function getImageUrl(\n\t\tearthEngine: EarthEngine,\n\t\t{ filters }: EarthEngineLayerConfig,\n\t): Promise<string | undefined> {\n\t\tif (earthEngine.initialized) {\n\t\t\ttry {\n\t\t\t\tearthEngine.setOrgUnits(orgUnits ?? []);\n\t\t\t\tconst period = filters?.period;\n\t\t\t\tif (period) {\n\t\t\t\t\tearthEngine.setPeriod(period);\n\t\t\t\t}\n\t\t\t\treturn earthEngine.url();\n\t\t\t} catch (e) {\n\t\t\t\tconsole.error(e);\n\t\t\t}\n\t\t}\n\t}\n\n\tconst sanitizeLayers = useCallback(\n\t\tasync (\n\t\t\tlayers: EarthEngineLayerConfig[],\n\t\t): Promise<CustomGoogleEngineLayer[]> => {\n\t\t\tif (isEmpty(layers)) {\n\t\t\t\treturn [];\n\t\t\t}\n\t\t\ttry {\n\t\t\t\tconst { token } = await refresh();\n\t\t\t\tif (!token) {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t`Google token not available in this instance`,\n\t\t\t\t\t);\n\t\t\t\t\treturn [];\n\t\t\t\t}\n\t\t\t\tawait EarthEngine.setToken(token, refresh);\n\t\t\t\treturn map(\n\t\t\t\t\tlayers,\n\t\t\t\t\tasyncify(async (layer: EarthEngineLayerConfig) => {\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tconst defaultOptions: any =\n\t\t\t\t\t\t\t\tfind(EARTH_ENGINE_LAYERS, [\"id\", layer.type]) ??\n\t\t\t\t\t\t\t\t{};\n\t\t\t\t\t\t\tconst options: EarthEngineOptions = {\n\t\t\t\t\t\t\t\t...defaultOptions,\n\t\t\t\t\t\t\t\taggregations:\n\t\t\t\t\t\t\t\t\tlayer.aggregations ??\n\t\t\t\t\t\t\t\t\tdefaultOptions?.aggregations,\n\t\t\t\t\t\t\t\tparams: layer.params ?? defaultOptions?.params,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\tconst updatedLayer = {\n\t\t\t\t\t\t\t\t...layer,\n\t\t\t\t\t\t\t\toptions,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\tconst earthEngine = new EarthEngine({ options });\n\t\t\t\t\t\t\tconst url = await getImageUrl(\n\t\t\t\t\t\t\t\tearthEngine,\n\t\t\t\t\t\t\t\tupdatedLayer,\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t...updatedLayer,\n\t\t\t\t\t\t\t\tengine: earthEngine,\n\t\t\t\t\t\t\t\turl,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t} catch (e) {\n\t\t\t\t\t\t\tconsole.error(e);\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\t\t\t\t}),\n\t\t\t\t);\n\t\t\t} catch (e: any) {\n\t\t\t\tconsole.error(`Error getting thematic layers`, e.details);\n\t\t\t\treturn [];\n\t\t\t}\n\t\t},\n\t\t[refresh],\n\t);\n\n\treturn {\n\t\tsanitizeLayers,\n\t};\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../../../../../../../../src/components/Map/components/MapProvider/components/MapLayerProvider/hooks/index.tsx"],"names":["pe","ou","row","ouGroup"],"mappings":"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","sourcesContent":["import {\n\tcompact,\n\tdifferenceBy,\n\tfind,\n\thead,\n\tisEmpty,\n\tlast,\n\tsortBy,\n} from \"lodash\";\nimport { useMapOrganisationUnit, useMapPeriods } from \"../../../hooks/index.js\";\nimport { useCallback, useMemo, useState } from \"react\";\nimport {\n\tgenerateLegends,\n\tgetOrgUnitsSelection,\n\tsanitizeDate,\n\tsanitizeOrgUnits,\n\ttoGeoJson,\n} from \"../../../../../utils/map.js\";\nimport { useDataEngine } from \"@dhis2/app-runtime\";\nimport {\n\tCustomGoogleEngineLayer,\n\tCustomPointLayer,\n\tCustomThematicLayer,\n\tEarthEngineLayerConfig,\n\tThematicLayerConfig,\n} from \"../../../../MapLayer/interfaces\";\nimport { MapOrgUnit, PointOrgUnit } from \"../../../../../interfaces/index.js\";\nimport { asyncify, map } from \"async-es\";\nimport { LegendSet } from \"@hisptz/dhis2-utils\";\nimport {\n\tdefaultClasses,\n\tdefaultColorScaleName,\n} from \"../../../../../utils/colors.js\";\nimport { useGoogleEngineToken } from \"../../../../MapLayer/components/GoogleEngineLayer/hooks/index.js\";\nimport { useBoundaryData } from \"../../../../MapLayer/components/BoundaryLayer/hooks/useBoundaryData.js\";\nimport { EarthEngine } from \"../../../../MapLayer/components/GoogleEngineLayer/services/engine.js\";\nimport { EARTH_ENGINE_LAYERS } from \"../../../../MapLayer/components/GoogleEngineLayer/constants/index.js\";\nimport { EarthEngineOptions } from \"../../../../MapLayer/components/GoogleEngineLayer/interfaces/index.js\";\n\nconst analyticsQuery = {\n\tanalytics: {\n\t\tresource: \"analytics\",\n\t\tparams: ({ ou, pe, dx, startDate, endDate }: any) => {\n\t\t\tconst peDimension = !isEmpty(pe)\n\t\t\t\t? `pe:${pe?.join(\";\")}`\n\t\t\t\t: undefined;\n\t\t\tconst ouDimension = !isEmpty(ou)\n\t\t\t\t? `ou:${ou?.join(\";\")}`\n\t\t\t\t: undefined;\n\t\t\tconst dxDimension = !isEmpty(dx)\n\t\t\t\t? `dx:${dx?.join(\";\")}`\n\t\t\t\t: undefined;\n\n\t\t\treturn {\n\t\t\t\tdimension: compact([dxDimension, peDimension, ouDimension]),\n\t\t\t\tstartDate,\n\t\t\t\tendDate,\n\t\t\t\tdisplayProperty: \"NAME\",\n\t\t\t};\n\t\t},\n\t},\n};\nconst query = {\n\tlayer: {\n\t\tresource: \"geoFeatures\",\n\t\tparams: ({ ous }: any) => ({\n\t\t\tou: `ou:${ous.join(\";\")}`,\n\t\t}),\n\t},\n\tanalytics: {\n\t\tresource: \"analytics\",\n\t\tparams: ({ ous }: any) => ({\n\t\t\tdimension: [\n\t\t\t\t`ou:${ous.join(\";\")}`,\n\t\t\t\t`pe:${new Date().getFullYear()}`,\n\t\t\t],\n\t\t\tskipData: true,\n\t\t\thierarchyMeta: true,\n\t\t}),\n\t},\n};\nconst groupSetQuery = {\n\tgroupSet: {\n\t\tresource: \"organisationUnitGroupSets\",\n\t\tid: ({ groupSet }: any) => groupSet,\n\t\tparams: {\n\t\t\tfields: [\n\t\t\t\t\"organisationUnitGroups[name,color,symbol,organisationUnits[id]]\",\n\t\t\t],\n\t\t},\n\t},\n};\nconst legendSetsQuery = {\n\tlegendSets: {\n\t\tresource: \"legendSets\",\n\t\tid: ({ id }: any) => id,\n\t\tparams: {\n\t\t\tfields: [\n\t\t\t\t\"id\",\n\t\t\t\t\"displayName\",\n\t\t\t\t\"legends[id,code,startValue,endValue,color]\",\n\t\t\t],\n\t\t},\n\t},\n};\n\nexport function useThematicLayers(): any {\n\tconst engine = useDataEngine();\n\tconst [loading, setLoading] = useState(false);\n\tconst { orgUnits, orgUnitSelection } = useMapOrganisationUnit();\n\tconst { periods, range } = useMapPeriods() ?? {};\n\tconst ou = useMemo(\n\t\t() => getOrgUnitsSelection(orgUnitSelection),\n\t\t[orgUnitSelection],\n\t);\n\tconst pe = useMemo(() => periods?.map((pe: any) => pe.id), [periods]);\n\n\tconst { startDate, endDate } = useMemo(() => {\n\t\tif (!range) {\n\t\t\treturn {\n\t\t\t\tstartDate: undefined,\n\t\t\t\tendDate: undefined,\n\t\t\t};\n\t\t}\n\t\treturn {\n\t\t\tstartDate: sanitizeDate(range.start.toDateString()),\n\t\t\tendDate: sanitizeDate(range.end.toDateString()),\n\t\t};\n\t}, [range]);\n\tconst sanitizeData = (data: any, layer: ThematicLayerConfig) => {\n\t\tif (data) {\n\t\t\tconst { analytics } = data as any;\n\t\t\tconst rows = analytics?.rows;\n\t\t\tconst ouIndex = analytics.headers.findIndex(\n\t\t\t\t(header: any) => header.name === \"ou\",\n\t\t\t);\n\t\t\tconst dxIndex = analytics.headers.findIndex(\n\t\t\t\t(header: any) => header.name === \"dx\",\n\t\t\t);\n\t\t\tconst valueIndex = analytics.headers.findIndex(\n\t\t\t\t(header: any) => header.name === \"value\",\n\t\t\t);\n\n\t\t\tif (!isEmpty(rows)) {\n\t\t\t\treturn sortBy(\n\t\t\t\t\torgUnits?.map((ou: MapOrgUnit) => {\n\t\t\t\t\t\tconst row = rows.find(\n\t\t\t\t\t\t\t(row: any) =>\n\t\t\t\t\t\t\t\trow[ouIndex] === ou.id &&\n\t\t\t\t\t\t\t\trow[dxIndex] === layer.dataItem.id,\n\t\t\t\t\t\t);\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\torgUnit: ou,\n\t\t\t\t\t\t\tdata: row ? parseFloat(row[valueIndex]) : undefined,\n\t\t\t\t\t\t\tdataItem: {\n\t\t\t\t\t\t\t\t...layer.dataItem,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t};\n\t\t\t\t\t}),\n\t\t\t\t\t[\"data\"],\n\t\t\t\t);\n\t\t\t}\n\t\t\treturn [];\n\t\t}\n\t\treturn [];\n\t};\n\n\tconst sanitizeLegends = async (\n\t\tlayers: CustomThematicLayer[],\n\t): Promise<CustomThematicLayer[]> => {\n\t\treturn (await map(\n\t\t\tlayers,\n\t\t\tasyncify(async (layer: CustomThematicLayer) => {\n\t\t\t\ttry {\n\t\t\t\t\tconst legends = [];\n\t\t\t\t\tif (layer.dataItem.legendSet) {\n\t\t\t\t\t\tconst legendSetData = await engine.query(\n\t\t\t\t\t\t\tlegendSetsQuery,\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tvariables: {\n\t\t\t\t\t\t\t\t\tid: layer.dataItem.legendSet,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t);\n\t\t\t\t\t\tconst legendSet: LegendSet =\n\t\t\t\t\t\t\tlegendSetData?.legendSets as LegendSet;\n\t\t\t\t\t\tif (legendSet) {\n\t\t\t\t\t\t\tlegends.push(...legendSet.legends);\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tconst { scale, colorClass } = layer.dataItem\n\t\t\t\t\t\t\t.legendConfig ?? {\n\t\t\t\t\t\t\tscale: defaultClasses,\n\t\t\t\t\t\t\tcolorClass: defaultColorScaleName,\n\t\t\t\t\t\t};\n\t\t\t\t\t\tconst sortedData = sortBy(\n\t\t\t\t\t\t\tlayer.data.filter((datum) => !!datum.data),\n\t\t\t\t\t\t\t\"data\",\n\t\t\t\t\t\t);\n\t\t\t\t\t\tconst autoLegends = generateLegends(\n\t\t\t\t\t\t\tlast(sortedData)?.data ?? 0,\n\t\t\t\t\t\t\thead(sortedData)?.data ?? 0,\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tclassesCount: scale,\n\t\t\t\t\t\t\t\tcolorClass,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t);\n\t\t\t\t\t\tlegends.push(...autoLegends);\n\t\t\t\t\t}\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...layer,\n\t\t\t\t\t\tlegends,\n\t\t\t\t\t};\n\t\t\t\t} catch (e) {\n\t\t\t\t\treturn layer;\n\t\t\t\t}\n\t\t\t}),\n\t\t)) as CustomThematicLayer[];\n\t};\n\n\tconst sanitizeLayers = async (\n\t\tlayers: ThematicLayerConfig[],\n\t): Promise<CustomThematicLayer[]> => {\n\t\ttry {\n\t\t\tsetLoading(true);\n\t\t\tconst layersWithoutData = layers?.filter((layer) => !layer.data);\n\t\t\tconst layersWithData = differenceBy(\n\t\t\t\tlayers,\n\t\t\t\tlayersWithoutData,\n\t\t\t\t\"id\",\n\t\t\t);\n\t\t\tconst dx = layersWithoutData.map((layer) => layer.dataItem.id);\n\t\t\tlet sanitizedLayersWithData: any = [];\n\n\t\t\tconsole.log({ layersWithoutData });\n\n\t\t\tif (!isEmpty(dx)) {\n\t\t\t\tconst data = await engine.query(analyticsQuery, {\n\t\t\t\t\tvariables: {\n\t\t\t\t\t\tdx,\n\t\t\t\t\t\tou,\n\t\t\t\t\t\tpe,\n\t\t\t\t\t\tstartDate,\n\t\t\t\t\t\tendDate,\n\t\t\t\t\t},\n\t\t\t\t});\n\t\t\t\tsanitizedLayersWithData = layersWithoutData.map((layer) => ({\n\t\t\t\t\t...layer,\n\t\t\t\t\tname:\n\t\t\t\t\t\tlayer?.name ?? layer?.dataItem?.displayName ?? layer.id,\n\t\t\t\t\tdata: sanitizeData(data, layer),\n\t\t\t\t}));\n\t\t\t}\n\t\t\tconst sanitizedLayersWithOrgUnits = layersWithData.map((layer) => ({\n\t\t\t\t...layer,\n\t\t\t\tdata: layer.data?.map((datum) => ({\n\t\t\t\t\t...datum,\n\t\t\t\t\torgUnit: find(orgUnits, [\n\t\t\t\t\t\t\"id\",\n\t\t\t\t\t\tdatum.orgUnit,\n\t\t\t\t\t]) as MapOrgUnit,\n\t\t\t\t\tdataItem: layer.dataItem,\n\t\t\t\t\tname:\n\t\t\t\t\t\tlayer?.name ?? layer?.dataItem?.displayName ?? layer.id,\n\t\t\t\t})),\n\t\t\t}));\n\t\t\tsetLoading(false);\n\t\t\treturn await sanitizeLegends([\n\t\t\t\t...sanitizedLayersWithData,\n\t\t\t\t...sanitizedLayersWithOrgUnits,\n\t\t\t]);\n\t\t} catch (e: any) {\n\t\t\tconsole.error(`Error getting thematic layers`, e.details);\n\t\t\tsetLoading(false);\n\t\t\treturn [];\n\t\t}\n\t};\n\n\treturn {\n\t\tsanitizeLayers,\n\t\tloading,\n\t};\n}\n\nexport function usePointLayer() {\n\tconst engine = useDataEngine();\n\tconst { orgUnitSelection } = useMapOrganisationUnit();\n\tconst [loading, setLoading] = useState(false);\n\n\tconst sanitizePointData = useCallback(\n\t\t(orgUnitData: any, groupSetData: any): PointOrgUnit[] => {\n\t\t\tconst { analytics, layer } = (orgUnitData as any) ?? {};\n\t\t\tconst rawOrgUnits = sanitizeOrgUnits(analytics?.metaData);\n\t\t\tconst geoJSONObjects = toGeoJson(\n\t\t\t\tlayer?.filter((bound: any) => bound.co),\n\t\t\t);\n\t\t\treturn compact(\n\t\t\t\trawOrgUnits.map((orgUnit: any) => {\n\t\t\t\t\tconst geoJSONObject: any = geoJSONObjects?.find(\n\t\t\t\t\t\t(geoJSON: any) => geoJSON.properties.id === orgUnit.id,\n\t\t\t\t\t);\n\t\t\t\t\tconst orgUnitGroups: any =\n\t\t\t\t\t\t(groupSetData?.groupSet as any)\n\t\t\t\t\t\t\t?.organisationUnitGroups ?? [];\n\t\t\t\t\tconst ouGroup = find(\n\t\t\t\t\t\torgUnitGroups,\n\t\t\t\t\t\t(ouGroup) =>\n\t\t\t\t\t\t\t!!find(ouGroup?.organisationUnits ?? [], [\n\t\t\t\t\t\t\t\t\"id\",\n\t\t\t\t\t\t\t\torgUnit.id,\n\t\t\t\t\t\t\t]),\n\t\t\t\t\t);\n\n\t\t\t\t\tif (\n\t\t\t\t\t\t!geoJSONObject ||\n\t\t\t\t\t\tgeoJSONObject.properties.type !== \"Point\"\n\t\t\t\t\t) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...orgUnit,\n\t\t\t\t\t\tgeoJSON: geoJSONObject,\n\t\t\t\t\t\tlevel: geoJSONObject.properties.level,\n\t\t\t\t\t\ticon: {\n\t\t\t\t\t\t\ttype: \"groupIcon\",\n\t\t\t\t\t\t\ticon: ouGroup?.symbol,\n\t\t\t\t\t\t},\n\t\t\t\t\t};\n\t\t\t\t}),\n\t\t\t);\n\t\t},\n\t\t[],\n\t);\n\n\tconst sanitizeLayer = useCallback(\n\t\tasync (\n\t\t\tlayer: CustomPointLayer,\n\t\t): Promise<CustomPointLayer | undefined> => {\n\t\t\ttry {\n\t\t\t\tif (!layer.level && !layer.group) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tsetLoading(true);\n\t\t\t\tconst level = layer.level ? `LEVEL-${layer.level}` : undefined;\n\t\t\t\tconst group = layer.group\n\t\t\t\t\t? `OU_GROUP-${layer.group}`\n\t\t\t\t\t: undefined;\n\t\t\t\tconst ous = [\n\t\t\t\t\t...getOrgUnitsSelection(orgUnitSelection),\n\t\t\t\t\tlevel,\n\t\t\t\t\tgroup,\n\t\t\t\t];\n\n\t\t\t\tconst pointData = await engine.query(query, {\n\t\t\t\t\tvariables: {\n\t\t\t\t\t\tous,\n\t\t\t\t\t},\n\t\t\t\t});\n\t\t\t\tconst groupSetData = await engine.query(groupSetQuery, {\n\t\t\t\t\tvariables: {\n\t\t\t\t\t\tgroupSet: layer.style?.groupSet,\n\t\t\t\t\t},\n\t\t\t\t});\n\t\t\t\tconst sanitizedOrgUnitData = sanitizePointData(\n\t\t\t\t\tpointData,\n\t\t\t\t\tgroupSetData,\n\t\t\t\t);\n\n\t\t\t\tconst orgUnitGroups =\n\t\t\t\t\t(groupSetData?.groupSet as any)?.organisationUnitGroups ??\n\t\t\t\t\t[];\n\n\t\t\t\tconst sanitizedOrgUnitGroups = orgUnitGroups.map(\n\t\t\t\t\t(ouGroup: any) => ({\n\t\t\t\t\t\t...ouGroup,\n\t\t\t\t\t\torganisationUnits: undefined,\n\t\t\t\t\t}),\n\t\t\t\t);\n\t\t\t\tsetLoading(false);\n\t\t\t\treturn {\n\t\t\t\t\t...layer,\n\t\t\t\t\tpoints: sanitizedOrgUnitData,\n\t\t\t\t\tstyle: {\n\t\t\t\t\t\t...layer.style,\n\t\t\t\t\t\torgUnitGroups: sanitizedOrgUnitGroups,\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t} catch (e: any) {\n\t\t\t\tsetLoading(false);\n\t\t\t\tconsole.error(`Error getting point layer`, e.details);\n\t\t\t\treturn;\n\t\t\t}\n\t\t},\n\t\t[],\n\t);\n\n\treturn {\n\t\tloading,\n\t\tsanitizeLayer,\n\t};\n}\n\nexport function useGoogleEngineLayers() {\n\tconst { refresh } = useGoogleEngineToken();\n\tconst orgUnits = useBoundaryData();\n\n\tasync function getImageUrl(\n\t\tearthEngine: EarthEngine,\n\t\t{ filters }: EarthEngineLayerConfig,\n\t): Promise<string | undefined> {\n\t\tif (earthEngine.initialized) {\n\t\t\ttry {\n\t\t\t\tearthEngine.setOrgUnits(orgUnits ?? []);\n\t\t\t\tconst period = filters?.period;\n\t\t\t\tif (period) {\n\t\t\t\t\tearthEngine.setPeriod(period);\n\t\t\t\t}\n\t\t\t\treturn earthEngine.url();\n\t\t\t} catch (e) {\n\t\t\t\tconsole.error(e);\n\t\t\t}\n\t\t}\n\t}\n\n\tconst sanitizeLayers = useCallback(\n\t\tasync (\n\t\t\tlayers: EarthEngineLayerConfig[],\n\t\t): Promise<CustomGoogleEngineLayer[]> => {\n\t\t\tif (isEmpty(layers)) {\n\t\t\t\treturn [];\n\t\t\t}\n\t\t\ttry {\n\t\t\t\tconst { token } = await refresh();\n\t\t\t\tif (!token) {\n\t\t\t\t\tconsole.error(\n\t\t\t\t\t\t`Google token not available in this instance`,\n\t\t\t\t\t);\n\t\t\t\t\treturn [];\n\t\t\t\t}\n\t\t\t\tawait EarthEngine.setToken(token, refresh);\n\t\t\t\treturn map(\n\t\t\t\t\tlayers,\n\t\t\t\t\tasyncify(async (layer: EarthEngineLayerConfig) => {\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tconst defaultOptions: any =\n\t\t\t\t\t\t\t\tfind(EARTH_ENGINE_LAYERS, [\"id\", layer.type]) ??\n\t\t\t\t\t\t\t\t{};\n\t\t\t\t\t\t\tconst options: EarthEngineOptions = {\n\t\t\t\t\t\t\t\t...defaultOptions,\n\t\t\t\t\t\t\t\taggregations:\n\t\t\t\t\t\t\t\t\tlayer.aggregations ??\n\t\t\t\t\t\t\t\t\tdefaultOptions?.aggregations,\n\t\t\t\t\t\t\t\tparams: layer.params ?? defaultOptions?.params,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\tconst updatedLayer = {\n\t\t\t\t\t\t\t\t...layer,\n\t\t\t\t\t\t\t\toptions,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t\tconst earthEngine = new EarthEngine({ options });\n\t\t\t\t\t\t\tconst url = await getImageUrl(\n\t\t\t\t\t\t\t\tearthEngine,\n\t\t\t\t\t\t\t\tupdatedLayer,\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\t\t...updatedLayer,\n\t\t\t\t\t\t\t\tengine: earthEngine,\n\t\t\t\t\t\t\t\turl,\n\t\t\t\t\t\t\t};\n\t\t\t\t\t\t} catch (e) {\n\t\t\t\t\t\t\tconsole.error(e);\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\t\t\t\t}),\n\t\t\t\t);\n\t\t\t} catch (e: any) {\n\t\t\t\tconsole.error(`Error getting thematic layers`, e.details);\n\t\t\t\treturn [];\n\t\t\t}\n\t\t},\n\t\t[refresh],\n\t);\n\n\treturn {\n\t\tsanitizeLayers,\n\t};\n}\n"]}
|
|
@@ -6,9 +6,9 @@ var ui = require('@dhis2/ui');
|
|
|
6
6
|
var lodash = require('lodash');
|
|
7
7
|
var react = require('react');
|
|
8
8
|
var reactLeaflet = require('react-leaflet');
|
|
9
|
-
var
|
|
10
|
-
var
|
|
11
|
-
var
|
|
9
|
+
var index_js$2 = require('../../../../state/index.js');
|
|
10
|
+
var index_js = require('../../hooks/index.js');
|
|
11
|
+
var index_js$1 = require('./hooks/index.js');
|
|
12
12
|
|
|
13
13
|
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
14
14
|
|
|
@@ -18,12 +18,12 @@ function MapLayersProvider({
|
|
|
18
18
|
layers,
|
|
19
19
|
children
|
|
20
20
|
}) {
|
|
21
|
-
const period =
|
|
22
|
-
const orgUnit =
|
|
21
|
+
const period = index_js.useMapPeriods();
|
|
22
|
+
const orgUnit = index_js.useMapOrganisationUnit();
|
|
23
23
|
const [updatedLayers, setUpdatedLayers] = react.useState([]);
|
|
24
|
-
const { sanitizeLayers: sanitizeThematicLayers, error } =
|
|
25
|
-
const { sanitizeLayer: sanitizePointLayer } =
|
|
26
|
-
const { sanitizeLayers: sanitizeEarthEngineLayers } =
|
|
24
|
+
const { sanitizeLayers: sanitizeThematicLayers, error } = index_js$1.useThematicLayers();
|
|
25
|
+
const { sanitizeLayer: sanitizePointLayer } = index_js$1.usePointLayer();
|
|
26
|
+
const { sanitizeLayers: sanitizeEarthEngineLayers } = index_js$1.useGoogleEngineLayers();
|
|
27
27
|
const [loading, setLoading] = react.useState(false);
|
|
28
28
|
reactLeaflet.useMapEvents({
|
|
29
29
|
overlayremove: (event) => {
|
|
@@ -108,7 +108,7 @@ function MapLayersProvider({
|
|
|
108
108
|
] }) }) });
|
|
109
109
|
}
|
|
110
110
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
111
|
-
|
|
111
|
+
index_js$2.MapLayersContext.Provider,
|
|
112
112
|
{
|
|
113
113
|
value: { layers: updatedLayers, updateLayer },
|
|
114
114
|
children
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../../src/components/Map/components/MapProvider/components/MapLayerProvider/index.tsx"],"names":["updatedLayers"],"mappings":"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","sourcesContent":["import i18n from \"@dhis2/d2-i18n\";\nimport { Center, CircularLoader } from \"@dhis2/ui\";\nimport { LayersControlEvent } from \"leaflet\";\nimport { compact, find, head, set } from \"lodash\";\nimport React, { useCallback, useEffect, useState } from \"react\";\nimport { useMapEvents } from \"react-leaflet\";\nimport { MapLayersContext } from \"../../../../state\";\nimport { MapLayerConfig } from \"../../../MapArea/interfaces\";\nimport {\n\tCustomBoundaryLayer,\n\tCustomGoogleEngineLayer,\n\tCustomMapLayer,\n\tCustomPointLayer,\n\tCustomThematicLayer,\n\tThematicLayerConfig,\n} from \"../../../MapLayer/interfaces\";\nimport { useMapOrganisationUnit, useMapPeriods } from \"../../hooks\";\nimport {\n\tuseGoogleEngineLayers,\n\tusePointLayer,\n\tuseThematicLayers,\n} from \"./hooks\";\n\nexport function MapLayersProvider({\n\tlayers,\n\tchildren,\n}: {\n\tlayers: MapLayerConfig;\n\tchildren: React.ReactNode;\n}) {\n\tconst period = useMapPeriods();\n\tconst orgUnit = useMapOrganisationUnit();\n\tconst [updatedLayers, setUpdatedLayers] = useState<\n\t\tArray<\n\t\t\t| CustomThematicLayer\n\t\t\t| CustomBoundaryLayer\n\t\t\t| CustomPointLayer\n\t\t\t| CustomGoogleEngineLayer\n\t\t>\n\t>([]);\n\tconst { sanitizeLayers: sanitizeThematicLayers, error } =\n\t\tuseThematicLayers();\n\tconst { sanitizeLayer: sanitizePointLayer } = usePointLayer();\n\tconst { sanitizeLayers: sanitizeEarthEngineLayers } =\n\t\tuseGoogleEngineLayers();\n\tconst [loading, setLoading] = useState(false);\n\n\tuseMapEvents({\n\t\toverlayremove: (event) => {\n\t\t\tsetupLayerListeners(\"remove\", event);\n\t\t},\n\t\toverlayadd: (event) => {\n\t\t\tsetupLayerListeners(\"add\", event);\n\t\t},\n\t});\n\n\tconst sanitizeLayers = async () => {\n\t\tsetLoading(true);\n\t\ttry {\n\t\t\tconst {\n\t\t\t\tboundaryLayers,\n\t\t\t\tthematicLayers,\n\t\t\t\tpointLayers,\n\t\t\t\tearthEngineLayers,\n\t\t\t} = layers;\n\t\t\tconst sanitizedThematicLayers = await sanitizeThematicLayers([\n\t\t\t\t...(thematicLayers ?? []),\n\t\t\t] as ThematicLayerConfig[]);\n\t\t\tconst sanitizedBoundaryLayers = (boundaryLayers ??\n\t\t\t\t[]) as CustomBoundaryLayer[];\n\t\t\tconst sanitizedPointLayer = head(pointLayers ?? [])\n\t\t\t\t? await sanitizePointLayer(\n\t\t\t\t\t\thead(pointLayers) as CustomPointLayer,\n\t\t\t\t\t)\n\t\t\t\t: undefined;\n\t\t\tconst sanitizedEarthEngineLayers = await sanitizeEarthEngineLayers([\n\t\t\t\t...(earthEngineLayers ?? []),\n\t\t\t] as unknown as CustomGoogleEngineLayer[]);\n\t\t\tsetUpdatedLayers(\n\t\t\t\tcompact([\n\t\t\t\t\t...(sanitizedBoundaryLayers ?? []),\n\t\t\t\t\t...(sanitizedThematicLayers ?? []),\n\t\t\t\t\tsanitizedPointLayer,\n\t\t\t\t\t...(sanitizedEarthEngineLayers ?? []),\n\t\t\t\t]),\n\t\t\t);\n\t\t} catch (e: any) {\n\t\t\tconsole.error(`Error sanitizing layers`, e.toString());\n\t\t}\n\t\tsetLoading(false);\n\t};\n\n\tconst updateLayer = useCallback(\n\t\t(id: string, updatedLayer: CustomMapLayer) => {\n\t\t\tsetUpdatedLayers((prevLayers) => {\n\t\t\t\tconst updatedLayers = [...prevLayers];\n\t\t\t\tconst layerIndex = updatedLayers.findIndex(\n\t\t\t\t\t(layer) => layer.id === updatedLayer.id,\n\t\t\t\t);\n\t\t\t\tif (layerIndex < 0) {\n\t\t\t\t\treturn prevLayers;\n\t\t\t\t}\n\t\t\t\tset(updatedLayers, layerIndex, updatedLayer);\n\t\t\t\treturn updatedLayers;\n\t\t\t});\n\t\t},\n\t\t[],\n\t);\n\n\tuseEffect(() => {\n\t\tsanitizeLayers().catch(console.error);\n\t}, [period, orgUnit]);\n\n\tconst setupLayerListeners = (\n\t\ttype: \"add\" | \"remove\",\n\t\tevent: LayersControlEvent,\n\t) => {\n\t\tconst name = event.name;\n\n\t\tconst layerConfig = find(updatedLayers, (layer: any) => {\n\t\t\tconst nameFromConfig =\n\t\t\t\tlayer?.name ?? layer?.dataItem?.displayname ?? layer?.label;\n\t\t\treturn nameFromConfig === name;\n\t\t});\n\n\t\tif (layerConfig) {\n\t\t\tupdateLayer(layerConfig.id, {\n\t\t\t\t...layerConfig,\n\t\t\t\tenabled: type === \"add\",\n\t\t\t});\n\t\t}\n\t};\n\n\tif (loading) {\n\t\treturn (\n\t\t\t<div style={{ height: \"100%\", width: \"100%\" }}>\n\t\t\t\t<Center>\n\t\t\t\t\t<CircularLoader small />\n\t\t\t\t</Center>\n\t\t\t</div>\n\t\t);\n\t}\n\tif (error) {\n\t\treturn (\n\t\t\t<div style={{ height: \"100%\", width: \"100%\" }}>\n\t\t\t\t<Center>\n\t\t\t\t\t<h4>\n\t\t\t\t\t\t{i18n.t(\"Error\")}: {error.message}\n\t\t\t\t\t</h4>\n\t\t\t\t</Center>\n\t\t\t</div>\n\t\t);\n\t}\n\treturn (\n\t\t<MapLayersContext.Provider\n\t\t\tvalue={{ layers: updatedLayers, updateLayer }}\n\t\t>\n\t\t\t{children}\n\t\t</MapLayersContext.Provider>\n\t);\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../../../../../../../src/components/Map/components/MapProvider/components/MapLayerProvider/index.tsx"],"names":["updatedLayers"],"mappings":"AAyIK,cASA,YATA;AAzIL,OAAO,UAAU;AACjB,SAAS,QAAQ,sBAAsB;AAEvC,SAAS,SAAS,MAAM,MAAM,WAAW;AACzC,SAAgB,aAAa,WAAW,gBAAgB;AACxD,SAAS,oBAAoB;AAC7B,SAAS,wBAAwB;AAUjC,SAAS,wBAAwB,qBAAqB;AACtD;AAAA,EACC;AAAA,EACA;AAAA,EACA;AAAA,OACM;AAEA,SAAS,kBAAkB;AAAA,EACjC;AAAA,EACA;AACD,GAGG;AACF,QAAM,SAAS,cAAc;AAC7B,QAAM,UAAU,uBAAuB;AACvC,QAAM,CAAC,eAAe,gBAAgB,IAAI,SAOxC,CAAC,CAAC;AACJ,QAAM,EAAE,gBAAgB,wBAAwB,MAAM,IACrD,kBAAkB;AACnB,QAAM,EAAE,eAAe,mBAAmB,IAAI,cAAc;AAC5D,QAAM,EAAE,gBAAgB,0BAA0B,IACjD,sBAAsB;AACvB,QAAM,CAAC,SAAS,UAAU,IAAI,SAAS,KAAK;AAE5C,eAAa;AAAA,IACZ,eAAe,CAAC,UAAU;AACzB,0BAAoB,UAAU,KAAK;AAAA,IACpC;AAAA,IACA,YAAY,CAAC,UAAU;AACtB,0BAAoB,OAAO,KAAK;AAAA,IACjC;AAAA,EACD,CAAC;AAED,QAAM,iBAAiB,YAAY;AAClC,eAAW,IAAI;AACf,QAAI;AACH,YAAM;AAAA,QACL;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MACD,IAAI;AACJ,YAAM,0BAA0B,MAAM,uBAAuB;AAAA,QAC5D,GAAI,kBAAkB,CAAC;AAAA,MACxB,CAA0B;AAC1B,YAAM,0BAA2B,kBAChC,CAAC;AACF,YAAM,sBAAsB,KAAK,eAAe,CAAC,CAAC,IAC/C,MAAM;AAAA,QACN,KAAK,WAAW;AAAA,MACjB,IACC;AACH,YAAM,6BAA6B,MAAM,0BAA0B;AAAA,QAClE,GAAI,qBAAqB,CAAC;AAAA,MAC3B,CAAyC;AACzC;AAAA,QACC,QAAQ;AAAA,UACP,GAAI,2BAA2B,CAAC;AAAA,UAChC,GAAI,2BAA2B,CAAC;AAAA,UAChC;AAAA,UACA,GAAI,8BAA8B,CAAC;AAAA,QACpC,CAAC;AAAA,MACF;AAAA,IACD,SAAS,GAAQ;AAChB,cAAQ,MAAM,2BAA2B,EAAE,SAAS,CAAC;AAAA,IACtD;AACA,eAAW,KAAK;AAAA,EACjB;AAEA,QAAM,cAAc;AAAA,IACnB,CAAC,IAAY,iBAAiC;AAC7C,uBAAiB,CAAC,eAAe;AAChC,cAAMA,iBAAgB,CAAC,GAAG,UAAU;AACpC,cAAM,aAAaA,eAAc;AAAA,UAChC,CAAC,UAAU,MAAM,OAAO,aAAa;AAAA,QACtC;AACA,YAAI,aAAa,GAAG;AACnB,iBAAO;AAAA,QACR;AACA,YAAIA,gBAAe,YAAY,YAAY;AAC3C,eAAOA;AAAA,MACR,CAAC;AAAA,IACF;AAAA,IACA,CAAC;AAAA,EACF;AAEA,YAAU,MAAM;AACf,mBAAe,EAAE,MAAM,QAAQ,KAAK;AAAA,EACrC,GAAG,CAAC,QAAQ,OAAO,CAAC;AAEpB,QAAM,sBAAsB,CAC3B,MACA,UACI;AACJ,UAAM,OAAO,MAAM;AAEnB,UAAM,cAAc,KAAK,eAAe,CAAC,UAAe;AACvD,YAAM,iBACL,OAAO,QAAQ,OAAO,UAAU,eAAe,OAAO;AACvD,aAAO,mBAAmB;AAAA,IAC3B,CAAC;AAED,QAAI,aAAa;AAChB,kBAAY,YAAY,IAAI;AAAA,QAC3B,GAAG;AAAA,QACH,SAAS,SAAS;AAAA,MACnB,CAAC;AAAA,IACF;AAAA,EACD;AAEA,MAAI,SAAS;AACZ,WACC,oBAAC,SAAI,OAAO,EAAE,QAAQ,QAAQ,OAAO,OAAO,GAC3C,8BAAC,UACA,8BAAC,kBAAe,OAAK,MAAC,GACvB,GACD;AAAA,EAEF;AACA,MAAI,OAAO;AACV,WACC,oBAAC,SAAI,OAAO,EAAE,QAAQ,QAAQ,OAAO,OAAO,GAC3C,8BAAC,UACA,+BAAC,QACC;AAAA,WAAK,EAAE,OAAO;AAAA,MAAE;AAAA,MAAG,MAAM;AAAA,OAC3B,GACD,GACD;AAAA,EAEF;AACA,SACC;AAAA,IAAC,iBAAiB;AAAA,IAAjB;AAAA,MACA,OAAO,EAAE,QAAQ,eAAe,YAAY;AAAA,MAE3C;AAAA;AAAA,EACF;AAEF","sourcesContent":["import i18n from \"@dhis2/d2-i18n\";\nimport { Center, CircularLoader } from \"@dhis2/ui\";\nimport { LayersControlEvent } from \"leaflet\";\nimport { compact, find, head, set } from \"lodash\";\nimport React, { useCallback, useEffect, useState } from \"react\";\nimport { useMapEvents } from \"react-leaflet\";\nimport { MapLayersContext } from \"../../../../state/index.js\";\nimport { MapLayerConfig } from \"../../../MapArea/interfaces/index.js\";\nimport {\n\tCustomBoundaryLayer,\n\tCustomGoogleEngineLayer,\n\tCustomMapLayer,\n\tCustomPointLayer,\n\tCustomThematicLayer,\n\tThematicLayerConfig,\n} from \"../../../MapLayer/interfaces/index.js\";\nimport { useMapOrganisationUnit, useMapPeriods } from \"../../hooks/index.js\";\nimport {\n\tuseGoogleEngineLayers,\n\tusePointLayer,\n\tuseThematicLayers,\n} from \"./hooks/index.js\";\n\nexport function MapLayersProvider({\n\tlayers,\n\tchildren,\n}: {\n\tlayers: MapLayerConfig;\n\tchildren: React.ReactNode;\n}) {\n\tconst period = useMapPeriods();\n\tconst orgUnit = useMapOrganisationUnit();\n\tconst [updatedLayers, setUpdatedLayers] = useState<\n\t\tArray<\n\t\t\t| CustomThematicLayer\n\t\t\t| CustomBoundaryLayer\n\t\t\t| CustomPointLayer\n\t\t\t| CustomGoogleEngineLayer\n\t\t>\n\t>([]);\n\tconst { sanitizeLayers: sanitizeThematicLayers, error } =\n\t\tuseThematicLayers();\n\tconst { sanitizeLayer: sanitizePointLayer } = usePointLayer();\n\tconst { sanitizeLayers: sanitizeEarthEngineLayers } =\n\t\tuseGoogleEngineLayers();\n\tconst [loading, setLoading] = useState(false);\n\n\tuseMapEvents({\n\t\toverlayremove: (event) => {\n\t\t\tsetupLayerListeners(\"remove\", event);\n\t\t},\n\t\toverlayadd: (event) => {\n\t\t\tsetupLayerListeners(\"add\", event);\n\t\t},\n\t});\n\n\tconst sanitizeLayers = async () => {\n\t\tsetLoading(true);\n\t\ttry {\n\t\t\tconst {\n\t\t\t\tboundaryLayers,\n\t\t\t\tthematicLayers,\n\t\t\t\tpointLayers,\n\t\t\t\tearthEngineLayers,\n\t\t\t} = layers;\n\t\t\tconst sanitizedThematicLayers = await sanitizeThematicLayers([\n\t\t\t\t...(thematicLayers ?? []),\n\t\t\t] as ThematicLayerConfig[]);\n\t\t\tconst sanitizedBoundaryLayers = (boundaryLayers ??\n\t\t\t\t[]) as CustomBoundaryLayer[];\n\t\t\tconst sanitizedPointLayer = head(pointLayers ?? [])\n\t\t\t\t? await sanitizePointLayer(\n\t\t\t\t\t\thead(pointLayers) as CustomPointLayer,\n\t\t\t\t\t)\n\t\t\t\t: undefined;\n\t\t\tconst sanitizedEarthEngineLayers = await sanitizeEarthEngineLayers([\n\t\t\t\t...(earthEngineLayers ?? []),\n\t\t\t] as unknown as CustomGoogleEngineLayer[]);\n\t\t\tsetUpdatedLayers(\n\t\t\t\tcompact([\n\t\t\t\t\t...(sanitizedBoundaryLayers ?? []),\n\t\t\t\t\t...(sanitizedThematicLayers ?? []),\n\t\t\t\t\tsanitizedPointLayer,\n\t\t\t\t\t...(sanitizedEarthEngineLayers ?? []),\n\t\t\t\t]),\n\t\t\t);\n\t\t} catch (e: any) {\n\t\t\tconsole.error(`Error sanitizing layers`, e.toString());\n\t\t}\n\t\tsetLoading(false);\n\t};\n\n\tconst updateLayer = useCallback(\n\t\t(id: string, updatedLayer: CustomMapLayer) => {\n\t\t\tsetUpdatedLayers((prevLayers) => {\n\t\t\t\tconst updatedLayers = [...prevLayers];\n\t\t\t\tconst layerIndex = updatedLayers.findIndex(\n\t\t\t\t\t(layer) => layer.id === updatedLayer.id,\n\t\t\t\t);\n\t\t\t\tif (layerIndex < 0) {\n\t\t\t\t\treturn prevLayers;\n\t\t\t\t}\n\t\t\t\tset(updatedLayers, layerIndex, updatedLayer);\n\t\t\t\treturn updatedLayers;\n\t\t\t});\n\t\t},\n\t\t[],\n\t);\n\n\tuseEffect(() => {\n\t\tsanitizeLayers().catch(console.error);\n\t}, [period, orgUnit]);\n\n\tconst setupLayerListeners = (\n\t\ttype: \"add\" | \"remove\",\n\t\tevent: LayersControlEvent,\n\t) => {\n\t\tconst name = event.name;\n\n\t\tconst layerConfig = find(updatedLayers, (layer: any) => {\n\t\t\tconst nameFromConfig =\n\t\t\t\tlayer?.name ?? layer?.dataItem?.displayname ?? layer?.label;\n\t\t\treturn nameFromConfig === name;\n\t\t});\n\n\t\tif (layerConfig) {\n\t\t\tupdateLayer(layerConfig.id, {\n\t\t\t\t...layerConfig,\n\t\t\t\tenabled: type === \"add\",\n\t\t\t});\n\t\t}\n\t};\n\n\tif (loading) {\n\t\treturn (\n\t\t\t<div style={{ height: \"100%\", width: \"100%\" }}>\n\t\t\t\t<Center>\n\t\t\t\t\t<CircularLoader small />\n\t\t\t\t</Center>\n\t\t\t</div>\n\t\t);\n\t}\n\tif (error) {\n\t\treturn (\n\t\t\t<div style={{ height: \"100%\", width: \"100%\" }}>\n\t\t\t\t<Center>\n\t\t\t\t\t<h4>\n\t\t\t\t\t\t{i18n.t(\"Error\")}: {error.message}\n\t\t\t\t\t</h4>\n\t\t\t\t</Center>\n\t\t\t</div>\n\t\t);\n\t}\n\treturn (\n\t\t<MapLayersContext.Provider\n\t\t\tvalue={{ layers: updatedLayers, updateLayer }}\n\t\t>\n\t\t\t{children}\n\t\t</MapLayersContext.Provider>\n\t);\n}\n"]}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var react = require('react');
|
|
4
|
-
var
|
|
4
|
+
var index_js = require('../../../state/index.js');
|
|
5
5
|
|
|
6
6
|
function useMapOrganisationUnit() {
|
|
7
|
-
return react.useContext(
|
|
7
|
+
return react.useContext(index_js.MapOrgUnitContext);
|
|
8
8
|
}
|
|
9
9
|
function useMapPeriods() {
|
|
10
|
-
return react.useContext(
|
|
10
|
+
return react.useContext(index_js.MapPeriodContext);
|
|
11
11
|
}
|
|
12
12
|
function useMapLayers() {
|
|
13
|
-
return react.useContext(
|
|
13
|
+
return react.useContext(index_js.MapLayersContext);
|
|
14
14
|
}
|
|
15
15
|
|
|
16
16
|
exports.useMapLayers = useMapLayers;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../../src/components/Map/components/MapProvider/hooks/index.ts"],"names":[],"mappings":"AAAA,SAAS,kBAAkB;AAC3B;AAAA,EACC;AAAA,EACA;AAAA,EACA;AAAA,OACM;AAEA,SAAS,yBAAyB;AACxC,SAAO,WAAW,iBAAiB;AACpC;AAEO,SAAS,gBAAgB;
|
|
1
|
+
{"version":3,"sources":["../../../../../../src/components/Map/components/MapProvider/hooks/index.ts"],"names":[],"mappings":"AAAA,SAAS,kBAAkB;AAC3B;AAAA,EACC;AAAA,EACA;AAAA,EACA;AAAA,OACM;AAEA,SAAS,yBAAyB;AACxC,SAAO,WAAW,iBAAiB;AACpC;AAEO,SAAS,gBAAgB;AAC/B,SAAO,WAAW,gBAAgB;AACnC;AAEO,SAAS,eAAe;AAC9B,SAAO,WAAW,gBAAgB;AACnC","sourcesContent":["import { useContext } from \"react\";\nimport {\n\tMapLayersContext,\n\tMapOrgUnitContext,\n\tMapPeriodContext,\n} from \"../../../state/index.js\";\n\nexport function useMapOrganisationUnit() {\n\treturn useContext(MapOrgUnitContext);\n}\n\nexport function useMapPeriods() {\n\treturn useContext(MapPeriodContext);\n}\n\nexport function useMapLayers() {\n\treturn useContext(MapLayersContext);\n}\n"]}
|
|
@@ -6,8 +6,8 @@ var i18n = require('@dhis2/d2-i18n');
|
|
|
6
6
|
var ui = require('@dhis2/ui');
|
|
7
7
|
var lodash = require('lodash');
|
|
8
8
|
var react = require('react');
|
|
9
|
-
var
|
|
10
|
-
var
|
|
9
|
+
var index_js = require('../../state/index.js');
|
|
10
|
+
var map_js = require('../../utils/map.js');
|
|
11
11
|
var dhis2Utils = require('@hisptz/dhis2-utils');
|
|
12
12
|
|
|
13
13
|
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
@@ -44,11 +44,11 @@ function MapProvider({
|
|
|
44
44
|
});
|
|
45
45
|
react.useEffect(() => {
|
|
46
46
|
async function getOrgUnits() {
|
|
47
|
-
const rawOrgUnitIds =
|
|
47
|
+
const rawOrgUnitIds = map_js.getOrgUnitsSelection(orgUnitSelection);
|
|
48
48
|
const data = await refetch({ orgUnitIds: rawOrgUnitIds });
|
|
49
49
|
const { analytics, boundaries } = data ?? {};
|
|
50
|
-
const rawOrgUnits =
|
|
51
|
-
const geoJSONObjects =
|
|
50
|
+
const rawOrgUnits = map_js.sanitizeOrgUnits(analytics?.metaData);
|
|
51
|
+
const geoJSONObjects = map_js.toGeoJson(
|
|
52
52
|
boundaries.filter((bound) => bound.co)
|
|
53
53
|
);
|
|
54
54
|
const orgUnits2 = lodash.compact(
|
|
@@ -85,8 +85,8 @@ function MapProvider({
|
|
|
85
85
|
periodSelection?.periods?.map((pe) => dhis2Utils.PeriodUtility.getPeriodById(pe))
|
|
86
86
|
);
|
|
87
87
|
if (!lodash.isEmpty(orgUnits)) {
|
|
88
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
89
|
-
|
|
88
|
+
return /* @__PURE__ */ jsxRuntime.jsx(index_js.MapOrgUnitContext.Provider, { value: { orgUnitSelection, orgUnits }, children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
89
|
+
index_js.MapPeriodContext.Provider,
|
|
90
90
|
{
|
|
91
91
|
value: { ...periodSelection, periods },
|
|
92
92
|
children
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/components/Map/components/MapProvider/index.tsx"],"names":["orgUnits","error"],"mappings":"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","sourcesContent":["import { useDataQuery } from \"@dhis2/app-runtime\";\nimport i18n from \"@dhis2/d2-i18n\";\nimport { Center, CircularLoader } from \"@dhis2/ui\";\nimport { compact, isEmpty } from \"lodash\";\nimport React, { useEffect, useState } from \"react\";\nimport { MapOrgUnit, MapProviderProps } from \"../../interfaces\";\nimport { MapOrgUnitContext, MapPeriodContext } from \"../../state\";\nimport {\n\tgetOrgUnitsSelection,\n\tsanitizeOrgUnits,\n\ttoGeoJson,\n} from \"../../utils/map\";\nimport { BasePeriod, PeriodUtility } from \"@hisptz/dhis2-utils\";\n\nconst boundaryQuery = {\n\tboundaries: {\n\t\tresource: \"geoFeatures\",\n\t\tparams: ({ orgUnitIds }: any) => ({\n\t\t\tou: `ou:${orgUnitIds?.join(\";\")}`,\n\t\t}),\n\t},\n\tanalytics: {\n\t\tresource: \"analytics\",\n\t\tparams: ({ orgUnitIds }: any) => ({\n\t\t\tdimension: [\n\t\t\t\t`ou:${orgUnitIds.join(\";\")}`,\n\t\t\t\t`pe:${new Date().getFullYear()}`,\n\t\t\t],\n\t\t\tskipData: true,\n\t\t\thierarchyMeta: true,\n\t\t}),\n\t},\n};\n\nexport function MapProvider({\n\tchildren,\n\torgUnitSelection,\n\tperiodSelection,\n}: MapProviderProps) {\n\tconst [orgUnits, setOrgUnits] = useState<MapOrgUnit[]>([]);\n\tconst { refetch, loading, error } = useDataQuery(boundaryQuery, {\n\t\tlazy: true,\n\t});\n\n\tuseEffect(() => {\n\t\tasync function getOrgUnits() {\n\t\t\tconst rawOrgUnitIds = getOrgUnitsSelection(orgUnitSelection);\n\t\t\tconst data = await refetch({ orgUnitIds: rawOrgUnitIds });\n\t\t\tconst { analytics, boundaries } = (data as any) ?? {};\n\t\t\tconst rawOrgUnits = sanitizeOrgUnits(analytics?.metaData);\n\t\t\tconst geoJSONObjects = toGeoJson(\n\t\t\t\tboundaries.filter((bound: any) => bound.co),\n\t\t\t);\n\t\t\tconst orgUnits: MapOrgUnit[] = compact(\n\t\t\t\trawOrgUnits.map((orgUnit: any) => {\n\t\t\t\t\tconst geoJSONObject: any = geoJSONObjects?.find(\n\t\t\t\t\t\t(geoJSON: any) => geoJSON.properties.id === orgUnit.id,\n\t\t\t\t\t);\n\n\t\t\t\t\tif (!geoJSONObject) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...orgUnit,\n\t\t\t\t\t\tgeoJSON: geoJSONObject,\n\t\t\t\t\t\tbounds: [],\n\t\t\t\t\t\tlevel: geoJSONObject.properties.level,\n\t\t\t\t\t};\n\t\t\t\t}),\n\t\t\t);\n\t\t\tsetOrgUnits(orgUnits);\n\t\t}\n\n\t\tgetOrgUnits().catch((error) => console.log(error));\n\t}, [orgUnitSelection, refetch]);\n\n\tif (loading) {\n\t\treturn (\n\t\t\t<div style={{ height: \"100%\", width: \"100%\" }}>\n\t\t\t\t<Center>\n\t\t\t\t\t<CircularLoader small />\n\t\t\t\t</Center>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tif (error) {\n\t\treturn (\n\t\t\t<div style={{ height: \"100%\", width: \"100%\" }}>\n\t\t\t\t<Center>\n\t\t\t\t\t<h4>\n\t\t\t\t\t\t{i18n.t(\"Error\")}: {error.message}\n\t\t\t\t\t</h4>\n\t\t\t\t</Center>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tconst periods: BasePeriod[] = compact(\n\t\tperiodSelection?.periods?.map((pe) => PeriodUtility.getPeriodById(pe)),\n\t);\n\n\tif (!isEmpty(orgUnits)) {\n\t\treturn (\n\t\t\t<MapOrgUnitContext.Provider value={{ orgUnitSelection, orgUnits }}>\n\t\t\t\t<MapPeriodContext.Provider\n\t\t\t\t\tvalue={{ ...periodSelection, periods }}\n\t\t\t\t>\n\t\t\t\t\t{children}\n\t\t\t\t</MapPeriodContext.Provider>\n\t\t\t</MapOrgUnitContext.Provider>\n\t\t);\n\t}\n\n\treturn null;\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../../../../../src/components/Map/components/MapProvider/index.tsx"],"names":["orgUnits","error"],"mappings":"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","sourcesContent":["import { useDataQuery } from \"@dhis2/app-runtime\";\nimport i18n from \"@dhis2/d2-i18n\";\nimport { Center, CircularLoader } from \"@dhis2/ui\";\nimport { compact, isEmpty } from \"lodash\";\nimport React, { useEffect, useState } from \"react\";\nimport { MapOrgUnit, MapProviderProps } from \"../../interfaces/index.js\";\nimport { MapOrgUnitContext, MapPeriodContext } from \"../../state/index.js\";\nimport {\n\tgetOrgUnitsSelection,\n\tsanitizeOrgUnits,\n\ttoGeoJson,\n} from \"../../utils/map.js\";\nimport { BasePeriod, PeriodUtility } from \"@hisptz/dhis2-utils\";\n\nconst boundaryQuery = {\n\tboundaries: {\n\t\tresource: \"geoFeatures\",\n\t\tparams: ({ orgUnitIds }: any) => ({\n\t\t\tou: `ou:${orgUnitIds?.join(\";\")}`,\n\t\t}),\n\t},\n\tanalytics: {\n\t\tresource: \"analytics\",\n\t\tparams: ({ orgUnitIds }: any) => ({\n\t\t\tdimension: [\n\t\t\t\t`ou:${orgUnitIds.join(\";\")}`,\n\t\t\t\t`pe:${new Date().getFullYear()}`,\n\t\t\t],\n\t\t\tskipData: true,\n\t\t\thierarchyMeta: true,\n\t\t}),\n\t},\n};\n\nexport function MapProvider({\n\tchildren,\n\torgUnitSelection,\n\tperiodSelection,\n}: MapProviderProps) {\n\tconst [orgUnits, setOrgUnits] = useState<MapOrgUnit[]>([]);\n\tconst { refetch, loading, error } = useDataQuery(boundaryQuery, {\n\t\tlazy: true,\n\t});\n\n\tuseEffect(() => {\n\t\tasync function getOrgUnits() {\n\t\t\tconst rawOrgUnitIds = getOrgUnitsSelection(orgUnitSelection);\n\t\t\tconst data = await refetch({ orgUnitIds: rawOrgUnitIds });\n\t\t\tconst { analytics, boundaries } = (data as any) ?? {};\n\t\t\tconst rawOrgUnits = sanitizeOrgUnits(analytics?.metaData);\n\t\t\tconst geoJSONObjects = toGeoJson(\n\t\t\t\tboundaries.filter((bound: any) => bound.co),\n\t\t\t);\n\t\t\tconst orgUnits: MapOrgUnit[] = compact(\n\t\t\t\trawOrgUnits.map((orgUnit: any) => {\n\t\t\t\t\tconst geoJSONObject: any = geoJSONObjects?.find(\n\t\t\t\t\t\t(geoJSON: any) => geoJSON.properties.id === orgUnit.id,\n\t\t\t\t\t);\n\n\t\t\t\t\tif (!geoJSONObject) {\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...orgUnit,\n\t\t\t\t\t\tgeoJSON: geoJSONObject,\n\t\t\t\t\t\tbounds: [],\n\t\t\t\t\t\tlevel: geoJSONObject.properties.level,\n\t\t\t\t\t};\n\t\t\t\t}),\n\t\t\t);\n\t\t\tsetOrgUnits(orgUnits);\n\t\t}\n\n\t\tgetOrgUnits().catch((error) => console.log(error));\n\t}, [orgUnitSelection, refetch]);\n\n\tif (loading) {\n\t\treturn (\n\t\t\t<div style={{ height: \"100%\", width: \"100%\" }}>\n\t\t\t\t<Center>\n\t\t\t\t\t<CircularLoader small />\n\t\t\t\t</Center>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tif (error) {\n\t\treturn (\n\t\t\t<div style={{ height: \"100%\", width: \"100%\" }}>\n\t\t\t\t<Center>\n\t\t\t\t\t<h4>\n\t\t\t\t\t\t{i18n.t(\"Error\")}: {error.message}\n\t\t\t\t\t</h4>\n\t\t\t\t</Center>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tconst periods: BasePeriod[] = compact(\n\t\tperiodSelection?.periods?.map((pe) => PeriodUtility.getPeriodById(pe)),\n\t);\n\n\tif (!isEmpty(orgUnits)) {\n\t\treturn (\n\t\t\t<MapOrgUnitContext.Provider value={{ orgUnitSelection, orgUnits }}>\n\t\t\t\t<MapPeriodContext.Provider\n\t\t\t\t\tvalue={{ ...periodSelection, periods }}\n\t\t\t\t>\n\t\t\t\t\t{children}\n\t\t\t\t</MapPeriodContext.Provider>\n\t\t\t</MapOrgUnitContext.Provider>\n\t\t);\n\t}\n\n\treturn null;\n}\n"]}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var jsxRuntime = require('react/jsx-runtime');
|
|
4
|
-
var
|
|
4
|
+
var map_js = require('../../hooks/map.js');
|
|
5
5
|
|
|
6
6
|
function MapUpdater({ bounds }) {
|
|
7
|
-
const ref =
|
|
7
|
+
const ref = map_js.useCenterMap({ bounds });
|
|
8
8
|
return /* @__PURE__ */ jsxRuntime.jsx("div", { style: { width: "100%", height: "100%" }, ref });
|
|
9
9
|
}
|
|
10
10
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/components/Map/components/MapUpdater/index.tsx"],"names":[],"mappings":"AAMQ;AANR,SAAS,oBAAoB;AAId,SAAR,WAA4B,EAAE,OAAO,GAA8B;AACzE,QAAM,MAAM,aAAa,EAAE,OAAO,CAAC;AACnC,SAAO,oBAAC,SAAI,OAAO,EAAE,OAAO,QAAQ,QAAQ,OAAO,GAAG,KAAU;AACjE","sourcesContent":["import { useCenterMap } from \"../../hooks/map\";\nimport React from \"react\";\nimport { LatLngTuple } from \"leaflet\";\n\nexport default function MapUpdater({ bounds }: { bounds: LatLngTuple[] }) {\n\tconst ref = useCenterMap({ bounds });\n\treturn <div style={{ width: \"100%\", height: \"100%\" }} ref={ref}></div>;\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../../../../../src/components/Map/components/MapUpdater/index.tsx"],"names":[],"mappings":"AAMQ;AANR,SAAS,oBAAoB;AAId,SAAR,WAA4B,EAAE,OAAO,GAA8B;AACzE,QAAM,MAAM,aAAa,EAAE,OAAO,CAAC;AACnC,SAAO,oBAAC,SAAI,OAAO,EAAE,OAAO,QAAQ,QAAQ,OAAO,GAAG,KAAU;AACjE","sourcesContent":["import { useCenterMap } from \"../../hooks/map.js\";\nimport React from \"react\";\nimport { LatLngTuple } from \"leaflet\";\n\nexport default function MapUpdater({ bounds }: { bounds: LatLngTuple[] }) {\n\tconst ref = useCenterMap({ bounds });\n\treturn <div style={{ width: \"100%\", height: \"100%\" }} ref={ref}></div>;\n}\n"]}
|
package/dist/components/Map/components/ThematicLayerConfiguration/ThematicLayerConfigModal.js
CHANGED
|
@@ -4,7 +4,7 @@ var jsxRuntime = require('react/jsx-runtime');
|
|
|
4
4
|
var reactHookForm = require('react-hook-form');
|
|
5
5
|
var ui = require('@dhis2/ui');
|
|
6
6
|
var i18n = require('@dhis2/d2-i18n');
|
|
7
|
-
var
|
|
7
|
+
var ThematicLayerConfiguration_js = require('./ThematicLayerConfiguration.js');
|
|
8
8
|
|
|
9
9
|
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
10
10
|
|
|
@@ -27,7 +27,7 @@ function ThematicLayerConfigModal({
|
|
|
27
27
|
};
|
|
28
28
|
return /* @__PURE__ */ jsxRuntime.jsxs(ui.Modal, { ...props, hide: !open, onClose, children: [
|
|
29
29
|
/* @__PURE__ */ jsxRuntime.jsx(ui.ModalTitle, { children: i18n__default.default.t("Configure Thematic Layer") }),
|
|
30
|
-
/* @__PURE__ */ jsxRuntime.jsx(ui.ModalContent, { children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
30
|
+
/* @__PURE__ */ jsxRuntime.jsx(ui.ModalContent, { children: /* @__PURE__ */ jsxRuntime.jsx(ThematicLayerConfiguration_js.ThematicLayerConfiguration, { form, exclude }) }),
|
|
31
31
|
/* @__PURE__ */ jsxRuntime.jsx(ui.ModalActions, { children: /* @__PURE__ */ jsxRuntime.jsxs(ui.ButtonStrip, { children: [
|
|
32
32
|
/* @__PURE__ */ jsxRuntime.jsx(ui.Button, { onClick: onClose, children: i18n__default.default.t("Cancel") }),
|
|
33
33
|
/* @__PURE__ */ jsxRuntime.jsx(
|
package/dist/components/Map/components/ThematicLayerConfiguration/ThematicLayerConfigModal.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/components/Map/components/ThematicLayerConfiguration/ThematicLayerConfigModal.tsx"],"names":[],"mappings":"AAkCG,cAKC,YALD;AAjCH,SAAS,eAAe;AAExB;AAAA,EACC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACM;AACP,OAAO,UAAU;AAEjB,SAAS,kCAAkC;AAEpC,SAAS,yBAAyB;AAAA,EACxC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACJ,GAAkC;AACjC,QAAM,OAAO,QAA6B;AAAA,IACzC,eAAe;AAAA,EAChB,CAAC;AAED,QAAM,gBAAgB,CAAC,WAAgC;AACtD,aAAS,MAAM;AACf,YAAQ;AAAA,EACT;AAEA,SACC,qBAAC,SAAO,GAAG,OAAO,MAAM,CAAC,MAAM,SAC9B;AAAA,wBAAC,cAAY,eAAK,EAAE,0BAA0B,GAAE;AAAA,IAChD,oBAAC,gBACA,8BAAC,8BAA2B,MAAY,SAAkB,GAC3D;AAAA,IACA,oBAAC,gBACA,+BAAC,eACA;AAAA,0BAAC,UAAO,SAAS,SAAU,eAAK,EAAE,QAAQ,GAAE;AAAA,MAC5C;AAAA,QAAC;AAAA;AAAA,UACA,SAAO;AAAA,UACP,SAAS,MAAM,KAAK,aAAa,aAAa,EAAE;AAAA,UAE/C,eAAK,EAAE,MAAM;AAAA;AAAA,MACf;AAAA,OACD,GACD;AAAA,KACD;AAEF","sourcesContent":["import { ThematicLayerConfigModalProps } from \"./types\";\nimport { useForm } from \"react-hook-form\";\nimport { ThematicLayerConfig } from \"../MapLayer/interfaces\";\nimport {\n\tButton,\n\tButtonStrip,\n\tModal,\n\tModalActions,\n\tModalContent,\n\tModalTitle,\n} from \"@dhis2/ui\";\nimport i18n from \"@dhis2/d2-i18n\";\nimport React from \"react\";\nimport { ThematicLayerConfiguration } from \"./ThematicLayerConfiguration\";\n\nexport function ThematicLayerConfigModal({\n\topen,\n\texclude,\n\tconfig,\n\tonClose,\n\tonChange,\n\t...props\n}: ThematicLayerConfigModalProps) {\n\tconst form = useForm<ThematicLayerConfig>({\n\t\tdefaultValues: config,\n\t});\n\n\tconst onSubmitClick = (values: ThematicLayerConfig) => {\n\t\tonChange(values);\n\t\tonClose();\n\t};\n\n\treturn (\n\t\t<Modal {...props} hide={!open} onClose={onClose}>\n\t\t\t<ModalTitle>{i18n.t(\"Configure Thematic Layer\")}</ModalTitle>\n\t\t\t<ModalContent>\n\t\t\t\t<ThematicLayerConfiguration form={form} exclude={exclude} />\n\t\t\t</ModalContent>\n\t\t\t<ModalActions>\n\t\t\t\t<ButtonStrip>\n\t\t\t\t\t<Button onClick={onClose}>{i18n.t(\"Cancel\")}</Button>\n\t\t\t\t\t<Button\n\t\t\t\t\t\tprimary\n\t\t\t\t\t\tonClick={() => form.handleSubmit(onSubmitClick)()}\n\t\t\t\t\t>\n\t\t\t\t\t\t{i18n.t(\"Save\")}\n\t\t\t\t\t</Button>\n\t\t\t\t</ButtonStrip>\n\t\t\t</ModalActions>\n\t\t</Modal>\n\t);\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../../../../../src/components/Map/components/ThematicLayerConfiguration/ThematicLayerConfigModal.tsx"],"names":[],"mappings":"AAkCG,cAKC,YALD;AAjCH,SAAS,eAAe;AAExB;AAAA,EACC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACM;AACP,OAAO,UAAU;AAEjB,SAAS,kCAAkC;AAEpC,SAAS,yBAAyB;AAAA,EACxC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,GAAG;AACJ,GAAkC;AACjC,QAAM,OAAO,QAA6B;AAAA,IACzC,eAAe;AAAA,EAChB,CAAC;AAED,QAAM,gBAAgB,CAAC,WAAgC;AACtD,aAAS,MAAM;AACf,YAAQ;AAAA,EACT;AAEA,SACC,qBAAC,SAAO,GAAG,OAAO,MAAM,CAAC,MAAM,SAC9B;AAAA,wBAAC,cAAY,eAAK,EAAE,0BAA0B,GAAE;AAAA,IAChD,oBAAC,gBACA,8BAAC,8BAA2B,MAAY,SAAkB,GAC3D;AAAA,IACA,oBAAC,gBACA,+BAAC,eACA;AAAA,0BAAC,UAAO,SAAS,SAAU,eAAK,EAAE,QAAQ,GAAE;AAAA,MAC5C;AAAA,QAAC;AAAA;AAAA,UACA,SAAO;AAAA,UACP,SAAS,MAAM,KAAK,aAAa,aAAa,EAAE;AAAA,UAE/C,eAAK,EAAE,MAAM;AAAA;AAAA,MACf;AAAA,OACD,GACD;AAAA,KACD;AAEF","sourcesContent":["import { ThematicLayerConfigModalProps } from \"./types\";\nimport { useForm } from \"react-hook-form\";\nimport { ThematicLayerConfig } from \"../MapLayer/interfaces/index.js\";\nimport {\n\tButton,\n\tButtonStrip,\n\tModal,\n\tModalActions,\n\tModalContent,\n\tModalTitle,\n} from \"@dhis2/ui\";\nimport i18n from \"@dhis2/d2-i18n\";\nimport React from \"react\";\nimport { ThematicLayerConfiguration } from \"./ThematicLayerConfiguration.js\";\n\nexport function ThematicLayerConfigModal({\n\topen,\n\texclude,\n\tconfig,\n\tonClose,\n\tonChange,\n\t...props\n}: ThematicLayerConfigModalProps) {\n\tconst form = useForm<ThematicLayerConfig>({\n\t\tdefaultValues: config,\n\t});\n\n\tconst onSubmitClick = (values: ThematicLayerConfig) => {\n\t\tonChange(values);\n\t\tonClose();\n\t};\n\n\treturn (\n\t\t<Modal {...props} hide={!open} onClose={onClose}>\n\t\t\t<ModalTitle>{i18n.t(\"Configure Thematic Layer\")}</ModalTitle>\n\t\t\t<ModalContent>\n\t\t\t\t<ThematicLayerConfiguration form={form} exclude={exclude} />\n\t\t\t</ModalContent>\n\t\t\t<ModalActions>\n\t\t\t\t<ButtonStrip>\n\t\t\t\t\t<Button onClick={onClose}>{i18n.t(\"Cancel\")}</Button>\n\t\t\t\t\t<Button\n\t\t\t\t\t\tprimary\n\t\t\t\t\t\tonClick={() => form.handleSubmit(onSubmitClick)()}\n\t\t\t\t\t>\n\t\t\t\t\t\t{i18n.t(\"Save\")}\n\t\t\t\t\t</Button>\n\t\t\t\t</ButtonStrip>\n\t\t\t</ModalActions>\n\t\t</Modal>\n\t);\n}\n"]}
|
package/dist/components/Map/components/ThematicLayerConfiguration/ThematicLayerConfiguration.js
CHANGED
|
@@ -6,12 +6,12 @@ var ui = require('@dhis2/ui');
|
|
|
6
6
|
var reactHookForm = require('react-hook-form');
|
|
7
7
|
var react = require('react');
|
|
8
8
|
var lodash = require('lodash');
|
|
9
|
-
var
|
|
10
|
-
var IndicatorSelectorModal = require('./components/IndicatorSelectorModal');
|
|
11
|
-
var
|
|
12
|
-
var
|
|
13
|
-
var
|
|
14
|
-
var
|
|
9
|
+
var colors_js = require('../../utils/colors.js');
|
|
10
|
+
var IndicatorSelectorModal = require('./components/IndicatorSelectorModal/index.js');
|
|
11
|
+
var index_js = require('./components/LegendSetSelector/index.js');
|
|
12
|
+
var index_js$1 = require('./components/CustomLegend/index.js');
|
|
13
|
+
var RadiusField_js = require('./components/RadiusField.js');
|
|
14
|
+
var TypeField_js = require('./components/TypeField.js');
|
|
15
15
|
|
|
16
16
|
function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
|
|
17
17
|
|
|
@@ -33,10 +33,10 @@ function ThematicLayerConfiguration({
|
|
|
33
33
|
const onLegendTypeChange = (type2) => ({ value }) => {
|
|
34
34
|
if (type2 === "custom") {
|
|
35
35
|
form.setValue("dataItem.legendSet", void 0);
|
|
36
|
-
form.setValue("dataItem.legendConfig.scale",
|
|
36
|
+
form.setValue("dataItem.legendConfig.scale", colors_js.defaultClasses);
|
|
37
37
|
form.setValue(
|
|
38
38
|
"dataItem.legendConfig.colorClass",
|
|
39
|
-
|
|
39
|
+
colors_js.defaultColorScaleName
|
|
40
40
|
);
|
|
41
41
|
} else {
|
|
42
42
|
form.setValue("dataItem.legendConfig", void 0);
|
|
@@ -50,7 +50,7 @@ function ThematicLayerConfiguration({
|
|
|
50
50
|
[dataItemId, exclude]
|
|
51
51
|
);
|
|
52
52
|
return /* @__PURE__ */ jsxRuntime.jsx(reactHookForm.FormProvider, { ...form, children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "column gap-16", children: [
|
|
53
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
53
|
+
/* @__PURE__ */ jsxRuntime.jsx(TypeField_js.TypeField, {}),
|
|
54
54
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
55
55
|
reactHookForm.Controller,
|
|
56
56
|
{
|
|
@@ -158,7 +158,7 @@ function ThematicLayerConfiguration({
|
|
|
158
158
|
},
|
|
159
159
|
name: "dataItem.legendSet",
|
|
160
160
|
render: ({ field, fieldState }) => /* @__PURE__ */ jsxRuntime.jsx(
|
|
161
|
-
|
|
161
|
+
index_js.LegendSetSelector,
|
|
162
162
|
{
|
|
163
163
|
required: true,
|
|
164
164
|
selected: field.value,
|
|
@@ -168,10 +168,10 @@ function ThematicLayerConfiguration({
|
|
|
168
168
|
)
|
|
169
169
|
}
|
|
170
170
|
),
|
|
171
|
-
legendType === "custom" && /* @__PURE__ */ jsxRuntime.jsx(
|
|
171
|
+
legendType === "custom" && /* @__PURE__ */ jsxRuntime.jsx(index_js$1.CustomLegend, {})
|
|
172
172
|
] })
|
|
173
173
|
] }) }),
|
|
174
|
-
type === "bubble" && /* @__PURE__ */ jsxRuntime.jsx(ui.Field, { label: i18n__default.default.t("Radius"), children: /* @__PURE__ */ jsxRuntime.jsx(
|
|
174
|
+
type === "bubble" && /* @__PURE__ */ jsxRuntime.jsx(ui.Field, { label: i18n__default.default.t("Radius"), children: /* @__PURE__ */ jsxRuntime.jsx(RadiusField_js.RadiusField, {}) })
|
|
175
175
|
] })
|
|
176
176
|
] }) });
|
|
177
177
|
}
|
package/dist/components/Map/components/ThematicLayerConfiguration/ThematicLayerConfiguration.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/components/Map/components/ThematicLayerConfiguration/ThematicLayerConfiguration.tsx"],"names":["type"],"mappings":"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","sourcesContent":["import i18n from \"@dhis2/d2-i18n\";\nimport { Button, Field, InputField, Radio } from \"@dhis2/ui\";\nimport { Controller, FormProvider, useWatch } from \"react-hook-form\";\nimport React, { useMemo, useState } from \"react\";\nimport { compact } from \"lodash\";\nimport { defaultClasses, defaultColorScaleName } from \"../../utils/colors\";\nimport IndicatorSelectorModal from \"./components/IndicatorSelectorModal\";\nimport { LegendSetSelector } from \"./components/LegendSetSelector\";\nimport { CustomLegend } from \"./components/CustomLegend\";\nimport { ThematicLayerConfigurationProps } from \"./types\";\nimport { RadiusField } from \"./components/RadiusField\";\nimport { TypeField } from \"./components/TypeField\";\n\nexport function ThematicLayerConfiguration({\n\texclude,\n\tform,\n}: ThematicLayerConfigurationProps) {\n\tconst [type, legendSet, dataItemId] = useWatch({\n\t\tcontrol: form.control,\n\t\tname: [\"type\", \"dataItem.legendSet\", \"dataItem.id\"],\n\t});\n\tconst [legendType, setLegendType] = useState(\n\t\tlegendSet ? \"legendSet\" : \"custom\",\n\t);\n\tconst [dataSelectorOpen, setDataSelectorOpen] = useState(false);\n\n\tconst onLegendTypeChange =\n\t\t(type: string) =>\n\t\t({ value }: { value?: string }) => {\n\t\t\tif (type === \"custom\") {\n\t\t\t\tform.setValue(\"dataItem.legendSet\", undefined);\n\t\t\t\tform.setValue(\"dataItem.legendConfig.scale\", defaultClasses);\n\t\t\t\tform.setValue(\n\t\t\t\t\t\"dataItem.legendConfig.colorClass\",\n\t\t\t\t\tdefaultColorScaleName,\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\tform.setValue(\"dataItem.legendConfig\", undefined);\n\t\t\t}\n\t\t\tif (value) {\n\t\t\t\tsetLegendType(value);\n\t\t\t}\n\t\t};\n\tconst disabled = useMemo(\n\t\t() => exclude?.filter((indicator) => indicator !== dataItemId) ?? [],\n\t\t[dataItemId, exclude],\n\t);\n\treturn (\n\t\t<FormProvider {...form}>\n\t\t\t<div className=\"column gap-16\">\n\t\t\t\t<TypeField />\n\t\t\t\t<Controller\n\t\t\t\t\trules={{\n\t\t\t\t\t\tvalidate: {\n\t\t\t\t\t\t\trequired: (value: { id: string; name: string }) => {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\tBoolean(value?.id) ||\n\t\t\t\t\t\t\t\t\ti18n.t(\"A data item is required\")\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t}}\n\t\t\t\t\trender={({ field, fieldState }) => (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\tstyle={{ alignItems: \"flex-end\" }}\n\t\t\t\t\t\t\t\tclassName=\"row w-100 gap-16 align-end\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\tonClick={() => setDataSelectorOpen(true)}\n\t\t\t\t\t\t\t\t\tstyle={{ flex: 1 }}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<InputField\n\t\t\t\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t\t\t\terror={Boolean(fieldState.error)}\n\t\t\t\t\t\t\t\t\t\tvalidationText={\n\t\t\t\t\t\t\t\t\t\t\tfieldState.error?.message\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tdisabled\n\t\t\t\t\t\t\t\t\t\tinputWidth=\"100%\"\n\t\t\t\t\t\t\t\t\t\tlabel={i18n.t(\"Data Item\")}\n\t\t\t\t\t\t\t\t\t\tvalue={field.value?.displayName}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tonClick={() => setDataSelectorOpen(true)}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{field.value?.id\n\t\t\t\t\t\t\t\t\t\t? i18n.t(\"Change\")\n\t\t\t\t\t\t\t\t\t\t: i18n.t(\"Select\")}\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t{dataSelectorOpen && (\n\t\t\t\t\t\t\t\t<IndicatorSelectorModal\n\t\t\t\t\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\t\t\t\t\tonUpdate={(values: any[]) => {\n\t\t\t\t\t\t\t\t\t\tconst [indicator] = values ?? [];\n\t\t\t\t\t\t\t\t\t\tfield.onChange({\n\t\t\t\t\t\t\t\t\t\t\tid: indicator.id,\n\t\t\t\t\t\t\t\t\t\t\tdisplayName: indicator.displayName,\n\t\t\t\t\t\t\t\t\t\t\ttype: \"indicator\",\n\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\tonClose={() => setDataSelectorOpen(false)}\n\t\t\t\t\t\t\t\t\thide={!dataSelectorOpen}\n\t\t\t\t\t\t\t\t\tselected={compact([\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tid: field.value?.id,\n\t\t\t\t\t\t\t\t\t\t\tdisplayName:\n\t\t\t\t\t\t\t\t\t\t\t\tfield.value?.displayName,\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t])}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</>\n\t\t\t\t\t)}\n\t\t\t\t\tname={\"dataItem\"}\n\t\t\t\t/>\n\t\t\t\t<div>\n\t\t\t\t\t<Field label={i18n.t(\"Legend\")}>\n\t\t\t\t\t\t<div className=\"column gap-8\">\n\t\t\t\t\t\t\t<div className=\"row gap-16\">\n\t\t\t\t\t\t\t\t<Radio\n\t\t\t\t\t\t\t\t\tchecked={legendType === \"legendSet\"}\n\t\t\t\t\t\t\t\t\tlabel={i18n.t(\"Legend set\")}\n\t\t\t\t\t\t\t\t\tname=\"legendSet\"\n\t\t\t\t\t\t\t\t\tvalue=\"legendSet\"\n\t\t\t\t\t\t\t\t\tonChange={onLegendTypeChange(\"legendSet\")}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<Radio\n\t\t\t\t\t\t\t\t\tchecked={legendType === \"custom\"}\n\t\t\t\t\t\t\t\t\tlabel={i18n.t(\"Custom legend\")}\n\t\t\t\t\t\t\t\t\tname=\"custom\"\n\t\t\t\t\t\t\t\t\tvalue=\"custom\"\n\t\t\t\t\t\t\t\t\tonChange={onLegendTypeChange(\"custom\")}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div>\n\t\t\t\t\t\t\t\t{legendType === \"legendSet\" && (\n\t\t\t\t\t\t\t\t\t<Controller\n\t\t\t\t\t\t\t\t\t\trules={{\n\t\t\t\t\t\t\t\t\t\t\trequired: i18n.t(\n\t\t\t\t\t\t\t\t\t\t\t\t\"Legend set is required\",\n\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\tname=\"dataItem.legendSet\"\n\t\t\t\t\t\t\t\t\t\trender={({ field, fieldState }) => (\n\t\t\t\t\t\t\t\t\t\t\t<LegendSetSelector\n\t\t\t\t\t\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t\t\t\t\t\tselected={field.value}\n\t\t\t\t\t\t\t\t\t\t\t\t{...field}\n\t\t\t\t\t\t\t\t\t\t\t\t{...fieldState}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t{legendType === \"custom\" && <CustomLegend />}\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</Field>\n\t\t\t\t\t{type === \"bubble\" && (\n\t\t\t\t\t\t<Field label={i18n.t(\"Radius\")}>\n\t\t\t\t\t\t\t<RadiusField />\n\t\t\t\t\t\t</Field>\n\t\t\t\t\t)}\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</FormProvider>\n\t);\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../../../../../src/components/Map/components/ThematicLayerConfiguration/ThematicLayerConfiguration.tsx"],"names":["type"],"mappings":"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","sourcesContent":["import i18n from \"@dhis2/d2-i18n\";\nimport { Button, Field, InputField, Radio } from \"@dhis2/ui\";\nimport { Controller, FormProvider, useWatch } from \"react-hook-form\";\nimport React, { useMemo, useState } from \"react\";\nimport { compact } from \"lodash\";\nimport { defaultClasses, defaultColorScaleName } from \"../../utils/colors.js\";\nimport IndicatorSelectorModal from \"./components/IndicatorSelectorModal/index.js\";\nimport { LegendSetSelector } from \"./components/LegendSetSelector/index.js\";\nimport { CustomLegend } from \"./components/CustomLegend/index.js\";\nimport { ThematicLayerConfigurationProps } from \"./types/index.js\";\nimport { RadiusField } from \"./components/RadiusField.js\";\nimport { TypeField } from \"./components/TypeField.js\";\n\nexport function ThematicLayerConfiguration({\n\texclude,\n\tform,\n}: ThematicLayerConfigurationProps) {\n\tconst [type, legendSet, dataItemId] = useWatch({\n\t\tcontrol: form.control,\n\t\tname: [\"type\", \"dataItem.legendSet\", \"dataItem.id\"],\n\t});\n\tconst [legendType, setLegendType] = useState(\n\t\tlegendSet ? \"legendSet\" : \"custom\",\n\t);\n\tconst [dataSelectorOpen, setDataSelectorOpen] = useState(false);\n\n\tconst onLegendTypeChange =\n\t\t(type: string) =>\n\t\t({ value }: { value?: string }) => {\n\t\t\tif (type === \"custom\") {\n\t\t\t\tform.setValue(\"dataItem.legendSet\", undefined);\n\t\t\t\tform.setValue(\"dataItem.legendConfig.scale\", defaultClasses);\n\t\t\t\tform.setValue(\n\t\t\t\t\t\"dataItem.legendConfig.colorClass\",\n\t\t\t\t\tdefaultColorScaleName,\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\tform.setValue(\"dataItem.legendConfig\", undefined);\n\t\t\t}\n\t\t\tif (value) {\n\t\t\t\tsetLegendType(value);\n\t\t\t}\n\t\t};\n\tconst disabled = useMemo(\n\t\t() => exclude?.filter((indicator) => indicator !== dataItemId) ?? [],\n\t\t[dataItemId, exclude],\n\t);\n\treturn (\n\t\t<FormProvider {...form}>\n\t\t\t<div className=\"column gap-16\">\n\t\t\t\t<TypeField />\n\t\t\t\t<Controller\n\t\t\t\t\trules={{\n\t\t\t\t\t\tvalidate: {\n\t\t\t\t\t\t\trequired: (value: { id: string; name: string }) => {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\tBoolean(value?.id) ||\n\t\t\t\t\t\t\t\t\ti18n.t(\"A data item is required\")\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t}}\n\t\t\t\t\trender={({ field, fieldState }) => (\n\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\tstyle={{ alignItems: \"flex-end\" }}\n\t\t\t\t\t\t\t\tclassName=\"row w-100 gap-16 align-end\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\tonClick={() => setDataSelectorOpen(true)}\n\t\t\t\t\t\t\t\t\tstyle={{ flex: 1 }}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<InputField\n\t\t\t\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t\t\t\terror={Boolean(fieldState.error)}\n\t\t\t\t\t\t\t\t\t\tvalidationText={\n\t\t\t\t\t\t\t\t\t\t\tfieldState.error?.message\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tdisabled\n\t\t\t\t\t\t\t\t\t\tinputWidth=\"100%\"\n\t\t\t\t\t\t\t\t\t\tlabel={i18n.t(\"Data Item\")}\n\t\t\t\t\t\t\t\t\t\tvalue={field.value?.displayName}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tonClick={() => setDataSelectorOpen(true)}\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{field.value?.id\n\t\t\t\t\t\t\t\t\t\t? i18n.t(\"Change\")\n\t\t\t\t\t\t\t\t\t\t: i18n.t(\"Select\")}\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t{dataSelectorOpen && (\n\t\t\t\t\t\t\t\t<IndicatorSelectorModal\n\t\t\t\t\t\t\t\t\tdisabled={disabled}\n\t\t\t\t\t\t\t\t\tonUpdate={(values: any[]) => {\n\t\t\t\t\t\t\t\t\t\tconst [indicator] = values ?? [];\n\t\t\t\t\t\t\t\t\t\tfield.onChange({\n\t\t\t\t\t\t\t\t\t\t\tid: indicator.id,\n\t\t\t\t\t\t\t\t\t\t\tdisplayName: indicator.displayName,\n\t\t\t\t\t\t\t\t\t\t\ttype: \"indicator\",\n\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\tonClose={() => setDataSelectorOpen(false)}\n\t\t\t\t\t\t\t\t\thide={!dataSelectorOpen}\n\t\t\t\t\t\t\t\t\tselected={compact([\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tid: field.value?.id,\n\t\t\t\t\t\t\t\t\t\t\tdisplayName:\n\t\t\t\t\t\t\t\t\t\t\t\tfield.value?.displayName,\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t])}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</>\n\t\t\t\t\t)}\n\t\t\t\t\tname={\"dataItem\"}\n\t\t\t\t/>\n\t\t\t\t<div>\n\t\t\t\t\t<Field label={i18n.t(\"Legend\")}>\n\t\t\t\t\t\t<div className=\"column gap-8\">\n\t\t\t\t\t\t\t<div className=\"row gap-16\">\n\t\t\t\t\t\t\t\t<Radio\n\t\t\t\t\t\t\t\t\tchecked={legendType === \"legendSet\"}\n\t\t\t\t\t\t\t\t\tlabel={i18n.t(\"Legend set\")}\n\t\t\t\t\t\t\t\t\tname=\"legendSet\"\n\t\t\t\t\t\t\t\t\tvalue=\"legendSet\"\n\t\t\t\t\t\t\t\t\tonChange={onLegendTypeChange(\"legendSet\")}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t<Radio\n\t\t\t\t\t\t\t\t\tchecked={legendType === \"custom\"}\n\t\t\t\t\t\t\t\t\tlabel={i18n.t(\"Custom legend\")}\n\t\t\t\t\t\t\t\t\tname=\"custom\"\n\t\t\t\t\t\t\t\t\tvalue=\"custom\"\n\t\t\t\t\t\t\t\t\tonChange={onLegendTypeChange(\"custom\")}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div>\n\t\t\t\t\t\t\t\t{legendType === \"legendSet\" && (\n\t\t\t\t\t\t\t\t\t<Controller\n\t\t\t\t\t\t\t\t\t\trules={{\n\t\t\t\t\t\t\t\t\t\t\trequired: i18n.t(\n\t\t\t\t\t\t\t\t\t\t\t\t\"Legend set is required\",\n\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\tname=\"dataItem.legendSet\"\n\t\t\t\t\t\t\t\t\t\trender={({ field, fieldState }) => (\n\t\t\t\t\t\t\t\t\t\t\t<LegendSetSelector\n\t\t\t\t\t\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t\t\t\t\t\tselected={field.value}\n\t\t\t\t\t\t\t\t\t\t\t\t{...field}\n\t\t\t\t\t\t\t\t\t\t\t\t{...fieldState}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t{legendType === \"custom\" && <CustomLegend />}\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</Field>\n\t\t\t\t\t{type === \"bubble\" && (\n\t\t\t\t\t\t<Field label={i18n.t(\"Radius\")}>\n\t\t\t\t\t\t\t<RadiusField />\n\t\t\t\t\t\t</Field>\n\t\t\t\t\t)}\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</FormProvider>\n\t);\n}\n"]}
|