@hisptz/dhis2-analytics 1.0.4 → 1.0.6
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/build/cjs/components/ChartAnalytics/ChartAnalytics.stories.js +253 -0
- package/build/cjs/components/ChartAnalytics/ChartAnalytics.test.js +51 -0
- package/build/cjs/components/ChartAnalytics/components/DownloadMenu/components/Menu.js +48 -0
- package/build/cjs/components/ChartAnalytics/components/DownloadMenu/constants/menu.js +34 -0
- package/build/cjs/components/ChartAnalytics/components/DownloadMenu/index.js +67 -0
- package/build/cjs/components/ChartAnalytics/components/DownloadMenu/interfaces/menu.js +1 -0
- package/{src → build/cjs}/components/ChartAnalytics/data/column-data.json +0 -0
- package/{src → build/cjs}/components/ChartAnalytics/data/complex-multi-series-data.json +0 -0
- package/{src → build/cjs}/components/ChartAnalytics/data/multi-series-data.json +0 -0
- package/{src → build/cjs}/components/ChartAnalytics/data/pie-data.json +0 -0
- package/{src → build/cjs}/components/ChartAnalytics/data/stacked-chart-data.json +0 -0
- package/build/cjs/components/ChartAnalytics/hooks/useChart.js +38 -0
- package/build/cjs/components/ChartAnalytics/index.js +69 -0
- package/build/cjs/components/ChartAnalytics/models/column.js +53 -0
- package/build/cjs/components/ChartAnalytics/models/index.js +102 -0
- package/build/cjs/components/ChartAnalytics/models/line.js +35 -0
- package/build/cjs/components/ChartAnalytics/models/multi-series.js +111 -0
- package/build/cjs/components/ChartAnalytics/models/pie.js +53 -0
- package/build/cjs/components/ChartAnalytics/services/export.js +50 -0
- package/{src → build/cjs}/components/ChartAnalytics/styles/custom-highchart.css +0 -0
- package/build/cjs/components/ChartAnalytics/types/props.js +1 -0
- package/build/cjs/components/ChartAnalytics/utils/chart.js +133 -0
- package/build/cjs/components/CircularProgressDashboard/CircularProgressIndicator.stories.js +45 -0
- package/build/cjs/components/CircularProgressDashboard/CircularProgressIndicator.test.js +13 -0
- package/build/cjs/components/CircularProgressDashboard/index.js +49 -0
- package/build/cjs/components/CircularProgressDashboard/types/props.js +1 -0
- package/build/cjs/components/Map/Map.stories.js +352 -0
- package/build/cjs/components/Map/components/EarthEngineLayerConfiguration/EarthEngineLayerConfigModal.stories.js +32 -0
- package/build/cjs/components/Map/components/EarthEngineLayerConfiguration/EarthEngineLayerConfiguration.stories.js +40 -0
- package/build/cjs/components/Map/components/EarthEngineLayerConfiguration/index.js +458 -0
- package/build/cjs/components/Map/components/MapArea/index.js +101 -0
- package/build/cjs/components/Map/components/MapArea/interfaces/index.js +1 -0
- package/build/cjs/components/Map/components/MapControls/components/CustomControl/index.js +32 -0
- package/build/cjs/components/Map/components/MapControls/components/DownloadControl/index.js +25 -0
- package/build/cjs/components/Map/components/MapControls/components/FullscreenControl/index.js +13 -0
- package/build/cjs/components/Map/components/MapControls/index.js +42 -0
- package/build/cjs/components/Map/components/MapLayer/components/BoundaryLayer/hooks/useBoundaryData.js +13 -0
- package/build/cjs/components/Map/components/MapLayer/components/BoundaryLayer/index.js +51 -0
- package/build/cjs/components/Map/components/MapLayer/components/GoogleEngineLayer/components/EarthEngineLegend.js +106 -0
- package/build/cjs/components/Map/components/MapLayer/components/GoogleEngineLayer/constants/index.js +379 -0
- package/build/cjs/components/Map/components/MapLayer/components/GoogleEngineLayer/hooks/index.js +36 -0
- package/build/cjs/components/Map/components/MapLayer/components/GoogleEngineLayer/index.js +200 -0
- package/build/cjs/components/Map/components/MapLayer/components/GoogleEngineLayer/interfaces/index.js +1 -0
- package/build/cjs/components/Map/components/MapLayer/components/GoogleEngineLayer/services/api.js +10 -0
- package/build/cjs/components/Map/components/MapLayer/components/GoogleEngineLayer/services/engine.js +412 -0
- package/build/cjs/components/Map/components/MapLayer/components/GoogleEngineLayer/utils/index.js +124 -0
- package/{src → build/cjs}/components/Map/components/MapLayer/components/LegendArea/LegendArea.module.css +0 -0
- package/build/cjs/components/Map/components/MapLayer/components/LegendArea/components/LegendCardHeader/index.js +26 -0
- package/build/cjs/components/Map/components/MapLayer/components/LegendArea/index.js +181 -0
- package/build/cjs/components/Map/components/MapLayer/components/PointLayer/components/PointLegend/index.js +86 -0
- package/build/cjs/components/Map/components/MapLayer/components/PointLayer/hooks/index.js +14 -0
- package/build/cjs/components/Map/components/MapLayer/components/PointLayer/index.js +46 -0
- package/build/cjs/components/Map/components/MapLayer/components/ThematicLayer/components/Bubble/components/BubbleLegend/components/Bubble.js +57 -0
- package/build/cjs/components/Map/components/MapLayer/components/ThematicLayer/components/Bubble/components/BubbleLegend/components/Bubbles.js +145 -0
- package/build/cjs/components/Map/components/MapLayer/components/ThematicLayer/components/Bubble/components/BubbleLegend/index.js +43 -0
- package/build/cjs/components/Map/components/MapLayer/components/ThematicLayer/components/Bubble/index.js +56 -0
- package/build/cjs/components/Map/components/MapLayer/components/ThematicLayer/components/Choropleth/components/ChoroplethLegend.js +61 -0
- package/build/cjs/components/Map/components/MapLayer/components/ThematicLayer/components/Choropleth/index.js +43 -0
- package/build/cjs/components/Map/components/MapLayer/components/ThematicLayer/components/CustomTooltip/index.js +35 -0
- package/build/cjs/components/Map/components/MapLayer/components/ThematicLayer/hooks/config.js +15 -0
- package/build/cjs/components/Map/components/MapLayer/components/ThematicLayer/index.js +57 -0
- package/{src → build/cjs}/components/Map/components/MapLayer/components/ThematicLayer/styles/legends.css +0 -0
- package/build/cjs/components/Map/components/MapLayer/index.js +40 -0
- package/build/cjs/components/Map/components/MapLayer/interfaces/index.js +8 -0
- package/build/cjs/components/Map/components/MapProvider/components/MapLayerProvider/hooks/index.js +389 -0
- package/build/cjs/components/Map/components/MapProvider/components/MapLayerProvider/index.js +116 -0
- package/build/cjs/components/Map/components/MapProvider/hooks/index.js +19 -0
- package/build/cjs/components/Map/components/MapProvider/index.js +121 -0
- package/build/cjs/components/Map/components/MapUpdater/index.js +24 -0
- package/build/cjs/components/Map/components/ThematicLayerConfiguration/ThematicLayerConfigModal.stories.js +32 -0
- package/build/cjs/components/Map/components/ThematicLayerConfiguration/ThematicLayerConfiguration.stories.js +40 -0
- package/build/cjs/components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/components/ColorScale/index.js +40 -0
- package/build/cjs/components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/constants/colors.js +428 -0
- package/build/cjs/components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/index.js +63 -0
- package/{src → build/cjs}/components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/styles/ColorScale.module.css +0 -0
- package/{src → build/cjs}/components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/styles/ColorScaleSelect.module.css +0 -0
- package/build/cjs/components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/utils/colors.js +72 -0
- package/build/cjs/components/Map/components/ThematicLayerConfiguration/components/CustomLegend/index.js +71 -0
- package/build/cjs/components/Map/components/ThematicLayerConfiguration/components/IndicatorSelectorModal/index.js +47 -0
- package/build/cjs/components/Map/components/ThematicLayerConfiguration/components/LegendSetSelector/index.js +79 -0
- package/build/cjs/components/Map/components/ThematicLayerConfiguration/index.js +265 -0
- package/build/cjs/components/Map/constants/colors.js +428 -0
- package/build/cjs/components/Map/constants/legendSet.js +22 -0
- package/build/cjs/components/Map/hooks/map.js +52 -0
- package/build/cjs/components/Map/index.js +108 -0
- package/build/cjs/components/Map/interfaces/index.js +1 -0
- package/build/cjs/components/Map/state/index.js +23 -0
- package/build/cjs/components/Map/utils/colors.js +78 -0
- package/build/cjs/components/Map/utils/helpers.js +25 -0
- package/build/cjs/components/Map/utils/map.js +161 -0
- package/build/cjs/components/SingleValueContainer/SingleValueContainer.stories.js +127 -0
- package/build/cjs/components/SingleValueContainer/SingleValueContainer.test.js +23 -0
- package/build/cjs/components/SingleValueContainer/components/SingleValueItem/SingleValueItem.js +54 -0
- package/build/cjs/components/SingleValueContainer/components/SingleValueItem/SingleValuePercentage.js +24 -0
- package/build/cjs/components/SingleValueContainer/index.js +43 -0
- package/{src → build/cjs}/components/SingleValueContainer/styles/SingleValueContainer.module.css +0 -0
- package/build/cjs/components/SingleValueContainer/types/props.js +1 -0
- package/{src → build/cjs}/data/map.json +0 -0
- package/build/cjs/dataProviders/map.js +31 -0
- package/build/cjs/index.js +49 -0
- package/build/cjs/index.test.js +7 -0
- package/build/cjs/locales/en/translations.json +128 -0
- package/build/cjs/locales/index.js +22 -0
- package/build/es/components/ChartAnalytics/ChartAnalytics.stories.js +235 -0
- package/build/es/components/ChartAnalytics/ChartAnalytics.test.js +46 -0
- package/build/es/components/ChartAnalytics/components/DownloadMenu/components/Menu.js +41 -0
- package/build/es/components/ChartAnalytics/components/DownloadMenu/constants/menu.js +26 -0
- package/build/es/components/ChartAnalytics/components/DownloadMenu/index.js +58 -0
- package/build/es/components/ChartAnalytics/components/DownloadMenu/interfaces/menu.js +1 -0
- package/build/es/components/ChartAnalytics/data/column-data.json +210 -0
- package/build/es/components/ChartAnalytics/data/complex-multi-series-data.json +124 -0
- package/build/es/components/ChartAnalytics/data/multi-series-data.json +536 -0
- package/build/es/components/ChartAnalytics/data/pie-data.json +115 -0
- package/build/es/components/ChartAnalytics/data/stacked-chart-data.json +415 -0
- package/build/es/components/ChartAnalytics/hooks/useChart.js +32 -0
- package/build/es/components/ChartAnalytics/index.js +40 -0
- package/build/es/components/ChartAnalytics/models/column.js +45 -0
- package/build/es/components/ChartAnalytics/models/index.js +95 -0
- package/build/es/components/ChartAnalytics/models/line.js +28 -0
- package/build/es/components/ChartAnalytics/models/multi-series.js +104 -0
- package/build/es/components/ChartAnalytics/models/pie.js +46 -0
- package/build/es/components/ChartAnalytics/services/export.js +36 -0
- package/build/es/components/ChartAnalytics/styles/custom-highchart.css +48 -0
- package/build/es/components/ChartAnalytics/types/props.js +1 -0
- package/build/es/components/ChartAnalytics/utils/chart.js +122 -0
- package/{src/components/CircularProgressDashboard/CircularProgressIndicator.stories.tsx → build/es/components/CircularProgressDashboard/CircularProgressIndicator.stories.js} +9 -16
- package/build/es/components/CircularProgressDashboard/CircularProgressIndicator.test.js +10 -0
- package/build/es/components/CircularProgressDashboard/index.js +41 -0
- package/build/es/components/CircularProgressDashboard/types/props.js +1 -0
- package/build/es/components/Map/Map.stories.js +334 -0
- package/build/es/components/Map/components/EarthEngineLayerConfiguration/EarthEngineLayerConfigModal.stories.js +23 -0
- package/build/es/components/Map/components/EarthEngineLayerConfiguration/EarthEngineLayerConfiguration.stories.js +31 -0
- package/build/es/components/Map/components/EarthEngineLayerConfiguration/index.js +448 -0
- package/build/es/components/Map/components/MapArea/index.js +91 -0
- package/build/es/components/Map/components/MapArea/interfaces/index.js +1 -0
- package/build/es/components/Map/components/MapControls/components/CustomControl/index.js +25 -0
- package/build/es/components/Map/components/MapControls/components/DownloadControl/index.js +18 -0
- package/build/es/components/Map/components/MapControls/components/FullscreenControl/index.js +6 -0
- package/build/es/components/Map/components/MapControls/index.js +35 -0
- package/build/es/components/Map/components/MapLayer/components/BoundaryLayer/hooks/useBoundaryData.js +7 -0
- package/build/es/components/Map/components/MapLayer/components/BoundaryLayer/index.js +41 -0
- package/build/es/components/Map/components/MapLayer/components/GoogleEngineLayer/components/EarthEngineLegend.js +95 -0
- package/build/es/components/Map/components/MapLayer/components/GoogleEngineLayer/constants/index.js +369 -0
- package/build/es/components/Map/components/MapLayer/components/GoogleEngineLayer/hooks/index.js +29 -0
- package/build/es/components/Map/components/MapLayer/components/GoogleEngineLayer/index.js +191 -0
- package/build/es/components/Map/components/MapLayer/components/GoogleEngineLayer/interfaces/index.js +1 -0
- package/build/es/components/Map/components/MapLayer/components/GoogleEngineLayer/services/api.js +10 -0
- package/build/es/components/Map/components/MapLayer/components/GoogleEngineLayer/services/engine.js +403 -0
- package/build/es/components/Map/components/MapLayer/components/GoogleEngineLayer/utils/index.js +111 -0
- package/build/es/components/Map/components/MapLayer/components/LegendArea/LegendArea.module.css +12 -0
- package/build/es/components/Map/components/MapLayer/components/LegendArea/components/LegendCardHeader/index.js +19 -0
- package/build/es/components/Map/components/MapLayer/components/LegendArea/index.js +172 -0
- package/build/es/components/Map/components/MapLayer/components/PointLayer/components/PointLegend/index.js +76 -0
- package/build/es/components/Map/components/MapLayer/components/PointLayer/hooks/index.js +8 -0
- package/build/es/components/Map/components/MapLayer/components/PointLayer/index.js +39 -0
- package/build/es/components/Map/components/MapLayer/components/ThematicLayer/components/Bubble/components/BubbleLegend/components/Bubble.js +49 -0
- package/{src/components/Map/components/MapLayer/components/ThematicLayer/components/Bubble/components/BubbleLegend/components/Bubbles.tsx → build/es/components/Map/components/MapLayer/components/ThematicLayer/components/Bubble/components/BubbleLegend/components/Bubbles.js} +57 -74
- package/build/es/components/Map/components/MapLayer/components/ThematicLayer/components/Bubble/components/BubbleLegend/index.js +33 -0
- package/build/es/components/Map/components/MapLayer/components/ThematicLayer/components/Bubble/index.js +47 -0
- package/build/es/components/Map/components/MapLayer/components/ThematicLayer/components/Choropleth/components/ChoroplethLegend.js +50 -0
- package/build/es/components/Map/components/MapLayer/components/ThematicLayer/components/Choropleth/index.js +36 -0
- package/build/es/components/Map/components/MapLayer/components/ThematicLayer/components/CustomTooltip/index.js +28 -0
- package/build/es/components/Map/components/MapLayer/components/ThematicLayer/hooks/config.js +9 -0
- package/build/es/components/Map/components/MapLayer/components/ThematicLayer/index.js +50 -0
- package/build/es/components/Map/components/MapLayer/components/ThematicLayer/styles/legends.css +62 -0
- package/build/es/components/Map/components/MapLayer/index.js +33 -0
- package/build/es/components/Map/components/MapLayer/interfaces/index.js +1 -0
- package/build/es/components/Map/components/MapProvider/components/MapLayerProvider/hooks/index.js +381 -0
- package/build/es/components/Map/components/MapProvider/components/MapLayerProvider/index.js +107 -0
- package/{src/components/Map/components/MapProvider/hooks/index.ts → build/es/components/Map/components/MapProvider/hooks/index.js} +3 -6
- package/build/es/components/Map/components/MapProvider/index.js +112 -0
- package/build/es/components/Map/components/MapUpdater/index.js +17 -0
- package/build/es/components/Map/components/ThematicLayerConfiguration/ThematicLayerConfigModal.stories.js +23 -0
- package/build/es/components/Map/components/ThematicLayerConfiguration/ThematicLayerConfiguration.stories.js +31 -0
- package/build/es/components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/components/ColorScale/index.js +33 -0
- package/{src/components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/constants/colors.ts → build/es/components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/constants/colors.js} +46 -59
- package/build/es/components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/index.js +53 -0
- package/build/es/components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/styles/ColorScale.module.css +15 -0
- package/build/es/components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/styles/ColorScaleSelect.module.css +12 -0
- package/build/es/components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/utils/colors.js +56 -0
- package/build/es/components/Map/components/ThematicLayerConfiguration/components/CustomLegend/index.js +64 -0
- package/build/es/components/Map/components/ThematicLayerConfiguration/components/IndicatorSelectorModal/index.js +38 -0
- package/build/es/components/Map/components/ThematicLayerConfiguration/components/LegendSetSelector/index.js +70 -0
- package/build/es/components/Map/components/ThematicLayerConfiguration/index.js +254 -0
- package/{src/components/Map/constants/colors.ts → build/es/components/Map/constants/colors.js} +46 -59
- package/build/es/components/Map/constants/legendSet.js +15 -0
- package/build/es/components/Map/hooks/map.js +44 -0
- package/build/es/components/Map/index.js +51 -0
- package/build/es/components/Map/interfaces/index.js +1 -0
- package/build/es/components/Map/state/index.js +14 -0
- package/build/es/components/Map/utils/colors.js +61 -0
- package/build/es/components/Map/utils/helpers.js +14 -0
- package/build/es/components/Map/utils/map.js +147 -0
- package/build/es/components/SingleValueContainer/SingleValueContainer.stories.js +115 -0
- package/build/es/components/SingleValueContainer/SingleValueContainer.test.js +20 -0
- package/build/es/components/SingleValueContainer/components/SingleValueItem/SingleValueItem.js +47 -0
- package/build/es/components/SingleValueContainer/components/SingleValueItem/SingleValuePercentage.js +17 -0
- package/build/es/components/SingleValueContainer/index.js +29 -0
- package/build/es/components/SingleValueContainer/styles/SingleValueContainer.module.css +39 -0
- package/build/es/components/SingleValueContainer/types/props.js +1 -0
- package/build/es/data/map.json +5984 -0
- package/build/es/dataProviders/map.js +24 -0
- package/{src/index.ts → build/es/index.js} +1 -0
- package/build/es/index.test.js +6 -0
- package/build/es/locales/en/translations.json +128 -0
- package/build/es/locales/index.js +13 -0
- package/package.json +21 -4
- package/d2.config.js +0 -8
- package/i18n/en.pot +0 -409
- package/src/components/ChartAnalytics/ChartAnalytics.stories.tsx +0 -250
- package/src/components/ChartAnalytics/ChartAnalytics.test.tsx +0 -51
- package/src/components/ChartAnalytics/components/DownloadMenu/components/Menu.tsx +0 -48
- package/src/components/ChartAnalytics/components/DownloadMenu/constants/menu.ts +0 -38
- package/src/components/ChartAnalytics/components/DownloadMenu/index.tsx +0 -67
- package/src/components/ChartAnalytics/components/DownloadMenu/interfaces/menu.ts +0 -1
- package/src/components/ChartAnalytics/hooks/useChart.ts +0 -35
- package/src/components/ChartAnalytics/index.tsx +0 -23
- package/src/components/ChartAnalytics/models/column.ts +0 -50
- package/src/components/ChartAnalytics/models/index.ts +0 -78
- package/src/components/ChartAnalytics/models/line.ts +0 -31
- package/src/components/ChartAnalytics/models/multi-series.ts +0 -115
- package/src/components/ChartAnalytics/models/pie.ts +0 -54
- package/src/components/ChartAnalytics/services/export.ts +0 -38
- package/src/components/ChartAnalytics/types/props.tsx +0 -48
- package/src/components/ChartAnalytics/utils/chart.ts +0 -123
- package/src/components/CircularProgressDashboard/CircularProgressIndicator.test.tsx +0 -9
- package/src/components/CircularProgressDashboard/index.tsx +0 -35
- package/src/components/CircularProgressDashboard/types/props.tsx +0 -17
- package/src/components/Map/Map.stories.tsx +0 -339
- package/src/components/Map/components/EarthEngineLayerConfiguration/EarthEngineLayerConfigModal.stories.tsx +0 -28
- package/src/components/Map/components/EarthEngineLayerConfiguration/EarthEngineLayerConfiguration.stories.tsx +0 -34
- package/src/components/Map/components/EarthEngineLayerConfiguration/index.tsx +0 -412
- package/src/components/Map/components/MapArea/index.tsx +0 -83
- package/src/components/Map/components/MapArea/interfaces/index.ts +0 -39
- package/src/components/Map/components/MapControls/components/CustomControl/index.tsx +0 -24
- package/src/components/Map/components/MapControls/components/DownloadControl/index.tsx +0 -10
- package/src/components/Map/components/MapControls/components/FullscreenControl/index.tsx +0 -7
- package/src/components/Map/components/MapControls/index.tsx +0 -24
- package/src/components/Map/components/MapLayer/components/BoundaryLayer/hooks/useBoundaryData.ts +0 -7
- package/src/components/Map/components/MapLayer/components/BoundaryLayer/index.tsx +0 -55
- package/src/components/Map/components/MapLayer/components/GoogleEngineLayer/components/EarthEngineLegend.tsx +0 -76
- package/src/components/Map/components/MapLayer/components/GoogleEngineLayer/constants/index.ts +0 -430
- package/src/components/Map/components/MapLayer/components/GoogleEngineLayer/hooks/index.ts +0 -34
- package/src/components/Map/components/MapLayer/components/GoogleEngineLayer/index.tsx +0 -185
- package/src/components/Map/components/MapLayer/components/GoogleEngineLayer/interfaces/index.ts +0 -56
- package/src/components/Map/components/MapLayer/components/GoogleEngineLayer/services/api.js +0 -34233
- package/src/components/Map/components/MapLayer/components/GoogleEngineLayer/services/engine.ts +0 -423
- package/src/components/Map/components/MapLayer/components/GoogleEngineLayer/utils/index.ts +0 -105
- package/src/components/Map/components/MapLayer/components/LegendArea/components/LegendCardHeader/index.tsx +0 -17
- package/src/components/Map/components/MapLayer/components/LegendArea/index.tsx +0 -168
- package/src/components/Map/components/MapLayer/components/PointLayer/components/PointLegend/index.tsx +0 -44
- package/src/components/Map/components/MapLayer/components/PointLayer/hooks/index.ts +0 -8
- package/src/components/Map/components/MapLayer/components/PointLayer/index.tsx +0 -36
- package/src/components/Map/components/MapLayer/components/ThematicLayer/components/Bubble/components/BubbleLegend/components/Bubble.tsx +0 -48
- package/src/components/Map/components/MapLayer/components/ThematicLayer/components/Bubble/components/BubbleLegend/index.tsx +0 -39
- package/src/components/Map/components/MapLayer/components/ThematicLayer/components/Bubble/index.tsx +0 -57
- package/src/components/Map/components/MapLayer/components/ThematicLayer/components/Choropleth/components/ChoroplethLegend.tsx +0 -43
- package/src/components/Map/components/MapLayer/components/ThematicLayer/components/Choropleth/index.tsx +0 -38
- package/src/components/Map/components/MapLayer/components/ThematicLayer/components/CustomTooltip/index.tsx +0 -26
- package/src/components/Map/components/MapLayer/components/ThematicLayer/hooks/config.ts +0 -10
- package/src/components/Map/components/MapLayer/components/ThematicLayer/index.tsx +0 -46
- package/src/components/Map/components/MapLayer/index.tsx +0 -32
- package/src/components/Map/components/MapLayer/interfaces/index.ts +0 -139
- package/src/components/Map/components/MapProvider/components/MapLayerProvider/hooks/index.tsx +0 -359
- package/src/components/Map/components/MapProvider/components/MapLayerProvider/index.tsx +0 -105
- package/src/components/Map/components/MapProvider/index.tsx +0 -93
- package/src/components/Map/components/MapUpdater/index.tsx +0 -8
- package/src/components/Map/components/ThematicLayerConfiguration/ThematicLayerConfigModal.stories.tsx +0 -28
- package/src/components/Map/components/ThematicLayerConfiguration/ThematicLayerConfiguration.stories.tsx +0 -34
- package/src/components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/components/ColorScale/index.tsx +0 -24
- package/src/components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/index.tsx +0 -50
- package/src/components/Map/components/ThematicLayerConfiguration/components/ColorScaleSelect/utils/colors.ts +0 -91
- package/src/components/Map/components/ThematicLayerConfiguration/components/CustomLegend/index.tsx +0 -45
- package/src/components/Map/components/ThematicLayerConfiguration/components/IndicatorSelectorModal/index.tsx +0 -47
- package/src/components/Map/components/ThematicLayerConfiguration/components/LegendSetSelector/index.tsx +0 -57
- package/src/components/Map/components/ThematicLayerConfiguration/index.tsx +0 -248
- package/src/components/Map/constants/legendSet.ts +0 -19
- package/src/components/Map/hooks/map.ts +0 -47
- package/src/components/Map/index.tsx +0 -65
- package/src/components/Map/interfaces/index.ts +0 -57
- package/src/components/Map/state/index.tsx +0 -31
- package/src/components/Map/utils/colors.ts +0 -95
- package/src/components/Map/utils/helpers.ts +0 -15
- package/src/components/Map/utils/map.ts +0 -150
- package/src/components/SingleValueContainer/SingleValueContainer.stories.tsx +0 -146
- package/src/components/SingleValueContainer/SingleValueContainer.test.tsx +0 -24
- package/src/components/SingleValueContainer/components/SingleValueItem/SingleValueItem.tsx +0 -46
- package/src/components/SingleValueContainer/components/SingleValueItem/SingleValuePercentage.tsx +0 -12
- package/src/components/SingleValueContainer/index.tsx +0 -30
- package/src/components/SingleValueContainer/types/props.tsx +0 -16
- package/src/dataProviders/map.tsx +0 -24
- package/src/index.test.ts +0 -7
- package/tsconfig.json +0 -45
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
2
|
+
import i18n from "@dhis2/d2-i18n";
|
|
3
|
+
import { Button, ButtonStrip, Modal, ModalActions, ModalContent, ModalTitle } from "@dhis2/ui";
|
|
4
|
+
import React, { useCallback, useState } from "react";
|
|
5
|
+
import { DataSourceSelector } from "@hisptz/dhis2-ui";
|
|
6
|
+
export default function IndicatorSelectorModal(_ref) {
|
|
7
|
+
let {
|
|
8
|
+
onUpdate,
|
|
9
|
+
onClose,
|
|
10
|
+
hide,
|
|
11
|
+
selected,
|
|
12
|
+
disabled,
|
|
13
|
+
...props
|
|
14
|
+
} = _ref;
|
|
15
|
+
const [selectedIndicators, setSelectedIndicators] = useState(selected);
|
|
16
|
+
const onUpdateClick = useCallback(() => {
|
|
17
|
+
onUpdate(selectedIndicators);
|
|
18
|
+
onClose();
|
|
19
|
+
}, [onUpdate, selectedIndicators]);
|
|
20
|
+
const onSelect = useCallback(indicators => {
|
|
21
|
+
setSelectedIndicators(indicators);
|
|
22
|
+
}, []);
|
|
23
|
+
return /*#__PURE__*/React.createElement(Modal, {
|
|
24
|
+
placement: "middle",
|
|
25
|
+
hide: hide,
|
|
26
|
+
onClose: onClose
|
|
27
|
+
}, /*#__PURE__*/React.createElement(ModalTitle, null, i18n.t("Select Data Item")), /*#__PURE__*/React.createElement(ModalContent, null, /*#__PURE__*/React.createElement(DataSourceSelector, _extends({}, props, {
|
|
28
|
+
disabled: disabled,
|
|
29
|
+
maxSelections: 1,
|
|
30
|
+
selected: selectedIndicators,
|
|
31
|
+
onSelect: onSelect
|
|
32
|
+
}))), /*#__PURE__*/React.createElement(ModalActions, null, /*#__PURE__*/React.createElement(ButtonStrip, null, /*#__PURE__*/React.createElement(Button, {
|
|
33
|
+
onClick: onClose
|
|
34
|
+
}, i18n.t("Cancel")), /*#__PURE__*/React.createElement(Button, {
|
|
35
|
+
primary: true,
|
|
36
|
+
onClick: onUpdateClick
|
|
37
|
+
}, i18n.t("Update")))));
|
|
38
|
+
}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
2
|
+
import { useDataQuery } from "@dhis2/app-runtime";
|
|
3
|
+
import React, { useMemo } from "react";
|
|
4
|
+
import { SingleSelectField, SingleSelectOption } from "@dhis2/ui";
|
|
5
|
+
import i18n from "@dhis2/d2-i18n";
|
|
6
|
+
import { isEmpty } from "lodash";
|
|
7
|
+
const legendSetQuery = {
|
|
8
|
+
legendSets: {
|
|
9
|
+
resource: "legendSets",
|
|
10
|
+
params: {
|
|
11
|
+
fields: ["displayName", "id"]
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
};
|
|
15
|
+
export function LegendSetSelector(_ref) {
|
|
16
|
+
let {
|
|
17
|
+
selected,
|
|
18
|
+
onChange,
|
|
19
|
+
error,
|
|
20
|
+
required,
|
|
21
|
+
...props
|
|
22
|
+
} = _ref;
|
|
23
|
+
const {
|
|
24
|
+
loading,
|
|
25
|
+
data
|
|
26
|
+
} = useDataQuery(legendSetQuery);
|
|
27
|
+
const options = useMemo(() => {
|
|
28
|
+
if (data) {
|
|
29
|
+
var _data$legendSets, _data$legendSets$lege;
|
|
30
|
+
return data === null || data === void 0 ? void 0 : (_data$legendSets = data.legendSets) === null || _data$legendSets === void 0 ? void 0 : (_data$legendSets$lege = _data$legendSets.legendSets) === null || _data$legendSets$lege === void 0 ? void 0 : _data$legendSets$lege.map(_ref2 => {
|
|
31
|
+
let {
|
|
32
|
+
displayName,
|
|
33
|
+
id
|
|
34
|
+
} = _ref2;
|
|
35
|
+
return {
|
|
36
|
+
label: displayName,
|
|
37
|
+
value: id
|
|
38
|
+
};
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
return [];
|
|
42
|
+
}, [data]);
|
|
43
|
+
return /*#__PURE__*/React.createElement(SingleSelectField, _extends({
|
|
44
|
+
required: required,
|
|
45
|
+
error: Boolean(error),
|
|
46
|
+
validationText: error === null || error === void 0 ? void 0 : error.message
|
|
47
|
+
}, props, {
|
|
48
|
+
label: i18n.t("Legend set"),
|
|
49
|
+
filterable: true,
|
|
50
|
+
selected: !isEmpty(options) ? selected : undefined,
|
|
51
|
+
loadingText: i18n.t("Please wait..."),
|
|
52
|
+
onChange: _ref3 => {
|
|
53
|
+
let {
|
|
54
|
+
selected
|
|
55
|
+
} = _ref3;
|
|
56
|
+
return onChange(selected);
|
|
57
|
+
},
|
|
58
|
+
loading: loading
|
|
59
|
+
}), options === null || options === void 0 ? void 0 : options.map(_ref4 => {
|
|
60
|
+
let {
|
|
61
|
+
label,
|
|
62
|
+
value
|
|
63
|
+
} = _ref4;
|
|
64
|
+
return /*#__PURE__*/React.createElement(SingleSelectOption, {
|
|
65
|
+
key: `${label}-legend-option`,
|
|
66
|
+
label: label,
|
|
67
|
+
value: value
|
|
68
|
+
});
|
|
69
|
+
}));
|
|
70
|
+
}
|
|
@@ -0,0 +1,254 @@
|
|
|
1
|
+
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
2
|
+
import i18n from "@dhis2/d2-i18n";
|
|
3
|
+
import { Button, ButtonStrip, Field, InputField, Modal, ModalActions, ModalContent, ModalTitle, Radio, SingleSelectField, SingleSelectOption } from "@dhis2/ui";
|
|
4
|
+
import { Controller, FormProvider, useForm, useFormContext, useWatch } from "react-hook-form";
|
|
5
|
+
import React, { useMemo, useState } from "react";
|
|
6
|
+
import { compact } from "lodash";
|
|
7
|
+
import { defaultClasses, defaultColorScaleName } from "../../utils/colors";
|
|
8
|
+
import IndicatorSelectorModal from "./components/IndicatorSelectorModal";
|
|
9
|
+
import { LegendSetSelector } from "./components/LegendSetSelector";
|
|
10
|
+
import { CustomLegend } from "./components/CustomLegend";
|
|
11
|
+
export function RadiusField() {
|
|
12
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
13
|
+
className: "row gap-8"
|
|
14
|
+
}, /*#__PURE__*/React.createElement(Controller, {
|
|
15
|
+
render: _ref => {
|
|
16
|
+
var _fieldState$error, _field$value;
|
|
17
|
+
let {
|
|
18
|
+
field,
|
|
19
|
+
fieldState
|
|
20
|
+
} = _ref;
|
|
21
|
+
return /*#__PURE__*/React.createElement(InputField, _extends({}, field, {
|
|
22
|
+
error: Boolean(fieldState.error),
|
|
23
|
+
validationText: (_fieldState$error = fieldState.error) === null || _fieldState$error === void 0 ? void 0 : _fieldState$error.message,
|
|
24
|
+
value: (_field$value = field.value) === null || _field$value === void 0 ? void 0 : _field$value.toString(),
|
|
25
|
+
onChange: _ref2 => {
|
|
26
|
+
let {
|
|
27
|
+
value
|
|
28
|
+
} = _ref2;
|
|
29
|
+
return field.onChange(parseInt(value));
|
|
30
|
+
},
|
|
31
|
+
label: i18n.t("Min"),
|
|
32
|
+
type: "number"
|
|
33
|
+
}));
|
|
34
|
+
},
|
|
35
|
+
name: "radius.min"
|
|
36
|
+
}), /*#__PURE__*/React.createElement(Controller, {
|
|
37
|
+
render: _ref3 => {
|
|
38
|
+
var _field$value2;
|
|
39
|
+
let {
|
|
40
|
+
field,
|
|
41
|
+
fieldState
|
|
42
|
+
} = _ref3;
|
|
43
|
+
return /*#__PURE__*/React.createElement(InputField, {
|
|
44
|
+
value: (_field$value2 = field.value) === null || _field$value2 === void 0 ? void 0 : _field$value2.toString(),
|
|
45
|
+
onChange: _ref4 => {
|
|
46
|
+
let {
|
|
47
|
+
value
|
|
48
|
+
} = _ref4;
|
|
49
|
+
return field.onChange(parseInt(value));
|
|
50
|
+
},
|
|
51
|
+
label: i18n.t("Max"),
|
|
52
|
+
type: "number"
|
|
53
|
+
});
|
|
54
|
+
},
|
|
55
|
+
name: "radius.max"
|
|
56
|
+
}));
|
|
57
|
+
}
|
|
58
|
+
function TypeField() {
|
|
59
|
+
const {
|
|
60
|
+
setValue
|
|
61
|
+
} = useFormContext();
|
|
62
|
+
const resetFields = type => {
|
|
63
|
+
if (type === "bubble") {
|
|
64
|
+
setValue(`radius`, {
|
|
65
|
+
min: 5,
|
|
66
|
+
max: 30
|
|
67
|
+
});
|
|
68
|
+
} else {
|
|
69
|
+
setValue(`radius`, undefined);
|
|
70
|
+
}
|
|
71
|
+
};
|
|
72
|
+
return /*#__PURE__*/React.createElement(Controller, {
|
|
73
|
+
rules: {
|
|
74
|
+
required: i18n.t("Layer type is required")
|
|
75
|
+
},
|
|
76
|
+
render: _ref5 => {
|
|
77
|
+
var _fieldState$error2;
|
|
78
|
+
let {
|
|
79
|
+
field,
|
|
80
|
+
fieldState
|
|
81
|
+
} = _ref5;
|
|
82
|
+
return /*#__PURE__*/React.createElement(SingleSelectField, {
|
|
83
|
+
label: i18n.t("Layer type"),
|
|
84
|
+
required: true,
|
|
85
|
+
error: Boolean(fieldState.error),
|
|
86
|
+
validationText: (_fieldState$error2 = fieldState.error) === null || _fieldState$error2 === void 0 ? void 0 : _fieldState$error2.message,
|
|
87
|
+
onChange: _ref6 => {
|
|
88
|
+
let {
|
|
89
|
+
selected
|
|
90
|
+
} = _ref6;
|
|
91
|
+
resetFields(selected);
|
|
92
|
+
field.onChange(selected);
|
|
93
|
+
},
|
|
94
|
+
selected: field.value
|
|
95
|
+
}, /*#__PURE__*/React.createElement(SingleSelectOption, {
|
|
96
|
+
value: "choropleth",
|
|
97
|
+
label: i18n.t("Choropleth")
|
|
98
|
+
}), /*#__PURE__*/React.createElement(SingleSelectOption, {
|
|
99
|
+
value: "bubble",
|
|
100
|
+
label: i18n.t("Bubble")
|
|
101
|
+
}));
|
|
102
|
+
},
|
|
103
|
+
name: "type"
|
|
104
|
+
});
|
|
105
|
+
}
|
|
106
|
+
export function ThematicLayerConfiguration(_ref7) {
|
|
107
|
+
let {
|
|
108
|
+
exclude,
|
|
109
|
+
form
|
|
110
|
+
} = _ref7;
|
|
111
|
+
const [type, legendSet, dataItemId] = useWatch({
|
|
112
|
+
control: form.control,
|
|
113
|
+
name: ["type", "dataItem.legendSet", "dataItem.id"]
|
|
114
|
+
});
|
|
115
|
+
const [legendType, setLegendType] = useState(legendSet ? "legendSet" : "custom");
|
|
116
|
+
const [dataSelectorOpen, setDataSelectorOpen] = useState(false);
|
|
117
|
+
const onLegendTypeChange = type => _ref8 => {
|
|
118
|
+
let {
|
|
119
|
+
value
|
|
120
|
+
} = _ref8;
|
|
121
|
+
if (type === "custom") {
|
|
122
|
+
form.setValue("dataItem.legendSet", undefined);
|
|
123
|
+
form.setValue("dataItem.legendConfig.scale", defaultClasses);
|
|
124
|
+
form.setValue("dataItem.legendConfig.colorClass", defaultColorScaleName);
|
|
125
|
+
} else {
|
|
126
|
+
form.setValue("dataItem.legendConfig", undefined);
|
|
127
|
+
}
|
|
128
|
+
setLegendType(value);
|
|
129
|
+
};
|
|
130
|
+
const disabled = useMemo(() => {
|
|
131
|
+
var _exclude$filter;
|
|
132
|
+
return (_exclude$filter = exclude === null || exclude === void 0 ? void 0 : exclude.filter(indicator => indicator !== dataItemId)) !== null && _exclude$filter !== void 0 ? _exclude$filter : [];
|
|
133
|
+
}, [dataItemId, exclude]);
|
|
134
|
+
return /*#__PURE__*/React.createElement(FormProvider, form, /*#__PURE__*/React.createElement("div", {
|
|
135
|
+
className: "column gap-16"
|
|
136
|
+
}, /*#__PURE__*/React.createElement(TypeField, null), /*#__PURE__*/React.createElement(Controller, {
|
|
137
|
+
rules: {
|
|
138
|
+
validate: {
|
|
139
|
+
required: value => {
|
|
140
|
+
return Boolean(value === null || value === void 0 ? void 0 : value.id) || i18n.t("A data item is required");
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
},
|
|
144
|
+
render: _ref9 => {
|
|
145
|
+
var _fieldState$error3, _field$value3, _field$value4, _field$value5, _field$value6;
|
|
146
|
+
let {
|
|
147
|
+
field,
|
|
148
|
+
fieldState
|
|
149
|
+
} = _ref9;
|
|
150
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
|
|
151
|
+
style: {
|
|
152
|
+
alignItems: "flex-end"
|
|
153
|
+
},
|
|
154
|
+
className: "row w-100 gap-16 align-end"
|
|
155
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
156
|
+
onClick: () => setDataSelectorOpen(true),
|
|
157
|
+
style: {
|
|
158
|
+
flex: 1
|
|
159
|
+
}
|
|
160
|
+
}, /*#__PURE__*/React.createElement(InputField, {
|
|
161
|
+
required: true,
|
|
162
|
+
error: Boolean(fieldState.error),
|
|
163
|
+
validationText: (_fieldState$error3 = fieldState.error) === null || _fieldState$error3 === void 0 ? void 0 : _fieldState$error3.message,
|
|
164
|
+
disabled: true,
|
|
165
|
+
inputWidth: "100%",
|
|
166
|
+
label: i18n.t("Data Item"),
|
|
167
|
+
value: (_field$value3 = field.value) === null || _field$value3 === void 0 ? void 0 : _field$value3.displayName
|
|
168
|
+
})), /*#__PURE__*/React.createElement(Button, {
|
|
169
|
+
onClick: () => setDataSelectorOpen(true)
|
|
170
|
+
}, (_field$value4 = field.value) !== null && _field$value4 !== void 0 && _field$value4.id ? i18n.t("Change") : i18n.t("Select"))), dataSelectorOpen && /*#__PURE__*/React.createElement(IndicatorSelectorModal, {
|
|
171
|
+
disabled: disabled,
|
|
172
|
+
onUpdate: values => {
|
|
173
|
+
const [indicator] = values !== null && values !== void 0 ? values : [];
|
|
174
|
+
field.onChange({
|
|
175
|
+
id: indicator.id,
|
|
176
|
+
displayName: indicator.displayName,
|
|
177
|
+
type: "indicator"
|
|
178
|
+
});
|
|
179
|
+
},
|
|
180
|
+
onClose: () => setDataSelectorOpen(false),
|
|
181
|
+
hide: !dataSelectorOpen,
|
|
182
|
+
selected: compact([{
|
|
183
|
+
id: (_field$value5 = field.value) === null || _field$value5 === void 0 ? void 0 : _field$value5.id,
|
|
184
|
+
displayName: (_field$value6 = field.value) === null || _field$value6 === void 0 ? void 0 : _field$value6.displayName
|
|
185
|
+
}])
|
|
186
|
+
}));
|
|
187
|
+
},
|
|
188
|
+
name: "dataItem"
|
|
189
|
+
}), /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(Field, {
|
|
190
|
+
label: i18n.t("Legend")
|
|
191
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
192
|
+
className: "column gap-8"
|
|
193
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
194
|
+
className: "row gap-16"
|
|
195
|
+
}, /*#__PURE__*/React.createElement(Radio, {
|
|
196
|
+
checked: legendType === "legendSet",
|
|
197
|
+
label: i18n.t("Legend set"),
|
|
198
|
+
name: "legendSet",
|
|
199
|
+
value: "legendSet",
|
|
200
|
+
onChange: onLegendTypeChange("legendSet")
|
|
201
|
+
}), /*#__PURE__*/React.createElement(Radio, {
|
|
202
|
+
checked: legendType === "custom",
|
|
203
|
+
label: i18n.t("Custom legend"),
|
|
204
|
+
name: "custom",
|
|
205
|
+
value: "custom",
|
|
206
|
+
onChange: onLegendTypeChange("custom")
|
|
207
|
+
})), /*#__PURE__*/React.createElement("div", null, legendType === "legendSet" && /*#__PURE__*/React.createElement(Controller, {
|
|
208
|
+
rules: {
|
|
209
|
+
required: i18n.t("Legend set is required")
|
|
210
|
+
},
|
|
211
|
+
name: "dataItem.legendSet",
|
|
212
|
+
render: _ref10 => {
|
|
213
|
+
let {
|
|
214
|
+
field,
|
|
215
|
+
fieldState
|
|
216
|
+
} = _ref10;
|
|
217
|
+
return /*#__PURE__*/React.createElement(LegendSetSelector, _extends({
|
|
218
|
+
required: true,
|
|
219
|
+
selected: field.value
|
|
220
|
+
}, field, fieldState));
|
|
221
|
+
}
|
|
222
|
+
}), legendType === "custom" && /*#__PURE__*/React.createElement(CustomLegend, null)))), type === "bubble" && /*#__PURE__*/React.createElement(Field, {
|
|
223
|
+
label: i18n.t("Radius")
|
|
224
|
+
}, /*#__PURE__*/React.createElement(RadiusField, null)))));
|
|
225
|
+
}
|
|
226
|
+
export function ThematicLayerConfigModal(_ref11) {
|
|
227
|
+
let {
|
|
228
|
+
open,
|
|
229
|
+
exclude,
|
|
230
|
+
config,
|
|
231
|
+
onClose,
|
|
232
|
+
onChange,
|
|
233
|
+
...props
|
|
234
|
+
} = _ref11;
|
|
235
|
+
const form = useForm({
|
|
236
|
+
defaultValues: config
|
|
237
|
+
});
|
|
238
|
+
const onSubmitClick = values => {
|
|
239
|
+
onChange(values);
|
|
240
|
+
onClose();
|
|
241
|
+
};
|
|
242
|
+
return /*#__PURE__*/React.createElement(Modal, _extends({}, props, {
|
|
243
|
+
open: open,
|
|
244
|
+
onClose: onClose
|
|
245
|
+
}), /*#__PURE__*/React.createElement(ModalTitle, null, i18n.t("Configure Thematic Layer")), /*#__PURE__*/React.createElement(ModalContent, null, /*#__PURE__*/React.createElement(ThematicLayerConfiguration, {
|
|
246
|
+
form: form,
|
|
247
|
+
exclude: exclude
|
|
248
|
+
})), /*#__PURE__*/React.createElement(ModalActions, null, /*#__PURE__*/React.createElement(ButtonStrip, null, /*#__PURE__*/React.createElement(Button, {
|
|
249
|
+
onClick: onClose
|
|
250
|
+
}, i18n.t("Cancel")), /*#__PURE__*/React.createElement(Button, {
|
|
251
|
+
primary: true,
|
|
252
|
+
onClick: form.handleSubmit(onSubmitClick)
|
|
253
|
+
}, i18n.t("Save")))));
|
|
254
|
+
}
|