@opengeoweb/core 9.14.0 → 9.15.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.
Files changed (38) hide show
  1. package/index.esm.js +537 -390
  2. package/package.json +1 -2
  3. package/src/lib/components/ConfigurableMapConnect/ConfigurableMapConnect.d.ts +1 -1
  4. package/src/lib/components/LayerManager/AddLayersButton/AddLayersButton.d.ts +3 -3
  5. package/src/lib/components/LayerManager/AddLayersPopup/AddLayersPopup.d.ts +3 -3
  6. package/src/lib/components/LayerManager/BaseLayerRow/BaseLayerRow.d.ts +2 -3
  7. package/src/lib/components/LayerManager/DescriptionRow/DescriptionRow.d.ts +1 -2
  8. package/src/lib/components/LayerManager/LayerContainerRow/LayerRow/AcceptanceTime/AcceptanceTime.d.ts +1 -0
  9. package/src/lib/components/LayerManager/LayerContainerRow/LayerRow/AcceptanceTime/AcceptanceTimeConnect.d.ts +1 -0
  10. package/src/lib/components/LayerManager/LayerContainerRow/LayerRow/DimensionSelect/DimensionSelect.d.ts +1 -0
  11. package/src/lib/components/LayerManager/LayerContainerRow/LayerRow/DimensionSelect/DimensionSelectConnect.d.ts +1 -0
  12. package/src/lib/components/LayerManager/LayerContainerRow/LayerRow/DimensionSelect/DimensionSelectName.d.ts +1 -0
  13. package/src/lib/components/LayerManager/LayerContainerRow/LayerRow/DimensionSelect/DimensionSelectValue.d.ts +1 -0
  14. package/src/lib/components/LayerManager/LayerContainerRow/LayerRow/LayerRow.d.ts +7 -3
  15. package/src/lib/components/LayerManager/LayerContainerRow/LayerRow/RenderLayers/RenderLayers.d.ts +1 -0
  16. package/src/lib/components/LayerManager/LayerContainerRow/LayerRow/RenderLayers/RenderLayersConnect.d.ts +1 -0
  17. package/src/lib/components/LayerManager/LayerContainerRow/LayerRow/RenderStyles/RenderStyles.d.ts +1 -0
  18. package/src/lib/components/LayerManager/LayerContainerRow/LayerRow/RenderStyles/RenderStylesConnect.d.ts +1 -0
  19. package/src/lib/components/LayerManager/LayerManager.d.ts +3 -4
  20. package/src/lib/components/LayerManager/LayerManagerConnect.d.ts +5 -6
  21. package/src/lib/components/LayerManager/LayerSelect/LayerSelectButton.d.ts +8 -0
  22. package/src/lib/components/LayerManager/useFetchServices.d.ts +3 -4
  23. package/src/lib/components/Providers/Providers.d.ts +5 -0
  24. package/src/lib/components/TimeSliderConnect/TimeSliderButtonsConnect/ControlButtonsConnect.d.ts +1 -0
  25. package/src/lib/components/TimeSliderConnect/TimeSliderButtonsConnect/OptionsMenuButtonConnect.d.ts +0 -1
  26. package/src/lib/components/TimeSliderConnect/TimeSliderButtonsConnect/OptionsMenuConnect.d.ts +0 -1
  27. package/src/lib/components/WMSLoader/WMSLayerTree/WMSLayerTree.d.ts +2 -3
  28. package/src/lib/components/WMSLoader/WMSLayerTree/WMSLayerTreeConnect.d.ts +3 -4
  29. package/src/lib/components/WMSLoader/WMSLoader.d.ts +3 -3
  30. package/src/lib/components/WMSLoader/WMSLoaderConnect.d.ts +2 -2
  31. package/src/lib/components/WMSLoader/WMSServerList/WMSServerList.d.ts +4 -4
  32. package/src/lib/utils/defaultConfigurations.d.ts +2 -2
  33. package/src/lib/utils/defaultTestSettings.d.ts +2 -3
  34. package/src/lib/utils/i18n.d.ts +2 -0
  35. package/src/lib/utils/jsonPresetFilter.d.ts +6 -7
  36. package/src/lib/utils/languageTranslation.d.ts +20 -28
  37. package/src/lib/utils/languagesService.d.ts +25 -0
  38. package/src/lib/utils/translationUpdater.d.ts +0 -7
package/index.esm.js CHANGED
@@ -1,21 +1,22 @@
1
1
  import * as React from 'react';
2
2
  import React__default, { useState, useCallback, useRef } from 'react';
3
- import { Grid, Box, MenuItem, Typography, useTheme, Popper, Fade, Tooltip, LinearProgress, FormControl, InputLabel, Paper, List, ListItemButton, ListItemText, CircularProgress, ListSubheader, Dialog, DialogTitle, DialogContent, DialogContentText, TextField, InputAdornment, DialogActions, Button, ListItemIcon, Checkbox } from '@mui/material';
4
- import { CustomIconButton, TooltipSelect, AlertIcon, sliderHeaderStyle, CustomSlider, ToggleMenu, CustomTooltip, renderCounter, AlertBanner, CustomAccordion, calculateStartSize, ToolContainerDraggable, dateUtils, withEggs } from '@opengeoweb/shared';
5
- import { CollapseSmall, CollapseMedium, CollapseLarge, CollapseWindow, ExpandWindow, CloudLoading, Copy, None, FastForward, AutoUpdateActive, Both, Visibility, VisibilityOff, Delete, DragHandle as DragHandle$1, Cached, Add, MapAdd, WorldMapProjection, Layers, List as List$1, ExitDomain, Info, Search, MyLocation, Close, ThemeWrapper, lightTheme } from '@opengeoweb/theme';
6
- import { LayerSelectButtonConnect, getUserAddedServices, layerSelectConfig } from '@opengeoweb/layer-select';
3
+ import { Grid, Box, MenuItem, Typography, useTheme, Popper, Fade, Tooltip, styled, LinearProgress, FormControl, InputLabel, Paper, List, ListItemButton, ListItemText, CircularProgress, ListSubheader, Dialog, DialogTitle, DialogContent, DialogContentText, TextField, InputAdornment, DialogActions, Button, ListItemIcon, Checkbox } from '@mui/material';
4
+ import { CustomIconButton, TooltipSelect, AlertIcon, sliderHeaderStyle, CustomSlider, ToggleMenu, CustomTooltip, tooltipContainerStyles, renderCounter, AlertBanner, CustomAccordion, calculateStartSize, ToolContainerDraggable, useDebounce, dateUtils, withEggs } from '@opengeoweb/shared';
5
+ import { CollapseSmall, CollapseMedium, CollapseLarge, CollapseWindow, ExpandWindow, LayersAdd, CloudLoading, Copy, None, FastForward, AutoUpdateActive, Both, Visibility, VisibilityOff, Delete, DragHandle as DragHandle$1, Cached, Add, MapAdd, WorldMapProjection, Layers, List as List$1, ExitDomain, Info, Search, MyLocation, Close, ThemeWrapper, lightTheme } from '@opengeoweb/theme';
7
6
  import { useDispatch, useSelector, connect, useStore, Provider } from 'react-redux';
8
7
  import { ReactSortable } from 'react-sortablejs';
9
8
  import Sortable from 'sortablejs';
10
- import { layerTypes, layerUtils, layerActions, layerSelectors, serviceSelectors, serviceActions, mapSelectors, mapActions, mapEnums, uiSelectors, uiTypes, useSetupDialog, filterLayers, uiActions, genericActions, drawtoolSelectors, syncConstants, loadingIndicatorActions, IS_LEGEND_OPEN_BY_DEFAULT, defaultLayers, mapStoreActions, getSingularDrawtoolDrawLayerId, syncGroupsSelectors, syncGroupsSelector, coreModuleConfig, routerUtils, routerModuleConfig } from '@opengeoweb/store';
9
+ import { layerTypes, layerUtils, layerActions, layerSelectors, serviceSelectors, serviceActions, mapSelectors, mapActions, mapEnums, uiSelectors, uiTypes, useSetupDialog, filterLayers, getUserAddedServices, uiActions, genericActions, drawtoolSelectors, syncConstants, loadingIndicatorActions, IS_LEGEND_OPEN_BY_DEFAULT, defaultLayers, mapStoreActions, getSingularDrawtoolDrawLayerId, syncGroupsSelectors, syncGroupsSelector, coreModuleConfig, routerUtils, routerModuleConfig } from '@opengeoweb/store';
11
10
  import { LayerInfoButton, LayerInfoDialog, MapControlButton, MapDimensionSelect, dimensionConfig, DimensionSelectDialog, DimensionSelectButton, ZoomControls, MapView, MapViewLayer, LegendDialog, registerDrawFunction, emptyGeoJSON, MapControls, publicLayers } from '@opengeoweb/webmap-react';
12
11
  import { webmapUtils, getCapabilities, WMGetServiceFromStore, LayerType, handleDateUtilsISOString, wmServiceListener, EVENT_GETCAPABILITIES_START, EVENT_GETCAPABILITIES_READY, WMLayer } from '@opengeoweb/webmap';
13
12
  import { Box as Box$1 } from '@mui/system';
14
- import { defaultTimeSpan, TIME_SLIDER_LEGEND_HEIGHT, SpeedButton, TimeStepButton, NowButton, handleSetNowEvent, AnimationLengthButton, AnimationLength, TimeSpanButton, marks as marks$1, secondsPerPxFromCanvasWidth, getNewCenterOfFixedPointZoom, AutoUpdateButton, OptionsMenuButton, PlayButton, defaultTimeStep, BackwardForwardStepButton, TimeSliderButtons, TimeSliderCurrentTimeBox, TimeSliderLegend, TimeSlider, onsetNewDateDebounced, getFilteredTime, ControlButtons, OptionsMenu, TimeSliderClock } from '@opengeoweb/timeslider';
13
+ import { defaultTimeSpan, TIME_SLIDER_LEGEND_HEIGHT, SpeedButton, TimeStepButton, AnimationLengthButton, AnimationLength, TimeSpanButton, marks as marks$1, secondsPerPxFromCanvasWidth, getNewCenterOfFixedPointZoom, OptionsMenuButton, PlayButton, defaultTimeStep, BackwardForwardStepButton, AutoUpdateButton, NowButton, handleSetNowEvent, TimeSliderButtons, TimeSliderCurrentTimeBox, TimeSliderLegend, TimeSlider, onsetNewDateDebounced, getFilteredTime, ControlButtons, OptionsMenu, TimeSliderClock } from '@opengeoweb/timeslider';
15
14
  import _, { isEqual, range } from 'lodash';
15
+ import { LayerSelectButtonConnect, LayerSelectConnect, layerSelectConfig } from '@opengeoweb/layer-select';
16
16
  import axios from 'axios';
17
- import { useDebounce } from '@opengeoweb/api';
18
17
  import * as DOMPurify from 'dompurify';
18
+ import i18n from 'i18next';
19
+ import { initReactI18next, I18nextProvider, useTranslation } from 'react-i18next';
19
20
  import { SnackbarWrapperConnect } from '@opengeoweb/snackbar';
20
21
  import { useNavigate } from 'react-router-dom';
21
22
 
@@ -87,17 +88,17 @@ var $TypeError$c = TypeError;
87
88
 
88
89
  // `RequireObjectCoercible` abstract operation
89
90
  // https://tc39.es/ecma262/#sec-requireobjectcoercible
