@opengeoweb/data-explorer 16.0.0 → 17.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (76) hide show
  1. package/index.esm.js +814 -473
  2. package/package.json +10 -10
  3. package/src/index.d.ts +0 -5
  4. package/src/lib/components/AreaFilter/AreaFilter.d.ts +0 -11
  5. package/src/lib/components/AreaFilter/AreaFilterConnect.d.ts +0 -2
  6. package/src/lib/components/AreaFilter/AreaFilterConnect.spec.d.ts +0 -1
  7. package/src/lib/components/AreaFilter/AreaFilterConnect.stories.d.ts +0 -7
  8. package/src/lib/components/AreaFilter/AreaFilterLocationSearch.d.ts +0 -6
  9. package/src/lib/components/AreaFilter/AreaFilterLocationSearch.spec.d.ts +0 -1
  10. package/src/lib/components/ConceptList/ConceptChip.d.ts +0 -10
  11. package/src/lib/components/ConceptList/ConceptChipConnect.d.ts +0 -7
  12. package/src/lib/components/ConceptList/ConceptList.d.ts +0 -8
  13. package/src/lib/components/ConceptList/ConceptListConnect.d.ts +0 -2
  14. package/src/lib/components/ConceptList/ConceptListConnect.spec.d.ts +0 -1
  15. package/src/lib/components/ConceptList/ConceptListConnect.stories.d.ts +0 -7
  16. package/src/lib/components/DataExplorer.d.ts +0 -18
  17. package/src/lib/components/DataExplorer.stories.d.ts +0 -9
  18. package/src/lib/components/DataExplorerConnect.d.ts +0 -6
  19. package/src/lib/components/DataExplorerConnect.spec.d.ts +0 -1
  20. package/src/lib/components/DataExplorerConnect.stories.d.ts +0 -11
  21. package/src/lib/components/DataExplorerFilters/DataExplorerFilterOption.d.ts +0 -11
  22. package/src/lib/components/DataExplorerFilters/DataExplorerFilters.d.ts +0 -10
  23. package/src/lib/components/DataExplorerFilters/DataExplorerFilters.stories.d.ts +0 -7
  24. package/src/lib/components/DataExplorerFilters/DataExplorerFiltersConnect.d.ts +0 -2
  25. package/src/lib/components/DataExplorerFilters/DataExplorerFiltersConnect.spec.d.ts +0 -1
  26. package/src/lib/components/DataExplorerFilters/DataExplorerSearchConnect.d.ts +0 -2
  27. package/src/lib/components/DataExplorerFilters/DataExplorerSearchConnect.spec.d.ts +0 -1
  28. package/src/lib/components/DataExplorerFilters/DataExplorerSearchConnect.stories.d.ts +0 -7
  29. package/src/lib/components/DataExplorerInfo/DataExplorerInfo.d.ts +0 -15
  30. package/src/lib/components/DataExplorerInfo/DataExplorerInfo.spec.d.ts +0 -1
  31. package/src/lib/components/DataExplorerInfo/DataExplorerInfo.stories.d.ts +0 -7
  32. package/src/lib/components/DataExplorerInfo/DataExplorerInfoButton.d.ts +0 -7
  33. package/src/lib/components/DataExplorerInfo/DataExplorerInfoButtonConnect.d.ts +0 -8
  34. package/src/lib/components/DataExplorerInfo/DataExplorerInfoConnect.d.ts +0 -2
  35. package/src/lib/components/DataExplorerInfo/InfoDialogBaseInfo.d.ts +0 -4
  36. package/src/lib/components/DataExplorerInfo/InfoDialogBaseInfo.stories.d.ts +0 -7
  37. package/src/lib/components/DataExplorerInfo/InfoDialogContacts.d.ts +0 -4
  38. package/src/lib/components/DataExplorerInfo/InfoDialogContacts.stories.d.ts +0 -7
  39. package/src/lib/components/DataExplorerInfo/InfoDialogGeographicalCoverage.d.ts +0 -4
  40. package/src/lib/components/DataExplorerInfo/InfoDialogGeographicalCoverage.stories.d.ts +0 -7
  41. package/src/lib/components/DataExplorerInfo/InfoDialogKeywords.d.ts +0 -4
  42. package/src/lib/components/DataExplorerInfo/InfoDialogKeywords.stories.d.ts +0 -7
  43. package/src/lib/components/DataExplorerInfo/InfoDialogLinks.d.ts +0 -4
  44. package/src/lib/components/DataExplorerInfo/InfoDialogLinks.stories.d.ts +0 -7
  45. package/src/lib/components/DataExplorerInfo/InfoDialogTime.d.ts +0 -4
  46. package/src/lib/components/DataExplorerInfo/InfoDialogTime.spec.d.ts +0 -1
  47. package/src/lib/components/DataExplorerInfo/InfoDialogTime.stories.d.ts +0 -7
  48. package/src/lib/components/DataExplorerInfo/InfoDialogWMSMap.d.ts +0 -14
  49. package/src/lib/components/DataExplorerInfo/InfoDialogWMSMapConnect.d.ts +0 -15
  50. package/src/lib/components/DataExplorerInfo/InfoDialogWMSMapConnect.spec.d.ts +0 -1
  51. package/src/lib/components/DataExplorerInfo/InfoDialogWMSMapConnect.stories.d.ts +0 -7
  52. package/src/lib/components/DatasetList/DatasetAddRemoveButton.d.ts +0 -10
  53. package/src/lib/components/DatasetList/DatasetList.d.ts +0 -10
  54. package/src/lib/components/DatasetList/DatasetList.stories.d.ts +0 -7
  55. package/src/lib/components/DatasetList/DatasetListConnect.d.ts +0 -2
  56. package/src/lib/components/DatasetList/DatasetListConnect.spec.d.ts +0 -1
  57. package/src/lib/components/DatasetList/DatasetRow.d.ts +0 -14
  58. package/src/lib/components/DatasetList/DatasetRowConnect.d.ts +0 -10
  59. package/src/lib/components/DatasetList/DatasetRowConnect.spec.d.ts +0 -1
  60. package/src/lib/components/providers/Providers.d.ts +0 -28
  61. package/src/lib/components/providers/index.d.ts +0 -1
  62. package/src/lib/store/index.d.ts +0 -4
  63. package/src/lib/store/listeners.d.ts +0 -2
  64. package/src/lib/store/reducer.d.ts +0 -14
  65. package/src/lib/store/selectors.d.ts +0 -233
  66. package/src/lib/store/store.d.ts +0 -15
  67. package/src/lib/store/types.d.ts +0 -208
  68. package/src/lib/utils/data-explorerUtils.d.ts +0 -8
  69. package/src/lib/utils/data-explorerUtils.spec.d.ts +0 -1
  70. package/src/lib/utils/dataexplorer-api/api.d.ts +0 -7
  71. package/src/lib/utils/dataexplorer-api/fakeApi.d.ts +0 -15
  72. package/src/lib/utils/dataexplorer-api/hooks.d.ts +0 -7
  73. package/src/lib/utils/i18n.d.ts +0 -6
  74. package/src/lib/utils/storyUtils.d.ts +0 -10
  75. package/src/lib/utils/timeUtils.d.ts +0 -1
  76. package/src/lib/utils/timeUtils.spec.d.ts +0 -1
package/index.esm.js CHANGED
@@ -1,4 +1,3 @@
1
- import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
2
1
  import React, { useState, useEffect, useRef, useMemo, useCallback } from 'react';
3
2
  import { useDispatch, useSelector } from 'react-redux';
4
3
  import { mapListener, serviceListener, layersListener, syncGroupsListener, genericListener, uiReducer, syncGroupsReducer, layerReducer, serviceReducer, mapReducer, uiSelectors, uiTypes, uiActions, layerActions, layerTypes, layerSelectors, useSetupDialog } from '@opengeoweb/store';
@@ -10,8 +9,9 @@ import { View } from 'ol';
10
9
  import GeoJSON from 'ol/format/GeoJSON';
11
10
  import { unByKey } from 'ol/Observable';
12
11
  import { transformExtent, transform, fromLonLat } from 'ol/proj';
13
- import { webmapUtils, LayerType } from '@opengeoweb/webmap';
12
+ import { LayerType, webmapUtils } from '@opengeoweb/webmap';
14
13
  import { OpenLayersMapView, MapControls, OpenLayersZoomControl, OpenLayersFeatureLayer, genericOpenLayersFeatureStyle, OpenLayersLayer, DefaultBaseLayers, WMSLayer, useQueryGetWMSGetCapabilities } from '@opengeoweb/webmap-react';
14
+ import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
15
15
  import { useLocationList, useLocationDetail } from '@opengeoweb/core';
16
16
  import { Close, Info, ExitDomain, Link as Link$1, Copy, ChevronDown } from '@opengeoweb/theme';
17
17
  import { t } from 'i18next';
@@ -972,7 +972,7 @@ var fails$p = fails$q;
972
972
 
973
973
  var functionBindNative = !fails$p(function () {
974
974
  // eslint-disable-next-line es/no-function-prototype-bind -- safe
975
- var test = (function () { /* empty */ }).bind();
975
+ var test = function () { /* empty */ }.bind();
976
976
  // eslint-disable-next-line no-prototype-builtins -- safe
977
977
  return typeof test != 'function' || test.hasOwnProperty('prototype');
978
978
  });
