@opengeoweb/core 2.5.0 → 2.6.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/index.esm.js +424 -545
- package/index.umd.js +470 -594
- package/lib/components/LayerManager/LayerManager.d.ts +2 -1
- package/lib/components/LayerManager/LayerManagerConnect.d.ts +1 -0
- package/lib/components/LayerManager/LayerSelect/LayerList/LayerListRow.d.ts +18 -0
- package/lib/components/LayerManager/LayerSelect/LayerList/LayerListUtils.d.ts +2 -1
- package/lib/components/LayerManager/LayerSelect/LayerSelectUtils.d.ts +4 -0
- package/lib/components/{TimeSlider/TimeSliderButtons/LoopButton/LoopButton.spec.d.ts → LayerManager/LayerSelect/LayerSelectUtils.spec.d.ts} +0 -0
- package/lib/components/LayerManager/LayerSelect/ServiceList/ServiceChip.d.ts +2 -2
- package/lib/components/LayerManager/LayerSelect/ServiceList/ServiceChipConnect.d.ts +2 -2
- package/lib/components/LayerManager/LayerSelect/ServiceList/ServiceList.d.ts +2 -2
- package/lib/components/MapWarning/MapWarningProperties.d.ts +6 -0
- package/lib/components/{TimeSlider/TimeSliderButtons/LoopButton/LoopButtonConnect.spec.d.ts → MapWarning/MapWarningProperties.spec.d.ts} +0 -0
- package/lib/components/TimeSlider/TimeSliderButtons/OptionsMenuButton/OptionsMenuButton.d.ts +0 -1
- package/lib/components/TimeSlider/TimeSliderButtons/TimeSliderButtons.d.ts +0 -1
- package/lib/index.d.ts +2 -2
- package/lib/store/layerSelect/sagas.d.ts +2 -1
- package/lib/store/mapStore/map/actions.d.ts +1 -8
- package/lib/store/mapStore/map/selectors.d.ts +0 -21
- package/lib/store/mapStore/service/reducer.d.ts +2 -8
- package/lib/store/mapStore/service/selectors.d.ts +6 -8
- package/lib/store/mapStore/service/types.d.ts +5 -8
- package/lib/store/mapStore/utils/helpers.d.ts +2 -0
- package/lib/utils/defaultConfigurations.d.ts +2 -2
- package/lib/utils/defaultTestSettings.d.ts +10 -199
- package/lib/utils/jsonPresetFilter.d.ts +2 -1
- package/lib/utils/localStorage.d.ts +3 -3
- package/lib/{components/TooltipSelect/TooltipSelect.spec.d.ts → utils/localStorage.spec.d.ts} +0 -0
- package/lib/utils/types.d.ts +4 -5
- package/package.json +8 -8
- package/lib/components/LayerManager/tooltipContainerStyles.d.ts +0 -2
- package/lib/components/TimeSlider/TimeSliderButtons/LoopButton/LoopButton.d.ts +0 -8
- package/lib/components/TimeSlider/TimeSliderButtons/LoopButton/LoopButtonConnect.d.ts +0 -10
- package/lib/components/TooltipSelect/TooltipSelect.d.ts +0 -14
package/index.esm.js
CHANGED
|
@@ -6,10 +6,10 @@ import React__default, { useState, Component, useRef, useEffect } from 'react';
|
|
|
6
6
|
import produce, { produce as produce$1 } from 'immer';
|
|
7
7
|
import { takeLatest, put, select, call, takeEvery } from 'redux-saga/effects';
|
|
8
8
|
import { WMGetServiceFromStore, LayerType as LayerType$1, getMapImageStore, WMBBOX, debug, DebugType, WMJSMap, WMLayer, legendImageStore, WMImageEventType, getLegendGraphicURLForLayer } from '@opengeoweb/webmap';
|
|
9
|
-
import { Tooltip, Select, Grid, InputLabel, IconButton, Paper, Box, Typography, CircularProgress, List, ListSubheader, ListItem, ListItemText, Dialog, DialogTitle, DialogContent, DialogContentText, TextField, DialogActions, Button, MenuItem, SvgIcon, FormControl, InputAdornment, ListItemSecondaryAction, ListItemIcon, Checkbox, Switch, Slider, FormControlLabel, Popover, useMediaQuery, useTheme, SliderThumb } from '@mui/material';
|
|
10
9
|
import { connect, useDispatch, useSelector, Provider } from 'react-redux';
|
|
10
|
+
import { Grid, InputLabel, Tooltip, IconButton, Paper, Box, Typography, CircularProgress, List, ListSubheader, ListItem, ListItemText, Dialog, DialogTitle, DialogContent, DialogContentText, TextField, DialogActions, Button, MenuItem, SvgIcon, FormControl, InputAdornment, ListItemSecondaryAction, ListItemIcon, Checkbox, Switch, Slider, FormControlLabel, Popover, useMediaQuery, useTheme, SliderThumb } from '@mui/material';
|
|
11
|
+
import { TooltipSelect, AlertIcon, sliderStyles, tooltipContainerStyles, CustomSlider, ToggleMenu, ManagerButton, EnableButton, AlertBanner, ManagerDeleteButton, ToolContainerDraggable, ToolButton, CustomToggleButton, useIsMounted } from '@opengeoweb/shared';
|
|
11
12
|
import makeStyles from '@mui/styles/makeStyles';
|
|
12
|
-
import { sliderStyles, CustomSlider, ToggleMenu, ManagerButton, EnableButton, AlertBanner, ManagerDeleteButton, ToolContainerDraggable, ToolButton, CustomToggleButton, useIsMounted } from '@opengeoweb/shared';
|
|
13
13
|
import { Cached, Add, DragIndicator, Close, ChevronLeft, ChevronRight, Link, LinkOff, MoreVert, DeleteForever } from '@mui/icons-material';
|
|
14
14
|
import { Sortable, ReactSortable } from 'react-sortablejs';
|
|
15
15
|
import createStyles from '@mui/styles/createStyles';
|
|
@@ -213,19 +213,6 @@ var toggleAutoUpdate = function toggleAutoUpdate(payload) {
|
|
|
213
213
|
payload: payload
|
|
214
214
|
};
|
|
215
215
|
};
|
|
216
|
-
/**
|
|
217
|
-
* Toggles loop state for map
|
|
218
|
-
*
|
|
219
|
-
* Example: toggleLoop({ mapId: 'mapId1', shouldLoop: true })
|
|
220
|
-
* @param {object} payload object with mapId: string, shouldLoop: boolean
|
|
221
|
-
*/
|
|
222
|
-
|
|
223
|
-
var toggleLoop = function toggleLoop(payload) {
|
|
224
|
-
return {
|
|
225
|
-
type: WEBMAP_TOGGLE_LOOP,
|
|
226
|
-
payload: payload
|
|
227
|
-
};
|
|
228
|
-
};
|
|
229
216
|
/**
|
|
230
217
|
*Sets the scale of a time slider with id for a map
|
|
231
218
|
*
|
|
@@ -746,7 +733,6 @@ var actions$3 = /*#__PURE__*/Object.freeze({
|
|
|
746
733
|
layerMoveLayer: layerMoveLayer,
|
|
747
734
|
setActiveLayerId: setActiveLayerId,
|
|
748
735
|
toggleAutoUpdate: toggleAutoUpdate,
|
|
749
|
-
toggleLoop: toggleLoop,
|
|
750
736
|
setTimeSliderScale: setTimeSliderScale,
|
|
751
737
|
setTimeStep: setTimeStep,
|
|
752
738
|
setAnimationDelay: setAnimationDelay,
|
|
@@ -864,6 +850,16 @@ var generateTimesliderId = function generateTimesliderId() {
|
|
|
864
850
|
generatedTimesliderIds += 1;
|
|
865
851
|
return "timesliderid_".concat(generatedTimesliderIds);
|
|
866
852
|
};
|
|
853
|
+
var generatedServiceIds = 0;
|
|
854
|
+
var generateServiceId = function generateServiceId() {
|
|
855
|
+
generatedServiceIds += 1;
|
|
856
|
+
return "serviceid_".concat(generatedServiceIds);
|
|
857
|
+
};
|
|
858
|
+
var generatedTimeseriesIds = 0;
|
|
859
|
+
var generateTimeSeriesId = function generateTimeSeriesId() {
|
|
860
|
+
generatedTimeseriesIds += 1;
|
|
861
|
+
return "timeseriesid_".concat(generatedTimeseriesIds);
|
|
862
|
+
};
|
|
867
863
|
/**
|
|
868
864
|
* Map for registering wmlayers with their id's
|
|
869
865
|
*/
|
|
@@ -2523,18 +2519,6 @@ var getAnimationEndTime = createSelector(getMapById, function (store) {
|
|
|
2523
2519
|
var isAutoUpdating = createSelector(getMapById, function (store) {
|
|
2524
2520
|
return store ? store.isAutoUpdating : false;
|
|
2525
2521
|
});
|
|
2526
|
-
/**
|
|
2527
|
-
* Tells whether the "loop" behavior of animation is on/off
|
|
2528
|
-
*
|
|
2529
|
-
* Example: isLooping = isLooping(store, 'mapid_1')
|
|
2530
|
-
* @param {object} store store: object - store object
|
|
2531
|
-
* @param {string} mapId mapId: string - Id of the map
|
|
2532
|
-
* @returns {boolean} returnType: boolean
|
|
2533
|
-
*/
|
|
2534
|
-
|
|
2535
|
-
var isLooping = createSelector(getMapById, function (store) {
|
|
2536
|
-
return store ? store.isLooping : false;
|
|
2537
|
-
});
|
|
2538
2522
|
/**
|
|
2539
2523
|
* Gets activeLayerId for map
|
|
2540
2524
|
*
|
|
@@ -2826,14 +2810,21 @@ var getServices = createSelector(servicesStore, function (store) {
|
|
|
2826
2810
|
*
|
|
2827
2811
|
* Example: service = getServiceByName(store, 'serviceName')
|
|
2828
2812
|
* @param {object} store store: object - Store object
|
|
2829
|
-
* @returns {
|
|
2813
|
+
* @returns {ReduxService} returnType: Service
|
|
2830
2814
|
*/
|
|
2831
2815
|
|
|
2832
|
-
var getServiceByName = createSelector([servicesStore, function (state,
|
|
2833
|
-
return
|
|
2834
|
-
}], function (serviceState,
|
|
2835
|
-
|
|
2836
|
-
return serviceState.byId[
|
|
2816
|
+
var getServiceByName = createSelector([servicesStore, function (state, serviceUrl) {
|
|
2817
|
+
return serviceUrl;
|
|
2818
|
+
}], function (serviceState, serviceUrl) {
|
|
2819
|
+
var foundServiceIndex = serviceState.allIds.findIndex(function (id) {
|
|
2820
|
+
return serviceState.byId[id].serviceUrl === serviceUrl;
|
|
2821
|
+
});
|
|
2822
|
+
/* Add the service based on a url */
|
|
2823
|
+
|
|
2824
|
+
var id = foundServiceIndex !== -1 ? serviceState.allIds[foundServiceIndex] : null;
|
|
2825
|
+
|
|
2826
|
+
if (serviceState && serviceState.byId && serviceState.byId[id]) {
|
|
2827
|
+
return serviceState.byId[id];
|
|
2837
2828
|
}
|
|
2838
2829
|
|
|
2839
2830
|
return null;
|
|
@@ -2903,9 +2894,8 @@ var getServicesInArray = createSelector(servicesStore, function (store) {
|
|
|
2903
2894
|
var services = store ? store.byId : {};
|
|
2904
2895
|
var arrayOfServiceObjects = Object.keys(services).map(function (key) {
|
|
2905
2896
|
return {
|
|
2906
|
-
id: services[key].id,
|
|
2907
2897
|
name: services[key].name,
|
|
2908
|
-
|
|
2898
|
+
serviceUrl: services[key].serviceUrl
|
|
2909
2899
|
};
|
|
2910
2900
|
});
|
|
2911
2901
|
return arrayOfServiceObjects;
|
|
@@ -2950,7 +2940,6 @@ var selectors$1 = /*#__PURE__*/Object.freeze({
|
|
|
2950
2940
|
getAnimationStartTime: getAnimationStartTime,
|
|
2951
2941
|
getAnimationEndTime: getAnimationEndTime,
|
|
2952
2942
|
isAutoUpdating: isAutoUpdating,
|
|
2953
|
-
isLooping: isLooping,
|
|
2954
2943
|
getActiveLayerId: getActiveLayerId,
|
|
2955
2944
|
getMapTimeSliderScale: getMapTimeSliderScale,
|
|
2956
2945
|
getMapTimeStep: getMapTimeStep,
|
|
@@ -4864,9 +4853,8 @@ var setServiceMetadata = function setServiceMetadata(wmLayer, mapId, webMapJSIns
|
|
|
4864
4853
|
var updateObject = {
|
|
4865
4854
|
origin: ORIGIN_REACTMAPVIEWPARSELAYER,
|
|
4866
4855
|
serviceLayers: {
|
|
4867
|
-
id: wmLayer.service,
|
|
4868
4856
|
name: wmLayer.title,
|
|
4869
|
-
|
|
4857
|
+
serviceUrl: wmLayer.service,
|
|
4870
4858
|
layers: layers,
|
|
4871
4859
|
isUserAddedService: false
|
|
4872
4860
|
},
|
|
@@ -5591,140 +5579,6 @@ var synchronizationGroupConfig = {
|
|
|
5591
5579
|
sagas: [rootSaga$4, rootSaga$3]
|
|
5592
5580
|
};
|
|
5593
5581
|
|
|
5594
|
-
var TooltipSelect = function TooltipSelect(_a) {
|
|
5595
|
-
var tooltip = _a.tooltip,
|
|
5596
|
-
_a$list = _a.list,
|
|
5597
|
-
list = _a$list === void 0 ? [] : _a$list,
|
|
5598
|
-
_a$currentIndex = _a.currentIndex,
|
|
5599
|
-
currentIndex = _a$currentIndex === void 0 ? -1 : _a$currentIndex,
|
|
5600
|
-
_a$onChangeMouseWheel = _a.onChangeMouseWheel,
|
|
5601
|
-
onChangeMouseWheel = _a$onChangeMouseWheel === void 0 ? function () {} : _a$onChangeMouseWheel,
|
|
5602
|
-
_a$requiresCtrlToChan = _a.requiresCtrlToChange,
|
|
5603
|
-
requiresCtrlToChange = _a$requiresCtrlToChan === void 0 ? false : _a$requiresCtrlToChan,
|
|
5604
|
-
props = __rest(_a, ["tooltip", "list", "currentIndex", "onChangeMouseWheel", "requiresCtrlToChange"]);
|
|
5605
|
-
|
|
5606
|
-
props.disableUnderline;
|
|
5607
|
-
var otherProps = __rest(props, ["disableUnderline"]);
|
|
5608
|
-
|
|
5609
|
-
var _React$useState = React.useState(false),
|
|
5610
|
-
_React$useState2 = _slicedToArray(_React$useState, 2),
|
|
5611
|
-
selectOpen = _React$useState2[0],
|
|
5612
|
-
setSelectOpen = _React$useState2[1];
|
|
5613
|
-
|
|
5614
|
-
var _React$useState3 = React.useState(false),
|
|
5615
|
-
_React$useState4 = _slicedToArray(_React$useState3, 2),
|
|
5616
|
-
tooltipOpen = _React$useState4[0],
|
|
5617
|
-
setTooltipOpen = _React$useState4[1];
|
|
5618
|
-
|
|
5619
|
-
var preventDefault = function preventDefault(event) {
|
|
5620
|
-
event.preventDefault();
|
|
5621
|
-
event.stopPropagation();
|
|
5622
|
-
};
|
|
5623
|
-
|
|
5624
|
-
var enableScroll = React.useCallback(function () {
|
|
5625
|
-
document.removeEventListener('wheel', preventDefault, false);
|
|
5626
|
-
}, []);
|
|
5627
|
-
var disableScroll = React.useCallback(function () {
|
|
5628
|
-
document.addEventListener('wheel', preventDefault, {
|
|
5629
|
-
passive: false
|
|
5630
|
-
});
|
|
5631
|
-
}, []);
|
|
5632
|
-
var onWheel = React.useCallback(function (event) {
|
|
5633
|
-
if (requiresCtrlToChange && (event.ctrlKey || event.metaKey) || !requiresCtrlToChange) {
|
|
5634
|
-
disableScroll();
|
|
5635
|
-
if (selectOpen) return;
|
|
5636
|
-
var direction = event.deltaY < 0 ? 1 : -1;
|
|
5637
|
-
var newValue = list[Math.min(Math.max(currentIndex - direction, 0), list.length - 1)];
|
|
5638
|
-
onChangeMouseWheel(newValue);
|
|
5639
|
-
} else enableScroll();
|
|
5640
|
-
}, [selectOpen, currentIndex, list, onChangeMouseWheel, enableScroll, disableScroll, requiresCtrlToChange]);
|
|
5641
|
-
var onOpen = React.useCallback(function () {
|
|
5642
|
-
setSelectOpen(true);
|
|
5643
|
-
setTooltipOpen(false);
|
|
5644
|
-
}, []);
|
|
5645
|
-
var onClose = React.useCallback(function () {
|
|
5646
|
-
setSelectOpen(false);
|
|
5647
|
-
}, []);
|
|
5648
|
-
var onMouseEnter = React.useCallback(function () {
|
|
5649
|
-
if (!requiresCtrlToChange) {
|
|
5650
|
-
disableScroll();
|
|
5651
|
-
}
|
|
5652
|
-
|
|
5653
|
-
if (!selectOpen) setTooltipOpen(true);
|
|
5654
|
-
}, [selectOpen, disableScroll, requiresCtrlToChange]);
|
|
5655
|
-
var onMouseLeave = React.useCallback(function () {
|
|
5656
|
-
enableScroll();
|
|
5657
|
-
setTooltipOpen(false);
|
|
5658
|
-
}, [enableScroll]);
|
|
5659
|
-
var onFocus = React.useCallback(function () {
|
|
5660
|
-
if (!requiresCtrlToChange) {
|
|
5661
|
-
disableScroll();
|
|
5662
|
-
}
|
|
5663
|
-
|
|
5664
|
-
setTooltipOpen(true);
|
|
5665
|
-
}, [disableScroll, requiresCtrlToChange]);
|
|
5666
|
-
var onBlur = React.useCallback(function () {
|
|
5667
|
-
enableScroll();
|
|
5668
|
-
setTooltipOpen(false);
|
|
5669
|
-
}, [enableScroll]);
|
|
5670
|
-
return /*#__PURE__*/React.createElement(Tooltip, {
|
|
5671
|
-
title: tooltip,
|
|
5672
|
-
placement: "top",
|
|
5673
|
-
open: tooltipOpen
|
|
5674
|
-
}, /*#__PURE__*/React.createElement(Select, Object.assign({
|
|
5675
|
-
onOpen: onOpen,
|
|
5676
|
-
onClose: onClose,
|
|
5677
|
-
onMouseEnter: onMouseEnter,
|
|
5678
|
-
onMouseLeave: onMouseLeave,
|
|
5679
|
-
onFocus: onFocus,
|
|
5680
|
-
onBlur: onBlur,
|
|
5681
|
-
onWheel: onWheel,
|
|
5682
|
-
MenuProps: {
|
|
5683
|
-
BackdropProps: {
|
|
5684
|
-
sx: {
|
|
5685
|
-
'&.MuiBackdrop-root': {
|
|
5686
|
-
backgroundColor: 'transparent'
|
|
5687
|
-
}
|
|
5688
|
-
}
|
|
5689
|
-
},
|
|
5690
|
-
sx: {
|
|
5691
|
-
'& ul': {
|
|
5692
|
-
backgroundColor: 'geowebColors.background.surface'
|
|
5693
|
-
},
|
|
5694
|
-
'& li': {
|
|
5695
|
-
fontSize: '16px',
|
|
5696
|
-
padding: '12px',
|
|
5697
|
-
'&:hover': {
|
|
5698
|
-
backgroundColor: 'geowebColors.buttons.tool.mouseOver.fill'
|
|
5699
|
-
},
|
|
5700
|
-
'&.Mui-selected': {
|
|
5701
|
-
color: 'geowebColors.buttons.tool.active.color',
|
|
5702
|
-
backgroundColor: 'geowebColors.buttons.tool.active.fill',
|
|
5703
|
-
boxShadow: "none",
|
|
5704
|
-
'&:hover': {
|
|
5705
|
-
backgroundColor: 'geowebColors.buttons.tool.activeMouseOver.fill'
|
|
5706
|
-
},
|
|
5707
|
-
'&:focus': {
|
|
5708
|
-
backgroundColor: 'geowebColors.buttons.tool.activeMouseOver.fill'
|
|
5709
|
-
}
|
|
5710
|
-
},
|
|
5711
|
-
'&:after': {
|
|
5712
|
-
background: 'none!important'
|
|
5713
|
-
},
|
|
5714
|
-
'&.Mui-disabled': {
|
|
5715
|
-
fontSize: '12px',
|
|
5716
|
-
opacity: 0.67,
|
|
5717
|
-
padding: '0px 12px',
|
|
5718
|
-
'&.MuiMenuItem-root': {
|
|
5719
|
-
minHeight: '30px!important'
|
|
5720
|
-
}
|
|
5721
|
-
}
|
|
5722
|
-
}
|
|
5723
|
-
}
|
|
5724
|
-
}
|
|
5725
|
-
}, otherProps)));
|
|
5726
|
-
};
|
|
5727
|
-
|
|
5728
5582
|
/* *
|
|
5729
5583
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
5730
5584
|
* you may not use this file except in compliance with the License.
|
|
@@ -6746,12 +6600,14 @@ var reducer$1 = function reducer() {
|
|
|
6746
6600
|
switch (action.type) {
|
|
6747
6601
|
case MAP_SERVICES_SET_LAYERS:
|
|
6748
6602
|
return produce(state, function (draft) {
|
|
6749
|
-
|
|
6750
|
-
|
|
6751
|
-
|
|
6752
|
-
|
|
6753
|
-
|
|
6754
|
-
|
|
6603
|
+
var foundServiceIndex = draft.allIds.findIndex(function (id) {
|
|
6604
|
+
return draft.byId[id].serviceUrl === action.payload.serviceUrl;
|
|
6605
|
+
});
|
|
6606
|
+
/* Add the service based on a url */
|
|
6607
|
+
|
|
6608
|
+
var id = foundServiceIndex !== -1 ? draft.allIds[foundServiceIndex] : generateServiceId();
|
|
6609
|
+
draft.byId[id] = Object.assign({}, action.payload);
|
|
6610
|
+
if (!draft.allIds.includes(id)) draft.allIds.push(id);
|
|
6755
6611
|
});
|
|
6756
6612
|
|
|
6757
6613
|
case WEBMAP_UPDATE_LAYER_INFO:
|
|
@@ -6767,11 +6623,16 @@ var reducer$1 = function reducer() {
|
|
|
6767
6623
|
|
|
6768
6624
|
case MAP_SERVICES_REMOVE_SERVICE:
|
|
6769
6625
|
return produce(state, function (draft) {
|
|
6770
|
-
|
|
6626
|
+
var foundServiceIndex = draft.allIds.findIndex(function (id) {
|
|
6627
|
+
return draft.byId[id].serviceUrl === action.payload.serviceUrl;
|
|
6628
|
+
});
|
|
6629
|
+
|
|
6630
|
+
if (foundServiceIndex !== -1) {
|
|
6631
|
+
var serviceId = draft.allIds[foundServiceIndex];
|
|
6771
6632
|
draft.allIds = draft.allIds.filter(function (id) {
|
|
6772
|
-
return id !==
|
|
6633
|
+
return id !== serviceId;
|
|
6773
6634
|
});
|
|
6774
|
-
delete draft.byId[
|
|
6635
|
+
delete draft.byId[serviceId];
|
|
6775
6636
|
}
|
|
6776
6637
|
});
|
|
6777
6638
|
|
|
@@ -7535,9 +7396,30 @@ var enableOnlyOneKeyword = function enableOnlyOneKeyword(payload) {
|
|
|
7535
7396
|
* Copyright 2022 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
|
|
7536
7397
|
* Copyright 2022 - Finnish Meteorological Institute (FMI)
|
|
7537
7398
|
* */
|
|
7399
|
+
var mergePresetsAndUserAddedServices = function mergePresetsAndUserAddedServices(presets, userAddedServices) {
|
|
7400
|
+
return Object.values(Object.assign(Object.assign({}, presets.reduce(function (byId, preset) {
|
|
7401
|
+
return Object.assign(Object.assign({}, byId), _defineProperty({}, preset.id, preset));
|
|
7402
|
+
}, {})), userAddedServices));
|
|
7403
|
+
};
|
|
7404
|
+
var isService = function isService(param) {
|
|
7405
|
+
var serviceParam = param;
|
|
7406
|
+
return !!((serviceParam === null || serviceParam === void 0 ? void 0 : serviceParam.id) && (serviceParam === null || serviceParam === void 0 ? void 0 : serviceParam.name) && (serviceParam === null || serviceParam === void 0 ? void 0 : serviceParam.url));
|
|
7407
|
+
};
|
|
7408
|
+
|
|
7538
7409
|
var getUserAddedServices = function getUserAddedServices() {
|
|
7539
7410
|
try {
|
|
7540
|
-
|
|
7411
|
+
var storedString = window.localStorage.getItem('userAddedServices');
|
|
7412
|
+
var parsedData = JSON.parse(storedString);
|
|
7413
|
+
|
|
7414
|
+
if (parsedData && _typeof(parsedData) === 'object') {
|
|
7415
|
+
return Object.entries(parsedData).reduce(function (userServices, _ref) {
|
|
7416
|
+
var _ref2 = _slicedToArray(_ref, 2),
|
|
7417
|
+
serviceUrl = _ref2[0],
|
|
7418
|
+
service = _ref2[1];
|
|
7419
|
+
|
|
7420
|
+
return Object.assign(Object.assign({}, userServices), isService(service) ? _defineProperty({}, serviceUrl, service) : {});
|
|
7421
|
+
}, {});
|
|
7422
|
+
}
|
|
7541
7423
|
} catch (e) {
|
|
7542
7424
|
console.error('Unable to read services from localStorage: ', e);
|
|
7543
7425
|
}
|
|
@@ -7556,19 +7438,19 @@ var _marked = /*#__PURE__*/regeneratorRuntime.mark(newServiceAddedSaga),
|
|
|
7556
7438
|
_marked2 = /*#__PURE__*/regeneratorRuntime.mark(layerSelectServiceRemovedSaga),
|
|
7557
7439
|
_marked3 = /*#__PURE__*/regeneratorRuntime.mark(rootSaga);
|
|
7558
7440
|
function newServiceAddedSaga(capturedAction) {
|
|
7559
|
-
var addedService,
|
|
7441
|
+
var addedService, serviceUrl, keywords;
|
|
7560
7442
|
return regeneratorRuntime.wrap(function newServiceAddedSaga$(_context) {
|
|
7561
7443
|
while (1) {
|
|
7562
7444
|
switch (_context.prev = _context.next) {
|
|
7563
7445
|
case 0:
|
|
7564
7446
|
addedService = capturedAction.payload;
|
|
7565
|
-
|
|
7447
|
+
serviceUrl = addedService.serviceUrl;
|
|
7566
7448
|
keywords = addedService.layers.reduce(function (keywordAccumulator, layer) {
|
|
7567
7449
|
return keywordAccumulator.concat(layer.path, layer.keywords);
|
|
7568
7450
|
}, []);
|
|
7569
7451
|
_context.next = 5;
|
|
7570
7452
|
return put(addKeywordsAndActiveServices({
|
|
7571
|
-
serviceUrl:
|
|
7453
|
+
serviceUrl: serviceUrl,
|
|
7572
7454
|
keywords: keywords
|
|
7573
7455
|
}));
|
|
7574
7456
|
|
|
@@ -7601,20 +7483,25 @@ function layerSelectServiceRemovedSaga(capturedAction) {
|
|
|
7601
7483
|
}
|
|
7602
7484
|
function addServiceToLocalStorageSaga(_ref) {
|
|
7603
7485
|
var payload = _ref.payload;
|
|
7604
|
-
var
|
|
7605
|
-
isUserAddedService = payload.isUserAddedService,
|
|
7486
|
+
var isUserAddedService = payload.isUserAddedService,
|
|
7606
7487
|
name = payload.name,
|
|
7607
|
-
|
|
7488
|
+
serviceUrl = payload.serviceUrl;
|
|
7608
7489
|
if (!isUserAddedService) return;
|
|
7609
7490
|
var localStorageServices = getUserAddedServices();
|
|
7610
|
-
setUserAddedServices({
|
|
7611
|
-
|
|
7612
|
-
|
|
7613
|
-
|
|
7614
|
-
|
|
7615
|
-
|
|
7616
|
-
|
|
7617
|
-
|
|
7491
|
+
setUserAddedServices(Object.assign(Object.assign({}, localStorageServices), _defineProperty({}, serviceUrl, {
|
|
7492
|
+
id: serviceUrl,
|
|
7493
|
+
name: name,
|
|
7494
|
+
url: serviceUrl
|
|
7495
|
+
})));
|
|
7496
|
+
}
|
|
7497
|
+
function removeServiceFromLocalStorageSaga(_ref2) {
|
|
7498
|
+
var payload = _ref2.payload;
|
|
7499
|
+
var serviceUrl = payload.serviceUrl;
|
|
7500
|
+
var localStorageServices = getUserAddedServices();
|
|
7501
|
+
if (!localStorageServices[serviceUrl]) return;
|
|
7502
|
+
var updatedServices = Object.assign({}, localStorageServices);
|
|
7503
|
+
delete updatedServices[serviceUrl];
|
|
7504
|
+
setUserAddedServices(updatedServices);
|
|
7618
7505
|
}
|
|
7619
7506
|
function rootSaga() {
|
|
7620
7507
|
return regeneratorRuntime.wrap(function rootSaga$(_context3) {
|
|
@@ -7633,6 +7520,10 @@ function rootSaga() {
|
|
|
7633
7520
|
return takeEvery(MAP_SERVICES_SET_LAYERS, addServiceToLocalStorageSaga);
|
|
7634
7521
|
|
|
7635
7522
|
case 6:
|
|
7523
|
+
_context3.next = 8;
|
|
7524
|
+
return takeEvery(MAP_SERVICES_REMOVE_SERVICE, removeServiceFromLocalStorageSaga);
|
|
7525
|
+
|
|
7526
|
+
case 8:
|
|
7636
7527
|
case "end":
|
|
7637
7528
|
return _context3.stop();
|
|
7638
7529
|
}
|
|
@@ -7972,7 +7863,7 @@ var WMSLayerTree = function WMSLayerTree(_ref) {
|
|
|
7972
7863
|
* Copyright 2020 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
|
|
7973
7864
|
* Copyright 2020 - Finnish Meteorological Institute (FMI)
|
|
7974
7865
|
* */
|
|
7975
|
-
var connectRedux$
|
|
7866
|
+
var connectRedux$6 = connect(function (store, props) {
|
|
7976
7867
|
return {
|
|
7977
7868
|
loadedLayers: getMapLayers(store, props.mapId)
|
|
7978
7869
|
};
|
|
@@ -8035,7 +7926,7 @@ var ConnectedTree = function ConnectedTree(_ref) {
|
|
|
8035
7926
|
});
|
|
8036
7927
|
};
|
|
8037
7928
|
|
|
8038
|
-
var WMSLayerTreeConnect = connectRedux$
|
|
7929
|
+
var WMSLayerTreeConnect = connectRedux$6(ConnectedTree);
|
|
8039
7930
|
|
|
8040
7931
|
/* *
|
|
8041
7932
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
@@ -8394,7 +8285,7 @@ var defaultConfigurations = /*#__PURE__*/Object.freeze({
|
|
|
8394
8285
|
preloadedDefaultMapServices: preloadedDefaultMapServices
|
|
8395
8286
|
});
|
|
8396
8287
|
|
|
8397
|
-
var useStyles$
|
|
8288
|
+
var useStyles$u = makeStyles({
|
|
8398
8289
|
buttonDiv: {
|
|
8399
8290
|
position: 'relative'
|
|
8400
8291
|
},
|
|
@@ -8430,7 +8321,7 @@ var AddLayersPopup = function AddLayersPopup(_ref) {
|
|
|
8430
8321
|
handleClose = _ref.handleClose,
|
|
8431
8322
|
_ref$layerType = _ref.layerType,
|
|
8432
8323
|
layerType = _ref$layerType === void 0 ? LayerType.mapLayer : _ref$layerType;
|
|
8433
|
-
var classes = useStyles$
|
|
8324
|
+
var classes = useStyles$u();
|
|
8434
8325
|
|
|
8435
8326
|
var _React$useState = React.useState(''),
|
|
8436
8327
|
_React$useState2 = _slicedToArray(_React$useState, 2),
|
|
@@ -8583,7 +8474,7 @@ var AddLayersPopup = function AddLayersPopup(_ref) {
|
|
|
8583
8474
|
}, "Close")));
|
|
8584
8475
|
};
|
|
8585
8476
|
|
|
8586
|
-
var styles$
|
|
8477
|
+
var styles$2 = {
|
|
8587
8478
|
buttonDiv: {
|
|
8588
8479
|
position: 'relative'
|
|
8589
8480
|
},
|
|
@@ -8635,7 +8526,7 @@ var AddLayersButton = function AddLayersButton(_ref) {
|
|
|
8635
8526
|
title: tooltip
|
|
8636
8527
|
}, /*#__PURE__*/React.createElement(IconButton, {
|
|
8637
8528
|
onClick: handleClose,
|
|
8638
|
-
sx: styles$
|
|
8529
|
+
sx: styles$2.button,
|
|
8639
8530
|
disableRipple: true,
|
|
8640
8531
|
"data-testid": "addLayersButton",
|
|
8641
8532
|
ref: ref,
|
|
@@ -8800,7 +8691,7 @@ var LayerSelectButtonConnect = function LayerSelectButtonConnect(_ref) {
|
|
|
8800
8691
|
* Copyright 2021 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
|
|
8801
8692
|
* Copyright 2021 - Finnish Meteorological Institute (FMI)
|
|
8802
8693
|
* */
|
|
8803
|
-
var useStyles$
|
|
8694
|
+
var useStyles$t = makeStyles({
|
|
8804
8695
|
row: {
|
|
8805
8696
|
height: '32px'
|
|
8806
8697
|
},
|
|
@@ -8824,7 +8715,7 @@ var DescriptionRow = function DescriptionRow(_ref) {
|
|
|
8824
8715
|
layerManagerWidth = _ref.layerManagerWidth,
|
|
8825
8716
|
_ref$layerSelect = _ref.layerSelect,
|
|
8826
8717
|
layerSelect = _ref$layerSelect === void 0 ? false : _ref$layerSelect;
|
|
8827
|
-
var classes = useStyles$
|
|
8718
|
+
var classes = useStyles$t();
|
|
8828
8719
|
var columnSizes = layerManagerWidth === LayerManagerWidth.sm ? LayerManagerColumnsSmall() : LayerManagerColumnsLarge();
|
|
8829
8720
|
return /*#__PURE__*/React.createElement(Grid, {
|
|
8830
8721
|
container: true,
|
|
@@ -8868,72 +8759,12 @@ var DescriptionRow = function DescriptionRow(_ref) {
|
|
|
8868
8759
|
}));
|
|
8869
8760
|
};
|
|
8870
8761
|
|
|
8871
|
-
/* *
|
|
8872
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
8873
|
-
* you may not use this file except in compliance with the License.
|
|
8874
|
-
* You may obtain a copy of the License at
|
|
8875
|
-
*
|
|
8876
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
8877
|
-
*
|
|
8878
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
8879
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
8880
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
8881
|
-
* See the License for the specific language governing permissions and
|
|
8882
|
-
* limitations under the License.
|
|
8883
|
-
*
|
|
8884
|
-
* Copyright 2021 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
|
|
8885
|
-
* Copyright 2021 - Finnish Meteorological Institute (FMI)
|
|
8886
|
-
* */
|
|
8887
|
-
var useTooltipContainerStyles = makeStyles(function (theme) {
|
|
8888
|
-
return createStyles({
|
|
8889
|
-
textContainer: {
|
|
8890
|
-
width: '100%',
|
|
8891
|
-
height: 32,
|
|
8892
|
-
fontWeight: 500,
|
|
8893
|
-
fontSize: theme.palette.geowebColors.layerManager.tableRowDefaultText.fontSize,
|
|
8894
|
-
color: function color(isEnabled) {
|
|
8895
|
-
return isEnabled ? theme.palette.geowebColors.layerManager.tableRowDefaultText.rgba : theme.palette.geowebColors.layerManager.tableRowDisabledText.rgba;
|
|
8896
|
-
},
|
|
8897
|
-
'& .MuiOutlinedInput-input': {
|
|
8898
|
-
padding: '6px 24px 6px 8px'
|
|
8899
|
-
},
|
|
8900
|
-
'& .MuiOutlinedInput-notchedOutline': {
|
|
8901
|
-
borderColor: 'transparent!important'
|
|
8902
|
-
},
|
|
8903
|
-
'&:hover .MuiSelect-select': {
|
|
8904
|
-
backgroundColor: theme.palette.geowebColors.buttons.tool.mouseOver.fill
|
|
8905
|
-
},
|
|
8906
|
-
'&.Mui-focused .MuiSelect-select': {
|
|
8907
|
-
outline: theme.palette.geowebColors.buttons.focusDefault.outline,
|
|
8908
|
-
backgroundColor: theme.palette.geowebColors.buttons.tool.mouseOver.fill
|
|
8909
|
-
},
|
|
8910
|
-
'&:hover&.MuiButton-root': {
|
|
8911
|
-
backgroundColor: theme.palette.geowebColors.buttons.tool.mouseOver.fill
|
|
8912
|
-
},
|
|
8913
|
-
'&:focus&.MuiButton-root': {
|
|
8914
|
-
outline: theme.palette.geowebColors.buttons.focusDefault.outline,
|
|
8915
|
-
backgroundColor: theme.palette.geowebColors.buttons.tool.mouseOver.fill
|
|
8916
|
-
},
|
|
8917
|
-
'& .MuiSvgIcon-root': {
|
|
8918
|
-
transition: 'none',
|
|
8919
|
-
fill: function fill(isEnabled) {
|
|
8920
|
-
return isEnabled ? theme.palette.geowebColors.buttons.flat["default"].color : theme.palette.geowebColors.buttons.flat.disabled.color;
|
|
8921
|
-
}
|
|
8922
|
-
},
|
|
8923
|
-
'&>div': {
|
|
8924
|
-
paddingLeft: 8
|
|
8925
|
-
}
|
|
8926
|
-
}
|
|
8927
|
-
});
|
|
8928
|
-
});
|
|
8929
|
-
|
|
8930
8762
|
var DimensionSelect = function DimensionSelect(_ref) {
|
|
8931
8763
|
var layerId = _ref.layerId,
|
|
8932
8764
|
onLayerChangeDimension = _ref.onLayerChangeDimension,
|
|
8933
8765
|
_ref$layerDimensions = _ref.layerDimensions,
|
|
8934
8766
|
layerDimensions = _ref$layerDimensions === void 0 ? [] : _ref$layerDimensions,
|
|
8935
8767
|
isEnabled = _ref.isEnabled;
|
|
8936
|
-
var classes = useTooltipContainerStyles(isEnabled);
|
|
8937
8768
|
|
|
8938
8769
|
var _React$useState = React.useState(layerDimensions.length ? layerDimensions[0].name : ''),
|
|
8939
8770
|
_React$useState2 = _slicedToArray(_React$useState, 2),
|
|
@@ -9019,7 +8850,7 @@ var DimensionSelect = function DimensionSelect(_ref) {
|
|
|
9019
8850
|
'data-testid': 'selectDimension'
|
|
9020
8851
|
}
|
|
9021
8852
|
},
|
|
9022
|
-
|
|
8853
|
+
isEnabled: isEnabled,
|
|
9023
8854
|
value: activeDimName,
|
|
9024
8855
|
list: dimNameList,
|
|
9025
8856
|
currentIndex: dimNameCurrentIndex,
|
|
@@ -9045,7 +8876,7 @@ var DimensionSelect = function DimensionSelect(_ref) {
|
|
|
9045
8876
|
'data-testid': 'selectDimensionValue'
|
|
9046
8877
|
}
|
|
9047
8878
|
},
|
|
9048
|
-
|
|
8879
|
+
isEnabled: isEnabled,
|
|
9049
8880
|
value: activeDim && activeDim.currentValue,
|
|
9050
8881
|
list: dimValueList,
|
|
9051
8882
|
currentIndex: dimValueCurrentIndex,
|
|
@@ -9066,7 +8897,7 @@ var DimensionSelect = function DimensionSelect(_ref) {
|
|
|
9066
8897
|
}))));
|
|
9067
8898
|
};
|
|
9068
8899
|
|
|
9069
|
-
var useStyles$
|
|
8900
|
+
var useStyles$s = makeStyles(function (theme) {
|
|
9070
8901
|
return createStyles({
|
|
9071
8902
|
dropdownEmpty: {
|
|
9072
8903
|
paddingLeft: 8,
|
|
@@ -9116,8 +8947,7 @@ var RenderLayers = function RenderLayers(_ref) {
|
|
|
9116
8947
|
layers = _ref$layers === void 0 ? [] : _ref$layers,
|
|
9117
8948
|
_ref$isEnabled = _ref.isEnabled,
|
|
9118
8949
|
isEnabled = _ref$isEnabled === void 0 ? true : _ref$isEnabled;
|
|
9119
|
-
var classes = useStyles$
|
|
9120
|
-
var containerClass = useTooltipContainerStyles(isEnabled);
|
|
8950
|
+
var classes = useStyles$s();
|
|
9121
8951
|
|
|
9122
8952
|
if (!layers || !layers.length) {
|
|
9123
8953
|
return /*#__PURE__*/React.createElement("div", {
|
|
@@ -9151,7 +8981,7 @@ var RenderLayers = function RenderLayers(_ref) {
|
|
|
9151
8981
|
'data-testid': 'selectLayer'
|
|
9152
8982
|
}
|
|
9153
8983
|
},
|
|
9154
|
-
|
|
8984
|
+
isEnabled: isEnabled,
|
|
9155
8985
|
value: currentValue,
|
|
9156
8986
|
list: list,
|
|
9157
8987
|
currentIndex: currentIndex,
|
|
@@ -9159,19 +8989,31 @@ var RenderLayers = function RenderLayers(_ref) {
|
|
|
9159
8989
|
onChangeMouseWheel: function onChangeMouseWheel(e) {
|
|
9160
8990
|
return onChangeLayerName(e.value);
|
|
9161
8991
|
},
|
|
9162
|
-
requiresCtrlToChange: true
|
|
8992
|
+
requiresCtrlToChange: true,
|
|
8993
|
+
renderValue: function renderValue(value) {
|
|
8994
|
+
return extendedLayers.find(function (layer) {
|
|
8995
|
+
return layer.name === value;
|
|
8996
|
+
}).text;
|
|
8997
|
+
}
|
|
9163
8998
|
}, /*#__PURE__*/React.createElement(MenuItem, {
|
|
9164
8999
|
disabled: true
|
|
9165
|
-
}, "Layer"), extendedLayers.map(function (layerFromServiceLayers) {
|
|
9000
|
+
}, "Layer"), extendedLayers.map(function (layerFromServiceLayers, currentIndex) {
|
|
9166
9001
|
return /*#__PURE__*/React.createElement(MenuItem, {
|
|
9167
9002
|
key: layerFromServiceLayers.name,
|
|
9168
9003
|
value: layerFromServiceLayers.name,
|
|
9169
|
-
disabled: !layerFromServiceLayers.leaf
|
|
9170
|
-
|
|
9004
|
+
disabled: !layerFromServiceLayers.leaf,
|
|
9005
|
+
sx: {
|
|
9006
|
+
'& .MuiSvgIcon-root': {
|
|
9007
|
+
marginLeft: '28px'
|
|
9008
|
+
}
|
|
9009
|
+
}
|
|
9010
|
+
}, layerFromServiceLayers.text, currentIndex === layers.length && /*#__PURE__*/React.createElement(AlertIcon, {
|
|
9011
|
+
severity: "error"
|
|
9012
|
+
}));
|
|
9171
9013
|
}));
|
|
9172
9014
|
};
|
|
9173
9015
|
|
|
9174
|
-
var useStyles$
|
|
9016
|
+
var useStyles$r = makeStyles(function (theme) {
|
|
9175
9017
|
return {
|
|
9176
9018
|
opacityDiv: {
|
|
9177
9019
|
height: 'calc(100% - 5px)',
|
|
@@ -9232,9 +9074,8 @@ var OpacitySelect = function OpacitySelect(_ref) {
|
|
|
9232
9074
|
onLayerChangeOpacity = _ref.onLayerChangeOpacity,
|
|
9233
9075
|
_ref$isEnabled = _ref.isEnabled,
|
|
9234
9076
|
isEnabled = _ref$isEnabled === void 0 ? true : _ref$isEnabled;
|
|
9235
|
-
var classes = useStyles$
|
|
9077
|
+
var classes = useStyles$r();
|
|
9236
9078
|
var sliderClasses = sliderStyles();
|
|
9237
|
-
var containerClass = useTooltipContainerStyles(isEnabled);
|
|
9238
9079
|
|
|
9239
9080
|
var _React$useState = React.useState(false),
|
|
9240
9081
|
_React$useState2 = _slicedToArray(_React$useState, 2),
|
|
@@ -9246,22 +9087,8 @@ var OpacitySelect = function OpacitySelect(_ref) {
|
|
|
9246
9087
|
tooltipOpen = _React$useState4[0],
|
|
9247
9088
|
setTooltipOpen = _React$useState4[1];
|
|
9248
9089
|
|
|
9249
|
-
var preventDefault = function preventDefault(event) {
|
|
9250
|
-
event.preventDefault();
|
|
9251
|
-
event.stopPropagation();
|
|
9252
|
-
};
|
|
9253
|
-
|
|
9254
|
-
var enableScroll = React.useCallback(function () {
|
|
9255
|
-
document.removeEventListener('wheel', preventDefault, false);
|
|
9256
|
-
}, []);
|
|
9257
|
-
var disableScroll = React.useCallback(function () {
|
|
9258
|
-
document.addEventListener('wheel', preventDefault, {
|
|
9259
|
-
passive: false
|
|
9260
|
-
});
|
|
9261
|
-
}, []);
|
|
9262
9090
|
var onWheel = React.useCallback(function (event) {
|
|
9263
9091
|
if (event.ctrlKey || event.metaKey) {
|
|
9264
|
-
disableScroll();
|
|
9265
9092
|
var multiplier = event.altKey ? 10 : 1;
|
|
9266
9093
|
var direction = event.deltaY > 0 ? 0.01 * multiplier : -0.01 * multiplier;
|
|
9267
9094
|
var newValue = Math.min(Math.max(currentOpacity - direction, 0), 1); // Kind of "one frame debouncer", meant to dampen too fast slider movement
|
|
@@ -9269,8 +9096,8 @@ var OpacitySelect = function OpacitySelect(_ref) {
|
|
|
9269
9096
|
window.requestAnimationFrame(function () {
|
|
9270
9097
|
onLayerChangeOpacity(newValue);
|
|
9271
9098
|
});
|
|
9272
|
-
}
|
|
9273
|
-
}, [currentOpacity, onLayerChangeOpacity
|
|
9099
|
+
}
|
|
9100
|
+
}, [currentOpacity, onLayerChangeOpacity]);
|
|
9274
9101
|
var onClickButton = React.useCallback(function () {
|
|
9275
9102
|
setOpen(!open);
|
|
9276
9103
|
}, [open]);
|
|
@@ -9283,23 +9110,21 @@ var OpacitySelect = function OpacitySelect(_ref) {
|
|
|
9283
9110
|
if (!open) setTooltipOpen(true);
|
|
9284
9111
|
}, [open]);
|
|
9285
9112
|
var onMouseLeave = React.useCallback(function () {
|
|
9286
|
-
enableScroll();
|
|
9287
9113
|
setTooltipOpen(false);
|
|
9288
|
-
}, [
|
|
9114
|
+
}, []);
|
|
9289
9115
|
var onFocus = React.useCallback(function () {
|
|
9290
9116
|
setTooltipOpen(true);
|
|
9291
9117
|
}, []);
|
|
9292
9118
|
var onBlur = React.useCallback(function () {
|
|
9293
|
-
enableScroll();
|
|
9294
9119
|
setTooltipOpen(false);
|
|
9295
|
-
}, [
|
|
9120
|
+
}, []);
|
|
9296
9121
|
return /*#__PURE__*/React.createElement("div", {
|
|
9297
9122
|
className: classes.opacityDiv,
|
|
9298
9123
|
onWheel: onWheel,
|
|
9299
9124
|
"data-testid": "scrollOpacity"
|
|
9300
9125
|
}, /*#__PURE__*/React.createElement(Tooltip, {
|
|
9301
9126
|
title: tooltipTitle,
|
|
9302
|
-
|
|
9127
|
+
sx: tooltipContainerStyles(isEnabled),
|
|
9303
9128
|
placement: "top",
|
|
9304
9129
|
open: tooltipOpen
|
|
9305
9130
|
}, /*#__PURE__*/React.createElement(Button, {
|
|
@@ -9390,7 +9215,6 @@ var RenderStyles = function RenderStyles(_ref) {
|
|
|
9390
9215
|
onChangeLayerStyle = _ref.onChangeLayerStyle,
|
|
9391
9216
|
_ref$isEnabled = _ref.isEnabled,
|
|
9392
9217
|
isEnabled = _ref$isEnabled === void 0 ? true : _ref$isEnabled;
|
|
9393
|
-
var classes = useTooltipContainerStyles(isEnabled);
|
|
9394
9218
|
var styles = [{
|
|
9395
9219
|
title: 'default',
|
|
9396
9220
|
name: 'default',
|
|
@@ -9425,7 +9249,7 @@ var RenderStyles = function RenderStyles(_ref) {
|
|
|
9425
9249
|
'data-testid': 'selectStyle'
|
|
9426
9250
|
}
|
|
9427
9251
|
},
|
|
9428
|
-
|
|
9252
|
+
isEnabled: isEnabled,
|
|
9429
9253
|
value: currentStyle,
|
|
9430
9254
|
list: list,
|
|
9431
9255
|
currentIndex: currentIndex,
|
|
@@ -9460,7 +9284,7 @@ var RenderStyles = function RenderStyles(_ref) {
|
|
|
9460
9284
|
* Copyright 2021 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
|
|
9461
9285
|
* Copyright 2021 - Finnish Meteorological Institute (FMI)
|
|
9462
9286
|
* */
|
|
9463
|
-
var useStyles$
|
|
9287
|
+
var useStyles$q = makeStyles(function (theme) {
|
|
9464
9288
|
return createStyles({
|
|
9465
9289
|
svgIcon: {
|
|
9466
9290
|
fill: function fill(_ref) {
|
|
@@ -9489,7 +9313,7 @@ var ActivateLayer = function ActivateLayer(_ref2) {
|
|
|
9489
9313
|
isActive = _ref2$isActive === void 0 ? false : _ref2$isActive,
|
|
9490
9314
|
_ref2$isEnabled = _ref2.isEnabled,
|
|
9491
9315
|
isEnabled = _ref2$isEnabled === void 0 ? true : _ref2$isEnabled;
|
|
9492
|
-
var classes = useStyles$
|
|
9316
|
+
var classes = useStyles$q({
|
|
9493
9317
|
isActive: isActive,
|
|
9494
9318
|
isEnabled: isEnabled
|
|
9495
9319
|
});
|
|
@@ -9542,7 +9366,7 @@ var ActivateLayer = function ActivateLayer(_ref2) {
|
|
|
9542
9366
|
* Copyright 2021 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
|
|
9543
9367
|
* Copyright 2021 - Finnish Meteorological Institute (FMI)
|
|
9544
9368
|
* */
|
|
9545
|
-
var useStyles$
|
|
9369
|
+
var useStyles$p = makeStyles(function (theme) {
|
|
9546
9370
|
return createStyles({
|
|
9547
9371
|
row: {
|
|
9548
9372
|
background: function background(isEnabled) {
|
|
@@ -9595,7 +9419,7 @@ var LayerRow = function LayerRow(_ref) {
|
|
|
9595
9419
|
layerActiveLayout = _ref.layerActiveLayout,
|
|
9596
9420
|
layerManagerWidth = _ref.layerManagerWidth,
|
|
9597
9421
|
dragHandle = _ref.dragHandle;
|
|
9598
|
-
var classes = useStyles$
|
|
9422
|
+
var classes = useStyles$p(isEnabled);
|
|
9599
9423
|
var columnSizes = layerManagerWidth === LayerManagerWidth.sm ? LayerManagerColumnsSmall() : LayerManagerColumnsLarge();
|
|
9600
9424
|
|
|
9601
9425
|
var onClickRow = function onClickRow() {
|
|
@@ -10221,7 +10045,7 @@ var DragHandle = function DragHandle(_ref) {
|
|
|
10221
10045
|
});
|
|
10222
10046
|
};
|
|
10223
10047
|
|
|
10224
|
-
var useStyles$
|
|
10048
|
+
var useStyles$o = makeStyles(function () {
|
|
10225
10049
|
return {
|
|
10226
10050
|
layerRows: {
|
|
10227
10051
|
width: '100%',
|
|
@@ -10241,6 +10065,12 @@ var LayerContainerRow = function LayerContainerRow(_ref) {
|
|
|
10241
10065
|
var mapId = _ref.mapId,
|
|
10242
10066
|
layerManagerWidth = _ref.layerManagerWidth;
|
|
10243
10067
|
var dispatch = useDispatch();
|
|
10068
|
+
|
|
10069
|
+
var _React$useState = React.useState(false),
|
|
10070
|
+
_React$useState2 = _slicedToArray(_React$useState, 2),
|
|
10071
|
+
keyPressed = _React$useState2[0],
|
|
10072
|
+
setKeyPressed = _React$useState2[1];
|
|
10073
|
+
|
|
10244
10074
|
var layerIds = useSelector(function (store) {
|
|
10245
10075
|
return getLayerIds(store, mapId);
|
|
10246
10076
|
});
|
|
@@ -10256,10 +10086,10 @@ var LayerContainerRow = function LayerContainerRow(_ref) {
|
|
|
10256
10086
|
}));
|
|
10257
10087
|
}, [dispatch]);
|
|
10258
10088
|
|
|
10259
|
-
var _React$
|
|
10260
|
-
_React$
|
|
10261
|
-
activeDragIndex = _React$
|
|
10262
|
-
setActiveDragIndex = _React$
|
|
10089
|
+
var _React$useState3 = React.useState(null),
|
|
10090
|
+
_React$useState4 = _slicedToArray(_React$useState3, 2),
|
|
10091
|
+
activeDragIndex = _React$useState4[0],
|
|
10092
|
+
setActiveDragIndex = _React$useState4[1];
|
|
10263
10093
|
|
|
10264
10094
|
var onSetList = function onSetList() {}; // since we use activeDragIndex, we don't need inner state handling of ReactSortable
|
|
10265
10095
|
|
|
@@ -10288,7 +10118,43 @@ var LayerContainerRow = function LayerContainerRow(_ref) {
|
|
|
10288
10118
|
|
|
10289
10119
|
var isSorting = activeDragIndex !== null;
|
|
10290
10120
|
var isDragDisabled = layerIds.length === 1;
|
|
10291
|
-
var classes = useStyles$
|
|
10121
|
+
var classes = useStyles$o(isSorting);
|
|
10122
|
+
|
|
10123
|
+
var keyPressedTrue = function keyPressedTrue(event) {
|
|
10124
|
+
if (event.ctrlKey || event.metaKey) {
|
|
10125
|
+
setKeyPressed(true);
|
|
10126
|
+
}
|
|
10127
|
+
};
|
|
10128
|
+
|
|
10129
|
+
var keyPressedFalse = function keyPressedFalse() {
|
|
10130
|
+
setKeyPressed(false);
|
|
10131
|
+
};
|
|
10132
|
+
|
|
10133
|
+
React.useEffect(function () {
|
|
10134
|
+
window.addEventListener('keydown', keyPressedTrue);
|
|
10135
|
+
window.addEventListener('keyup', keyPressedFalse);
|
|
10136
|
+
return function () {
|
|
10137
|
+
window.removeEventListener('keydown', keyPressedTrue);
|
|
10138
|
+
window.removeEventListener('keyup', keyPressedFalse);
|
|
10139
|
+
};
|
|
10140
|
+
}, []);
|
|
10141
|
+
var preventDefault = React.useCallback(function (event) {
|
|
10142
|
+
event.preventDefault();
|
|
10143
|
+
event.stopPropagation();
|
|
10144
|
+
}, []);
|
|
10145
|
+
React.useEffect(function () {
|
|
10146
|
+
if (keyPressed === true) {
|
|
10147
|
+
window.addEventListener('wheel', preventDefault, {
|
|
10148
|
+
passive: false
|
|
10149
|
+
});
|
|
10150
|
+
} else {
|
|
10151
|
+
window.removeEventListener('wheel', preventDefault);
|
|
10152
|
+
}
|
|
10153
|
+
|
|
10154
|
+
return function () {
|
|
10155
|
+
return window.removeEventListener('wheel', preventDefault);
|
|
10156
|
+
};
|
|
10157
|
+
}, [keyPressed, preventDefault]);
|
|
10292
10158
|
return /*#__PURE__*/React.createElement(Grid, {
|
|
10293
10159
|
container: true,
|
|
10294
10160
|
item: true,
|
|
@@ -10344,7 +10210,6 @@ var BaseLayers = function BaseLayers(_ref) {
|
|
|
10344
10210
|
var selectedBaseLayers = _ref.selectedBaseLayers,
|
|
10345
10211
|
availableBaseLayers = _ref.availableBaseLayers,
|
|
10346
10212
|
onChangeBaseLayers = _ref.onChangeBaseLayers;
|
|
10347
|
-
var classes = useTooltipContainerStyles();
|
|
10348
10213
|
|
|
10349
10214
|
if (!availableBaseLayers || !availableBaseLayers.length) {
|
|
10350
10215
|
return /*#__PURE__*/React.createElement("div", null, "No service available");
|
|
@@ -10374,7 +10239,7 @@ var BaseLayers = function BaseLayers(_ref) {
|
|
|
10374
10239
|
style: {
|
|
10375
10240
|
maxWidth: '100%'
|
|
10376
10241
|
},
|
|
10377
|
-
|
|
10242
|
+
isEnabled: true,
|
|
10378
10243
|
value: selectedBaseLayerId,
|
|
10379
10244
|
list: list,
|
|
10380
10245
|
currentIndex: currentIndex,
|
|
@@ -10498,7 +10363,7 @@ var BaseLayersConnect = function BaseLayersConnect(_ref) {
|
|
|
10498
10363
|
* Copyright 2021 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
|
|
10499
10364
|
* Copyright 2021 - Finnish Meteorological Institute (FMI)
|
|
10500
10365
|
* */
|
|
10501
|
-
var useStyles$
|
|
10366
|
+
var useStyles$n = makeStyles({
|
|
10502
10367
|
layerRow: {
|
|
10503
10368
|
width: '100%',
|
|
10504
10369
|
height: '36px'
|
|
@@ -10521,7 +10386,7 @@ var BaseLayerRow = function BaseLayerRow(_ref) {
|
|
|
10521
10386
|
layerManagerWidth = _ref.layerManagerWidth,
|
|
10522
10387
|
_ref$tooltip = _ref.tooltip,
|
|
10523
10388
|
tooltip = _ref$tooltip === void 0 ? '' : _ref$tooltip;
|
|
10524
|
-
var classes = useStyles$
|
|
10389
|
+
var classes = useStyles$n();
|
|
10525
10390
|
var columnSizes = layerManagerWidth === LayerManagerWidth.sm ? LayerManagerColumnsSmall() : LayerManagerColumnsLarge();
|
|
10526
10391
|
return /*#__PURE__*/React.createElement(Grid, {
|
|
10527
10392
|
container: true,
|
|
@@ -10550,7 +10415,7 @@ var BaseLayerRow = function BaseLayerRow(_ref) {
|
|
|
10550
10415
|
})));
|
|
10551
10416
|
};
|
|
10552
10417
|
|
|
10553
|
-
var
|
|
10418
|
+
var styles$1 = {
|
|
10554
10419
|
layerRowContainer: {
|
|
10555
10420
|
position: 'relative',
|
|
10556
10421
|
width: '100%',
|
|
@@ -10564,7 +10429,7 @@ var useStyles$o = makeStyles({
|
|
|
10564
10429
|
width: '100%',
|
|
10565
10430
|
boxSizing: 'border-box'
|
|
10566
10431
|
}
|
|
10567
|
-
}
|
|
10432
|
+
};
|
|
10568
10433
|
|
|
10569
10434
|
var LayerManager = function LayerManager(_ref) {
|
|
10570
10435
|
var mapId = _ref.mapId,
|
|
@@ -10584,8 +10449,9 @@ var LayerManager = function LayerManager(_ref) {
|
|
|
10584
10449
|
_ref$layerSelect = _ref.layerSelect,
|
|
10585
10450
|
layerSelect = _ref$layerSelect === void 0 ? false : _ref$layerSelect,
|
|
10586
10451
|
_ref$showAddLayersToo = _ref.showAddLayersTooltip,
|
|
10587
|
-
showAddLayersTooltip = _ref$showAddLayersToo === void 0 ? true : _ref$showAddLayersToo
|
|
10588
|
-
|
|
10452
|
+
showAddLayersTooltip = _ref$showAddLayersToo === void 0 ? true : _ref$showAddLayersToo,
|
|
10453
|
+
_ref$leftComponent = _ref.leftComponent,
|
|
10454
|
+
leftComponent = _ref$leftComponent === void 0 ? null : _ref$leftComponent;
|
|
10589
10455
|
|
|
10590
10456
|
var _React$useState = React.useState(LayerManagerWidth.lg),
|
|
10591
10457
|
_React$useState2 = _slicedToArray(_React$useState, 2),
|
|
@@ -10617,13 +10483,14 @@ var LayerManager = function LayerManager(_ref) {
|
|
|
10617
10483
|
"data-testid": "layerManagerWindow",
|
|
10618
10484
|
onMouseDown: onMouseDown,
|
|
10619
10485
|
order: order,
|
|
10620
|
-
source: source
|
|
10621
|
-
|
|
10622
|
-
|
|
10486
|
+
source: source,
|
|
10487
|
+
leftComponent: leftComponent
|
|
10488
|
+
}, /*#__PURE__*/React.createElement(Box, {
|
|
10489
|
+
sx: styles$1.layerManagerContainer
|
|
10623
10490
|
}, /*#__PURE__*/React.createElement(Grid, {
|
|
10624
10491
|
container: true,
|
|
10625
10492
|
"data-testid": "layerManagerRowContainer",
|
|
10626
|
-
|
|
10493
|
+
sx: styles$1.layerRowContainer
|
|
10627
10494
|
}, /*#__PURE__*/React.createElement(DescriptionRow, {
|
|
10628
10495
|
mapId: mapId,
|
|
10629
10496
|
tooltip: showAddLayersTooltip ? 'Add Layers' : '',
|
|
@@ -10989,9 +10856,8 @@ var ServicePopup = function ServicePopup(_ref) {
|
|
|
10989
10856
|
}
|
|
10990
10857
|
|
|
10991
10858
|
serviceSetLayers({
|
|
10992
|
-
id: serviceUrl,
|
|
10993
10859
|
name: serviceName,
|
|
10994
|
-
|
|
10860
|
+
serviceUrl: serviceUrl,
|
|
10995
10861
|
layers: serviceLayers,
|
|
10996
10862
|
isUserAddedService: true
|
|
10997
10863
|
});
|
|
@@ -11376,6 +11242,65 @@ var SearchFieldConnect = function SearchFieldConnect() {
|
|
|
11376
11242
|
});
|
|
11377
11243
|
};
|
|
11378
11244
|
|
|
11245
|
+
/* *
|
|
11246
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
11247
|
+
* you may not use this file except in compliance with the License.
|
|
11248
|
+
* You may obtain a copy of the License at
|
|
11249
|
+
*
|
|
11250
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
11251
|
+
*
|
|
11252
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
11253
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
11254
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
11255
|
+
* See the License for the specific language governing permissions and
|
|
11256
|
+
* limitations under the License.
|
|
11257
|
+
*
|
|
11258
|
+
* Copyright 2021 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
|
|
11259
|
+
* Copyright 2021 - Finnish Meteorological Institute (FMI)
|
|
11260
|
+
* */
|
|
11261
|
+
var getMapStoreServiceFromLayerSelectServiceId = function getMapStoreServiceFromLayerSelectServiceId(services, serviceId) {
|
|
11262
|
+
/*
|
|
11263
|
+
Because the mapStore services redux store is refactored,
|
|
11264
|
+
the id's do not match anymore with the layerSelect services redux store.
|
|
11265
|
+
The following code ensures that the right mapStore service is found based on the id in the layerSelect store.
|
|
11266
|
+
TODO: https://gitlab.com/opengeoweb/opengeoweb/-/issues/1883
|
|
11267
|
+
*/
|
|
11268
|
+
var mapStoreServiceIndex = Object.keys(services).findIndex(function (serviceKey) {
|
|
11269
|
+
return services[serviceKey].serviceUrl === serviceId;
|
|
11270
|
+
});
|
|
11271
|
+
|
|
11272
|
+
if (mapStoreServiceIndex === -1) {
|
|
11273
|
+
console.warn("serviceId ".concat(serviceId, " not found"));
|
|
11274
|
+
return null;
|
|
11275
|
+
}
|
|
11276
|
+
|
|
11277
|
+
return services[Object.keys(services)[mapStoreServiceIndex]];
|
|
11278
|
+
};
|
|
11279
|
+
var filterLayersFromService = function filterLayersFromService(serviceId, services, keywordIds, allKeywordsActive, searchString) {
|
|
11280
|
+
var mapStoreService = getMapStoreServiceFromLayerSelectServiceId(services, serviceId);
|
|
11281
|
+
if (!mapStoreService) return [];
|
|
11282
|
+
|
|
11283
|
+
if (searchString === '' && allKeywordsActive) {
|
|
11284
|
+
return mapStoreService.layers.filter(function (layer) {
|
|
11285
|
+
return layer.leaf;
|
|
11286
|
+
});
|
|
11287
|
+
}
|
|
11288
|
+
|
|
11289
|
+
var searchStringArray = searchString.split(' ');
|
|
11290
|
+
return mapStoreService.layers.filter(function (layer) {
|
|
11291
|
+
return searchStringArray.every(function (search) {
|
|
11292
|
+
var layerPathAndKeywords = layer.path.concat(layer.keywords);
|
|
11293
|
+
return (!!layerPathAndKeywords && !layerPathAndKeywords.every(function (keyword) {
|
|
11294
|
+
return !keywordIds.includes(keyword);
|
|
11295
|
+
}) || allKeywordsActive) && (!!layer.name && layer.name.toLowerCase().includes(search.toLowerCase()) || !!layer.text && layer.text.toLowerCase().includes(search.toLowerCase()) || !!layer["abstract"] && layer["abstract"].toLowerCase().includes(search.toLowerCase()) || !!layerPathAndKeywords && !layerPathAndKeywords.every(function (keyword) {
|
|
11296
|
+
return !keyword.toLowerCase().includes(search.toLowerCase());
|
|
11297
|
+
}) || mapStoreService.name.toLowerCase().includes(search.toLowerCase()));
|
|
11298
|
+
});
|
|
11299
|
+
}).filter(function (layer) {
|
|
11300
|
+
return layer.leaf;
|
|
11301
|
+
});
|
|
11302
|
+
};
|
|
11303
|
+
|
|
11379
11304
|
/* *
|
|
11380
11305
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
11381
11306
|
* you may not use this file except in compliance with the License.
|
|
@@ -11433,78 +11358,104 @@ var LayerAddRemoveButton = function LayerAddRemoveButton(_ref) {
|
|
|
11433
11358
|
* See the License for the specific language governing permissions and
|
|
11434
11359
|
* limitations under the License.
|
|
11435
11360
|
*
|
|
11436
|
-
* Copyright
|
|
11437
|
-
* Copyright
|
|
11361
|
+
* Copyright 2022 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
|
|
11362
|
+
* Copyright 2022 - Finnish Meteorological Institute (FMI)
|
|
11438
11363
|
* */
|
|
11439
|
-
var filterLayersFromService = function filterLayersFromService(serviceId, services, keywordIds, allKeywordsActive, searchString) {
|
|
11440
|
-
if (searchString === '' && allKeywordsActive) {
|
|
11441
|
-
return services[serviceId].layers.filter(function (layer) {
|
|
11442
|
-
return layer.leaf;
|
|
11443
|
-
});
|
|
11444
|
-
}
|
|
11445
11364
|
|
|
11446
|
-
|
|
11447
|
-
|
|
11448
|
-
|
|
11449
|
-
|
|
11450
|
-
|
|
11451
|
-
|
|
11452
|
-
|
|
11453
|
-
|
|
11454
|
-
|
|
11455
|
-
|
|
11456
|
-
|
|
11457
|
-
|
|
11458
|
-
|
|
11459
|
-
|
|
11460
|
-
|
|
11461
|
-
|
|
11462
|
-
|
|
11463
|
-
layerRow: {
|
|
11464
|
-
background: theme.palette.geowebColors.cards.cardContainer,
|
|
11465
|
-
padding: '8px 0px 8px 12px',
|
|
11365
|
+
var LayerListRow = function LayerListRow(_ref) {
|
|
11366
|
+
var layer = _ref.layer,
|
|
11367
|
+
layerIndex = _ref.layerIndex,
|
|
11368
|
+
serviceId = _ref.serviceId,
|
|
11369
|
+
addLayer = _ref.addLayer,
|
|
11370
|
+
deleteLayer = _ref.deleteLayer,
|
|
11371
|
+
mapLayers = _ref.mapLayers;
|
|
11372
|
+
return /*#__PURE__*/React__default.createElement(Grid, {
|
|
11373
|
+
"data-testid": "layerListLayerRow",
|
|
11374
|
+
container: true,
|
|
11375
|
+
item: true,
|
|
11376
|
+
xs: 12,
|
|
11377
|
+
justifyContent: "center",
|
|
11378
|
+
alignItems: "center",
|
|
11379
|
+
sx: {
|
|
11380
|
+
backgroundColor: 'geowebColors.cards.cardContainer',
|
|
11381
|
+
paddingLeft: '12px',
|
|
11466
11382
|
marginBottom: '4px',
|
|
11467
11383
|
height: '64px',
|
|
11468
|
-
border:
|
|
11469
|
-
|
|
11470
|
-
|
|
11471
|
-
|
|
11472
|
-
|
|
11473
|
-
|
|
11384
|
+
border: 'solid 1px',
|
|
11385
|
+
borderColor: 'geowebColors.cards.cardContainerBorder'
|
|
11386
|
+
}
|
|
11387
|
+
}, /*#__PURE__*/React__default.createElement(Grid, {
|
|
11388
|
+
container: true,
|
|
11389
|
+
item: true,
|
|
11390
|
+
xs: 10
|
|
11391
|
+
}, /*#__PURE__*/React__default.createElement(Grid, {
|
|
11392
|
+
container: true,
|
|
11393
|
+
item: true,
|
|
11394
|
+
xs: 12
|
|
11395
|
+
}, /*#__PURE__*/React__default.createElement(Box, {
|
|
11396
|
+
sx: {
|
|
11474
11397
|
fontSize: '12px',
|
|
11398
|
+
height: '24px',
|
|
11399
|
+
lineHeight: '24px',
|
|
11475
11400
|
fontWeight: 500,
|
|
11476
|
-
|
|
11477
|
-
|
|
11478
|
-
|
|
11479
|
-
|
|
11480
|
-
|
|
11401
|
+
WebkitLineClamp: 1,
|
|
11402
|
+
display: '-webkit-box',
|
|
11403
|
+
WebkitBoxOrient: 'vertical',
|
|
11404
|
+
textOverflow: 'ellipsis',
|
|
11405
|
+
overflow: 'hidden'
|
|
11406
|
+
}
|
|
11407
|
+
}, layer.text)), /*#__PURE__*/React__default.createElement(Grid, {
|
|
11408
|
+
container: true,
|
|
11409
|
+
item: true,
|
|
11410
|
+
xs: 4
|
|
11411
|
+
}, /*#__PURE__*/React__default.createElement(Box, {
|
|
11412
|
+
sx: {
|
|
11481
11413
|
fontSize: '12px',
|
|
11482
11414
|
height: '24px',
|
|
11483
|
-
|
|
11484
|
-
|
|
11485
|
-
|
|
11486
|
-
|
|
11487
|
-
|
|
11488
|
-
|
|
11489
|
-
|
|
11490
|
-
|
|
11491
|
-
|
|
11415
|
+
lineHeight: '24px',
|
|
11416
|
+
WebkitLineClamp: 1,
|
|
11417
|
+
display: '-webkit-box',
|
|
11418
|
+
WebkitBoxOrient: 'vertical',
|
|
11419
|
+
textOverflow: 'ellipsis',
|
|
11420
|
+
overflow: 'hidden'
|
|
11421
|
+
}
|
|
11422
|
+
}, layer.name)), layer["abstract"] ? /*#__PURE__*/React__default.createElement(Grid, {
|
|
11423
|
+
"data-testid": "layerAbstract",
|
|
11424
|
+
container: true,
|
|
11425
|
+
item: true,
|
|
11426
|
+
xs: 8,
|
|
11427
|
+
sx: {
|
|
11492
11428
|
fontSize: '10px',
|
|
11493
|
-
|
|
11494
|
-
|
|
11495
|
-
|
|
11496
|
-
|
|
11497
|
-
|
|
11498
|
-
|
|
11499
|
-
|
|
11500
|
-
}
|
|
11501
|
-
|
|
11429
|
+
height: '30px',
|
|
11430
|
+
paddingLeft: '20px',
|
|
11431
|
+
WebkitLineClamp: 2,
|
|
11432
|
+
display: '-webkit-box',
|
|
11433
|
+
WebkitBoxOrient: 'vertical',
|
|
11434
|
+
textOverflow: 'ellipsis',
|
|
11435
|
+
overflow: 'hidden'
|
|
11436
|
+
}
|
|
11437
|
+
}, layer["abstract"]) : null), /*#__PURE__*/React__default.createElement(Grid, {
|
|
11438
|
+
container: true,
|
|
11439
|
+
item: true,
|
|
11440
|
+
xs: 2,
|
|
11441
|
+
justifyContent: "flex-end",
|
|
11442
|
+
alignItems: "center"
|
|
11443
|
+
}, /*#__PURE__*/React__default.createElement(Box, {
|
|
11444
|
+
sx: {
|
|
11445
|
+
width: '80px',
|
|
11446
|
+
height: '48px',
|
|
11502
11447
|
marginRight: '8px',
|
|
11503
|
-
|
|
11504
|
-
width: '80px'
|
|
11448
|
+
paddingTop: '4px'
|
|
11505
11449
|
}
|
|
11506
|
-
}
|
|
11507
|
-
|
|
11450
|
+
}, /*#__PURE__*/React__default.createElement(LayerAddRemoveButton, {
|
|
11451
|
+
layer: layer,
|
|
11452
|
+
layerIndex: layerIndex,
|
|
11453
|
+
serviceId: serviceId,
|
|
11454
|
+
addLayer: addLayer,
|
|
11455
|
+
deleteLayer: deleteLayer,
|
|
11456
|
+
mapLayers: mapLayers
|
|
11457
|
+
}))));
|
|
11458
|
+
};
|
|
11508
11459
|
|
|
11509
11460
|
var LayerList = function LayerList(_ref) {
|
|
11510
11461
|
var services = _ref.services,
|
|
@@ -11516,7 +11467,6 @@ var LayerList = function LayerList(_ref) {
|
|
|
11516
11467
|
mapLayers = _ref.mapLayers,
|
|
11517
11468
|
keywordIds = _ref.keywordIds,
|
|
11518
11469
|
allKeywordsActive = _ref.allKeywordsActive;
|
|
11519
|
-
var classes = useStyles$n();
|
|
11520
11470
|
|
|
11521
11471
|
var _React$useState = React.useState(0),
|
|
11522
11472
|
_React$useState2 = _slicedToArray(_React$useState, 2),
|
|
@@ -11528,42 +11478,29 @@ var LayerList = function LayerList(_ref) {
|
|
|
11528
11478
|
return totalNumberOfLayers + filterLayersFromService(serviceId, services, keywordIds, allKeywordsActive, searchString).length;
|
|
11529
11479
|
}, 0));
|
|
11530
11480
|
}, [serviceIds, keywordIds, services, searchString, allKeywordsActive]);
|
|
11531
|
-
return /*#__PURE__*/React.createElement(
|
|
11481
|
+
return /*#__PURE__*/React.createElement(Box, {
|
|
11532
11482
|
"data-testid": "layerList"
|
|
11533
|
-
}, /*#__PURE__*/React.createElement(
|
|
11534
|
-
|
|
11535
|
-
|
|
11536
|
-
|
|
11483
|
+
}, /*#__PURE__*/React.createElement(Box, {
|
|
11484
|
+
sx: {
|
|
11485
|
+
marginBottom: '4px',
|
|
11486
|
+
fontSize: '12px'
|
|
11487
|
+
}
|
|
11488
|
+
}, numberOfLayers, " results"), /*#__PURE__*/React.createElement(Box, {
|
|
11489
|
+
sx: {
|
|
11537
11490
|
height: layerSelectHeight - 199,
|
|
11538
11491
|
overflow: 'auto'
|
|
11539
11492
|
}
|
|
11540
11493
|
}, serviceIds.map(function (serviceId) {
|
|
11541
11494
|
return filterLayersFromService(serviceId, services, keywordIds, allKeywordsActive, searchString).map(function (layer, layerIndex) {
|
|
11542
|
-
return /*#__PURE__*/React.createElement(
|
|
11543
|
-
key:
|
|
11544
|
-
}, /*#__PURE__*/React.createElement("div", {
|
|
11545
|
-
key: "".concat(serviceId, "-").concat(layer.name),
|
|
11546
|
-
className: classes.layerRow,
|
|
11547
|
-
"data-testid": "layerListLayerRow"
|
|
11548
|
-
}, /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("div", {
|
|
11549
|
-
className: classes.layerText
|
|
11550
|
-
}, layer.text), /*#__PURE__*/React.createElement("div", null, layer["abstract"] ? /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
|
|
11551
|
-
className: "".concat(classes.layerName, " ").concat(classes.layerNameMaxWidth)
|
|
11552
|
-
}, layer.name), /*#__PURE__*/React.createElement("div", {
|
|
11553
|
-
className: classes.layerAbstract,
|
|
11554
|
-
"data-testid": "layerAbstract"
|
|
11555
|
-
}, layer["abstract"])) : /*#__PURE__*/React.createElement("div", {
|
|
11556
|
-
className: classes.layerName
|
|
11557
|
-
}, layer.name))), /*#__PURE__*/React.createElement("div", {
|
|
11558
|
-
className: classes.layerButton
|
|
11559
|
-
}, /*#__PURE__*/React.createElement(LayerAddRemoveButton, {
|
|
11495
|
+
return /*#__PURE__*/React.createElement(LayerListRow, {
|
|
11496
|
+
key: layer.name,
|
|
11560
11497
|
layer: layer,
|
|
11561
11498
|
layerIndex: layerIndex,
|
|
11562
11499
|
serviceId: serviceId,
|
|
11563
11500
|
addLayer: addLayer,
|
|
11564
11501
|
deleteLayer: deleteLayer,
|
|
11565
11502
|
mapLayers: mapLayers
|
|
11566
|
-
})
|
|
11503
|
+
});
|
|
11567
11504
|
});
|
|
11568
11505
|
})));
|
|
11569
11506
|
};
|
|
@@ -11697,10 +11634,10 @@ var ServiceChip = function ServiceChip(_ref) {
|
|
|
11697
11634
|
tabIndex: 0,
|
|
11698
11635
|
"data-testid": all ? 'serviceChipAll' : 'serviceChip',
|
|
11699
11636
|
onClick: function onClick() {
|
|
11700
|
-
return toggleChip(all ? 'all' : service && service.
|
|
11637
|
+
return toggleChip(all ? 'all' : service && service.serviceUrl);
|
|
11701
11638
|
},
|
|
11702
11639
|
onKeyPress: function onKeyPress() {
|
|
11703
|
-
return toggleChip(all ? 'all' : service && service.
|
|
11640
|
+
return toggleChip(all ? 'all' : service && service.serviceUrl);
|
|
11704
11641
|
},
|
|
11705
11642
|
sx: style
|
|
11706
11643
|
}, service ? service.name : 'All');
|
|
@@ -11918,13 +11855,14 @@ var ServiceList = function ServiceList(_ref4) {
|
|
|
11918
11855
|
key: "All",
|
|
11919
11856
|
all: true,
|
|
11920
11857
|
isEnabled: isAllEnabled
|
|
11921
|
-
}), Object.keys(services).map(function (
|
|
11858
|
+
}), Object.keys(services).map(function (serviceId) {
|
|
11922
11859
|
var _a;
|
|
11923
11860
|
|
|
11861
|
+
var service = services[serviceId];
|
|
11924
11862
|
return /*#__PURE__*/React.createElement(ServiceChipConnect, {
|
|
11925
|
-
key:
|
|
11926
|
-
service:
|
|
11927
|
-
isEnabled: (_a = activeServices[service]) === null || _a === void 0 ? void 0 : _a.enabled
|
|
11863
|
+
key: serviceId,
|
|
11864
|
+
service: service,
|
|
11865
|
+
isEnabled: (_a = activeServices[service.serviceUrl]) === null || _a === void 0 ? void 0 : _a.enabled
|
|
11928
11866
|
});
|
|
11929
11867
|
})), layerSelectWidth + margin < width && /*#__PURE__*/React.createElement(ChevronRight, {
|
|
11930
11868
|
className: classes.scrollArrowRight,
|
|
@@ -12058,7 +11996,7 @@ var ServiceOptionsDialog = function ServiceOptionsDialog(_ref) {
|
|
|
12058
11996
|
}, /*#__PURE__*/React.createElement(Tooltip, {
|
|
12059
11997
|
title: "Edit Service"
|
|
12060
11998
|
}, /*#__PURE__*/React.createElement("span", null, /*#__PURE__*/React.createElement(IconButton, {
|
|
12061
|
-
disabled: isDisabled(service.
|
|
11999
|
+
disabled: isDisabled(service.serviceUrl),
|
|
12062
12000
|
"data-testid": "openEditServiceButton",
|
|
12063
12001
|
size: "large"
|
|
12064
12002
|
}, /*#__PURE__*/React.createElement(SvgIcon, null, /*#__PURE__*/React.createElement("g", null, /*#__PURE__*/React.createElement("path", {
|
|
@@ -12068,9 +12006,9 @@ var ServiceOptionsDialog = function ServiceOptionsDialog(_ref) {
|
|
|
12068
12006
|
title: "Delete Service"
|
|
12069
12007
|
}, /*#__PURE__*/React.createElement("span", null, /*#__PURE__*/React.createElement(IconButton, {
|
|
12070
12008
|
size: "large",
|
|
12071
|
-
disabled: isDisabled(service.
|
|
12009
|
+
disabled: isDisabled(service.serviceUrl),
|
|
12072
12010
|
onClick: function onClick() {
|
|
12073
|
-
return mapStoreRemoveService(service.
|
|
12011
|
+
return mapStoreRemoveService(service.serviceUrl);
|
|
12074
12012
|
},
|
|
12075
12013
|
"data-testid": "removeServiceButton"
|
|
12076
12014
|
}, /*#__PURE__*/React.createElement(SvgIcon, null, /*#__PURE__*/React.createElement("g", null, /*#__PURE__*/React.createElement("path", {
|
|
@@ -12755,13 +12693,12 @@ var LayerSelectConnect = function LayerSelectConnect(_ref) {
|
|
|
12755
12693
|
}, [dispatch]);
|
|
12756
12694
|
React.useEffect(function () {
|
|
12757
12695
|
if (isOpenInStore && preloadedServices && preloadedServices.length > 0) {
|
|
12758
|
-
preloadedServices.forEach(function (service) {
|
|
12696
|
+
mergePresetsAndUserAddedServices(preloadedServices, getUserAddedServices()).forEach(function (service) {
|
|
12759
12697
|
getLayersFlattenedFromService(service.url).then(function (layers) {
|
|
12760
12698
|
if (isMounted.current) {
|
|
12761
12699
|
serviceSetLayers$1({
|
|
12762
|
-
id: service.id,
|
|
12763
12700
|
name: service.name,
|
|
12764
|
-
|
|
12701
|
+
serviceUrl: service.url,
|
|
12765
12702
|
layers: layers,
|
|
12766
12703
|
isUserAddedService: false
|
|
12767
12704
|
});
|
|
@@ -12821,7 +12758,9 @@ var LayerManagerConnect = function LayerManagerConnect(_ref) {
|
|
|
12821
12758
|
_ref$showTitle = _ref.showTitle,
|
|
12822
12759
|
showTitle = _ref$showTitle === void 0 ? false : _ref$showTitle,
|
|
12823
12760
|
_ref$layerSelect = _ref.layerSelect,
|
|
12824
|
-
layerSelect = _ref$layerSelect === void 0 ? false : _ref$layerSelect
|
|
12761
|
+
layerSelect = _ref$layerSelect === void 0 ? false : _ref$layerSelect,
|
|
12762
|
+
_ref$leftComponent = _ref.leftComponent,
|
|
12763
|
+
leftComponent = _ref$leftComponent === void 0 ? null : _ref$leftComponent;
|
|
12825
12764
|
var dispatch = useDispatch();
|
|
12826
12765
|
var isOpenInStore = useSelector(function (store) {
|
|
12827
12766
|
return getisDialogOpen(store, 'layerManager');
|
|
@@ -12890,8 +12829,11 @@ var LayerManagerConnect = function LayerManagerConnect(_ref) {
|
|
|
12890
12829
|
onMouseDown: onOrderDialog,
|
|
12891
12830
|
order: uiOrder,
|
|
12892
12831
|
source: uiSource,
|
|
12893
|
-
layerSelect: layerSelect
|
|
12894
|
-
|
|
12832
|
+
layerSelect: layerSelect,
|
|
12833
|
+
leftComponent: leftComponent
|
|
12834
|
+
}), layerSelect && /*#__PURE__*/React.createElement(LayerSelectConnect, {
|
|
12835
|
+
preloadedServices: preloadedMapServices
|
|
12836
|
+
}));
|
|
12895
12837
|
};
|
|
12896
12838
|
|
|
12897
12839
|
/* *
|
|
@@ -13861,60 +13803,6 @@ var AutoUpdateButton = function AutoUpdateButton(_ref) {
|
|
|
13861
13803
|
}, "AUTO")))))));
|
|
13862
13804
|
};
|
|
13863
13805
|
|
|
13864
|
-
/* *
|
|
13865
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
13866
|
-
* you may not use this file except in compliance with the License.
|
|
13867
|
-
* You may obtain a copy of the License at
|
|
13868
|
-
*
|
|
13869
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
13870
|
-
*
|
|
13871
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
13872
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
13873
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
13874
|
-
* See the License for the specific language governing permissions and
|
|
13875
|
-
* limitations under the License.
|
|
13876
|
-
*
|
|
13877
|
-
* Copyright 2020 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
|
|
13878
|
-
* Copyright 2020 - Finnish Meteorological Institute (FMI)
|
|
13879
|
-
* */
|
|
13880
|
-
var svgLoopPath = {
|
|
13881
|
-
title: 'Loop',
|
|
13882
|
-
src: 'M20.029 10.371c.24-.013.487.078.67.246.176.162.278.38.288.615.001 0 .22 1.941-1.458 3.79-1.124 1.224-2.718 1.844-4.74 1.844H6.96v1.288c0 .43-.284.654-.564.654-.14 0-.277-.05-.41-.148l-2.671-1.948c-.2-.147-.314-.36-.314-.587 0-.229.114-.443.315-.588l2.67-1.95c.134-.096.272-.145.41-.145.28 0 .563.224.563.653v1.116h7.832c1.417 0 2.59-.465 3.393-1.342 1.025-1.13 1.011-2.28.998-2.5-.023-.508.355-.954.842-.998zM17.605 5c.14 0 .277.05.41.148l2.671 1.947c.2.147.314.36.314.587 0 .23-.114.444-.315.589l-2.67 1.949c-.134.096-.272.146-.41.146-.28 0-.563-.224-.563-.654V8.597H9.21c-1.416 0-2.59.465-3.393 1.342-1.025 1.13-1.011 2.329-.999 2.558.024.508-.354.954-.841.998l-.05.002c-.228 0-.454-.09-.626-.248-.176-.163-.278-.38-.288-.614-.002 0-.227-1.993 1.458-3.849 1.124-1.224 2.718-1.845 4.74-1.845h7.83V5.654c0-.429.284-.654.564-.654z'
|
|
13883
|
-
};
|
|
13884
|
-
var svgLoopOffPath = {
|
|
13885
|
-
title: 'Loop off',
|
|
13886
|
-
src: 'M15.154 3.26l1.827.814-1.278 2.867h1.339V5.654c0-.429.283-.654.563-.654.14 0 .277.05.41.148l2.671 1.947c.2.147.314.36.314.587 0 .23-.114.444-.315.589l-2.67 1.949c-.134.096-.272.146-.41.146-.28 0-.563-.224-.563-.654V8.597h-2.076l-2.944 6.613h2.768c1.328 0 2.442-.408 3.238-1.182l.155-.16c1.025-1.129 1.011-2.279.998-2.499-.023-.508.355-.954.842-.998.247-.013.493.078.676.246.176.162.278.38.288.615.001 0 .22 1.941-1.458 3.79-1.124 1.224-2.718 1.844-4.74 1.844h-3.504l-2.439 5.478-1.827-.813 2.077-4.666H6.958v1.29c0 .429-.283.653-.563.653-.14 0-.277-.05-.41-.148l-2.671-1.948c-.2-.147-.314-.36-.314-.587 0-.229.114-.443.315-.588l2.67-1.95c.134-.096.272-.145.41-.145.28 0 .563.224.563.653v1.116h2.875l2.944-6.614H9.21c-1.322 0-2.432.405-3.228 1.172l-.165.17c-1.025 1.13-1.011 2.329-.999 2.558.024.508-.354.954-.841.998l-.05.002c-.228 0-.454-.09-.626-.248-.176-.163-.278-.38-.288-.614-.002 0-.227-1.993 1.458-3.849 1.124-1.224 2.718-1.845 4.74-1.845h4.303l1.64-3.68z'
|
|
13887
|
-
};
|
|
13888
|
-
|
|
13889
|
-
var LoopButton = function LoopButton(_ref) {
|
|
13890
|
-
var _ref$isLooping = _ref.isLooping,
|
|
13891
|
-
isLooping = _ref$isLooping === void 0 ? true : _ref$isLooping,
|
|
13892
|
-
_ref$isDisabled = _ref.isDisabled,
|
|
13893
|
-
isDisabled = _ref$isDisabled === void 0 ? false : _ref$isDisabled,
|
|
13894
|
-
_ref$onToggleLoop = _ref.onToggleLoop,
|
|
13895
|
-
onToggleLoop = _ref$onToggleLoop === void 0 ? function () {
|
|
13896
|
-
return null;
|
|
13897
|
-
} : _ref$onToggleLoop;
|
|
13898
|
-
var loopButtonPath = isLooping ? svgLoopOffPath : svgLoopPath;
|
|
13899
|
-
return /*#__PURE__*/React.createElement(Tooltip, {
|
|
13900
|
-
title: loopButtonPath.title
|
|
13901
|
-
}, /*#__PURE__*/React.createElement("span", null, /*#__PURE__*/React.createElement(ToolButton, {
|
|
13902
|
-
onClick: function onClick() {
|
|
13903
|
-
return onToggleLoop();
|
|
13904
|
-
},
|
|
13905
|
-
active: isLooping,
|
|
13906
|
-
disabled: isDisabled,
|
|
13907
|
-
"data-testid": "loopButton"
|
|
13908
|
-
}, /*#__PURE__*/React.createElement(SvgIcon, null, /*#__PURE__*/React.createElement("rect", {
|
|
13909
|
-
width: 24,
|
|
13910
|
-
height: 24,
|
|
13911
|
-
fill: "transparent"
|
|
13912
|
-
}), /*#__PURE__*/React.createElement("path", {
|
|
13913
|
-
"data-testid": isLooping ? 'loop-off-svg-path' : 'loop-svg-path',
|
|
13914
|
-
d: loopButtonPath.src
|
|
13915
|
-
})))));
|
|
13916
|
-
};
|
|
13917
|
-
|
|
13918
13806
|
var useStyles$g = makeStyles(function (theme) {
|
|
13919
13807
|
return {
|
|
13920
13808
|
speedButtonDiv: {
|
|
@@ -14342,7 +14230,6 @@ var OptionsPopOver = withStyles(function (theme) {
|
|
|
14342
14230
|
|
|
14343
14231
|
var OptionsMenuButton = function OptionsMenuButton(_ref) {
|
|
14344
14232
|
var autoUpdateBtn = _ref.autoUpdateBtn,
|
|
14345
|
-
loopBtn = _ref.loopBtn,
|
|
14346
14233
|
speedBtn = _ref.speedBtn,
|
|
14347
14234
|
timeStepBtn = _ref.timeStepBtn;
|
|
14348
14235
|
|
|
@@ -14406,9 +14293,6 @@ var OptionsMenuButton = function OptionsMenuButton(_ref) {
|
|
|
14406
14293
|
})), /*#__PURE__*/React.createElement(Grid, {
|
|
14407
14294
|
item: true,
|
|
14408
14295
|
xs: "auto"
|
|
14409
|
-
}, loopBtn || /*#__PURE__*/React.createElement(LoopButton, null)), /*#__PURE__*/React.createElement(Grid, {
|
|
14410
|
-
item: true,
|
|
14411
|
-
xs: "auto"
|
|
14412
14296
|
}, autoUpdateBtn || /*#__PURE__*/React.createElement(AutoUpdateButton, null)))));
|
|
14413
14297
|
};
|
|
14414
14298
|
|
|
@@ -14497,7 +14381,6 @@ var useStyles$e = makeStyles({
|
|
|
14497
14381
|
|
|
14498
14382
|
var TimeSliderButtons = function TimeSliderButtons(_ref) {
|
|
14499
14383
|
var autoUpdateBtn = _ref.autoUpdateBtn,
|
|
14500
|
-
loopBtn = _ref.loopBtn,
|
|
14501
14384
|
optionsMenuBtn = _ref.optionsMenuBtn,
|
|
14502
14385
|
playBtn = _ref.playBtn,
|
|
14503
14386
|
speedBtn = _ref.speedBtn,
|
|
@@ -14508,7 +14391,7 @@ var TimeSliderButtons = function TimeSliderButtons(_ref) {
|
|
|
14508
14391
|
"data-testid": "timeSliderButtons"
|
|
14509
14392
|
}, matches ? /*#__PURE__*/React.createElement(Grid, {
|
|
14510
14393
|
container: true,
|
|
14511
|
-
spacing:
|
|
14394
|
+
spacing: 2,
|
|
14512
14395
|
className: classes.buttonContainerBig
|
|
14513
14396
|
}, /*#__PURE__*/React.createElement(Grid, {
|
|
14514
14397
|
item: true
|
|
@@ -14526,8 +14409,6 @@ var TimeSliderButtons = function TimeSliderButtons(_ref) {
|
|
|
14526
14409
|
}
|
|
14527
14410
|
})), /*#__PURE__*/React.createElement(Grid, {
|
|
14528
14411
|
item: true
|
|
14529
|
-
}, loopBtn || /*#__PURE__*/React.createElement(LoopButton, null)), /*#__PURE__*/React.createElement(Grid, {
|
|
14530
|
-
item: true
|
|
14531
14412
|
}, autoUpdateBtn || /*#__PURE__*/React.createElement(AutoUpdateButton, null)), /*#__PURE__*/React.createElement(Grid, {
|
|
14532
14413
|
item: true
|
|
14533
14414
|
}, playBtn || /*#__PURE__*/React.createElement(PlayButton, null))) : /*#__PURE__*/React.createElement(Grid, {
|
|
@@ -16608,14 +16489,14 @@ var TimeSlider = function TimeSlider(_ref) {
|
|
|
16608
16489
|
* Copyright 2020 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
|
|
16609
16490
|
* Copyright 2020 - Finnish Meteorological Institute (FMI)
|
|
16610
16491
|
* */
|
|
16611
|
-
var connectRedux$
|
|
16492
|
+
var connectRedux$5 = connect(function (store, props) {
|
|
16612
16493
|
return {
|
|
16613
16494
|
isAutoUpdating: isAutoUpdating(store, props.mapId)
|
|
16614
16495
|
};
|
|
16615
16496
|
}, {
|
|
16616
16497
|
toggleAutoUpdate: toggleAutoUpdate
|
|
16617
16498
|
});
|
|
16618
|
-
var AutoUpdateButtonConnectComponent = connectRedux$
|
|
16499
|
+
var AutoUpdateButtonConnectComponent = connectRedux$5(function (_ref) {
|
|
16619
16500
|
var mapId = _ref.mapId,
|
|
16620
16501
|
isAutoUpdating = _ref.isAutoUpdating,
|
|
16621
16502
|
toggleAutoUpdate = _ref.toggleAutoUpdate;
|
|
@@ -16633,54 +16514,7 @@ var AutoUpdateButtonConnectComponent = connectRedux$6(function (_ref) {
|
|
|
16633
16514
|
disabled: false
|
|
16634
16515
|
});
|
|
16635
16516
|
});
|
|
16636
|
-
var AutoUpdateButtonConnect = connectRedux$
|
|
16637
|
-
|
|
16638
|
-
/* *
|
|
16639
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
16640
|
-
* you may not use this file except in compliance with the License.
|
|
16641
|
-
* You may obtain a copy of the License at
|
|
16642
|
-
*
|
|
16643
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
16644
|
-
*
|
|
16645
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
16646
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
16647
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
16648
|
-
* See the License for the specific language governing permissions and
|
|
16649
|
-
* limitations under the License.
|
|
16650
|
-
*
|
|
16651
|
-
* Copyright 2020 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
|
|
16652
|
-
* Copyright 2020 - Finnish Meteorological Institute (FMI)
|
|
16653
|
-
* */
|
|
16654
|
-
var connectRedux$5 = connect(function (store, props) {
|
|
16655
|
-
return {
|
|
16656
|
-
isLooping: isLooping(store, props.mapId)
|
|
16657
|
-
};
|
|
16658
|
-
}, {
|
|
16659
|
-
mapToggleLoop: toggleLoop
|
|
16660
|
-
});
|
|
16661
|
-
var LoopButtonConnect = connectRedux$5(function (_ref) {
|
|
16662
|
-
var mapId = _ref.mapId,
|
|
16663
|
-
_ref$isLooping = _ref.isLooping,
|
|
16664
|
-
isLooping = _ref$isLooping === void 0 ? true : _ref$isLooping,
|
|
16665
|
-
_ref$isDisabled = _ref.isDisabled,
|
|
16666
|
-
isDisabled = _ref$isDisabled === void 0 ? false : _ref$isDisabled,
|
|
16667
|
-
mapToggleLoop = _ref.mapToggleLoop;
|
|
16668
|
-
|
|
16669
|
-
var onMapToggleLoop = function onMapToggleLoop() {
|
|
16670
|
-
mapToggleLoop({
|
|
16671
|
-
mapId: mapId,
|
|
16672
|
-
shouldLoop: !isLooping
|
|
16673
|
-
});
|
|
16674
|
-
};
|
|
16675
|
-
|
|
16676
|
-
return /*#__PURE__*/React__default.createElement(LoopButton, {
|
|
16677
|
-
isLooping: isLooping,
|
|
16678
|
-
isDisabled: isDisabled,
|
|
16679
|
-
onToggleLoop: function onToggleLoop() {
|
|
16680
|
-
onMapToggleLoop();
|
|
16681
|
-
}
|
|
16682
|
-
});
|
|
16683
|
-
});
|
|
16517
|
+
var AutoUpdateButtonConnect = connectRedux$5(AutoUpdateButtonConnectComponent);
|
|
16684
16518
|
|
|
16685
16519
|
/* *
|
|
16686
16520
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
@@ -16811,9 +16645,6 @@ var OptionsMenuButtonConnect = function OptionsMenuButtonConnect(_ref) {
|
|
|
16811
16645
|
autoUpdateBtn: /*#__PURE__*/React.createElement(AutoUpdateButtonConnect, {
|
|
16812
16646
|
mapId: mapId
|
|
16813
16647
|
}),
|
|
16814
|
-
loopBtn: /*#__PURE__*/React.createElement(LoopButtonConnect, {
|
|
16815
|
-
mapId: mapId
|
|
16816
|
-
}),
|
|
16817
16648
|
speedBtn: /*#__PURE__*/React.createElement(SpeedButtonConnect, {
|
|
16818
16649
|
mapId: mapId
|
|
16819
16650
|
}),
|
|
@@ -16917,9 +16748,6 @@ var TimeSliderButtonsConnect = function TimeSliderButtonsConnect(_ref) {
|
|
|
16917
16748
|
autoUpdateBtn: /*#__PURE__*/React.createElement(AutoUpdateButtonConnect, {
|
|
16918
16749
|
mapId: mapId
|
|
16919
16750
|
}),
|
|
16920
|
-
loopBtn: /*#__PURE__*/React.createElement(LoopButtonConnect, {
|
|
16921
|
-
mapId: mapId
|
|
16922
|
-
}),
|
|
16923
16751
|
optionsMenuBtn: /*#__PURE__*/React.createElement(OptionsMenuButtonConnect, {
|
|
16924
16752
|
mapId: mapId
|
|
16925
16753
|
}),
|
|
@@ -23576,4 +23404,55 @@ var CoreThemeStoreProvider = function CoreThemeStoreProvider(_ref2) {
|
|
|
23576
23404
|
}, children)));
|
|
23577
23405
|
};
|
|
23578
23406
|
|
|
23579
|
-
|
|
23407
|
+
/* *
|
|
23408
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
23409
|
+
* you may not use this file except in compliance with the License.
|
|
23410
|
+
* You may obtain a copy of the License at
|
|
23411
|
+
*
|
|
23412
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
23413
|
+
*
|
|
23414
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
23415
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
23416
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
23417
|
+
* See the License for the specific language governing permissions and
|
|
23418
|
+
* limitations under the License.
|
|
23419
|
+
*
|
|
23420
|
+
* Copyright 2022 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
|
|
23421
|
+
* Copyright 2022 - Finnish Meteorological Institute (FMI)
|
|
23422
|
+
* */
|
|
23423
|
+
var MapWarningProperties = function MapWarningProperties(_ref) {
|
|
23424
|
+
var selectedFeatureProperties = _ref.selectedFeatureProperties;
|
|
23425
|
+
return /*#__PURE__*/React__default.createElement("div", {
|
|
23426
|
+
"data-testid": "map-warning-properties",
|
|
23427
|
+
style: {
|
|
23428
|
+
width: '100%',
|
|
23429
|
+
height: '15%',
|
|
23430
|
+
marginTop: '30px',
|
|
23431
|
+
marginLeft: '100px',
|
|
23432
|
+
position: 'relative',
|
|
23433
|
+
zIndex: 10000,
|
|
23434
|
+
backgroundColor: '#CCCCCCC0',
|
|
23435
|
+
padding: '0px 20px 20px',
|
|
23436
|
+
overflow: 'auto',
|
|
23437
|
+
fontSize: '11px'
|
|
23438
|
+
}
|
|
23439
|
+
}, /*#__PURE__*/React__default.createElement("h1", {
|
|
23440
|
+
"data-testid": "map-warning-properties-title"
|
|
23441
|
+
}, selectedFeatureProperties.country), selectedFeatureProperties.details[0].event && /*#__PURE__*/React__default.createElement("pre", {
|
|
23442
|
+
"data-testid": "map-warning-properties-row"
|
|
23443
|
+
}, "Event: ", selectedFeatureProperties.details[0].event), selectedFeatureProperties.details[0].sent && /*#__PURE__*/React__default.createElement("pre", {
|
|
23444
|
+
"data-testid": "map-warning-properties-row"
|
|
23445
|
+
}, "Sent:", ' ', moment.utc(selectedFeatureProperties.details[0].sent).format('DD MMM YYYY, HH:mm'), ' ', "UTC"), selectedFeatureProperties.details[0].expires && /*#__PURE__*/React__default.createElement("pre", {
|
|
23446
|
+
"data-testid": "map-warning-properties-row"
|
|
23447
|
+
}, "Expires:", ' ', moment.utc(selectedFeatureProperties.details[0].expires).format('DD MMM YYYY, HH:mm'), ' ', "UTC"), selectedFeatureProperties.details[0].web && /*#__PURE__*/React__default.createElement("pre", {
|
|
23448
|
+
"data-testid": "map-warning-properties-row"
|
|
23449
|
+
}, "Web: ", selectedFeatureProperties.details[0].web), selectedFeatureProperties.details[0].sender && /*#__PURE__*/React__default.createElement("pre", {
|
|
23450
|
+
"data-testid": "map-warning-properties-row"
|
|
23451
|
+
}, "Sender: ", selectedFeatureProperties.details[0].sender), selectedFeatureProperties.details[0].identifier && /*#__PURE__*/React__default.createElement("pre", {
|
|
23452
|
+
"data-testid": "map-warning-properties-row"
|
|
23453
|
+
}, "Identifier: ", selectedFeatureProperties.details[0].identifier), selectedFeatureProperties.details[0].area && /*#__PURE__*/React__default.createElement("pre", {
|
|
23454
|
+
"data-testid": "map-warning-properties-row"
|
|
23455
|
+
}, "area: ", selectedFeatureProperties.details[0].area));
|
|
23456
|
+
};
|
|
23457
|
+
|
|
23458
|
+
export { ConfigurableConnectedMap, ConfigurableMapWithSliderConnect, CoreThemeProvider, CoreThemeStoreProvider, HarmRefTimePreset, HarmonieTempAndPrecipPreset, LayerManagerConnect, LayerManagerMapButtonConnect, Legend, LegendConnect, LegendMapButtonConnect, MapControls, MapView, MapViewConnect, MapViewLayer, MapWarningProperties, MultiDimensionSelectMapButtonsConnect, MultiMapMultiDimensionSelectConnect as MultiMapDimensionSelectConnect, MultiMapViewConnect, ReactMapView, ReactMapViewLayer, SyncGroupViewerConnect, index as SyncGroups, TimeSliderConnect, ZoomControlConnect, ZoomControls, componentsLookUp, coreModuleConfig, dateFormat, defaultConfigurations, filterBaseLayers, filterBbox, filterDimensions, filterMapLayers, filterMapPresets, filterNonTimeDimensions, filterServices, filterSrs, generateLayerId, generateMapId, generateServiceId, generateTimeSeriesId, generateTimesliderId, getFirstTimeStepForLayerId, getInitialPresets, getLastTimeStepForLayerId, getNextTimeStepForLayerId, getPreviousTimeStepForLayerId, getWMJSDimensionForLayerAndDimension, getWMJSMapById, getWMJSTimeDimensionForLayerId, getWMLayerById, reducer$6 as layerReducer, makeMapPreset, actions$3 as mapActions, constants as mapConstants, moduleConfig as mapModuleConfig, selectors$1 as mapSelectors, types$2 as mapTypes, utils as mapUtils, publicLayers, publicServices, registerWMJSMap, registerWMLayer, store, actions as syncGroupActions, synchronizationGroupConfig as synchronizationGroupModuleConfig, synchronizationGroupConfig as synchronizationGroupsConfig, testLayers, actions$2 as uiActions, uiModuleConfig, selectors as uiSelectors, types$1 as uiTypes, useStyles$3 as useStyles };
|