90
- var requireObjectCoercible$7 = function (it) {
91
+ var requireObjectCoercible$8 = function (it) {
91
92
  if (isNullOrUndefined$3(it)) throw new $TypeError$c("Can't call method on " + it);
92
93
  return it;
93
94
  };
94
95
 
95
96
  // toObject with fallback for non-array-like ES3 strings
96
97
  var IndexedObject$2 = indexedObject;
97
- var requireObjectCoercible$6 = requireObjectCoercible$7;
98
+ var requireObjectCoercible$7 = requireObjectCoercible$8;
98
99
 
99
100
  var toIndexedObject$5 = function (it) {
100
- return IndexedObject$2(requireObjectCoercible$6(it));
101
+ return IndexedObject$2(requireObjectCoercible$7(it));
101
102
  };
102
103
 
103
104
  var check = function (it) {
@@ -105,7 +106,7 @@ var check = function (it) {
105
106
  };
106
107
 
107
108
  // https://github.com/zloirock/core-js/issues/86#issuecomment-115759028
108
- var global$h =
109
+ var global$g =
109
110
  // eslint-disable-next-line es/no-global-this -- safe
110
111
  check(typeof globalThis == 'object' && globalThis) ||
111
112
  check(typeof window == 'object' && window) ||
@@ -116,49 +117,49 @@ var global$h =
116
117
  // eslint-disable-next-line no-new-func -- fallback
117
118
  (function () { return this; })() || Function('return this')();
118
119
 
119
- var shared$4 = {exports: {}};
120
+ var sharedStore = {exports: {}};
120
121
 
121
- var global$g = global$h;
122
+ var global$f = global$g;
122
123
 
123
124
  // eslint-disable-next-line es/no-object-defineproperty -- safe
124
125
  var defineProperty$6 = Object.defineProperty;
125
126
 
126
127
  var defineGlobalProperty$3 = function (key, value) {
127
128
  try {
128
- defineProperty$6(global$g, key, { value: value, configurable: true, writable: true });
129
+ defineProperty$6(global$f, key, { value: value, configurable: true, writable: true });
129
130
  } catch (error) {
130
- global$g[key] = value;
131
+ global$f[key] = value;
131
132
  } return value;
132
133
  };
133
134
 
134
- var global$f = global$h;
135
+ var globalThis$1 = global$g;
135
136
  var defineGlobalProperty$2 = defineGlobalProperty$3;
136
137
 
137
138
  var SHARED = '__core-js_shared__';
138
- var store$3 = global$f[SHARED] || defineGlobalProperty$2(SHARED, {});
139
+ var store$3 = sharedStore.exports = globalThis$1[SHARED] || defineGlobalProperty$2(SHARED, {});
139
140
 
140
- var sharedStore = store$3;
141
-
142
- var store$2 = sharedStore;
143
-
144
- (shared$4.exports = function (key, value) {
145
- return store$2[key] || (store$2[key] = value !== undefined ? value : {});
146
- })('versions', []).push({
147
- version: '3.35.1',
141
+ (store$3.versions || (store$3.versions = [])).push({
142
+ version: '3.36.1',
148
143
  mode: 'global',
149
144
  copyright: '© 2014-2024 Denis Pushkarev (zloirock.ru)',
150
- license: 'https://github.com/zloirock/core-js/blob/v3.35.1/LICENSE',
145
+ license: 'https://github.com/zloirock/core-js/blob/v3.36.1/LICENSE',
151
146
  source: 'https://github.com/zloirock/core-js'
152
147
  });
153
148
 
154
- var requireObjectCoercible$5 = requireObjectCoercible$7;
149
+ var store$2 = sharedStore.exports;
150
+
151
+ var shared$4 = function (key, value) {
152
+ return store$2[key] || (store$2[key] = value || {});
153
+ };
154
+
155
+ var requireObjectCoercible$6 = requireObjectCoercible$8;
155
156
 
156
157
  var $Object$3 = Object;
157
158
 
158
159
  // `ToObject` abstract operation
159
160
  // https://tc39.es/ecma262/#sec-toobject
160
161
  var toObject$7 = function (argument) {
161
- return $Object$3(requireObjectCoercible$5(argument));
162
+ return $Object$3(requireObjectCoercible$6(argument));
162
163
  };
163
164
 
164
165
  var uncurryThis$i = functionUncurryThis;
@@ -185,7 +186,7 @@ var uid$2 = function (key) {
185
186
 
186
187
  var engineUserAgent = typeof navigator != 'undefined' && String(navigator.userAgent) || '';
187
188
 
188
- var global$e = global$h;
189
+ var global$e = global$g;
189
190
  var userAgent$2 = engineUserAgent;
190
191
 
191
192
  var process = global$e.process;
@@ -216,7 +217,7 @@ var engineV8Version = version;
216
217
  /* eslint-disable es/no-symbol -- required for testing */
217
218
  var V8_VERSION = engineV8Version;
218
219
  var fails$k = fails$n;
219
- var global$d = global$h;
220
+ var global$d = global$g;
220
221
 
221
222
  var $String$5 = global$d.String;
222
223
 
@@ -239,8 +240,8 @@ var useSymbolAsUid = NATIVE_SYMBOL$1
239
240
  && !Symbol.sham
240
241
  && typeof Symbol.iterator == 'symbol';
241
242
 
242
- var global$c = global$h;
243
- var shared$3 = shared$4.exports;
243
+ var global$c = global$g;
244
+ var shared$3 = shared$4;
244
245
  var hasOwn$a = hasOwnProperty_1;
245
246
  var uid$1 = uid$2;
246
247
  var NATIVE_SYMBOL = symbolConstructorDetection;
@@ -272,18 +273,18 @@ var isCallable$i = typeof documentAll == 'undefined' && documentAll !== undefine
272
273
 
273
274
  var isCallable$h = isCallable$i;
274
275
 
275
- var isObject$a = function (it) {
276
+ var isObject$b = function (it) {
276
277
  return typeof it == 'object' ? it !== null : isCallable$h(it);
277
278
  };
278
279
 
279
- var isObject$9 = isObject$a;
280
+ var isObject$a = isObject$b;
280
281
 
281
282
  var $String$4 = String;
282
283
  var $TypeError$b = TypeError;
283
284
 
284
285
  // `Assert: Type(argument) is Object`
285
- var anObject$b = function (argument) {
286
- if (isObject$9(argument)) return argument;
286
+ var anObject$a = function (argument) {
287
+ if (isObject$a(argument)) return argument;
287
288
  throw new $TypeError$b($String$4(argument) + ' is not an object');
288
289
  };
289
290
 
@@ -312,12 +313,12 @@ var v8PrototypeDefineBug = DESCRIPTORS$b && fails$i(function () {
312
313
 
313
314
  var objectDefineProperty = {};
314
315
 
315
- var global$b = global$h;
316
- var isObject$8 = isObject$a;
316
+ var global$b = global$g;
317
+ var isObject$9 = isObject$b;
317
318
 
318
319
  var document$1 = global$b.document;
319
320
  // typeof document.createElement is 'object' in old IE
320
- var EXISTS$1 = isObject$8(document$1) && isObject$8(document$1.createElement);
321
+ var EXISTS$1 = isObject$9(document$1) && isObject$9(document$1.createElement);
321
322
 
322
323
  var documentCreateElement$2 = function (it) {
323
324
  return EXISTS$1 ? document$1.createElement(it) : {};
@@ -343,7 +344,7 @@ var functionCall = NATIVE_BIND$1 ? call$d.bind(call$d) : function () {
343
344
  return call$d.apply(call$d, arguments);
344
345
  };
345
346
 
346
- var global$a = global$h;
347
+ var global$a = global$g;
347
348
  var isCallable$g = isCallable$i;
348
349
 
349
350
  var aFunction = function (argument) {
@@ -405,7 +406,7 @@ var getMethod$3 = function (V, P) {
405
406
 
406
407
  var call$c = functionCall;
407
408
  var isCallable$d = isCallable$i;
408
- var isObject$7 = isObject$a;
409
+ var isObject$8 = isObject$b;
409
410
 
410
411
  var $TypeError$9 = TypeError;
411
412
 
@@ -413,14 +414,14 @@ var $TypeError$9 = TypeError;
413
414
  // https://tc39.es/ecma262/#sec-ordinarytoprimitive
414
415
  var ordinaryToPrimitive$1 = function (input, pref) {
415
416
  var fn, val;
416
- if (pref === 'string' && isCallable$d(fn = input.toString) && !isObject$7(val = call$c(fn, input))) return val;
417
- if (isCallable$d(fn = input.valueOf) && !isObject$7(val = call$c(fn, input))) return val;
418
- if (pref !== 'string' && isCallable$d(fn = input.toString) && !isObject$7(val = call$c(fn, input))) return val;
417
+ if (pref === 'string' && isCallable$d(fn = input.toString) && !isObject$8(val = call$c(fn, input))) return val;
418
+ if (isCallable$d(fn = input.valueOf) && !isObject$8(val = call$c(fn, input))) return val;
419
+ if (pref !== 'string' && isCallable$d(fn = input.toString) && !isObject$8(val = call$c(fn, input))) return val;
419
420
  throw new $TypeError$9("Can't convert object to primitive value");
420
421
  };
421
422
 
422
423
  var call$b = functionCall;
423
- var isObject$6 = isObject$a;
424
+ var isObject$7 = isObject$b;
424
425
  var isSymbol$1 = isSymbol$2;
425
426
  var getMethod$2 = getMethod$3;
426
427
  var ordinaryToPrimitive = ordinaryToPrimitive$1;
@@ -432,13 +433,13 @@ var TO_PRIMITIVE = wellKnownSymbol$b('toPrimitive');
432
433
  // `ToPrimitive` abstract operation
433
434
  // https://tc39.es/ecma262/#sec-toprimitive
434
435
  var toPrimitive$1 = function (input, pref) {
435
- if (!isObject$6(input) || isSymbol$1(input)) return input;
436
+ if (!isObject$7(input) || isSymbol$1(input)) return input;
436
437
  var exoticToPrim = getMethod$2(input, TO_PRIMITIVE);
437
438
  var result;
438
439
  if (exoticToPrim) {
439
440
  if (pref === undefined) pref = 'default';
440
441
  result = call$b(exoticToPrim, input, pref);
441
- if (!isObject$6(result) || isSymbol$1(result)) return result;
442
+ if (!isObject$7(result) || isSymbol$1(result)) return result;
442
443
  throw new $TypeError$8("Can't convert object to primitive value");
443
444
  }
444
445
  if (pref === undefined) pref = 'number';
@@ -458,7 +459,7 @@ var toPropertyKey$2 = function (argument) {
458
459
  var DESCRIPTORS$9 = descriptors;
459
460
  var IE8_DOM_DEFINE$1 = ie8DomDefine;
460
461
  var V8_PROTOTYPE_DEFINE_BUG$1 = v8PrototypeDefineBug;
461
- var anObject$a = anObject$b;
462
+ var anObject$9 = anObject$a;
462
463
  var toPropertyKey$1 = toPropertyKey$2;
463
464
 
464
465
  var $TypeError$7 = TypeError;
@@ -473,9 +474,9 @@ var WRITABLE = 'writable';
473
474
  // `Object.defineProperty` method
474
475
  // https://tc39.es/ecma262/#sec-object.defineproperty
475
476
  objectDefineProperty.f = DESCRIPTORS$9 ? V8_PROTOTYPE_DEFINE_BUG$1 ? function defineProperty(O, P, Attributes) {
476
- anObject$a(O);
477
+ anObject$9(O);
477
478
  P = toPropertyKey$1(P);
478
- anObject$a(Attributes);
479
+ anObject$9(Attributes);
479
480
  if (typeof O === 'function' && P === 'prototype' && 'value' in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) {
480
481
  var current = $getOwnPropertyDescriptor$1(O, P);
481
482
  if (current && current[WRITABLE]) {
@@ -488,9 +489,9 @@ objectDefineProperty.f = DESCRIPTORS$9 ? V8_PROTOTYPE_DEFINE_BUG$1 ? function de
488
489
  }
489
490
  } return $defineProperty(O, P, Attributes);
490
491
  } : $defineProperty : function defineProperty(O, P, Attributes) {
491
- anObject$a(O);
492
+ anObject$9(O);
492
493
  P = toPropertyKey$1(P);
493
- anObject$a(Attributes);
494
+ anObject$9(Attributes);
494
495
  if (IE8_DOM_DEFINE$1) try {
495
496
  return $defineProperty(O, P, Attributes);
496
497
  } catch (error) { /* empty */ }
@@ -561,6 +562,7 @@ var createMethod$3 = function (IS_INCLUDES) {
561
562
  return function ($this, el, fromIndex) {
562
563
  var O = toIndexedObject$4($this);
563
564
  var length = lengthOfArrayLike$3(O);
565
+ if (length === 0) return !IS_INCLUDES && -1;
564
566
  var index = toAbsoluteIndex(fromIndex, length);
565
567
  var value;
566
568
  // Array#includes uses SameValueZero equality algorithm
@@ -632,7 +634,7 @@ var objectKeys$2 = Object.keys || function keys(O) {
632
634
  var DESCRIPTORS$8 = descriptors;
633
635
  var V8_PROTOTYPE_DEFINE_BUG = v8PrototypeDefineBug;
634
636
  var definePropertyModule$3 = objectDefineProperty;
635
- var anObject$9 = anObject$b;
637
+ var anObject$8 = anObject$a;
636
638
  var toIndexedObject$2 = toIndexedObject$5;
637
639
  var objectKeys$1 = objectKeys$2;
638
640
 
@@ -640,7 +642,7 @@ var objectKeys$1 = objectKeys$2;
640
642
  // https://tc39.es/ecma262/#sec-object.defineproperties
641
643
  // eslint-disable-next-line es/no-object-defineproperties -- safe
642
644
  objectDefineProperties.f = DESCRIPTORS$8 && !V8_PROTOTYPE_DEFINE_BUG ? Object.defineProperties : function defineProperties(O, Properties) {
643
- anObject$9(O);
645
+ anObject$8(O);
644
646
  var props = toIndexedObject$2(Properties);
645
647
  var keys = objectKeys$1(Properties);
646
648
  var length = keys.length;
@@ -654,7 +656,7 @@ var getBuiltIn$2 = getBuiltIn$4;
654
656
 
655
657
  var html$1 = getBuiltIn$2('document', 'documentElement');
656
658
 
657
- var shared$2 = shared$4.exports;
659
+ var shared$2 = shared$4;
658
660
  var uid = uid$2;
659
661
 
660
662
  var keys = shared$2('keys');
@@ -664,7 +666,7 @@ var sharedKey$3 = function (key) {
664
666
  };
665
667
 
666
668
  /* global ActiveXObject -- old IE, WSH */
667
- var anObject$8 = anObject$b;
669
+ var anObject$7 = anObject$a;
668
670
  var definePropertiesModule = objectDefineProperties;
669
671
  var enumBugKeys$1 = enumBugKeys$3;
670
672
  var hiddenKeys$2 = hiddenKeys$4;
@@ -738,7 +740,7 @@ hiddenKeys$2[IE_PROTO$1] = true;
738
740
  var objectCreate = Object.create || function create(O, Properties) {
739
741
  var result;
740
742
  if (O !== null) {
741
- EmptyConstructor[PROTOTYPE] = anObject$8(O);
743
+ EmptyConstructor[PROTOTYPE] = anObject$7(O);
742
744
  result = new EmptyConstructor();
743
745
  EmptyConstructor[PROTOTYPE] = null;
744
746
  // add "__proto__" for Object.getPrototypeOf polyfill
@@ -770,7 +772,7 @@ var addToUnscopables$2 = function (key) {
770
772
 
771
773
  var iterators = {};
772
774
 
773
- var global$9 = global$h;
775
+ var global$9 = global$g;
774
776
  var isCallable$c = isCallable$i;
775
777
 
776
778
  var WeakMap$1 = global$9.WeakMap;
@@ -798,11 +800,11 @@ var createNonEnumerableProperty$8 = DESCRIPTORS$7 ? function (object, key, value
798
800
  };
799
801
 
800
802
  var NATIVE_WEAK_MAP = weakMapBasicDetection;
801
- var global$8 = global$h;
802
- var isObject$5 = isObject$a;
803
+ var global$8 = global$g;
804
+ var isObject$6 = isObject$b;
803
805
  var createNonEnumerableProperty$7 = createNonEnumerableProperty$8;
804
806
  var hasOwn$8 = hasOwnProperty_1;
805
- var shared$1 = sharedStore;
807
+ var shared$1 = sharedStore.exports;
806
808
  var sharedKey$1 = sharedKey$3;
807
809
  var hiddenKeys$1 = hiddenKeys$4;
808
810
 
@@ -818,7 +820,7 @@ var enforce = function (it) {
818
820
  var getterFor = function (TYPE) {
819
821
  return function (it) {
820
822
  var state;
821
- if (!isObject$5(it) || (state = get(it)).type !== TYPE) {
823
+ if (!isObject$6(it) || (state = get(it)).type !== TYPE) {
822
824
  throw new TypeError$1('Incompatible receiver, ' + TYPE + ' required');
823
825
  } return state;
824
826
  };
@@ -931,7 +933,7 @@ var functionName = {
931
933
 
932
934
  var uncurryThis$e = functionUncurryThis;
933
935
  var isCallable$b = isCallable$i;
934
- var store = sharedStore;
936
+ var store = sharedStore.exports;
935
937
 
936
938
  var functionToString = uncurryThis$e(Function.toString);
937
939
 
@@ -1050,13 +1052,13 @@ var getBuiltIn$1 = getBuiltIn$4;
1050
1052
  var uncurryThis$c = functionUncurryThis;
1051
1053
  var getOwnPropertyNamesModule = objectGetOwnPropertyNames;
1052
1054
  var getOwnPropertySymbolsModule$1 = objectGetOwnPropertySymbols;
1053
- var anObject$7 = anObject$b;
1055
+ var anObject$6 = anObject$a;
1054
1056
 
1055
1057
  var concat$2 = uncurryThis$c([].concat);
1056
1058
 
1057
1059
  // all object keys, includes non-enumerable and symbols
1058
1060
  var ownKeys$1 = getBuiltIn$1('Reflect', 'ownKeys') || function ownKeys(it) {
1059
- var keys = getOwnPropertyNamesModule.f(anObject$7(it));
1061
+ var keys = getOwnPropertyNamesModule.f(anObject$6(it));
1060
1062
  var getOwnPropertySymbols = getOwnPropertySymbolsModule$1.f;
1061
1063
  return getOwnPropertySymbols ? concat$2(keys, getOwnPropertySymbols(it)) : keys;
1062
1064
  };
@@ -1101,7 +1103,7 @@ var POLYFILL = isForced$1.POLYFILL = 'P';
1101
1103
 
1102
1104
  var isForced_1 = isForced$1;
1103
1105
 
1104
- var global$7 = global$h;
1106
+ var global$7 = global$g;
1105
1107
  var getOwnPropertyDescriptor$1 = objectGetOwnPropertyDescriptor.f;
1106
1108
  var createNonEnumerableProperty$6 = createNonEnumerableProperty$8;
1107
1109
  var defineBuiltIn$4 = defineBuiltIn$5;
@@ -1189,7 +1191,7 @@ var objectGetPrototypeOf = CORRECT_PROTOTYPE_GETTER ? $Object$1.getPrototypeOf :
1189
1191
 
1190
1192
  var fails$d = fails$n;
1191
1193
  var isCallable$6 = isCallable$i;
1192
- var isObject$4 = isObject$a;
1194
+ var isObject$5 = isObject$b;
1193
1195
  var getPrototypeOf$1 = objectGetPrototypeOf;
1194
1196
  var defineBuiltIn$3 = defineBuiltIn$5;
1195
1197
  var wellKnownSymbol$9 = wellKnownSymbol$c;
@@ -1212,7 +1214,7 @@ if ([].keys) {
1212
1214
  }
1213
1215
  }
1214
1216
 
1215
- var NEW_ITERATOR_PROTOTYPE = !isObject$4(IteratorPrototype$2) || fails$d(function () {
1217
+ var NEW_ITERATOR_PROTOTYPE = !isObject$5(IteratorPrototype$2) || fails$d(function () {
1216
1218
  var test = {};
1217
1219
  // FF44- legacy iterators case
1218
1220
  return IteratorPrototype$2[ITERATOR$2].call(test) !== test;
@@ -1272,10 +1274,10 @@ var functionUncurryThisAccessor = function (object, key, method) {
1272
1274
  } catch (error) { /* empty */ }
1273
1275
  };
1274
1276
 
1275
- var isObject$3 = isObject$a;
1277
+ var isObject$4 = isObject$b;
1276
1278
 
1277
1279
  var isPossiblePrototype$1 = function (argument) {
1278
- return isObject$3(argument) || argument === null;
1280
+ return isObject$4(argument) || argument === null;
1279
1281
  };
1280
1282
 
1281
1283
  var isPossiblePrototype = isPossiblePrototype$1;
@@ -1290,7 +1292,8 @@ var aPossiblePrototype$1 = function (argument) {
1290
1292
 
1291
1293
  /* eslint-disable no-proto -- safe */
1292
1294
  var uncurryThisAccessor = functionUncurryThisAccessor;
1293
- var anObject$6 = anObject$b;
1295
+ var isObject$3 = isObject$b;
1296
+ var requireObjectCoercible$5 = requireObjectCoercible$8;
1294
1297
  var aPossiblePrototype = aPossiblePrototype$1;
1295
1298
 
1296
1299
  // `Object.setPrototypeOf` method
@@ -1307,8 +1310,9 @@ var objectSetPrototypeOf = Object.setPrototypeOf || ('__proto__' in {} ? functio
1307
1310
  CORRECT_SETTER = test instanceof Array;
1308
1311
  } catch (error) { /* empty */ }
1309
1312
  return function setPrototypeOf(O, proto) {
1310
- anObject$6(O);
1313
+ requireObjectCoercible$5(O);
1311
1314
  aPossiblePrototype(proto);
1315
+ if (!isObject$3(O)) return O;
1312
1316
  if (CORRECT_SETTER) setter(O, proto);
1313
1317
  else O.__proto__ = proto;
1314
1318
  return O;
@@ -1593,7 +1597,7 @@ var DOMTokenListPrototype$1 = classList && classList.constructor && classList.co
1593
1597
 
1594
1598
  var domTokenListPrototype = DOMTokenListPrototype$1 === Object.prototype ? undefined : DOMTokenListPrototype$1;
1595
1599
 
1596
- var global$6 = global$h;
1600
+ var global$6 = global$g;
1597
1601
  var DOMIterables = domIterables;
1598
1602
  var DOMTokenListPrototype = domTokenListPrototype;
1599
1603
  var ArrayIteratorMethods = es_array_iterator;
@@ -1982,6 +1986,43 @@ const returnCorrectSize = sizeResult => {
1982
1986
  return sizeSmall;
1983
1987
  };
1984
1988
 
1989
+ /* *
1990
+ * Licensed under the Apache License, Version 2.0 (the "License");
1991
+ * you may not use this file except in compliance with the License.
1992
+ * You may obtain a copy of the License at
1993
+ *
1994
+ * http://www.apache.org/licenses/LICENSE-2.0
1995
+ *
1996
+ * Unless required by applicable law or agreed to in writing, software
1997
+ * distributed under the License is distributed on an "AS IS" BASIS,
1998
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1999
+ * See the License for the specific language governing permissions and
2000
+ * limitations under the License.
2001
+ *
2002
+ * Copyright 2024 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
2003
+ * Copyright 2024 - Finnish Meteorological Institute (FMI)
2004
+ * */
2005
+ const style = {
2006
+ width: 'auto !important',
2007
+ height: 'auto !important',
2008
+ padding: 0
2009
+ };
2010
+ const LayerSelectButton = ({
2011
+ tooltipTitle: _tooltipTitle = 'Open the layer selector',
2012
+ icon: _icon = /*#__PURE__*/React.createElement(LayersAdd, {
2013
+ "data-testid": "layerSelectButtonConnectIcon"
2014
+ }),
2015
+ onClick: _onClick = () => {}
2016
+ }) => {
2017
+ return /*#__PURE__*/React.createElement(CustomIconButton, {
2018
+ onClick: _onClick,
2019
+ sx: style,
2020
+ id: "layerSelectButton",
2021
+ "data-testid": "layerSelectButton",
2022
+ tooltipTitle: _tooltipTitle
2023
+ }, _icon);
2024
+ };
2025
+
1985
2026
  const styles$3 = {
1986
2027
  text: theme => Object.assign({
1987
2028
  paddingLeft: '10px',
@@ -1993,13 +2034,11 @@ const styles$3 = {
1993
2034
  const DescriptionRow = _a => {
1994
2035
  var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
1995
2036
  var {
1996
- mapId,
1997
2037
  mapPresetsModule,
1998
- source = 'app',
1999
2038
  settings,
2000
- isMultiMap
2039
+ addLayerComponent
2001
2040
  } = _a,
2002
- gridProps = __rest(_a, ["mapId", "mapPresetsModule", "source", "settings", "isMultiMap"]);
2041
+ gridProps = __rest(_a, ["mapPresetsModule", "settings", "addLayerComponent"]);
2003
2042
  const [mapPresetsModuleInline] = React.useState(mapPresetsModule ? Object.assign(Object.assign({}, mapPresetsModule), {
2004
2043
  props: Object.assign(Object.assign({}, mapPresetsModule.props), {
2005
2044
  id: 'mappresets-menubuttonInline'
@@ -2022,13 +2061,10 @@ const DescriptionRow = _a => {
2022
2061
  justifyContent: 'center',
2023
2062
  paddingRight: '6px'
2024
2063
  })
2025
- }, /*#__PURE__*/React.createElement(LayerSelectButtonConnect, {
2026
- mapId: mapId,
2027
- source: source,
2064
+ }, addLayerComponent || ( /*#__PURE__*/React.createElement(LayerSelectButton, {
2028
2065
  tooltipTitle: (_b = settings === null || settings === void 0 ? void 0 : settings.addLayer) === null || _b === void 0 ? void 0 : _b.tooltipTitle,
2029
- icon: (_c = settings === null || settings === void 0 ? void 0 : settings.addLayer) === null || _c === void 0 ? void 0 : _c.icon,
2030
- isMultiMap: isMultiMap
2031
- })), /*#__PURE__*/React.createElement(Grid, {
2066
+ icon: (_c = settings === null || settings === void 0 ? void 0 : settings.addLayer) === null || _c === void 0 ? void 0 : _c.icon
2067
+ }))), /*#__PURE__*/React.createElement(Grid, {
2032
2068
  className: columnClasses.column2
2033
2069
  }, /*#__PURE__*/React.createElement(Box, {
2034
2070
  className: `header-layer ${hasMapPresetsModule ? 'mappresetsModule-enabled' : ''}`,
@@ -2090,7 +2126,7 @@ $$9({ target: 'Array', proto: true, forced: BROKEN_ON_SPARSE }, {
2090
2126
  // https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
2091
2127
  addToUnscopables('includes');
2092
2128
 
2093
- var isObject$2 = isObject$a;
2129
+ var isObject$2 = isObject$b;
2094
2130
  var classof$5 = classofRaw$1;
2095
2131
  var wellKnownSymbol$5 = wellKnownSymbol$c;
2096
2132
 
@@ -2180,7 +2216,7 @@ var correctIsRegexpLogic = function (METHOD_NAME) {
2180
2216
  var $$8 = _export;
2181
2217
  var uncurryThis$9 = functionUncurryThis;
2182
2218
  var notARegExp = notARegexp;
2183
- var requireObjectCoercible$4 = requireObjectCoercible$7;
2219
+ var requireObjectCoercible$4 = requireObjectCoercible$8;
2184
2220
  var toString$8 = toString$9;
2185
2221
  var correctIsRegExpLogic = correctIsRegexpLogic;
2186
2222
 
@@ -2235,7 +2271,8 @@ const DimensionSelectValue = ({
2235
2271
  valueMappings,
2236
2272
  hideLatestDuplicate,
2237
2273
  setUseLatestReferenceTime,
2238
- useLatestReferenceTime
2274
+ useLatestReferenceTime,
2275
+ skipLocalStyling
2239
2276
  }) => {
2240
2277
  var _a;
2241
2278
  const dimensionValuesRaw = (_a = selectedDimension === null || selectedDimension === void 0 ? void 0 : selectedDimension.values) === null || _a === void 0 ? void 0 : _a.split(',').slice(0, 100).reverse();
@@ -2281,7 +2318,8 @@ const DimensionSelectValue = ({
2281
2318
  style: {
2282
2319
  maxWidth: '50%'
2283
2320
  },
2284
- IconComponent: icon
2321
+ IconComponent: icon,
2322
+ skipLocalStyling: skipLocalStyling
2285
2323
  }, /*#__PURE__*/React__default.createElement(MenuItem, {
2286
2324
  disabled: true
2287
2325
  }, "Dimension value (", dimensionValues.length, " options)"), dimensionValues.map(dimensionValue => {
@@ -2320,7 +2358,8 @@ const DimensionSelectName = ({
2320
2358
  nameMappings,
2321
2359
  tooltip,
2322
2360
  isEnabled,
2323
- dimensionNames
2361
+ dimensionNames,
2362
+ skipLocalStyling
2324
2363
  }) => {
2325
2364
  return /*#__PURE__*/React__default.createElement(TooltipSelect, {
2326
2365
  disableUnderline: true,
@@ -2344,7 +2383,8 @@ const DimensionSelectName = ({
2344
2383
  style: {
2345
2384
  maxWidth: '50%'
2346
2385
  },
2347
- IconComponent: icon
2386
+ IconComponent: icon,
2387
+ skipLocalStyling: skipLocalStyling
2348
2388
  }, /*#__PURE__*/React__default.createElement(MenuItem, {
2349
2389
  disabled: true
2350
2390
  }, "Dimension"), dimensionNames.map(name => ( /*#__PURE__*/React__default.createElement(MenuItem, {
@@ -2366,7 +2406,8 @@ const DimensionSelect = ({
2366
2406
  setUseLatestReferenceTime,
2367
2407
  useLatestReferenceTime,
2368
2408
  SingleValueComponent,
2369
- hideLatestDuplicate
2409
+ hideLatestDuplicate,
2410
+ skipLocalStyling
2370
2411
  }) => {
2371
2412
  var _a, _b, _c, _d, _e, _f;
2372
2413
  const [selectedDimensionName, setSelectedDimensionName] = useState((_a = _layerDimensions === null || _layerDimensions === void 0 ? void 0 : _layerDimensions[0]) === null || _a === void 0 ? void 0 : _a.name);
@@ -2407,7 +2448,8 @@ const DimensionSelect = ({
2407
2448
  tooltip: nameTooltip,
2408
2449
  isEnabled: _isEnabled,
2409
2450
  icon: icon,
2410
- nameMappings: nameMappings
2451
+ nameMappings: nameMappings,
2452
+ skipLocalStyling: skipLocalStyling
2411
2453
  })), collapseValueDropdown ? ( /*#__PURE__*/React.createElement(SingleValueComponent, Object.assign({}, _layerDimensions[0], {
2412
2454
  nameMappings: nameMappings,
2413
2455
  valueMappings: valueMappings,
@@ -2421,7 +2463,8 @@ const DimensionSelect = ({
2421
2463
  icon: icon,
2422
2464
  valueMappings: valueMappings,
2423
2465
  setUseLatestReferenceTime: setUseLatestReferenceTime,
2424
- useLatestReferenceTime: useLatestReferenceTime
2466
+ useLatestReferenceTime: useLatestReferenceTime,
2467
+ skipLocalStyling: skipLocalStyling
2425
2468
  }))));
2426
2469
  };
2427
2470
 
@@ -2450,7 +2493,8 @@ const RenderLayers = ({
2450
2493
  layerName,
2451
2494
  layers: _layers = [],
2452
2495
  isEnabled: _isEnabled = true,
2453
- tooltipPrefix: _tooltipPrefix = 'Layer: '
2496
+ tooltipPrefix: _tooltipPrefix = 'Layer: ',
2497
+ skipLocalStyling
2454
2498
  }) => {
2455
2499
  var _a;
2456
2500
  if (!_layers || !_layers.length) {
@@ -2497,6 +2541,7 @@ const RenderLayers = ({
2497
2541
  onChange: selectLayer,
2498
2542
  onChangeMouseWheel: e => onChangeLayerName(e.value),
2499
2543
  requiresCtrlToChange: true,
2544
+ skipLocalStyling: skipLocalStyling,
2500
2545
  renderValue: value => extendedLayers.find(layer => layer.name === value).title
2501
2546
  }, /*#__PURE__*/React.createElement(MenuItem, {
2502
2547
  disabled: true
@@ -2785,7 +2830,8 @@ const RenderStyles = ({
2785
2830
  onChangeLayerStyle,
2786
2831
  isEnabled: _isEnabled = true,
2787
2832
  icon,
2788
- tooltipPrefix: _tooltipPrefix = 'Style: '
2833
+ tooltipPrefix: _tooltipPrefix = 'Style: ',
2834
+ skipLocalStyling
2789
2835
  }) => {
2790
2836
  var _a;
2791
2837
  const styles = [{
@@ -2822,7 +2868,8 @@ const RenderStyles = ({
2822
2868
  onChange: selectStyle,
2823
2869
  onChangeMouseWheel: e => onChangeLayerStyle(e.value),
2824
2870
  requiresCtrlToChange: true,
2825
- IconComponent: icon
2871
+ IconComponent: icon,
2872
+ skipLocalStyling: skipLocalStyling
2826
2873
  }, /*#__PURE__*/React.createElement(MenuItem, {
2827
2874
  disabled: true
2828
2875
  }, "Style"), styles.map(styleFromlayer => ( /*#__PURE__*/React.createElement(MenuItem, {
@@ -2951,7 +2998,7 @@ function getIcon(isActive, isEnabled, current) {
2951
2998
  });
2952
2999
  }
2953
3000
 
2954
- var anObject$5 = anObject$b;
3001
+ var anObject$5 = anObject$a;
2955
3002
 
2956
3003
  // `RegExp.prototype.flags` getter implementation
2957
3004
  // https://tc39.es/ecma262/#sec-get-regexp.prototype.flags
@@ -2984,7 +3031,7 @@ var regexpGetFlags = function (R) {
2984
3031
 
2985
3032
  var PROPER_FUNCTION_NAME$1 = functionName.PROPER;
2986
3033
  var defineBuiltIn$1 = defineBuiltIn$5;
2987
- var anObject$4 = anObject$b;
3034
+ var anObject$4 = anObject$a;
2988
3035
  var $toString = toString$9;
2989
3036
  var fails$9 = fails$n;
2990
3037
  var getRegExpFlags = regexpGetFlags;
@@ -3044,7 +3091,8 @@ const AcceptanceTime = ({
3044
3091
  isEnabled: _isEnabled = true,
3045
3092
  acceptanceTimeInMinutes,
3046
3093
  icon,
3047
- tooltipTitle
3094
+ tooltipTitle,
3095
+ skipLocalStyling
3048
3096
  }) => {
3049
3097
  const onChange = acceptanceTimeRaw => {
3050
3098
  const acceptanceTime = acceptanceTimeRaw === 'off' ? undefined : Number(acceptanceTimeRaw);
@@ -3065,7 +3113,8 @@ const AcceptanceTime = ({
3065
3113
  list: acceptanceTimesValues,
3066
3114
  currentIndex: acceptanceTimes.findIndex(time => layerAcceptanceTime === time.value),
3067
3115
  IconComponent: icon,
3068
- "data-testid": "acceptanceTimeButton"
3116
+ "data-testid": "acceptanceTimeButton",
3117
+ skipLocalStyling: skipLocalStyling
3069
3118
  }, /*#__PURE__*/React__default.createElement(MenuItem, {
3070
3119
  disabled: true
3071
3120
  }, "Acc Time"), acceptanceTimes.map(accTime => ( /*#__PURE__*/React__default.createElement(MenuItem, {
@@ -3242,22 +3291,6 @@ const useLoadDurationLabel = (mapId, layerId) => {
3242
3291
  return React.useSyncExternalStore(subscribe, getSnapshot);
3243
3292
  };
3244
3293
 
3245
- /* *
3246
- * Licensed under the Apache License, Version 2.0 (the "License");
3247
- * you may not use this file except in compliance with the License.
3248
- * You may obtain a copy of the License at
3249
- *
3250
- * http://www.apache.org/licenses/LICENSE-2.0
3251
- *
3252
- * Unless required by applicable law or agreed to in writing, software
3253
- * distributed under the License is distributed on an "AS IS" BASIS,
3254
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
3255
- * See the License for the specific language governing permissions and
3256
- * limitations under the License.
3257
- *
3258
- * Copyright 2023 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
3259
- * Copyright 2023 - Finnish Meteorological Institute (FMI)
3260
- * */
3261
3294
  const LeftButtons = ({
3262
3295
  size,
3263
3296
  dragHandle,
@@ -3319,7 +3352,7 @@ const Acceptance = ({
3319
3352
  acceptanceTimeInMinutes: acceptanceTime,
3320
3353
  onChangeAcceptanceTime: onChangeAcceptanceTime
3321
3354
  }));
3322
- const LayerRow = ({
3355
+ const LayerRowUnstyled = ({
3323
3356
  layerId,
3324
3357
  layer,
3325
3358
  layerName,
@@ -3350,7 +3383,8 @@ const LayerRow = ({
3350
3383
  dragHandle,
3351
3384
  layerAcceptanceTimeLayout,
3352
3385
  layerMissingDataLayout,
3353
- layerLoadDurationLayout
3386
+ layerLoadDurationLayout,
3387
+ className
3354
3388
  }) => {
3355
3389
  const onClickRow = () => _onLayerRowClick(layerId);
3356
3390
  const changeEnable = event => {
@@ -3382,31 +3416,60 @@ const LayerRow = ({
3382
3416
  mapId,
3383
3417
  layerId: layerId
3384
3418
  });
3385
- renderCounter.count(LayerRow.name);
3386
- return /*#__PURE__*/React__default.createElement(Grid, {
3387
- item: true,
3388
- container: true,
3389
- "data-testid": `layerRow-${layerId}`,
3390
- className: "layerRow",
3391
- sx: {
3392
- backgroundColor: _isEnabled ? 'geowebColors.layerManager.tableRowDefaultCardContainer.fill' : 'geowebColors.layerManager.tableRowDisabledCardContainer.fill',
3393
- border: 1,
3394
- borderColor: _isEnabled ? 'geowebColors.layerManager.tableRowDefaultCardContainer.borderColor' : 'geowebColors.layerManager.tableRowDisabledCardContainer.borderColor',
3395
- borderRadius: 1,
3396
- marginBottom: 0.5,
3397
- minHeight: '34px',
3398
- '&.sortable-chosen': {
3399
- boxShadow: 1
3400
- },
3401
- '&.sortable-ghost': {
3402
- opacity: 0.5
3403
- }
3404
- },
3405
- alignItems: "center",
3406
- role: "listitem"
3407
- }, /*#__PURE__*/React__default.createElement(Accordion, {
3408
- LeftButtons: /*#__PURE__*/React__default.createElement(LeftButtons, {
3409
- size: "-medium",
3419
+ renderCounter.count(LayerRowUnstyled.name);
3420
+ return (
3421
+ /*#__PURE__*/
3422
+ // className needed for styled() utility
3423
+ React__default.createElement("div", {
3424
+ className: className
3425
+ }, /*#__PURE__*/React__default.createElement(Grid, {
3426
+ item: true,
3427
+ container: true,
3428
+ "data-testid": `layerRow-${layerId}`,
3429
+ className: "layerRow",
3430
+ alignItems: "center",
3431
+ role: "listitem"
3432
+ }, /*#__PURE__*/React__default.createElement(Accordion, {
3433
+ LeftButtons: /*#__PURE__*/React__default.createElement(LeftButtons, {
3434
+ size: "-medium",
3435
+ dragHandle: dragHandle,
3436
+ layer: layer,
3437
+ layerMissingDataLayout: layerMissingDataLayout,
3438
+ layerEnableLayout: layerEnableLayout,
3439
+ isEnabled: _isEnabled,
3440
+ disableActivateLayer: disableActivateLayer,
3441
+ layerActiveLayout: layerActiveLayout,
3442
+ onChangeEnable: changeEnable,
3443
+ onChangeActive: onClickRow
3444
+ }),
3445
+ layerName: layerName,
3446
+ Styles: layerStylesLayout || ( /*#__PURE__*/React__default.createElement(Styles, {
3447
+ style: layer.style,
3448
+ onChangeStyle: changeStyle
3449
+ })),
3450
+ Opacity: layerOpacityLayout || ( /*#__PURE__*/React__default.createElement(Opacity, {
3451
+ opacity: layer.opacity,
3452
+ onChangeOpacity: changeOpacity
3453
+ })),
3454
+ Acceptance: layerAcceptanceTimeLayout || ( /*#__PURE__*/React__default.createElement(Acceptance, {
3455
+ acceptanceTime: layer.acceptanceTimeInMinutes,
3456
+ onChangeAcceptanceTime: changeAcceptanceTime
3457
+ })),
3458
+ LoadDuration: layerLoadDurationLayout || ( /*#__PURE__*/React__default.createElement(LoadDuration, {
3459
+ layerId: layerId,
3460
+ mapId: mapId
3461
+ })),
3462
+ ShowLayerInfo: layerShowLayerInfoLayout || ( /*#__PURE__*/React__default.createElement(ShowLayerInfo, {
3463
+ onClick: () => {}
3464
+ })),
3465
+ DeleteLayer: layerDeleteLayout || /*#__PURE__*/React__default.createElement(DeleteLayer, {
3466
+ onClick: deleteLayer
3467
+ })
3468
+ }), /*#__PURE__*/React__default.createElement(Grid, {
3469
+ item: true,
3470
+ className: columnClasses.column1,
3471
+ alignItems: "center"
3472
+ }, /*#__PURE__*/React__default.createElement(LeftButtons, {
3410
3473
  dragHandle: dragHandle,
3411
3474
  layer: layer,
3412
3475
  layerMissingDataLayout: layerMissingDataLayout,
@@ -3416,118 +3479,97 @@ const LayerRow = ({
3416
3479
  layerActiveLayout: layerActiveLayout,
3417
3480
  onChangeEnable: changeEnable,
3418
3481
  onChangeActive: onClickRow
3419
- }),
3420
- layerName: layerName,
3421
- Styles: layerStylesLayout || ( /*#__PURE__*/React__default.createElement(Styles, {
3482
+ })), /*#__PURE__*/React__default.createElement(Grid, {
3483
+ item: true,
3484
+ className: columnClasses.column2
3485
+ }, layerServicesLayout || ( /*#__PURE__*/React__default.createElement(RenderLayers, {
3486
+ layerName: layer.name,
3487
+ layers: services && layer.service && services[layer.service] && services[layer.service].layers || [],
3488
+ onChangeLayerName: name => {
3489
+ onLayerChangeName({
3490
+ layerId: layer.id,
3491
+ name
3492
+ });
3493
+ }
3494
+ }))), _isLayerMissing ? ( /*#__PURE__*/React__default.createElement(Grid, {
3495
+ item: true,
3496
+ className: columnClasses.column7
3497
+ }, /*#__PURE__*/React__default.createElement(AlertBanner, {
3498
+ title: "This layer could not be loaded: does not exist on the server.",
3499
+ isCompact: true
3500
+ }))) : ( /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(Grid, {
3501
+ item: true,
3502
+ className: columnClasses.column3
3503
+ }, layerStylesLayout || ( /*#__PURE__*/React__default.createElement(Styles, {
3422
3504
  style: layer.style,
3423
3505
  onChangeStyle: changeStyle
3424
- })),
3425
- Opacity: layerOpacityLayout || ( /*#__PURE__*/React__default.createElement(Opacity, {
3506
+ }))), /*#__PURE__*/React__default.createElement(Grid, {
3507
+ item: true,
3508
+ className: columnClasses.column4
3509
+ }, layerOpacityLayout || ( /*#__PURE__*/React__default.createElement(Opacity, {
3426
3510
  opacity: layer.opacity,
3427
3511
  onChangeOpacity: changeOpacity
3428
- })),
3429
- Acceptance: layerAcceptanceTimeLayout || ( /*#__PURE__*/React__default.createElement(Acceptance, {
3512
+ }))), /*#__PURE__*/React__default.createElement(Grid, {
3513
+ item: true,
3514
+ className: columnClasses.column5
3515
+ }, layerDimensionLayout || ( /*#__PURE__*/React__default.createElement(DimensionSelect, {
3516
+ layerDimensions: layerUtils.filterNonTimeDimensions(layer.dimensions),
3517
+ onLayerChangeDimension: (dimensionName, dimensionValue) => {
3518
+ const dimension = {
3519
+ name: dimensionName,
3520
+ currentValue: dimensionValue
3521
+ };
3522
+ onLayerChangeDimension({
3523
+ origin: 'layerrow',
3524
+ layerId: layerId,
3525
+ dimension
3526
+ });
3527
+ }
3528
+ }))), /*#__PURE__*/React__default.createElement(Grid, {
3529
+ item: true,
3530
+ className: columnClasses.acceptanceTime
3531
+ }, layerAcceptanceTimeLayout || ( /*#__PURE__*/React__default.createElement(Acceptance, {
3430
3532
  acceptanceTime: layer.acceptanceTimeInMinutes,
3431
3533
  onChangeAcceptanceTime: changeAcceptanceTime
3432
- })),
3433
- LoadDuration: layerLoadDurationLayout || ( /*#__PURE__*/React__default.createElement(LoadDuration, {
3534
+ }))), /*#__PURE__*/React__default.createElement(Grid, {
3535
+ item: true,
3536
+ display: "flex",
3537
+ justifyContent: "flex-end",
3538
+ className: columnClasses.loadDuration
3539
+ }, layerLoadDurationLayout || ( /*#__PURE__*/React__default.createElement(LoadDuration, {
3434
3540
  layerId: layerId,
3435
3541
  mapId: mapId
3436
- })),
3437
- ShowLayerInfo: layerShowLayerInfoLayout || /*#__PURE__*/React__default.createElement(ShowLayerInfo, {
3542
+ }))))), /*#__PURE__*/React__default.createElement(Grid, {
3543
+ item: true,
3544
+ className: columnClasses.column6,
3545
+ alignItems: "center"
3546
+ }, layerShowLayerInfoLayout || ( /*#__PURE__*/React__default.createElement(ShowLayerInfo, {
3438
3547
  onClick: () => {}
3439
- }),
3440
- DeleteLayer: layerDeleteLayout || /*#__PURE__*/React__default.createElement(DeleteLayer, {
3548
+ })), layerDeleteLayout || /*#__PURE__*/React__default.createElement(DeleteLayer, {
3441
3549
  onClick: deleteLayer
3442
- })
3443
- }), /*#__PURE__*/React__default.createElement(Grid, {
3444
- item: true,
3445
- className: columnClasses.column1,
3446
- alignItems: "center"
3447
- }, /*#__PURE__*/React__default.createElement(LeftButtons, {
3448
- dragHandle: dragHandle,
3449
- layer: layer,
3450
- layerMissingDataLayout: layerMissingDataLayout,
3451
- layerEnableLayout: layerEnableLayout,
3452
- isEnabled: _isEnabled,
3453
- disableActivateLayer: disableActivateLayer,
3454
- layerActiveLayout: layerActiveLayout,
3455
- onChangeEnable: changeEnable,
3456
- onChangeActive: onClickRow
3457
- })), /*#__PURE__*/React__default.createElement(Grid, {
3458
- item: true,
3459
- className: columnClasses.column2
3460
- }, layerServicesLayout || ( /*#__PURE__*/React__default.createElement(RenderLayers, {
3461
- layerName: layer.name,
3462
- layers: services && layer.service && services[layer.service] && services[layer.service].layers || [],
3463
- onChangeLayerName: name => {
3464
- onLayerChangeName({
3465
- layerId: layer.id,
3466
- name
3467
- });
3468
- }
3469
- }))), _isLayerMissing ? ( /*#__PURE__*/React__default.createElement(Grid, {
3470
- item: true,
3471
- className: columnClasses.column7
3472
- }, /*#__PURE__*/React__default.createElement(AlertBanner, {
3473
- title: "This layer could not be loaded: does not exist on the server.",
3474
- isCompact: true
3475
- }))) : ( /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(Grid, {
3476
- item: true,
3477
- className: columnClasses.column3
3478
- }, layerStylesLayout || ( /*#__PURE__*/React__default.createElement(Styles, {
3479
- style: layer.style,
3480
- onChangeStyle: changeStyle
3481
- }))), /*#__PURE__*/React__default.createElement(Grid, {
3482
- item: true,
3483
- className: columnClasses.column4
3484
- }, layerOpacityLayout || ( /*#__PURE__*/React__default.createElement(Opacity, {
3485
- opacity: layer.opacity,
3486
- onChangeOpacity: changeOpacity
3487
- }))), /*#__PURE__*/React__default.createElement(Grid, {
3488
- item: true,
3489
- className: columnClasses.column5
3490
- }, layerDimensionLayout || ( /*#__PURE__*/React__default.createElement(DimensionSelect, {
3491
- layerDimensions: layerUtils.filterNonTimeDimensions(layer.dimensions),
3492
- onLayerChangeDimension: (dimensionName, dimensionValue) => {
3493
- const dimension = {
3494
- name: dimensionName,
3495
- currentValue: dimensionValue
3496
- };
3497
- onLayerChangeDimension({
3498
- origin: 'layerrow',
3499
- layerId: layerId,
3500
- dimension
3501
- });
3502
- }
3503
- }))), /*#__PURE__*/React__default.createElement(Grid, {
3504
- item: true,
3505
- className: columnClasses.acceptanceTime
3506
- }, layerAcceptanceTimeLayout || ( /*#__PURE__*/React__default.createElement(Acceptance, {
3507
- acceptanceTime: layer.acceptanceTimeInMinutes,
3508
- onChangeAcceptanceTime: changeAcceptanceTime
3509
- }))), /*#__PURE__*/React__default.createElement(Grid, {
3510
- item: true,
3511
- display: "flex",
3512
- justifyContent: "flex-end",
3513
- className: columnClasses.loadDuration
3514
- }, layerLoadDurationLayout || ( /*#__PURE__*/React__default.createElement(LoadDuration, {
3515
- layerId: layerId,
3516
- mapId: mapId
3517
- }))))), /*#__PURE__*/React__default.createElement(Grid, {
3518
- item: true,
3519
- className: columnClasses.column6,
3520
- alignItems: "center"
3521
- }, layerShowLayerInfoLayout || /*#__PURE__*/React__default.createElement(ShowLayerInfo, {
3522
- onClick: () => {}
3523
- }), layerDeleteLayout || /*#__PURE__*/React__default.createElement(DeleteLayer, {
3524
- onClick: deleteLayer
3525
- }), layerMenuLayout || ( /*#__PURE__*/React__default.createElement(LayerManagerMenuButton, {
3526
- mapId: mapId,
3527
- layerId: layerId,
3528
- onLayerDuplicate: onLayerDuplicate
3529
- }))));
3550
+ }), layerMenuLayout || ( /*#__PURE__*/React__default.createElement(LayerManagerMenuButton, {
3551
+ mapId: mapId,
3552
+ layerId: layerId,
3553
+ onLayerDuplicate: onLayerDuplicate
3554
+ })))))
3555
+ );
3530
3556
  };
3557
+ const LayerRow = styled(LayerRowUnstyled)(({
3558
+ theme,
3559
+ isEnabled: _isEnabled2 = true
3560
+ }) => {
3561
+ return {
3562
+ '& .MuiInputBase-root': Object.assign({}, tooltipContainerStyles(theme, _isEnabled2)),
3563
+ '& .layerRow': {
3564
+ backgroundColor: _isEnabled2 ? theme.palette.geowebColors.layerManager.tableRowDefaultCardContainer.fill : theme.palette.geowebColors.layerManager.tableRowDisabledCardContainer.fill,
3565
+ border: '1px solid',
3566
+ borderColor: _isEnabled2 ? theme.palette.geowebColors.layerManager.tableRowDefaultCardContainer.borderColor : theme.palette.geowebColors.layerManager.tableRowDisabledCardContainer.borderColor,
3567
+ borderRadius: 1 * theme.shape.borderRadius,
3568
+ marginBottom: theme.spacing(0.5),
3569
+ minHeight: '34px'
3570
+ }
3571
+ };
3572
+ });
3531
3573
  const Accordion = ({
3532
3574
  Styles,
3533
3575
  Acceptance,
@@ -3827,7 +3869,8 @@ const useReferenceTimeWithLatestOption = layerId => {
3827
3869
  * */
3828
3870
  const DimensionSelectConnect = ({
3829
3871
  layerId,
3830
- mapId
3872
+ mapId,
3873
+ skipLocalStyling
3831
3874
  }) => {
3832
3875
  const {
3833
3876
  layerDimensions,
@@ -3855,7 +3898,8 @@ const DimensionSelectConnect = ({
3855
3898
  },
3856
3899
  isEnabled: isLayerEnabled,
3857
3900
  useLatestReferenceTime: useLatestReferenceTime,
3858
- setUseLatestReferenceTime: setUseLatestReferenceTime
3901
+ setUseLatestReferenceTime: setUseLatestReferenceTime,
3902
+ skipLocalStyling: skipLocalStyling
3859
3903
  });
3860
3904
  };
3861
3905
 
@@ -3879,7 +3923,8 @@ const RenderStylesConnect = ({
3879
3923
  layerId,
3880
3924
  mapId,
3881
3925
  icon,
3882
- tooltipPrefix
3926
+ tooltipPrefix,
3927
+ skipLocalStyling
3883
3928
  }) => {
3884
3929
  const dispatch = useDispatch();
3885
3930
  const layerService = useSelector(store => layerSelectors.getLayerService(store, layerId));
@@ -3901,7 +3946,8 @@ const RenderStylesConnect = ({
3901
3946
  onChangeLayerStyle: layerChangeStyle,
3902
3947
  isEnabled: isLayerEnabled,
3903
3948
  icon: icon,
3904
- tooltipPrefix: tooltipPrefix
3949
+ tooltipPrefix: tooltipPrefix,
3950
+ skipLocalStyling: skipLocalStyling
3905
3951
  });
3906
3952
  };
3907
3953
 
@@ -3924,7 +3970,8 @@ const RenderStylesConnect = ({
3924
3970
  const RenderLayersConnect = ({
3925
3971
  layerId,
3926
3972
  mapId,
3927
- tooltipPrefix
3973
+ tooltipPrefix,
3974
+ skipLocalStyling
3928
3975
  }) => {
3929
3976
  const dispatch = useDispatch();
3930
3977
  const layerName = useSelector(store => layerSelectors.getLayerName(store, layerId));
@@ -3977,7 +4024,8 @@ const RenderLayersConnect = ({
3977
4024
  });
3978
4025
  },
3979
4026
  isEnabled: isLayerEnabled,
3980
- tooltipPrefix: tooltipPrefix
4027
+ tooltipPrefix: tooltipPrefix,
4028
+ skipLocalStyling: skipLocalStyling
3981
4029
  });
3982
4030
  };
3983
4031
 
@@ -4235,7 +4283,8 @@ function getCurrentOptionForLayer(thisLayerHasBoth, thisLayerHasAutoTimestep, th
4235
4283
  const AcceptanceTimeConnect = ({
4236
4284
  layerId,
4237
4285
  icon,
4238
- tooltipTitle
4286
+ tooltipTitle,
4287
+ skipLocalStyling
4239
4288
  }) => {
4240
4289
  const isEnabled = useSelector(store => layerSelectors.getLayerEnabled(store, layerId));
4241
4290
  const dispatch = useDispatch();
@@ -4266,7 +4315,8 @@ const AcceptanceTimeConnect = ({
4266
4315
  acceptanceTimeInMinutes: acceptanceTimeInMinutes,
4267
4316
  onChangeAcceptanceTime: onChangeAcceptanceTime,
4268
4317
  icon: icon,
4269
- tooltipTitle: tooltipTitle
4318
+ tooltipTitle: tooltipTitle,
4319
+ skipLocalStyling: skipLocalStyling
4270
4320
  });
4271
4321
  };
4272
4322
 
@@ -4476,21 +4526,25 @@ const LayerRowConnect = /*#__PURE__*/React.memo(({
4476
4526
  })) : ( /*#__PURE__*/React.createElement(RenderLayersConnect, {
4477
4527
  layerId: layerId,
4478
4528
  mapId: mapId,
4479
- tooltipPrefix: (_g = settings === null || settings === void 0 ? void 0 : settings.renderLayer) === null || _g === void 0 ? void 0 : _g.tooltipPrefix
4529
+ tooltipPrefix: (_g = settings === null || settings === void 0 ? void 0 : settings.renderLayer) === null || _g === void 0 ? void 0 : _g.tooltipPrefix,
4530
+ skipLocalStyling: true
4480
4531
  })),
4481
4532
  layerDimensionLayout: (settings === null || settings === void 0 ? void 0 : settings.dimensions) ? ( /*#__PURE__*/React.createElement(CustomDimensionSelectConnect, Object.assign({
4482
4533
  layerId: layerId,
4483
4534
  mapId: mapId
4484
4535
  }, settings === null || settings === void 0 ? void 0 : settings.dimensions))) : ( /*#__PURE__*/React.createElement(DimensionSelectConnect, {
4485
4536
  layerId: layerId,
4486
- mapId: mapId
4537
+ mapId: mapId,
4538
+ skipLocalStyling: true
4487
4539
  })),
4488
4540
  layerStylesLayout: /*#__PURE__*/React.createElement(RenderStylesConnect, Object.assign({
4489
4541
  layerId: layerId,
4490
- mapId: mapId
4542
+ mapId: mapId,
4543
+ skipLocalStyling: true
4491
4544
  }, settings === null || settings === void 0 ? void 0 : settings.layerStyle)),
4492
4545
  layerAcceptanceTimeLayout: /*#__PURE__*/React.createElement(AcceptanceTimeConnect, Object.assign({
4493
- layerId: layerId
4546
+ layerId: layerId,
4547
+ skipLocalStyling: true
4494
4548
  }, settings === null || settings === void 0 ? void 0 : settings.acceptanceTime)),
4495
4549
  layerMissingDataLayout: /*#__PURE__*/React.createElement(MissingDataConnect, {
4496
4550
  mapId: mapId,
@@ -4664,7 +4718,13 @@ const LayerContainerRow = /*#__PURE__*/React.memo(_a => {
4664
4718
  sx: {
4665
4719
  width: '100%',
4666
4720
  maxHeight: 'calc(100% - 10px)',
4667
- overflow: 'auto'
4721
+ overflow: 'auto',
4722
+ '& .sortable-chosen': {
4723
+ boxShadow: 1
4724
+ },
4725
+ '& .sortable-ghost': {
4726
+ opacity: '0.5 !important'
4727
+ }
4668
4728
  }
4669
4729
  }, gridProps), /*#__PURE__*/React.createElement(ReactSortable, {
4670
4730
  tag: "div",
@@ -4695,6 +4755,8 @@ var lengthOfArrayLike$1 = lengthOfArrayLike$4;
4695
4755
 
4696
4756
  var $TypeError$2 = TypeError;
4697
4757
 
4758
+ var REDUCE_EMPTY = 'Reduce of empty array with no initial value';
4759
+
4698
4760
  // `Array.prototype.{ reduce, reduceRight }` methods implementation
4699
4761
  var createMethod$2 = function (IS_RIGHT) {
4700
4762
  return function (that, callbackfn, argumentsLength, memo) {
@@ -4702,6 +4764,7 @@ var createMethod$2 = function (IS_RIGHT) {
4702
4764
  var self = IndexedObject(O);
4703
4765
  var length = lengthOfArrayLike$1(O);
4704
4766
  aCallable$1(callbackfn);
4767
+ if (length === 0 && argumentsLength < 2) throw new $TypeError$2(REDUCE_EMPTY);
4705
4768
  var index = IS_RIGHT ? length - 1 : 0;
4706
4769
  var i = IS_RIGHT ? -1 : 1;
4707
4770
  if (argumentsLength < 2) while (true) {
@@ -4712,7 +4775,7 @@ var createMethod$2 = function (IS_RIGHT) {
4712
4775
  }
4713
4776
  index += i;
4714
4777
  if (IS_RIGHT ? index < 0 : length <= index) {
4715
- throw new $TypeError$2('Reduce of empty array with no initial value');
4778
+ throw new $TypeError$2(REDUCE_EMPTY);
4716
4779
  }
4717
4780
  }
4718
4781
  for (;IS_RIGHT ? index >= 0 : length > index; index += i) if (index in self) {
@@ -4741,7 +4804,7 @@ var arrayMethodIsStrict$2 = function (METHOD_NAME, argument) {
4741
4804
  });
4742
4805
  };
4743
4806
 
4744
- var global$5 = global$h;
4807
+ var global$5 = global$g;
4745
4808
  var classof$1 = classofRaw$1;
4746
4809
 
4747
4810
  var engineIsNode = classof$1(global$5.process) === 'process';
@@ -4900,7 +4963,7 @@ const BaseLayersConnect = ({
4900
4963
  };
4901
4964
 
4902
4965
  var fails$7 = fails$n;
4903
- var global$4 = global$h;
4966
+ var global$4 = global$g;
4904
4967
 
4905
4968
  // babel-minify and Closure Compiler transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError
4906
4969
  var $RegExp$2 = global$4.RegExp;
@@ -4931,7 +4994,7 @@ var regexpStickyHelpers = {
4931
4994
  };
4932
4995
 
4933
4996
  var fails$6 = fails$n;
4934
- var global$3 = global$h;
4997
+ var global$3 = global$g;
4935
4998
 
4936
4999
  // babel-minify and Closure Compiler transpiles RegExp('.', 's') -> /./s and it causes SyntaxError
4937
5000
  var $RegExp$1 = global$3.RegExp;
@@ -4942,7 +5005,7 @@ var regexpUnsupportedDotAll = fails$6(function () {
4942
5005
  });
4943
5006
 
4944
5007
  var fails$5 = fails$n;
4945
- var global$2 = global$h;
5008
+ var global$2 = global$g;
4946
5009
 
4947
5010
  // babel-minify and Closure Compiler transpiles RegExp('(?<a>b)', 'g') -> /(?<a>b)/g and it causes SyntaxError
4948
5011
  var $RegExp = global$2.RegExp;
@@ -4960,7 +5023,7 @@ var uncurryThis$7 = functionUncurryThis;
4960
5023
  var toString$7 = toString$9;
4961
5024
  var regexpFlags = regexpFlags$1;
4962
5025
  var stickyHelpers = regexpStickyHelpers;
4963
- var shared = shared$4.exports;
5026
+ var shared = shared$4;
4964
5027
  var create = objectCreate;
4965
5028
  var getInternalState = internalState.get;
4966
5029
  var UNSUPPORTED_DOT_ALL = regexpUnsupportedDotAll;
@@ -5084,7 +5147,7 @@ $$4({ target: 'RegExp', proto: true, forced: /./.exec !== exec }, {
5084
5147
  var $$3 = _export;
5085
5148
  var call$5 = functionCall;
5086
5149
  var isCallable$3 = isCallable$i;
5087
- var anObject$3 = anObject$b;
5150
+ var anObject$3 = anObject$a;
5088
5151
  var toString$6 = toString$9;
5089
5152
 
5090
5153
  var DELEGATES_TO_EXEC = function () {
@@ -5119,7 +5182,7 @@ var whitespaces$2 = '\u0009\u000A\u000B\u000C\u000D\u0020\u00A0\u1680\u2000\u200
5119
5182
  '\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF';
5120
5183
 
5121
5184
  var uncurryThis$6 = functionUncurryThis;
5122
- var requireObjectCoercible$3 = requireObjectCoercible$7;
5185
+ var requireObjectCoercible$3 = requireObjectCoercible$8;
5123
5186
  var toString$5 = toString$9;
5124
5187
  var whitespaces$1 = whitespaces$2;
5125
5188
 
@@ -6349,8 +6412,8 @@ const LayerManager = ({
6349
6412
  setFocused: _setFocused = () => {},
6350
6413
  settings,
6351
6414
  headerSize: _headerSize = 'medium',
6352
- isMultiMap,
6353
- mapWidthRef
6415
+ mapWidthRef,
6416
+ addLayerComponent
6354
6417
  }) => {
6355
6418
  var _a, _b, _c, _d, _e, _f, _g;
6356
6419
  const minSize = {
@@ -6466,10 +6529,9 @@ const LayerManager = ({
6466
6529
  sx: styles$1.layerRowContainer
6467
6530
  }, /*#__PURE__*/React.createElement(DescriptionRow, {
6468
6531
  mapPresetsModule: _leftHeaderComponent,
6469
- mapId: mapId,
6470
6532
  source: _source,
6471
6533
  settings: settings === null || settings === void 0 ? void 0 : settings.header,
6472
- isMultiMap: isMultiMap
6534
+ addLayerComponent: addLayerComponent
6473
6535
  }), /*#__PURE__*/React.createElement(LayerContainerRow, {
6474
6536
  mapId: mapId,
6475
6537
  settings: settings === null || settings === void 0 ? void 0 : settings.content
@@ -6490,7 +6552,7 @@ const getServicesToLoad = services => services.map(service => {
6490
6552
  return {
6491
6553
  id: wmService.id,
6492
6554
  name: service.name,
6493
- serviceUrl: service.url,
6555
+ url: service.url,
6494
6556
  scope,
6495
6557
  abstract: service.abstract || wmService.abstract
6496
6558
  };
@@ -6547,8 +6609,8 @@ const getDialogType = (mapId, isMultiMap, isDocked) => {
6547
6609
  * a dialog should have the <LayerManagerMapButtonConnect/> which is used to focus the correct map and open the dialog
6548
6610
  *
6549
6611
  * Expects the following props:
6550
- * @param {layerSelectTypes.LayerSelectService[]} preloadedMapServices preloadedMapServices: array of Service objects - contains an array of Service objects that are preloaded into in the WMS Loader for maplayers
6551
- * @param {layerSelectTypes.LayerSelectService[]} preloadedBaseServices preloadedBaseServices: array of Service objects - contains an array of Service objects that are preloaded into in the WMS Loader fpr baselayers
6612
+ * @param {serviceTypes.InitialService[]} preloadedMapServices preloadedMapServices: array of Service objects - contains an array of Service objects that are preloaded into in the WMS Loader for maplayers
6613
+ * @param {serviceTypes.InitialService[]} preloadedBaseServices preloadedBaseServices: array of Service objects - contains an array of Service objects that are preloaded into in the WMS Loader fpr baselayers
6552
6614
  * @param {Layer[]} preloadedAvailableBaseLayers preloadedAvailableBaseLayers: array of Layer objects - contains an array of Layer objects (consisting solely of type baseLayer) that are available to be shown as basemaps
6553
6615
  * ``` <LayerManagerConnect />```
6554
6616
  */
@@ -6605,7 +6667,7 @@ const LayerManagerConnect = ({
6605
6667
  }, [dispatch, _isDocked, mapId, onCloseDialog, _source]);
6606
6668
  return React.useMemo(() => {
6607
6669
  const shownTitle = _showMapIdInTitle ? `${_title} ${mapId}` : _title;
6608
- return /*#__PURE__*/React.createElement(LayerManager, {
6670
+ return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(LayerManager, {
6609
6671
  mapId: mapId || initialMapId,
6610
6672
  preloadedAvailableBaseLayers: preloadedAvailableBaseLayers,
6611
6673
  preloadedBaseServices: preloadedBaseServices,
@@ -6623,7 +6685,6 @@ const LayerManagerConnect = ({
6623
6685
  onToggleDock: onToggleDock,
6624
6686
  setFocused: setFocused,
6625
6687
  headerSize: "xs",
6626
- isMultiMap: _isMultiMap,
6627
6688
  isDockedLayerManager: _isDocked,
6628
6689
  startPosition: _isDocked ? {
6629
6690
  top: 60,
@@ -6632,9 +6693,14 @@ const LayerManagerConnect = ({
6632
6693
  top: 85,
6633
6694
  left: 50
6634
6695
  },
6635
- mapWidthRef: mapWidthRef
6636
- });
6637
- }, [bounds, dialogOrder, dockedLayerManagerSize, initialMapId, isDialogOpen, _isDocked, _isMultiMap, _leftHeaderComponent, mapId, onCloseDialog, onToggleDock, preloadedAvailableBaseLayers, preloadedBaseServices, setDialogOrder, setFocused, _showMapIdInTitle, _title, uiError, uiIsLoading, uiSource, mapWidthRef]);
6696
+ mapWidthRef: mapWidthRef,
6697
+ addLayerComponent: /*#__PURE__*/React.createElement(LayerSelectButtonConnect, {
6698
+ mapId: mapId,
6699
+ source: _source,
6700
+ isMultiMap: _isMultiMap
6701
+ })
6702
+ }), !_isDocked && /*#__PURE__*/React.createElement(LayerInfoDialogConnect, null), !_isDocked && /*#__PURE__*/React.createElement(LayerSelectConnect, null));
6703
+ }, [bounds, dialogOrder, dockedLayerManagerSize, initialMapId, isDialogOpen, _isDocked, _isMultiMap, _leftHeaderComponent, mapId, onCloseDialog, onToggleDock, preloadedAvailableBaseLayers, preloadedBaseServices, setDialogOrder, setFocused, _showMapIdInTitle, _title, uiError, uiIsLoading, uiSource, mapWidthRef, _source]);
6638
6704
  };
6639
6705
 
6640
6706
  /* *
@@ -6967,7 +7033,7 @@ var proxyAccessor$1 = function (Target, Source, key) {
6967
7033
  };
6968
7034
 
6969
7035
  var isCallable$2 = isCallable$i;
6970
- var isObject$1 = isObject$a;
7036
+ var isObject$1 = isObject$b;
6971
7037
  var setPrototypeOf$1 = objectSetPrototypeOf;
6972
7038
 
6973
7039
  // makes subclassing work correct for wrapped built-ins
@@ -6991,7 +7057,7 @@ var normalizeStringArgument$1 = function (argument, $default) {
6991
7057
  return argument === undefined ? arguments.length < 2 ? '' : $default : toString$3(argument);
6992
7058
  };
6993
7059
 
6994
- var isObject = isObject$a;
7060
+ var isObject = isObject$b;
6995
7061
  var createNonEnumerableProperty$3 = createNonEnumerableProperty$8;
6996
7062
 
6997
7063
  // `InstallErrorCause` abstract operation
@@ -7109,7 +7175,7 @@ var wrapErrorConstructorWithCause$1 = function (FULL_NAME, wrapper, FORCED, IS_A
7109
7175
 
7110
7176
  /* eslint-disable no-unused-vars -- required for functions `.length` */
7111
7177
  var $ = _export;
7112
- var global$1 = global$h;
7178
+ var global$1 = global$g;
7113
7179
  var apply$1 = functionApply;
7114
7180
  var wrapErrorConstructorWithCause = wrapErrorConstructorWithCause$1;
7115
7181
 
@@ -7244,7 +7310,7 @@ var fixRegexpWellKnownSymbolLogic = function (KEY, exec, FORCED, SHAM) {
7244
7310
  var uncurryThis$2 = functionUncurryThis;
7245
7311
  var toIntegerOrInfinity$1 = toIntegerOrInfinity$4;
7246
7312
  var toString$2 = toString$9;
7247
- var requireObjectCoercible$2 = requireObjectCoercible$7;
7313
+ var requireObjectCoercible$2 = requireObjectCoercible$8;
7248
7314
 
7249
7315
  var charAt$2 = uncurryThis$2(''.charAt);
7250
7316
  var charCodeAt = uncurryThis$2(''.charCodeAt);
@@ -7287,7 +7353,7 @@ var advanceStringIndex$2 = function (S, index, unicode) {
7287
7353
  };
7288
7354
 
7289
7355
  var call$2 = functionCall;
7290
- var anObject$2 = anObject$b;
7356
+ var anObject$2 = anObject$a;
7291
7357
  var isCallable$1 = isCallable$i;
7292
7358
  var classof = classofRaw$1;
7293
7359
  var regexpExec = regexpExec$2;
@@ -7309,11 +7375,11 @@ var regexpExecAbstract = function (R, S) {
7309
7375
 
7310
7376
  var call$1 = functionCall;
7311
7377
  var fixRegExpWellKnownSymbolLogic$1 = fixRegexpWellKnownSymbolLogic;
7312
- var anObject$1 = anObject$b;
7378
+ var anObject$1 = anObject$a;
7313
7379
  var isNullOrUndefined$1 = isNullOrUndefined$4;
7314
7380
  var toLength$1 = toLength$3;
7315
7381
  var toString$1 = toString$9;
7316
- var requireObjectCoercible$1 = requireObjectCoercible$7;
7382
+ var requireObjectCoercible$1 = requireObjectCoercible$8;
7317
7383
  var getMethod$1 = getMethod$3;
7318
7384
  var advanceStringIndex$1 = advanceStringIndex$2;
7319
7385
  var regExpExec$1 = regexpExecAbstract;
@@ -8663,42 +8729,6 @@ const TimeStepButtonConnect = ({
8663
8729
  });
8664
8730
  };
8665
8731
 
8666
- const NowButtonConnect = ({
8667
- sourceId,
8668
- mapId,
8669
- isDisabled
8670
- }) => {
8671
- const dispatch = useDispatch();
8672
- const currentTime = dateUtils.unix(dateUtils.utc());
8673
- const timeStep = useSelector(store => mapSelectors.getMapTimeStep(store, mapId));
8674
- const [dataStartTime, dataEndTime] = useSelector(store => mapSelectors.getDataLimitsFromLayers(store, mapId));
8675
- const isAnimating = useSelector(store => mapSelectors.isAnimating(store, mapId));
8676
- const turnOffAutoUpdateIfItsOn = useTurnOffAutoUpdateIfItsOn(mapId);
8677
- const onSetNewDate = newDate => {
8678
- turnOffAutoUpdateIfItsOn();
8679
- if (isAnimating) {
8680
- dispatch(mapActions.mapStopAnimation({
8681
- mapId
8682
- }));
8683
- }
8684
- dispatch(genericActions.setTime({
8685
- sourceId,
8686
- origin: 'NowButtonConnect, 140',
8687
- value: handleDateUtilsISOString(newDate)
8688
- }));
8689
- };
8690
- const onSetCenterTime = newTime => {
8691
- dispatch(mapActions.setTimeSliderCenterTime({
8692
- mapId,
8693
- timeSliderCenterTime: newTime
8694
- }));
8695
- };
8696
- return /*#__PURE__*/React.createElement(NowButton, {
8697
- disabled: isDisabled,
8698
- onSetNow: () => handleSetNowEvent(timeStep, dataStartTime, dataEndTime, currentTime, onSetNewDate, onSetCenterTime)
8699
- });
8700
- };
8701
-
8702
8732
  /* *
8703
8733
  * Licensed under the Apache License, Version 2.0 (the "License");
8704
8734
  * you may not use this file except in compliance with the License.
@@ -8820,47 +8850,6 @@ const TimeSpanButtonConnect = ({
8820
8850
  });
8821
8851
  };
8822
8852
 
8823
- /* *
8824
- * Licensed under the Apache License, Version 2.0 (the "License");
8825
- * you may not use this file except in compliance with the License.
8826
- * You may obtain a copy of the License at
8827
- *
8828
- * http://www.apache.org/licenses/LICENSE-2.0
8829
- *
8830
- * Unless required by applicable law or agreed to in writing, software
8831
- * distributed under the License is distributed on an "AS IS" BASIS,
8832
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
8833
- * See the License for the specific language governing permissions and
8834
- * limitations under the License.
8835
- *
8836
- * Copyright 2020 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
8837
- * Copyright 2020 - Finnish Meteorological Institute (FMI)
8838
- * */
8839
- const connectRedux$2 = connect((store, props) => ({
8840
- isAutoUpdating: mapSelectors.isAutoUpdating(store, props.mapId)
8841
- }), {
8842
- toggleAutoUpdate: mapActions.toggleAutoUpdate
8843
- });
8844
- const AutoUpdateButtonConnectComponent = connectRedux$2(({
8845
- mapId,
8846
- isAutoUpdating,
8847
- toggleAutoUpdate
8848
- }) => {
8849
- const onClick = () => {
8850
- toggleAutoUpdate({
8851
- mapId,
8852
- shouldAutoUpdate: !isAutoUpdating,
8853
- origin: mapEnums.MapActionOrigin.map
8854
- });
8855
- };
8856
- return /*#__PURE__*/React.createElement(AutoUpdateButton, {
8857
- isAutoUpdating: isAutoUpdating,
8858
- toggleAutoUpdate: onClick,
8859
- disabled: false
8860
- });
8861
- });
8862
- const AutoUpdateButtonConnect = connectRedux$2(AutoUpdateButtonConnectComponent);
8863
-
8864
8853
  /* *
8865
8854
  * Licensed under the Apache License, Version 2.0 (the "License");
8866
8855
  * you may not use this file except in compliance with the License.
@@ -8886,20 +8875,12 @@ const AutoUpdateButtonConnect = connectRedux$2(AutoUpdateButtonConnectComponent)
8886
8875
  * ``` <OptionsMenuButtonConnect mapId={mapId} />```
8887
8876
  */
8888
8877
  const OptionsMenuButtonConnect = ({
8889
- sourceId,
8890
8878
  mapId
8891
8879
  }) => {
8892
8880
  return /*#__PURE__*/React.createElement(OptionsMenuButton, {
8893
- nowBtn: /*#__PURE__*/React.createElement(NowButtonConnect, {
8894
- mapId: mapId,
8895
- sourceId: sourceId
8896
- }),
8897
8881
  animationLengthBtn: /*#__PURE__*/React.createElement(AnimationLengthButtonConnect, {
8898
8882
  mapId: mapId
8899
8883
  }),
8900
- autoUpdateBtn: /*#__PURE__*/React.createElement(AutoUpdateButtonConnect, {
8901
- mapId: mapId
8902
- }),
8903
8884
  speedBtn: /*#__PURE__*/React.createElement(SpeedButtonConnect, {
8904
8885
  mapId: mapId
8905
8886
  }),
@@ -8928,7 +8909,7 @@ const OptionsMenuButtonConnect = ({
8928
8909
  * Copyright 2020 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
8929
8910
  * Copyright 2020 - Finnish Meteorological Institute (FMI)
8930
8911
  * */
8931
- const connectRedux$1 = connect((store, props) => ({
8912
+ const connectRedux$2 = connect((store, props) => ({
8932
8913
  animationStartTime: mapSelectors.getAnimationStartTime(store, props.mapId),
8933
8914
  animationEndTime: mapSelectors.getAnimationEndTime(store, props.mapId),
8934
8915
  timeStep: mapSelectors.getMapTimeStep(store, props.mapId),
@@ -8937,7 +8918,7 @@ const connectRedux$1 = connect((store, props) => ({
8937
8918
  mapStartAnimation: mapActions.mapStartAnimation,
8938
8919
  mapStopAnimation: mapActions.mapStopAnimation
8939
8920
  });
8940
- const PlayButtonConnect = connectRedux$1(({
8921
+ const PlayButtonConnect = connectRedux$2(({
8941
8922
  mapId,
8942
8923
  animationStartTime,
8943
8924
  animationEndTime,
@@ -9007,6 +8988,83 @@ const BackwardForwardStepButtonConnect = ({
9007
8988
  });
9008
8989
  };
9009
8990
 
8991
+ /* *
8992
+ * Licensed under the Apache License, Version 2.0 (the "License");
8993
+ * you may not use this file except in compliance with the License.
8994
+ * You may obtain a copy of the License at
8995
+ *
8996
+ * http://www.apache.org/licenses/LICENSE-2.0
8997
+ *
8998
+ * Unless required by applicable law or agreed to in writing, software
8999
+ * distributed under the License is distributed on an "AS IS" BASIS,
9000
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
9001
+ * See the License for the specific language governing permissions and
9002
+ * limitations under the License.
9003
+ *
9004
+ * Copyright 2020 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
9005
+ * Copyright 2020 - Finnish Meteorological Institute (FMI)
9006
+ * */
9007
+ const connectRedux$1 = connect((store, props) => ({
9008
+ isAutoUpdating: mapSelectors.isAutoUpdating(store, props.mapId)
9009
+ }), {
9010
+ toggleAutoUpdate: mapActions.toggleAutoUpdate
9011
+ });
9012
+ const AutoUpdateButtonConnectComponent = connectRedux$1(({
9013
+ mapId,
9014
+ isAutoUpdating,
9015
+ toggleAutoUpdate
9016
+ }) => {
9017
+ const onClick = () => {
9018
+ toggleAutoUpdate({
9019
+ mapId,
9020
+ shouldAutoUpdate: !isAutoUpdating,
9021
+ origin: mapEnums.MapActionOrigin.map
9022
+ });
9023
+ };
9024
+ return /*#__PURE__*/React.createElement(AutoUpdateButton, {
9025
+ isAutoUpdating: isAutoUpdating,
9026
+ toggleAutoUpdate: onClick,
9027
+ disabled: false
9028
+ });
9029
+ });
9030
+ const AutoUpdateButtonConnect = connectRedux$1(AutoUpdateButtonConnectComponent);
9031
+
9032
+ const NowButtonConnect = ({
9033
+ sourceId,
9034
+ mapId,
9035
+ isDisabled
9036
+ }) => {
9037
+ const dispatch = useDispatch();
9038
+ const currentTime = dateUtils.unix(dateUtils.utc());
9039
+ const timeStep = useSelector(store => mapSelectors.getMapTimeStep(store, mapId));
9040
+ const [dataStartTime, dataEndTime] = useSelector(store => mapSelectors.getDataLimitsFromLayers(store, mapId));
9041
+ const isAnimating = useSelector(store => mapSelectors.isAnimating(store, mapId));
9042
+ const turnOffAutoUpdateIfItsOn = useTurnOffAutoUpdateIfItsOn(mapId);
9043
+ const onSetNewDate = newDate => {
9044
+ turnOffAutoUpdateIfItsOn();
9045
+ if (isAnimating) {
9046
+ dispatch(mapActions.mapStopAnimation({
9047
+ mapId
9048
+ }));
9049
+ }
9050
+ dispatch(genericActions.setTime({
9051
+ sourceId,
9052
+ origin: 'NowButtonConnect, 140',
9053
+ value: handleDateUtilsISOString(newDate)
9054
+ }));
9055
+ };
9056
+ const onSetCenterTime = newTime => {
9057
+ dispatch(mapActions.setTimeSliderCenterTime({
9058
+ mapId,
9059
+ timeSliderCenterTime: newTime
9060
+ }));
9061
+ };
9062
+ return /*#__PURE__*/React.createElement(NowButton, {
9063
+ disabled: isDisabled,
9064
+ onSetNow: () => handleSetNowEvent(timeStep, dataStartTime, dataEndTime, currentTime, onSetNewDate, onSetCenterTime)
9065
+ });
9066
+ };
9067
+
9010
9068
  /* *
9011
9069
  * Licensed under the Apache License, Version 2.0 (the "License");
9012
9070
  * you may not use this file except in compliance with the License.
@@ -9028,17 +9086,24 @@ const BackwardForwardStepButtonConnect = ({
9028
9086
  *
9029
9087
  * Expects the following props:
9030
9088
  * @param {string} mapId mapId: string - Id of the map
9089
+ * @param {string} sourceId mapId: string - Id of the source
9031
9090
  * @example
9032
- * ``` <TimeSliderButtonsConnect mapId={mapId} />```
9091
+ * ``` <TimeSliderButtonsConnect mapId={mapId} sourceId={sourceId} />```
9033
9092
  */
9034
9093
  const TimeSliderButtonsConnectComponent = ({
9035
9094
  sourceId,
9036
9095
  mapId
9037
9096
  }) => ( /*#__PURE__*/React.createElement(TimeSliderButtons, {
9038
- optionsMenuBtn: /*#__PURE__*/React.createElement(OptionsMenuButtonConnect, {
9097
+ nowBtn: /*#__PURE__*/React.createElement(NowButtonConnect, {
9039
9098
  mapId: mapId,
9040
9099
  sourceId: sourceId
9041
9100
  }),
9101
+ autoUpdateBtn: /*#__PURE__*/React.createElement(AutoUpdateButtonConnect, {
9102
+ mapId: mapId
9103
+ }),
9104
+ optionsMenuBtn: /*#__PURE__*/React.createElement(OptionsMenuButtonConnect, {
9105
+ mapId: mapId
9106
+ }),
9042
9107
  playBtn: /*#__PURE__*/React.createElement(PlayButtonConnect, {
9043
9108
  mapId: mapId
9044
9109
  }),
@@ -9415,9 +9480,17 @@ const TimeSliderConnect = ({
9415
9480
  * Copyright 2022 - Finnish Meteorological Institute (FMI)
9416
9481
  * */
9417
9482
  const ControlButtonsConnect = ({
9483
+ sourceId,
9418
9484
  mapId
9419
9485
  }) => {
9420
9486
  return /*#__PURE__*/React__default.createElement(ControlButtons, {
9487
+ nowBtn: /*#__PURE__*/React__default.createElement(NowButtonConnect, {
9488
+ mapId: mapId,
9489
+ sourceId: sourceId
9490
+ }),
9491
+ autoUpdateBtn: /*#__PURE__*/React__default.createElement(AutoUpdateButtonConnect, {
9492
+ mapId: mapId
9493
+ }),
9421
9494
  playBtn: /*#__PURE__*/React__default.createElement(PlayButtonConnect, {
9422
9495
  mapId: mapId
9423
9496
  }),
@@ -9449,19 +9522,11 @@ const ControlButtonsConnect = ({
9449
9522
  * Copyright 2022 - Finnish Meteorological Institute (FMI)
9450
9523
  * */
9451
9524
  const OptionsMenuConnect = ({
9452
- sourceId,
9453
9525
  mapId
9454
9526
  }) => ( /*#__PURE__*/React__default.createElement(OptionsMenu, {
9455
- nowBtn: /*#__PURE__*/React__default.createElement(NowButtonConnect, {
9456
- mapId: mapId,
9457
- sourceId: sourceId
9458
- }),
9459
9527
  animationLengthBtn: /*#__PURE__*/React__default.createElement(AnimationLengthButtonConnect, {
9460
9528
  mapId: mapId
9461
9529
  }),
9462
- autoUpdateBtn: /*#__PURE__*/React__default.createElement(AutoUpdateButtonConnect, {
9463
- mapId: mapId
9464
- }),
9465
9530
  speedBtn: /*#__PURE__*/React__default.createElement(SpeedButtonConnect, {
9466
9531
  mapId: mapId
9467
9532
  }),
@@ -9497,12 +9562,12 @@ const TimeSliderClockConnect = ({
9497
9562
  return /*#__PURE__*/React__default.createElement(TimeSliderClock, {
9498
9563
  hideButton: isTimeSliderVisible,
9499
9564
  controls: /*#__PURE__*/React__default.createElement(ControlButtonsConnect, {
9500
- mapId: mapId
9501
- }),
9502
- options: /*#__PURE__*/React__default.createElement(OptionsMenuConnect, {
9503
9565
  mapId: mapId,
9504
9566
  sourceId: mapId
9505
9567
  }),
9568
+ options: /*#__PURE__*/React__default.createElement(OptionsMenuConnect, {
9569
+ mapId: mapId
9570
+ }),
9506
9571
  time: selectedTime
9507
9572
  });
9508
9573
  };
@@ -9735,13 +9800,13 @@ var call = functionCall;
9735
9800
  var uncurryThis = functionUncurryThis;
9736
9801
  var fixRegExpWellKnownSymbolLogic = fixRegexpWellKnownSymbolLogic;
9737
9802
  var fails = fails$n;
9738
- var anObject = anObject$b;
9803
+ var anObject = anObject$a;
9739
9804
  var isCallable = isCallable$i;
9740
9805
  var isNullOrUndefined = isNullOrUndefined$4;
9741
9806
  var toIntegerOrInfinity = toIntegerOrInfinity$4;
9742
9807
  var toLength = toLength$3;
9743
9808
  var toString = toString$9;
9744
- var requireObjectCoercible = requireObjectCoercible$7;
9809
+ var requireObjectCoercible = requireObjectCoercible$8;
9745
9810
  var advanceStringIndex = advanceStringIndex$2;
9746
9811
  var getMethod = getMethod$3;
9747
9812
  var getSubstitution = getSubstitution$1;
@@ -10628,6 +10693,66 @@ var testLayers = /*#__PURE__*/Object.freeze({
10628
10693
  simplePolygonGeoJSON: simplePolygonGeoJSON
10629
10694
  });
10630
10695
 
10696
+ var en = {
10697
+ core: "Core"
10698
+ };
10699
+ var fi = {
10700
+ core: "Core"
10701
+ };
10702
+ var no = {
10703
+ core: "Core"
10704
+ };
10705
+ var nl = {
10706
+ core: "Core"
10707
+ };
10708
+ var coreTranslations = {
10709
+ en: en,
10710
+ fi: fi,
10711
+ no: no,
10712
+ nl: nl
10713
+ };
10714
+
10715
+ /* *
10716
+ * Licensed under the Apache License, Version 2.0 (the "License");
10717
+ * you may not use this file except in compliance with the License.
10718
+ * You may obtain a copy of the License at
10719
+ *
10720
+ * http://www.apache.org/licenses/LICENSE-2.0
10721
+ *
10722
+ * Unless required by applicable law or agreed to in writing, software
10723
+ * distributed under the License is distributed on an "AS IS" BASIS,
10724
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
10725
+ * See the License for the specific language governing permissions and
10726
+ * limitations under the License.
10727
+ *
10728
+ * Copyright 2023 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
10729
+ * Copyright 2023 - Finnish Meteorological Institute (FMI)
10730
+ * */
10731
+ const CORE_NAMESPACE = 'core';
10732
+ const initCoreReactI18n = () => {
10733
+ i18n.use(initReactI18next).init({
10734
+ lng: 'en',
10735
+ ns: CORE_NAMESPACE,
10736
+ interpolation: {
10737
+ escapeValue: false
10738
+ },
10739
+ resources: {
10740
+ en: {
10741
+ core: coreTranslations.en
10742
+ },
10743
+ fi: {
10744
+ core: coreTranslations.fi
10745
+ },
10746
+ no: {
10747
+ core: coreTranslations.no
10748
+ },
10749
+ nl: {
10750
+ core: coreTranslations.nl
10751
+ }
10752
+ }
10753
+ });
10754
+ };
10755
+
10631
10756
  /**
10632
10757
  * A Provider component which provides the GeoWeb theme
10633
10758
  * @param children
@@ -10642,9 +10767,9 @@ const CoreThemeProvider = ({
10642
10767
  const ThemeWrapperWithModules = withEggs([...coreModuleConfig, layerSelectConfig])(({
10643
10768
  theme,
10644
10769
  children
10645
- }) => ( /*#__PURE__*/React__default.createElement(CoreThemeProvider, {
10770
+ }) => ( /*#__PURE__*/React__default.createElement(CoreI18nProvider, null, /*#__PURE__*/React__default.createElement(CoreThemeProvider, {
10646
10771
  theme: theme
10647
- }, children, " ")));
10772
+ }, children))));
10648
10773
  /**
10649
10774
  * A Provider component which provides the GeoWeb theme and store for the core.
10650
10775
  * Note: Should only be used with core components, as the provided store is only for core.
@@ -10655,11 +10780,33 @@ const CoreThemeStoreProvider = ({
10655
10780
  children,
10656
10781
  theme: _theme2 = lightTheme,
10657
10782
  store
10658
- }) => ( /*#__PURE__*/React__default.createElement(Provider, {
10783
+ }) => ( /*#__PURE__*/React__default.createElement(CoreI18nProvider, null, /*#__PURE__*/React__default.createElement(Provider, {
10659
10784
  store: store
10660
10785
  }, /*#__PURE__*/React__default.createElement(ThemeWrapperWithModules, {
10661
10786
  theme: _theme2
10662
- }, /*#__PURE__*/React__default.createElement(SnackbarWrapperConnect, null, children))));
10787
+ }, /*#__PURE__*/React__default.createElement(SnackbarWrapperConnect, null, children)))));
10788
+ const CoreTranslationsWrapper = ({
10789
+ children
10790
+ }) => {
10791
+ const {
10792
+ i18n
10793
+ } = useTranslation(CORE_NAMESPACE);
10794
+ React__default.useEffect(() => {
10795
+ i18n.addResourceBundle('en', CORE_NAMESPACE, coreTranslations.en);
10796
+ i18n.addResourceBundle('fi', CORE_NAMESPACE, coreTranslations.fi);
10797
+ i18n.addResourceBundle('no', CORE_NAMESPACE, coreTranslations.no);
10798
+ i18n.addResourceBundle('nl', CORE_NAMESPACE, coreTranslations.nl);
10799
+ }, [i18n]);
10800
+ return children;
10801
+ };
10802
+ const CoreI18nProvider = ({
10803
+ children
10804
+ }) => {
10805
+ initCoreReactI18n();
10806
+ return /*#__PURE__*/React__default.createElement(I18nextProvider, {
10807
+ i18n: i18n
10808
+ }, children);
10809
+ };
10663
10810
 
10664
10811
  /* *
10665
10812
  * Licensed under the Apache License, Version 2.0 (the "License");
@@ -10703,4 +10850,4 @@ const RouterWrapperConnect = withEggs([routerModuleConfig])(props => {
10703
10850
  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(NavigateSetter, null), props.children);
10704
10851
  });
10705
10852
 
10706
- export { ConfigurableMapConnect, CoreThemeProvider, CoreThemeStoreProvider, HarmonieTempAndPrecipPreset, LayerInfoButtonConnect, LayerInfoDialogConnect, LayerManager, BaseLayerRow as LayerManagerBaseLayerRow, LayerManagerConnect, DescriptionRow as LayerManagerDescriptionRow, HeaderOptions as LayerManagerHeaderOptions, LayerContainerRow as LayerManagerLayerContainerRow, LayerManagerMapButtonConnect, LegendConnect, LegendMapButtonConnect, MapViewConnect, MultiDimensionSelectMapButtonsConnect, MultiMapMultiDimensionSelectConnect as MultiMapDimensionSelectConnect, MultiMapViewConnect, MyMapLocation, RouterWrapperConnect, SearchControlButtonConnect, SearchControlConnect, SearchDialog, SyncGroupViewerConnect, TimeSliderConnect, ZoomControlConnect, componentsLookUp, defaultBbox, defaultConfigurations, filterMapPresets, filterServices, filterTimeSeriesServices, testLayers, useFetchServices, useUpdateTimeSpan, useUpdateTimestep };
10853
+ export { ConfigurableMapConnect, CoreI18nProvider, CoreThemeProvider, CoreThemeStoreProvider, CoreTranslationsWrapper, HarmonieTempAndPrecipPreset, LayerInfoButtonConnect, LayerInfoDialogConnect, LayerManager, BaseLayerRow as LayerManagerBaseLayerRow, LayerManagerConnect, DescriptionRow as LayerManagerDescriptionRow, HeaderOptions as LayerManagerHeaderOptions, LayerContainerRow as LayerManagerLayerContainerRow, LayerManagerMapButtonConnect, LegendConnect, LegendMapButtonConnect, MapViewConnect, MultiDimensionSelectMapButtonsConnect, MultiMapMultiDimensionSelectConnect as MultiMapDimensionSelectConnect, MultiMapViewConnect, MyMapLocation, RouterWrapperConnect, SearchControlButtonConnect, SearchControlConnect, SearchDialog, SyncGroupViewerConnect, TimeSliderConnect, ZoomControlConnect, componentsLookUp, defaultBbox, defaultConfigurations, filterMapPresets, filterServices, filterTimeSeriesServices, testLayers, useFetchServices, useUpdateTimeSpan, useUpdateTimestep };