@@ -980,13 +980,13 @@ var functionBindNative = !fails$p(function () {
980
980
  var NATIVE_BIND$3 = functionBindNative;
981
981
 
982
982
  var FunctionPrototype$2 = Function.prototype;
983
- var call$n = FunctionPrototype$2.call;
983
+ var call$o = FunctionPrototype$2.call;
984
984
  // eslint-disable-next-line es/no-function-prototype-bind -- safe
985
- var uncurryThisWithBind = NATIVE_BIND$3 && FunctionPrototype$2.bind.bind(call$n, call$n);
985
+ var uncurryThisWithBind = NATIVE_BIND$3 && FunctionPrototype$2.bind.bind(call$o, call$o);
986
986
 
987
987
  var functionUncurryThis = NATIVE_BIND$3 ? uncurryThisWithBind : function (fn) {
988
988
  return function () {
989
- return call$n.apply(fn, arguments);
989
+ return call$o.apply(fn, arguments);
990
990
  };
991
991
  };
992
992
 
@@ -1080,10 +1080,10 @@ var SHARED = '__core-js_shared__';
1080
1080
  var store$3 = sharedStore.exports = globalThis$q[SHARED] || defineGlobalProperty$2(SHARED, {});
1081
1081
 
1082
1082
  (store$3.versions || (store$3.versions = [])).push({
1083
- version: '3.45.0',
1083
+ version: '3.49.0',
1084
1084
  mode: 'global',
1085
- copyright: '© 2014-2025 Denis Pushkarev (zloirock.ru)',
1086
- license: 'https://github.com/zloirock/core-js/blob/v3.45.0/LICENSE',
1085
+ copyright: '© 2013–2025 Denis Pushkarev (zloirock.ru), 2025–2026 CoreJS Company (core-js.io). All rights reserved.',
1086
+ license: 'https://github.com/zloirock/core-js/blob/v3.49.0/LICENSE',
1087
1087
  source: 'https://github.com/zloirock/core-js'
1088
1088
  });
1089
1089
 
@@ -1286,10 +1286,10 @@ var ie8DomDefine = !DESCRIPTORS$h && !fails$k(function () {
1286
1286
 
1287
1287
  var NATIVE_BIND$2 = functionBindNative;
1288
1288
 
1289
- var call$m = Function.prototype.call;
1289
+ var call$n = Function.prototype.call;
1290
1290
  // eslint-disable-next-line es/no-function-prototype-bind -- safe
1291
- var functionCall = NATIVE_BIND$2 ? call$m.bind(call$m) : function () {
1292
- return call$m.apply(call$m, arguments);
1291
+ var functionCall = NATIVE_BIND$2 ? call$n.bind(call$n) : function () {
1292
+ return call$n.apply(call$n, arguments);
1293
1293
  };
1294
1294
 
1295
1295
  var globalThis$k = globalThis_1;
@@ -1352,7 +1352,7 @@ var getMethod$5 = function (V, P) {
1352
1352
  return isNullOrUndefined$2(func) ? undefined : aCallable$9(func);
1353
1353
  };
1354
1354
 
1355
- var call$l = functionCall;
1355
+ var call$m = functionCall;
1356
1356
  var isCallable$j = isCallable$o;
1357
1357
  var isObject$c = isObject$f;
1358
1358
 
@@ -1362,13 +1362,13 @@ var $TypeError$e = TypeError;
1362
1362
  // https://tc39.es/ecma262/#sec-ordinarytoprimitive
1363
1363
  var ordinaryToPrimitive$1 = function (input, pref) {
1364
1364
  var fn, val;
1365
- if (pref === 'string' && isCallable$j(fn = input.toString) && !isObject$c(val = call$l(fn, input))) return val;
1366
- if (isCallable$j(fn = input.valueOf) && !isObject$c(val = call$l(fn, input))) return val;
1367
- if (pref !== 'string' && isCallable$j(fn = input.toString) && !isObject$c(val = call$l(fn, input))) return val;
1365
+ if (pref === 'string' && isCallable$j(fn = input.toString) && !isObject$c(val = call$m(fn, input))) return val;
1366
+ if (isCallable$j(fn = input.valueOf) && !isObject$c(val = call$m(fn, input))) return val;
1367
+ if (pref !== 'string' && isCallable$j(fn = input.toString) && !isObject$c(val = call$m(fn, input))) return val;
1368
1368
  throw new $TypeError$e("Can't convert object to primitive value");
1369
1369
  };
1370
1370
 
1371
- var call$k = functionCall;
1371
+ var call$l = functionCall;
1372
1372
  var isObject$b = isObject$f;
1373
1373
  var isSymbol$1 = isSymbol$2;
1374
1374
  var getMethod$4 = getMethod$5;
@@ -1386,7 +1386,7 @@ var toPrimitive$1 = function (input, pref) {
1386
1386
  var result;
1387
1387
  if (exoticToPrim) {
1388
1388
  if (pref === undefined) pref = 'default';
1389
- result = call$k(exoticToPrim, input, pref);
1389
+ result = call$l(exoticToPrim, input, pref);
1390
1390
  if (!isObject$b(result) || isSymbol$1(result)) return result;
1391
1391
  throw new $TypeError$d("Can't convert object to primitive value");
1392
1392
  }
@@ -1838,7 +1838,7 @@ objectPropertyIsEnumerable.f = NASHORN_BUG ? function propertyIsEnumerable(V) {
1838
1838
  } : $propertyIsEnumerable;
1839
1839
 
1840
1840
  var DESCRIPTORS$d = descriptors;
1841
- var call$j = functionCall;
1841
+ var call$k = functionCall;
1842
1842
  var propertyIsEnumerableModule$1 = objectPropertyIsEnumerable;
1843
1843
  var createPropertyDescriptor$3 = createPropertyDescriptor$5;
1844
1844
  var toIndexedObject$1 = toIndexedObject$5;
@@ -1857,7 +1857,7 @@ objectGetOwnPropertyDescriptor.f = DESCRIPTORS$d ? $getOwnPropertyDescriptor : f
1857
1857
  if (IE8_DOM_DEFINE) try {
1858
1858
  return $getOwnPropertyDescriptor(O, P);
1859
1859
  } catch (error) { /* empty */ }
1860
- if (hasOwn$a(O, P)) return createPropertyDescriptor$3(!call$j(propertyIsEnumerableModule$1.f, O, P), O[P]);
1860
+ if (hasOwn$a(O, P)) return createPropertyDescriptor$3(!call$k(propertyIsEnumerableModule$1.f, O, P), O[P]);
1861
1861
  };
1862
1862
 
1863
1863
  var makeBuiltIn$3 = {exports: {}};
@@ -1871,7 +1871,7 @@ var getDescriptor = DESCRIPTORS$c && Object.getOwnPropertyDescriptor;
1871
1871
 
1872
1872
  var EXISTS = hasOwn$9(FunctionPrototype$1, 'name');
1873
1873
  // additional protection from minified / mangled / dropped function names
1874
- var PROPER = EXISTS && (function something() { /* empty */ }).name === 'something';
1874
+ var PROPER = EXISTS && function something() { /* empty */ }.name === 'something';
1875
1875
  var CONFIGURABLE = EXISTS && (!DESCRIPTORS$c || (DESCRIPTORS$c && getDescriptor(FunctionPrototype$1, 'name').configurable));
1876
1876
 
1877
1877
  var functionName = {
@@ -2270,7 +2270,7 @@ var objectSetPrototypeOf = Object.setPrototypeOf || ('__proto__' in {} ? functio
2270
2270
  }() : undefined);
2271
2271
 
2272
2272
  var $$l = _export;
2273
- var call$i = functionCall;
2273
+ var call$j = functionCall;
2274
2274
  var FunctionName = functionName;
2275
2275
  var isCallable$b = isCallable$o;
2276
2276
  var createIteratorConstructor$1 = iteratorCreateConstructor;
@@ -2342,7 +2342,7 @@ var iteratorDefine = function (Iterable, NAME, IteratorConstructor, next, DEFAUL
2342
2342
  createNonEnumerableProperty$2(IterablePrototype, 'name', VALUES);
2343
2343
  } else {
2344
2344
  INCORRECT_VALUES_NAME = true;
2345
- defaultIterator = function values() { return call$i(nativeIterator, this); };
2345
+ defaultIterator = function values() { return call$j(nativeIterator, this); };
2346
2346
  }
2347
2347
  }
2348
2348
 
@@ -2519,7 +2519,7 @@ handlePrototype(DOMTokenListPrototype, 'DOMTokenList');
2519
2519
 
2520
2520
  var DESCRIPTORS$9 = descriptors;
2521
2521
  var uncurryThis$k = functionUncurryThis;
2522
- var call$h = functionCall;
2522
+ var call$i = functionCall;
2523
2523
  var fails$f = fails$q;
2524
2524
  var objectKeys = objectKeys$2;
2525
2525
  var getOwnPropertySymbolsModule = objectGetOwnPropertySymbols;
@@ -2570,7 +2570,7 @@ var objectAssign = !$assign || fails$f(function () {
2570
2570
  var key;
2571
2571
  while (length > j) {
2572
2572
  key = keys[j++];
2573
- if (!DESCRIPTORS$9 || call$h(propertyIsEnumerable, S, key)) T[key] = S[key];
2573
+ if (!DESCRIPTORS$9 || call$i(propertyIsEnumerable, S, key)) T[key] = S[key];
2574
2574
  }
2575
2575
  } return T;
2576
2576
  } : $assign;
@@ -2617,32 +2617,32 @@ const AreaFilter = ({
2617
2617
  id: `tile_${webmapUtils.generateLayerId()}`
2618
2618
  };
2619
2619
  }, [tileURL, tileLicense]);
2620
- return jsx(Box, {
2620
+ return /*#__PURE__*/jsx(Box, {
2621
2621
  style: {
2622
2622
  width: '100%',
2623
2623
  paddingLeft: 12,
2624
2624
  paddingRight: 12
2625
2625
  },
2626
- children: jsx(Box, {
2626
+ children: /*#__PURE__*/jsx(Box, {
2627
2627
  style: {
2628
2628
  height: '190px',
2629
2629
  width: '100%'
2630
2630
  },
2631
- children: jsxs(OpenLayersMapView, Object.assign({}, props, {
2632
- children: [jsx(MapControls, {
2631
+ children: /*#__PURE__*/jsxs(OpenLayersMapView, Object.assign({}, props, {
2632
+ children: [/*#__PURE__*/jsx(MapControls, {
2633
2633
  style: {
2634
2634
  top: 0
2635
2635
  },
2636
- children: jsx(OpenLayersZoomControl, {
2636
+ children: /*#__PURE__*/jsx(OpenLayersZoomControl, {
2637
2637
  homeExtent: worldBbox
2638
2638
  })
2639
- }), !!feature && jsx(OpenLayersFeatureLayer, {
2639
+ }), !!feature && /*#__PURE__*/jsx(OpenLayersFeatureLayer, {
2640
2640
  featureCollection: {
2641
2641
  type: 'FeatureCollection',
2642
2642
  features: [feature]
2643
2643
  },
2644
2644
  style: genericOpenLayersFeatureStyle
2645
- }), jsx(OpenLayersLayer, Object.assign({}, baseLayer)), jsx(Box, {
2645
+ }), /*#__PURE__*/jsx(OpenLayersLayer, Object.assign({}, baseLayer)), /*#__PURE__*/jsx(Box, {
2646
2646
  "data-testid": "area-filter-tile-license",
2647
2647
  sx: {
2648
2648
  zIndex: 10,
@@ -2651,7 +2651,7 @@ const AreaFilter = ({
2651
2651
  left: '6px',
2652
2652
  position: 'absolute'
2653
2653
  },
2654
- children: jsx(Typography, {
2654
+ children: /*#__PURE__*/jsx(Typography, {
2655
2655
  "data-testid": "area-filter-tile-license-typography",
2656
2656
  sx: {
2657
2657
  fontSize: 9,
@@ -2694,7 +2694,7 @@ const AreaFilterLocationSearch = ({
2694
2694
  }
2695
2695
  _onSelectLocation(selectedValue ? locationDetail : undefined);
2696
2696
  }, [locationDetail, _onSelectLocation, selectedValue, isFetchingDetail]);
2697
- return jsx(Box, {
2697
+ return /*#__PURE__*/jsx(Box, {
2698
2698
  sx: {
2699
2699
  display: 'flex',
2700
2700
  flexDirection: 'row',
@@ -2704,7 +2704,7 @@ const AreaFilterLocationSearch = ({
2704
2704
  width: '100%',
2705
2705
  padding: '0px 12px'
2706
2706
  },
2707
- children: jsx(Autocomplete, {
2707
+ children: /*#__PURE__*/jsx(Autocomplete, {
2708
2708
  clearIcon: null,
2709
2709
  disablePortal: true,
2710
2710
  filterOptions: x => x,
@@ -2721,7 +2721,7 @@ const AreaFilterLocationSearch = ({
2721
2721
  },
2722
2722
  options: locationListData || [],
2723
2723
  popupIcon: null,
2724
- renderInput: params => jsx(TextField, Object.assign({}, params, {
2724
+ renderInput: params => /*#__PURE__*/jsx(TextField, Object.assign({}, params, {
2725
2725
  autoFocus: true,
2726
2726
  "data-testid": "area-filter-location-search",
2727
2727
  fullWidth: true,
@@ -2735,7 +2735,7 @@ const AreaFilterLocationSearch = ({
2735
2735
  size: "medium",
2736
2736
  slotProps: {
2737
2737
  input: Object.assign({}, params.InputProps, {
2738
- endAdornment: jsx(CustomIconButton, {
2738
+ endAdornment: /*#__PURE__*/jsx(CustomIconButton, {
2739
2739
  onClick: () => {
2740
2740
  setInputValue('');
2741
2741
  setSelectedValue(null);
@@ -2744,7 +2744,7 @@ const AreaFilterLocationSearch = ({
2744
2744
  marginRight: 1
2745
2745
  },
2746
2746
  tooltipTitle: t('search-clear'),
2747
- children: jsx(Close, {})
2747
+ children: /*#__PURE__*/jsx(Close, {})
2748
2748
  })
2749
2749
  })
2750
2750
  },
@@ -2795,6 +2795,7 @@ const AreaFilterLocationSearch = ({
2795
2795
  * Copyright 2025 - Finnish Meteorological Institute (FMI)
2796
2796
  * Copyright 2025 - The Norwegian Meteorological Institute (MET Norway)
2797
2797
  * */
2798
+
2798
2799
  const getDataExplorerState = state => {
2799
2800
  return state.dataExplorer;
2800
2801
  };
@@ -2827,15 +2828,16 @@ const getMeteogateOnly = createSelector(getDataExplorerState, store => Boolean(s
2827
2828
  * Copyright 2025 - Finnish Meteorological Institute (FMI)
2828
2829
  * Copyright 2025 - The Norwegian Meteorological Institute (MET Norway)
2829
2830
  * */
2830
- var DatasetFormat;
2831
- (function (DatasetFormat) {
2831
+
2832
+ let DatasetFormat = /*#__PURE__*/function (DatasetFormat) {
2832
2833
  DatasetFormat["WMS"] = "WMS";
2833
2834
  DatasetFormat["GeoJSON"] = "GeoJSON";
2834
- })(DatasetFormat || (DatasetFormat = {}));
2835
+ return DatasetFormat;
2836
+ }({});
2835
2837
 
2836
2838
  var types = /*#__PURE__*/Object.freeze({
2837
2839
  __proto__: null,
2838
- get DatasetFormat () { return DatasetFormat; }
2840
+ DatasetFormat: DatasetFormat
2839
2841
  });
2840
2842
 
2841
2843
  var $$j = _export;
@@ -2849,9 +2851,15 @@ var BROKEN_ON_SPARSE = fails$e(function () {
2849
2851
  return !Array(1).includes();
2850
2852
  });
2851
2853
 
2854
+ // Safari 26.4- bug
2855
+ var BROKEN_ON_SPARSE_WITH_FROM_INDEX = fails$e(function () {
2856
+ // eslint-disable-next-line no-sparse-arrays, es/no-array-prototype-includes -- detection
2857
+ return [, 1].includes(undefined, 1);
2858
+ });
2859
+
2852
2860
  // `Array.prototype.includes` method
2853
2861
  // https://tc39.es/ecma262/#sec-array.prototype.includes
2854
- $$j({ target: 'Array', proto: true, forced: BROKEN_ON_SPARSE }, {
2862
+ $$j({ target: 'Array', proto: true, forced: BROKEN_ON_SPARSE || BROKEN_ON_SPARSE_WITH_FROM_INDEX }, {
2855
2863
  includes: function includes(el /* , fromIndex = 0 */) {
2856
2864
  return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);
2857
2865
  }
@@ -2900,14 +2908,14 @@ var $TypeError$9 = TypeError;
2900
2908
  var MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF; // 2 ** 53 - 1 == 9007199254740991
2901
2909
 
2902
2910
  var doesNotExceedSafeInteger$2 = function (it) {
2903
- if (it > MAX_SAFE_INTEGER) throw $TypeError$9('Maximum allowed index exceeded');
2911
+ if (it > MAX_SAFE_INTEGER) throw new $TypeError$9('Maximum allowed index exceeded');
2904
2912
  return it;
2905
2913
  };
2906
2914
 
2907
2915
  var $$i = _export;
2908
2916
  var toObject$5 = toObject$9;
2909
2917
  var lengthOfArrayLike$6 = lengthOfArrayLike$8;
2910
- var setArrayLength = arraySetLength;
2918
+ var setArrayLength$1 = arraySetLength;
2911
2919
  var doesNotExceedSafeInteger$1 = doesNotExceedSafeInteger$2;
2912
2920
  var fails$d = fails$q;
2913
2921
 
@@ -2941,7 +2949,7 @@ $$i({ target: 'Array', proto: true, arity: 1, forced: FORCED$1 }, {
2941
2949
  O[len] = arguments[i];
2942
2950
  len++;
2943
2951
  }
2944
- setArrayLength(O, len);
2952
+ setArrayLength$1(O, len);
2945
2953
  return len;
2946
2954
  }
2947
2955
  });
@@ -2973,7 +2981,7 @@ var wellKnownSymbol$d = wellKnownSymbol$l;
2973
2981
 
2974
2982
  var TO_STRING_TAG$1 = wellKnownSymbol$d('toStringTag');
2975
2983
  var test$1 = {};
2976
-
2984
+ // eslint-disable-next-line unicorn/no-immediate-mutation -- ES3 syntax limitation
2977
2985
  test$1[TO_STRING_TAG$1] = 'z';
2978
2986
 
2979
2987
  var toStringTagSupport = String(test$1) === '[object z]';
@@ -3040,13 +3048,13 @@ var requireObjectCoercible$4 = requireObjectCoercible$8;
3040
3048
  var toString$b = toString$c;
3041
3049
  var correctIsRegExpLogic$1 = correctIsRegexpLogic;
3042
3050
 
3043
- var stringIndexOf$1 = uncurryThis$j(''.indexOf);
3051
+ var stringIndexOf$2 = uncurryThis$j(''.indexOf);
3044
3052
 
3045
3053
  // `String.prototype.includes` method
3046
3054
  // https://tc39.es/ecma262/#sec-string.prototype.includes
3047
3055
  $$h({ target: 'String', proto: true, forced: !correctIsRegExpLogic$1('includes') }, {
3048
3056
  includes: function includes(searchString /* , position = 0 */) {
3049
- return !!~stringIndexOf$1(
3057
+ return !!~stringIndexOf$2(
3050
3058
  toString$b(requireObjectCoercible$4(this)),
3051
3059
  toString$b(notARegExp$1(searchString)),
3052
3060
  arguments.length > 1 ? arguments[1] : undefined
@@ -3111,6 +3119,7 @@ const slice = createSlice({
3111
3119
  } = action.payload;
3112
3120
  const isSelected = draft.filters.concepts.find(concept => concept.id === id).selected;
3113
3121
  let newValue = !isSelected;
3122
+
3114
3123
  // If All is clicked, always select it. Deselect all others
3115
3124
  if (id === 'all') {
3116
3125
  newValue = true;
@@ -3125,6 +3134,7 @@ const slice = createSlice({
3125
3134
  draft.filters.concepts.find(concept => concept.id === 'all').selected = false;
3126
3135
  }
3127
3136
  draft.filters.concepts.find(concept => concept.id === id).selected = newValue;
3137
+
3128
3138
  // If all concepts have been deselected, select All
3129
3139
  if (draft.filters.concepts.every(concept => !concept.selected)) {
3130
3140
  draft.filters.concepts.find(concept => concept.id === 'all').selected = true;
@@ -3194,6 +3204,7 @@ const {
3194
3204
  * Copyright 2025 - Finnish Meteorological Institute (FMI)
3195
3205
  * Copyright 2025 - The Norwegian Meteorological Institute (MET Norway)
3196
3206
  * */
3207
+
3197
3208
  const dataExplorerListener = createListenerMiddleware();
3198
3209
 
3199
3210
  /* *
@@ -3213,6 +3224,7 @@ const dataExplorerListener = createListenerMiddleware();
3213
3224
  * Copyright 2025 - Finnish Meteorological Institute (FMI)
3214
3225
  * Copyright 2025 - The Norwegian Meteorological Institute (MET Norway)
3215
3226
  * */
3227
+
3216
3228
  const dataExplorerReducersMap = {
3217
3229
  webmap: mapReducer,
3218
3230
  services: serviceReducer,
@@ -3230,6 +3242,7 @@ const initialView = {
3230
3242
  zoom: 0,
3231
3243
  center: [0, 0]
3232
3244
  };
3245
+
3233
3246
  // Normalize longitude values so that they are between -180 and 180 degrees
3234
3247
  const normalizeLongitude$1 = lon => {
3235
3248
  let normalized = lon;
@@ -3259,6 +3272,7 @@ const AreaFilterConnect = () => {
3259
3272
  } else {
3260
3273
  const extent = view.current.calculateExtent();
3261
3274
  const transformedExtent = transformExtent(extent, view.current.getProjection(), 'EPSG:4326');
3275
+
3262
3276
  // The map can be panned left or right beyond the -180/180 longitude range, so values need to be normalized
3263
3277
  transformedExtent[0] = normalizeLongitude$1(transformedExtent[0]);
3264
3278
  transformedExtent[2] = normalizeLongitude$1(transformedExtent[2]);
@@ -3308,10 +3322,10 @@ const AreaFilterConnect = () => {
3308
3322
  setFeature(undefined);
3309
3323
  }
3310
3324
  }, [selectedLocation, view]);
3311
- return jsxs(Fragment, {
3312
- children: [jsx(AreaFilterLocationSearch, {
3325
+ return /*#__PURE__*/jsxs(Fragment, {
3326
+ children: [/*#__PURE__*/jsx(AreaFilterLocationSearch, {
3313
3327
  onSelectLocation: selectLocation
3314
- }), jsx(AreaFilter, {
3328
+ }), /*#__PURE__*/jsx(AreaFilter, {
3315
3329
  feature: feature,
3316
3330
  tileLicense: tileLicense,
3317
3331
  tileURL: tileURL,
@@ -3331,6 +3345,7 @@ const getLocationProperties = (location, view) => {
3331
3345
  return props;
3332
3346
  }
3333
3347
  }
3348
+
3334
3349
  // Fall back to only the coordinates and the current resolution if there is no bbox or geometry
3335
3350
  const coords = [location.lon, location.lat];
3336
3351
  const center = coords;
@@ -3445,7 +3460,7 @@ var regexpFlags$1 = function () {
3445
3460
  return result;
3446
3461
  };
3447
3462
 
3448
- var call$g = functionCall;
3463
+ var call$h = functionCall;
3449
3464
  var hasOwn$4 = hasOwnProperty_1;
3450
3465
  var isPrototypeOf$3 = objectIsPrototypeOf;
3451
3466
  var regExpFlagsDetection = regexpFlagsDetection;
@@ -3457,7 +3472,7 @@ var regexpGetFlags = regExpFlagsDetection.correct ? function (it) {
3457
3472
  return it.flags;
3458
3473
  } : function (it) {
3459
3474
  return (!regExpFlagsDetection.correct && isPrototypeOf$3(RegExpPrototype$2, it) && !hasOwn$4(it, 'flags'))
3460
- ? call$g(regExpFlagsGetterImplementation, it)
3475
+ ? call$h(regExpFlagsGetterImplementation, it)
3461
3476
  : it.flags;
3462
3477
  };
3463
3478
 
@@ -3466,7 +3481,7 @@ var defineBuiltIn$8 = defineBuiltIn$c;
3466
3481
  var anObject$b = anObject$h;
3467
3482
  var $toString$2 = toString$c;
3468
3483
  var fails$b = fails$q;
3469
- var getRegExpFlags$1 = regexpGetFlags;
3484
+ var getRegExpFlags$2 = regexpGetFlags;
3470
3485
 
3471
3486
  var TO_STRING = 'toString';
3472
3487
  var RegExpPrototype$1 = RegExp.prototype;
@@ -3482,7 +3497,7 @@ if (NOT_GENERIC || INCORRECT_NAME) {
3482
3497
  defineBuiltIn$8(RegExpPrototype$1, TO_STRING, function toString() {
3483
3498
  var R = anObject$b(this);
3484
3499
  var pattern = $toString$2(R.source);
3485
- var flags = $toString$2(getRegExpFlags$1(R));
3500
+ var flags = $toString$2(getRegExpFlags$2(R));
3486
3501
  return '/' + pattern + '/' + flags;
3487
3502
  }, { unsafe: true });
3488
3503
  }
@@ -3513,10 +3528,10 @@ const ConceptChip = ({
3513
3528
  } = useTheme();
3514
3529
  const chip = concept.id;
3515
3530
  const translatedLabel = t(concept.label);
3516
- return jsx(CustomTooltip, {
3531
+ return /*#__PURE__*/jsx(CustomTooltip, {
3517
3532
  title: translatedLabel,
3518
- children: jsx("span", {
3519
- children: jsx(CustomToggleButton, {
3533
+ children: /*#__PURE__*/jsx("span", {
3534
+ children: /*#__PURE__*/jsx(CustomToggleButton, {
3520
3535
  "data-testid": `conceptChip-${concept.id}-${isInSearch ? 'inSearch' : 'default'}`,
3521
3536
  disabled: isDisabled,
3522
3537
  onClick: () => toggleChip(chip),
@@ -3540,6 +3555,24 @@ const ConceptChip = ({
3540
3555
  });
3541
3556
  };
3542
3557
 
3558
+ /* *
3559
+ * Licensed under the Apache License, Version 2.0 (the "License");
3560
+ * you may not use this file except in compliance with the License.
3561
+ * You may obtain a copy of the License at
3562
+ *
3563
+ * http://www.apache.org/licenses/LICENSE-2.0
3564
+ *
3565
+ * Unless required by applicable law or agreed to in writing, software
3566
+ * distributed under the License is distributed on an "AS IS" BASIS,
3567
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
3568
+ * See the License for the specific language governing permissions and
3569
+ * limitations under the License.
3570
+ *
3571
+ * Copyright 2025 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
3572
+ * Copyright 2025 - Finnish Meteorological Institute (FMI)
3573
+ * Copyright 2025 - The Norwegian Meteorological Institute (MET Norway)
3574
+ * */
3575
+
3543
3576
  const ConceptChipConnect = ({
3544
3577
  concept,
3545
3578
  isInSearch
@@ -3550,7 +3583,7 @@ const ConceptChipConnect = ({
3550
3583
  id: concept.id
3551
3584
  }));
3552
3585
  };
3553
- return jsx(ConceptChip, {
3586
+ return /*#__PURE__*/jsx(ConceptChip, {
3554
3587
  concept: concept,
3555
3588
  isInSearch: isInSearch,
3556
3589
  toggleChip: toggleChip
@@ -3561,13 +3594,13 @@ const ConceptList = ({
3561
3594
  concepts,
3562
3595
  datasetConcepts
3563
3596
  }) => {
3564
- return jsx(Box, {
3597
+ return /*#__PURE__*/jsx(Box, {
3565
3598
  "data-testid": "conceptList",
3566
3599
  sx: {
3567
3600
  width: '100%',
3568
3601
  overflowX: 'auto'
3569
3602
  },
3570
- children: jsx(Box, {
3603
+ children: /*#__PURE__*/jsx(Box, {
3571
3604
  sx: {
3572
3605
  display: 'flex',
3573
3606
  alignItems: 'center',
@@ -3579,7 +3612,7 @@ const ConceptList = ({
3579
3612
  marginRight: '18px'
3580
3613
  },
3581
3614
  children: concepts.map(concept => {
3582
- return jsx(ConceptChipConnect, {
3615
+ return /*#__PURE__*/jsx(ConceptChipConnect, {
3583
3616
  concept: concept,
3584
3617
  isInSearch: datasetConcepts.includes(concept.id)
3585
3618
  }, concept.id);
@@ -3740,7 +3773,9 @@ var getSortCompare = function (comparefn) {
3740
3773
  if (y === undefined) return -1;
3741
3774
  if (x === undefined) return 1;
3742
3775
  if (comparefn !== undefined) return +comparefn(x, y) || 0;
3743
- return toString$a(x) > toString$a(y) ? 1 : -1;
3776
+ var xString = toString$a(x);
3777
+ var yString = toString$a(y);
3778
+ return xString === yString ? 0 : xString > yString ? 1 : -1;
3744
3779
  };
3745
3780
  };
3746
3781
 
@@ -3921,11 +3956,11 @@ var NATIVE_BIND$1 = functionBindNative;
3921
3956
 
3922
3957
  var FunctionPrototype = Function.prototype;
3923
3958
  var apply$2 = FunctionPrototype.apply;
3924
- var call$f = FunctionPrototype.call;
3959
+ var call$g = FunctionPrototype.call;
3925
3960
 
3926
3961
  // eslint-disable-next-line es/no-function-prototype-bind, es/no-reflect -- safe
3927
- var functionApply = typeof Reflect == 'object' && Reflect.apply || (NATIVE_BIND$1 ? call$f.bind(apply$2) : function () {
3928
- return call$f.apply(apply$2, arguments);
3962
+ var functionApply = typeof Reflect == 'object' && Reflect.apply || (NATIVE_BIND$1 ? call$g.bind(apply$2) : function () {
3963
+ return call$g.apply(apply$2, arguments);
3929
3964
  });
3930
3965
 
3931
3966
  var classofRaw = classofRaw$2;
@@ -3961,8 +3996,7 @@ var validateArgumentsLength$5 = function (passed, required) {
3961
3996
 
3962
3997
  var userAgent$2 = environmentUserAgent;
3963
3998
 
3964
- // eslint-disable-next-line redos/no-vulnerable -- safe
3965
- var environmentIsIos = /(?:ipad|iphone|ipod).*applewebkit/i.test(userAgent$2);
3999
+ var environmentIsIos = /ipad|iphone|ipod/i.test(userAgent$2) && /applewebkit/i.test(userAgent$2);
3966
4000
 
3967
4001
  var globalThis$c = globalThis_1;
3968
4002
  var apply$1 = functionApply;
@@ -4294,7 +4328,7 @@ var $$f = _export;
4294
4328
  var IS_NODE = environmentIsNode;
4295
4329
  var globalThis$7 = globalThis_1;
4296
4330
  var path = path$1;
4297
- var call$e = functionCall;
4331
+ var call$f = functionCall;
4298
4332
  var defineBuiltIn$7 = defineBuiltIn$c;
4299
4333
  var setPrototypeOf = objectSetPrototypeOf;
4300
4334
  var setToStringTag$2 = setToStringTag$6;
@@ -4372,7 +4406,7 @@ var callReaction = function (reaction, state) {
4372
4406
  if (result === reaction.promise) {
4373
4407
  reject(new TypeError$3('Promise-chain cycle'));
4374
4408
  } else if (then = isThenable(result)) {
4375
- call$e(then, result, resolve, reject);
4409
+ call$f(then, result, resolve, reject);
4376
4410
  } else resolve(result);
4377
4411
  } else reject(value);
4378
4412
  } catch (error) {
@@ -4409,7 +4443,7 @@ var dispatchEvent = function (name, promise, reason) {
4409
4443
  };
4410
4444
 
4411
4445
  var onUnhandled = function (state) {
4412
- call$e(task, globalThis$7, function () {
4446
+ call$f(task, globalThis$7, function () {
4413
4447
  var promise = state.facade;
4414
4448
  var value = state.value;
4415
4449
  var IS_UNHANDLED = isUnhandled(state);
@@ -4432,7 +4466,7 @@ var isUnhandled = function (state) {
4432
4466
  };
4433
4467
 
4434
4468
  var onHandleUnhandled = function (state) {
4435
- call$e(task, globalThis$7, function () {
4469
+ call$f(task, globalThis$7, function () {
4436
4470
  var promise = state.facade;
4437
4471
  if (IS_NODE) {
4438
4472
  process.emit('rejectionHandled', promise);
@@ -4466,7 +4500,7 @@ var internalResolve = function (state, value, unwrap) {
4466
4500
  microtask(function () {
4467
4501
  var wrapper = { done: false };
4468
4502
  try {
4469
- call$e(then, value,
4503
+ call$f(then, value,
4470
4504
  bind$5(internalResolve, wrapper, state),
4471
4505
  bind$5(internalReject, wrapper, state)
4472
4506
  );
@@ -4490,7 +4524,7 @@ if (FORCED_PROMISE_CONSTRUCTOR$4) {
4490
4524
  PromiseConstructor = function Promise(executor) {
4491
4525
  anInstance$2(this, PromisePrototype);
4492
4526
  aCallable$4(executor);
4493
- call$e(Internal, this);
4527
+ call$f(Internal, this);
4494
4528
  var state = getInternalPromiseState(this);
4495
4529
  try {
4496
4530
  executor(bind$5(internalResolve, state), bind$5(internalReject, state));
@@ -4553,7 +4587,7 @@ if (FORCED_PROMISE_CONSTRUCTOR$4) {
4553
4587
  defineBuiltIn$7(NativePromisePrototype$1, 'then', function then(onFulfilled, onRejected) {
4554
4588
  var that = this;
4555
4589
  return new PromiseConstructor(function (resolve, reject) {
4556
- call$e(nativeThen, that, resolve, reject);
4590
+ call$f(nativeThen, that, resolve, reject);
4557
4591
  }).then(onFulfilled, onRejected);
4558
4592
  // https://github.com/zloirock/core-js/issues/640
4559
4593
  }, { unsafe: true });
@@ -4607,7 +4641,7 @@ var getIteratorMethod$4 = function (it) {
4607
4641
  || Iterators[classof$2(it)];
4608
4642
  };
4609
4643
 
4610
- var call$d = functionCall;
4644
+ var call$e = functionCall;
4611
4645
  var aCallable$3 = aCallable$a;
4612
4646
  var anObject$9 = anObject$h;
4613
4647
  var tryToString$1 = tryToString$5;
@@ -4617,15 +4651,15 @@ var $TypeError$2 = TypeError;
4617
4651
 
4618
4652
  var getIterator$3 = function (argument, usingIterator) {
4619
4653
  var iteratorMethod = arguments.length < 2 ? getIteratorMethod$3(argument) : usingIterator;
4620
- if (aCallable$3(iteratorMethod)) return anObject$9(call$d(iteratorMethod, argument));
4654
+ if (aCallable$3(iteratorMethod)) return anObject$9(call$e(iteratorMethod, argument));
4621
4655
  throw new $TypeError$2(tryToString$1(argument) + ' is not iterable');
4622
4656
  };
4623
4657
 
4624
- var call$c = functionCall;
4658
+ var call$d = functionCall;
4625
4659
  var anObject$8 = anObject$h;
4626
4660
  var getMethod$2 = getMethod$5;
4627
4661
 
4628
- var iteratorClose$2 = function (iterator, kind, value) {
4662
+ var iteratorClose$3 = function (iterator, kind, value) {
4629
4663
  var innerResult, innerError;
4630
4664
  anObject$8(iterator);
4631
4665
  try {
@@ -4634,7 +4668,7 @@ var iteratorClose$2 = function (iterator, kind, value) {
4634
4668
  if (kind === 'throw') throw value;
4635
4669
  return value;
4636
4670
  }
4637
- innerResult = call$c(innerResult, iterator);
4671
+ innerResult = call$d(innerResult, iterator);
4638
4672
  } catch (error) {
4639
4673
  innerError = true;
4640
4674
  innerResult = error;
@@ -4646,7 +4680,7 @@ var iteratorClose$2 = function (iterator, kind, value) {
4646
4680
  };
4647
4681
 
4648
4682
  var bind$4 = functionBindContext;
4649
- var call$b = functionCall;
4683
+ var call$c = functionCall;
4650
4684
  var anObject$7 = anObject$h;
4651
4685
  var tryToString = tryToString$5;
4652
4686
  var isArrayIteratorMethod$1 = isArrayIteratorMethod$2;
@@ -4654,7 +4688,7 @@ var lengthOfArrayLike$4 = lengthOfArrayLike$8;
4654
4688
  var isPrototypeOf$1 = objectIsPrototypeOf;
4655
4689
  var getIterator$2 = getIterator$3;
4656
4690
  var getIteratorMethod$2 = getIteratorMethod$4;
4657
- var iteratorClose$1 = iteratorClose$2;
4691
+ var iteratorClose$2 = iteratorClose$3;
4658
4692
 
4659
4693
  var $TypeError$1 = TypeError;
4660
4694
 
@@ -4675,7 +4709,9 @@ var iterate$2 = function (iterable, unboundFunction, options) {
4675
4709
  var iterator, iterFn, index, length, result, next, step;
4676
4710
 
4677
4711
  var stop = function (condition) {
4678
- if (iterator) iteratorClose$1(iterator, 'normal');
4712
+ var $iterator = iterator;
4713
+ iterator = undefined;
4714
+ if ($iterator) iteratorClose$2($iterator, 'normal');
4679
4715
  return new Result(true, condition);
4680
4716
  };
4681
4717
 
@@ -4704,11 +4740,14 @@ var iterate$2 = function (iterable, unboundFunction, options) {
4704
4740
  }
4705
4741
 
4706
4742
  next = IS_RECORD ? iterable.next : iterator.next;
4707
- while (!(step = call$b(next, iterator)).done) {
4743
+ while (!(step = call$c(next, iterator)).done) {
4744
+ // `IteratorValue` errors should propagate without closing the iterator
4745
+ var value = step.value;
4708
4746
  try {
4709
- result = callFn(step.value);
4747
+ result = callFn(value);
4710
4748
  } catch (error) {
4711
- iteratorClose$1(iterator, 'throw', error);
4749
+ if (iterator) iteratorClose$2(iterator, 'throw', error);
4750
+ else throw error;
4712
4751
  }
4713
4752
  if (typeof result == 'object' && result && isPrototypeOf$1(ResultPrototype, result)) return result;
4714
4753
  } return new Result(false);
@@ -4729,6 +4768,7 @@ try {
4729
4768
  SAFE_CLOSING = true;
4730
4769
  }
4731
4770
  };
4771
+ // eslint-disable-next-line unicorn/no-immediate-mutation -- ES3 syntax limitation
4732
4772
  iteratorWithReturn[ITERATOR$2] = function () {
4733
4773
  return this;
4734
4774
  };
@@ -4743,6 +4783,7 @@ var checkCorrectnessOfIteration$1 = function (exec, SKIP_CLOSING) {
4743
4783
  var ITERATION_SUPPORT = false;
4744
4784
  try {
4745
4785
  var object = {};
4786
+ // eslint-disable-next-line unicorn/no-immediate-mutation -- ES3 syntax limitation
4746
4787
  object[ITERATOR$2] = function () {
4747
4788
  return {
4748
4789
  next: function () {
@@ -4764,7 +4805,7 @@ var promiseStaticsIncorrectIteration = FORCED_PROMISE_CONSTRUCTOR$3 || !checkCor
4764
4805
  });
4765
4806
 
4766
4807
  var $$e = _export;
4767
- var call$a = functionCall;
4808
+ var call$b = functionCall;
4768
4809
  var aCallable$2 = aCallable$a;
4769
4810
  var newPromiseCapabilityModule$2 = newPromiseCapability$2;
4770
4811
  var perform$1 = perform$3;
@@ -4788,7 +4829,7 @@ $$e({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION
4788
4829
  var index = counter++;
4789
4830
  var alreadyCalled = false;
4790
4831
  remaining++;
4791
- call$a($promiseResolve, C, promise).then(function (value) {
4832
+ call$b($promiseResolve, C, promise).then(function (value) {
4792
4833
  if (alreadyCalled) return;
4793
4834
  alreadyCalled = true;
4794
4835
  values[index] = value;
@@ -4828,7 +4869,7 @@ if (isCallable$5(NativePromiseConstructor)) {
4828
4869
  }
4829
4870
 
4830
4871
  var $$c = _export;
4831
- var call$9 = functionCall;
4872
+ var call$a = functionCall;
4832
4873
  var aCallable$1 = aCallable$a;
4833
4874
  var newPromiseCapabilityModule$1 = newPromiseCapability$2;
4834
4875
  var perform = perform$3;
@@ -4845,7 +4886,7 @@ $$c({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION
4845
4886
  var result = perform(function () {
4846
4887
  var $promiseResolve = aCallable$1(C.resolve);
4847
4888
  iterate(iterable, function (promise) {
4848
- call$9($promiseResolve, C, promise).then(capability.resolve, reject);
4889
+ call$a($promiseResolve, C, promise).then(capability.resolve, reject);
4849
4890
  });
4850
4891
  });
4851
4892
  if (result.error) reject(result.value);
@@ -4979,7 +5020,6 @@ const useFetchItem = (baseUrl, datasetId) => {
4979
5020
  });
4980
5021
  };
4981
5022
 
4982
- // Get the concept ids that are included in the displayed datasets
4983
5023
  const getConceptIdsInDatasets = (concepts, datasets) => {
4984
5024
  const shownConceptIds = concepts.map(concept => concept.id);
4985
5025
  const foundConceptIds = new Set();
@@ -5014,16 +5054,26 @@ const ConceptListConnect = () => {
5014
5054
  }
5015
5055
  return [];
5016
5056
  }, [loading, concepts, datasets, searchFilter, queryables, bbox]);
5017
- return jsx(ConceptList, {
5057
+ return /*#__PURE__*/jsx(ConceptList, {
5018
5058
  concepts: concepts,
5019
5059
  datasetConcepts: datasetConcepts
5020
5060
  });
5021
5061
  };
5022
5062
 
5063
+ var DESCRIPTORS$5 = descriptors;
5064
+ var definePropertyModule = objectDefineProperty;
5065
+ var createPropertyDescriptor$1 = createPropertyDescriptor$5;
5066
+
5067
+ var createProperty$2 = function (object, key, value) {
5068
+ if (DESCRIPTORS$5) definePropertyModule.f(object, key, createPropertyDescriptor$1(0, value));
5069
+ else object[key] = value;
5070
+ };
5071
+
5023
5072
  var isArray$1 = isArray$3;
5024
5073
  var lengthOfArrayLike$3 = lengthOfArrayLike$8;
5025
5074
  var doesNotExceedSafeInteger = doesNotExceedSafeInteger$2;
5026
5075
  var bind$3 = functionBindContext;
5076
+ var createProperty$1 = createProperty$2;
5027
5077
 
5028
5078
  // `FlattenIntoArray` abstract operation
5029
5079
  // https://tc39.es/ecma262/#sec-flattenintoarray
@@ -5042,7 +5092,7 @@ var flattenIntoArray$2 = function (target, original, source, sourceLen, start, d
5042
5092
  targetIndex = flattenIntoArray$2(target, original, element, elementLen, targetIndex, depth - 1) - 1;
5043
5093
  } else {
5044
5094
  doesNotExceedSafeInteger(targetIndex + 1);
5045
- target[targetIndex] = element;
5095
+ createProperty$1(target, targetIndex, element);
5046
5096
  }
5047
5097
 
5048
5098
  targetIndex++;
@@ -5099,8 +5149,9 @@ $$9({ target: 'Array', proto: true }, {
5099
5149
  var depthArg = arguments.length ? arguments[0] : undefined;
5100
5150
  var O = toObject$3(this);
5101
5151
  var sourceLen = lengthOfArrayLike$2(O);
5152
+ var depthNum = depthArg === undefined ? 1 : toIntegerOrInfinity$2(depthArg);
5102
5153
  var A = arraySpeciesCreate$1(O, 0);
5103
- A.length = flattenIntoArray$1(A, O, O, sourceLen, 0, depthArg === undefined ? 1 : toIntegerOrInfinity$2(depthArg));
5154
+ flattenIntoArray$1(A, O, O, sourceLen, 0, depthNum);
5104
5155
  return A;
5105
5156
  }
5106
5157
  });
@@ -5112,6 +5163,23 @@ var addToUnscopables$1 = addToUnscopables$4;
5112
5163
  // https://tc39.es/ecma262/#sec-array.prototype-@@unscopables
5113
5164
  addToUnscopables$1('flat');
5114
5165
 
5166
+ /* *
5167
+ * Licensed under the Apache License, Version 2.0 (the "License");
5168
+ * you may not use this file except in compliance with the License.
5169
+ * You may obtain a copy of the License at
5170
+ *
5171
+ * http://www.apache.org/licenses/LICENSE-2.0
5172
+ *
5173
+ * Unless required by applicable law or agreed to in writing, software
5174
+ * distributed under the License is distributed on an "AS IS" BASIS,
5175
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
5176
+ * See the License for the specific language governing permissions and
5177
+ * limitations under the License.
5178
+ *
5179
+ * Copyright 2025 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
5180
+ * Copyright 2025 - Finnish Meteorological Institute (FMI)
5181
+ * Copyright 2025 - The Norwegian Meteorological Institute (MET Norway)
5182
+ * */
5115
5183
  const DataExplorerFilterOption = ({
5116
5184
  optionId,
5117
5185
  filterId,
@@ -5123,14 +5191,14 @@ const DataExplorerFilterOption = ({
5123
5191
  const {
5124
5192
  t
5125
5193
  } = useDataExplorerTranslation();
5126
- return jsx(ListItem, {
5194
+ return /*#__PURE__*/jsx(ListItem, {
5127
5195
  disablePadding: true,
5128
5196
  sx: {
5129
5197
  width: '100%',
5130
5198
  height: '100%',
5131
5199
  borderBottom: '1px solid #E0E0E0'
5132
5200
  },
5133
- children: jsxs(ListItemButton, {
5201
+ children: /*#__PURE__*/jsxs(ListItemButton, {
5134
5202
  disableGutters: true,
5135
5203
  onClick: () => onClick(!checked),
5136
5204
  role: undefined,
@@ -5138,11 +5206,11 @@ const DataExplorerFilterOption = ({
5138
5206
  padding: 0,
5139
5207
  height: '100%'
5140
5208
  },
5141
- children: [jsx(ListItemIcon, {
5209
+ children: [/*#__PURE__*/jsx(ListItemIcon, {
5142
5210
  sx: {
5143
5211
  width: '42px'
5144
5212
  },
5145
- children: jsx(Checkbox, {
5213
+ children: /*#__PURE__*/jsx(Checkbox, {
5146
5214
  checked: checked,
5147
5215
  "data-testid": `dataExplorerFilterOption-${optionId}`,
5148
5216
  disableRipple: true,
@@ -5155,11 +5223,11 @@ const DataExplorerFilterOption = ({
5155
5223
  },
5156
5224
  tabIndex: -1
5157
5225
  })
5158
- }), jsx(ListItemText, {
5226
+ }), /*#__PURE__*/jsx(ListItemText, {
5159
5227
  id: optionId,
5160
- primary: filterId === 'contacts.addresses.country' ? jsx(CustomTooltip, {
5228
+ primary: filterId === 'contacts.addresses.country' ? /*#__PURE__*/jsx(CustomTooltip, {
5161
5229
  title: t(value),
5162
- children: jsx(Typography, {
5230
+ children: /*#__PURE__*/jsx(Typography, {
5163
5231
  "data-testid": `dataExplorerFilterOptionValue-${value}`,
5164
5232
  sx: {
5165
5233
  float: 'left',
@@ -5171,9 +5239,9 @@ const DataExplorerFilterOption = ({
5171
5239
  },
5172
5240
  children: t(value)
5173
5241
  })
5174
- }) : jsx(CustomTooltip, {
5242
+ }) : /*#__PURE__*/jsx(CustomTooltip, {
5175
5243
  title: value,
5176
- children: jsx(Typography, {
5244
+ children: /*#__PURE__*/jsx(Typography, {
5177
5245
  sx: {
5178
5246
  float: 'left',
5179
5247
  fontSize: '12px',
@@ -5185,7 +5253,7 @@ const DataExplorerFilterOption = ({
5185
5253
  children: value
5186
5254
  })
5187
5255
  }),
5188
- secondary: jsx(Typography, {
5256
+ secondary: /*#__PURE__*/jsx(Typography, {
5189
5257
  sx: {
5190
5258
  float: 'right',
5191
5259
  fontSize: '12px',
@@ -5213,38 +5281,38 @@ const DataExplorerFilters = ({
5213
5281
  const toggleMeteoGateOnly = event => {
5214
5282
  onToggleMeteoGateOnly(event.target.checked);
5215
5283
  };
5216
- return jsxs(Box, {
5217
- children: [jsxs(Box, {
5284
+ return /*#__PURE__*/jsxs(Box, {
5285
+ children: [/*#__PURE__*/jsxs(Box, {
5218
5286
  sx: {
5219
5287
  marginLeft: '12px'
5220
5288
  },
5221
- children: [jsx(Switch, {
5289
+ children: [/*#__PURE__*/jsx(Switch, {
5222
5290
  checked: meteoGateOnly,
5223
5291
  onChange: toggleMeteoGateOnly,
5224
5292
  size: "small"
5225
- }), jsx(Typography, {
5293
+ }), /*#__PURE__*/jsx(Typography, {
5226
5294
  variant: "caption",
5227
5295
  children: t('dataexplorer-meteogate-only')
5228
5296
  })]
5229
- }), jsx(Typography, {
5297
+ }), /*#__PURE__*/jsx(Typography, {
5230
5298
  color: "textSecondary",
5231
5299
  sx: {
5232
5300
  marginLeft: '24px'
5233
5301
  },
5234
5302
  variant: "caption",
5235
5303
  children: t('dataexplorer-filters')
5236
- }), filters == null ? void 0 : filters.map(filter => filter.values.length > 0 && jsx(CustomAccordion, {
5304
+ }), filters == null ? void 0 : filters.map(filter => filter.values.length > 0 && /*#__PURE__*/jsx(CustomAccordion, {
5237
5305
  "data-testid": `dataExplorerFilter-${filter.id}`,
5238
5306
  defaultExpanded: false,
5239
5307
  detailsSx: {
5240
5308
  padding: '0px !important'
5241
5309
  },
5242
5310
  title: filter.selected.length > 0 ? `${t(filter.label)} (${filter.selected.length})` : t(filter.label),
5243
- children: jsx(List, {
5311
+ children: /*#__PURE__*/jsx(List, {
5244
5312
  sx: {
5245
5313
  padding: '0px'
5246
5314
  },
5247
- children: filter.values.map(value => jsx(DataExplorerFilterOption, {
5315
+ children: filter.values.map(value => /*#__PURE__*/jsx(DataExplorerFilterOption, {
5248
5316
  checked: filter.selected.includes(value.value),
5249
5317
  count: value.datasetCount,
5250
5318
  filterId: filter.id,
@@ -5262,6 +5330,7 @@ const DataExplorerFiltersConnect = () => {
5262
5330
  const baseUrl = useSelector(store => getDiscoveryCatalogueURL(store));
5263
5331
  const filters = useSelector(store => getQueryables(store));
5264
5332
  const queryableConfigurations = useSelector(store => getQueryableConfigurations(store));
5333
+
5265
5334
  // Use this to get the current filters in the hook without it being in the dependency array
5266
5335
  const filtersRef = useRef([]);
5267
5336
  const searchText = useSelector(store => getSearchFilter(store));
@@ -5305,13 +5374,14 @@ const DataExplorerFiltersConnect = () => {
5305
5374
  };
5306
5375
  updateDisplayedFilters();
5307
5376
  }, [filteringDatasets, dispatch, queryableConfigurations, t]);
5308
- return jsx(DataExplorerFilters, {
5377
+ return /*#__PURE__*/jsx(DataExplorerFilters, {
5309
5378
  filters: filters,
5310
5379
  meteoGateOnly: meteogateOnly,
5311
5380
  onSetFilterValue: setFilterValue,
5312
5381
  onToggleMeteoGateOnly: handleMeteoGateToggle
5313
5382
  });
5314
5383
  };
5384
+
5315
5385
  // Go through datasets to get the possible values for the queryable filter
5316
5386
  const getQueryableWithValues = (config, filteringDatasets, t, currentFilter) => {
5317
5387
  const queryable = {
@@ -5351,6 +5421,7 @@ const getQueryableWithValues = (config, filteringDatasets, t, currentFilter) =>
5351
5421
  }
5352
5422
  return -1;
5353
5423
  });
5424
+
5354
5425
  // Set the selected value to same as previously selected value
5355
5426
  if (currentFilter) {
5356
5427
  const previouslySelected = currentFilter.selected;
@@ -5377,6 +5448,24 @@ const getNestedProperty = (obj, path) => {
5377
5448
  return result;
5378
5449
  };
5379
5450
 
5451
+ /* *
5452
+ * Licensed under the Apache License, Version 2.0 (the "License");
5453
+ * you may not use this file except in compliance with the License.
5454
+ * You may obtain a copy of the License at
5455
+ *
5456
+ * http://www.apache.org/licenses/LICENSE-2.0
5457
+ *
5458
+ * Unless required by applicable law or agreed to in writing, software
5459
+ * distributed under the License is distributed on an "AS IS" BASIS,
5460
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
5461
+ * See the License for the specific language governing permissions and
5462
+ * limitations under the License.
5463
+ *
5464
+ * Copyright 2025 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
5465
+ * Copyright 2025 - Finnish Meteorological Institute (FMI)
5466
+ * Copyright 2025 - The Norwegian Meteorological Institute (MET Norway)
5467
+ * */
5468
+
5380
5469
  const DataExplorerSearchConnect = () => {
5381
5470
  const {
5382
5471
  t
@@ -5388,12 +5477,12 @@ const DataExplorerSearchConnect = () => {
5388
5477
  filterText
5389
5478
  }));
5390
5479
  };
5391
- return jsx(Box, {
5480
+ return /*#__PURE__*/jsx(Box, {
5392
5481
  "data-testid": "dataexplorerSearchBox",
5393
5482
  sx: {
5394
5483
  padding: '8px 24px 8px 24px'
5395
5484
  },
5396
- children: jsx(SearchField, {
5485
+ children: /*#__PURE__*/jsx(SearchField, {
5397
5486
  label: t('dataexplorer-search-datasets'),
5398
5487
  onOpenServicePopup: () => {},
5399
5488
  searchFilter: searchFilter,
@@ -5427,8 +5516,8 @@ $$8({ target: 'String', proto: true, forced: !MDN_POLYFILL_BUG && !CORRECT_IS_RE
5427
5516
  startsWith: function startsWith(searchString /* , position = 0 */) {
5428
5517
  var that = toString$9(requireObjectCoercible$3(this));
5429
5518
  notARegExp(searchString);
5430
- var index = toLength$2(min$2(arguments.length > 1 ? arguments[1] : undefined, that.length));
5431
5519
  var search = toString$9(searchString);
5520
+ var index = toLength$2(min$2(arguments.length > 1 ? arguments[1] : undefined, that.length));
5432
5521
  return stringSlice$8(that, index, index + search.length) === search;
5433
5522
  }
5434
5523
  });
@@ -5503,7 +5592,7 @@ defineIterator(String, 'String', function (iterated) {
5503
5592
 
5504
5593
  var fails$6 = fails$q;
5505
5594
  var wellKnownSymbol$3 = wellKnownSymbol$l;
5506
- var DESCRIPTORS$5 = descriptors;
5595
+ var DESCRIPTORS$4 = descriptors;
5507
5596
  var IS_PURE = isPure;
5508
5597
 
5509
5598
  var ITERATOR$1 = wellKnownSymbol$3('iterator');
@@ -5524,7 +5613,7 @@ var urlConstructorDetection = !fails$6(function () {
5524
5613
  // https://bugs.chromium.org/p/v8/issues/detail?id=14222
5525
5614
  params2['delete']('b', undefined);
5526
5615
  return (IS_PURE && (!url.toJSON || !params2.has('a', 1) || params2.has('a', 2) || !params2.has('a', undefined) || params2.has('b')))
5527
- || (!params.size && (IS_PURE || !DESCRIPTORS$5))
5616
+ || (!params.size && (IS_PURE || !DESCRIPTORS$4))
5528
5617
  || !params.sort
5529
5618
  || url.href !== 'https://a/c%20d?a=1&c=3'
5530
5619
  || params.get('c') !== '3'
@@ -5544,48 +5633,41 @@ var urlConstructorDetection = !fails$6(function () {
5544
5633
  });
5545
5634
 
5546
5635
  var anObject$5 = anObject$h;
5547
- var iteratorClose = iteratorClose$2;
5636
+ var iteratorClose$1 = iteratorClose$3;
5548
5637
 
5549
5638
  // call something on iterator step with safe closing on error
5550
5639
  var callWithSafeIterationClosing$1 = function (iterator, fn, value, ENTRIES) {
5551
5640
  try {
5552
5641
  return ENTRIES ? fn(anObject$5(value)[0], value[1]) : fn(value);
5553
5642
  } catch (error) {
5554
- iteratorClose(iterator, 'throw', error);
5643
+ iteratorClose$1(iterator, 'throw', error);
5555
5644
  }
5556
5645
  };
5557
5646
 
5558
- var DESCRIPTORS$4 = descriptors;
5559
- var definePropertyModule = objectDefineProperty;
5560
- var createPropertyDescriptor$1 = createPropertyDescriptor$5;
5561
-
5562
- var createProperty$1 = function (object, key, value) {
5563
- if (DESCRIPTORS$4) definePropertyModule.f(object, key, createPropertyDescriptor$1(0, value));
5564
- else object[key] = value;
5565
- };
5566
-
5567
5647
  var bind$2 = functionBindContext;
5568
- var call$8 = functionCall;
5648
+ var call$9 = functionCall;
5569
5649
  var toObject$2 = toObject$9;
5570
5650
  var callWithSafeIterationClosing = callWithSafeIterationClosing$1;
5571
5651
  var isArrayIteratorMethod = isArrayIteratorMethod$2;
5572
5652
  var isConstructor = isConstructor$3;
5573
5653
  var lengthOfArrayLike$1 = lengthOfArrayLike$8;
5574
- var createProperty = createProperty$1;
5654
+ var createProperty = createProperty$2;
5655
+ var setArrayLength = arraySetLength;
5575
5656
  var getIterator$1 = getIterator$3;
5576
5657
  var getIteratorMethod$1 = getIteratorMethod$4;
5658
+ var iteratorClose = iteratorClose$3;
5577
5659
 
5578
5660
  var $Array = Array;
5579
5661
 
5580
5662
  // `Array.from` method implementation
5581
5663
  // https://tc39.es/ecma262/#sec-array.from
5582
5664
  var arrayFrom$1 = function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {
5583
- var O = toObject$2(arrayLike);
5584
5665
  var IS_CONSTRUCTOR = isConstructor(this);
5585
5666
  var argumentsLength = arguments.length;
5586
5667
  var mapfn = argumentsLength > 1 ? arguments[1] : undefined;
5587
5668
  var mapping = mapfn !== undefined;
5588
5669
  if (mapping) mapfn = bind$2(mapfn, argumentsLength > 2 ? arguments[2] : undefined);
5670
+ var O = toObject$2(arrayLike);
5589
5671
  var iteratorMethod = getIteratorMethod$1(O);
5590
5672
  var index = 0;
5591
5673
  var length, result, step, iterator, next, value;
@@ -5594,9 +5676,13 @@ var arrayFrom$1 = function from(arrayLike /* , mapfn = undefined, thisArg = unde
5594
5676
  result = IS_CONSTRUCTOR ? new this() : [];
5595
5677
  iterator = getIterator$1(O, iteratorMethod);
5596
5678
  next = iterator.next;
5597
- for (;!(step = call$8(next, iterator)).done; index++) {
5679
+ for (;!(step = call$9(next, iterator)).done; index++) {
5598
5680
  value = mapping ? callWithSafeIterationClosing(iterator, mapfn, [step.value, index], true) : step.value;
5599
- createProperty(result, index, value);
5681
+ try {
5682
+ createProperty(result, index, value);
5683
+ } catch (error) {
5684
+ iteratorClose(iterator, 'throw', error);
5685
+ }
5600
5686
  }
5601
5687
  } else {
5602
5688
  length = lengthOfArrayLike$1(O);
@@ -5606,7 +5692,7 @@ var arrayFrom$1 = function from(arrayLike /* , mapfn = undefined, thisArg = unde
5606
5692
  createProperty(result, index, value);
5607
5693
  }
5608
5694
  }
5609
- result.length = index;
5695
+ setArrayLength(result, index);
5610
5696
  return result;
5611
5697
  };
5612
5698
 
@@ -5814,9 +5900,9 @@ $$7({ target: 'String', stat: true, arity: 1, forced: INCORRECT_LENGTH }, {
5814
5900
  var i = 0;
5815
5901
  var code;
5816
5902
  while (length > i) {
5817
- code = +arguments[i++];
5903
+ code = +arguments[i];
5818
5904
  if (toAbsoluteIndex(code, 0x10FFFF) !== code) throw new $RangeError(code + ' is not a valid code point');
5819
- elements[i] = code < 0x10000
5905
+ elements[i++] = code < 0x10000
5820
5906
  ? fromCharCode$1(code)
5821
5907
  : fromCharCode$1(((code -= 0x10000) >> 10) + 0xD800, code % 0x400 + 0xDC00);
5822
5908
  } return join$2(elements, '');
@@ -5837,7 +5923,7 @@ var $$6 = _export;
5837
5923
  var globalThis$6 = globalThis_1;
5838
5924
  var safeGetBuiltIn = safeGetBuiltIn$2;
5839
5925
  var getBuiltIn = getBuiltIn$8;
5840
- var call$7 = functionCall;
5926
+ var call$8 = functionCall;
5841
5927
  var uncurryThis$9 = functionUncurryThis;
5842
5928
  var DESCRIPTORS$3 = descriptors;
5843
5929
  var USE_NATIVE_URL$1 = urlConstructorDetection;
@@ -5912,8 +5998,9 @@ var getLeadingOnes = function (octet) {
5912
5998
 
5913
5999
  var utf8Decode = function (octets) {
5914
6000
  var codePoint = null;
6001
+ var length = octets.length;
5915
6002
 
5916
- switch (octets.length) {
6003
+ switch (length) {
5917
6004
  case 1:
5918
6005
  codePoint = octets[0];
5919
6006
  break;
@@ -5928,9 +6015,17 @@ var utf8Decode = function (octets) {
5928
6015
  break;
5929
6016
  }
5930
6017
 
5931
- return codePoint > 0x10FFFF ? null : codePoint;
6018
+ // reject surrogates, overlong encodings, and out-of-range codepoints
6019
+ if (codePoint === null
6020
+ || codePoint > 0x10FFFF
6021
+ || (codePoint >= 0xD800 && codePoint <= 0xDFFF)
6022
+ || codePoint < (length > 3 ? 0x10000 : length > 2 ? 0x800 : length > 1 ? 0x80 : 0)
6023
+ ) return null;
6024
+
6025
+ return codePoint;
5932
6026
  };
5933
6027
 
6028
+ /* eslint-disable max-statements, max-depth -- ok */
5934
6029
  var decode = function (input) {
5935
6030
  input = replace$4(input, plus, ' ');
5936
6031
  var length = input.length;
@@ -5978,11 +6073,15 @@ var decode = function (input) {
5978
6073
  var nextByte = parseHexOctet(input, i + 1);
5979
6074
 
5980
6075
  // eslint-disable-next-line no-self-compare -- NaN check
5981
- if (nextByte !== nextByte) {
5982
- i += 3;
5983
- break;
6076
+ if (nextByte !== nextByte || nextByte > 191 || nextByte < 128) break;
6077
+
6078
+ // https://encoding.spec.whatwg.org/#utf-8-decoder - position-specific byte ranges
6079
+ if (sequenceIndex === 1) {
6080
+ if (octet === 0xE0 && nextByte < 0xA0) break;
6081
+ if (octet === 0xED && nextByte > 0x9F) break;
6082
+ if (octet === 0xF0 && nextByte < 0x90) break;
6083
+ if (octet === 0xF4 && nextByte > 0x8F) break;
5984
6084
  }
5985
- if (nextByte > 191 || nextByte < 128) break;
5986
6085
 
5987
6086
  push$4(octets, nextByte);
5988
6087
  i += 2;
@@ -5996,7 +6095,9 @@ var decode = function (input) {
5996
6095
 
5997
6096
  var codePoint = utf8Decode(octets);
5998
6097
  if (codePoint === null) {
5999
- result += FALLBACK_REPLACER;
6098
+ for (var replacement = 0; replacement < byteSequenceLength; replacement++) result += FALLBACK_REPLACER;
6099
+ i++;
6100
+ continue;
6000
6101
  } else {
6001
6102
  decodedChar = fromCodePoint(codePoint);
6002
6103
  }
@@ -6009,6 +6110,7 @@ var decode = function (input) {
6009
6110
 
6010
6111
  return result;
6011
6112
  };
6113
+ /* eslint-enable max-statements, max-depth -- ok */
6012
6114
 
6013
6115
  var find = /[!'()~]|%20/g;
6014
6116
 
@@ -6075,13 +6177,13 @@ URLSearchParamsState.prototype = {
6075
6177
  if (iteratorMethod) {
6076
6178
  iterator = getIterator(object, iteratorMethod);
6077
6179
  next = iterator.next;
6078
- while (!(step = call$7(next, iterator)).done) {
6180
+ while (!(step = call$8(next, iterator)).done) {
6079
6181
  entryIterator = getIterator(anObject$4(step.value));
6080
6182
  entryNext = entryIterator.next;
6081
6183
  if (
6082
- (first = call$7(entryNext, entryIterator)).done ||
6083
- (second = call$7(entryNext, entryIterator)).done ||
6084
- !call$7(entryNext, entryIterator).done
6184
+ (first = call$8(entryNext, entryIterator)).done ||
6185
+ (second = call$8(entryNext, entryIterator)).done ||
6186
+ !call$8(entryNext, entryIterator).done
6085
6187
  ) throw new TypeError$2('Expected sequence with length 2');
6086
6188
  push$4(entries, { key: $toString$1(first.value), value: $toString$1(second.value) });
6087
6189
  }
@@ -6144,7 +6246,7 @@ defineBuiltIns(URLSearchParamsPrototype$3, {
6144
6246
  var state = getInternalParamsState(this);
6145
6247
  validateArgumentsLength$3(arguments.length, 2);
6146
6248
  push$4(state.entries, { key: $toString$1(name), value: $toString$1(value) });
6147
- if (!DESCRIPTORS$3) this.length++;
6249
+ if (!DESCRIPTORS$3) this.size++;
6148
6250
  state.updateURL();
6149
6251
  },
6150
6252
  // `URLSearchParams.prototype.delete` method
@@ -6161,7 +6263,6 @@ defineBuiltIns(URLSearchParamsPrototype$3, {
6161
6263
  var entry = entries[index];
6162
6264
  if (entry.key === key && (value === undefined || entry.value === value)) {
6163
6265
  splice(entries, index, 1);
6164
- if (value !== undefined) break;
6165
6266
  } else index++;
6166
6267
  }
6167
6268
  if (!DESCRIPTORS$3) this.size = entries.length;
@@ -6211,7 +6312,7 @@ defineBuiltIns(URLSearchParamsPrototype$3, {
6211
6312
  // https://url.spec.whatwg.org/#dom-urlsearchparams-set
6212
6313
  set: function set(name, value) {
6213
6314
  var state = getInternalParamsState(this);
6214
- validateArgumentsLength$3(arguments.length, 1);
6315
+ validateArgumentsLength$3(arguments.length, 2);
6215
6316
  var entries = state.entries;
6216
6317
  var found = false;
6217
6318
  var key = $toString$1(name);
@@ -6276,7 +6377,7 @@ defineBuiltIn$4(URLSearchParamsPrototype$3, 'toString', function toString() {
6276
6377
  }, { enumerable: true });
6277
6378
 
6278
6379
  // `URLSearchParams.prototype.size` getter
6279
- // https://github.com/whatwg/url/pull/734
6380
+ // https://url.spec.whatwg.org/#dom-urlsearchparams-size
6280
6381
  if (DESCRIPTORS$3) defineBuiltInAccessor$3(URLSearchParamsPrototype$3, 'size', {
6281
6382
  get: function size() {
6282
6383
  return getInternalParamsState(this).entries.length;
@@ -6371,6 +6472,7 @@ var getInternalSearchParamsState = URLSearchParamsModule.getState;
6371
6472
 
6372
6473
  var NativeURL = globalThis$5.URL;
6373
6474
  var TypeError$1 = globalThis$5.TypeError;
6475
+ var encodeURIComponent = globalThis$5.encodeURIComponent;
6374
6476
  var parseInt$1 = globalThis$5.parseInt;
6375
6477
  var floor$1 = Math.floor;
6376
6478
  var pow = Math.pow;
@@ -6393,8 +6495,7 @@ var INVALID_HOST = 'Invalid host';
6393
6495
  var INVALID_PORT = 'Invalid port';
6394
6496
 
6395
6497
  var ALPHA = /[a-z]/i;
6396
- // eslint-disable-next-line regexp/no-obscure-range -- safe
6397
- var ALPHANUMERIC = /[\d+-.a-z]/i;
6498
+ var ALPHANUMERIC_PLUS_MINUS_DOT = /[\d+\-.a-z]/i;
6398
6499
  var DIGIT = /\d/;
6399
6500
  var HEX_START = /^0x/i;
6400
6501
  var OCT = /^[0-7]+$/;
@@ -6410,7 +6511,24 @@ var TAB_AND_NEW_LINE = /[\t\n\r]/g;
6410
6511
  // eslint-disable-next-line no-unassigned-vars -- expected `undefined` value
6411
6512
  var EOF;
6412
6513
 
6413
- // https://url.spec.whatwg.org/#ipv4-number-parser
6514
+ // https://url.spec.whatwg.org/#ends-in-a-number-checker
6515
+ var endsInNumber = function (input) {
6516
+ var parts = split(input, '.');
6517
+ var last, hexPart;
6518
+ if (parts[parts.length - 1] === '') {
6519
+ if (parts.length === 1) return false;
6520
+ parts.length--;
6521
+ }
6522
+ last = parts[parts.length - 1];
6523
+ if (exec$1(DEC, last)) return true;
6524
+ if (exec$1(HEX_START, last)) {
6525
+ hexPart = stringSlice$5(last, 2);
6526
+ return hexPart === '' || !!exec$1(HEX, hexPart);
6527
+ }
6528
+ return false;
6529
+ };
6530
+
6531
+ // https://url.spec.whatwg.org/#concept-ipv4-parser
6414
6532
  var parseIPv4 = function (input) {
6415
6533
  var parts = split(input, '.');
6416
6534
  var partsLength, numbers, index, part, radix, number, ipv4;
@@ -6418,11 +6536,11 @@ var parseIPv4 = function (input) {
6418
6536
  parts.length--;
6419
6537
  }
6420
6538
  partsLength = parts.length;
6421
- if (partsLength > 4) return input;
6539
+ if (partsLength > 4) return null;
6422
6540
  numbers = [];
6423
6541
  for (index = 0; index < partsLength; index++) {
6424
6542
  part = parts[index];
6425
- if (part === '') return input;
6543
+ if (part === '') return null;
6426
6544
  radix = 10;
6427
6545
  if (part.length > 1 && charAt$3(part, 0) === '0') {
6428
6546
  radix = exec$1(HEX_START, part) ? 16 : 8;
@@ -6431,7 +6549,7 @@ var parseIPv4 = function (input) {
6431
6549
  if (part === '') {
6432
6550
  number = 0;
6433
6551
  } else {
6434
- if (!exec$1(radix === 10 ? DEC : radix === 8 ? OCT : HEX, part)) return input;
6552
+ if (!exec$1(radix === 10 ? DEC : radix === 8 ? OCT : HEX, part)) return null;
6435
6553
  number = parseInt$1(part, radix);
6436
6554
  }
6437
6555
  push$3(numbers, number);
@@ -6585,11 +6703,17 @@ var serializeHost = function (host) {
6585
6703
  };
6586
6704
 
6587
6705
  var C0ControlPercentEncodeSet = {};
6706
+ var queryPercentEncodeSet = assign({}, C0ControlPercentEncodeSet, {
6707
+ ' ': 1, '"': 1, '#': 1, '<': 1, '>': 1
6708
+ });
6709
+ var specialQueryPercentEncodeSet = assign({}, queryPercentEncodeSet, {
6710
+ "'": 1
6711
+ });
6588
6712
  var fragmentPercentEncodeSet = assign({}, C0ControlPercentEncodeSet, {
6589
6713
  ' ': 1, '"': 1, '<': 1, '>': 1, '`': 1
6590
6714
  });
6591
6715
  var pathPercentEncodeSet = assign({}, fragmentPercentEncodeSet, {
6592
- '#': 1, '?': 1, '{': 1, '}': 1
6716
+ '#': 1, '?': 1, '{': 1, '}': 1, '^': 1
6593
6717
  });
6594
6718
  var userinfoPercentEncodeSet = assign({}, pathPercentEncodeSet, {
6595
6719
  '/': 1, ':': 1, ';': 1, '=': 1, '@': 1, '[': 1, '\\': 1, ']': 1, '^': 1, '|': 1
@@ -6597,7 +6721,8 @@ var userinfoPercentEncodeSet = assign({}, pathPercentEncodeSet, {
6597
6721
 
6598
6722
  var percentEncode = function (chr, set) {
6599
6723
  var code = codeAt(chr, 0);
6600
- return code > 0x20 && code < 0x7F && !hasOwn$1(set, chr) ? chr : encodeURIComponent(chr);
6724
+ // encodeURIComponent does not encode ', which is in the special-query percent-encode set
6725
+ return code >= 0x20 && code < 0x7F && !hasOwn$1(set, chr) ? chr : chr === "'" && hasOwn$1(set, chr) ? '%27' : encodeURIComponent(chr);
6601
6726
  };
6602
6727
 
6603
6728
  // https://url.spec.whatwg.org/#special-scheme
@@ -6725,13 +6850,13 @@ URLState.prototype = {
6725
6850
  break;
6726
6851
 
6727
6852
  case SCHEME:
6728
- if (chr && (exec$1(ALPHANUMERIC, chr) || chr === '+' || chr === '-' || chr === '.')) {
6853
+ if (chr && exec$1(ALPHANUMERIC_PLUS_MINUS_DOT, chr)) {
6729
6854
  buffer += toLowerCase(chr);
6730
6855
  } else if (chr === ':') {
6731
6856
  if (stateOverride && (
6732
6857
  (url.isSpecial() !== hasOwn$1(specialSchemes, buffer)) ||
6733
6858
  (buffer === 'file' && (url.includesCredentials() || url.port !== null)) ||
6734
- (url.scheme === 'file' && !url.host)
6859
+ (url.scheme === 'file' && url.host === '')
6735
6860
  )) return;
6736
6861
  url.scheme = buffer;
6737
6862
  if (stateOverride) {
@@ -6827,7 +6952,7 @@ URLState.prototype = {
6827
6952
  url.host = base.host;
6828
6953
  url.port = base.port;
6829
6954
  url.path = arraySlice(base.path);
6830
- url.path.length--;
6955
+ if (url.path.length) url.path.length--;
6831
6956
  state = PATH;
6832
6957
  continue;
6833
6958
  } break;
@@ -6848,7 +6973,7 @@ URLState.prototype = {
6848
6973
 
6849
6974
  case SPECIAL_AUTHORITY_SLASHES:
6850
6975
  state = SPECIAL_AUTHORITY_IGNORE_SLASHES;
6851
- if (chr !== '/' || charAt$3(buffer, pointer + 1) !== '/') continue;
6976
+ if (chr !== '/' || codePoints[pointer + 1] !== '/') continue;
6852
6977
  pointer++;
6853
6978
  break;
6854
6979
 
@@ -6892,11 +7017,11 @@ URLState.prototype = {
6892
7017
  continue;
6893
7018
  } else if (chr === ':' && !seenBracket) {
6894
7019
  if (buffer === '') return INVALID_HOST;
7020
+ if (stateOverride === HOSTNAME) return;
6895
7021
  failure = url.parseHost(buffer);
6896
7022
  if (failure) return failure;
6897
7023
  buffer = '';
6898
7024
  state = PORT;
6899
- if (stateOverride === HOSTNAME) return;
6900
7025
  } else if (
6901
7026
  chr === EOF || chr === '/' || chr === '?' || chr === '#' ||
6902
7027
  (chr === '\\' && url.isSpecial())
@@ -6937,6 +7062,7 @@ URLState.prototype = {
6937
7062
 
6938
7063
  case FILE:
6939
7064
  url.scheme = 'file';
7065
+ url.host = '';
6940
7066
  if (chr === '/' || chr === '\\') state = FILE_SLASH;
6941
7067
  else if (base && base.scheme === 'file') {
6942
7068
  switch (chr) {
@@ -6959,8 +7085,8 @@ URLState.prototype = {
6959
7085
  state = FRAGMENT;
6960
7086
  break;
6961
7087
  default:
7088
+ url.host = base.host;
6962
7089
  if (!startsWithWindowsDriveLetter(join(arraySlice(codePoints, pointer), ''))) {
6963
- url.host = base.host;
6964
7090
  url.path = arraySlice(base.path);
6965
7091
  url.shortenPath();
6966
7092
  }
@@ -6977,9 +7103,10 @@ URLState.prototype = {
6977
7103
  state = FILE_HOST;
6978
7104
  break;
6979
7105
  }
6980
- if (base && base.scheme === 'file' && !startsWithWindowsDriveLetter(join(arraySlice(codePoints, pointer), ''))) {
6981
- if (isWindowsDriveLetter(base.path[0], true)) push$3(url.path, base.path[0]);
6982
- else url.host = base.host;
7106
+ if (base && base.scheme === 'file') {
7107
+ url.host = base.host;
7108
+ if (!startsWithWindowsDriveLetter(join(arraySlice(codePoints, pointer), ''))
7109
+ && isWindowsDriveLetter(base.path[0], true)) push$3(url.path, base.path[0]);
6983
7110
  }
6984
7111
  state = PATH;
6985
7112
  continue;
@@ -7035,7 +7162,7 @@ URLState.prototype = {
7035
7162
  }
7036
7163
  } else {
7037
7164
  if (url.scheme === 'file' && !url.path.length && isWindowsDriveLetter(buffer)) {
7038
- if (url.host) url.host = '';
7165
+ if (url.host !== null && url.host !== '') url.host = '';
7039
7166
  buffer = charAt$3(buffer, 0) + ':'; // normalize windows drive letter
7040
7167
  }
7041
7168
  push$3(url.path, buffer);
@@ -7073,9 +7200,7 @@ URLState.prototype = {
7073
7200
  url.fragment = '';
7074
7201
  state = FRAGMENT;
7075
7202
  } else if (chr !== EOF) {
7076
- if (chr === "'" && url.isSpecial()) url.query += '%27';
7077
- else if (chr === '#') url.query += '%23';
7078
- else url.query += percentEncode(chr, C0ControlPercentEncodeSet);
7203
+ url.query += percentEncode(chr, url.isSpecial() ? specialQueryPercentEncodeSet : queryPercentEncodeSet);
7079
7204
  } break;
7080
7205
 
7081
7206
  case FRAGMENT:
@@ -7106,14 +7231,18 @@ URLState.prototype = {
7106
7231
  } else {
7107
7232
  input = toASCII(input);
7108
7233
  if (exec$1(FORBIDDEN_HOST_CODE_POINT, input)) return INVALID_HOST;
7109
- result = parseIPv4(input);
7110
- if (result === null) return INVALID_HOST;
7111
- this.host = result;
7234
+ if (endsInNumber(input)) {
7235
+ result = parseIPv4(input);
7236
+ if (result === null) return INVALID_HOST;
7237
+ this.host = result;
7238
+ } else {
7239
+ this.host = input;
7240
+ }
7112
7241
  }
7113
7242
  },
7114
7243
  // https://url.spec.whatwg.org/#cannot-have-a-username-password-port
7115
7244
  cannotHaveUsernamePasswordPort: function () {
7116
- return !this.host || this.cannotBeABaseURL || this.scheme === 'file';
7245
+ return this.host === null || this.host === '' || this.cannotBeABaseURL || this.scheme === 'file';
7117
7246
  },
7118
7247
  // https://url.spec.whatwg.org/#include-credentials
7119
7248
  includesCredentials: function () {
@@ -7151,6 +7280,7 @@ URLState.prototype = {
7151
7280
  output += serializeHost(host);
7152
7281
  if (port !== null) output += ':' + port;
7153
7282
  } else if (scheme === 'file') output += '//';
7283
+ if (host === null && !url.cannotBeABaseURL && path.length > 1 && path[0] === '') output += '/.';
7154
7284
  output += url.cannotBeABaseURL ? path[0] : path.length ? '/' + join(path, '/') : '';
7155
7285
  if (query !== null) output += '?' + query;
7156
7286
  if (fragment !== null) output += '#' + fragment;
@@ -7167,7 +7297,7 @@ URLState.prototype = {
7167
7297
  var scheme = this.scheme;
7168
7298
  var port = this.port;
7169
7299
  if (scheme === 'blob') try {
7170
- return new URLConstructor(scheme.path[0]).origin;
7300
+ return new URLConstructor(this.path[0]).origin;
7171
7301
  } catch (error) {
7172
7302
  return 'null';
7173
7303
  }
@@ -7393,13 +7523,13 @@ $$5({ global: true, constructor: true, forced: !USE_NATIVE_URL, sham: !DESCRIPTO
7393
7523
  });
7394
7524
 
7395
7525
  var $$4 = _export;
7396
- var call$6 = functionCall;
7526
+ var call$7 = functionCall;
7397
7527
 
7398
7528
  // `URL.prototype.toJSON` method
7399
7529
  // https://url.spec.whatwg.org/#dom-url-tojson
7400
7530
  $$4({ target: 'URL', proto: true, enumerable: true }, {
7401
7531
  toJSON: function toJSON() {
7402
- return call$6(URL.prototype.toString, this);
7532
+ return call$7(URL.prototype.toString, this);
7403
7533
  }
7404
7534
  });
7405
7535
 
@@ -7434,19 +7564,16 @@ if (params$1 + '' !== 'a=2') {
7434
7564
  var key = toString$6(name);
7435
7565
  var value = toString$6($value);
7436
7566
  var index = 0;
7437
- var dindex = 0;
7438
- var found = false;
7439
7567
  var entriesLength = entries.length;
7440
7568
  var entry;
7441
7569
  while (index < entriesLength) {
7442
- entry = entries[index++];
7443
- if (found || entry.key === key) {
7444
- found = true;
7445
- $delete(this, entry.key);
7446
- } else dindex++;
7570
+ entry = entries[index];
7571
+ $delete(this, entry.key);
7572
+ index++;
7447
7573
  }
7448
- while (dindex < entriesLength) {
7449
- entry = entries[dindex++];
7574
+ index = 0;
7575
+ while (index < entriesLength) {
7576
+ entry = entries[index++];
7450
7577
  if (!(entry.key === key && entry.value === value)) append(this, entry.key, entry.value);
7451
7578
  }
7452
7579
  }, { enumerable: true, unsafe: true });
@@ -7504,6 +7631,7 @@ if (DESCRIPTORS$1 && !('size' in URLSearchParamsPrototype)) {
7504
7631
  var $$3 = _export;
7505
7632
  var DESCRIPTORS = descriptors;
7506
7633
  var globalThis$4 = globalThis_1;
7634
+ var call$6 = functionCall;
7507
7635
  var uncurryThis$4 = functionUncurryThis;
7508
7636
  var hasOwn = hasOwnProperty_1;
7509
7637
  var isCallable$3 = isCallable$o;
@@ -7533,6 +7661,14 @@ if (DESCRIPTORS && isCallable$3(NativeSymbol) && (!('description' in SymbolProto
7533
7661
  };
7534
7662
 
7535
7663
  copyConstructorProperties(SymbolWrapper, NativeSymbol);
7664
+ // wrap Symbol.for for correct handling of empty string descriptions
7665
+ var nativeFor = SymbolWrapper['for'];
7666
+ SymbolWrapper['for'] = { 'for': function (key) {
7667
+ var stringKey = toString$4(key);
7668
+ var symbol = call$6(nativeFor, this, stringKey);
7669
+ if (stringKey === '') EmptyStringDescriptionStore[symbol] = true;
7670
+ return symbol;
7671
+ } }['for'];
7536
7672
  SymbolWrapper.prototype = SymbolPrototype;
7537
7673
  SymbolPrototype.constructor = SymbolWrapper;
7538
7674
 
@@ -7559,6 +7695,24 @@ if (DESCRIPTORS && isCallable$3(NativeSymbol) && (!('description' in SymbolProto
7559
7695
  });
7560
7696
  }
7561
7697
 
7698
+ /* *
7699
+ * Licensed under the Apache License, Version 2.0 (the "License");
7700
+ * you may not use this file except in compliance with the License.
7701
+ * You may obtain a copy of the License at
7702
+ *
7703
+ * http://www.apache.org/licenses/LICENSE-2.0
7704
+ *
7705
+ * Unless required by applicable law or agreed to in writing, software
7706
+ * distributed under the License is distributed on an "AS IS" BASIS,
7707
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
7708
+ * See the License for the specific language governing permissions and
7709
+ * limitations under the License.
7710
+ *
7711
+ * Copyright 2025 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
7712
+ * Copyright 2025 - Finnish Meteorological Institute (FMI)
7713
+ * Copyright 2025 - The Norwegian Meteorological Institute (MET Norway)
7714
+ * */
7715
+
7562
7716
  const DatasetAddRemoveButton = ({
7563
7717
  layerName,
7564
7718
  foundLayer,
@@ -7569,7 +7723,7 @@ const DatasetAddRemoveButton = ({
7569
7723
  const {
7570
7724
  t
7571
7725
  } = useDataExplorerTranslation();
7572
- return jsx(CustomToggleButton, {
7726
+ return /*#__PURE__*/jsx(CustomToggleButton, {
7573
7727
  "data-testid": `datasetAddRemoveButton-${layerName}`,
7574
7728
  disabled: disabled,
7575
7729
  onClick: () => {
@@ -7588,19 +7742,55 @@ const DatasetAddRemoveButton = ({
7588
7742
  });
7589
7743
  };
7590
7744
 
7745
+ /* *
7746
+ * Licensed under the Apache License, Version 2.0 (the "License");
7747
+ * you may not use this file except in compliance with the License.
7748
+ * You may obtain a copy of the License at
7749
+ *
7750
+ * http://www.apache.org/licenses/LICENSE-2.0
7751
+ *
7752
+ * Unless required by applicable law or agreed to in writing, software
7753
+ * distributed under the License is distributed on an "AS IS" BASIS,
7754
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
7755
+ * See the License for the specific language governing permissions and
7756
+ * limitations under the License.
7757
+ *
7758
+ * Copyright 2025 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
7759
+ * Copyright 2025 - Finnish Meteorological Institute (FMI)
7760
+ * Copyright 2025 - The Norwegian Meteorological Institute (MET Norway)
7761
+ * */
7762
+
7591
7763
  const DataExplorerInfoButton = ({
7592
7764
  selected,
7593
7765
  onClick
7594
7766
  }) => {
7595
- return jsx(CustomIconButton, {
7767
+ return /*#__PURE__*/jsx(CustomIconButton, {
7596
7768
  "aria-label": "placeholder",
7597
7769
  isSelected: selected,
7598
7770
  onClick: onClick,
7599
7771
  variant: "flat",
7600
- children: jsx(Info, {})
7772
+ children: /*#__PURE__*/jsx(Info, {})
7601
7773
  });
7602
7774
  };
7603
7775
 
7776
+ /* *
7777
+ * Licensed under the Apache License, Version 2.0 (the "License");
7778
+ * you may not use this file except in compliance with the License.
7779
+ * You may obtain a copy of the License at
7780
+ *
7781
+ * http://www.apache.org/licenses/LICENSE-2.0
7782
+ *
7783
+ * Unless required by applicable law or agreed to in writing, software
7784
+ * distributed under the License is distributed on an "AS IS" BASIS,
7785
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
7786
+ * See the License for the specific language governing permissions and
7787
+ * limitations under the License.
7788
+ *
7789
+ * Copyright 2025 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
7790
+ * Copyright 2025 - Finnish Meteorological Institute (FMI)
7791
+ * Copyright 2025 - The Norwegian Meteorological Institute (MET Norway)
7792
+ * */
7793
+
7604
7794
  const DataExplorerInfoButtonConnect = ({
7605
7795
  id,
7606
7796
  source: _source = 'app'
@@ -7624,7 +7814,7 @@ const DataExplorerInfoButtonConnect = ({
7624
7814
  const onClick = useCallback(() => {
7625
7815
  toggleInfoDialog();
7626
7816
  }, [toggleInfoDialog]);
7627
- return jsx(DataExplorerInfoButton, {
7817
+ return /*#__PURE__*/jsx(DataExplorerInfoButton, {
7628
7818
  onClick: onClick,
7629
7819
  selected: !!isOpenInStore && selectedId === id
7630
7820
  });
@@ -7645,7 +7835,7 @@ const DatasetRow = ({
7645
7835
  if (!feature) {
7646
7836
  return null;
7647
7837
  }
7648
- return jsxs(Grid, {
7838
+ return /*#__PURE__*/jsxs(Grid, {
7649
7839
  container: true,
7650
7840
  "data-testid": `datasetRow-${feature.id}`,
7651
7841
  size: 12,
@@ -7661,13 +7851,13 @@ const DatasetRow = ({
7661
7851
  flexDirection: 'column'
7662
7852
  }
7663
7853
  },
7664
- children: [jsxs(Grid, {
7854
+ children: [/*#__PURE__*/jsxs(Grid, {
7665
7855
  container: true,
7666
7856
  direction: "column",
7667
7857
  size: "grow",
7668
- children: [jsx(Grid, {
7858
+ children: [/*#__PURE__*/jsx(Grid, {
7669
7859
  size: 12,
7670
- children: jsx(Typography, {
7860
+ children: /*#__PURE__*/jsx(Typography, {
7671
7861
  color: "textPrimary",
7672
7862
  sx: {
7673
7863
  fontWeight: 550,
@@ -7683,14 +7873,14 @@ const DatasetRow = ({
7683
7873
  whiteSpace: 'normal'
7684
7874
  }
7685
7875
  },
7686
- children: !!feature.properties.title && jsx(SearchHighlight, {
7876
+ children: !!feature.properties.title && /*#__PURE__*/jsx(SearchHighlight, {
7687
7877
  search: searchFilter,
7688
7878
  text: feature.properties.title
7689
7879
  })
7690
7880
  })
7691
- }), jsx(Grid, {
7881
+ }), /*#__PURE__*/jsx(Grid, {
7692
7882
  size: 12,
7693
- children: jsx(Typography, {
7883
+ children: /*#__PURE__*/jsx(Typography, {
7694
7884
  color: "textPrimary",
7695
7885
  sx: {
7696
7886
  fontSize: '12px',
@@ -7705,13 +7895,13 @@ const DatasetRow = ({
7705
7895
  WebkitLineClamp: 5
7706
7896
  }
7707
7897
  },
7708
- children: !!feature.properties.description && jsx(SearchHighlight, {
7898
+ children: !!feature.properties.description && /*#__PURE__*/jsx(SearchHighlight, {
7709
7899
  search: searchFilter,
7710
7900
  text: feature.properties.description
7711
7901
  })
7712
7902
  })
7713
7903
  })]
7714
- }), jsxs(Grid, {
7904
+ }), /*#__PURE__*/jsxs(Grid, {
7715
7905
  container: true,
7716
7906
  spacing: 3,
7717
7907
  sx: {
@@ -7725,14 +7915,14 @@ const DatasetRow = ({
7725
7915
  justifyContent: 'space-between'
7726
7916
  }
7727
7917
  },
7728
- children: [jsx(Tooltip, {
7918
+ children: [/*#__PURE__*/jsx(Tooltip, {
7729
7919
  title: t('dataexplorer-documentation'),
7730
- children: jsx("span", {
7731
- children: jsx(DataExplorerInfoButtonConnect, {
7920
+ children: /*#__PURE__*/jsx("span", {
7921
+ children: /*#__PURE__*/jsx(DataExplorerInfoButtonConnect, {
7732
7922
  id: feature.id
7733
7923
  })
7734
7924
  })
7735
- }), jsx(DatasetAddRemoveButton, {
7925
+ }), /*#__PURE__*/jsx(DatasetAddRemoveButton, {
7736
7926
  addLayer: addLayer,
7737
7927
  deleteLayer: deleteLayer,
7738
7928
  disabled: _addDisabled,
@@ -7754,6 +7944,7 @@ const getDatasetFormat = feature => {
7754
7944
  }
7755
7945
  return null;
7756
7946
  };
7947
+
7757
7948
  // Checks the dataset links to get the layer name and service URL depending on the dataset format
7758
7949
  const getLayerProperties = (feature, datasetFormat) => {
7759
7950
  let layerName = null;
@@ -7785,6 +7976,7 @@ const getLayerProperties = (feature, datasetFormat) => {
7785
7976
  serviceUrl
7786
7977
  };
7787
7978
  };
7979
+
7788
7980
  // Checks if a layer with a name and service URL matching the dataset already exists
7789
7981
  const getExistingLayerAndIndex = (mapLayers, layerName, serviceUrl) => {
7790
7982
  let foundLayerIndex = -1;
@@ -7812,15 +8004,18 @@ const DatasetRowConnect = ({
7812
8004
  const {
7813
8005
  data: geoJsonData
7814
8006
  } = useFetchGeoJSON(geoJsonUrl);
8007
+
7815
8008
  // Get the dataset format from the feature properties
7816
8009
  const datasetFormat = getDatasetFormat(feature);
7817
8010
  const isGeoJSON = datasetFormat === DatasetFormat.GeoJSON;
7818
8011
  const isWMS = datasetFormat === DatasetFormat.WMS;
8012
+
7819
8013
  // Get layer name and service URL from the dataset feature properties
7820
8014
  const {
7821
8015
  layerName,
7822
8016
  serviceUrl
7823
8017
  } = getLayerProperties(feature, datasetFormat);
8018
+
7824
8019
  // Check if the dataset already has a layer associated with it
7825
8020
  const {
7826
8021
  foundLayerIndex,
@@ -7866,6 +8061,7 @@ const DatasetRowConnect = ({
7866
8061
  origin: layerTypes.LayerActionOrigin.layerManager
7867
8062
  }));
7868
8063
  }, [dispatch, activeMapId, foundLayer == null ? void 0 : foundLayer.id, foundLayerIndex]);
8064
+
7869
8065
  // Add layer to the map
7870
8066
  const addLayer = React.useCallback(() => {
7871
8067
  if (!serviceUrl || !layerName || !datasetFormat) {
@@ -7889,7 +8085,7 @@ const DatasetRowConnect = ({
7889
8085
  setGeoJsonUrl(serviceUrl);
7890
8086
  }
7891
8087
  }, [dispatchAddLayer, datasetFormat, layerName, serviceUrl]);
7892
- return jsx(DatasetRow, {
8088
+ return /*#__PURE__*/jsx(DatasetRow, {
7893
8089
  addDisabled: addDisabled,
7894
8090
  addLayer: addLayer,
7895
8091
  deleteLayer: deleteLayer,
@@ -7900,6 +8096,24 @@ const DatasetRowConnect = ({
7900
8096
  }, feature.id);
7901
8097
  };
7902
8098
 
8099
+ /* *
8100
+ * Licensed under the Apache License, Version 2.0 (the "License");
8101
+ * you may not use this file except in compliance with the License.
8102
+ * You may obtain a copy of the License at
8103
+ *
8104
+ * http://www.apache.org/licenses/LICENSE-2.0
8105
+ *
8106
+ * Unless required by applicable law or agreed to in writing, software
8107
+ * distributed under the License is distributed on an "AS IS" BASIS,
8108
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
8109
+ * See the License for the specific language governing permissions and
8110
+ * limitations under the License.
8111
+ *
8112
+ * Copyright 2025 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
8113
+ * Copyright 2025 - Finnish Meteorological Institute (FMI)
8114
+ * Copyright 2025 - The Norwegian Meteorological Institute (MET Norway)
8115
+ * */
8116
+
7903
8117
  const DatasetList = ({
7904
8118
  datasets,
7905
8119
  mapLayers,
@@ -7909,27 +8123,27 @@ const DatasetList = ({
7909
8123
  t
7910
8124
  } = useDataExplorerTranslation();
7911
8125
  if (!datasets || datasets.features.length === 0) {
7912
- return jsx(Typography, {
8126
+ return /*#__PURE__*/jsx(Typography, {
7913
8127
  sx: {
7914
8128
  marginLeft: '6px'
7915
8129
  },
7916
8130
  children: t('dataexplorer-no-data')
7917
8131
  });
7918
8132
  }
7919
- return jsxs(Grid, {
8133
+ return /*#__PURE__*/jsxs(Grid, {
7920
8134
  sx: {
7921
8135
  overflowY: 'hidden',
7922
8136
  overflowX: 'hidden',
7923
8137
  height: '100%'
7924
8138
  },
7925
- children: [jsx(Typography, {
8139
+ children: [/*#__PURE__*/jsx(Typography, {
7926
8140
  color: "textSecondary",
7927
8141
  sx: {
7928
8142
  marginLeft: '6px'
7929
8143
  },
7930
8144
  variant: "caption",
7931
8145
  children: `${datasets == null ? void 0 : datasets.features.length} results`
7932
- }), jsx(Grid, {
8146
+ }), /*#__PURE__*/jsx(Grid, {
7933
8147
  size: 12,
7934
8148
  sx: {
7935
8149
  overflowY: 'auto',
@@ -7939,7 +8153,7 @@ const DatasetList = ({
7939
8153
  containerType: 'inline-size'
7940
8154
  },
7941
8155
  children: datasets.features.map(feature => {
7942
- return jsx(DatasetRowConnect, {
8156
+ return /*#__PURE__*/jsx(DatasetRowConnect, {
7943
8157
  feature: feature,
7944
8158
  mapLayers: mapLayers,
7945
8159
  searchFilter: searchFilter
@@ -7949,6 +8163,24 @@ const DatasetList = ({
7949
8163
  });
7950
8164
  };
7951
8165
 
8166
+ /* *
8167
+ * Licensed under the Apache License, Version 2.0 (the "License");
8168
+ * you may not use this file except in compliance with the License.
8169
+ * You may obtain a copy of the License at
8170
+ *
8171
+ * http://www.apache.org/licenses/LICENSE-2.0
8172
+ *
8173
+ * Unless required by applicable law or agreed to in writing, software
8174
+ * distributed under the License is distributed on an "AS IS" BASIS,
8175
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
8176
+ * See the License for the specific language governing permissions and
8177
+ * limitations under the License.
8178
+ *
8179
+ * Copyright 2025 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
8180
+ * Copyright 2025 - Finnish Meteorological Institute (FMI)
8181
+ * Copyright 2025 - The Norwegian Meteorological Institute (MET Norway)
8182
+ * */
8183
+
7952
8184
  const DatasetListConnect = () => {
7953
8185
  const activeMapId = useSelector(store => uiSelectors.getDialogMapId(store, uiTypes.DialogTypes.DataExplorer));
7954
8186
  const baseUrl = useSelector(store => getDiscoveryCatalogueURL(store));
@@ -7962,7 +8194,7 @@ const DatasetListConnect = () => {
7962
8194
  data: datasets
7963
8195
  } = useFetchItems(baseUrl, searchFilter, queryables, concepts, bbox, meteogateOnly);
7964
8196
  return React.useMemo(() => {
7965
- return jsx(DatasetList, {
8197
+ return /*#__PURE__*/jsx(DatasetList, {
7966
8198
  datasets: datasets,
7967
8199
  mapLayers: mapLayers,
7968
8200
  searchFilter: searchFilter
@@ -7970,6 +8202,24 @@ const DatasetListConnect = () => {
7970
8202
  }, [datasets, mapLayers, searchFilter]);
7971
8203
  };
7972
8204
 
8205
+ /* *
8206
+ * Licensed under the Apache License, Version 2.0 (the "License");
8207
+ * you may not use this file except in compliance with the License.
8208
+ * You may obtain a copy of the License at
8209
+ *
8210
+ * http://www.apache.org/licenses/LICENSE-2.0
8211
+ *
8212
+ * Unless required by applicable law or agreed to in writing, software
8213
+ * distributed under the License is distributed on an "AS IS" BASIS,
8214
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
8215
+ * See the License for the specific language governing permissions and
8216
+ * limitations under the License.
8217
+ *
8218
+ * Copyright 2025 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
8219
+ * Copyright 2025 - Finnish Meteorological Institute (FMI)
8220
+ * Copyright 2025 - The Norwegian Meteorological Institute (MET Norway)
8221
+ * */
8222
+
7973
8223
  const DataExplorer = ({
7974
8224
  bounds,
7975
8225
  onClose,
@@ -7996,7 +8246,7 @@ const DataExplorer = ({
7996
8246
  renderCounter.count(DataExplorer.name);
7997
8247
  const title = 'MeteoGate Data Explorer';
7998
8248
  const stopWheelEventPropagationRef = useWheelStopPropagation();
7999
- return jsx(ToolContainerDraggable, {
8249
+ return /*#__PURE__*/jsx(ToolContainerDraggable, {
8000
8250
  bounds: bounds,
8001
8251
  className: "dataExplorer",
8002
8252
  "data-testid": "dataExplorerWindow",
@@ -8017,7 +8267,7 @@ const DataExplorer = ({
8017
8267
  height: 520
8018
8268
  },
8019
8269
  title: title,
8020
- children: jsxs(Box, {
8270
+ children: /*#__PURE__*/jsxs(Box, {
8021
8271
  onKeyDown: event => {
8022
8272
  event.stopPropagation();
8023
8273
  },
@@ -8026,7 +8276,7 @@ const DataExplorer = ({
8026
8276
  overflow: 'hidden',
8027
8277
  height: '100%'
8028
8278
  },
8029
- children: [!!_loading && jsx(LinearProgress, {
8279
+ children: [!!_loading && /*#__PURE__*/jsx(LinearProgress, {
8030
8280
  color: "secondary",
8031
8281
  sx: {
8032
8282
  width: '100%',
@@ -8034,19 +8284,19 @@ const DataExplorer = ({
8034
8284
  top: 0,
8035
8285
  left: 0
8036
8286
  }
8037
- }), !!_error && jsx(AlertBanner, {
8287
+ }), !!_error && /*#__PURE__*/jsx(AlertBanner, {
8038
8288
  shouldClose: true,
8039
8289
  title: t('dataexplorer-error-title')
8040
- }), jsxs(Grid, {
8290
+ }), /*#__PURE__*/jsxs(Grid, {
8041
8291
  container: true,
8042
8292
  sx: {
8043
8293
  overflow: 'hidden',
8044
8294
  height: '100%'
8045
8295
  },
8046
- children: [jsx(Grid, {
8296
+ children: [/*#__PURE__*/jsx(Grid, {
8047
8297
  size: 12,
8048
- children: jsx(DataExplorerSearchConnect, {})
8049
- }), jsxs(Grid, {
8298
+ children: /*#__PURE__*/jsx(DataExplorerSearchConnect, {})
8299
+ }), /*#__PURE__*/jsxs(Grid, {
8050
8300
  size: 3,
8051
8301
  style: {
8052
8302
  overflowY: 'auto',
@@ -8054,8 +8304,8 @@ const DataExplorer = ({
8054
8304
  paddingLeft: '12px',
8055
8305
  minWidth: '170px'
8056
8306
  },
8057
- children: [jsx(DataExplorerFiltersConnect, {}), jsx(AreaFilterConnect, {})]
8058
- }), jsxs(Grid, {
8307
+ children: [/*#__PURE__*/jsx(DataExplorerFiltersConnect, {}), /*#__PURE__*/jsx(AreaFilterConnect, {})]
8308
+ }), /*#__PURE__*/jsxs(Grid, {
8059
8309
  container: true,
8060
8310
  flexDirection: "column",
8061
8311
  size: "grow",
@@ -8063,7 +8313,7 @@ const DataExplorer = ({
8063
8313
  overflow: 'hidden',
8064
8314
  height: 'calc(100% - 70px)'
8065
8315
  },
8066
- children: [jsx(Grid, {
8316
+ children: [/*#__PURE__*/jsx(Grid, {
8067
8317
  size: 12,
8068
8318
  sx: {
8069
8319
  paddingLeft: '6px',
@@ -8071,15 +8321,15 @@ const DataExplorer = ({
8071
8321
  marginBottom: '4px',
8072
8322
  flex: '0 0 auto'
8073
8323
  },
8074
- children: jsx(ConceptListConnect, {})
8075
- }), jsx(Grid, {
8324
+ children: /*#__PURE__*/jsx(ConceptListConnect, {})
8325
+ }), /*#__PURE__*/jsx(Grid, {
8076
8326
  size: 12,
8077
8327
  sx: {
8078
8328
  overflowY: 'hidden',
8079
8329
  flex: '1 1 0%',
8080
8330
  minHeight: 0
8081
8331
  },
8082
- children: jsx(DatasetListConnect, {})
8332
+ children: /*#__PURE__*/jsx(DatasetListConnect, {})
8083
8333
  })]
8084
8334
  })]
8085
8335
  })]
@@ -8099,6 +8349,7 @@ const InfoDialogBaseInfo = ({
8099
8349
  // Example: "2023-10-01T12:00:00Z" to "October 1, 2023 (12:00)"
8100
8350
  const formatDateTime = dateTimeString => {
8101
8351
  const date = new Date(dateTimeString);
8352
+
8102
8353
  // Format the date part
8103
8354
  const dateOptions = {
8104
8355
  year: 'numeric',
@@ -8106,6 +8357,7 @@ const InfoDialogBaseInfo = ({
8106
8357
  day: 'numeric'
8107
8358
  };
8108
8359
  const formattedDate = date.toLocaleDateString(undefined, dateOptions);
8360
+
8109
8361
  // Format the time part
8110
8362
  const timeOptions = {
8111
8363
  hour: '2-digit',
@@ -8134,7 +8386,7 @@ const InfoDialogBaseInfo = ({
8134
8386
  return language;
8135
8387
  }
8136
8388
  };
8137
- return jsxs(Grid, {
8389
+ return /*#__PURE__*/jsxs(Grid, {
8138
8390
  container: true,
8139
8391
  "data-testid": "infoDialogBaseInfo",
8140
8392
  direction: "column",
@@ -8143,140 +8395,140 @@ const InfoDialogBaseInfo = ({
8143
8395
  marginLeft: 20,
8144
8396
  marginTop: 10
8145
8397
  },
8146
- children: [jsxs(Grid, {
8398
+ children: [/*#__PURE__*/jsxs(Grid, {
8147
8399
  container: true,
8148
8400
  direction: "column",
8149
8401
  spacing: 0,
8150
- children: [jsx(Grid, {
8151
- children: jsx(Typography, {
8402
+ children: [/*#__PURE__*/jsx(Grid, {
8403
+ children: /*#__PURE__*/jsx(Typography, {
8152
8404
  color: "textSecondary",
8153
8405
  variant: "caption",
8154
8406
  children: t('info-dialog-name')
8155
8407
  })
8156
- }), jsx(Grid, {
8157
- children: jsx(Typography, {
8408
+ }), /*#__PURE__*/jsx(Grid, {
8409
+ children: /*#__PURE__*/jsx(Typography, {
8158
8410
  children: properties.title
8159
8411
  })
8160
8412
  })]
8161
- }), !!properties.updated && jsxs(Grid, {
8413
+ }), !!properties.updated && /*#__PURE__*/jsxs(Grid, {
8162
8414
  container: true,
8163
8415
  direction: "column",
8164
8416
  spacing: 0,
8165
- children: [jsx(Grid, {
8166
- children: jsx(Typography, {
8417
+ children: [/*#__PURE__*/jsx(Grid, {
8418
+ children: /*#__PURE__*/jsx(Typography, {
8167
8419
  color: "textSecondary",
8168
8420
  variant: "caption",
8169
8421
  children: t('base-info-last-updated')
8170
8422
  })
8171
- }), jsx(Grid, {
8172
- children: jsx(Typography, {
8423
+ }), /*#__PURE__*/jsx(Grid, {
8424
+ children: /*#__PURE__*/jsx(Typography, {
8173
8425
  "data-testid": "infoDialogBaseInfolastUpdated",
8174
8426
  children: formatDateTime(properties.updated)
8175
8427
  })
8176
8428
  })]
8177
- }), jsxs(Grid, {
8429
+ }), /*#__PURE__*/jsxs(Grid, {
8178
8430
  container: true,
8179
8431
  direction: "column",
8180
8432
  spacing: 0,
8181
- children: [jsx(Grid, {
8182
- children: jsx(Typography, {
8433
+ children: [/*#__PURE__*/jsx(Grid, {
8434
+ children: /*#__PURE__*/jsx(Typography, {
8183
8435
  color: "textSecondary",
8184
8436
  variant: "caption",
8185
8437
  children: t('base-info-description')
8186
8438
  })
8187
- }), jsx(Grid, {
8188
- children: jsx(Typography, {
8439
+ }), /*#__PURE__*/jsx(Grid, {
8440
+ children: /*#__PURE__*/jsx(Typography, {
8189
8441
  children: properties.description
8190
8442
  })
8191
8443
  })]
8192
- }), !!properties.language && jsxs(Grid, {
8444
+ }), !!properties.language && /*#__PURE__*/jsxs(Grid, {
8193
8445
  container: true,
8194
8446
  direction: "column",
8195
8447
  spacing: 0,
8196
- children: [jsx(Grid, {
8197
- children: jsx(Typography, {
8448
+ children: [/*#__PURE__*/jsx(Grid, {
8449
+ children: /*#__PURE__*/jsx(Typography, {
8198
8450
  color: "textSecondary",
8199
8451
  variant: "caption",
8200
8452
  children: t('base-info-language')
8201
8453
  })
8202
- }), jsx(Grid, {
8203
- children: properties.language.code ? jsx(Typography, {
8454
+ }), /*#__PURE__*/jsx(Grid, {
8455
+ children: properties.language.code ? /*#__PURE__*/jsx(Typography, {
8204
8456
  children: formatLanguage(properties.language.code)
8205
- }) : jsx(Typography, {
8457
+ }) : /*#__PURE__*/jsx(Typography, {
8206
8458
  children: formatLanguage(properties.language)
8207
8459
  })
8208
8460
  })]
8209
- }), jsxs(Grid, {
8461
+ }), /*#__PURE__*/jsxs(Grid, {
8210
8462
  container: true,
8211
8463
  direction: "column",
8212
8464
  spacing: 0,
8213
- children: [jsx(Grid, {
8214
- children: jsx(Typography, {
8465
+ children: [/*#__PURE__*/jsx(Grid, {
8466
+ children: /*#__PURE__*/jsx(Typography, {
8215
8467
  color: "textSecondary",
8216
8468
  variant: "caption",
8217
8469
  children: t('base-info-data-policy')
8218
8470
  })
8219
- }), jsx(Grid, {
8220
- children: jsx(Typography, {
8471
+ }), /*#__PURE__*/jsx(Grid, {
8472
+ children: /*#__PURE__*/jsx(Typography, {
8221
8473
  children: properties['wmo:dataPolicy'].charAt(0).toUpperCase() + properties['wmo:dataPolicy'].slice(1)
8222
8474
  })
8223
8475
  })]
8224
- }), !!properties.formats && jsxs(Grid, {
8476
+ }), !!properties.formats && /*#__PURE__*/jsxs(Grid, {
8225
8477
  container: true,
8226
8478
  direction: "column",
8227
8479
  spacing: 0,
8228
- children: [jsx(Grid, {
8229
- children: jsx(Typography, {
8480
+ children: [/*#__PURE__*/jsx(Grid, {
8481
+ children: /*#__PURE__*/jsx(Typography, {
8230
8482
  color: "textSecondary",
8231
8483
  variant: "caption",
8232
8484
  children: t('base-info-format')
8233
8485
  })
8234
- }), jsx(Grid, {
8235
- children: properties.formats.map(format => jsx(Typography, {
8486
+ }), /*#__PURE__*/jsx(Grid, {
8487
+ children: properties.formats.map(format => /*#__PURE__*/jsx(Typography, {
8236
8488
  children: format.name
8237
8489
  }, format.name))
8238
8490
  })]
8239
- }), !!id && jsxs(Grid, {
8491
+ }), !!id && /*#__PURE__*/jsxs(Grid, {
8240
8492
  container: true,
8241
8493
  direction: "column",
8242
8494
  spacing: 0,
8243
- children: [jsx(Grid, {
8244
- children: jsx(Typography, {
8495
+ children: [/*#__PURE__*/jsx(Grid, {
8496
+ children: /*#__PURE__*/jsx(Typography, {
8245
8497
  color: "textSecondary",
8246
8498
  variant: "caption",
8247
8499
  children: t('base-info-share')
8248
8500
  })
8249
- }), jsxs(Grid, {
8501
+ }), /*#__PURE__*/jsxs(Grid, {
8250
8502
  container: true,
8251
8503
  direction: "row",
8252
8504
  justifyContent: "space-between",
8253
- children: [jsx(Grid, {
8505
+ children: [/*#__PURE__*/jsx(Grid, {
8254
8506
  size: 10,
8255
- children: jsx(Typography, {
8507
+ children: /*#__PURE__*/jsx(Typography, {
8256
8508
  children: `${datasetLink}/items/${id}`
8257
8509
  })
8258
- }), jsxs(Grid, {
8510
+ }), /*#__PURE__*/jsxs(Grid, {
8259
8511
  alignItems: "center",
8260
8512
  container: true,
8261
8513
  justifyContent: "space-evenly",
8262
8514
  size: 2,
8263
- children: [jsx(Link, {
8515
+ children: [/*#__PURE__*/jsx(Link, {
8264
8516
  href: `${datasetLink}/items/${id}`,
8265
8517
  rel: "noopener",
8266
8518
  target: "_blank",
8267
- children: jsx(Tooltip, {
8519
+ children: /*#__PURE__*/jsx(Tooltip, {
8268
8520
  title: t('Go to the source'),
8269
- children: jsx(IconButton, {
8521
+ children: /*#__PURE__*/jsx(IconButton, {
8270
8522
  style: {
8271
8523
  borderRadius: 50
8272
8524
  },
8273
- children: jsx(ExitDomain, {})
8525
+ children: /*#__PURE__*/jsx(ExitDomain, {})
8274
8526
  })
8275
8527
  })
8276
- }), jsx(Grid, {
8277
- children: jsx(Tooltip, {
8528
+ }), /*#__PURE__*/jsx(Grid, {
8529
+ children: /*#__PURE__*/jsx(Tooltip, {
8278
8530
  title: t('Copy dataset link'),
8279
- children: jsx(IconButton, {
8531
+ children: /*#__PURE__*/jsx(IconButton, {
8280
8532
  onClick: () => {
8281
8533
  navigator.clipboard.writeText(`${datasetLink}/items/${id}`).catch(error => {
8282
8534
  console.error('Failed to copy text to clipboard:', error);
@@ -8285,7 +8537,7 @@ const InfoDialogBaseInfo = ({
8285
8537
  style: {
8286
8538
  borderRadius: 50
8287
8539
  },
8288
- children: jsx(Link$1, {})
8540
+ children: /*#__PURE__*/jsx(Link$1, {})
8289
8541
  })
8290
8542
  })
8291
8543
  })]
@@ -8384,18 +8636,29 @@ var NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;
8384
8636
 
8385
8637
  var PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED || UNSUPPORTED_Y$1 || UNSUPPORTED_DOT_ALL || UNSUPPORTED_NCG;
8386
8638
 
8639
+ var setGroups = function (re, groups) {
8640
+ var object = re.groups = create(null);
8641
+ for (var i = 0; i < groups.length; i++) {
8642
+ var group = groups[i];
8643
+ object[group[0]] = re[group[1]];
8644
+ }
8645
+ };
8646
+
8387
8647
  if (PATCH) {
8388
8648
  patchedExec = function exec(string) {
8389
8649
  var re = this;
8390
8650
  var state = getInternalState(re);
8391
8651
  var str = toString$3(string);
8392
8652
  var raw = state.raw;
8393
- var result, reCopy, lastIndex, match, i, object, group;
8653
+ var result, reCopy, lastIndex;
8394
8654
 
8395
8655
  if (raw) {
8396
8656
  raw.lastIndex = re.lastIndex;
8397
8657
  result = call$5(patchedExec, raw, str);
8398
8658
  re.lastIndex = raw.lastIndex;
8659
+
8660
+ if (result && state.groups) setGroups(result, state.groups);
8661
+
8399
8662
  return result;
8400
8663
  }
8401
8664
 
@@ -8414,8 +8677,10 @@ if (PATCH) {
8414
8677
 
8415
8678
  strCopy = stringSlice$3(str, re.lastIndex);
8416
8679
  // Support anchored sticky behavior.
8417
- if (re.lastIndex > 0 && (!re.multiline || re.multiline && charAt$2(str, re.lastIndex - 1) !== '\n')) {
8418
- source = '(?: ' + source + ')';
8680
+ var prevChar = re.lastIndex > 0 && charAt$2(str, re.lastIndex - 1);
8681
+ if (re.lastIndex > 0 &&
8682
+ (!re.multiline || re.multiline && prevChar !== '\n' && prevChar !== '\r' && prevChar !== '\u2028' && prevChar !== '\u2029')) {
8683
+ source = '(?: (?:' + source + '))';
8419
8684
  strCopy = ' ' + strCopy;
8420
8685
  charsAdded++;
8421
8686
  }
@@ -8429,11 +8694,11 @@ if (PATCH) {
8429
8694
  }
8430
8695
  if (UPDATES_LAST_INDEX_WRONG) lastIndex = re.lastIndex;
8431
8696
 
8432
- match = call$5(nativeExec, sticky ? reCopy : re, strCopy);
8697
+ var match = call$5(nativeExec, sticky ? reCopy : re, strCopy);
8433
8698
 
8434
8699
  if (sticky) {
8435
8700
  if (match) {
8436
- match.input = stringSlice$3(match.input, charsAdded);
8701
+ match.input = str;
8437
8702
  match[0] = stringSlice$3(match[0], charsAdded);
8438
8703
  match.index = re.lastIndex;
8439
8704
  re.lastIndex += match[0].length;
@@ -8445,19 +8710,13 @@ if (PATCH) {
8445
8710
  // Fix browsers whose `exec` methods don't consistently return `undefined`
8446
8711
  // for NPCG, like IE8. NOTE: This doesn't work for /(.?)?/
8447
8712
  call$5(nativeReplace, match[0], reCopy, function () {
8448
- for (i = 1; i < arguments.length - 2; i++) {
8713
+ for (var i = 1; i < arguments.length - 2; i++) {
8449
8714
  if (arguments[i] === undefined) match[i] = undefined;
8450
8715
  }
8451
8716
  });
8452
8717
  }
8453
8718
 
8454
- if (match && groups) {
8455
- match.groups = object = create(null);
8456
- for (i = 0; i < groups.length; i++) {
8457
- group = groups[i];
8458
- object[group[0]] = match[group[1]];
8459
- }
8460
- }
8719
+ if (match && groups) setGroups(match, groups);
8461
8720
 
8462
8721
  return match;
8463
8722
  };
@@ -8492,6 +8751,7 @@ var fixRegexpWellKnownSymbolLogic = function (KEY, exec, FORCED, SHAM) {
8492
8751
  var DELEGATES_TO_SYMBOL = !fails$2(function () {
8493
8752
  // String methods call symbol-named RegExp methods
8494
8753
  var O = {};
8754
+ // eslint-disable-next-line unicorn/no-immediate-mutation -- ES3 syntax limitation
8495
8755
  O[SYMBOL] = function () { return 7; };
8496
8756
  return ''[KEY](O) !== 7;
8497
8757
  });
@@ -8505,12 +8765,13 @@ var fixRegexpWellKnownSymbolLogic = function (KEY, exec, FORCED, SHAM) {
8505
8765
  // We can't use real regex here since it causes deoptimization
8506
8766
  // and serious performance degradation in V8
8507
8767
  // https://github.com/zloirock/core-js/issues/306
8508
- re = {};
8509
8768
  // RegExp[@@split] doesn't call the regex's exec method, but first creates
8510
8769
  // a new one. We need to return the patched regex when creating the new one.
8511
- re.constructor = {};
8512
- re.constructor[SPECIES] = function () { return re; };
8513
- re.flags = '';
8770
+ var constructor = {};
8771
+ // eslint-disable-next-line unicorn/no-immediate-mutation -- ES3 syntax limitation
8772
+ constructor[SPECIES] = function () { return re; };
8773
+ re = { constructor: constructor, flags: '' };
8774
+ // eslint-disable-next-line unicorn/no-immediate-mutation -- ES3 syntax limitation
8514
8775
  re[SYMBOL] = /./[SYMBOL];
8515
8776
  }
8516
8777
 
@@ -8555,7 +8816,7 @@ var charAt$1 = stringMultibyte.charAt;
8555
8816
  // `AdvanceStringIndex` abstract operation
8556
8817
  // https://tc39.es/ecma262/#sec-advancestringindex
8557
8818
  var advanceStringIndex$2 = function (S, index, unicode) {
8558
- return index + (unicode ? charAt$1(S, index).length : 1);
8819
+ return index + (unicode ? charAt$1(S, index).length || 1 : 1);
8559
8820
  };
8560
8821
 
8561
8822
  var uncurryThis$2 = functionUncurryThis;
@@ -8640,7 +8901,7 @@ var requireObjectCoercible$1 = requireObjectCoercible$8;
8640
8901
  var advanceStringIndex$1 = advanceStringIndex$2;
8641
8902
  var getMethod$1 = getMethod$5;
8642
8903
  var getSubstitution = getSubstitution$1;
8643
- var getRegExpFlags = regexpGetFlags;
8904
+ var getRegExpFlags$1 = regexpGetFlags;
8644
8905
  var regExpExec$1 = regexpExecAbstract;
8645
8906
  var wellKnownSymbol = wellKnownSymbol$l;
8646
8907
 
@@ -8649,7 +8910,7 @@ var max = Math.max;
8649
8910
  var min$1 = Math.min;
8650
8911
  var concat = uncurryThis$1([].concat);
8651
8912
  var push$1 = uncurryThis$1([].push);
8652
- var stringIndexOf = uncurryThis$1(''.indexOf);
8913
+ var stringIndexOf$1 = uncurryThis$1(''.indexOf);
8653
8914
  var stringSlice$1 = uncurryThis$1(''.slice);
8654
8915
 
8655
8916
  var maybeToString = function (it) {
@@ -8702,23 +8963,24 @@ fixRegExpWellKnownSymbolLogic$1('replace', function (_, nativeReplace, maybeCall
8702
8963
  var rx = anObject$2(this);
8703
8964
  var S = toString$2(string);
8704
8965
 
8966
+ var functionalReplace = isCallable$1(replaceValue);
8967
+ if (!functionalReplace) replaceValue = toString$2(replaceValue);
8968
+ var flags = toString$2(getRegExpFlags$1(rx));
8969
+
8705
8970
  if (
8706
8971
  typeof replaceValue == 'string' &&
8707
- stringIndexOf(replaceValue, UNSAFE_SUBSTITUTE) === -1 &&
8708
- stringIndexOf(replaceValue, '$<') === -1
8972
+ !~stringIndexOf$1(replaceValue, UNSAFE_SUBSTITUTE) &&
8973
+ !~stringIndexOf$1(replaceValue, '$<') &&
8974
+ !~stringIndexOf$1(flags, 'y')
8709
8975
  ) {
8710
8976
  var res = maybeCallNative(nativeReplace, rx, S, replaceValue);
8711
8977
  if (res.done) return res.value;
8712
8978
  }
8713
8979
 
8714
- var functionalReplace = isCallable$1(replaceValue);
8715
- if (!functionalReplace) replaceValue = toString$2(replaceValue);
8716
-
8717
- var flags = toString$2(getRegExpFlags(rx));
8718
- var global = stringIndexOf(flags, 'g') !== -1;
8980
+ var global = !!~stringIndexOf$1(flags, 'g');
8719
8981
  var fullUnicode;
8720
8982
  if (global) {
8721
- fullUnicode = stringIndexOf(flags, 'u') !== -1;
8983
+ fullUnicode = !!~stringIndexOf$1(flags, 'u') || !!~stringIndexOf$1(flags, 'v');
8722
8984
  rx.lastIndex = 0;
8723
8985
  }
8724
8986
 
@@ -8787,70 +9049,70 @@ const DiscoveryCatalogueInfo = ({
8787
9049
  const formatHoursOfService = hoursOfService => {
8788
9050
  return hoursOfService.replace(/(\d{2})(\d{2})h/g, '$1:$2');
8789
9051
  };
8790
- return jsxs(Grid, {
9052
+ return /*#__PURE__*/jsxs(Grid, {
8791
9053
  container: true,
8792
9054
  "data-testid": "InfoDialogContactsInfo",
8793
9055
  direction: "column",
8794
9056
  spacing: 2,
8795
- children: [!!name && jsxs(Grid, {
9057
+ children: [!!name && /*#__PURE__*/jsxs(Grid, {
8796
9058
  container: true,
8797
9059
  direction: "column",
8798
9060
  spacing: 0,
8799
- children: [jsx(Grid, {
8800
- children: jsx(Typography, {
9061
+ children: [/*#__PURE__*/jsx(Grid, {
9062
+ children: /*#__PURE__*/jsx(Typography, {
8801
9063
  color: "textSecondary",
8802
9064
  variant: "caption",
8803
9065
  children: t('contacts-name')
8804
9066
  })
8805
- }), jsx(Grid, {
8806
- children: jsx(Typography, {
9067
+ }), /*#__PURE__*/jsx(Grid, {
9068
+ children: /*#__PURE__*/jsx(Typography, {
8807
9069
  children: name
8808
9070
  })
8809
9071
  })]
8810
- }), !!(addresses != null && addresses[0].deliveryPoint) && jsxs(Grid, {
9072
+ }), !!(addresses != null && addresses[0].deliveryPoint) && /*#__PURE__*/jsxs(Grid, {
8811
9073
  container: true,
8812
9074
  direction: "column",
8813
9075
  spacing: 0,
8814
- children: [jsx(Grid, {
8815
- children: jsx(Typography, {
9076
+ children: [/*#__PURE__*/jsx(Grid, {
9077
+ children: /*#__PURE__*/jsx(Typography, {
8816
9078
  color: "textSecondary",
8817
9079
  variant: "caption",
8818
9080
  children: t('contacts-address')
8819
9081
  })
8820
- }), jsx(Grid, {
8821
- children: jsx(Typography, {
9082
+ }), /*#__PURE__*/jsx(Grid, {
9083
+ children: /*#__PURE__*/jsx(Typography, {
8822
9084
  children: addresses[0].deliveryPoint[0]
8823
9085
  })
8824
9086
  })]
8825
- }), !!(emails != null && emails[0].value) && jsxs(Grid, {
9087
+ }), !!(emails != null && emails[0].value) && /*#__PURE__*/jsxs(Grid, {
8826
9088
  container: true,
8827
9089
  direction: "row",
8828
9090
  justifyContent: "space-between",
8829
- children: [jsxs(Grid, {
9091
+ children: [/*#__PURE__*/jsxs(Grid, {
8830
9092
  container: true,
8831
9093
  direction: "column",
8832
9094
  size: 10,
8833
9095
  spacing: 0,
8834
- children: [jsx(Grid, {
8835
- children: jsx(Typography, {
9096
+ children: [/*#__PURE__*/jsx(Grid, {
9097
+ children: /*#__PURE__*/jsx(Typography, {
8836
9098
  color: "textSecondary",
8837
9099
  variant: "caption",
8838
9100
  children: t('contacts-email')
8839
9101
  })
8840
- }), jsx(Grid, {
8841
- children: jsx(Typography, {
9102
+ }), /*#__PURE__*/jsx(Grid, {
9103
+ children: /*#__PURE__*/jsx(Typography, {
8842
9104
  children: emails[0].value
8843
9105
  })
8844
9106
  })]
8845
- }), jsx(Grid, {
9107
+ }), /*#__PURE__*/jsx(Grid, {
8846
9108
  alignItems: "flex-end",
8847
9109
  container: true,
8848
9110
  justifyContent: "flex-end",
8849
9111
  size: 2,
8850
- children: jsx(Grid, {
8851
- children: jsx(Tooltip, {
9112
+ children: /*#__PURE__*/jsx(Grid, {
9113
+ children: /*#__PURE__*/jsx(Tooltip, {
8852
9114
  title: t('Copy the link'),
8853
- children: jsx(IconButton, {
9115
+ children: /*#__PURE__*/jsx(IconButton, {
8854
9116
  onClick: () => {
8855
9117
  var _emails$;
8856
9118
  navigator.clipboard.writeText((emails == null || (_emails$ = emails[0]) == null ? void 0 : _emails$.value) || '').catch(error => {
@@ -8860,54 +9122,54 @@ const DiscoveryCatalogueInfo = ({
8860
9122
  style: {
8861
9123
  borderRadius: 50
8862
9124
  },
8863
- children: jsx(Copy, {})
9125
+ children: /*#__PURE__*/jsx(Copy, {})
8864
9126
  })
8865
9127
  })
8866
9128
  })
8867
9129
  })]
8868
- }), !!(links != null && links[0].href) && jsxs(Grid, {
9130
+ }), !!(links != null && links[0].href) && /*#__PURE__*/jsxs(Grid, {
8869
9131
  container: true,
8870
9132
  direction: "row",
8871
9133
  justifyContent: "space-between",
8872
9134
  size: 12,
8873
9135
  spacing: 0,
8874
- children: [jsxs(Grid, {
9136
+ children: [/*#__PURE__*/jsxs(Grid, {
8875
9137
  container: true,
8876
9138
  direction: "column",
8877
- children: [jsx(Grid, {
8878
- children: jsx(Typography, {
9139
+ children: [/*#__PURE__*/jsx(Grid, {
9140
+ children: /*#__PURE__*/jsx(Typography, {
8879
9141
  color: "textSecondary",
8880
9142
  variant: "caption",
8881
9143
  children: t('contacts-web')
8882
9144
  })
8883
- }), jsx(Grid, {
8884
- children: jsx(Typography, {
9145
+ }), /*#__PURE__*/jsx(Grid, {
9146
+ children: /*#__PURE__*/jsx(Typography, {
8885
9147
  children: links[0].href
8886
9148
  })
8887
9149
  })]
8888
- }), jsxs(Grid, {
9150
+ }), /*#__PURE__*/jsxs(Grid, {
8889
9151
  alignItems: "flex-end",
8890
9152
  container: true,
8891
9153
  direction: "row",
8892
9154
  justifyContent: "center",
8893
- children: [jsx(Link, {
9155
+ children: [/*#__PURE__*/jsx(Link, {
8894
9156
  href: links[0].href,
8895
9157
  rel: "noopener",
8896
9158
  target: "_blank",
8897
- children: jsx(Tooltip, {
9159
+ children: /*#__PURE__*/jsx(Tooltip, {
8898
9160
  title: t('Open'),
8899
- children: jsx(IconButton, {
9161
+ children: /*#__PURE__*/jsx(IconButton, {
8900
9162
  style: {
8901
9163
  borderRadius: 50,
8902
9164
  color: '#186DFF'
8903
9165
  },
8904
- children: jsx(ExitDomain, {})
9166
+ children: /*#__PURE__*/jsx(ExitDomain, {})
8905
9167
  })
8906
9168
  })
8907
- }), jsx(Grid, {
8908
- children: jsx(Tooltip, {
9169
+ }), /*#__PURE__*/jsx(Grid, {
9170
+ children: /*#__PURE__*/jsx(Tooltip, {
8909
9171
  title: t('Copy the link'),
8910
- children: jsx(IconButton, {
9172
+ children: /*#__PURE__*/jsx(IconButton, {
8911
9173
  onClick: () => {
8912
9174
  var _links$;
8913
9175
  navigator.clipboard.writeText((links == null || (_links$ = links[0]) == null ? void 0 : _links$.href) || '').catch(error => {
@@ -8917,84 +9179,84 @@ const DiscoveryCatalogueInfo = ({
8917
9179
  style: {
8918
9180
  borderRadius: 50
8919
9181
  },
8920
- children: jsx(Copy, {})
9182
+ children: /*#__PURE__*/jsx(Copy, {})
8921
9183
  })
8922
9184
  })
8923
9185
  })]
8924
9186
  })]
8925
- }), !!roles && jsxs(Grid, {
9187
+ }), !!roles && /*#__PURE__*/jsxs(Grid, {
8926
9188
  container: true,
8927
9189
  direction: "column",
8928
9190
  spacing: 0,
8929
- children: [jsx(Grid, {
8930
- children: jsx(Typography, {
9191
+ children: [/*#__PURE__*/jsx(Grid, {
9192
+ children: /*#__PURE__*/jsx(Typography, {
8931
9193
  color: "textSecondary",
8932
9194
  variant: "caption",
8933
9195
  children: t('contacts-role')
8934
9196
  })
8935
- }), jsx(Grid, {
8936
- children: jsx(Typography, {
9197
+ }), /*#__PURE__*/jsx(Grid, {
9198
+ children: /*#__PURE__*/jsx(Typography, {
8937
9199
  children: roles[0].charAt(0).toUpperCase() + roles[0].slice(1)
8938
9200
  })
8939
9201
  })]
8940
- }), !!organization && jsxs(Grid, {
9202
+ }), !!organization && /*#__PURE__*/jsxs(Grid, {
8941
9203
  container: true,
8942
9204
  direction: "column",
8943
9205
  spacing: 0,
8944
- children: [jsx(Grid, {
8945
- children: jsx(Typography, {
9206
+ children: [/*#__PURE__*/jsx(Grid, {
9207
+ children: /*#__PURE__*/jsx(Typography, {
8946
9208
  color: "textSecondary",
8947
9209
  variant: "caption",
8948
9210
  children: t('contacts-organisation')
8949
9211
  })
8950
- }), jsx(Grid, {
8951
- children: jsx(Typography, {
9212
+ }), /*#__PURE__*/jsx(Grid, {
9213
+ children: /*#__PURE__*/jsx(Typography, {
8952
9214
  children: organization
8953
9215
  })
8954
9216
  })]
8955
- }), !!hoursOfService && jsxs(Grid, {
9217
+ }), !!hoursOfService && /*#__PURE__*/jsxs(Grid, {
8956
9218
  container: true,
8957
9219
  direction: "column",
8958
9220
  spacing: 0,
8959
- children: [jsx(Grid, {
8960
- children: jsx(Typography, {
9221
+ children: [/*#__PURE__*/jsx(Grid, {
9222
+ children: /*#__PURE__*/jsx(Typography, {
8961
9223
  color: "textSecondary",
8962
9224
  variant: "caption",
8963
9225
  children: t('contacts-hours-of-service')
8964
9226
  })
8965
- }), jsx(Grid, {
8966
- children: jsx(Typography, {
9227
+ }), /*#__PURE__*/jsx(Grid, {
9228
+ children: /*#__PURE__*/jsx(Typography, {
8967
9229
  "data-testid": "contactsHoursOfService",
8968
9230
  children: formatHoursOfService(hoursOfService)
8969
9231
  })
8970
9232
  })]
8971
- }), !!contactInstructions && jsxs(Grid, {
9233
+ }), !!contactInstructions && /*#__PURE__*/jsxs(Grid, {
8972
9234
  container: true,
8973
9235
  direction: "column",
8974
9236
  spacing: 0,
8975
- children: [jsx(Grid, {
8976
- children: jsx(Typography, {
9237
+ children: [/*#__PURE__*/jsx(Grid, {
9238
+ children: /*#__PURE__*/jsx(Typography, {
8977
9239
  color: "textSecondary",
8978
9240
  variant: "caption",
8979
9241
  children: t('contacts-contact-instructions')
8980
9242
  })
8981
- }), jsx(Grid, {
8982
- children: jsx(Typography, {
9243
+ }), /*#__PURE__*/jsx(Grid, {
9244
+ children: /*#__PURE__*/jsx(Typography, {
8983
9245
  children: contactInstructions.charAt(0).toUpperCase() + contactInstructions.slice(1)
8984
9246
  })
8985
9247
  })]
8986
- }), !!(phones != null && phones[0].value) && jsxs(Grid, {
9248
+ }), !!(phones != null && phones[0].value) && /*#__PURE__*/jsxs(Grid, {
8987
9249
  container: true,
8988
9250
  direction: "column",
8989
9251
  spacing: 0,
8990
- children: [jsx(Grid, {
8991
- children: jsx(Typography, {
9252
+ children: [/*#__PURE__*/jsx(Grid, {
9253
+ children: /*#__PURE__*/jsx(Typography, {
8992
9254
  color: "textSecondary",
8993
9255
  variant: "caption",
8994
9256
  children: t('contacts-telephone')
8995
9257
  })
8996
- }), jsx(Grid, {
8997
- children: jsx(Typography, {
9258
+ }), /*#__PURE__*/jsx(Grid, {
9259
+ children: /*#__PURE__*/jsx(Typography, {
8998
9260
  children: phones[0].value
8999
9261
  })
9000
9262
  })]
@@ -9019,6 +9281,7 @@ const DiscoveryCatalogueInfo = ({
9019
9281
  * Copyright 2025 - Finnish Meteorological Institute (FMI)
9020
9282
  * Copyright 2025 - The Norwegian Meteorological Institute (MET Norway)
9021
9283
  * */
9284
+
9022
9285
  // Multipolygon coordinates
9023
9286
  const findSmallestMultiPolygonFirstChild = multiPolygons => {
9024
9287
  const smallestValues = multiPolygons.map(polygon => {
@@ -9048,6 +9311,7 @@ const findLargestMultiPolygonLastChild = multiPolygons => {
9048
9311
  });
9049
9312
  return Math.max(...largestValues);
9050
9313
  };
9314
+
9051
9315
  // Polygon coordinates
9052
9316
  const findSmallestPolygonFirstChild = pairs => {
9053
9317
  return Math.min(...pairs[0].map(([first]) => first));
@@ -9062,6 +9326,24 @@ const findLargestPolygonLastChild = pairs => {
9062
9326
  return Math.max(...pairs[0].map(([, last]) => last));
9063
9327
  };
9064
9328
 
9329
+ /* *
9330
+ * Licensed under the Apache License, Version 2.0 (the "License");
9331
+ * you may not use this file except in compliance with the License.
9332
+ * You may obtain a copy of the License at
9333
+ *
9334
+ * http://www.apache.org/licenses/LICENSE-2.0
9335
+ *
9336
+ * Unless required by applicable law or agreed to in writing, software
9337
+ * distributed under the License is distributed on an "AS IS" BASIS,
9338
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
9339
+ * See the License for the specific language governing permissions and
9340
+ * limitations under the License.
9341
+ *
9342
+ * Copyright 2025 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
9343
+ * Copyright 2025 - Finnish Meteorological Institute (FMI)
9344
+ * Copyright 2025 - The Norwegian Meteorological Institute (MET Norway)
9345
+ * */
9346
+
9065
9347
  const InfoDialogGeographicalCoverage = ({
9066
9348
  coordinates,
9067
9349
  type
@@ -9073,73 +9355,73 @@ const InfoDialogGeographicalCoverage = ({
9073
9355
  const isMultiPolygon = type === 'multipolygon' || type === 'MultiPolygon';
9074
9356
  const polygon = coordinates;
9075
9357
  const multiPolygons = coordinates;
9076
- return jsxs(Grid, {
9358
+ return /*#__PURE__*/jsxs(Grid, {
9077
9359
  container: true,
9078
9360
  "data-testid": "infoDialogGeographicalCoverage",
9079
9361
  direction: "column",
9080
9362
  spacing: 2,
9081
- children: [jsxs(Grid, {
9363
+ children: [/*#__PURE__*/jsxs(Grid, {
9082
9364
  container: true,
9083
9365
  direction: "column",
9084
9366
  spacing: 0,
9085
- children: [jsx(Grid, {
9086
- children: jsx(Typography, {
9367
+ children: [/*#__PURE__*/jsx(Grid, {
9368
+ children: /*#__PURE__*/jsx(Typography, {
9087
9369
  color: "textSecondary",
9088
9370
  variant: "caption",
9089
9371
  children: t('geographical-coverage-westernmost')
9090
9372
  })
9091
- }), jsx(Grid, {
9092
- children: jsxs(Typography, {
9373
+ }), /*#__PURE__*/jsx(Grid, {
9374
+ children: /*#__PURE__*/jsxs(Typography, {
9093
9375
  "data-testid": "infoDialogGeographicalCoverageWesternmost",
9094
- children: [isMultiPolygon ? findSmallestMultiPolygonFirstChild(multiPolygons) : findSmallestPolygonFirstChild(polygon), "\u00B0"]
9376
+ children: [isMultiPolygon ? findSmallestMultiPolygonFirstChild(multiPolygons) : findSmallestPolygonFirstChild(polygon), "\xB0"]
9095
9377
  })
9096
9378
  })]
9097
- }), jsxs(Grid, {
9379
+ }), /*#__PURE__*/jsxs(Grid, {
9098
9380
  container: true,
9099
9381
  direction: "column",
9100
9382
  spacing: 0,
9101
- children: [jsx(Grid, {
9102
- children: jsx(Typography, {
9383
+ children: [/*#__PURE__*/jsx(Grid, {
9384
+ children: /*#__PURE__*/jsx(Typography, {
9103
9385
  color: "textSecondary",
9104
9386
  variant: "caption",
9105
9387
  children: t('geographical-coverage-easternmost')
9106
9388
  })
9107
- }), jsx(Grid, {
9108
- children: jsxs(Typography, {
9389
+ }), /*#__PURE__*/jsx(Grid, {
9390
+ children: /*#__PURE__*/jsxs(Typography, {
9109
9391
  "data-testid": "infoDialogGeographicalCoverageEasternmost",
9110
- children: [isMultiPolygon ? findLargestMultiPolygonFirstChild(multiPolygons) : findLargestPolygonFirstChild(polygon), "\u00B0"]
9392
+ children: [isMultiPolygon ? findLargestMultiPolygonFirstChild(multiPolygons) : findLargestPolygonFirstChild(polygon), "\xB0"]
9111
9393
  })
9112
9394
  })]
9113
- }), jsxs(Grid, {
9395
+ }), /*#__PURE__*/jsxs(Grid, {
9114
9396
  container: true,
9115
9397
  direction: "column",
9116
9398
  spacing: 0,
9117
- children: [jsx(Grid, {
9118
- children: jsx(Typography, {
9399
+ children: [/*#__PURE__*/jsx(Grid, {
9400
+ children: /*#__PURE__*/jsx(Typography, {
9119
9401
  color: "textSecondary",
9120
9402
  variant: "caption",
9121
9403
  children: t('geographical-coverage-northernmost')
9122
9404
  })
9123
- }), jsx(Grid, {
9124
- children: jsxs(Typography, {
9405
+ }), /*#__PURE__*/jsx(Grid, {
9406
+ children: /*#__PURE__*/jsxs(Typography, {
9125
9407
  "data-testid": "infoDialogGeographicalCoverageNorthernmost",
9126
- children: [isMultiPolygon ? findLargestMultiPolygonLastChild(multiPolygons) : findLargestPolygonLastChild(polygon), "\u00B0"]
9408
+ children: [isMultiPolygon ? findLargestMultiPolygonLastChild(multiPolygons) : findLargestPolygonLastChild(polygon), "\xB0"]
9127
9409
  })
9128
9410
  })]
9129
- }), jsxs(Grid, {
9411
+ }), /*#__PURE__*/jsxs(Grid, {
9130
9412
  container: true,
9131
9413
  direction: "column",
9132
9414
  spacing: 0,
9133
- children: [jsx(Grid, {
9134
- children: jsx(Typography, {
9415
+ children: [/*#__PURE__*/jsx(Grid, {
9416
+ children: /*#__PURE__*/jsx(Typography, {
9135
9417
  color: "textSecondary",
9136
9418
  variant: "caption",
9137
9419
  children: t('geographical-coverage-southernmost')
9138
9420
  })
9139
- }), jsx(Grid, {
9140
- children: jsxs(Typography, {
9421
+ }), /*#__PURE__*/jsx(Grid, {
9422
+ children: /*#__PURE__*/jsxs(Typography, {
9141
9423
  "data-testid": "infoDialogGeographicalCoverageSouthernmost",
9142
- children: [isMultiPolygon ? findSmallestMultiPolygonLastChild(multiPolygons) : findSmallestPolygonLastChild(polygon), "\u00B0"]
9424
+ children: [isMultiPolygon ? findSmallestMultiPolygonLastChild(multiPolygons) : findSmallestPolygonLastChild(polygon), "\xB0"]
9143
9425
  })
9144
9426
  })]
9145
9427
  })]
@@ -9162,7 +9444,7 @@ $$1({ target: 'Array', proto: true }, {
9162
9444
  var A;
9163
9445
  aCallable(callbackfn);
9164
9446
  A = arraySpeciesCreate(O, 0);
9165
- A.length = flattenIntoArray(A, O, O, sourceLen, 0, 1, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
9447
+ flattenIntoArray(A, O, O, sourceLen, 0, 1, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
9166
9448
  return A;
9167
9449
  }
9168
9450
  });
@@ -9185,39 +9467,39 @@ const InfoDialogKeywords = ({
9185
9467
  const getAllThemeIds = themes => {
9186
9468
  return themes.flatMap(theme => theme.concepts.map(concept => concept.id));
9187
9469
  };
9188
- return jsxs(Grid, {
9470
+ return /*#__PURE__*/jsxs(Grid, {
9189
9471
  container: true,
9190
9472
  direction: "column",
9191
9473
  spacing: 2,
9192
- children: [!!themes && jsxs(Grid, {
9474
+ children: [!!themes && /*#__PURE__*/jsxs(Grid, {
9193
9475
  container: true,
9194
9476
  direction: "column",
9195
9477
  spacing: 0,
9196
- children: [jsx(Grid, {
9197
- children: jsx(Typography, {
9478
+ children: [/*#__PURE__*/jsx(Grid, {
9479
+ children: /*#__PURE__*/jsx(Typography, {
9198
9480
  color: "textSecondary",
9199
9481
  variant: "caption",
9200
9482
  children: t('themes-and-keywords-themes')
9201
9483
  })
9202
- }), jsx(Grid, {
9484
+ }), /*#__PURE__*/jsx(Grid, {
9203
9485
  container: true,
9204
- children: jsx(Typography, {
9486
+ children: /*#__PURE__*/jsx(Typography, {
9205
9487
  children: getAllThemeIds(themes).join(', ')
9206
9488
  })
9207
9489
  })]
9208
- }), !!keywords && jsxs(Grid, {
9490
+ }), !!keywords && /*#__PURE__*/jsxs(Grid, {
9209
9491
  container: true,
9210
9492
  direction: "column",
9211
9493
  spacing: 0,
9212
- children: [jsx(Grid, {
9213
- children: jsx(Typography, {
9494
+ children: [/*#__PURE__*/jsx(Grid, {
9495
+ children: /*#__PURE__*/jsx(Typography, {
9214
9496
  color: "textSecondary",
9215
9497
  variant: "caption",
9216
9498
  children: t('themes-and-keywords-keywords')
9217
9499
  })
9218
- }), jsx(Grid, {
9500
+ }), /*#__PURE__*/jsx(Grid, {
9219
9501
  container: true,
9220
- children: jsx(Typography, {
9502
+ children: /*#__PURE__*/jsx(Typography, {
9221
9503
  children: keywords.join(', ')
9222
9504
  })
9223
9505
  })]
@@ -9225,30 +9507,48 @@ const InfoDialogKeywords = ({
9225
9507
  });
9226
9508
  };
9227
9509
 
9510
+ /* *
9511
+ * Licensed under the Apache License, Version 2.0 (the "License");
9512
+ * you may not use this file except in compliance with the License.
9513
+ * You may obtain a copy of the License at
9514
+ *
9515
+ * http://www.apache.org/licenses/LICENSE-2.0
9516
+ *
9517
+ * Unless required by applicable law or agreed to in writing, software
9518
+ * distributed under the License is distributed on an "AS IS" BASIS,
9519
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
9520
+ * See the License for the specific language governing permissions and
9521
+ * limitations under the License.
9522
+ *
9523
+ * Copyright 2025 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
9524
+ * Copyright 2025 - Finnish Meteorological Institute (FMI)
9525
+ * Copyright 2025 - The Norwegian Meteorological Institute (MET Norway)
9526
+ * */
9527
+
9228
9528
  const InfoDialogLinks = ({
9229
9529
  href,
9230
9530
  title
9231
9531
  }) => {
9232
- return jsx(Grid, {
9532
+ return /*#__PURE__*/jsx(Grid, {
9233
9533
  container: true,
9234
9534
  direction: "column",
9235
9535
  spacing: 0,
9236
9536
  style: {
9237
9537
  paddingBottom: 20
9238
9538
  },
9239
- children: jsx(Link, {
9539
+ children: /*#__PURE__*/jsx(Link, {
9240
9540
  href: href,
9241
9541
  rel: "noopener",
9242
9542
  target: "_blank",
9243
- children: jsxs(Grid, {
9543
+ children: /*#__PURE__*/jsxs(Grid, {
9244
9544
  container: true,
9245
9545
  direction: "row",
9246
9546
  spacing: 0.5,
9247
- children: [title ? jsx(Typography, {
9547
+ children: [title ? /*#__PURE__*/jsx(Typography, {
9248
9548
  children: title
9249
- }) : jsx(Typography, {
9549
+ }) : /*#__PURE__*/jsx(Typography, {
9250
9550
  children: t('Untitled')
9251
- }), jsx(ExitDomain, {})]
9551
+ }), /*#__PURE__*/jsx(ExitDomain, {})]
9252
9552
  })
9253
9553
  })
9254
9554
  }, href);
@@ -9306,6 +9606,7 @@ $({ target: 'RegExp', proto: true, forced: !DELEGATES_TO_EXEC }, {
9306
9606
  * Copyright 2025 - Finnish Meteorological Institute (FMI)
9307
9607
  * Copyright 2025 - The Norwegian Meteorological Institute (MET Norway)
9308
9608
  * */
9609
+
9309
9610
  // Parse ISO 8601 duration format (e.g., PT1H30M) to a human-readable format
9310
9611
  const parseISO8601Duration = isoDuration => {
9311
9612
  const regex = /P(?:(\d+)D)?T?(?:(\d+)H)?(?:(\d+)M)?(?:(\d+)S)?/;
@@ -9356,39 +9657,39 @@ const InfoDialogTime = ({
9356
9657
  }
9357
9658
  return `${formatDate(dateRange[0])} - ${formatDate(dateRange[1])}`;
9358
9659
  };
9359
- return jsxs(Grid, {
9660
+ return /*#__PURE__*/jsxs(Grid, {
9360
9661
  container: true,
9361
9662
  "data-testid": "infoDialogTime",
9362
9663
  direction: "column",
9363
9664
  spacing: 2,
9364
- children: [!!interval && interval.length > 0 && jsxs(Grid, {
9665
+ children: [!!interval && interval.length > 0 && /*#__PURE__*/jsxs(Grid, {
9365
9666
  container: true,
9366
9667
  direction: "column",
9367
9668
  spacing: 0,
9368
- children: [jsx(Grid, {
9369
- children: jsx(Typography, {
9669
+ children: [/*#__PURE__*/jsx(Grid, {
9670
+ children: /*#__PURE__*/jsx(Typography, {
9370
9671
  color: "textSecondary",
9371
9672
  variant: "caption",
9372
9673
  children: t('time-information-observation-period')
9373
9674
  })
9374
- }), jsx(Grid, {
9375
- children: jsx(Typography, {
9675
+ }), /*#__PURE__*/jsx(Grid, {
9676
+ children: /*#__PURE__*/jsx(Typography, {
9376
9677
  "data-testid": "infoDialogTimeObservationPeriod",
9377
9678
  children: formatDateRange(interval)
9378
9679
  })
9379
9680
  })]
9380
- }), !!resolution && jsxs(Grid, {
9681
+ }), !!resolution && /*#__PURE__*/jsxs(Grid, {
9381
9682
  container: true,
9382
9683
  direction: "column",
9383
9684
  spacing: 0,
9384
- children: [jsx(Grid, {
9385
- children: jsx(Typography, {
9685
+ children: [/*#__PURE__*/jsx(Grid, {
9686
+ children: /*#__PURE__*/jsx(Typography, {
9386
9687
  color: "textSecondary",
9387
9688
  variant: "caption",
9388
9689
  children: t('time-information-data-resolution')
9389
9690
  })
9390
- }), jsx(Grid, {
9391
- children: jsxs(Typography, {
9691
+ }), /*#__PURE__*/jsx(Grid, {
9692
+ children: /*#__PURE__*/jsxs(Typography, {
9392
9693
  "data-testid": "infoDialogTimeResolution",
9393
9694
  children: [t('Every '), parseISO8601Duration(resolution)]
9394
9695
  })
@@ -9408,6 +9709,7 @@ var advanceStringIndex = advanceStringIndex$2;
9408
9709
  var toLength = toLength$4;
9409
9710
  var toString = toString$c;
9410
9711
  var getMethod = getMethod$5;
9712
+ var getRegExpFlags = regexpGetFlags;
9411
9713
  var regExpExec = regexpExecAbstract;
9412
9714
  var stickyHelpers = regexpStickyHelpers;
9413
9715
  var fails = fails$q;
@@ -9417,6 +9719,7 @@ var MAX_UINT32 = 0xFFFFFFFF;
9417
9719
  var min = Math.min;
9418
9720
  var push = uncurryThis([].push);
9419
9721
  var stringSlice = uncurryThis(''.slice);
9722
+ var stringIndexOf = uncurryThis(''.indexOf);
9420
9723
 
9421
9724
  // Chrome 51 has a buggy "split" implementation when RegExp#exec !== nativeExec
9422
9725
  // Weex JS has frozen built-in prototypes, so use try / catch wrapper
@@ -9469,11 +9772,11 @@ fixRegExpWellKnownSymbolLogic('split', function (SPLIT, nativeSplit, maybeCallNa
9469
9772
  }
9470
9773
 
9471
9774
  var C = speciesConstructor(rx, RegExp);
9472
- var unicodeMatching = rx.unicode;
9473
- var flags = (rx.ignoreCase ? 'i' : '') +
9474
- (rx.multiline ? 'm' : '') +
9475
- (rx.unicode ? 'u' : '') +
9476
- (UNSUPPORTED_Y ? 'g' : 'y');
9775
+ var flags = toString(getRegExpFlags(rx));
9776
+ var unicodeMatching = !!~stringIndexOf(flags, 'u') || !!~stringIndexOf(flags, 'v');
9777
+ if (UNSUPPORTED_Y) {
9778
+ if (!~stringIndexOf(flags, 'g')) flags += 'g';
9779
+ } else if (!~stringIndexOf(flags, 'y')) flags += 'y';
9477
9780
  // ^(? + rx + ) is needed, in combination with some S slicing, to
9478
9781
  // simulate the 'y' flag.
9479
9782
  var splitter = new C(UNSUPPORTED_Y ? '^(?:' + rx.source + ')' : rx, flags);
@@ -9560,7 +9863,7 @@ const InfoDialogWMSMap = ({
9560
9863
  });
9561
9864
  }
9562
9865
  }, [extent, geometry.coordinates, mapSize, view]);
9563
- return getCapabilitiesJSON != null && getCapabilitiesJSON.WMS_Capabilities ? jsx("div", {
9866
+ return getCapabilitiesJSON != null && getCapabilitiesJSON.WMS_Capabilities ? /*#__PURE__*/jsx("div", {
9564
9867
  "data-testid": "info-dialog-wms-map",
9565
9868
  ref: mapContainerRef,
9566
9869
  style: {
@@ -9569,21 +9872,21 @@ const InfoDialogWMSMap = ({
9569
9872
  paddingRight: 12,
9570
9873
  paddingBottom: 12
9571
9874
  },
9572
- children: jsx("div", {
9875
+ children: /*#__PURE__*/jsx("div", {
9573
9876
  style: {
9574
9877
  aspectRatio: '2 / 1',
9575
9878
  width: '100%'
9576
9879
  },
9577
- children: jsxs(OpenLayersMapView, Object.assign({}, props, {
9578
- children: [jsx(MapControls, {
9880
+ children: /*#__PURE__*/jsxs(OpenLayersMapView, Object.assign({}, props, {
9881
+ children: [/*#__PURE__*/jsx(MapControls, {
9579
9882
  style: {
9580
9883
  top: 0
9581
9884
  },
9582
- children: jsx(OpenLayersZoomControl, {
9885
+ children: /*#__PURE__*/jsx(OpenLayersZoomControl, {
9583
9886
  homeExtent: extent
9584
9887
  })
9585
- }), jsx(DefaultBaseLayers, {}), jsx(ErrorBoundary, {
9586
- children: jsx(WMSLayer, {
9888
+ }), /*#__PURE__*/jsx(DefaultBaseLayers, {}), /*#__PURE__*/jsx(ErrorBoundary, {
9889
+ children: /*#__PURE__*/jsx(WMSLayer, {
9587
9890
  layerName: findLayerName(dataLink),
9588
9891
  layerOptions: {
9589
9892
  zIndex: 1,
@@ -9603,6 +9906,7 @@ const view = new View({
9603
9906
  zoom: 0,
9604
9907
  center: [0, 0]
9605
9908
  });
9909
+
9606
9910
  // Normalize longitude values so that they are between -180 and 180 degrees
9607
9911
  const normalizeLongitude = lon => {
9608
9912
  let normalized = lon;
@@ -9634,6 +9938,7 @@ const InfoDialogWMSMapConnect = ({
9634
9938
  } else {
9635
9939
  const extent = view.calculateExtent();
9636
9940
  const transformedExtent = transformExtent(extent, view.getProjection(), 'EPSG:4326');
9941
+
9637
9942
  // The map can be panned left or right beyond the -180/180 longitude range, so values need to be normalized
9638
9943
  transformedExtent[0] = normalizeLongitude(transformedExtent[0]);
9639
9944
  transformedExtent[2] = normalizeLongitude(transformedExtent[2]);
@@ -9662,7 +9967,7 @@ const InfoDialogWMSMapConnect = ({
9662
9967
  unByKey(eventKey);
9663
9968
  };
9664
9969
  }, [setWMSbox]);
9665
- return dataLink && getCapabilitiesJSON && jsx(InfoDialogWMSMap, {
9970
+ return dataLink && getCapabilitiesJSON && /*#__PURE__*/jsx(InfoDialogWMSMap, {
9666
9971
  dataLink: dataLink,
9667
9972
  geometry: geometry,
9668
9973
  getCapabilitiesJSON: getCapabilitiesJSON,
@@ -9697,7 +10002,7 @@ const DataExplorerInfo = ({
9697
10002
  const isWmsFormat = formats => {
9698
10003
  return formats.some(format => format.name.toLowerCase().includes('wms'));
9699
10004
  };
9700
- return jsx(ToolContainerDraggable, {
10005
+ return /*#__PURE__*/jsx(ToolContainerDraggable, {
9701
10006
  className: "dataExplorerInfo",
9702
10007
  "data-testid": "dataExplorerInfoWindow",
9703
10008
  isOpen: isOpen,
@@ -9713,7 +10018,7 @@ const DataExplorerInfo = ({
9713
10018
  height: 600
9714
10019
  },
9715
10020
  title: featureInfo == null ? void 0 : featureInfo.properties.title,
9716
- children: featureInfo ? jsxs(Box, {
10021
+ children: featureInfo ? /*#__PURE__*/jsxs(Box, {
9717
10022
  "data-testid": "dataExplorerInfoBox",
9718
10023
  onKeyDown: event => {
9719
10024
  event.stopPropagation();
@@ -9722,14 +10027,14 @@ const DataExplorerInfo = ({
9722
10027
  style: {
9723
10028
  paddingBottom: 20
9724
10029
  },
9725
- children: [jsx(InfoDialogBaseInfo, {
10030
+ children: [/*#__PURE__*/jsx(InfoDialogBaseInfo, {
9726
10031
  datasetLink: datasetLink,
9727
10032
  id: featureInfo.id,
9728
10033
  properties: featureInfo.properties
9729
- }), !!featureInfo.properties.formats && isWmsFormat(featureInfo.properties.formats) && featureInfo.geometry && featureInfo.links ? jsx(InfoDialogWMSMapConnect, {
10034
+ }), !!featureInfo.properties.formats && isWmsFormat(featureInfo.properties.formats) && featureInfo.geometry && featureInfo.links ? /*#__PURE__*/jsx(InfoDialogWMSMapConnect, {
9730
10035
  geometry: featureInfo.geometry,
9731
10036
  links: featureInfo.links
9732
- }) : null, !!featureInfo.geometry && jsxs(Accordion, {
10037
+ }) : null, !!featureInfo.geometry && /*#__PURE__*/jsxs(Accordion, {
9733
10038
  defaultExpanded: true,
9734
10039
  disableGutters: true,
9735
10040
  onClick: e => e.stopPropagation(),
@@ -9741,22 +10046,22 @@ const DataExplorerInfo = ({
9741
10046
  style: {
9742
10047
  marginTop: 15
9743
10048
  },
9744
- children: [jsx(AccordionSummary, {
9745
- expandIcon: jsx(ChevronDown, {}),
10049
+ children: [/*#__PURE__*/jsx(AccordionSummary, {
10050
+ expandIcon: /*#__PURE__*/jsx(ChevronDown, {}),
9746
10051
  style: {
9747
10052
  paddingTop: 5,
9748
10053
  paddingBottom: 5
9749
10054
  },
9750
- children: jsx(Typography, {
10055
+ children: /*#__PURE__*/jsx(Typography, {
9751
10056
  children: t('info-dialog-geographical-coverage')
9752
10057
  })
9753
- }), jsx(AccordionDetails, {
10058
+ }), /*#__PURE__*/jsx(AccordionDetails, {
9754
10059
  style: {
9755
10060
  marginTop: 5
9756
10061
  },
9757
- children: jsx(InfoDialogGeographicalCoverage, Object.assign({}, featureInfo.geometry))
10062
+ children: /*#__PURE__*/jsx(InfoDialogGeographicalCoverage, Object.assign({}, featureInfo.geometry))
9758
10063
  })]
9759
- }), (!!((_featureInfo$time = featureInfo.time) != null && _featureInfo$time.interval) && featureInfo.time.interval.length > 0 || !!((_featureInfo$time2 = featureInfo.time) != null && _featureInfo$time2.resolution)) && jsxs(Accordion, {
10064
+ }), (!!((_featureInfo$time = featureInfo.time) != null && _featureInfo$time.interval) && featureInfo.time.interval.length > 0 || !!((_featureInfo$time2 = featureInfo.time) != null && _featureInfo$time2.resolution)) && /*#__PURE__*/jsxs(Accordion, {
9760
10065
  defaultExpanded: true,
9761
10066
  disableGutters: true,
9762
10067
  onClick: e => e.stopPropagation(),
@@ -9765,22 +10070,22 @@ const DataExplorerInfo = ({
9765
10070
  unmountOnExit: true
9766
10071
  }
9767
10072
  },
9768
- children: [jsx(AccordionSummary, {
9769
- expandIcon: jsx(ChevronDown, {}),
10073
+ children: [/*#__PURE__*/jsx(AccordionSummary, {
10074
+ expandIcon: /*#__PURE__*/jsx(ChevronDown, {}),
9770
10075
  style: {
9771
10076
  paddingTop: 5,
9772
10077
  paddingBottom: 5
9773
10078
  },
9774
- children: jsx(Typography, {
10079
+ children: /*#__PURE__*/jsx(Typography, {
9775
10080
  children: t('info-dialog-time-information')
9776
10081
  })
9777
- }), jsx(AccordionDetails, {
10082
+ }), /*#__PURE__*/jsx(AccordionDetails, {
9778
10083
  style: {
9779
10084
  marginTop: 5
9780
10085
  },
9781
- children: jsx(InfoDialogTime, Object.assign({}, featureInfo.time))
10086
+ children: /*#__PURE__*/jsx(InfoDialogTime, Object.assign({}, featureInfo.time))
9782
10087
  })]
9783
- }), jsxs(Accordion, {
10088
+ }), /*#__PURE__*/jsxs(Accordion, {
9784
10089
  defaultExpanded: true,
9785
10090
  disableGutters: true,
9786
10091
  onClick: e => e.stopPropagation(),
@@ -9789,25 +10094,25 @@ const DataExplorerInfo = ({
9789
10094
  unmountOnExit: true
9790
10095
  }
9791
10096
  },
9792
- children: [jsx(AccordionSummary, {
9793
- expandIcon: jsx(ChevronDown, {}),
10097
+ children: [/*#__PURE__*/jsx(AccordionSummary, {
10098
+ expandIcon: /*#__PURE__*/jsx(ChevronDown, {}),
9794
10099
  style: {
9795
10100
  paddingTop: 5,
9796
10101
  paddingBottom: 5
9797
10102
  },
9798
- children: jsx(Typography, {
10103
+ children: /*#__PURE__*/jsx(Typography, {
9799
10104
  children: t('info-dialog-theme-and-keywords')
9800
10105
  })
9801
- }), jsx(AccordionDetails, {
10106
+ }), /*#__PURE__*/jsx(AccordionDetails, {
9802
10107
  style: {
9803
10108
  marginTop: 5
9804
10109
  },
9805
- children: jsx(InfoDialogKeywords, {
10110
+ children: /*#__PURE__*/jsx(InfoDialogKeywords, {
9806
10111
  keywords: featureInfo.properties.keywords,
9807
10112
  themes: featureInfo.properties.themes
9808
10113
  })
9809
10114
  })]
9810
- }), !!featureInfo.links && jsxs(Accordion, {
10115
+ }), !!featureInfo.links && /*#__PURE__*/jsxs(Accordion, {
9811
10116
  defaultExpanded: true,
9812
10117
  disableGutters: true,
9813
10118
  onClick: e => e.stopPropagation(),
@@ -9816,22 +10121,22 @@ const DataExplorerInfo = ({
9816
10121
  unmountOnExit: true
9817
10122
  }
9818
10123
  },
9819
- children: [jsx(AccordionSummary, {
9820
- expandIcon: jsx(ChevronDown, {}),
10124
+ children: [/*#__PURE__*/jsx(AccordionSummary, {
10125
+ expandIcon: /*#__PURE__*/jsx(ChevronDown, {}),
9821
10126
  style: {
9822
10127
  paddingTop: 5,
9823
10128
  paddingBottom: 5
9824
10129
  },
9825
- children: jsx(Typography, {
10130
+ children: /*#__PURE__*/jsx(Typography, {
9826
10131
  children: t('info-dialog-useful-links')
9827
10132
  })
9828
- }), jsx(AccordionDetails, {
10133
+ }), /*#__PURE__*/jsx(AccordionDetails, {
9829
10134
  style: {
9830
10135
  marginTop: 5
9831
10136
  },
9832
- children: featureInfo.links.map(link => jsx(InfoDialogLinks, Object.assign({}, link), link.href))
10137
+ children: featureInfo.links.map(link => /*#__PURE__*/jsx(InfoDialogLinks, Object.assign({}, link), link.href))
9833
10138
  })]
9834
- }), jsxs(Accordion, {
10139
+ }), /*#__PURE__*/jsxs(Accordion, {
9835
10140
  defaultExpanded: true,
9836
10141
  disableGutters: true,
9837
10142
  onClick: e => e.stopPropagation(),
@@ -9840,35 +10145,53 @@ const DataExplorerInfo = ({
9840
10145
  unmountOnExit: true
9841
10146
  }
9842
10147
  },
9843
- children: [jsx(AccordionSummary, {
9844
- expandIcon: jsx(ChevronDown, {}),
10148
+ children: [/*#__PURE__*/jsx(AccordionSummary, {
10149
+ expandIcon: /*#__PURE__*/jsx(ChevronDown, {}),
9845
10150
  style: {
9846
10151
  paddingTop: 5,
9847
10152
  paddingBottom: 5
9848
10153
  },
9849
- children: jsx(Typography, {
10154
+ children: /*#__PURE__*/jsx(Typography, {
9850
10155
  children: t('info-dialog-contacts')
9851
10156
  })
9852
- }), jsx(AccordionDetails, {
10157
+ }), /*#__PURE__*/jsx(AccordionDetails, {
9853
10158
  style: {
9854
10159
  marginTop: 5
9855
10160
  },
9856
- children: jsx(DiscoveryCatalogueInfo, Object.assign({}, featureInfo.properties.contacts[0]))
10161
+ children: /*#__PURE__*/jsx(DiscoveryCatalogueInfo, Object.assign({}, featureInfo.properties.contacts[0]))
9857
10162
  })]
9858
10163
  })]
9859
- }) : jsx(Box, {
10164
+ }) : /*#__PURE__*/jsx(Box, {
9860
10165
  "data-testid": "loadingIndicator",
9861
10166
  onKeyDown: event => {
9862
10167
  event.stopPropagation();
9863
10168
  },
9864
10169
  ref: stopWheelEventPropagationRef,
9865
- children: jsx(Typography, {
10170
+ children: /*#__PURE__*/jsx(Typography, {
9866
10171
  children: placeHolderLoading
9867
10172
  })
9868
10173
  })
9869
10174
  });
9870
10175
  };
9871
10176
 
10177
+ /* *
10178
+ * Licensed under the Apache License, Version 2.0 (the "License");
10179
+ * you may not use this file except in compliance with the License.
10180
+ * You may obtain a copy of the License at
10181
+ *
10182
+ * http://www.apache.org/licenses/LICENSE-2.0
10183
+ *
10184
+ * Unless required by applicable law or agreed to in writing, software
10185
+ * distributed under the License is distributed on an "AS IS" BASIS,
10186
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
10187
+ * See the License for the specific language governing permissions and
10188
+ * limitations under the License.
10189
+ *
10190
+ * Copyright 2025 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
10191
+ * Copyright 2025 - Finnish Meteorological Institute (FMI)
10192
+ * Copyright 2025 - The Norwegian Meteorological Institute (MET Norway)
10193
+ * */
10194
+
9872
10195
  const DataExplorerInfoConnect = () => {
9873
10196
  const {
9874
10197
  dialogOrder,
@@ -9883,7 +10206,7 @@ const DataExplorerInfoConnect = () => {
9883
10206
  data: featureInfo
9884
10207
  } = useFetchItem(baseUrl, selectedId);
9885
10208
  return React.useMemo(() => {
9886
- return jsx(DataExplorerInfo, {
10209
+ return /*#__PURE__*/jsx(DataExplorerInfo, {
9887
10210
  datasetLink: baseUrl,
9888
10211
  featureInfo: featureInfo,
9889
10212
  isOpen: isDialogOpen,
@@ -9899,6 +10222,24 @@ const DataExplorerInfoConnect = () => {
9899
10222
  }, [baseUrl, dialogOrder, isDialogOpen, featureInfo, onCloseDialog, setDialogOrder, uiSource]);
9900
10223
  };
9901
10224
 
10225
+ /* *
10226
+ * Licensed under the Apache License, Version 2.0 (the "License");
10227
+ * you may not use this file except in compliance with the License.
10228
+ * You may obtain a copy of the License at
10229
+ *
10230
+ * http://www.apache.org/licenses/LICENSE-2.0
10231
+ *
10232
+ * Unless required by applicable law or agreed to in writing, software
10233
+ * distributed under the License is distributed on an "AS IS" BASIS,
10234
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
10235
+ * See the License for the specific language governing permissions and
10236
+ * limitations under the License.
10237
+ *
10238
+ * Copyright 2025 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
10239
+ * Copyright 2025 - Finnish Meteorological Institute (FMI)
10240
+ * Copyright 2025 - The Norwegian Meteorological Institute (MET Norway)
10241
+ * */
10242
+
9902
10243
  const DataExplorerConnect = ({
9903
10244
  productConfigKey
9904
10245
  }) => {
@@ -9929,8 +10270,8 @@ const DataExplorerConnect = ({
9929
10270
  }
9930
10271
  }, [dispatch, dataexplorerPresets]);
9931
10272
  return React.useMemo(() => {
9932
- return jsxs(Fragment, {
9933
- children: [jsx(DataExplorer, {
10273
+ return /*#__PURE__*/jsxs(Fragment, {
10274
+ children: [/*#__PURE__*/jsx(DataExplorer, {
9934
10275
  error: !!error,
9935
10276
  headerSize: "xs",
9936
10277
  isOpen: isDialogOpen,
@@ -9943,7 +10284,7 @@ const DataExplorerConnect = ({
9943
10284
  top: 85,
9944
10285
  left: 50
9945
10286
  }
9946
- }), jsx(DataExplorerInfoConnect, {})]
10287
+ }), /*#__PURE__*/jsx(DataExplorerInfoConnect, {})]
9947
10288
  });
9948
10289
  }, [dialogOrder, isDialogOpen, onCloseDialog, setDialogOrder, uiSource, loading, error]);
9949
10290
  };