@opengeoweb/core 13.0.0 → 13.1.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.
package/index.esm.js CHANGED
@@ -1218,6 +1218,26 @@ var DimensionSelectName = function DimensionSelectName(_ref) {
1218
1218
  });
1219
1219
  };
1220
1220
 
1221
+ var LatestOptions;
1222
+ (function (LatestOptions) {
1223
+ LatestOptions["LATEST_0"] = "Latest";
1224
+ LatestOptions["LATEST_1"] = "Latest -1";
1225
+ LatestOptions["LATEST_2"] = "Latest -2";
1226
+ LatestOptions["LATEST_3"] = "Latest -3";
1227
+ })(LatestOptions || (LatestOptions = {}));
1228
+ var createLatestMap = function createLatestMap(dimensionValuesRaw) {
1229
+ var latestOptions = Object.values(LatestOptions).slice(0, dimensionValuesRaw.length);
1230
+ return {
1231
+ getValue: function getValue(value) {
1232
+ var index = dimensionValuesRaw.indexOf(value);
1233
+ return index !== -1 ? latestOptions[index] : value;
1234
+ },
1235
+ getIndex: function getIndex(value) {
1236
+ return latestOptions.indexOf(value);
1237
+ },
1238
+ latestOptions: latestOptions
1239
+ };
1240
+ };
1221
1241
  var DimensionSelectValue = function DimensionSelectValue(_ref) {
1222
1242
  var isEnabled = _ref.isEnabled,
1223
1243
  tooltip = _ref.tooltip,
@@ -1234,24 +1254,40 @@ var DimensionSelectValue = function DimensionSelectValue(_ref) {
1234
1254
  var _useCoreTranslation = useCoreTranslation(),
1235
1255
  t = _useCoreTranslation.t;
1236
1256
  var dimensionValuesRaw = generatedValues.toReversed().slice(0, 100);
1257
+ var latestMap = createLatestMap(dimensionValuesRaw);
1237
1258
  if (!(selectedDimension != null && selectedDimension.name) || !(dimensionValuesRaw != null && dimensionValuesRaw.length)) {
1238
1259
  return null;
1239
1260
  }
1240
1261
  var isReferenceTimeDimensionAndUseLatestIsAvailable = selectedDimension.name === 'reference_time' && useLatestReferenceTime !== undefined;
1241
1262
  var latestValue = dimensionValuesRaw[0];
1263
+ var dimensionValues = isReferenceTimeDimensionAndUseLatestIsAvailable ? [].concat(latestMap.latestOptions, dimensionValuesRaw.slice(hideLatestDuplicate ? 1 : 0)) : dimensionValuesRaw.slice().reverse();
1242
1264
  var setDimensionValue = function setDimensionValue(dimensionValue) {
1243
1265
  if (isReferenceTimeDimensionAndUseLatestIsAvailable) {
1244
- if (dimensionValue === 'Latest') {
1266
+ var index = latestMap.getIndex(dimensionValue);
1267
+ if (index !== -1) {
1245
1268
  setUseLatestReferenceTime == null || setUseLatestReferenceTime(true);
1246
- onLayerChangeDimension(selectedDimension.name, dimensionValuesRaw[0], layerTypes.LayerActionOrigin.layerManager);
1269
+ onLayerChangeDimension(selectedDimension.name, dimensionValuesRaw[index], layerTypes.LayerActionOrigin.layerManager);
1247
1270
  return;
1248
1271
  }
1249
1272
  setUseLatestReferenceTime == null || setUseLatestReferenceTime(false);
1250
1273
  }
1251
1274
  onLayerChangeDimension(selectedDimension.name, dimensionValue, layerTypes.LayerActionOrigin.layerManager);
1252
1275
  };
1253
- var dimensionValues = isReferenceTimeDimensionAndUseLatestIsAvailable ? ['Latest'].concat(dimensionValuesRaw.slice(hideLatestDuplicate ? 1 : 0)) : dimensionValuesRaw.slice().reverse();
1254
- var isLatest = isReferenceTimeDimensionAndUseLatestIsAvailable && useLatestReferenceTime && selectedDimension.maxValue === selectedDimension.currentValue;
1276
+ var isOneOfLatest = isReferenceTimeDimensionAndUseLatestIsAvailable && useLatestReferenceTime;
1277
+ var getValue = function getValue() {
1278
+ if (isOneOfLatest) {
1279
+ return latestMap.getValue(selectedDimension.currentValue);
1280
+ }
1281
+ return selectedDimension.currentValue;
1282
+ };
1283
+ var getIndex = function getIndex() {
1284
+ if (isOneOfLatest) {
1285
+ return latestMap.getIndex(selectedDimension.currentValue);
1286
+ }
1287
+ return dimensionValues.findIndex(function (dimensionValue) {
1288
+ return dimensionValue === selectedDimension.currentValue;
1289
+ });
1290
+ };
1255
1291
  return jsxs(TooltipSelect, {
1256
1292
  "data-testid": "dimensionSelectValue",
1257
1293
  disableUnderline: true,
@@ -1260,15 +1296,13 @@ var DimensionSelectValue = function DimensionSelectValue(_ref) {
1260
1296
  },
1261
1297
  tooltip: tooltip,
1262
1298
  isEnabled: isEnabled,
1263
- value: isLatest ? 'Latest' : selectedDimension.currentValue,
1299
+ value: getValue(),
1264
1300
  list: dimensionValues.map(function (dimensionValue) {
1265
1301
  return {
1266
1302
  value: dimensionValue
1267
1303
  };
1268
1304
  }),
1269
- currentIndex: isLatest ? 0 : dimensionValues.findIndex(function (dimensionValue) {
1270
- return dimensionValue === selectedDimension.currentValue;
1271
- }),
1305
+ currentIndex: getIndex(),
1272
1306
  onChange: function onChange(event) {
1273
1307
  event.stopPropagation();
1274
1308
  setDimensionValue(event.target.value);
@@ -1294,7 +1328,7 @@ var DimensionSelectValue = function DimensionSelectValue(_ref) {
1294
1328
  style: {
1295
1329
  whiteSpace: 'nowrap'
1296
1330
  },
1297
- children: [dimensionValue, dimensionValue !== 'Latest' && jsxs("i", {
1331
+ children: [dimensionValue, !dimensionValue.includes('Latest') && jsxs("i", {
1298
1332
  children: [" ", selectedDimension.units]
1299
1333
  })]
1300
1334
  })
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opengeoweb/core",
3
- "version": "13.0.0",
3
+ "version": "13.1.1",
4
4
  "description": "GeoWeb Core library for the opengeoweb project",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {
@@ -8,22 +8,22 @@
8
8
  "url": "git@gitlab.com:opengeoweb/opengeoweb.git"
9
9
  },
10
10
  "dependencies": {
11
- "@opengeoweb/shared": "13.0.0",
11
+ "@opengeoweb/shared": "13.1.1",
12
12
  "react-redux": "^9.2.0",
13
- "@opengeoweb/store": "13.0.0",
14
- "@opengeoweb/time-slider": "13.0.0",
13
+ "@opengeoweb/store": "13.1.1",
14
+ "@opengeoweb/time-slider": "13.1.1",
15
15
  "@reduxjs/toolkit": "^2.6.1",
16
- "@opengeoweb/webmap-react": "13.0.0",
17
- "@opengeoweb/webmap": "13.0.0",
18
- "@opengeoweb/theme": "13.0.0",
16
+ "@opengeoweb/webmap-react": "13.1.1",
17
+ "@opengeoweb/webmap": "13.1.1",
18
+ "@opengeoweb/theme": "13.1.1",
19
19
  "axios": "^1.7.7",
20
- "@opengeoweb/layer-select": "13.0.0",
20
+ "@opengeoweb/layer-select": "13.1.1",
21
21
  "lodash": "^4.17.21",
22
22
  "ol": "^10.4.0",
23
23
  "react-sortablejs": "^6.1.4",
24
24
  "sortablejs": "^1.15.1",
25
25
  "@mui/system": "^7.3.2",
26
- "@opengeoweb/snackbar": "13.0.0",
26
+ "@opengeoweb/snackbar": "13.1.1",
27
27
  "react-router-dom": "^6.21.0",
28
28
  "react-draggable": "^4.4.6",
29
29
  "i18next": "^25.0.1",
@@ -32,7 +32,7 @@
32
32
  "@mui/material": "^7.0.1",
33
33
  "@sentry/react": "^8.34.0",
34
34
  "@tanstack/react-query": "^5.85.5",
35
- "@opengeoweb/api": "13.0.0",
35
+ "@opengeoweb/api": "13.1.1",
36
36
  "@types/geojson": "^7946.0.14"
37
37
  },
38
38
  "peerDependencies": {
@@ -1,6 +1,12 @@
1
1
  import { ElementType, FC } from 'react';
2
2
  import { layerTypes, mapTypes } from '@opengeoweb/store';
3
3
  import { DimensionValueMappings } from '../../../LayerManagerUtils';
4
+ export declare enum LatestOptions {
5
+ LATEST_0 = "Latest",
6
+ LATEST_1 = "Latest -1",
7
+ LATEST_2 = "Latest -2",
8
+ LATEST_3 = "Latest -3"
9
+ }
4
10
  declare const DimensionSelectValue: FC<{
5
11
  selectedDimension?: mapTypes.Dimension;
6
12
  generatedValues: string[];