@opengeoweb/store 13.2.1 → 14.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.
- package/index.esm.js +158 -104
- package/package.json +6 -6
- package/src/store/drawingTool/reducer.d.ts +1 -1
- package/src/store/generic/loadingIndicator/selectors.d.ts +113 -37
- package/src/store/generic/loadingIndicator/types.d.ts +2 -2
- package/src/store/generic/selectors.d.ts +48 -16
- package/src/store/generic/syncGroups/types.d.ts +28 -1
- package/src/store/generic/synchronizationActions/actions.d.ts +1 -1
- package/src/store/map/layer/reducer.d.ts +6 -0
- package/src/store/map/layer/selectors.d.ts +41 -0
- package/src/store/map/layer/types.d.ts +1 -0
- package/src/store/map/map/index.d.ts +1 -1
- package/src/store/map/map/reducer.d.ts +1 -1
- package/src/store/map/map/types.d.ts +1 -0
- package/src/store/map/map/utils.d.ts +1 -1
- package/src/store/map/service/reducer.d.ts +1 -1
- package/src/store/map/service/types.d.ts +3 -1
- package/src/store/router/reducer.d.ts +1 -1
- package/src/store/ui/types.d.ts +1 -0
package/index.esm.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { createSlice, createSelector, createAction, createListenerMiddleware, isAnyOf, createEntityAdapter, combineReducers, configureStore } from '@reduxjs/toolkit';
|
|
2
|
-
import { isEqual, isEmpty, compact } from 'lodash';
|
|
2
|
+
import { isEqual, isEmpty, merge, compact } from 'lodash';
|
|
3
3
|
import { dateUtils, PROJECTION, defaultDelay } from '@opengeoweb/shared';
|
|
4
4
|
import { webmapUtils, parseISO8601IntervalToDateInterval, LayerType, handleDateUtilsISOString, webmapTestSettings, WMLayer, getWMLayerById, WMInvalidDateValues, isProjectionSupported, queryWMSLayers } from '@opengeoweb/webmap';
|
|
5
5
|
import { secondsPerPxFromCanvasWidth, defaultTimeSpan, defaultSecondsPerPx, defaultAnimationDelayAtStart, defaultTimeStep, roundWithTimeStep, getSpeedDelay } from '@opengeoweb/time-slider';
|
|
@@ -548,11 +548,7 @@ var slice$7 = createSlice({
|
|
|
548
548
|
delete draft.byId[serviceId];
|
|
549
549
|
}
|
|
550
550
|
},
|
|
551
|
-
fetchInitialServices: function fetchInitialServices(
|
|
552
|
-
// eslint-disable-next-line no-unused-vars
|
|
553
|
-
draft,
|
|
554
|
-
// eslint-disable-next-line no-unused-vars
|
|
555
|
-
action) {
|
|
551
|
+
fetchInitialServices: function fetchInitialServices(_draft, _action) {
|
|
556
552
|
// This block is intentionally left empty so no code should be put in here
|
|
557
553
|
}
|
|
558
554
|
}
|
|
@@ -1077,7 +1073,7 @@ var getAnimationDuration = function getAnimationDuration(animationEndTime, anima
|
|
|
1077
1073
|
* @param iso8601Intervals
|
|
1078
1074
|
* @returns WebMapAnimationList with time points
|
|
1079
1075
|
*/
|
|
1080
|
-
var generateAnimationList = function generateAnimationList(unixAnimationStart, unixAnimationEnd, timeValues) {
|
|
1076
|
+
var generateAnimationList = function generateAnimationList(unixAnimationStart, unixAnimationEnd, timeValues, animationInterval) {
|
|
1081
1077
|
if (!unixAnimationStart || !unixAnimationEnd || !timeValues) {
|
|
1082
1078
|
return [];
|
|
1083
1079
|
}
|
|
@@ -1105,9 +1101,12 @@ var generateAnimationList = function generateAnimationList(unixAnimationStart, u
|
|
|
1105
1101
|
// Convert interval start and end times to Unix time
|
|
1106
1102
|
var unixIntervalStart = dateUtils.unix(dateUtils.utc(timeInterval.startTime));
|
|
1107
1103
|
var unixIntervalEnd = dateUtils.unix(dateUtils.utc(timeInterval.endTime));
|
|
1108
|
-
|
|
1109
|
-
|
|
1110
|
-
|
|
1104
|
+
var getIntervalInSeconds = function getIntervalInSeconds(duration) {
|
|
1105
|
+
// Parse the duration and calculate interval step in seconds
|
|
1106
|
+
var interval = parseISO8601IntervalToDateInterval(duration);
|
|
1107
|
+
return getTimeStepFromDataInterval(interval) * 60;
|
|
1108
|
+
};
|
|
1109
|
+
var intervalSeconds = animationInterval ? animationInterval * 60 : getIntervalInSeconds(timeInterval.duration);
|
|
1111
1110
|
// Generate animation points for the current interval
|
|
1112
1111
|
for (var i = currentAnimationTime; i <= unixAnimationEnd; i += intervalSeconds) {
|
|
1113
1112
|
if (i >= unixIntervalStart && i <= unixIntervalEnd) {
|
|
@@ -1333,7 +1332,11 @@ var setBbox = createAction('GENERIC_SETBBOX');
|
|
|
1333
1332
|
*
|
|
1334
1333
|
* These actions should not be used by components directly. Components should only use the generic actions.
|
|
1335
1334
|
*/
|
|
1336
|
-
var setTimeSync = createAction('GENERIC_SYNC_SETTIME', function (setTimePayload,
|
|
1335
|
+
var setTimeSync = createAction('GENERIC_SYNC_SETTIME', function (setTimePayload,
|
|
1336
|
+
// This payload is used to set the state in the syncgroup itself. This state is needed because other listeners (like the timeslider sync) might need this information to trigger new actions.
|
|
1337
|
+
targets,
|
|
1338
|
+
// The targets which will be updated by this action. It contains the payload as well.
|
|
1339
|
+
groups) {
|
|
1337
1340
|
return {
|
|
1338
1341
|
payload: {
|
|
1339
1342
|
source: setTimePayload && setTime(setTimePayload),
|
|
@@ -1936,7 +1939,7 @@ var slice$6 = createSlice({
|
|
|
1936
1939
|
layerStyle = _action$payload15.layerStyle,
|
|
1937
1940
|
layerDimensions = _action$payload15.layerDimensions,
|
|
1938
1941
|
error = _action$payload15.error;
|
|
1939
|
-
if (error) {
|
|
1942
|
+
if (error && draft.byId[error.layerId]) {
|
|
1940
1943
|
draft.byId[error.layerId].status = LayerStatus.error;
|
|
1941
1944
|
return;
|
|
1942
1945
|
}
|
|
@@ -1948,9 +1951,6 @@ var slice$6 = createSlice({
|
|
|
1948
1951
|
return;
|
|
1949
1952
|
}
|
|
1950
1953
|
var layer = draft.byId[layerDimensions.layerId];
|
|
1951
|
-
var incomingDimensionNames = layerDimensions.dimensions.map(function (dimension) {
|
|
1952
|
-
return dimension.name;
|
|
1953
|
-
});
|
|
1954
1954
|
/* Find all other layers with the same name and service, and update these at once (atomic update) */
|
|
1955
1955
|
var layersToUpdate = Object.values(draft.byId).filter(function (otherLayer) {
|
|
1956
1956
|
return (otherLayer === null || otherLayer === void 0 ? void 0 : otherLayer.name) === (layer === null || layer === void 0 ? void 0 : layer.name) && (otherLayer === null || otherLayer === void 0 ? void 0 : otherLayer.service) === (layer === null || layer === void 0 ? void 0 : layer.service) && (otherLayer === null || otherLayer === void 0 ? void 0 : otherLayer.id);
|
|
@@ -1963,10 +1963,6 @@ var slice$6 = createSlice({
|
|
|
1963
1963
|
/* Find the wmLayer */
|
|
1964
1964
|
var wmLayer = webmapUtils.getWMLayerById(layerId);
|
|
1965
1965
|
(_reduxLayer$dimension = reduxLayer.dimensions) !== null && _reduxLayer$dimension !== void 0 ? _reduxLayer$dimension : reduxLayer.dimensions = [];
|
|
1966
|
-
// remove dimensions not in incoming list of dimensions
|
|
1967
|
-
reduxLayer.dimensions = reduxLayer.dimensions.filter(function (dimension) {
|
|
1968
|
-
return incomingDimensionNames.includes(dimension.name);
|
|
1969
|
-
});
|
|
1970
1966
|
var reduxDimensions = reduxLayer.dimensions;
|
|
1971
1967
|
/* Now update or insert the dimension for each layer */
|
|
1972
1968
|
layerDimensions.dimensions.forEach(function (newLayerDimension) {
|
|
@@ -1983,7 +1979,7 @@ var slice$6 = createSlice({
|
|
|
1983
1979
|
var _existingDimension$va, _newLayerDimension$va;
|
|
1984
1980
|
// update currentvalue to corresponding LATEST value
|
|
1985
1981
|
// LATEST, LATEST-1, LATEST-2, LATEST-3
|
|
1986
|
-
var existingValues = (_existingDimension$va = existingDimension.values) === null || _existingDimension$va === void 0 ? void 0 : _existingDimension$va.split(',');
|
|
1982
|
+
var existingValues = (_existingDimension$va = existingDimension.values) === null || _existingDimension$va === void 0 ? void 0 : _existingDimension$va.split(','); // TODO: Maarten Plieger 2025-09-08. What about start/stop/res values? https://gitlab.com/opengeoweb/geoweb-assets/-/issues/4273
|
|
1987
1983
|
var newValues = (_newLayerDimension$va = newLayerDimension.values) === null || _newLayerDimension$va === void 0 ? void 0 : _newLayerDimension$va.split(',');
|
|
1988
1984
|
if (existingValues && newValues) {
|
|
1989
1985
|
var match = [1, 2, 3, 4].find(function (offset) {
|
|
@@ -1991,6 +1987,20 @@ var slice$6 = createSlice({
|
|
|
1991
1987
|
});
|
|
1992
1988
|
if (match) {
|
|
1993
1989
|
existingDimension.currentValue = newValues.at(-match);
|
|
1990
|
+
} else {
|
|
1991
|
+
// Value should be one of latest values. If this is not the case, set value to Latest
|
|
1992
|
+
existingDimension.currentValue = newValues.at(-1);
|
|
1993
|
+
}
|
|
1994
|
+
var wmTimeDim = wmLayer === null || wmLayer === void 0 ? void 0 : wmLayer.getDimension('time');
|
|
1995
|
+
var existingReduxTimeDimension = reduxDimensions.find(function (dim) {
|
|
1996
|
+
return dim.name === 'time';
|
|
1997
|
+
});
|
|
1998
|
+
if (existingReduxTimeDimension && wmTimeDim) {
|
|
1999
|
+
// Update WM time dimension values with new reference time
|
|
2000
|
+
wmTimeDim === null || wmTimeDim === void 0 || wmTimeDim.setTimeValuesForReferenceTime(existingDimension.currentValue, wmDimension);
|
|
2001
|
+
// Also set the found range in the redux state.
|
|
2002
|
+
existingReduxTimeDimension.maxValue = wmTimeDim === null || wmTimeDim === void 0 ? void 0 : wmTimeDim.getLastValue();
|
|
2003
|
+
existingReduxTimeDimension.minValue = wmTimeDim === null || wmTimeDim === void 0 ? void 0 : wmTimeDim.getFirstValue();
|
|
1994
2004
|
}
|
|
1995
2005
|
}
|
|
1996
2006
|
}
|
|
@@ -2012,10 +2022,10 @@ var slice$6 = createSlice({
|
|
|
2012
2022
|
}
|
|
2013
2023
|
});
|
|
2014
2024
|
// Ensure that the time range is correctly set based on the current reference time value
|
|
2015
|
-
var timeDimension =
|
|
2025
|
+
var timeDimension = reduxDimensions.find(function (layerDim) {
|
|
2016
2026
|
return layerDim.name === 'time';
|
|
2017
2027
|
});
|
|
2018
|
-
var refTimeDimension =
|
|
2028
|
+
var refTimeDimension = reduxDimensions.find(function (layerDim) {
|
|
2019
2029
|
return layerDim.name === 'reference_time';
|
|
2020
2030
|
});
|
|
2021
2031
|
if (timeDimension && refTimeDimension && wmLayer) {
|
|
@@ -2025,6 +2035,10 @@ var slice$6 = createSlice({
|
|
|
2025
2035
|
if (wmTimeDimension && wmRefTimeDimension) {
|
|
2026
2036
|
wmTimeDimension === null || wmTimeDimension === void 0 || wmTimeDimension.setTimeValuesForReferenceTime(refTimeDimension.currentValue, wmRefTimeDimension);
|
|
2027
2037
|
}
|
|
2038
|
+
// Synchronize the updated redux currentValues back to wmLayers time dim.
|
|
2039
|
+
reduxDimensions.forEach(function (dim) {
|
|
2040
|
+
dim.name && wmLayer.setDimension(dim.name, dim.currentValue);
|
|
2041
|
+
});
|
|
2028
2042
|
}
|
|
2029
2043
|
});
|
|
2030
2044
|
},
|
|
@@ -2149,6 +2163,14 @@ var slice$6 = createSlice({
|
|
|
2149
2163
|
}
|
|
2150
2164
|
}
|
|
2151
2165
|
},
|
|
2166
|
+
toggleSelectableFeatures: function toggleSelectableFeatures(draft, action) {
|
|
2167
|
+
var layerId = action.payload.layerId;
|
|
2168
|
+
var layer = draft.byId[layerId];
|
|
2169
|
+
if (!layer) {
|
|
2170
|
+
return;
|
|
2171
|
+
}
|
|
2172
|
+
layer.isSelectable = !layer.isSelectable;
|
|
2173
|
+
},
|
|
2152
2174
|
// layer info actions
|
|
2153
2175
|
showLayerInfo: function showLayerInfo(draft, action) {
|
|
2154
2176
|
var _action$payload21 = action.payload,
|
|
@@ -2422,11 +2444,7 @@ var slice$4 = createSlice({
|
|
|
2422
2444
|
draft.allIds.splice(mapIndex, 1);
|
|
2423
2445
|
}
|
|
2424
2446
|
},
|
|
2425
|
-
setStepBackwardOrForward: function setStepBackwardOrForward(
|
|
2426
|
-
// eslint-disable-next-line no-unused-vars
|
|
2427
|
-
_draft,
|
|
2428
|
-
// eslint-disable-next-line no-unused-vars
|
|
2429
|
-
_action) {},
|
|
2447
|
+
setStepBackwardOrForward: function setStepBackwardOrForward(_draft, _action) {},
|
|
2430
2448
|
setBbox: function setBbox(draft, action) {
|
|
2431
2449
|
var _action$payload = action.payload,
|
|
2432
2450
|
mapId = _action$payload.mapId,
|
|
@@ -2534,11 +2552,16 @@ var slice$4 = createSlice({
|
|
|
2534
2552
|
var _action$payload9 = action.payload,
|
|
2535
2553
|
oldIndex = _action$payload9.oldIndex,
|
|
2536
2554
|
newIndex = _action$payload9.newIndex,
|
|
2537
|
-
mapId = _action$payload9.mapId
|
|
2555
|
+
mapId = _action$payload9.mapId,
|
|
2556
|
+
layerType = _action$payload9.layerType;
|
|
2538
2557
|
if (!draft.byId[mapId]) {
|
|
2539
2558
|
return;
|
|
2540
2559
|
}
|
|
2541
|
-
|
|
2560
|
+
if (layerType !== LayerType.featureLayer) {
|
|
2561
|
+
draft.byId[mapId].mapLayers = moveArrayElements(draft.byId[mapId].mapLayers, oldIndex, newIndex);
|
|
2562
|
+
} else {
|
|
2563
|
+
draft.byId[mapId].featureLayers = moveArrayElements(draft.byId[mapId].featureLayers, oldIndex, newIndex);
|
|
2564
|
+
}
|
|
2542
2565
|
},
|
|
2543
2566
|
setAutoLayerId: function setAutoLayerId(draft, action) {
|
|
2544
2567
|
var _action$payload0 = action.payload,
|
|
@@ -2708,11 +2731,7 @@ var slice$4 = createSlice({
|
|
|
2708
2731
|
}
|
|
2709
2732
|
draft.byId[mapId].dockedLayerManagerSize = dockedLayerManagerSize;
|
|
2710
2733
|
},
|
|
2711
|
-
setMapPresetError: function setMapPresetError(
|
|
2712
|
-
// eslint-disable-next-line no-unused-vars
|
|
2713
|
-
draft,
|
|
2714
|
-
// eslint-disable-next-line no-unused-vars
|
|
2715
|
-
action) {},
|
|
2734
|
+
setMapPresetError: function setMapPresetError(_draft, _action) {},
|
|
2716
2735
|
setDefaultMapSettings: function setDefaultMapSettings(draft, action) {
|
|
2717
2736
|
draft.defaultMapSettings = action.payload.preset;
|
|
2718
2737
|
},
|
|
@@ -2752,6 +2771,7 @@ var slice$4 = createSlice({
|
|
|
2752
2771
|
}).addCase(layerActions.duplicateMapLayer, function (draft, action) {
|
|
2753
2772
|
var _action$payload27 = action.payload,
|
|
2754
2773
|
newLayerId = _action$payload27.newLayerId,
|
|
2774
|
+
oldLayerId = _action$payload27.oldLayerId,
|
|
2755
2775
|
mapId = _action$payload27.mapId;
|
|
2756
2776
|
if (!draft.byId[mapId]) {
|
|
2757
2777
|
return;
|
|
@@ -2760,7 +2780,14 @@ var slice$4 = createSlice({
|
|
|
2760
2780
|
console.warn("Warning: Layer id ".concat(newLayerId, " was already taken"));
|
|
2761
2781
|
return;
|
|
2762
2782
|
}
|
|
2763
|
-
draft.byId[mapId].
|
|
2783
|
+
var isFeatureLayer = draft.byId[mapId].featureLayers.some(function (id) {
|
|
2784
|
+
return id === oldLayerId;
|
|
2785
|
+
});
|
|
2786
|
+
if (!isFeatureLayer) {
|
|
2787
|
+
draft.byId[mapId].mapLayers.unshift(newLayerId);
|
|
2788
|
+
} else {
|
|
2789
|
+
draft.byId[mapId].featureLayers.unshift(newLayerId);
|
|
2790
|
+
}
|
|
2764
2791
|
}).addCase(layerActions.addBaseLayer, function (draft, action) {
|
|
2765
2792
|
var _action$payload28 = action.payload,
|
|
2766
2793
|
layer = _action$payload28.layer,
|
|
@@ -3514,10 +3541,16 @@ var getLayerDisplayName = createSelector(getLayerType, getLayerOptions, getLayer
|
|
|
3514
3541
|
*/
|
|
3515
3542
|
var getIsLayerMissing = createSelector(function (store) {
|
|
3516
3543
|
return store;
|
|
3517
|
-
}, getLayerService, getLayerName, getLayerStatus, function (store, service, name, status) {
|
|
3544
|
+
}, getLayerService, getLayerName, getLayerStatus, getLayerType, function (store, service, name, status, type) {
|
|
3545
|
+
if (type === LayerType.featureLayer) {
|
|
3546
|
+
return false;
|
|
3547
|
+
}
|
|
3518
3548
|
var layer = getLayerFromService(store, service, name);
|
|
3519
3549
|
return !layer || status === LayerStatus.error;
|
|
3520
3550
|
}, selectorMemoizationOptions);
|
|
3551
|
+
var getIsLayerSelectable = createSelector(getLayerById, function (layer) {
|
|
3552
|
+
return Boolean(layer === null || layer === void 0 ? void 0 : layer.isSelectable);
|
|
3553
|
+
}, selectorMemoizationOptions);
|
|
3521
3554
|
|
|
3522
3555
|
var selectors$6 = /*#__PURE__*/Object.freeze({
|
|
3523
3556
|
__proto__: null,
|
|
@@ -3534,6 +3567,7 @@ var selectors$6 = /*#__PURE__*/Object.freeze({
|
|
|
3534
3567
|
getIsLayerInEditMode: getIsLayerInEditMode,
|
|
3535
3568
|
getIsLayerMissing: getIsLayerMissing,
|
|
3536
3569
|
getIsLayerPresent: getIsLayerPresent,
|
|
3570
|
+
getIsLayerSelectable: getIsLayerSelectable,
|
|
3537
3571
|
getLayerById: getLayerById,
|
|
3538
3572
|
getLayerByIdWithoutTimeDimension: getLayerByIdWithoutTimeDimension,
|
|
3539
3573
|
getLayerCurrentTime: getLayerCurrentTime,
|
|
@@ -3785,6 +3819,7 @@ var DialogTypes;
|
|
|
3785
3819
|
DialogTypes["AreaObjectLoader"] = "areaObjectLoader";
|
|
3786
3820
|
DialogTypes["DataExplorer"] = "dataExplorer";
|
|
3787
3821
|
DialogTypes["DataExplorerInfo"] = "dataExplorerInfo";
|
|
3822
|
+
DialogTypes["SelectedFeatures"] = "selectedFeatures";
|
|
3788
3823
|
DialogTypes["SoundingsSources"] = "soundingsSources";
|
|
3789
3824
|
DialogTypes["SoundingsLocations"] = "soundingsLocations";
|
|
3790
3825
|
DialogTypes["TimeseriesLocations"] = "timeseriesLocations";
|
|
@@ -4178,47 +4213,47 @@ var slice$3 = createSlice({
|
|
|
4178
4213
|
});
|
|
4179
4214
|
}
|
|
4180
4215
|
});
|
|
4216
|
+
var getPayLoadKey = function getPayLoadKey(type) {
|
|
4217
|
+
switch (type) {
|
|
4218
|
+
case setTimeSync.type:
|
|
4219
|
+
return SYNCGROUPS_TYPE_SETTIME;
|
|
4220
|
+
case setBboxSync.type:
|
|
4221
|
+
return SYNCGROUPS_TYPE_SETBBOX;
|
|
4222
|
+
default:
|
|
4223
|
+
return null;
|
|
4224
|
+
}
|
|
4225
|
+
};
|
|
4226
|
+
var mergePayloadInToState = function mergePayloadInToState(draftSource, payloadKey, payload) {
|
|
4227
|
+
if (!draftSource) {
|
|
4228
|
+
// Do nothing if draftSource is undefined/null
|
|
4229
|
+
return;
|
|
4230
|
+
}
|
|
4231
|
+
if (!draftSource.payloadByType) {
|
|
4232
|
+
draftSource.payloadByType = {};
|
|
4233
|
+
draftSource.payloadByType[payloadKey] = payload;
|
|
4234
|
+
return;
|
|
4235
|
+
}
|
|
4236
|
+
draftSource.payloadByType[payloadKey] = merge(draftSource.payloadByType[payloadKey], payload);
|
|
4237
|
+
};
|
|
4181
4238
|
var setBboxOrTimeSync = function setBboxOrTimeSync(draft, action) {
|
|
4182
4239
|
var _action$payload8 = action.payload,
|
|
4183
4240
|
targets = _action$payload8.targets,
|
|
4184
4241
|
source = _action$payload8.source,
|
|
4185
4242
|
groups = _action$payload8.groups;
|
|
4186
|
-
var getPayLoadKey = function getPayLoadKey(type) {
|
|
4187
|
-
switch (type) {
|
|
4188
|
-
case setTimeSync.type:
|
|
4189
|
-
return SYNCGROUPS_TYPE_SETTIME;
|
|
4190
|
-
case setBboxSync.type:
|
|
4191
|
-
return SYNCGROUPS_TYPE_SETBBOX;
|
|
4192
|
-
default:
|
|
4193
|
-
return null;
|
|
4194
|
-
}
|
|
4195
|
-
};
|
|
4196
4243
|
if (source) {
|
|
4197
4244
|
var payloadKey = getPayLoadKey(action.type);
|
|
4198
4245
|
if (!source.payload || !payloadKey) {
|
|
4199
4246
|
console.warn('Wrong sync action: ', action);
|
|
4200
4247
|
return;
|
|
4201
4248
|
}
|
|
4202
|
-
|
|
4203
|
-
if (!draft.sources.byId[source.payload.sourceId].payloadByType) {
|
|
4204
|
-
draft.sources.byId[source.payload.sourceId].payloadByType = {};
|
|
4205
|
-
}
|
|
4206
|
-
draft.sources.byId[source.payload.sourceId].payloadByType[payloadKey] = source.payload;
|
|
4207
|
-
}
|
|
4249
|
+
mergePayloadInToState(draft.sources.byId[source.payload.sourceId], payloadKey, source.payload);
|
|
4208
4250
|
/* Update all targets */
|
|
4209
4251
|
targets.forEach(function (target) {
|
|
4210
|
-
|
|
4211
|
-
if (!draft.sources.byId[target.targetId].payloadByType) {
|
|
4212
|
-
draft.sources.byId[target.targetId].payloadByType = {};
|
|
4213
|
-
}
|
|
4214
|
-
draft.sources.byId[target.targetId].payloadByType[payloadKey] = source.payload;
|
|
4215
|
-
}
|
|
4252
|
+
mergePayloadInToState(draft.sources.byId[target.targetId], payloadKey, source.payload);
|
|
4216
4253
|
});
|
|
4217
4254
|
/* Set the value in the group */
|
|
4218
4255
|
groups.forEach(function (group) {
|
|
4219
|
-
|
|
4220
|
-
draft.groups.byId[group].payloadByType[payloadKey] = source.payload;
|
|
4221
|
-
}
|
|
4256
|
+
mergePayloadInToState(draft.groups.byId[group], payloadKey, source.payload);
|
|
4222
4257
|
});
|
|
4223
4258
|
}
|
|
4224
4259
|
};
|
|
@@ -4733,25 +4768,26 @@ function (state, mapId) {
|
|
|
4733
4768
|
return feature.id === selectedFeatureId;
|
|
4734
4769
|
});
|
|
4735
4770
|
if (selectedFeature && selectedFeature.geometry.type === 'Point') {
|
|
4736
|
-
var _selectedFeature$prop, _selectedFeature$prop2;
|
|
4771
|
+
var _selectedFeature$prop, _selectedFeature$prop2, _selectedFeature$prop3;
|
|
4737
4772
|
var coordinates = selectedFeature.geometry.coordinates;
|
|
4738
4773
|
return {
|
|
4739
4774
|
lat: coordinates[1],
|
|
4740
4775
|
lon: coordinates[0],
|
|
4741
4776
|
id: selectedFeature.id,
|
|
4742
4777
|
name: (_selectedFeature$prop = selectedFeature.properties) === null || _selectedFeature$prop === void 0 ? void 0 : _selectedFeature$prop.name,
|
|
4743
|
-
occurrences: (_selectedFeature$prop2 = selectedFeature.properties) === null || _selectedFeature$prop2 === void 0 ? void 0 : _selectedFeature$prop2.occurrences
|
|
4778
|
+
occurrences: (_selectedFeature$prop2 = selectedFeature.properties) === null || _selectedFeature$prop2 === void 0 ? void 0 : _selectedFeature$prop2.occurrences,
|
|
4779
|
+
serviceId: (_selectedFeature$prop3 = selectedFeature.properties) === null || _selectedFeature$prop3 === void 0 ? void 0 : _selectedFeature$prop3.serviceId
|
|
4744
4780
|
};
|
|
4745
4781
|
}
|
|
4746
4782
|
if (selectedFeature) {
|
|
4747
|
-
var _selectedFeature$
|
|
4783
|
+
var _selectedFeature$prop4, _selectedFeature$prop5;
|
|
4748
4784
|
var center = turf.center(selectedFeature);
|
|
4749
4785
|
return {
|
|
4750
4786
|
lat: center.geometry.coordinates[1],
|
|
4751
4787
|
lon: center.geometry.coordinates[0],
|
|
4752
4788
|
id: selectedFeature.id,
|
|
4753
|
-
name: (_selectedFeature$
|
|
4754
|
-
occurrences: (_selectedFeature$
|
|
4789
|
+
name: (_selectedFeature$prop4 = selectedFeature.properties) === null || _selectedFeature$prop4 === void 0 ? void 0 : _selectedFeature$prop4.name,
|
|
4790
|
+
occurrences: (_selectedFeature$prop5 = selectedFeature.properties) === null || _selectedFeature$prop5 === void 0 ? void 0 : _selectedFeature$prop5.occurrences
|
|
4755
4791
|
};
|
|
4756
4792
|
}
|
|
4757
4793
|
return null;
|
|
@@ -4886,7 +4922,7 @@ var initLoadingIndicatorStateForId = function initLoadingIndicatorStateForId(dra
|
|
|
4886
4922
|
if (!draft.entities[id]) {
|
|
4887
4923
|
loadingIndicatorAdapter.addOne(draft, {
|
|
4888
4924
|
id: id,
|
|
4889
|
-
|
|
4925
|
+
getMapLoadingPercentage: 100,
|
|
4890
4926
|
isGetCapabilitiesLoading: false,
|
|
4891
4927
|
isEDRLoading: false
|
|
4892
4928
|
});
|
|
@@ -4899,9 +4935,9 @@ var slice$2 = createSlice({
|
|
|
4899
4935
|
setGetMapIsLoading: function setGetMapIsLoading(draft, action) {
|
|
4900
4936
|
var _action$payload = action.payload,
|
|
4901
4937
|
id = _action$payload.id,
|
|
4902
|
-
|
|
4938
|
+
getMapLoadingPercentage = _action$payload.getMapLoadingPercentage;
|
|
4903
4939
|
initLoadingIndicatorStateForId(draft, id);
|
|
4904
|
-
draft.entities[id].
|
|
4940
|
+
draft.entities[id].getMapLoadingPercentage = getMapLoadingPercentage;
|
|
4905
4941
|
},
|
|
4906
4942
|
setGetCapabilitiesIsLoading: function setGetCapabilitiesIsLoading(draft, action) {
|
|
4907
4943
|
var _action$payload2 = action.payload,
|
|
@@ -4925,6 +4961,14 @@ var slice$2 = createSlice({
|
|
|
4925
4961
|
draft.entities[id].isEDRLoading = isEDRLoading;
|
|
4926
4962
|
}
|
|
4927
4963
|
}
|
|
4964
|
+
},
|
|
4965
|
+
extraReducers: function extraReducers(builder) {
|
|
4966
|
+
builder.addCase(mapActions.unregisterMap, function (draft, action) {
|
|
4967
|
+
var mapId = action.payload.mapId;
|
|
4968
|
+
if (draft.entities[mapId]) {
|
|
4969
|
+
loadingIndicatorAdapter.removeOne(draft, mapId);
|
|
4970
|
+
}
|
|
4971
|
+
});
|
|
4928
4972
|
}
|
|
4929
4973
|
});
|
|
4930
4974
|
var loadingIndicatorActions = slice$2.actions,
|
|
@@ -4956,8 +5000,11 @@ var _loadingIndicatorAdap = loadingIndicatorAdapter.getSelectors(function (state
|
|
|
4956
5000
|
return (_state$loadingIndicat = state === null || state === void 0 ? void 0 : state.loadingIndicator) !== null && _state$loadingIndicat !== void 0 ? _state$loadingIndicat : EMPTY_LOADING_INDICATOR;
|
|
4957
5001
|
}),
|
|
4958
5002
|
selectLoadingIndicatorById = _loadingIndicatorAdap.selectById;
|
|
4959
|
-
var
|
|
4960
|
-
return
|
|
5003
|
+
var getMapLoadingPercentage = createSelector(selectLoadingIndicatorById, function (loadingIndicator) {
|
|
5004
|
+
return loadingIndicator ? loadingIndicator === null || loadingIndicator === void 0 ? void 0 : loadingIndicator.getMapLoadingPercentage : 100;
|
|
5005
|
+
}, selectorMemoizationOptions);
|
|
5006
|
+
var isGetMapLoading = createSelector(getMapLoadingPercentage, function (percentage) {
|
|
5007
|
+
return percentage !== 100;
|
|
4961
5008
|
}, selectorMemoizationOptions);
|
|
4962
5009
|
var isGetCapabilitiesLoading = createSelector(selectLoadingIndicatorById, function (loadingIndicator) {
|
|
4963
5010
|
return (loadingIndicator === null || loadingIndicator === void 0 ? void 0 : loadingIndicator.isGetCapabilitiesLoading) || false;
|
|
@@ -4975,6 +5022,7 @@ var isLoading = createSelector([isGetMapLoading, isGetCapabilitiesLoading, isEDR
|
|
|
4975
5022
|
|
|
4976
5023
|
var selectors$2 = /*#__PURE__*/Object.freeze({
|
|
4977
5024
|
__proto__: null,
|
|
5025
|
+
getMapLoadingPercentage: getMapLoadingPercentage,
|
|
4978
5026
|
isEDRLoading: isEDRLoading,
|
|
4979
5027
|
isGetCapabilitiesLoading: isGetCapabilitiesLoading,
|
|
4980
5028
|
isGetMapLoading: isGetMapLoading,
|
|
@@ -5155,8 +5203,13 @@ var getMapOverLayersIds = createSelector(getMapById, function (store) {
|
|
|
5155
5203
|
}, selectorMemoizationOptions);
|
|
5156
5204
|
var getMapFeatureLayers = createSelector(getMapById, getFeatureLayers, function (store, featureLayers) {
|
|
5157
5205
|
var featureLayersOnMap = (store === null || store === void 0 ? void 0 : store.featureLayers) || [];
|
|
5158
|
-
return
|
|
5159
|
-
|
|
5206
|
+
// We want to return the feature layers in the same order as in featureLayersOnMap
|
|
5207
|
+
return featureLayersOnMap.map(function (id) {
|
|
5208
|
+
return featureLayers.find(function (layer) {
|
|
5209
|
+
return layer.id === id;
|
|
5210
|
+
});
|
|
5211
|
+
}).filter(function (layer) {
|
|
5212
|
+
return !!layer;
|
|
5160
5213
|
});
|
|
5161
5214
|
}, selectorMemoizationOptions);
|
|
5162
5215
|
/**
|
|
@@ -5813,7 +5866,7 @@ var getAnimationList = createSelector(getLayersById, getMapById, getAnimationSta
|
|
|
5813
5866
|
values = _ref4.values;
|
|
5814
5867
|
var unixAnimationStart = roundWithTimeStep(Number(animationStart && dateUtils.unix(dateUtils.utc(animationStart))), animationInterval, 'ceil');
|
|
5815
5868
|
var unixAnimationEnd = roundWithTimeStep(Number(animationEnd && dateUtils.unix(dateUtils.utc(animationEnd))), animationInterval, 'floor');
|
|
5816
|
-
var animationList = generateAnimationList(unixAnimationStart, unixAnimationEnd, values);
|
|
5869
|
+
var animationList = mapStore !== null && mapStore !== void 0 && mapStore.isTimestepAuto ? generateAnimationList(unixAnimationStart, unixAnimationEnd, values) : generateAnimationList(unixAnimationStart, unixAnimationEnd, values, animationInterval);
|
|
5817
5870
|
// If no animationList is generated, generate a default list using the interval from map
|
|
5818
5871
|
if (!animationList.length) {
|
|
5819
5872
|
var timeList = [];
|
|
@@ -6442,31 +6495,37 @@ genericListener.startListening({
|
|
|
6442
6495
|
});
|
|
6443
6496
|
// Synchronize timeslider settings for actions 'centertime', 'span' and 'timestep'.
|
|
6444
6497
|
genericListener.startListening({
|
|
6445
|
-
matcher: isAnyOf(mapActions.setTimeSliderCenterTime, mapActions.setTimeSliderSpan, mapActions.setTimeStep, mapActions.setAnimationStartTime, mapActions.setAnimationEndTime, mapActions.setAnimationDelay),
|
|
6498
|
+
matcher: isAnyOf(mapActions.setTimeSliderCenterTime, mapActions.setTimeSliderSpan, mapActions.setTimeStep, mapActions.setAnimationStartTime, mapActions.setAnimationEndTime, mapActions.setAnimationDelay, mapActions.mapStartAnimation),
|
|
6446
6499
|
effect: function () {
|
|
6447
6500
|
var _effect2 = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee2(_ref2, listenerApi) {
|
|
6448
|
-
var
|
|
6449
|
-
var payload, type, sourceId, syncGroupState, newPayload, targets, groups;
|
|
6501
|
+
var payload, type, sourceId, newPayload, animationStartPayload, targets, groups;
|
|
6450
6502
|
return _regeneratorRuntime().wrap(function _callee2$(_context2) {
|
|
6451
6503
|
while (1) switch (_context2.prev = _context2.next) {
|
|
6452
6504
|
case 0:
|
|
6453
6505
|
payload = _ref2.payload, type = _ref2.type;
|
|
6454
6506
|
listenerApi.cancelActiveListeners();
|
|
6455
6507
|
sourceId = payload.mapId;
|
|
6456
|
-
syncGroupState = (_synchronizationGroup = getSynchronizationGroupSource(listenerApi.getState(), sourceId)) === null || _synchronizationGroup === void 0 || (_synchronizationGroup = _synchronizationGroup.payloadByType['SYNCGROUPS_TYPE_SETTIME']) === null || _synchronizationGroup === void 0 ? void 0 : _synchronizationGroup.value;
|
|
6457
6508
|
newPayload = {
|
|
6458
6509
|
sourceId: sourceId,
|
|
6459
6510
|
origin: 'timeslidersynclistener',
|
|
6460
6511
|
value: {
|
|
6461
|
-
|
|
6462
|
-
|
|
6463
|
-
|
|
6464
|
-
|
|
6465
|
-
|
|
6466
|
-
|
|
6467
|
-
timeSliderAnimationDelay: type === mapActions.setAnimationDelay.type ? payload.animationDelay : syncGroupState === null || syncGroupState === void 0 ? void 0 : syncGroupState.timeSliderAnimationDelay
|
|
6512
|
+
timeSliderCenterTime: type === mapActions.setTimeSliderCenterTime.type ? payload.timeSliderCenterTime : undefined,
|
|
6513
|
+
timeSliderSpan: type === mapActions.setTimeSliderSpan.type ? payload.timeSliderSpan : undefined,
|
|
6514
|
+
timeSliderStep: type === mapActions.setTimeStep.type ? payload.timeStep : undefined,
|
|
6515
|
+
timeSliderAnimationStartTime: type === mapActions.setAnimationStartTime.type ? payload.animationStartTime : undefined,
|
|
6516
|
+
timeSliderAnimationEndTime: type === mapActions.setAnimationEndTime.type ? payload.animationEndTime : undefined,
|
|
6517
|
+
timeSliderAnimationDelay: type === mapActions.setAnimationDelay.type ? payload.animationDelay : undefined
|
|
6468
6518
|
}
|
|
6469
6519
|
};
|
|
6520
|
+
if (type === mapActions.mapStartAnimation.type) {
|
|
6521
|
+
animationStartPayload = payload;
|
|
6522
|
+
if (animationStartPayload.start) {
|
|
6523
|
+
newPayload.value.timeSliderAnimationStartTime = animationStartPayload.start;
|
|
6524
|
+
}
|
|
6525
|
+
if (animationStartPayload.end) {
|
|
6526
|
+
newPayload.value.timeSliderAnimationEndTime = animationStartPayload.end;
|
|
6527
|
+
}
|
|
6528
|
+
}
|
|
6470
6529
|
targets = getTargets(listenerApi.getState(), newPayload, SYNCGROUPS_TYPE_SETTIME);
|
|
6471
6530
|
groups = getTargetGroups(listenerApi.getState(), newPayload, SYNCGROUPS_TYPE_SETTIME);
|
|
6472
6531
|
listenerApi.dispatch(setTimeSync(newPayload, targets, groups));
|
|
@@ -6801,12 +6860,12 @@ var isNextStepAvailable = function isNextStepAvailable(reduxLayers, nextTimeStri
|
|
|
6801
6860
|
var wmLayers = reduxLayers.map(function (reduxLayer) {
|
|
6802
6861
|
return reduxLayer.id && getWMLayerById(reduxLayer.id);
|
|
6803
6862
|
}).filter(function (layer) {
|
|
6804
|
-
return !!layer;
|
|
6863
|
+
return !!layer && layer.enabled;
|
|
6805
6864
|
});
|
|
6806
6865
|
// Returns a layer which could have an image for the requested time, but which isn't loaded yet.
|
|
6807
6866
|
var isThereSomethingNotAvailable = wmLayers.map(function (layer) {
|
|
6808
6867
|
var _layer$getDimension;
|
|
6809
|
-
if (!layer || !layer.olSource) {
|
|
6868
|
+
if (!layer || !layer.olSource || layer.enabled !== true) {
|
|
6810
6869
|
// No OpenLayers source, do nothing, so do not flag that something is not available
|
|
6811
6870
|
return {
|
|
6812
6871
|
status: true
|
|
@@ -6904,7 +6963,13 @@ var olMetronomeHandler = function olMetronomeHandler(timerIds, listenerApi) {
|
|
|
6904
6963
|
_iterator.f();
|
|
6905
6964
|
}
|
|
6906
6965
|
if (targetsWithUpdateValue.length > 0) {
|
|
6907
|
-
|
|
6966
|
+
// This ensures the source value is stored in the syncgroup
|
|
6967
|
+
var metronomelistenersource = {
|
|
6968
|
+
sourceId: 'metronomelistenersource',
|
|
6969
|
+
origin: 'metronomelistenersource',
|
|
6970
|
+
value: targetsWithUpdateValue[0].value
|
|
6971
|
+
};
|
|
6972
|
+
listenerApi.dispatch(setTimeSync(metronomelistenersource, targetsWithUpdateValue, ['metronomelistener']));
|
|
6908
6973
|
}
|
|
6909
6974
|
};
|
|
6910
6975
|
|
|
@@ -6993,7 +7058,6 @@ mapListener.startListening({
|
|
|
6993
7058
|
updateAnimation(mapId, incomingMaxTime, listenerApi);
|
|
6994
7059
|
}
|
|
6995
7060
|
} catch (error) {
|
|
6996
|
-
// eslint-disable-next-line no-console
|
|
6997
7061
|
console.warn(error);
|
|
6998
7062
|
}
|
|
6999
7063
|
}
|
|
@@ -7091,7 +7155,6 @@ mapListener.startListening({
|
|
|
7091
7155
|
});
|
|
7092
7156
|
}
|
|
7093
7157
|
} catch (error) {
|
|
7094
|
-
// eslint-disable-next-line no-console
|
|
7095
7158
|
console.warn(error);
|
|
7096
7159
|
}
|
|
7097
7160
|
case 6:
|
|
@@ -7344,7 +7407,7 @@ mapListener.startListening({
|
|
|
7344
7407
|
animationStartTime: startTime
|
|
7345
7408
|
}));
|
|
7346
7409
|
listenerApi.dispatch(genericActions.setTime({
|
|
7347
|
-
origin: '',
|
|
7410
|
+
origin: 'map/listener.ts, setMapPreset',
|
|
7348
7411
|
sourceId: mapId,
|
|
7349
7412
|
value: {
|
|
7350
7413
|
currentTime: startTime
|
|
@@ -7367,7 +7430,7 @@ mapListener.startListening({
|
|
|
7367
7430
|
animationStartTime: _startTime
|
|
7368
7431
|
}));
|
|
7369
7432
|
listenerApi.dispatch(genericActions.setTime({
|
|
7370
|
-
origin: '',
|
|
7433
|
+
origin: 'map/listener.ts, setAnimationStartTime',
|
|
7371
7434
|
sourceId: mapId,
|
|
7372
7435
|
value: {
|
|
7373
7436
|
currentTime: _startTime
|
|
@@ -7534,7 +7597,7 @@ mapListener.startListening({
|
|
|
7534
7597
|
}));
|
|
7535
7598
|
}
|
|
7536
7599
|
listenerApi.dispatch(genericActions.setTime({
|
|
7537
|
-
origin: '',
|
|
7600
|
+
origin: 'map/listener.ts, setStepBackwardOrForward',
|
|
7538
7601
|
sourceId: mapId,
|
|
7539
7602
|
value: {
|
|
7540
7603
|
currentTime: handleDateUtilsISOString(selectedTimeString)
|
|
@@ -7790,7 +7853,6 @@ var fetchInitialServices = /*#__PURE__*/function () {
|
|
|
7790
7853
|
case 7:
|
|
7791
7854
|
_context2.prev = 7;
|
|
7792
7855
|
_context2.t0 = _context2["catch"](2);
|
|
7793
|
-
// eslint-disable-next-line no-console
|
|
7794
7856
|
console.warn(_context2.t0);
|
|
7795
7857
|
case 10:
|
|
7796
7858
|
case "end":
|
|
@@ -7849,11 +7911,7 @@ var slice$1 = createSlice({
|
|
|
7849
7911
|
initialState: initialState$1,
|
|
7850
7912
|
name: 'router',
|
|
7851
7913
|
reducers: {
|
|
7852
|
-
navigateToUrl: function navigateToUrl(
|
|
7853
|
-
// eslint-disable-next-line no-unused-vars
|
|
7854
|
-
draft,
|
|
7855
|
-
// eslint-disable-next-line no-unused-vars
|
|
7856
|
-
action) {}
|
|
7914
|
+
navigateToUrl: function navigateToUrl(_draft, _action) {}
|
|
7857
7915
|
}
|
|
7858
7916
|
});
|
|
7859
7917
|
var routerReducer = slice$1.reducer,
|
|
@@ -8013,11 +8071,7 @@ var slice = createSlice({
|
|
|
8013
8071
|
});
|
|
8014
8072
|
drawTool.drawModes = newModes;
|
|
8015
8073
|
},
|
|
8016
|
-
changeIntersectionBounds: function changeIntersectionBounds(
|
|
8017
|
-
// eslint-disable-next-line no-unused-vars
|
|
8018
|
-
draft,
|
|
8019
|
-
// eslint-disable-next-line no-unused-vars
|
|
8020
|
-
action) {
|
|
8074
|
+
changeIntersectionBounds: function changeIntersectionBounds(_draft, _action) {
|
|
8021
8075
|
// action caught in drawingTool/listener
|
|
8022
8076
|
}
|
|
8023
8077
|
},
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@opengeoweb/store",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "14.0.1",
|
|
4
4
|
"description": "GeoWeb Store library for the opengeoweb project",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"repository": {
|
|
@@ -8,15 +8,15 @@
|
|
|
8
8
|
"url": "git@gitlab.com:opengeoweb/opengeoweb.git"
|
|
9
9
|
},
|
|
10
10
|
"dependencies": {
|
|
11
|
-
"@opengeoweb/shared": "
|
|
11
|
+
"@opengeoweb/shared": "14.0.1",
|
|
12
12
|
"react-redux": "^9.2.0",
|
|
13
13
|
"@reduxjs/toolkit": "^2.6.1",
|
|
14
|
-
"@opengeoweb/webmap-react": "
|
|
15
|
-
"@opengeoweb/webmap": "
|
|
14
|
+
"@opengeoweb/webmap-react": "14.0.1",
|
|
15
|
+
"@opengeoweb/webmap": "14.0.1",
|
|
16
16
|
"immer": "^10.0.3",
|
|
17
17
|
"lodash": "^4.17.21",
|
|
18
|
-
"@opengeoweb/metronome": "
|
|
19
|
-
"@opengeoweb/time-slider": "
|
|
18
|
+
"@opengeoweb/metronome": "14.0.1",
|
|
19
|
+
"@opengeoweb/time-slider": "14.0.1",
|
|
20
20
|
"react-router-dom": "^6.23.1",
|
|
21
21
|
"ol": "^10.4.0",
|
|
22
22
|
"@turf/turf": "^7.2.0",
|
|
@@ -38,7 +38,7 @@ export declare const drawingToolReducer: import("redux").Reducer<DrawingToolStat
|
|
|
38
38
|
shape: GeoJSON.FeatureCollection;
|
|
39
39
|
title?: string;
|
|
40
40
|
}>) => void;
|
|
41
|
-
changeIntersectionBounds: (
|
|
41
|
+
changeIntersectionBounds: (_draft: Draft<DrawingToolState>, _action: PayloadAction<{
|
|
42
42
|
drawToolId: string;
|
|
43
43
|
geoJSON: GeoJSON.FeatureCollection;
|
|
44
44
|
}>) => void;
|
|
@@ -1,35 +1,35 @@
|
|
|
1
1
|
import { LoadingIndicatorModuleState, LoadingIndicatorType } from './types';
|
|
2
2
|
export declare const selectLoadingIndicatorById: (state: LoadingIndicatorModuleState, id: string) => {
|
|
3
3
|
id: string;
|
|
4
|
-
|
|
4
|
+
getMapLoadingPercentage: number;
|
|
5
5
|
isGetCapabilitiesLoading: boolean;
|
|
6
6
|
isEDRLoading: boolean;
|
|
7
7
|
};
|
|
8
|
-
export declare const
|
|
8
|
+
export declare const getMapLoadingPercentage: ((state: LoadingIndicatorModuleState, id: string) => number) & {
|
|
9
9
|
clearCache: () => void;
|
|
10
10
|
resultsCount: () => number;
|
|
11
11
|
resetResultsCount: () => void;
|
|
12
12
|
} & {
|
|
13
13
|
resultFunc: (resultFuncArgs_0: {
|
|
14
14
|
id: string;
|
|
15
|
-
|
|
15
|
+
getMapLoadingPercentage: number;
|
|
16
16
|
isGetCapabilitiesLoading: boolean;
|
|
17
17
|
isEDRLoading: boolean;
|
|
18
|
-
}) =>
|
|
18
|
+
}) => number;
|
|
19
19
|
memoizedResultFunc: ((resultFuncArgs_0: {
|
|
20
20
|
id: string;
|
|
21
|
-
|
|
21
|
+
getMapLoadingPercentage: number;
|
|
22
22
|
isGetCapabilitiesLoading: boolean;
|
|
23
23
|
isEDRLoading: boolean;
|
|
24
|
-
}) =>
|
|
24
|
+
}) => number) & {
|
|
25
25
|
clearCache: () => void;
|
|
26
26
|
resultsCount: () => number;
|
|
27
27
|
resetResultsCount: () => void;
|
|
28
28
|
};
|
|
29
|
-
lastResult: () =>
|
|
29
|
+
lastResult: () => number;
|
|
30
30
|
dependencies: [(state: LoadingIndicatorModuleState, id: string) => {
|
|
31
31
|
id: string;
|
|
32
|
-
|
|
32
|
+
getMapLoadingPercentage: number;
|
|
33
33
|
isGetCapabilitiesLoading: boolean;
|
|
34
34
|
isEDRLoading: boolean;
|
|
35
35
|
}];
|
|
@@ -41,6 +41,62 @@ export declare const isGetMapLoading: ((state: LoadingIndicatorModuleState, id:
|
|
|
41
41
|
memoize: typeof import("reselect").weakMapMemoize;
|
|
42
42
|
argsMemoize: typeof import("reselect").weakMapMemoize;
|
|
43
43
|
};
|
|
44
|
+
export declare const isGetMapLoading: ((state: LoadingIndicatorModuleState, id: string) => boolean) & {
|
|
45
|
+
clearCache: () => void;
|
|
46
|
+
resultsCount: () => number;
|
|
47
|
+
resetResultsCount: () => void;
|
|
48
|
+
} & {
|
|
49
|
+
resultFunc: (resultFuncArgs_0: number) => boolean;
|
|
50
|
+
memoizedResultFunc: ((resultFuncArgs_0: number) => boolean) & {
|
|
51
|
+
clearCache: () => void;
|
|
52
|
+
resultsCount: () => number;
|
|
53
|
+
resetResultsCount: () => void;
|
|
54
|
+
};
|
|
55
|
+
lastResult: () => boolean;
|
|
56
|
+
dependencies: [((state: LoadingIndicatorModuleState, id: string) => number) & {
|
|
57
|
+
clearCache: () => void;
|
|
58
|
+
resultsCount: () => number;
|
|
59
|
+
resetResultsCount: () => void;
|
|
60
|
+
} & {
|
|
61
|
+
resultFunc: (resultFuncArgs_0: {
|
|
62
|
+
id: string;
|
|
63
|
+
getMapLoadingPercentage: number;
|
|
64
|
+
isGetCapabilitiesLoading: boolean;
|
|
65
|
+
isEDRLoading: boolean;
|
|
66
|
+
}) => number;
|
|
67
|
+
memoizedResultFunc: ((resultFuncArgs_0: {
|
|
68
|
+
id: string;
|
|
69
|
+
getMapLoadingPercentage: number;
|
|
70
|
+
isGetCapabilitiesLoading: boolean;
|
|
71
|
+
isEDRLoading: boolean;
|
|
72
|
+
}) => number) & {
|
|
73
|
+
clearCache: () => void;
|
|
74
|
+
resultsCount: () => number;
|
|
75
|
+
resetResultsCount: () => void;
|
|
76
|
+
};
|
|
77
|
+
lastResult: () => number;
|
|
78
|
+
dependencies: [(state: LoadingIndicatorModuleState, id: string) => {
|
|
79
|
+
id: string;
|
|
80
|
+
getMapLoadingPercentage: number;
|
|
81
|
+
isGetCapabilitiesLoading: boolean;
|
|
82
|
+
isEDRLoading: boolean;
|
|
83
|
+
}];
|
|
84
|
+
recomputations: () => number;
|
|
85
|
+
resetRecomputations: () => void;
|
|
86
|
+
dependencyRecomputations: () => number;
|
|
87
|
+
resetDependencyRecomputations: () => void;
|
|
88
|
+
} & {
|
|
89
|
+
memoize: typeof import("reselect").weakMapMemoize;
|
|
90
|
+
argsMemoize: typeof import("reselect").weakMapMemoize;
|
|
91
|
+
}];
|
|
92
|
+
recomputations: () => number;
|
|
93
|
+
resetRecomputations: () => void;
|
|
94
|
+
dependencyRecomputations: () => number;
|
|
95
|
+
resetDependencyRecomputations: () => void;
|
|
96
|
+
} & {
|
|
97
|
+
memoize: typeof import("reselect").weakMapMemoize;
|
|
98
|
+
argsMemoize: typeof import("reselect").weakMapMemoize;
|
|
99
|
+
};
|
|
44
100
|
export declare const isGetCapabilitiesLoading: ((state: LoadingIndicatorModuleState, id: string) => boolean) & {
|
|
45
101
|
clearCache: () => void;
|
|
46
102
|
resultsCount: () => number;
|
|
@@ -48,13 +104,13 @@ export declare const isGetCapabilitiesLoading: ((state: LoadingIndicatorModuleSt
|
|
|
48
104
|
} & {
|
|
49
105
|
resultFunc: (resultFuncArgs_0: {
|
|
50
106
|
id: string;
|
|
51
|
-
|
|
107
|
+
getMapLoadingPercentage: number;
|
|
52
108
|
isGetCapabilitiesLoading: boolean;
|
|
53
109
|
isEDRLoading: boolean;
|
|
54
110
|
}) => boolean;
|
|
55
111
|
memoizedResultFunc: ((resultFuncArgs_0: {
|
|
56
112
|
id: string;
|
|
57
|
-
|
|
113
|
+
getMapLoadingPercentage: number;
|
|
58
114
|
isGetCapabilitiesLoading: boolean;
|
|
59
115
|
isEDRLoading: boolean;
|
|
60
116
|
}) => boolean) & {
|
|
@@ -65,7 +121,7 @@ export declare const isGetCapabilitiesLoading: ((state: LoadingIndicatorModuleSt
|
|
|
65
121
|
lastResult: () => boolean;
|
|
66
122
|
dependencies: [(state: LoadingIndicatorModuleState, id: string) => {
|
|
67
123
|
id: string;
|
|
68
|
-
|
|
124
|
+
getMapLoadingPercentage: number;
|
|
69
125
|
isGetCapabilitiesLoading: boolean;
|
|
70
126
|
isEDRLoading: boolean;
|
|
71
127
|
}];
|
|
@@ -84,13 +140,13 @@ export declare const isEDRLoading: ((state: LoadingIndicatorModuleState, id: str
|
|
|
84
140
|
} & {
|
|
85
141
|
resultFunc: (resultFuncArgs_0: {
|
|
86
142
|
id: string;
|
|
87
|
-
|
|
143
|
+
getMapLoadingPercentage: number;
|
|
88
144
|
isGetCapabilitiesLoading: boolean;
|
|
89
145
|
isEDRLoading: boolean;
|
|
90
146
|
}) => boolean;
|
|
91
147
|
memoizedResultFunc: ((resultFuncArgs_0: {
|
|
92
148
|
id: string;
|
|
93
|
-
|
|
149
|
+
getMapLoadingPercentage: number;
|
|
94
150
|
isGetCapabilitiesLoading: boolean;
|
|
95
151
|
isEDRLoading: boolean;
|
|
96
152
|
}) => boolean) & {
|
|
@@ -101,7 +157,7 @@ export declare const isEDRLoading: ((state: LoadingIndicatorModuleState, id: str
|
|
|
101
157
|
lastResult: () => boolean;
|
|
102
158
|
dependencies: [(state: LoadingIndicatorModuleState, id: string) => {
|
|
103
159
|
id: string;
|
|
104
|
-
|
|
160
|
+
getMapLoadingPercentage: number;
|
|
105
161
|
isGetCapabilitiesLoading: boolean;
|
|
106
162
|
isEDRLoading: boolean;
|
|
107
163
|
}];
|
|
@@ -130,28 +186,48 @@ export declare const isLoading: ((state: LoadingIndicatorModuleState, id: string
|
|
|
130
186
|
resultsCount: () => number;
|
|
131
187
|
resetResultsCount: () => void;
|
|
132
188
|
} & {
|
|
133
|
-
resultFunc: (resultFuncArgs_0:
|
|
134
|
-
|
|
135
|
-
isGetMapLoading: boolean;
|
|
136
|
-
isGetCapabilitiesLoading: boolean;
|
|
137
|
-
isEDRLoading: boolean;
|
|
138
|
-
}) => boolean;
|
|
139
|
-
memoizedResultFunc: ((resultFuncArgs_0: {
|
|
140
|
-
id: string;
|
|
141
|
-
isGetMapLoading: boolean;
|
|
142
|
-
isGetCapabilitiesLoading: boolean;
|
|
143
|
-
isEDRLoading: boolean;
|
|
144
|
-
}) => boolean) & {
|
|
189
|
+
resultFunc: (resultFuncArgs_0: number) => boolean;
|
|
190
|
+
memoizedResultFunc: ((resultFuncArgs_0: number) => boolean) & {
|
|
145
191
|
clearCache: () => void;
|
|
146
192
|
resultsCount: () => number;
|
|
147
193
|
resetResultsCount: () => void;
|
|
148
194
|
};
|
|
149
195
|
lastResult: () => boolean;
|
|
150
|
-
dependencies: [(state: LoadingIndicatorModuleState, id: string) => {
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
196
|
+
dependencies: [((state: LoadingIndicatorModuleState, id: string) => number) & {
|
|
197
|
+
clearCache: () => void;
|
|
198
|
+
resultsCount: () => number;
|
|
199
|
+
resetResultsCount: () => void;
|
|
200
|
+
} & {
|
|
201
|
+
resultFunc: (resultFuncArgs_0: {
|
|
202
|
+
id: string;
|
|
203
|
+
getMapLoadingPercentage: number;
|
|
204
|
+
isGetCapabilitiesLoading: boolean;
|
|
205
|
+
isEDRLoading: boolean;
|
|
206
|
+
}) => number;
|
|
207
|
+
memoizedResultFunc: ((resultFuncArgs_0: {
|
|
208
|
+
id: string;
|
|
209
|
+
getMapLoadingPercentage: number;
|
|
210
|
+
isGetCapabilitiesLoading: boolean;
|
|
211
|
+
isEDRLoading: boolean;
|
|
212
|
+
}) => number) & {
|
|
213
|
+
clearCache: () => void;
|
|
214
|
+
resultsCount: () => number;
|
|
215
|
+
resetResultsCount: () => void;
|
|
216
|
+
};
|
|
217
|
+
lastResult: () => number;
|
|
218
|
+
dependencies: [(state: LoadingIndicatorModuleState, id: string) => {
|
|
219
|
+
id: string;
|
|
220
|
+
getMapLoadingPercentage: number;
|
|
221
|
+
isGetCapabilitiesLoading: boolean;
|
|
222
|
+
isEDRLoading: boolean;
|
|
223
|
+
}];
|
|
224
|
+
recomputations: () => number;
|
|
225
|
+
resetRecomputations: () => void;
|
|
226
|
+
dependencyRecomputations: () => number;
|
|
227
|
+
resetDependencyRecomputations: () => void;
|
|
228
|
+
} & {
|
|
229
|
+
memoize: typeof import("reselect").weakMapMemoize;
|
|
230
|
+
argsMemoize: typeof import("reselect").weakMapMemoize;
|
|
155
231
|
}];
|
|
156
232
|
recomputations: () => number;
|
|
157
233
|
resetRecomputations: () => void;
|
|
@@ -167,13 +243,13 @@ export declare const isLoading: ((state: LoadingIndicatorModuleState, id: string
|
|
|
167
243
|
} & {
|
|
168
244
|
resultFunc: (resultFuncArgs_0: {
|
|
169
245
|
id: string;
|
|
170
|
-
|
|
246
|
+
getMapLoadingPercentage: number;
|
|
171
247
|
isGetCapabilitiesLoading: boolean;
|
|
172
248
|
isEDRLoading: boolean;
|
|
173
249
|
}) => boolean;
|
|
174
250
|
memoizedResultFunc: ((resultFuncArgs_0: {
|
|
175
251
|
id: string;
|
|
176
|
-
|
|
252
|
+
getMapLoadingPercentage: number;
|
|
177
253
|
isGetCapabilitiesLoading: boolean;
|
|
178
254
|
isEDRLoading: boolean;
|
|
179
255
|
}) => boolean) & {
|
|
@@ -184,7 +260,7 @@ export declare const isLoading: ((state: LoadingIndicatorModuleState, id: string
|
|
|
184
260
|
lastResult: () => boolean;
|
|
185
261
|
dependencies: [(state: LoadingIndicatorModuleState, id: string) => {
|
|
186
262
|
id: string;
|
|
187
|
-
|
|
263
|
+
getMapLoadingPercentage: number;
|
|
188
264
|
isGetCapabilitiesLoading: boolean;
|
|
189
265
|
isEDRLoading: boolean;
|
|
190
266
|
}];
|
|
@@ -202,13 +278,13 @@ export declare const isLoading: ((state: LoadingIndicatorModuleState, id: string
|
|
|
202
278
|
} & {
|
|
203
279
|
resultFunc: (resultFuncArgs_0: {
|
|
204
280
|
id: string;
|
|
205
|
-
|
|
281
|
+
getMapLoadingPercentage: number;
|
|
206
282
|
isGetCapabilitiesLoading: boolean;
|
|
207
283
|
isEDRLoading: boolean;
|
|
208
284
|
}) => boolean;
|
|
209
285
|
memoizedResultFunc: ((resultFuncArgs_0: {
|
|
210
286
|
id: string;
|
|
211
|
-
|
|
287
|
+
getMapLoadingPercentage: number;
|
|
212
288
|
isGetCapabilitiesLoading: boolean;
|
|
213
289
|
isEDRLoading: boolean;
|
|
214
290
|
}) => boolean) & {
|
|
@@ -219,7 +295,7 @@ export declare const isLoading: ((state: LoadingIndicatorModuleState, id: string
|
|
|
219
295
|
lastResult: () => boolean;
|
|
220
296
|
dependencies: [(state: LoadingIndicatorModuleState, id: string) => {
|
|
221
297
|
id: string;
|
|
222
|
-
|
|
298
|
+
getMapLoadingPercentage: number;
|
|
223
299
|
isGetCapabilitiesLoading: boolean;
|
|
224
300
|
isEDRLoading: boolean;
|
|
225
301
|
}];
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { EntityState } from '@reduxjs/toolkit';
|
|
2
2
|
export interface LoadingIndicatorType {
|
|
3
3
|
id: string;
|
|
4
|
-
|
|
4
|
+
getMapLoadingPercentage: number;
|
|
5
5
|
isGetCapabilitiesLoading: boolean;
|
|
6
6
|
isEDRLoading: boolean;
|
|
7
7
|
}
|
|
@@ -10,7 +10,7 @@ export interface LoadingIndicatorModuleState {
|
|
|
10
10
|
}
|
|
11
11
|
export interface SetIsGetMapLoadingPayload {
|
|
12
12
|
id: string;
|
|
13
|
-
|
|
13
|
+
getMapLoadingPercentage: number;
|
|
14
14
|
}
|
|
15
15
|
export interface SetIsGetCapabilitiesLoadingPayload {
|
|
16
16
|
id: string;
|
|
@@ -171,7 +171,7 @@ export declare const selectLinkedFeatures: ((state: any, props: {
|
|
|
171
171
|
}) => {
|
|
172
172
|
id: string;
|
|
173
173
|
originalId?: string;
|
|
174
|
-
geoJSON: GeoJSON.FeatureCollection
|
|
174
|
+
geoJSON: GeoJSON.FeatureCollection<GeoJSON.Geometry, import("./syncGroups/types").PotentialDataProperties | null>;
|
|
175
175
|
}[]) & {
|
|
176
176
|
clearCache: () => void;
|
|
177
177
|
resultsCount: () => number;
|
|
@@ -180,12 +180,12 @@ export declare const selectLinkedFeatures: ((state: any, props: {
|
|
|
180
180
|
resultFunc: (resultFuncArgs_0: LinkedState | undefined, resultFuncArgs_1: string[]) => {
|
|
181
181
|
id: string;
|
|
182
182
|
originalId?: string;
|
|
183
|
-
geoJSON: GeoJSON.FeatureCollection
|
|
183
|
+
geoJSON: GeoJSON.FeatureCollection<GeoJSON.Geometry, import("./syncGroups/types").PotentialDataProperties | null>;
|
|
184
184
|
}[];
|
|
185
185
|
memoizedResultFunc: ((resultFuncArgs_0: LinkedState | undefined, resultFuncArgs_1: string[]) => {
|
|
186
186
|
id: string;
|
|
187
187
|
originalId?: string;
|
|
188
|
-
geoJSON: GeoJSON.FeatureCollection
|
|
188
|
+
geoJSON: GeoJSON.FeatureCollection<GeoJSON.Geometry, import("./syncGroups/types").PotentialDataProperties | null>;
|
|
189
189
|
}[]) & {
|
|
190
190
|
clearCache: () => void;
|
|
191
191
|
resultsCount: () => number;
|
|
@@ -194,7 +194,7 @@ export declare const selectLinkedFeatures: ((state: any, props: {
|
|
|
194
194
|
lastResult: () => {
|
|
195
195
|
id: string;
|
|
196
196
|
originalId?: string;
|
|
197
|
-
geoJSON: GeoJSON.FeatureCollection
|
|
197
|
+
geoJSON: GeoJSON.FeatureCollection<GeoJSON.Geometry, import("./syncGroups/types").PotentialDataProperties | null>;
|
|
198
198
|
}[];
|
|
199
199
|
dependencies: [(linkedState: any) => LinkedState | undefined, ((state: LinkedState, props: {
|
|
200
200
|
mapId: string;
|
|
@@ -292,8 +292,16 @@ export declare const getSelectedFeature: ((state: SynchronizationGroupState, map
|
|
|
292
292
|
lat: number;
|
|
293
293
|
lon: number;
|
|
294
294
|
id: string;
|
|
295
|
-
name:
|
|
296
|
-
occurrences:
|
|
295
|
+
name: string | undefined;
|
|
296
|
+
occurrences: import("./syncGroups/types").Occurrence[] | undefined;
|
|
297
|
+
serviceId: string | undefined;
|
|
298
|
+
} | {
|
|
299
|
+
lat: number;
|
|
300
|
+
lon: number;
|
|
301
|
+
id: string;
|
|
302
|
+
name: string | undefined;
|
|
303
|
+
occurrences: import("./syncGroups/types").Occurrence[] | undefined;
|
|
304
|
+
serviceId?: undefined;
|
|
297
305
|
} | null) & {
|
|
298
306
|
clearCache: () => void;
|
|
299
307
|
resultsCount: () => number;
|
|
@@ -303,15 +311,31 @@ export declare const getSelectedFeature: ((state: SynchronizationGroupState, map
|
|
|
303
311
|
lat: number;
|
|
304
312
|
lon: number;
|
|
305
313
|
id: string;
|
|
306
|
-
name:
|
|
307
|
-
occurrences:
|
|
314
|
+
name: string | undefined;
|
|
315
|
+
occurrences: import("./syncGroups/types").Occurrence[] | undefined;
|
|
316
|
+
serviceId: string | undefined;
|
|
317
|
+
} | {
|
|
318
|
+
lat: number;
|
|
319
|
+
lon: number;
|
|
320
|
+
id: string;
|
|
321
|
+
name: string | undefined;
|
|
322
|
+
occurrences: import("./syncGroups/types").Occurrence[] | undefined;
|
|
323
|
+
serviceId?: undefined;
|
|
308
324
|
} | null;
|
|
309
325
|
memoizedResultFunc: ((resultFuncArgs_0: PotentialData) => {
|
|
310
326
|
lat: number;
|
|
311
327
|
lon: number;
|
|
312
328
|
id: string;
|
|
313
|
-
name:
|
|
314
|
-
occurrences:
|
|
329
|
+
name: string | undefined;
|
|
330
|
+
occurrences: import("./syncGroups/types").Occurrence[] | undefined;
|
|
331
|
+
serviceId: string | undefined;
|
|
332
|
+
} | {
|
|
333
|
+
lat: number;
|
|
334
|
+
lon: number;
|
|
335
|
+
id: string;
|
|
336
|
+
name: string | undefined;
|
|
337
|
+
occurrences: import("./syncGroups/types").Occurrence[] | undefined;
|
|
338
|
+
serviceId?: undefined;
|
|
315
339
|
} | null) & {
|
|
316
340
|
clearCache: () => void;
|
|
317
341
|
resultsCount: () => number;
|
|
@@ -321,8 +345,16 @@ export declare const getSelectedFeature: ((state: SynchronizationGroupState, map
|
|
|
321
345
|
lat: number;
|
|
322
346
|
lon: number;
|
|
323
347
|
id: string;
|
|
324
|
-
name:
|
|
325
|
-
occurrences:
|
|
348
|
+
name: string | undefined;
|
|
349
|
+
occurrences: import("./syncGroups/types").Occurrence[] | undefined;
|
|
350
|
+
serviceId: string | undefined;
|
|
351
|
+
} | {
|
|
352
|
+
lat: number;
|
|
353
|
+
lon: number;
|
|
354
|
+
id: string;
|
|
355
|
+
name: string | undefined;
|
|
356
|
+
occurrences: import("./syncGroups/types").Occurrence[] | undefined;
|
|
357
|
+
serviceId?: undefined;
|
|
326
358
|
} | null;
|
|
327
359
|
dependencies: [(state: SynchronizationGroupState, mapId: string) => PotentialData];
|
|
328
360
|
recomputations: () => number;
|
|
@@ -333,18 +365,18 @@ export declare const getSelectedFeature: ((state: SynchronizationGroupState, map
|
|
|
333
365
|
memoize: typeof import("reselect").weakMapMemoize;
|
|
334
366
|
argsMemoize: typeof import("reselect").weakMapMemoize;
|
|
335
367
|
};
|
|
336
|
-
export declare const getSelectedFeatureAsGeoJSON: ((state: SynchronizationGroupState, mapId: string) => import("geojson").Feature<import("geojson").Geometry, import("
|
|
368
|
+
export declare const getSelectedFeatureAsGeoJSON: ((state: SynchronizationGroupState, mapId: string) => import("geojson").Feature<import("geojson").Geometry, import("./syncGroups/types").PotentialDataProperties | null> | null | undefined) & {
|
|
337
369
|
clearCache: () => void;
|
|
338
370
|
resultsCount: () => number;
|
|
339
371
|
resetResultsCount: () => void;
|
|
340
372
|
} & {
|
|
341
|
-
resultFunc: (resultFuncArgs_0: PotentialData) => import("geojson").Feature<import("geojson").Geometry, import("
|
|
342
|
-
memoizedResultFunc: ((resultFuncArgs_0: PotentialData) => import("geojson").Feature<import("geojson").Geometry, import("
|
|
373
|
+
resultFunc: (resultFuncArgs_0: PotentialData) => import("geojson").Feature<import("geojson").Geometry, import("./syncGroups/types").PotentialDataProperties | null> | null | undefined;
|
|
374
|
+
memoizedResultFunc: ((resultFuncArgs_0: PotentialData) => import("geojson").Feature<import("geojson").Geometry, import("./syncGroups/types").PotentialDataProperties | null> | null | undefined) & {
|
|
343
375
|
clearCache: () => void;
|
|
344
376
|
resultsCount: () => number;
|
|
345
377
|
resetResultsCount: () => void;
|
|
346
378
|
};
|
|
347
|
-
lastResult: () => import("geojson").Feature<import("geojson").Geometry, import("
|
|
379
|
+
lastResult: () => import("geojson").Feature<import("geojson").Geometry, import("./syncGroups/types").PotentialDataProperties | null> | null | undefined;
|
|
348
380
|
dependencies: [(state: SynchronizationGroupState, mapId: string) => PotentialData];
|
|
349
381
|
recomputations: () => number;
|
|
350
382
|
resetRecomputations: () => void;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { SystemScope } from '@opengeoweb/shared';
|
|
2
|
+
import { MapFeatureClass } from '@opengeoweb/webmap-react';
|
|
2
3
|
import { LoadingIndicatorModuleState } from '../loadingIndicator/types';
|
|
3
4
|
import type { GenericActionPayload } from '../types';
|
|
4
5
|
import { SYNCGROUPS_TYPE_SETBBOX, SYNCGROUPS_TYPE_SETLAYERACTIONS, SYNCGROUPS_TYPE_SETTIME } from './constants';
|
|
@@ -31,11 +32,37 @@ export interface SynchronizationGroup {
|
|
|
31
32
|
allIds: string[];
|
|
32
33
|
};
|
|
33
34
|
}
|
|
35
|
+
export interface Occurrence {
|
|
36
|
+
id: string;
|
|
37
|
+
properties: OccurrenceProperties;
|
|
38
|
+
}
|
|
39
|
+
export interface OccurrenceProperties {
|
|
40
|
+
name?: string;
|
|
41
|
+
serviceId: string;
|
|
42
|
+
collectionId: string;
|
|
43
|
+
parameterName?: string | string[];
|
|
44
|
+
}
|
|
45
|
+
export interface FeatureNameObject {
|
|
46
|
+
serviceId: string;
|
|
47
|
+
serviceName?: string;
|
|
48
|
+
collectionId: string;
|
|
49
|
+
collectionName: string;
|
|
50
|
+
}
|
|
51
|
+
export interface PotentialDataProperties {
|
|
52
|
+
occurrences?: Occurrence[];
|
|
53
|
+
name?: string;
|
|
54
|
+
names?: Record<string, FeatureNameObject[]>;
|
|
55
|
+
hidden?: boolean;
|
|
56
|
+
highlightSelectedFeature?: boolean;
|
|
57
|
+
mapFeatureClass?: MapFeatureClass;
|
|
58
|
+
serviceId?: string;
|
|
59
|
+
selectionType?: string;
|
|
60
|
+
}
|
|
34
61
|
export interface PotentialData {
|
|
35
62
|
features?: {
|
|
36
63
|
id: string;
|
|
37
64
|
originalId?: string;
|
|
38
|
-
geoJSON: GeoJSON.FeatureCollection
|
|
65
|
+
geoJSON: GeoJSON.FeatureCollection<GeoJSON.Geometry, PotentialDataProperties | null>;
|
|
39
66
|
}[];
|
|
40
67
|
selectedFeatureId?: string;
|
|
41
68
|
formFeatures?: {
|
|
@@ -5,7 +5,7 @@ import type { SetBboxSyncActionPayload, SetBboxSyncPayload, SetLayerActionsSyncP
|
|
|
5
5
|
*
|
|
6
6
|
* These actions should not be used by components directly. Components should only use the generic actions.
|
|
7
7
|
*/
|
|
8
|
-
export declare const setTimeSync: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[setTimePayload: SetTimePayload
|
|
8
|
+
export declare const setTimeSync: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[setTimePayload: SetTimePayload, targets: SetTimeSyncPayload[], groups: string[]], SetTimeSyncActionPayload, "GENERIC_SYNC_SETTIME", never, never>;
|
|
9
9
|
export declare const setBboxSync: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[payload: SetBboxPayload, targets: SetBboxSyncPayload[], groups: string[]], SetBboxSyncActionPayload, "GENERIC_SYNC_SETBBOX", never, never>;
|
|
10
10
|
export declare const setLayerActionSync: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[payload: SyncLayerPayloads, targets: SyncLayerPayloads[], type: string], SetLayerActionsSyncPayload, "GENERIC_SYNC_SETLAYERACTIONS", never, never>;
|
|
11
11
|
export type GenericSyncActions = ReturnType<typeof setTimeSync> | ReturnType<typeof setBboxSync> | ReturnType<typeof setLayerActionSync>;
|
|
@@ -41,6 +41,9 @@ export declare const slice: import("@reduxjs/toolkit").Slice<LayerState, {
|
|
|
41
41
|
updateFeatureProperties: (draft: Draft<LayerState>, action: PayloadAction<UpdateFeaturePropertiesPayload>) => void;
|
|
42
42
|
toggleFeatureMode: (draft: Draft<LayerState>, action: PayloadAction<ToggleFeatureModePayload>) => void;
|
|
43
43
|
exitFeatureDrawMode: (draft: Draft<LayerState>, action: PayloadAction<ExitFeatureDrawModePayload>) => void;
|
|
44
|
+
toggleSelectableFeatures: (draft: Draft<LayerState>, action: PayloadAction<{
|
|
45
|
+
layerId: string;
|
|
46
|
+
}>) => void;
|
|
44
47
|
showLayerInfo: (draft: Draft<LayerState>, action: PayloadAction<ShowLayerInfoPayload>) => void;
|
|
45
48
|
hideLayerInfo: (draft: Draft<LayerState>) => void;
|
|
46
49
|
}, "layerReducer", "layerReducer", import("@reduxjs/toolkit").SliceSelectors<LayerState>>;
|
|
@@ -82,6 +85,9 @@ export declare const layerReducer: import("redux").Reducer<LayerState>, layerAct
|
|
|
82
85
|
updateFeatureProperties: (draft: Draft<LayerState>, action: PayloadAction<UpdateFeaturePropertiesPayload>) => void;
|
|
83
86
|
toggleFeatureMode: (draft: Draft<LayerState>, action: PayloadAction<ToggleFeatureModePayload>) => void;
|
|
84
87
|
exitFeatureDrawMode: (draft: Draft<LayerState>, action: PayloadAction<ExitFeatureDrawModePayload>) => void;
|
|
88
|
+
toggleSelectableFeatures: (draft: Draft<LayerState>, action: PayloadAction<{
|
|
89
|
+
layerId: string;
|
|
90
|
+
}>) => void;
|
|
85
91
|
showLayerInfo: (draft: Draft<LayerState>, action: PayloadAction<ShowLayerInfoPayload>) => void;
|
|
86
92
|
hideLayerInfo: (draft: Draft<LayerState>) => void;
|
|
87
93
|
}, "layerReducer">;
|
|
@@ -2470,3 +2470,44 @@ export declare const getIsLayerMissing: ((state: any, ...params: any[]) => boole
|
|
|
2470
2470
|
memoize: typeof import("reselect").weakMapMemoize;
|
|
2471
2471
|
argsMemoize: typeof import("reselect").weakMapMemoize;
|
|
2472
2472
|
};
|
|
2473
|
+
export declare const getIsLayerSelectable: ((state: any, layerId: any) => boolean) & {
|
|
2474
|
+
clearCache: () => void;
|
|
2475
|
+
resultsCount: () => number;
|
|
2476
|
+
resetResultsCount: () => void;
|
|
2477
|
+
} & {
|
|
2478
|
+
resultFunc: (resultFuncArgs_0: ReduxLayer | undefined) => boolean;
|
|
2479
|
+
memoizedResultFunc: ((resultFuncArgs_0: ReduxLayer | undefined) => boolean) & {
|
|
2480
|
+
clearCache: () => void;
|
|
2481
|
+
resultsCount: () => number;
|
|
2482
|
+
resetResultsCount: () => void;
|
|
2483
|
+
};
|
|
2484
|
+
lastResult: () => boolean;
|
|
2485
|
+
dependencies: [((state: any, layerId: any) => ReduxLayer | undefined) & {
|
|
2486
|
+
clearCache: () => void;
|
|
2487
|
+
resultsCount: () => number;
|
|
2488
|
+
resetResultsCount: () => void;
|
|
2489
|
+
} & {
|
|
2490
|
+
resultFunc: (resultFuncArgs_0: LayerState | undefined, resultFuncArgs_1: string) => ReduxLayer | undefined;
|
|
2491
|
+
memoizedResultFunc: ((resultFuncArgs_0: LayerState | undefined, resultFuncArgs_1: string) => ReduxLayer | undefined) & {
|
|
2492
|
+
clearCache: () => void;
|
|
2493
|
+
resultsCount: () => number;
|
|
2494
|
+
resetResultsCount: () => void;
|
|
2495
|
+
};
|
|
2496
|
+
lastResult: () => ReduxLayer | undefined;
|
|
2497
|
+
dependencies: [(store: CoreAppStore) => LayerState | undefined, (layerStore: any, layerId: any) => string];
|
|
2498
|
+
recomputations: () => number;
|
|
2499
|
+
resetRecomputations: () => void;
|
|
2500
|
+
dependencyRecomputations: () => number;
|
|
2501
|
+
resetDependencyRecomputations: () => void;
|
|
2502
|
+
} & {
|
|
2503
|
+
memoize: typeof import("reselect").weakMapMemoize;
|
|
2504
|
+
argsMemoize: typeof import("reselect").weakMapMemoize;
|
|
2505
|
+
}];
|
|
2506
|
+
recomputations: () => number;
|
|
2507
|
+
resetRecomputations: () => void;
|
|
2508
|
+
dependencyRecomputations: () => number;
|
|
2509
|
+
resetDependencyRecomputations: () => void;
|
|
2510
|
+
} & {
|
|
2511
|
+
memoize: typeof import("reselect").weakMapMemoize;
|
|
2512
|
+
argsMemoize: typeof import("reselect").weakMapMemoize;
|
|
2513
|
+
};
|
|
@@ -13,7 +13,7 @@ export declare const mapUtils: {
|
|
|
13
13
|
getTimeStepFromDataInterval: (timeInterval: import("@opengeoweb/webmap").TimeInterval) => number;
|
|
14
14
|
getSpeedFactor: (speedDelay: number) => import("@opengeoweb/time-slider").SpeedFactorType;
|
|
15
15
|
getAnimationDuration: (animationEndTime: string | undefined, animationStartTime: string | undefined) => number;
|
|
16
|
-
generateAnimationList: (unixAnimationStart: number, unixAnimationEnd: number, timeValues: string | undefined) => mapTypes.WebMapAnimationList;
|
|
16
|
+
generateAnimationList: (unixAnimationStart: number, unixAnimationEnd: number, timeValues: string | undefined, animationInterval?: number) => mapTypes.WebMapAnimationList;
|
|
17
17
|
parseTimeDimToISO8601Interval: (timeInterval: string | undefined) => mapTypes.ISO8601Interval[];
|
|
18
18
|
produceTimeSliderTimeSpan: (draft: import("immer").Draft<mapTypes.WebMapState>, mapId: string, timeSliderSpan: number) => void;
|
|
19
19
|
};
|
|
@@ -54,7 +54,7 @@ export declare const slice: import("@reduxjs/toolkit").Slice<WebMapState, {
|
|
|
54
54
|
setDisableMapPin: (draft: Draft<WebMapState>, action: PayloadAction<DisableMapPinPayload>) => void;
|
|
55
55
|
toggleMapPinIsVisible: (draft: Draft<WebMapState>, action: PayloadAction<ToggleMapPinIsVisiblePayload>) => void;
|
|
56
56
|
setDockedLayerManagerSize: (draft: Draft<WebMapState>, action: PayloadAction<SetDockedLayerManagerSize>) => void;
|
|
57
|
-
setMapPresetError: (
|
|
57
|
+
setMapPresetError: (_draft: Draft<WebMapState>, _action: PayloadAction<{
|
|
58
58
|
mapId: string;
|
|
59
59
|
error: string;
|
|
60
60
|
}>) => void;
|
|
@@ -77,7 +77,7 @@ export declare const getAnimationDuration: (animationEndTime: string | undefined
|
|
|
77
77
|
* @param iso8601Intervals
|
|
78
78
|
* @returns WebMapAnimationList with time points
|
|
79
79
|
*/
|
|
80
|
-
export declare const generateAnimationList: (unixAnimationStart: number, unixAnimationEnd: number, timeValues: string | undefined) => WebMapAnimationList;
|
|
80
|
+
export declare const generateAnimationList: (unixAnimationStart: number, unixAnimationEnd: number, timeValues: string | undefined, animationInterval?: number) => WebMapAnimationList;
|
|
81
81
|
/**
|
|
82
82
|
* Parses the time dimension values string to an array of ISO8601 intervals
|
|
83
83
|
* @param timeInterval
|
|
@@ -5,6 +5,6 @@ export declare const initialState: ServiceState;
|
|
|
5
5
|
export declare const serviceReducer: import("redux").Reducer<ServiceState>, serviceActions: import("@reduxjs/toolkit").CaseReducerActions<{
|
|
6
6
|
serviceSetLayers: (draft: Draft<ServiceState>, action: PayloadAction<SetLayersForServicePayload>) => void;
|
|
7
7
|
mapStoreRemoveService: (draft: Draft<ServiceState>, action: PayloadAction<MapStoreRemoveServicePayload>) => void;
|
|
8
|
-
fetchInitialServices: (
|
|
8
|
+
fetchInitialServices: (_draft: Draft<ServiceState>, _action: PayloadAction<FetchInitialServicesPayload>) => void;
|
|
9
9
|
}, "serviceReducer">;
|
|
10
10
|
export type ServiceActions = ReturnType<typeof serviceActions.mapStoreRemoveService> | ReturnType<typeof serviceActions.serviceSetLayers> | ReturnType<typeof serviceActions.fetchInitialServices> | ReturnType<typeof layerActions.onUpdateLayerInformation>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { SystemScope } from '@opengeoweb/shared';
|
|
1
|
+
import { ServiceInterface, SystemScope } from '@opengeoweb/shared';
|
|
2
2
|
import { LayerProps } from '@opengeoweb/webmap';
|
|
3
3
|
export interface InitialService {
|
|
4
4
|
id: string;
|
|
@@ -17,6 +17,7 @@ export interface ReduxService {
|
|
|
17
17
|
active?: boolean;
|
|
18
18
|
layers?: ServiceLayer[];
|
|
19
19
|
scope?: SystemScope;
|
|
20
|
+
type?: ServiceInterface;
|
|
20
21
|
}
|
|
21
22
|
/**
|
|
22
23
|
Used in the services object of webmap to keep a list of available layers in the service
|
|
@@ -34,6 +35,7 @@ export interface SetLayersForServicePayload {
|
|
|
34
35
|
layers: ServiceLayer[];
|
|
35
36
|
scope: SystemScope;
|
|
36
37
|
isUpdating?: boolean;
|
|
38
|
+
type?: ServiceInterface;
|
|
37
39
|
}
|
|
38
40
|
export interface MapStoreRemoveServicePayload {
|
|
39
41
|
id: string;
|
|
@@ -3,6 +3,6 @@ import { PayloadAction } from '@reduxjs/toolkit';
|
|
|
3
3
|
import { NavigateToUrlPayload } from './types';
|
|
4
4
|
export declare const initialState: {};
|
|
5
5
|
export declare const routerReducer: import("redux").Reducer<{}>, routerActions: import("@reduxjs/toolkit").CaseReducerActions<{
|
|
6
|
-
navigateToUrl: (
|
|
6
|
+
navigateToUrl: (_draft: Draft<unknown>, _action: PayloadAction<NavigateToUrlPayload>) => void;
|
|
7
7
|
}, "router">;
|
|
8
8
|
export type RouterActions = ReturnType<typeof routerActions.navigateToUrl>;
|
package/src/store/ui/types.d.ts
CHANGED
|
@@ -21,6 +21,7 @@ export declare enum DialogTypes {
|
|
|
21
21
|
AreaObjectLoader = "areaObjectLoader",
|
|
22
22
|
DataExplorer = "dataExplorer",
|
|
23
23
|
DataExplorerInfo = "dataExplorerInfo",
|
|
24
|
+
SelectedFeatures = "selectedFeatures",
|
|
24
25
|
SoundingsSources = "soundingsSources",
|
|
25
26
|
SoundingsLocations = "soundingsLocations",
|
|
26
27
|
TimeseriesLocations = "timeseriesLocations"
|