@opengeoweb/workspace 20.0.0 → 20.0.1-nightly-20261003
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/dist/index.esm.js +656 -518
- package/dist/src/lib/api/types.d.ts +0 -2
- package/dist/src/lib/api/utils.d.ts +1 -2
- package/dist/src/lib/api/viewpreset-api/hooks.d.ts +4 -4
- package/dist/src/lib/api/workspace-api/api.d.ts +4 -1
- package/dist/src/lib/api/workspace-api/fakeApi/fakeApi.d.ts +2 -0
- package/dist/src/lib/api/workspace-api/hooks.d.ts +4 -5
- package/dist/src/lib/api/workspace-api/queryOptions.d.ts +9 -1
- package/dist/src/lib/store/viewPresets/selectors.d.ts +0 -91
- package/dist/src/lib/store/viewPresets/types.d.ts +1 -1
- package/dist/src/lib/store/workspace/types.d.ts +26 -0
- package/dist/src/lib/store/workspaceList/reducer.d.ts +6 -0
- package/dist/src/lib/store/workspaceList/selectors.d.ts +0 -22
- package/dist/src/lib/store/workspaceList/types.d.ts +2 -1
- package/dist/src/lib/store/workspaceList/utils.d.ts +7 -1
- package/dist/src/lib/utils/utils.d.ts +1 -1
- package/package.json +19 -19
package/dist/index.esm.js
CHANGED
|
@@ -7,7 +7,7 @@ import { chunk, cloneDeep, isEqual, isString } from 'lodash';
|
|
|
7
7
|
import { getLeaves, createBalancedTreeFromLeaves, MosaicContext, getAndAssertNodeAtPathExists, MosaicWindow, Mosaic } from 'react-mosaic-component';
|
|
8
8
|
import { queryOptions, useQueryClient, useQuery, useMutation, useIsMutating } from '@tanstack/react-query';
|
|
9
9
|
import { sessionStorageProvider, isAxiosError, getAxiosErrorMessage, isAuthError, isAxiosAuthError, SHARED_NAMESPACE, safelyInitI18nForTestsAndStories, sharedTranslations, ConfirmationServiceProvider, CustomIconButton, useConfirmationDialog, usePrevious, AlertBanner, CustomAccordion, CustomTooltip, linkifyText, dateUtils, SystemScope, SearchHighlight, ToggleMenu, SearchField, Filter, LastUpdateTime, renderCounter, CustomDialog, ToolContainer, CustomToggleButton, ConfirmationButtons } from '@opengeoweb/shared';
|
|
10
|
-
import { pluginsActions, getPluginState, pluginsReducer, PluginProvider, PluginDebugProvider, OverlayPluginMenuButton, usePluginCatalog } from '@opengeoweb/plugins';
|
|
10
|
+
import { pluginsActions, getPluginState, pluginsReducer, PluginProvider, PluginDebugProvider, OverlayPluginMenuButton, usePluginCatalog, OverlayPluginWindows } from '@opengeoweb/plugins';
|
|
11
11
|
import { warningsFiltersActions, publicWarningsSelectors, warningsTranslations, WARN_NAMESPACE } from '@opengeoweb/warnings';
|
|
12
12
|
import { snackbarTypes, snackbarActions, snackbarListener, snackbarReducer, SnackbarWrapperConnect } from '@opengeoweb/snackbar';
|
|
13
13
|
import { isAxiosError as isAxiosError$1 } from 'axios';
|
|
@@ -35,6 +35,11 @@ var en = {
|
|
|
35
35
|
"workspace-menu": "Workspace menu",
|
|
36
36
|
"workspace-new": "New workspace",
|
|
37
37
|
"workspace-new-soundings": "New soundings workspace",
|
|
38
|
+
"workspace-template-map": "New map preset",
|
|
39
|
+
"workspace-template-timeseries": "New timeseries preset",
|
|
40
|
+
"workspace-template-soundings": "New sounding preset",
|
|
41
|
+
"workspace-template-warninglist": "New warninglist preset",
|
|
42
|
+
"workspace-template-timeline": "New timeline preset",
|
|
38
43
|
"workspace-loading": "Loading",
|
|
39
44
|
"workspace-options": "Options",
|
|
40
45
|
"workspace-results": "results",
|
|
@@ -192,6 +197,11 @@ var fi = {
|
|
|
192
197
|
"workspace-menu": "Workspace menu",
|
|
193
198
|
"workspace-new": "Uusi workspace",
|
|
194
199
|
"workspace-new-soundings": "Uusi luotaustyötila",
|
|
200
|
+
"workspace-template-map": "Uusi map preset",
|
|
201
|
+
"workspace-template-timeseries": "Uusi timeseries preset",
|
|
202
|
+
"workspace-template-soundings": "Uusi luotauspreset",
|
|
203
|
+
"workspace-template-warninglist": "Uusi varoituslistapreset",
|
|
204
|
+
"workspace-template-timeline": "Uusi aikajanapreset",
|
|
195
205
|
"workspace-loading": "Ladataan",
|
|
196
206
|
"workspace-options": "Valinnat",
|
|
197
207
|
"workspace-results": "tulokset",
|
|
@@ -341,6 +351,11 @@ var no = {
|
|
|
341
351
|
"workspace-menu": "Arbeidsflater",
|
|
342
352
|
"workspace-new": "Ny arbeidsflate",
|
|
343
353
|
"workspace-new-soundings": "New soundings workspace",
|
|
354
|
+
"workspace-template-map": "Ny kartpreset",
|
|
355
|
+
"workspace-template-timeseries": "Ny tidsseriepreset",
|
|
356
|
+
"workspace-template-soundings": "Ny sonderingspreset",
|
|
357
|
+
"workspace-template-warninglist": "Ny varsellistepreset",
|
|
358
|
+
"workspace-template-timeline": "Ny tidslinjepreset",
|
|
344
359
|
"workspace-loading": "Laster",
|
|
345
360
|
"workspace-options": "Valg",
|
|
346
361
|
"workspace-results": "resultater",
|
|
@@ -491,6 +506,11 @@ var nl = {
|
|
|
491
506
|
"workspace-menu": "Workspace menu",
|
|
492
507
|
"workspace-new": "Nieuwe workspace",
|
|
493
508
|
"workspace-new-soundings": "Nieuwe soundings workspace",
|
|
509
|
+
"workspace-template-map": "Nieuwe map preset",
|
|
510
|
+
"workspace-template-timeseries": "Nieuwe timeseries preset",
|
|
511
|
+
"workspace-template-soundings": "Nieuwe sounding preset",
|
|
512
|
+
"workspace-template-warninglist": "Nieuwe warninglist preset",
|
|
513
|
+
"workspace-template-timeline": "Nieuwe timeline preset",
|
|
494
514
|
"workspace-loading": "Laden",
|
|
495
515
|
"workspace-options": "Opties",
|
|
496
516
|
"workspace-results": "resultaten",
|
|
@@ -1226,6 +1246,11 @@ var workspacePresetsFallback = [
|
|
|
1226
1246
|
* Copyright 2026 - Finnish Meteorological Institute (FMI)
|
|
1227
1247
|
* Copyright 2026 - The Norwegian Meteorological Institute (MET Norway)
|
|
1228
1248
|
* */
|
|
1249
|
+
/*
|
|
1250
|
+
configureLibraryDefaults([LIB_KEY], {
|
|
1251
|
+
staleTime: 5 * 60 * 1000,
|
|
1252
|
+
});
|
|
1253
|
+
*/
|
|
1229
1254
|
var LIB_KEY = 'workspace-lib';
|
|
1230
1255
|
var getPresetBaseUrl = function getPresetBaseUrl() {
|
|
1231
1256
|
var config = sessionStorageProvider.getConfig();
|
|
@@ -1644,9 +1669,262 @@ var PresetFilterType;
|
|
|
1644
1669
|
PresetFilterType["shared"] = "shared";
|
|
1645
1670
|
PresetFilterType["system"] = "system";
|
|
1646
1671
|
PresetFilterType["plugin"] = "plugin";
|
|
1672
|
+
PresetFilterType["templates"] = "templates";
|
|
1647
1673
|
PresetFilterType["favourites"] = "favourites";
|
|
1648
1674
|
})(PresetFilterType || (PresetFilterType = {}));
|
|
1649
1675
|
|
|
1676
|
+
/* eslint-disable no-redeclare */
|
|
1677
|
+
/* *
|
|
1678
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1679
|
+
* you may not use this file except in compliance with the License.
|
|
1680
|
+
* You may obtain a copy of the License at
|
|
1681
|
+
*
|
|
1682
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
1683
|
+
*
|
|
1684
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
1685
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
1686
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
1687
|
+
* See the License for the specific language governing permissions and
|
|
1688
|
+
* limitations under the License.
|
|
1689
|
+
*
|
|
1690
|
+
* Copyright 2023 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
|
|
1691
|
+
* Copyright 2023 - Finnish Meteorological Institute (FMI)
|
|
1692
|
+
* Copyright 2024 - The Norwegian Meteorological Institute (MET Norway)
|
|
1693
|
+
* */
|
|
1694
|
+
var getSnackbarMessage$1 = function getSnackbarMessage(action, title, is_shared) {
|
|
1695
|
+
// Trim and add quotes
|
|
1696
|
+
var trimmedTitle = title.trim();
|
|
1697
|
+
switch (action) {
|
|
1698
|
+
case WorkspacePresetAction.DELETE:
|
|
1699
|
+
return {
|
|
1700
|
+
type: snackbarTypes.SnackbarMessageType.TRANSLATABLE_MESSAGE,
|
|
1701
|
+
key: 'workspace-list-success-delete',
|
|
1702
|
+
params: {
|
|
1703
|
+
TITLE: trimmedTitle
|
|
1704
|
+
}
|
|
1705
|
+
};
|
|
1706
|
+
case WorkspacePresetAction.DELETE_SYSTEM_PRESET:
|
|
1707
|
+
return {
|
|
1708
|
+
type: snackbarTypes.SnackbarMessageType.TRANSLATABLE_MESSAGE,
|
|
1709
|
+
key: 'workspace-list-success-delete-system',
|
|
1710
|
+
params: {
|
|
1711
|
+
TITLE: trimmedTitle
|
|
1712
|
+
}
|
|
1713
|
+
};
|
|
1714
|
+
case WorkspacePresetAction.DUPLICATE:
|
|
1715
|
+
return {
|
|
1716
|
+
type: snackbarTypes.SnackbarMessageType.TRANSLATABLE_MESSAGE,
|
|
1717
|
+
key: 'workspace-list-success-duplicate',
|
|
1718
|
+
params: {
|
|
1719
|
+
TITLE: trimmedTitle
|
|
1720
|
+
}
|
|
1721
|
+
};
|
|
1722
|
+
case WorkspacePresetAction.EDIT:
|
|
1723
|
+
return {
|
|
1724
|
+
type: snackbarTypes.SnackbarMessageType.TRANSLATABLE_MESSAGE,
|
|
1725
|
+
key: 'workspace-list-success-edit',
|
|
1726
|
+
params: {
|
|
1727
|
+
TITLE: trimmedTitle
|
|
1728
|
+
}
|
|
1729
|
+
};
|
|
1730
|
+
case WorkspacePresetAction.RESET:
|
|
1731
|
+
return {
|
|
1732
|
+
type: snackbarTypes.SnackbarMessageType.TRANSLATABLE_MESSAGE,
|
|
1733
|
+
key: 'workspace-list-success-reset',
|
|
1734
|
+
params: {
|
|
1735
|
+
TITLE: trimmedTitle
|
|
1736
|
+
}
|
|
1737
|
+
};
|
|
1738
|
+
case WorkspacePresetAction.SHARE:
|
|
1739
|
+
return {
|
|
1740
|
+
type: snackbarTypes.SnackbarMessageType.TRANSLATABLE_MESSAGE,
|
|
1741
|
+
key: is_shared ? 'workspace-list-success-unshare' : 'workspace-list-success-share',
|
|
1742
|
+
params: {
|
|
1743
|
+
TITLE: trimmedTitle
|
|
1744
|
+
}
|
|
1745
|
+
};
|
|
1746
|
+
default:
|
|
1747
|
+
return {
|
|
1748
|
+
type: snackbarTypes.SnackbarMessageType.TRANSLATABLE_MESSAGE,
|
|
1749
|
+
key: 'workspace-list-success-save',
|
|
1750
|
+
params: {
|
|
1751
|
+
TITLE: trimmedTitle
|
|
1752
|
+
}
|
|
1753
|
+
};
|
|
1754
|
+
}
|
|
1755
|
+
};
|
|
1756
|
+
function getEmptyWorkspaceListItem(t) {
|
|
1757
|
+
return {
|
|
1758
|
+
id: undefined,
|
|
1759
|
+
title: t ? t('workspace-new') : undefined,
|
|
1760
|
+
labels: undefined,
|
|
1761
|
+
scope: 'system',
|
|
1762
|
+
"abstract": '',
|
|
1763
|
+
viewType: 'singleWindow'
|
|
1764
|
+
};
|
|
1765
|
+
}
|
|
1766
|
+
function getEmptyMapWorkspace(t) {
|
|
1767
|
+
return Object.assign({}, getEmptyWorkspaceListItem(t), {
|
|
1768
|
+
views: {
|
|
1769
|
+
allIds: ['1_screen'],
|
|
1770
|
+
byId: {
|
|
1771
|
+
'1_screen': {
|
|
1772
|
+
title: t ? t('workspace-mappreset-new') : undefined,
|
|
1773
|
+
componentType: 'Map',
|
|
1774
|
+
initialProps: {
|
|
1775
|
+
mapPreset: {
|
|
1776
|
+
shouldShowLayerManager: true,
|
|
1777
|
+
dockedLayerManagerSize: 'sizeSmall'
|
|
1778
|
+
},
|
|
1779
|
+
syncGroupsIds: []
|
|
1780
|
+
}
|
|
1781
|
+
}
|
|
1782
|
+
}
|
|
1783
|
+
},
|
|
1784
|
+
mosaicNode: '1_screen'
|
|
1785
|
+
});
|
|
1786
|
+
}
|
|
1787
|
+
var getEmptyWorkspacePreset = function getEmptyWorkspacePreset() {
|
|
1788
|
+
return {
|
|
1789
|
+
scope: 'system',
|
|
1790
|
+
"abstract": '',
|
|
1791
|
+
views: {
|
|
1792
|
+
allIds: ['1_screen'],
|
|
1793
|
+
byId: {
|
|
1794
|
+
'1_screen': {
|
|
1795
|
+
componentType: 'Map',
|
|
1796
|
+
initialProps: {
|
|
1797
|
+
mapPreset: {
|
|
1798
|
+
shouldShowLayerManager: true,
|
|
1799
|
+
dockedLayerManagerSize: 'sizeSmall'
|
|
1800
|
+
},
|
|
1801
|
+
syncGroupsIds: []
|
|
1802
|
+
}
|
|
1803
|
+
}
|
|
1804
|
+
}
|
|
1805
|
+
},
|
|
1806
|
+
mosaicNode: '1_screen',
|
|
1807
|
+
viewType: 'singleWindow',
|
|
1808
|
+
username: 'global'
|
|
1809
|
+
};
|
|
1810
|
+
};
|
|
1811
|
+
var createCustomEmptyMapWorkspace = function createCustomEmptyMapWorkspace(emptyWorkspaceTitle, emptyMapWorkspaceTitle, customMapPreset) {
|
|
1812
|
+
var customEmptyMapWorkspace = cloneDeep(getEmptyWorkspacePreset());
|
|
1813
|
+
if (customMapPreset) {
|
|
1814
|
+
customEmptyMapWorkspace.views.byId['1_screen'].initialProps.mapPreset = customMapPreset;
|
|
1815
|
+
}
|
|
1816
|
+
customEmptyMapWorkspace.views.byId['1_screen'].title = emptyMapWorkspaceTitle;
|
|
1817
|
+
var emptyWorkspacePreset = Object.assign({}, customEmptyMapWorkspace, {
|
|
1818
|
+
title: emptyWorkspaceTitle
|
|
1819
|
+
});
|
|
1820
|
+
return emptyWorkspacePreset;
|
|
1821
|
+
};
|
|
1822
|
+
var LOCAL_SOUNDINGS_ID = 'newSoundingsWorkspace';
|
|
1823
|
+
var getNewSoundingsWorkspaceListItem = function getNewSoundingsWorkspaceListItem(t) {
|
|
1824
|
+
return {
|
|
1825
|
+
id: LOCAL_SOUNDINGS_ID,
|
|
1826
|
+
title: t ? t('workspace-new-soundings') : 'New soundings workspace',
|
|
1827
|
+
labels: undefined,
|
|
1828
|
+
scope: 'system',
|
|
1829
|
+
"abstract": '',
|
|
1830
|
+
viewType: 'multiWindow'
|
|
1831
|
+
};
|
|
1832
|
+
};
|
|
1833
|
+
function getNewSoundingsWorkspace(t) {
|
|
1834
|
+
return Object.assign({}, getNewSoundingsWorkspaceListItem(t), {
|
|
1835
|
+
views: {
|
|
1836
|
+
allIds: ['1_screen', '2_screen'],
|
|
1837
|
+
byId: {
|
|
1838
|
+
'1_screen': {
|
|
1839
|
+
mosaicNodeId: '1_screen',
|
|
1840
|
+
title: 'New soundings map',
|
|
1841
|
+
componentType: 'Map',
|
|
1842
|
+
initialProps: {
|
|
1843
|
+
mapPreset: {
|
|
1844
|
+
shouldShowLegend: false,
|
|
1845
|
+
shouldShowLayerManager: false
|
|
1846
|
+
}
|
|
1847
|
+
}
|
|
1848
|
+
},
|
|
1849
|
+
'2_screen': {
|
|
1850
|
+
mosaicNodeId: '2_screen',
|
|
1851
|
+
title: 'New soundings view',
|
|
1852
|
+
componentType: 'Soundings',
|
|
1853
|
+
initialProps: {}
|
|
1854
|
+
}
|
|
1855
|
+
}
|
|
1856
|
+
},
|
|
1857
|
+
linking: {
|
|
1858
|
+
'2_screen': ['1_screen']
|
|
1859
|
+
},
|
|
1860
|
+
syncGroups: [{
|
|
1861
|
+
id: 'Features_2_screen',
|
|
1862
|
+
sourcePanelId: '2_screen',
|
|
1863
|
+
type: 'SYNCGROUPS_TYPE_SETFEATURES'
|
|
1864
|
+
}],
|
|
1865
|
+
mosaicNode: {
|
|
1866
|
+
direction: 'row',
|
|
1867
|
+
first: '1_screen',
|
|
1868
|
+
second: '2_screen'
|
|
1869
|
+
}
|
|
1870
|
+
});
|
|
1871
|
+
}
|
|
1872
|
+
var getBEViewsFromState = function getBEViewsFromState(workspace) {
|
|
1873
|
+
var _workspace$views$allI, _workspace$views;
|
|
1874
|
+
var result = [];
|
|
1875
|
+
((_workspace$views$allI = workspace == null || (_workspace$views = workspace.views) == null ? void 0 : _workspace$views.allIds) != null ? _workspace$views$allI : []).forEach(function (id) {
|
|
1876
|
+
var _workspace$views$byId;
|
|
1877
|
+
var view = (_workspace$views$byId = workspace.views.byId[id]) != null ? _workspace$views$byId : {};
|
|
1878
|
+
result.push({
|
|
1879
|
+
mosaicNodeId: id,
|
|
1880
|
+
title: typeof view.title === 'string' && view.title.trim() ? view.title : id,
|
|
1881
|
+
componentType: view.componentType,
|
|
1882
|
+
initialProps: view.initialProps
|
|
1883
|
+
});
|
|
1884
|
+
});
|
|
1885
|
+
return result;
|
|
1886
|
+
};
|
|
1887
|
+
var togglePresetFilter = function togglePresetFilter(filters, id, isSelected, isAdmin, isFavouritesEnabled) {
|
|
1888
|
+
if (isAdmin === void 0) {
|
|
1889
|
+
isAdmin = false;
|
|
1890
|
+
}
|
|
1891
|
+
if (isFavouritesEnabled === void 0) {
|
|
1892
|
+
isFavouritesEnabled = true;
|
|
1893
|
+
}
|
|
1894
|
+
if (!filters.some(function (filter) {
|
|
1895
|
+
return filter.id === id;
|
|
1896
|
+
})) {
|
|
1897
|
+
return filters;
|
|
1898
|
+
}
|
|
1899
|
+
var availableFilters = filters.filter(function (filter) {
|
|
1900
|
+
if (filter.id === PresetFilterType.favourites) {
|
|
1901
|
+
return isFavouritesEnabled;
|
|
1902
|
+
}
|
|
1903
|
+
return !isAdmin || filter.id === 'system' || filter.id === 'shared';
|
|
1904
|
+
});
|
|
1905
|
+
var allSelected = availableFilters.every(function (filter) {
|
|
1906
|
+
return filter.isSelected;
|
|
1907
|
+
});
|
|
1908
|
+
var allUnselected = availableFilters.every(function (filter) {
|
|
1909
|
+
return filter.id === id ? !isSelected : !filter.isSelected;
|
|
1910
|
+
});
|
|
1911
|
+
return filters.map(function (filter) {
|
|
1912
|
+
if (allSelected) {
|
|
1913
|
+
return Object.assign({}, filter, {
|
|
1914
|
+
isSelected: filter.id === id && isSelected
|
|
1915
|
+
});
|
|
1916
|
+
}
|
|
1917
|
+
if (isAdmin && id !== PresetFilterType.favourites && filter.id !== PresetFilterType.favourites) {
|
|
1918
|
+
return Object.assign({}, filter, {
|
|
1919
|
+
isSelected: filter.id === id
|
|
1920
|
+
});
|
|
1921
|
+
}
|
|
1922
|
+
return Object.assign({}, filter, {
|
|
1923
|
+
isSelected: allUnselected || (filter.id === id ? isSelected : filter.isSelected)
|
|
1924
|
+
});
|
|
1925
|
+
});
|
|
1926
|
+
};
|
|
1927
|
+
|
|
1650
1928
|
/* *
|
|
1651
1929
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
1652
1930
|
* you may not use this file except in compliance with the License.
|
|
@@ -1684,7 +1962,13 @@ var sharedFilterState = {
|
|
|
1684
1962
|
};
|
|
1685
1963
|
({
|
|
1686
1964
|
id: PresetFilterType.plugin});
|
|
1687
|
-
var
|
|
1965
|
+
var favouriteFilterState = {
|
|
1966
|
+
label: 'workspace-favourites',
|
|
1967
|
+
id: PresetFilterType.favourites,
|
|
1968
|
+
isSelected: true,
|
|
1969
|
+
isDisabled: false
|
|
1970
|
+
};
|
|
1971
|
+
var defaultPresetFilterState = [personalFilterState, systemFilterState, sharedFilterState, favouriteFilterState];
|
|
1688
1972
|
var initialState$2 = {
|
|
1689
1973
|
error: undefined,
|
|
1690
1974
|
isWorkspaceListDialogOpen: false,
|
|
@@ -1741,58 +2025,11 @@ var slice$2 = createSlice({
|
|
|
1741
2025
|
var _action$payload = action.payload,
|
|
1742
2026
|
id = _action$payload.id,
|
|
1743
2027
|
isSelected = _action$payload.isSelected,
|
|
1744
|
-
isAdmin = _action$payload.isAdmin
|
|
1745
|
-
|
|
1746
|
-
|
|
1747
|
-
draft.workspaceListFilters = draft.workspaceListFilters.map(function (filter) {
|
|
1748
|
-
return Object.assign({}, filter, {
|
|
1749
|
-
isSelected: true
|
|
1750
|
-
});
|
|
1751
|
-
});
|
|
1752
|
-
return;
|
|
1753
|
-
}
|
|
1754
|
-
if (draft.favouritesOnly) {
|
|
1755
|
-
draft.favouritesOnly = false;
|
|
1756
|
-
}
|
|
1757
|
-
var relevantFilters = isAdmin ? draft.workspaceListFilters.filter(function (filter) {
|
|
1758
|
-
return filter.id === 'system' || filter.id === 'shared';
|
|
1759
|
-
}) : draft.workspaceListFilters;
|
|
1760
|
-
var index = draft.workspaceListFilters.findIndex(function (filter) {
|
|
1761
|
-
return filter.id === id;
|
|
1762
|
-
});
|
|
1763
|
-
if (index !== -1) {
|
|
1764
|
-
if (isAdmin) {
|
|
1765
|
-
draft.workspaceListFilters.forEach(function (filter, i) {
|
|
1766
|
-
draft.workspaceListFilters[i].isSelected = filter.id === id;
|
|
1767
|
-
});
|
|
1768
|
-
} else {
|
|
1769
|
-
var isAllSelected = relevantFilters.every(function (filter) {
|
|
1770
|
-
return filter.isSelected;
|
|
1771
|
-
});
|
|
1772
|
-
if (isAllSelected) {
|
|
1773
|
-
draft.workspaceListFilters.forEach(function (filter, i) {
|
|
1774
|
-
draft.workspaceListFilters[i].isSelected = filter.id === id ? isSelected : false;
|
|
1775
|
-
});
|
|
1776
|
-
} else {
|
|
1777
|
-
draft.workspaceListFilters[index] = Object.assign({}, draft.workspaceListFilters[index], {
|
|
1778
|
-
isSelected: isSelected
|
|
1779
|
-
});
|
|
1780
|
-
var isAllUnSelected = relevantFilters.every(function (filter) {
|
|
1781
|
-
return !filter.isSelected;
|
|
1782
|
-
});
|
|
1783
|
-
if (isAllUnSelected) {
|
|
1784
|
-
draft.workspaceListFilters.forEach(function (_, i) {
|
|
1785
|
-
draft.workspaceListFilters[i].isSelected = true;
|
|
1786
|
-
});
|
|
1787
|
-
}
|
|
1788
|
-
}
|
|
1789
|
-
}
|
|
1790
|
-
}
|
|
2028
|
+
isAdmin = _action$payload.isAdmin,
|
|
2029
|
+
isFavouritesEnabled = _action$payload.isFavouritesEnabled;
|
|
2030
|
+
draft.workspaceListFilters = togglePresetFilter(draft.workspaceListFilters, id, isSelected, isAdmin, isFavouritesEnabled);
|
|
1791
2031
|
},
|
|
1792
2032
|
setSelectAllFilterChip: function setSelectAllFilterChip(draft) {
|
|
1793
|
-
if (draft.favouritesOnly) {
|
|
1794
|
-
draft.favouritesOnly = false;
|
|
1795
|
-
}
|
|
1796
2033
|
draft.workspaceListFilters = draft.workspaceListFilters.map(function (filter) {
|
|
1797
2034
|
return Object.assign({}, filter, {
|
|
1798
2035
|
isSelected: true
|
|
@@ -1858,7 +2095,7 @@ var defaultViewPresetsFilters = [{
|
|
|
1858
2095
|
id: PresetFilterType.shared,
|
|
1859
2096
|
isSelected: true,
|
|
1860
2097
|
isDisabled: false
|
|
1861
|
-
}];
|
|
2098
|
+
}, favouriteFilterState];
|
|
1862
2099
|
var pluginViewPresetsFilter = {
|
|
1863
2100
|
label: 'shared-filter-plugin-view-presets',
|
|
1864
2101
|
id: PresetFilterType.plugin,
|
|
@@ -2048,64 +2285,17 @@ var slice$1 = createSlice({
|
|
|
2048
2285
|
id = _action$payload1.id,
|
|
2049
2286
|
isSelected = _action$payload1.isSelected,
|
|
2050
2287
|
panelId = _action$payload1.panelId,
|
|
2051
|
-
isAdmin = _action$payload1.isAdmin
|
|
2288
|
+
isAdmin = _action$payload1.isAdmin,
|
|
2289
|
+
isFavouritesEnabled = _action$payload1.isFavouritesEnabled;
|
|
2052
2290
|
var entity = draft.entities[panelId];
|
|
2053
2291
|
if (entity) {
|
|
2054
|
-
|
|
2055
|
-
entity.favouritesOnly = isSelected;
|
|
2056
|
-
entity.filters = entity.filters.map(function (filter) {
|
|
2057
|
-
return Object.assign({}, filter, {
|
|
2058
|
-
isSelected: true
|
|
2059
|
-
});
|
|
2060
|
-
});
|
|
2061
|
-
return;
|
|
2062
|
-
}
|
|
2063
|
-
if (entity.favouritesOnly) {
|
|
2064
|
-
entity.favouritesOnly = false;
|
|
2065
|
-
}
|
|
2066
|
-
var relevantFilters = isAdmin ? entity.filters.filter(function (filter) {
|
|
2067
|
-
return filter.id === 'system' || filter.id === 'shared';
|
|
2068
|
-
}) : entity.filters;
|
|
2069
|
-
var index = entity.filters.findIndex(function (filter) {
|
|
2070
|
-
return filter.id === id;
|
|
2071
|
-
});
|
|
2072
|
-
if (index !== -1) {
|
|
2073
|
-
if (isAdmin) {
|
|
2074
|
-
entity.filters.forEach(function (filter, i) {
|
|
2075
|
-
entity.filters[i].isSelected = filter.id === id;
|
|
2076
|
-
});
|
|
2077
|
-
} else {
|
|
2078
|
-
var isAllSelected = relevantFilters.every(function (filter) {
|
|
2079
|
-
return filter.isSelected;
|
|
2080
|
-
});
|
|
2081
|
-
if (isAllSelected) {
|
|
2082
|
-
entity.filters.forEach(function (filter, i) {
|
|
2083
|
-
entity.filters[i].isSelected = filter.id === id ? isSelected : false;
|
|
2084
|
-
});
|
|
2085
|
-
} else {
|
|
2086
|
-
entity.filters[index] = Object.assign({}, entity.filters[index], {
|
|
2087
|
-
isSelected: isSelected
|
|
2088
|
-
});
|
|
2089
|
-
var isAllUnSelected = relevantFilters.every(function (filter) {
|
|
2090
|
-
return !filter.isSelected;
|
|
2091
|
-
});
|
|
2092
|
-
if (isAllUnSelected) {
|
|
2093
|
-
entity.filters.forEach(function (_, i) {
|
|
2094
|
-
entity.filters[i].isSelected = true;
|
|
2095
|
-
});
|
|
2096
|
-
}
|
|
2097
|
-
}
|
|
2098
|
-
}
|
|
2099
|
-
}
|
|
2292
|
+
entity.filters = togglePresetFilter(entity.filters, id, isSelected, isAdmin, isFavouritesEnabled);
|
|
2100
2293
|
}
|
|
2101
2294
|
},
|
|
2102
2295
|
setSelectAllFilterChip: function setSelectAllFilterChip(draft, action) {
|
|
2103
2296
|
var panelId = action.payload.panelId;
|
|
2104
2297
|
var entity = draft.entities[panelId];
|
|
2105
2298
|
if (entity) {
|
|
2106
|
-
if (entity.favouritesOnly) {
|
|
2107
|
-
entity.favouritesOnly = false;
|
|
2108
|
-
}
|
|
2109
2299
|
entity.filters = entity.filters.map(function (filter) {
|
|
2110
2300
|
return Object.assign({}, filter, {
|
|
2111
2301
|
isSelected: true
|
|
@@ -2273,261 +2463,49 @@ var slice$1 = createSlice({
|
|
|
2273
2463
|
var hasRelevantNonReferenceTimeChanges = Object.keys(parameter).filter(function (key) {
|
|
2274
2464
|
return key !== 'id' && key !== 'instanceId';
|
|
2275
2465
|
}).length > 0;
|
|
2276
|
-
var hasRelativeReferenceTimeChange = /^latest(?:-\d+)?$/.test(parameter.instanceId || '');
|
|
2277
|
-
return hasRelevantNonReferenceTimeChanges || hasRelativeReferenceTimeChange;
|
|
2278
|
-
}() : true;
|
|
2279
|
-
if (changesRelevantProperties && isChangeOriginSupported && panelId) {
|
|
2280
|
-
var entity = draft.entities[panelId];
|
|
2281
|
-
if (entity && !(entity != null && entity.hasChanges)) {
|
|
2282
|
-
entity.hasChanges = true;
|
|
2283
|
-
viewPresetsAdapter.setOne(draft, entity);
|
|
2284
|
-
}
|
|
2285
|
-
}
|
|
2286
|
-
});
|
|
2287
|
-
});
|
|
2288
|
-
pluginPresetChangeActions.map(function (pluginPresetAction) {
|
|
2289
|
-
return builder.addCase(pluginPresetAction, function (draft, action) {
|
|
2290
|
-
var panelId = action.payload.panelId;
|
|
2291
|
-
if (panelId) {
|
|
2292
|
-
var entity = draft.entities[panelId];
|
|
2293
|
-
if (entity && !(entity != null && entity.hasChanges)) {
|
|
2294
|
-
entity.hasChanges = true;
|
|
2295
|
-
viewPresetsAdapter.setOne(draft, entity);
|
|
2296
|
-
}
|
|
2297
|
-
}
|
|
2298
|
-
});
|
|
2299
|
-
});
|
|
2300
|
-
soundingsChangeActions.map(function (soundingsAction) {
|
|
2301
|
-
return builder.addCase(soundingsAction, function (draft, action) {
|
|
2302
|
-
var _action$payload19 = action.payload,
|
|
2303
|
-
viewId = _action$payload19.viewId,
|
|
2304
|
-
origin = _action$payload19.origin;
|
|
2305
|
-
var isChangeOriginSupported = supportedSoundingsActionOrigins.includes(origin);
|
|
2306
|
-
if (isChangeOriginSupported && viewId && viewId !== '') {
|
|
2307
|
-
var entity = draft.entities[viewId];
|
|
2308
|
-
if (entity && !(entity != null && entity.hasChanges)) {
|
|
2309
|
-
entity.hasChanges = true;
|
|
2310
|
-
viewPresetsAdapter.setOne(draft, entity);
|
|
2311
|
-
}
|
|
2312
|
-
}
|
|
2313
|
-
});
|
|
2314
|
-
});
|
|
2315
|
-
}
|
|
2316
|
-
});
|
|
2317
|
-
var viewPresetsReducer = slice$1.reducer,
|
|
2318
|
-
viewPresetActions = slice$1.actions;
|
|
2319
|
-
|
|
2320
|
-
/* eslint-disable no-redeclare */
|
|
2321
|
-
/* *
|
|
2322
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
2323
|
-
* you may not use this file except in compliance with the License.
|
|
2324
|
-
* You may obtain a copy of the License at
|
|
2325
|
-
*
|
|
2326
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
2327
|
-
*
|
|
2328
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
2329
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
2330
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
2331
|
-
* See the License for the specific language governing permissions and
|
|
2332
|
-
* limitations under the License.
|
|
2333
|
-
*
|
|
2334
|
-
* Copyright 2023 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
|
|
2335
|
-
* Copyright 2023 - Finnish Meteorological Institute (FMI)
|
|
2336
|
-
* Copyright 2024 - The Norwegian Meteorological Institute (MET Norway)
|
|
2337
|
-
* */
|
|
2338
|
-
var getSnackbarMessage$1 = function getSnackbarMessage(action, title, is_shared) {
|
|
2339
|
-
// Trim and add quotes
|
|
2340
|
-
var trimmedTitle = title.trim();
|
|
2341
|
-
switch (action) {
|
|
2342
|
-
case WorkspacePresetAction.DELETE:
|
|
2343
|
-
return {
|
|
2344
|
-
type: snackbarTypes.SnackbarMessageType.TRANSLATABLE_MESSAGE,
|
|
2345
|
-
key: 'workspace-list-success-delete',
|
|
2346
|
-
params: {
|
|
2347
|
-
TITLE: trimmedTitle
|
|
2348
|
-
}
|
|
2349
|
-
};
|
|
2350
|
-
case WorkspacePresetAction.DELETE_SYSTEM_PRESET:
|
|
2351
|
-
return {
|
|
2352
|
-
type: snackbarTypes.SnackbarMessageType.TRANSLATABLE_MESSAGE,
|
|
2353
|
-
key: 'workspace-list-success-delete-system',
|
|
2354
|
-
params: {
|
|
2355
|
-
TITLE: trimmedTitle
|
|
2356
|
-
}
|
|
2357
|
-
};
|
|
2358
|
-
case WorkspacePresetAction.DUPLICATE:
|
|
2359
|
-
return {
|
|
2360
|
-
type: snackbarTypes.SnackbarMessageType.TRANSLATABLE_MESSAGE,
|
|
2361
|
-
key: 'workspace-list-success-duplicate',
|
|
2362
|
-
params: {
|
|
2363
|
-
TITLE: trimmedTitle
|
|
2364
|
-
}
|
|
2365
|
-
};
|
|
2366
|
-
case WorkspacePresetAction.EDIT:
|
|
2367
|
-
return {
|
|
2368
|
-
type: snackbarTypes.SnackbarMessageType.TRANSLATABLE_MESSAGE,
|
|
2369
|
-
key: 'workspace-list-success-edit',
|
|
2370
|
-
params: {
|
|
2371
|
-
TITLE: trimmedTitle
|
|
2372
|
-
}
|
|
2373
|
-
};
|
|
2374
|
-
case WorkspacePresetAction.RESET:
|
|
2375
|
-
return {
|
|
2376
|
-
type: snackbarTypes.SnackbarMessageType.TRANSLATABLE_MESSAGE,
|
|
2377
|
-
key: 'workspace-list-success-reset',
|
|
2378
|
-
params: {
|
|
2379
|
-
TITLE: trimmedTitle
|
|
2380
|
-
}
|
|
2381
|
-
};
|
|
2382
|
-
case WorkspacePresetAction.SHARE:
|
|
2383
|
-
return {
|
|
2384
|
-
type: snackbarTypes.SnackbarMessageType.TRANSLATABLE_MESSAGE,
|
|
2385
|
-
key: is_shared ? 'workspace-list-success-unshare' : 'workspace-list-success-share',
|
|
2386
|
-
params: {
|
|
2387
|
-
TITLE: trimmedTitle
|
|
2388
|
-
}
|
|
2389
|
-
};
|
|
2390
|
-
default:
|
|
2391
|
-
return {
|
|
2392
|
-
type: snackbarTypes.SnackbarMessageType.TRANSLATABLE_MESSAGE,
|
|
2393
|
-
key: 'workspace-list-success-save',
|
|
2394
|
-
params: {
|
|
2395
|
-
TITLE: trimmedTitle
|
|
2396
|
-
}
|
|
2397
|
-
};
|
|
2398
|
-
}
|
|
2399
|
-
};
|
|
2400
|
-
function getEmptyWorkspaceListItem(t) {
|
|
2401
|
-
return {
|
|
2402
|
-
id: undefined,
|
|
2403
|
-
title: t ? t('workspace-new') : undefined,
|
|
2404
|
-
labels: undefined,
|
|
2405
|
-
scope: 'system',
|
|
2406
|
-
"abstract": '',
|
|
2407
|
-
viewType: 'singleWindow'
|
|
2408
|
-
};
|
|
2409
|
-
}
|
|
2410
|
-
function getEmptyMapWorkspace(t) {
|
|
2411
|
-
return Object.assign({}, getEmptyWorkspaceListItem(t), {
|
|
2412
|
-
views: {
|
|
2413
|
-
allIds: ['1_screen'],
|
|
2414
|
-
byId: {
|
|
2415
|
-
'1_screen': {
|
|
2416
|
-
title: t ? t('workspace-mappreset-new') : undefined,
|
|
2417
|
-
componentType: 'Map',
|
|
2418
|
-
initialProps: {
|
|
2419
|
-
mapPreset: {
|
|
2420
|
-
shouldShowLayerManager: true,
|
|
2421
|
-
dockedLayerManagerSize: 'sizeSmall'
|
|
2422
|
-
},
|
|
2423
|
-
syncGroupsIds: []
|
|
2424
|
-
}
|
|
2425
|
-
}
|
|
2426
|
-
}
|
|
2427
|
-
},
|
|
2428
|
-
mosaicNode: '1_screen'
|
|
2429
|
-
});
|
|
2430
|
-
}
|
|
2431
|
-
var getEmptyWorkspacePreset = function getEmptyWorkspacePreset() {
|
|
2432
|
-
return {
|
|
2433
|
-
scope: 'system',
|
|
2434
|
-
"abstract": '',
|
|
2435
|
-
views: {
|
|
2436
|
-
allIds: ['1_screen'],
|
|
2437
|
-
byId: {
|
|
2438
|
-
'1_screen': {
|
|
2439
|
-
componentType: 'Map',
|
|
2440
|
-
initialProps: {
|
|
2441
|
-
mapPreset: {
|
|
2442
|
-
shouldShowLayerManager: true,
|
|
2443
|
-
dockedLayerManagerSize: 'sizeSmall'
|
|
2444
|
-
},
|
|
2445
|
-
syncGroupsIds: []
|
|
2446
|
-
}
|
|
2447
|
-
}
|
|
2448
|
-
}
|
|
2449
|
-
},
|
|
2450
|
-
mosaicNode: '1_screen',
|
|
2451
|
-
viewType: 'singleWindow',
|
|
2452
|
-
username: 'global'
|
|
2453
|
-
};
|
|
2454
|
-
};
|
|
2455
|
-
var createCustomEmptyMapWorkspace = function createCustomEmptyMapWorkspace(emptyWorkspaceTitle, emptyMapWorkspaceTitle, customMapPreset) {
|
|
2456
|
-
var customEmptyMapWorkspace = cloneDeep(getEmptyWorkspacePreset());
|
|
2457
|
-
if (customMapPreset) {
|
|
2458
|
-
customEmptyMapWorkspace.views.byId['1_screen'].initialProps.mapPreset = customMapPreset;
|
|
2459
|
-
}
|
|
2460
|
-
customEmptyMapWorkspace.views.byId['1_screen'].title = emptyMapWorkspaceTitle;
|
|
2461
|
-
var emptyWorkspacePreset = Object.assign({}, customEmptyMapWorkspace, {
|
|
2462
|
-
title: emptyWorkspaceTitle
|
|
2463
|
-
});
|
|
2464
|
-
return emptyWorkspacePreset;
|
|
2465
|
-
};
|
|
2466
|
-
var LOCAL_SOUNDINGS_ID = 'newSoundingsWorkspace';
|
|
2467
|
-
var getNewSoundingsWorkspaceListItem = function getNewSoundingsWorkspaceListItem(t) {
|
|
2468
|
-
return {
|
|
2469
|
-
id: LOCAL_SOUNDINGS_ID,
|
|
2470
|
-
title: t ? t('workspace-new-soundings') : 'New soundings workspace',
|
|
2471
|
-
labels: undefined,
|
|
2472
|
-
scope: 'system',
|
|
2473
|
-
"abstract": '',
|
|
2474
|
-
viewType: 'multiWindow'
|
|
2475
|
-
};
|
|
2476
|
-
};
|
|
2477
|
-
function getNewSoundingsWorkspace(t) {
|
|
2478
|
-
return Object.assign({}, getNewSoundingsWorkspaceListItem(t), {
|
|
2479
|
-
views: {
|
|
2480
|
-
allIds: ['1_screen', '2_screen'],
|
|
2481
|
-
byId: {
|
|
2482
|
-
'1_screen': {
|
|
2483
|
-
mosaicNodeId: '1_screen',
|
|
2484
|
-
title: 'New soundings map',
|
|
2485
|
-
componentType: 'Map',
|
|
2486
|
-
initialProps: {
|
|
2487
|
-
mapPreset: {
|
|
2488
|
-
shouldShowLegend: false,
|
|
2489
|
-
shouldShowLayerManager: false
|
|
2490
|
-
}
|
|
2466
|
+
var hasRelativeReferenceTimeChange = /^latest(?:-\d+)?$/.test(parameter.instanceId || '');
|
|
2467
|
+
return hasRelevantNonReferenceTimeChanges || hasRelativeReferenceTimeChange;
|
|
2468
|
+
}() : true;
|
|
2469
|
+
if (changesRelevantProperties && isChangeOriginSupported && panelId) {
|
|
2470
|
+
var entity = draft.entities[panelId];
|
|
2471
|
+
if (entity && !(entity != null && entity.hasChanges)) {
|
|
2472
|
+
entity.hasChanges = true;
|
|
2473
|
+
viewPresetsAdapter.setOne(draft, entity);
|
|
2491
2474
|
}
|
|
2492
|
-
},
|
|
2493
|
-
'2_screen': {
|
|
2494
|
-
mosaicNodeId: '2_screen',
|
|
2495
|
-
title: 'New soundings view',
|
|
2496
|
-
componentType: 'Soundings',
|
|
2497
|
-
initialProps: {}
|
|
2498
2475
|
}
|
|
2499
|
-
}
|
|
2500
|
-
},
|
|
2501
|
-
linking: {
|
|
2502
|
-
'2_screen': ['1_screen']
|
|
2503
|
-
},
|
|
2504
|
-
syncGroups: [{
|
|
2505
|
-
id: 'Features_2_screen',
|
|
2506
|
-
sourcePanelId: '2_screen',
|
|
2507
|
-
type: 'SYNCGROUPS_TYPE_SETFEATURES'
|
|
2508
|
-
}],
|
|
2509
|
-
mosaicNode: {
|
|
2510
|
-
direction: 'row',
|
|
2511
|
-
first: '1_screen',
|
|
2512
|
-
second: '2_screen'
|
|
2513
|
-
}
|
|
2514
|
-
});
|
|
2515
|
-
}
|
|
2516
|
-
var getBEViewsFromState = function getBEViewsFromState(workspace) {
|
|
2517
|
-
var _workspace$views$allI, _workspace$views;
|
|
2518
|
-
var result = [];
|
|
2519
|
-
((_workspace$views$allI = workspace == null || (_workspace$views = workspace.views) == null ? void 0 : _workspace$views.allIds) != null ? _workspace$views$allI : []).forEach(function (id) {
|
|
2520
|
-
var _workspace$views$byId;
|
|
2521
|
-
var view = (_workspace$views$byId = workspace.views.byId[id]) != null ? _workspace$views$byId : {};
|
|
2522
|
-
result.push({
|
|
2523
|
-
mosaicNodeId: id,
|
|
2524
|
-
title: typeof view.title === 'string' && view.title.trim() ? view.title : id,
|
|
2525
|
-
componentType: view.componentType,
|
|
2526
|
-
initialProps: view.initialProps
|
|
2476
|
+
});
|
|
2527
2477
|
});
|
|
2528
|
-
|
|
2529
|
-
|
|
2530
|
-
|
|
2478
|
+
pluginPresetChangeActions.map(function (pluginPresetAction) {
|
|
2479
|
+
return builder.addCase(pluginPresetAction, function (draft, action) {
|
|
2480
|
+
var panelId = action.payload.panelId;
|
|
2481
|
+
if (panelId) {
|
|
2482
|
+
var entity = draft.entities[panelId];
|
|
2483
|
+
if (entity && !(entity != null && entity.hasChanges)) {
|
|
2484
|
+
entity.hasChanges = true;
|
|
2485
|
+
viewPresetsAdapter.setOne(draft, entity);
|
|
2486
|
+
}
|
|
2487
|
+
}
|
|
2488
|
+
});
|
|
2489
|
+
});
|
|
2490
|
+
soundingsChangeActions.map(function (soundingsAction) {
|
|
2491
|
+
return builder.addCase(soundingsAction, function (draft, action) {
|
|
2492
|
+
var _action$payload19 = action.payload,
|
|
2493
|
+
viewId = _action$payload19.viewId,
|
|
2494
|
+
origin = _action$payload19.origin;
|
|
2495
|
+
var isChangeOriginSupported = supportedSoundingsActionOrigins.includes(origin);
|
|
2496
|
+
if (isChangeOriginSupported && viewId && viewId !== '') {
|
|
2497
|
+
var entity = draft.entities[viewId];
|
|
2498
|
+
if (entity && !(entity != null && entity.hasChanges)) {
|
|
2499
|
+
entity.hasChanges = true;
|
|
2500
|
+
viewPresetsAdapter.setOne(draft, entity);
|
|
2501
|
+
}
|
|
2502
|
+
}
|
|
2503
|
+
});
|
|
2504
|
+
});
|
|
2505
|
+
}
|
|
2506
|
+
});
|
|
2507
|
+
var viewPresetsReducer = slice$1.reducer,
|
|
2508
|
+
viewPresetActions = slice$1.actions;
|
|
2531
2509
|
|
|
2532
2510
|
var initialState = {
|
|
2533
2511
|
id: '',
|
|
@@ -3314,7 +3292,7 @@ var getViewPresetListFiltersForView = createSelector(getViewPresetById, function
|
|
|
3314
3292
|
if (isAdmin) {
|
|
3315
3293
|
// Admin users: Only system and shared filters
|
|
3316
3294
|
return filters.filter(function (filter) {
|
|
3317
|
-
return filter.id === 'system' || filter.id === 'shared';
|
|
3295
|
+
return filter.id === 'system' || filter.id === 'shared' || filter.id === 'favourites';
|
|
3318
3296
|
}).map(function (filter) {
|
|
3319
3297
|
return Object.assign({}, filter, {
|
|
3320
3298
|
isDisabled: false
|
|
@@ -3345,10 +3323,6 @@ var getViewPresetLabelFilters = createSelector(getViewPresetById, function (_sto
|
|
|
3345
3323
|
}, function (viewPreset) {
|
|
3346
3324
|
return viewPreset == null ? void 0 : viewPreset.labelFilters;
|
|
3347
3325
|
}, selectorMemoizationOptions);
|
|
3348
|
-
var getFavouritesOnly$1 = createSelector(getViewPresetById, function (entity) {
|
|
3349
|
-
var _entity$favouritesOnl;
|
|
3350
|
-
return (_entity$favouritesOnl = entity == null ? void 0 : entity.favouritesOnly) != null ? _entity$favouritesOnl : false;
|
|
3351
|
-
});
|
|
3352
3326
|
|
|
3353
3327
|
/* *
|
|
3354
3328
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
@@ -3395,29 +3369,38 @@ var LABELS_CONFIG_DEFAULT = {
|
|
|
3395
3369
|
dataSource: ['Meps', 'Arome Arctic', 'Ecmwf', 'Ensemble', 'AIFS', 'BRIS', 'radar', 'satellite', 'synop']
|
|
3396
3370
|
};
|
|
3397
3371
|
|
|
3398
|
-
var
|
|
3399
|
-
|
|
3372
|
+
var TEMPLATE_PRESETS_FILENAME = 'templatePresets.json';
|
|
3373
|
+
var getTemplatePresetsFilename = function getTemplatePresetsFilename() {
|
|
3374
|
+
var _sessionStorageProvid;
|
|
3375
|
+
return ((_sessionStorageProvid = sessionStorageProvider.getConfig()) == null ? void 0 : _sessionStorageProvid.GW_TEMPLATE_PRESETS_FILENAME) || TEMPLATE_PRESETS_FILENAME;
|
|
3376
|
+
};
|
|
3377
|
+
var getTemplatePresets = /*#__PURE__*/function () {
|
|
3378
|
+
var _ref = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(filename) {
|
|
3379
|
+
var _response$workspacePr, _response$viewPresets;
|
|
3380
|
+
var response;
|
|
3400
3381
|
return _regenerator().w(function (_context) {
|
|
3401
3382
|
while (1) switch (_context.n) {
|
|
3402
3383
|
case 0:
|
|
3403
|
-
if (
|
|
3404
|
-
|
|
3405
|
-
break;
|
|
3384
|
+
if (filename === void 0) {
|
|
3385
|
+
filename = getTemplatePresetsFilename();
|
|
3406
3386
|
}
|
|
3407
|
-
|
|
3387
|
+
_context.n = 1;
|
|
3388
|
+
return fetch("./assets/" + encodeURIComponent(filename)).then(handleResponse);
|
|
3408
3389
|
case 1:
|
|
3409
|
-
|
|
3410
|
-
|
|
3411
|
-
|
|
3390
|
+
response = _context.v;
|
|
3391
|
+
return _context.a(2, {
|
|
3392
|
+
workspacePresets: (_response$workspacePr = response == null ? void 0 : response.workspacePresets) != null ? _response$workspacePr : [],
|
|
3393
|
+
viewPresets: (_response$viewPresets = response == null ? void 0 : response.viewPresets) != null ? _response$viewPresets : []
|
|
3394
|
+
});
|
|
3412
3395
|
}
|
|
3413
3396
|
}, _callee);
|
|
3414
3397
|
}));
|
|
3415
|
-
return function
|
|
3398
|
+
return function getTemplatePresets(_x) {
|
|
3416
3399
|
return _ref.apply(this, arguments);
|
|
3417
3400
|
};
|
|
3418
3401
|
}();
|
|
3419
|
-
var
|
|
3420
|
-
var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(
|
|
3402
|
+
var getWorkspaceLabelsConfig = /*#__PURE__*/function () {
|
|
3403
|
+
var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(auth) {
|
|
3421
3404
|
return _regenerator().w(function (_context2) {
|
|
3422
3405
|
while (1) switch (_context2.n) {
|
|
3423
3406
|
case 0:
|
|
@@ -3425,21 +3408,20 @@ var getWorkspacePreset = /*#__PURE__*/function () {
|
|
|
3425
3408
|
_context2.n = 1;
|
|
3426
3409
|
break;
|
|
3427
3410
|
}
|
|
3428
|
-
return _context2.a(2,
|
|
3411
|
+
return _context2.a(2, LABELS_CONFIG_DEFAULT);
|
|
3429
3412
|
case 1:
|
|
3430
|
-
return _context2.a(2, fetch(getPresetBaseUrl() + "/
|
|
3413
|
+
return _context2.a(2, fetch(getPresetBaseUrl() + "/workspace-labels-config", {
|
|
3431
3414
|
headers: getHeaders(auth)
|
|
3432
3415
|
}).then(handleResponse));
|
|
3433
3416
|
}
|
|
3434
3417
|
}, _callee2);
|
|
3435
3418
|
}));
|
|
3436
|
-
return function
|
|
3419
|
+
return function getWorkspaceLabelsConfig(_x2) {
|
|
3437
3420
|
return _ref2.apply(this, arguments);
|
|
3438
3421
|
};
|
|
3439
3422
|
}();
|
|
3440
|
-
var
|
|
3441
|
-
var _ref3 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3(
|
|
3442
|
-
var presetsUrl, searchParams, queryString, url;
|
|
3423
|
+
var getWorkspacePreset = /*#__PURE__*/function () {
|
|
3424
|
+
var _ref3 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3(workspaceId, auth) {
|
|
3443
3425
|
return _regenerator().w(function (_context3) {
|
|
3444
3426
|
while (1) switch (_context3.n) {
|
|
3445
3427
|
case 0:
|
|
@@ -3447,33 +3429,21 @@ var getWorkspacePresets = /*#__PURE__*/function () {
|
|
|
3447
3429
|
_context3.n = 1;
|
|
3448
3430
|
break;
|
|
3449
3431
|
}
|
|
3450
|
-
return _context3.a(2,
|
|
3432
|
+
return _context3.a(2, extractWorkspacePresetFromJSON(workspaceId));
|
|
3451
3433
|
case 1:
|
|
3452
|
-
|
|
3453
|
-
searchParams = new URLSearchParams();
|
|
3454
|
-
if (params) {
|
|
3455
|
-
Object.entries(params).forEach(function (_ref4) {
|
|
3456
|
-
var key = _ref4[0],
|
|
3457
|
-
value = _ref4[1];
|
|
3458
|
-
if (value !== undefined && value !== null) {
|
|
3459
|
-
searchParams.append(key, String(value));
|
|
3460
|
-
}
|
|
3461
|
-
});
|
|
3462
|
-
}
|
|
3463
|
-
queryString = searchParams.toString();
|
|
3464
|
-
url = queryString ? presetsUrl + "?" + queryString : presetsUrl;
|
|
3465
|
-
return _context3.a(2, fetch(url, {
|
|
3434
|
+
return _context3.a(2, fetch(getPresetBaseUrl() + "/workspacepreset/" + workspaceId, {
|
|
3466
3435
|
headers: getHeaders(auth)
|
|
3467
3436
|
}).then(handleResponse));
|
|
3468
3437
|
}
|
|
3469
3438
|
}, _callee3);
|
|
3470
3439
|
}));
|
|
3471
|
-
return function
|
|
3440
|
+
return function getWorkspacePreset(_x3, _x4) {
|
|
3472
3441
|
return _ref3.apply(this, arguments);
|
|
3473
3442
|
};
|
|
3474
3443
|
}();
|
|
3475
|
-
var
|
|
3476
|
-
var
|
|
3444
|
+
var getWorkspacePresets = /*#__PURE__*/function () {
|
|
3445
|
+
var _ref4 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4(auth, params) {
|
|
3446
|
+
var presetsUrl, searchParams, queryString, url;
|
|
3477
3447
|
return _regenerator().w(function (_context4) {
|
|
3478
3448
|
while (1) switch (_context4.n) {
|
|
3479
3449
|
case 0:
|
|
@@ -3481,57 +3451,74 @@ var getWorkspace = /*#__PURE__*/function () {
|
|
|
3481
3451
|
_context4.n = 1;
|
|
3482
3452
|
break;
|
|
3483
3453
|
}
|
|
3484
|
-
return _context4.a(2,
|
|
3454
|
+
return _context4.a(2, filterWorkspacePresetList(params));
|
|
3485
3455
|
case 1:
|
|
3486
|
-
|
|
3456
|
+
presetsUrl = getPresetBaseUrl() + "/workspacepreset";
|
|
3457
|
+
searchParams = new URLSearchParams();
|
|
3458
|
+
if (params) {
|
|
3459
|
+
Object.entries(params).forEach(function (_ref5) {
|
|
3460
|
+
var key = _ref5[0],
|
|
3461
|
+
value = _ref5[1];
|
|
3462
|
+
if (value !== undefined && value !== null) {
|
|
3463
|
+
searchParams.append(key, String(value));
|
|
3464
|
+
}
|
|
3465
|
+
});
|
|
3466
|
+
}
|
|
3467
|
+
queryString = searchParams.toString();
|
|
3468
|
+
url = queryString ? presetsUrl + "?" + queryString : presetsUrl;
|
|
3469
|
+
return _context4.a(2, fetch(url, {
|
|
3487
3470
|
headers: getHeaders(auth)
|
|
3488
3471
|
}).then(handleResponse));
|
|
3489
3472
|
}
|
|
3490
3473
|
}, _callee4);
|
|
3491
3474
|
}));
|
|
3492
|
-
return function
|
|
3493
|
-
return
|
|
3475
|
+
return function getWorkspacePresets(_x5, _x6) {
|
|
3476
|
+
return _ref4.apply(this, arguments);
|
|
3494
3477
|
};
|
|
3495
3478
|
}();
|
|
3496
|
-
var
|
|
3479
|
+
var getWorkspace = /*#__PURE__*/function () {
|
|
3497
3480
|
var _ref6 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5(workspaceId, auth) {
|
|
3498
3481
|
return _regenerator().w(function (_context5) {
|
|
3499
3482
|
while (1) switch (_context5.n) {
|
|
3500
3483
|
case 0:
|
|
3484
|
+
if (!hasNoPresetBackend()) {
|
|
3485
|
+
_context5.n = 1;
|
|
3486
|
+
break;
|
|
3487
|
+
}
|
|
3488
|
+
return _context5.a(2, extractWorkspacePresetFromJSON(workspaceId));
|
|
3489
|
+
case 1:
|
|
3501
3490
|
return _context5.a(2, fetch(getPresetBaseUrl() + "/workspacepreset/" + workspaceId, {
|
|
3502
|
-
headers: getHeaders(auth)
|
|
3503
|
-
method: 'DELETE'
|
|
3491
|
+
headers: getHeaders(auth)
|
|
3504
3492
|
}).then(handleResponse));
|
|
3505
3493
|
}
|
|
3506
3494
|
}, _callee5);
|
|
3507
3495
|
}));
|
|
3508
|
-
return function
|
|
3496
|
+
return function getWorkspace(_x7, _x8) {
|
|
3509
3497
|
return _ref6.apply(this, arguments);
|
|
3510
3498
|
};
|
|
3511
3499
|
}();
|
|
3512
|
-
var
|
|
3513
|
-
var _ref7 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee6(workspaceId,
|
|
3500
|
+
var deleteWorkspace = /*#__PURE__*/function () {
|
|
3501
|
+
var _ref7 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee6(workspaceId, auth) {
|
|
3514
3502
|
return _regenerator().w(function (_context6) {
|
|
3515
3503
|
while (1) switch (_context6.n) {
|
|
3516
3504
|
case 0:
|
|
3517
3505
|
return _context6.a(2, fetch(getPresetBaseUrl() + "/workspacepreset/" + workspaceId, {
|
|
3518
3506
|
headers: getHeaders(auth),
|
|
3519
|
-
method: '
|
|
3520
|
-
body: JSON.stringify(data)
|
|
3507
|
+
method: 'DELETE'
|
|
3521
3508
|
}).then(handleResponse));
|
|
3522
3509
|
}
|
|
3523
3510
|
}, _callee6);
|
|
3524
3511
|
}));
|
|
3525
|
-
return function
|
|
3512
|
+
return function deleteWorkspace(_x9, _x0) {
|
|
3526
3513
|
return _ref7.apply(this, arguments);
|
|
3527
3514
|
};
|
|
3528
3515
|
}();
|
|
3529
|
-
var
|
|
3516
|
+
var updateWorkspace = /*#__PURE__*/function () {
|
|
3530
3517
|
var _ref8 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee7(workspaceId, data, auth) {
|
|
3531
3518
|
return _regenerator().w(function (_context7) {
|
|
3532
3519
|
while (1) switch (_context7.n) {
|
|
3533
3520
|
case 0:
|
|
3534
|
-
return _context7.a(2, fetch(getPresetBaseUrl() + "/workspacepreset/" + workspaceId
|
|
3521
|
+
return _context7.a(2, fetch(getPresetBaseUrl() + "/workspacepreset/" + workspaceId, {
|
|
3535
3522
|
headers: getHeaders(auth),
|
|
3536
3523
|
method: 'PUT',
|
|
3537
3524
|
body: JSON.stringify(data)
|
|
@@ -3539,52 +3526,69 @@ var saveWorkspacePreset = /*#__PURE__*/function () {
|
|
|
3539
3526
|
}
|
|
3540
3527
|
}, _callee7);
|
|
3541
3528
|
}));
|
|
3542
|
-
return function
|
|
3529
|
+
return function updateWorkspace(_x1, _x10, _x11) {
|
|
3543
3530
|
return _ref8.apply(this, arguments);
|
|
3544
3531
|
};
|
|
3545
3532
|
}();
|
|
3546
|
-
var
|
|
3547
|
-
var _ref9 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee8(data, auth) {
|
|
3533
|
+
var saveWorkspacePreset = /*#__PURE__*/function () {
|
|
3534
|
+
var _ref9 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee8(workspaceId, data, auth) {
|
|
3548
3535
|
return _regenerator().w(function (_context8) {
|
|
3549
3536
|
while (1) switch (_context8.n) {
|
|
3550
3537
|
case 0:
|
|
3551
|
-
return _context8.a(2, fetch(getPresetBaseUrl() + "/workspacepreset", {
|
|
3538
|
+
return _context8.a(2, fetch(getPresetBaseUrl() + "/workspacepreset/" + workspaceId + "/", {
|
|
3552
3539
|
headers: getHeaders(auth),
|
|
3553
|
-
method: '
|
|
3540
|
+
method: 'PUT',
|
|
3554
3541
|
body: JSON.stringify(data)
|
|
3555
3542
|
}).then(handleResponse));
|
|
3556
3543
|
}
|
|
3557
3544
|
}, _callee8);
|
|
3558
3545
|
}));
|
|
3559
|
-
return function
|
|
3546
|
+
return function saveWorkspacePreset(_x12, _x13, _x14) {
|
|
3560
3547
|
return _ref9.apply(this, arguments);
|
|
3561
3548
|
};
|
|
3562
3549
|
}();
|
|
3563
|
-
var
|
|
3550
|
+
var createWorkspace = /*#__PURE__*/function () {
|
|
3564
3551
|
var _ref0 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee9(data, auth) {
|
|
3565
|
-
var _response$headers$get;
|
|
3566
|
-
var response, headerLocation;
|
|
3567
3552
|
return _regenerator().w(function (_context9) {
|
|
3568
3553
|
while (1) switch (_context9.n) {
|
|
3569
3554
|
case 0:
|
|
3570
|
-
_context9.
|
|
3555
|
+
return _context9.a(2, fetch(getPresetBaseUrl() + "/workspacepreset", {
|
|
3556
|
+
headers: getHeaders(auth),
|
|
3557
|
+
method: 'POST',
|
|
3558
|
+
body: JSON.stringify(data)
|
|
3559
|
+
}).then(handleResponse));
|
|
3560
|
+
}
|
|
3561
|
+
}, _callee9);
|
|
3562
|
+
}));
|
|
3563
|
+
return function createWorkspace(_x15, _x16) {
|
|
3564
|
+
return _ref0.apply(this, arguments);
|
|
3565
|
+
};
|
|
3566
|
+
}();
|
|
3567
|
+
var saveWorkspacePresetAs = /*#__PURE__*/function () {
|
|
3568
|
+
var _ref1 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee0(data, auth) {
|
|
3569
|
+
var _response$headers$get;
|
|
3570
|
+
var response, headerLocation;
|
|
3571
|
+
return _regenerator().w(function (_context0) {
|
|
3572
|
+
while (1) switch (_context0.n) {
|
|
3573
|
+
case 0:
|
|
3574
|
+
_context0.n = 1;
|
|
3571
3575
|
return fetch(getPresetBaseUrl() + "/workspacepreset", {
|
|
3572
3576
|
headers: getHeaders(auth),
|
|
3573
3577
|
method: 'POST',
|
|
3574
3578
|
body: JSON.stringify(data)
|
|
3575
3579
|
});
|
|
3576
3580
|
case 1:
|
|
3577
|
-
response =
|
|
3578
|
-
|
|
3581
|
+
response = _context0.v;
|
|
3582
|
+
_context0.n = 2;
|
|
3579
3583
|
return handleResponse(response);
|
|
3580
3584
|
case 2:
|
|
3581
3585
|
headerLocation = (_response$headers$get = response.headers.get('Location')) != null ? _response$headers$get : response.headers.get('location');
|
|
3582
|
-
return
|
|
3586
|
+
return _context0.a(2, getIdFromUrl(headerLocation));
|
|
3583
3587
|
}
|
|
3584
|
-
},
|
|
3588
|
+
}, _callee0);
|
|
3585
3589
|
}));
|
|
3586
|
-
return function saveWorkspacePresetAs(
|
|
3587
|
-
return
|
|
3590
|
+
return function saveWorkspacePresetAs(_x17, _x18) {
|
|
3591
|
+
return _ref1.apply(this, arguments);
|
|
3588
3592
|
};
|
|
3589
3593
|
}();
|
|
3590
3594
|
|
|
@@ -3607,15 +3611,18 @@ var workspaceQueryOptions = {
|
|
|
3607
3611
|
return [].concat(workspaceQueryOptions.keys.all(), ['list']);
|
|
3608
3612
|
}
|
|
3609
3613
|
},
|
|
3610
|
-
|
|
3614
|
+
getTemplatePresets: function getTemplatePresets$1(filename) {
|
|
3615
|
+
if (filename === void 0) {
|
|
3616
|
+
filename = getTemplatePresetsFilename();
|
|
3617
|
+
}
|
|
3611
3618
|
return queryOptions({
|
|
3612
|
-
queryKey: generateWorkspaceQueryKeys(
|
|
3619
|
+
queryKey: generateWorkspaceQueryKeys('templates', filename),
|
|
3613
3620
|
queryFn: function () {
|
|
3614
3621
|
var _queryFn = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
|
|
3615
3622
|
return _regenerator().w(function (_context) {
|
|
3616
3623
|
while (1) switch (_context.n) {
|
|
3617
3624
|
case 0:
|
|
3618
|
-
return _context.a(2,
|
|
3625
|
+
return _context.a(2, getTemplatePresets(filename));
|
|
3619
3626
|
}
|
|
3620
3627
|
}, _callee);
|
|
3621
3628
|
}));
|
|
@@ -3623,18 +3630,19 @@ var workspaceQueryOptions = {
|
|
|
3623
3630
|
return _queryFn.apply(this, arguments);
|
|
3624
3631
|
}
|
|
3625
3632
|
return queryFn;
|
|
3626
|
-
}()
|
|
3633
|
+
}(),
|
|
3634
|
+
staleTime: Infinity
|
|
3627
3635
|
});
|
|
3628
3636
|
},
|
|
3629
|
-
|
|
3637
|
+
getWorkspacePreset: function getWorkspacePreset$1(id, credentials) {
|
|
3630
3638
|
return queryOptions({
|
|
3631
|
-
queryKey:
|
|
3639
|
+
queryKey: generateWorkspaceQueryKeys(id),
|
|
3632
3640
|
queryFn: function () {
|
|
3633
3641
|
var _queryFn2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2() {
|
|
3634
3642
|
return _regenerator().w(function (_context2) {
|
|
3635
3643
|
while (1) switch (_context2.n) {
|
|
3636
3644
|
case 0:
|
|
3637
|
-
return _context2.a(2,
|
|
3645
|
+
return _context2.a(2, getWorkspacePreset(id, credentials));
|
|
3638
3646
|
}
|
|
3639
3647
|
}, _callee2);
|
|
3640
3648
|
}));
|
|
@@ -3642,21 +3650,18 @@ var workspaceQueryOptions = {
|
|
|
3642
3650
|
return _queryFn2.apply(this, arguments);
|
|
3643
3651
|
}
|
|
3644
3652
|
return queryFn;
|
|
3645
|
-
}()
|
|
3646
|
-
staleTime: 2 * 60 * 1000,
|
|
3647
|
-
refetchOnMount: true
|
|
3653
|
+
}()
|
|
3648
3654
|
});
|
|
3649
3655
|
},
|
|
3650
|
-
|
|
3656
|
+
getWorkspacePresets: function getWorkspacePresets$1(credentials) {
|
|
3651
3657
|
return queryOptions({
|
|
3652
|
-
queryKey:
|
|
3653
|
-
staleTime: 0,
|
|
3658
|
+
queryKey: workspaceQueryOptions.keys.lists(),
|
|
3654
3659
|
queryFn: function () {
|
|
3655
3660
|
var _queryFn3 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3() {
|
|
3656
3661
|
return _regenerator().w(function (_context3) {
|
|
3657
3662
|
while (1) switch (_context3.n) {
|
|
3658
3663
|
case 0:
|
|
3659
|
-
return _context3.a(2,
|
|
3664
|
+
return _context3.a(2, getWorkspacePresets(credentials));
|
|
3660
3665
|
}
|
|
3661
3666
|
}, _callee3);
|
|
3662
3667
|
}));
|
|
@@ -3664,19 +3669,21 @@ var workspaceQueryOptions = {
|
|
|
3664
3669
|
return _queryFn3.apply(this, arguments);
|
|
3665
3670
|
}
|
|
3666
3671
|
return queryFn;
|
|
3667
|
-
}()
|
|
3672
|
+
}(),
|
|
3673
|
+
staleTime: 2 * 60 * 1000,
|
|
3674
|
+
refetchOnMount: true
|
|
3668
3675
|
});
|
|
3669
3676
|
},
|
|
3670
|
-
|
|
3677
|
+
saveWorkspacePreset: function saveWorkspacePreset$1(id, data, credentials) {
|
|
3671
3678
|
return queryOptions({
|
|
3672
|
-
queryKey: generateWorkspaceQueryKeys(
|
|
3679
|
+
queryKey: generateWorkspaceQueryKeys(id),
|
|
3673
3680
|
staleTime: 0,
|
|
3674
3681
|
queryFn: function () {
|
|
3675
3682
|
var _queryFn4 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4() {
|
|
3676
3683
|
return _regenerator().w(function (_context4) {
|
|
3677
3684
|
while (1) switch (_context4.n) {
|
|
3678
3685
|
case 0:
|
|
3679
|
-
return _context4.a(2,
|
|
3686
|
+
return _context4.a(2, saveWorkspacePreset(id, data, credentials));
|
|
3680
3687
|
}
|
|
3681
3688
|
}, _callee4);
|
|
3682
3689
|
}));
|
|
@@ -3686,6 +3693,26 @@ var workspaceQueryOptions = {
|
|
|
3686
3693
|
return queryFn;
|
|
3687
3694
|
}()
|
|
3688
3695
|
});
|
|
3696
|
+
},
|
|
3697
|
+
saveWorkspacePresetAs: function saveWorkspacePresetAs$1(data, credentials) {
|
|
3698
|
+
return queryOptions({
|
|
3699
|
+
queryKey: generateWorkspaceQueryKeys('save-as'),
|
|
3700
|
+
staleTime: 0,
|
|
3701
|
+
queryFn: function () {
|
|
3702
|
+
var _queryFn5 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5() {
|
|
3703
|
+
return _regenerator().w(function (_context5) {
|
|
3704
|
+
while (1) switch (_context5.n) {
|
|
3705
|
+
case 0:
|
|
3706
|
+
return _context5.a(2, saveWorkspacePresetAs(data, credentials));
|
|
3707
|
+
}
|
|
3708
|
+
}, _callee5);
|
|
3709
|
+
}));
|
|
3710
|
+
function queryFn() {
|
|
3711
|
+
return _queryFn5.apply(this, arguments);
|
|
3712
|
+
}
|
|
3713
|
+
return queryFn;
|
|
3714
|
+
}()
|
|
3715
|
+
});
|
|
3689
3716
|
}
|
|
3690
3717
|
};
|
|
3691
3718
|
|
|
@@ -3774,7 +3801,7 @@ var getWorkspaceListFilters = createSelector(function (store) {
|
|
|
3774
3801
|
if (isAdmin) {
|
|
3775
3802
|
// Only return system and shared for admins
|
|
3776
3803
|
return filters.filter(function (filter) {
|
|
3777
|
-
return filter.id === 'system' || filter.id === 'shared';
|
|
3804
|
+
return filter.id === 'system' || filter.id === 'shared' || filter.id === 'favourites';
|
|
3778
3805
|
}).map(function (filter) {
|
|
3779
3806
|
return Object.assign({}, filter, {
|
|
3780
3807
|
isDisabled: false
|
|
@@ -3799,17 +3826,6 @@ var getWorkspaceLabelFilters = createSelector(getWorkspaceListStore, function (s
|
|
|
3799
3826
|
}, function (state) {
|
|
3800
3827
|
return state.workspaceLabelFilters;
|
|
3801
3828
|
}, selectorMemoizationOptions);
|
|
3802
|
-
var getFavouritesOnly = createSelector(getWorkspaceListStore, function (state) {
|
|
3803
|
-
var _state$favouritesOnly;
|
|
3804
|
-
return (_state$favouritesOnly = state == null ? void 0 : state.favouritesOnly) != null ? _state$favouritesOnly : false;
|
|
3805
|
-
});
|
|
3806
|
-
var filterAndSortFavouritePresets = function filterAndSortFavouritePresets(presets, isFavourite, favouritesOnly) {
|
|
3807
|
-
return presets.filter(function (preset) {
|
|
3808
|
-
return !favouritesOnly || isFavourite(preset);
|
|
3809
|
-
}).sort(function (first, second) {
|
|
3810
|
-
return Number(isFavourite(second)) - Number(isFavourite(first));
|
|
3811
|
-
});
|
|
3812
|
-
};
|
|
3813
3829
|
|
|
3814
3830
|
var emptyWorkspaceBEData = Object.assign({}, getEmptyMapWorkspace(), {
|
|
3815
3831
|
views: [{
|
|
@@ -6310,7 +6326,12 @@ var humanizeLabelStrings = function humanizeLabelStrings(value) {
|
|
|
6310
6326
|
return match.toUpperCase();
|
|
6311
6327
|
});
|
|
6312
6328
|
};
|
|
6313
|
-
var filterAndSortPresets = function filterAndSortPresets(presets, selectedFilters, username, isAdmin, labelFilters, searchQuery) {
|
|
6329
|
+
var filterAndSortPresets = function filterAndSortPresets(presets, selectedFilters, username, isAdmin, labelFilters, searchQuery, isFavourite) {
|
|
6330
|
+
if (isFavourite === void 0) {
|
|
6331
|
+
isFavourite = function isFavourite() {
|
|
6332
|
+
return false;
|
|
6333
|
+
};
|
|
6334
|
+
}
|
|
6314
6335
|
var searchFiltered = searchQuery ? presets.filter(function (preset) {
|
|
6315
6336
|
var terms = searchQuery.toLowerCase().trim().split(/\s+/).filter(Boolean);
|
|
6316
6337
|
var fields = [preset.title, preset["abstract"], preset.description].filter(Boolean).map(function (field) {
|
|
@@ -6333,7 +6354,14 @@ var filterAndSortPresets = function filterAndSortPresets(presets, selectedFilter
|
|
|
6333
6354
|
var isAllSelected = expectedIdsForAll.every(function (id) {
|
|
6334
6355
|
return selectedIds.includes(id);
|
|
6335
6356
|
});
|
|
6357
|
+
// Templates are filtered by their own chip instead of by scope
|
|
6358
|
+
var isTemplate = function isTemplate(preset) {
|
|
6359
|
+
return Boolean(preset.isViewTemplate) || Boolean(preset.isWorkspaceTemplate);
|
|
6360
|
+
};
|
|
6336
6361
|
var scopeFiltered = isAllSelected ? searchFiltered.filter(function (preset) {
|
|
6362
|
+
if (isTemplate(preset)) {
|
|
6363
|
+
return true;
|
|
6364
|
+
}
|
|
6337
6365
|
if (isAdmin) {
|
|
6338
6366
|
// Admin users: Only system + shared, never personal
|
|
6339
6367
|
return preset.scope === 'system' || preset.scope === 'plugin' || preset.scope === 'user' && preset.is_shared;
|
|
@@ -6341,7 +6369,10 @@ var filterAndSortPresets = function filterAndSortPresets(presets, selectedFilter
|
|
|
6341
6369
|
// Regular users: Keep everything
|
|
6342
6370
|
return true;
|
|
6343
6371
|
}) : searchFiltered.filter(function (preset) {
|
|
6344
|
-
|
|
6372
|
+
if (isTemplate(preset)) {
|
|
6373
|
+
return selectedIds.includes(PresetFilterType.templates);
|
|
6374
|
+
}
|
|
6375
|
+
return selectedIds.includes(PresetFilterType.favourites) && isFavourite(preset) || selectedIds.includes(PresetFilterType.system) && preset.scope === 'system' || selectedIds.includes(PresetFilterType.personal) && preset.scope === 'user' && preset.username === username || selectedIds.includes(PresetFilterType.shared) && preset.scope === 'user' && preset.is_shared && (isAdmin || preset.username !== username) || selectedIds.includes(PresetFilterType.plugin) && preset.scope === 'plugin';
|
|
6345
6376
|
});
|
|
6346
6377
|
var labelFiltered = function () {
|
|
6347
6378
|
if (!labelFilters) {
|
|
@@ -6375,27 +6406,31 @@ var filterAndSortPresets = function filterAndSortPresets(presets, selectedFilter
|
|
|
6375
6406
|
};
|
|
6376
6407
|
return scopeFiltered.filter(matchesLabelFilters);
|
|
6377
6408
|
}();
|
|
6378
|
-
var
|
|
6409
|
+
var templatePresets = labelFiltered.filter(isTemplate);
|
|
6410
|
+
var storedPresets = labelFiltered.filter(function (preset) {
|
|
6411
|
+
return !isTemplate(preset);
|
|
6412
|
+
});
|
|
6413
|
+
var systemPresets = storedPresets.filter(function (preset) {
|
|
6379
6414
|
return preset.scope === 'system';
|
|
6380
6415
|
}).sort(function (presetA, presetB) {
|
|
6381
6416
|
return presetA.title.localeCompare(presetB.title);
|
|
6382
6417
|
});
|
|
6383
|
-
var personalPresets =
|
|
6418
|
+
var personalPresets = storedPresets.filter(function (preset) {
|
|
6384
6419
|
return preset.scope === 'user' && preset.username === username;
|
|
6385
6420
|
}).sort(function (presetA, presetB) {
|
|
6386
6421
|
return presetA.title.localeCompare(presetB.title);
|
|
6387
6422
|
});
|
|
6388
|
-
var sharedPresets =
|
|
6423
|
+
var sharedPresets = storedPresets.filter(function (preset) {
|
|
6389
6424
|
return preset.scope === 'user' && preset.username !== username;
|
|
6390
6425
|
}).sort(function (presetA, presetB) {
|
|
6391
6426
|
return presetA.title.localeCompare(presetB.title);
|
|
6392
6427
|
});
|
|
6393
|
-
var pluginPresets =
|
|
6428
|
+
var pluginPresets = storedPresets.filter(function (preset) {
|
|
6394
6429
|
return preset.scope === 'plugin';
|
|
6395
6430
|
}).sort(function (presetA, presetB) {
|
|
6396
6431
|
return presetA.title.localeCompare(presetB.title);
|
|
6397
6432
|
});
|
|
6398
|
-
var filteredByQuery = [].concat(systemPresets, personalPresets, sharedPresets, pluginPresets).filter(function (preset) {
|
|
6433
|
+
var filteredByQuery = [].concat(templatePresets, systemPresets, personalPresets, sharedPresets, pluginPresets).filter(function (preset) {
|
|
6399
6434
|
if (!searchQuery) {
|
|
6400
6435
|
return true;
|
|
6401
6436
|
}
|
|
@@ -6409,7 +6444,9 @@ var filterAndSortPresets = function filterAndSortPresets(presets, selectedFilter
|
|
|
6409
6444
|
});
|
|
6410
6445
|
});
|
|
6411
6446
|
});
|
|
6412
|
-
return filteredByQuery
|
|
6447
|
+
return filteredByQuery.slice().sort(function (first, second) {
|
|
6448
|
+
return Number(isFavourite(second)) - Number(isFavourite(first));
|
|
6449
|
+
});
|
|
6413
6450
|
};
|
|
6414
6451
|
|
|
6415
6452
|
var VIEW_TYPE_KEY = 'viewType';
|
|
@@ -7456,8 +7493,10 @@ var WorkspaceSelectListRow = function WorkspaceSelectListRow(_ref) {
|
|
|
7456
7493
|
event.stopPropagation();
|
|
7457
7494
|
onOpenPresetInfo == null || onOpenPresetInfo(workspacePreset);
|
|
7458
7495
|
};
|
|
7459
|
-
var
|
|
7460
|
-
var
|
|
7496
|
+
var isViewTemplate = Boolean(workspacePreset.isViewTemplate);
|
|
7497
|
+
var isTemplate = isViewTemplate || Boolean(workspacePreset.isWorkspaceTemplate);
|
|
7498
|
+
var canDelete = (workspacePreset.scope === SystemScope.user && (auth == null ? void 0 : auth.username) === workspacePreset.username || isAdmin) && Boolean(workspacePreset.id) && !isTemplate;
|
|
7499
|
+
var isNewPreset = !workspacePreset.id || workspacePreset.id === LOCAL_SOUNDINGS_ID || isTemplate;
|
|
7461
7500
|
var menuItems = [{
|
|
7462
7501
|
text: t('workspace-duplicate'),
|
|
7463
7502
|
action: function action() {
|
|
@@ -7476,7 +7515,7 @@ var WorkspaceSelectListRow = function WorkspaceSelectListRow(_ref) {
|
|
|
7476
7515
|
isDisabled: isNewPreset
|
|
7477
7516
|
}];
|
|
7478
7517
|
// Show "Edit" if it's your own user-scoped preset OR you're an admin
|
|
7479
|
-
if (workspacePreset.scope === SystemScope.user && (auth == null ? void 0 : auth.username) === workspacePreset.username || isAdmin) {
|
|
7518
|
+
if (!isTemplate && (workspacePreset.scope === SystemScope.user && (auth == null ? void 0 : auth.username) === workspacePreset.username || isAdmin)) {
|
|
7480
7519
|
menuItems.push({
|
|
7481
7520
|
text: t('workspace-edit'),
|
|
7482
7521
|
action: function action() {
|
|
@@ -7527,7 +7566,7 @@ var WorkspaceSelectListRow = function WorkspaceSelectListRow(_ref) {
|
|
|
7527
7566
|
}
|
|
7528
7567
|
return 'workspace-version';
|
|
7529
7568
|
};
|
|
7530
|
-
var showInfoIcon = !!workspacePreset.id && workspacePreset.id !== LOCAL_SOUNDINGS_ID;
|
|
7569
|
+
var showInfoIcon = !!workspacePreset.id && workspacePreset.id !== LOCAL_SOUNDINGS_ID && !isTemplate;
|
|
7531
7570
|
return jsx(ListItem, {
|
|
7532
7571
|
disablePadding: true,
|
|
7533
7572
|
sx: {
|
|
@@ -7558,7 +7597,8 @@ var WorkspaceSelectListRow = function WorkspaceSelectListRow(_ref) {
|
|
|
7558
7597
|
"aria-label": testIdPrefix,
|
|
7559
7598
|
"data-testid": testIdPrefix + "-selectListRow",
|
|
7560
7599
|
onClick: function onClick(event) {
|
|
7561
|
-
|
|
7600
|
+
// A template has no workspace of its own to open in a new tab
|
|
7601
|
+
if ((event.ctrlKey || event.metaKey) && !isViewTemplate) {
|
|
7562
7602
|
var url = getWorkspaceRouteUrl(workspacePreset.id);
|
|
7563
7603
|
window.open(url, '_blank');
|
|
7564
7604
|
} else {
|
|
@@ -7677,7 +7717,7 @@ var WorkspaceSelectListRow = function WorkspaceSelectListRow(_ref) {
|
|
|
7677
7717
|
children: jsx(Info, {
|
|
7678
7718
|
fontSize: "small"
|
|
7679
7719
|
})
|
|
7680
|
-
}), workspacePreset.scope !== 'plugin' && jsx(ToggleMenu, {
|
|
7720
|
+
}), workspacePreset.scope !== 'plugin' && !isViewTemplate && jsx(ToggleMenu, {
|
|
7681
7721
|
buttonTestId: testIdPrefix + "-listOptionsButton",
|
|
7682
7722
|
isDefaultOpen: isOptionsMenuOpen,
|
|
7683
7723
|
menuItems: menuItems,
|
|
@@ -7771,7 +7811,7 @@ var WorkspaceSelectList = function WorkspaceSelectList(_ref2) {
|
|
|
7771
7811
|
var _useWorkspaceTranslat = useWorkspaceTranslation(),
|
|
7772
7812
|
t = _useWorkspaceTranslat.t;
|
|
7773
7813
|
var items = React.useMemo(function () {
|
|
7774
|
-
var newPresetsTruthy = newPresets
|
|
7814
|
+
var newPresetsTruthy = newPresets != null ? newPresets : [];
|
|
7775
7815
|
var favourites = workspacePresets.filter(function (preset) {
|
|
7776
7816
|
return isFavourite == null ? void 0 : isFavourite(preset);
|
|
7777
7817
|
});
|
|
@@ -7779,7 +7819,7 @@ var WorkspaceSelectList = function WorkspaceSelectList(_ref2) {
|
|
|
7779
7819
|
return !(isFavourite != null && isFavourite(preset));
|
|
7780
7820
|
});
|
|
7781
7821
|
return [].concat(favourites, !hideNewWorkspace ? newPresetsTruthy : [], otherPresets);
|
|
7782
|
-
}, [hideNewWorkspace, newPresets, workspacePresets, isFavourite
|
|
7822
|
+
}, [hideNewWorkspace, newPresets, workspacePresets, isFavourite]);
|
|
7783
7823
|
return jsxs(Box, {
|
|
7784
7824
|
"data-testid": testIdPrefix + "-selectList",
|
|
7785
7825
|
sx: {
|
|
@@ -7834,9 +7874,6 @@ var ViewPresetMenuListConnect = function ViewPresetMenuListConnect(_ref) {
|
|
|
7834
7874
|
var _useWorkspaceTranslat = useWorkspaceTranslation(),
|
|
7835
7875
|
t = _useWorkspaceTranslat.t;
|
|
7836
7876
|
var favourites = useFavouritePresets('view');
|
|
7837
|
-
var selectedFavouritesOnly = useSelector(function (state) {
|
|
7838
|
-
return getFavouritesOnly$1(state, panelId);
|
|
7839
|
-
});
|
|
7840
7877
|
var dispatch = useDispatch();
|
|
7841
7878
|
var queryClient = useQueryClient();
|
|
7842
7879
|
var store = useStore();
|
|
@@ -7844,7 +7881,6 @@ var ViewPresetMenuListConnect = function ViewPresetMenuListConnect(_ref) {
|
|
|
7844
7881
|
currentRole = _useAuthenticationCon.currentRole,
|
|
7845
7882
|
isLoggedIn = _useAuthenticationCon.isLoggedIn,
|
|
7846
7883
|
auth = _useAuthenticationCon.auth;
|
|
7847
|
-
var favouritesOnly = isLoggedIn && selectedFavouritesOnly;
|
|
7848
7884
|
var username = (auth == null ? void 0 : auth.username) || '';
|
|
7849
7885
|
var isAdmin = (currentRole == null ? void 0 : currentRole.name) === GEOWEB_ROLE_PRESETS_ADMIN.name;
|
|
7850
7886
|
var scope = !isAdmin ? 'user' : 'system';
|
|
@@ -7913,13 +7949,12 @@ var ViewPresetMenuListConnect = function ViewPresetMenuListConnect(_ref) {
|
|
|
7913
7949
|
}
|
|
7914
7950
|
return Object.values(viewPresetLabelFilters).flat().length;
|
|
7915
7951
|
}, [viewPresetLabelFilters]);
|
|
7916
|
-
var
|
|
7952
|
+
var filteredPresets = React.useMemo(function () {
|
|
7917
7953
|
if (viewPresets) {
|
|
7918
|
-
return [].concat(filterAndSortPresets([].concat(viewPresets, pluginCatalogAsPresets), viewPresetListFilters, username, isAdmin, viewPresetLabelFilters != null ? viewPresetLabelFilters : undefined, viewPresetListSearchQuery));
|
|
7954
|
+
return [].concat(filterAndSortPresets([].concat(viewPresets, pluginCatalogAsPresets), viewPresetListFilters, username, isAdmin, viewPresetLabelFilters != null ? viewPresetLabelFilters : undefined, viewPresetListSearchQuery, favourites.isFavourite));
|
|
7919
7955
|
}
|
|
7920
7956
|
return [];
|
|
7921
|
-
}, [viewPresets, viewPresetListFilters, username, isAdmin, viewPresetLabelFilters, viewPresetListSearchQuery, pluginCatalogAsPresets]);
|
|
7922
|
-
var filteredPresets = filterAndSortFavouritePresets(matchingPresets, favourites.isFavourite, favouritesOnly);
|
|
7957
|
+
}, [viewPresets, viewPresetListFilters, username, isAdmin, viewPresetLabelFilters, viewPresetListSearchQuery, favourites.isFavourite, pluginCatalogAsPresets]);
|
|
7923
7958
|
var labelsFormMethods = useForm({
|
|
7924
7959
|
defaultValues: {
|
|
7925
7960
|
labels: viewPresetLabelFilters
|
|
@@ -8199,9 +8234,10 @@ var ViewPresetMenuListConnect = function ViewPresetMenuListConnect(_ref) {
|
|
|
8199
8234
|
id: id,
|
|
8200
8235
|
isSelected: isSelected,
|
|
8201
8236
|
panelId: panelId,
|
|
8202
|
-
isAdmin: isAdmin
|
|
8237
|
+
isAdmin: isAdmin,
|
|
8238
|
+
isFavouritesEnabled: isLoggedIn
|
|
8203
8239
|
}));
|
|
8204
|
-
}, [dispatch, panelId, isAdmin]);
|
|
8240
|
+
}, [dispatch, panelId, isAdmin, isLoggedIn]);
|
|
8205
8241
|
var setSelectAllFilterChip = React.useCallback(function () {
|
|
8206
8242
|
dispatch(viewPresetActions.setSelectAllFilterChip({
|
|
8207
8243
|
panelId: panelId
|
|
@@ -8222,7 +8258,9 @@ var ViewPresetMenuListConnect = function ViewPresetMenuListConnect(_ref) {
|
|
|
8222
8258
|
panelId: panelId
|
|
8223
8259
|
}));
|
|
8224
8260
|
}, [dispatch, panelId]);
|
|
8225
|
-
var isAllSelectedForFilters = viewPresetListFilters.
|
|
8261
|
+
var isAllSelectedForFilters = viewPresetListFilters.filter(function (filter) {
|
|
8262
|
+
return isLoggedIn || filter.id !== 'favourites';
|
|
8263
|
+
}).every(function (filter) {
|
|
8226
8264
|
return filter.isSelected;
|
|
8227
8265
|
});
|
|
8228
8266
|
var showLabelFilterToggle = Boolean(onToggleLabelFilter);
|
|
@@ -8329,17 +8367,14 @@ var ViewPresetMenuListConnect = function ViewPresetMenuListConnect(_ref) {
|
|
|
8329
8367
|
},
|
|
8330
8368
|
children: jsx(Filter, {
|
|
8331
8369
|
activeLabelFilterCount: activeLabelFilterCount,
|
|
8332
|
-
filters:
|
|
8370
|
+
filters: viewPresetListFilters.map(function (filter) {
|
|
8333
8371
|
return Object.assign({}, filter, {
|
|
8334
|
-
|
|
8372
|
+
label: filter.id === 'favourites' ? t('workspace-favourites') : filter.label,
|
|
8373
|
+
isSelected: !isAllSelectedForFilters && filter.isSelected && (filter.id !== 'favourites' || isLoggedIn),
|
|
8374
|
+
isDisabled: filter.id === 'favourites' ? !isLoggedIn : filter.isDisabled
|
|
8335
8375
|
});
|
|
8336
|
-
}),
|
|
8337
|
-
|
|
8338
|
-
label: t('workspace-favourites'),
|
|
8339
|
-
isSelected: favouritesOnly,
|
|
8340
|
-
isDisabled: !isLoggedIn
|
|
8341
|
-
}]),
|
|
8342
|
-
isAllSelected: isAllSelectedForFilters ? !favouritesOnly : false,
|
|
8376
|
+
}),
|
|
8377
|
+
isAllSelected: isAllSelectedForFilters,
|
|
8343
8378
|
isLabelFilterOpen: isLabelFilterOpen,
|
|
8344
8379
|
onClickFilterChip: onClickFilterChip,
|
|
8345
8380
|
onSearch: onSearchFilter,
|
|
@@ -8379,7 +8414,7 @@ var ViewPresetMenuListConnect = function ViewPresetMenuListConnect(_ref) {
|
|
|
8379
8414
|
children: [jsx(WorkspaceSelectList, {
|
|
8380
8415
|
currentSelectedId: activeViewPresetId || undefined,
|
|
8381
8416
|
favouritesDisabled: favourites.disabled,
|
|
8382
|
-
hideNewWorkspace: shouldHideNewWorkspace
|
|
8417
|
+
hideNewWorkspace: shouldHideNewWorkspace,
|
|
8383
8418
|
infoOpenPresetId: infoPreset == null ? void 0 : infoPreset.id,
|
|
8384
8419
|
isAdmin: isAdmin,
|
|
8385
8420
|
isEditable: isLoggedIn,
|
|
@@ -8617,9 +8652,6 @@ var WorkspaceSelectListConnect = function WorkspaceSelectListConnect(_ref) {
|
|
|
8617
8652
|
isLabelFilterOpen = _ref$isLabelFilterOpe === void 0 ? false : _ref$isLabelFilterOpe,
|
|
8618
8653
|
onToggleLabelFilter = _ref.onToggleLabelFilter;
|
|
8619
8654
|
var favourites = useFavouritePresets('workspace');
|
|
8620
|
-
var selectedFavouritesOnly = useSelector(function (state) {
|
|
8621
|
-
return getFavouritesOnly(state);
|
|
8622
|
-
});
|
|
8623
8655
|
var dispatch = useDispatch();
|
|
8624
8656
|
var _useWorkspaceTranslat = useWorkspaceTranslation(),
|
|
8625
8657
|
t = _useWorkspaceTranslat.t;
|
|
@@ -8627,7 +8659,6 @@ var WorkspaceSelectListConnect = function WorkspaceSelectListConnect(_ref) {
|
|
|
8627
8659
|
currentRole = _useAuthenticationCon.currentRole,
|
|
8628
8660
|
isLoggedIn = _useAuthenticationCon.isLoggedIn,
|
|
8629
8661
|
auth = _useAuthenticationCon.auth;
|
|
8630
|
-
var favouritesOnly = isLoggedIn && selectedFavouritesOnly;
|
|
8631
8662
|
var username = (auth == null ? void 0 : auth.username) || '';
|
|
8632
8663
|
var isAdmin = (currentRole == null ? void 0 : currentRole.name) === GEOWEB_ROLE_PRESETS_ADMIN.name;
|
|
8633
8664
|
var scope = !isAdmin ? 'user' : 'system';
|
|
@@ -8658,10 +8689,9 @@ var WorkspaceSelectListConnect = function WorkspaceSelectListConnect(_ref) {
|
|
|
8658
8689
|
}
|
|
8659
8690
|
return Object.values(labelFilters).flat().length;
|
|
8660
8691
|
}, [labelFilters]);
|
|
8661
|
-
var
|
|
8662
|
-
return filterAndSortPresets(workspacePresets, selectedFilters, username, isAdmin, labelFilters != null ? labelFilters : undefined, workspaceSearchQuery);
|
|
8663
|
-
}, [workspacePresets, selectedFilters, username, isAdmin, labelFilters, workspaceSearchQuery]);
|
|
8664
|
-
var filteredPresets = filterAndSortFavouritePresets(matchingPresets, favourites.isFavourite, favouritesOnly);
|
|
8692
|
+
var filteredPresets = React.useMemo(function () {
|
|
8693
|
+
return filterAndSortPresets(workspacePresets, selectedFilters, username, isAdmin, labelFilters != null ? labelFilters : undefined, workspaceSearchQuery, favourites.isFavourite);
|
|
8694
|
+
}, [workspacePresets, selectedFilters, username, isAdmin, labelFilters, workspaceSearchQuery, favourites.isFavourite]);
|
|
8665
8695
|
var infoPanelAnchorRef = React.useRef(null);
|
|
8666
8696
|
var _React$useState = React.useState(),
|
|
8667
8697
|
infoPreset = _React$useState[0],
|
|
@@ -8707,9 +8737,10 @@ var WorkspaceSelectListConnect = function WorkspaceSelectListConnect(_ref) {
|
|
|
8707
8737
|
dispatch(workspaceListActions.toggleSelectFilterChip({
|
|
8708
8738
|
id: id,
|
|
8709
8739
|
isSelected: isSelected,
|
|
8710
|
-
isAdmin: isAdmin
|
|
8740
|
+
isAdmin: isAdmin,
|
|
8741
|
+
isFavouritesEnabled: isLoggedIn
|
|
8711
8742
|
}));
|
|
8712
|
-
}, [dispatch, isAdmin]);
|
|
8743
|
+
}, [dispatch, isAdmin, isLoggedIn]);
|
|
8713
8744
|
var setSelectAllFilterChip = React.useCallback(function () {
|
|
8714
8745
|
dispatch(workspaceListActions.setSelectAllFilterChip());
|
|
8715
8746
|
}, [dispatch]);
|
|
@@ -8965,7 +8996,9 @@ var WorkspaceSelectListConnect = function WorkspaceSelectListConnect(_ref) {
|
|
|
8965
8996
|
return _ref2.apply(this, arguments);
|
|
8966
8997
|
};
|
|
8967
8998
|
}();
|
|
8968
|
-
var isAllSelected = workspaceListFilters.length > 0 && workspaceListFilters.
|
|
8999
|
+
var isAllSelected = workspaceListFilters.length > 0 && workspaceListFilters.filter(function (filter) {
|
|
9000
|
+
return isLoggedIn || filter.id !== 'favourites';
|
|
9001
|
+
}).every(function (filter) {
|
|
8969
9002
|
return filter.isSelected;
|
|
8970
9003
|
});
|
|
8971
9004
|
var shouldHideNewWorkspace = !isAllSelected || workspaceSearchQuery.length > 0 || hasActiveLabelFilters;
|
|
@@ -9076,17 +9109,14 @@ var WorkspaceSelectListConnect = function WorkspaceSelectListConnect(_ref) {
|
|
|
9076
9109
|
},
|
|
9077
9110
|
children: jsx(Filter, {
|
|
9078
9111
|
activeLabelFilterCount: activeLabelFilterCount,
|
|
9079
|
-
filters:
|
|
9112
|
+
filters: workspaceListFilters.map(function (filter) {
|
|
9080
9113
|
return Object.assign({}, filter, {
|
|
9081
|
-
|
|
9114
|
+
label: filter.id === 'favourites' ? t('workspace-favourites') : filter.label,
|
|
9115
|
+
isSelected: !isAllSelected && filter.isSelected && (filter.id !== 'favourites' || isLoggedIn),
|
|
9116
|
+
isDisabled: filter.id === 'favourites' ? !isLoggedIn : filter.isDisabled
|
|
9082
9117
|
});
|
|
9083
|
-
}),
|
|
9084
|
-
|
|
9085
|
-
label: t('workspace-favourites'),
|
|
9086
|
-
isSelected: favouritesOnly,
|
|
9087
|
-
isDisabled: !isLoggedIn
|
|
9088
|
-
}]),
|
|
9089
|
-
isAllSelected: isAllSelected ? !favouritesOnly : false,
|
|
9118
|
+
}),
|
|
9119
|
+
isAllSelected: isAllSelected,
|
|
9090
9120
|
isLabelFilterOpen: isLabelFilterOpen,
|
|
9091
9121
|
onClickFilterChip: onClickFilterChip,
|
|
9092
9122
|
onSearch: searchFilter,
|
|
@@ -9118,11 +9148,12 @@ var WorkspaceSelectListConnect = function WorkspaceSelectListConnect(_ref) {
|
|
|
9118
9148
|
children: [jsx(WorkspaceSelectList, {
|
|
9119
9149
|
currentSelectedId: currentView.id || '',
|
|
9120
9150
|
favouritesDisabled: favourites.disabled,
|
|
9121
|
-
hideNewWorkspace: shouldHideNewWorkspace
|
|
9151
|
+
hideNewWorkspace: shouldHideNewWorkspace,
|
|
9122
9152
|
infoOpenPresetId: infoPreset == null ? void 0 : infoPreset.id,
|
|
9123
9153
|
isAdmin: isAdmin,
|
|
9124
9154
|
isEditable: isLoggedIn,
|
|
9125
9155
|
isFavourite: favourites.isFavourite,
|
|
9156
|
+
newPresets: [getEmptyWorkspaceListItem(t), getNewSoundingsWorkspaceListItem(t)],
|
|
9126
9157
|
onClickWorkspacePreset: onClickWorkspacePreset,
|
|
9127
9158
|
onClickWorkspacePresetOption: onClickWorkspacePresetOption,
|
|
9128
9159
|
onOpenPresetInfo: onOpenPresetInfo,
|
|
@@ -9926,7 +9957,9 @@ var WorkspaceTileConnect = /*#__PURE__*/React.memo(function (_ref) {
|
|
|
9926
9957
|
var _sessionStorageProvid;
|
|
9927
9958
|
var hasPluginsConfigured = !!((_sessionStorageProvid = sessionStorageProvider.getConfig()) != null && _sessionStorageProvid.GW_PLUGIN_BACKEND_URL);
|
|
9928
9959
|
if (hasPluginsConfigured) {
|
|
9929
|
-
return
|
|
9960
|
+
return defaultViewPresetsFilters.flatMap(function (filter) {
|
|
9961
|
+
return filter.id === 'favourites' ? [pluginViewPresetsFilter, filter] : [filter];
|
|
9962
|
+
});
|
|
9930
9963
|
}
|
|
9931
9964
|
return defaultViewPresetsFilters;
|
|
9932
9965
|
}, []);
|
|
@@ -10075,6 +10108,8 @@ var WorkspaceTileConnect = /*#__PURE__*/React.memo(function (_ref) {
|
|
|
10075
10108
|
},
|
|
10076
10109
|
isOpen: isViewPresetDialogOpen,
|
|
10077
10110
|
panelId: mosaicNodeId
|
|
10111
|
+
}), jsx(OverlayPluginWindows, {
|
|
10112
|
+
panelId: mosaicNodeId
|
|
10078
10113
|
})]
|
|
10079
10114
|
});
|
|
10080
10115
|
}, isEqual);
|
|
@@ -12001,6 +12036,106 @@ var WorkspaceDetail = function WorkspaceDetail(_ref) {
|
|
|
12001
12036
|
});
|
|
12002
12037
|
};
|
|
12003
12038
|
|
|
12039
|
+
var workspacePresets$1 = [
|
|
12040
|
+
{
|
|
12041
|
+
titleKey: "workspace-new",
|
|
12042
|
+
title: "New workspace",
|
|
12043
|
+
scope: "system",
|
|
12044
|
+
abstract: "",
|
|
12045
|
+
viewType: "singleWindow",
|
|
12046
|
+
mosaicNode: "1_screen",
|
|
12047
|
+
views: {
|
|
12048
|
+
allIds: [
|
|
12049
|
+
"1_screen"
|
|
12050
|
+
],
|
|
12051
|
+
byId: {
|
|
12052
|
+
"1_screen": {
|
|
12053
|
+
titleKey: "workspace-mappreset-new",
|
|
12054
|
+
title: "New map preset",
|
|
12055
|
+
componentType: "Map",
|
|
12056
|
+
initialProps: {
|
|
12057
|
+
mapPreset: {
|
|
12058
|
+
shouldShowLayerManager: true,
|
|
12059
|
+
dockedLayerManagerSize: "sizeSmall"
|
|
12060
|
+
},
|
|
12061
|
+
syncGroupsIds: [
|
|
12062
|
+
]
|
|
12063
|
+
}
|
|
12064
|
+
}
|
|
12065
|
+
}
|
|
12066
|
+
}
|
|
12067
|
+
}
|
|
12068
|
+
];
|
|
12069
|
+
var viewPresets = [
|
|
12070
|
+
{
|
|
12071
|
+
id: "template-map",
|
|
12072
|
+
titleKey: "workspace-template-map",
|
|
12073
|
+
title: "New map preset",
|
|
12074
|
+
componentType: "Map",
|
|
12075
|
+
initialProps: {
|
|
12076
|
+
mapPreset: {
|
|
12077
|
+
shouldShowLayerManager: true,
|
|
12078
|
+
dockedLayerManagerSize: "sizeSmall"
|
|
12079
|
+
},
|
|
12080
|
+
syncGroupsIds: [
|
|
12081
|
+
]
|
|
12082
|
+
}
|
|
12083
|
+
},
|
|
12084
|
+
{
|
|
12085
|
+
id: "template-timeseries",
|
|
12086
|
+
titleKey: "workspace-template-timeseries",
|
|
12087
|
+
title: "New timeseries preset",
|
|
12088
|
+
componentType: "TimeSeries",
|
|
12089
|
+
initialProps: {
|
|
12090
|
+
plotPreset: {
|
|
12091
|
+
mapId: "",
|
|
12092
|
+
plots: [
|
|
12093
|
+
],
|
|
12094
|
+
parameters: [
|
|
12095
|
+
]
|
|
12096
|
+
},
|
|
12097
|
+
services: [
|
|
12098
|
+
],
|
|
12099
|
+
syncGroupsIds: [
|
|
12100
|
+
]
|
|
12101
|
+
}
|
|
12102
|
+
},
|
|
12103
|
+
{
|
|
12104
|
+
id: "template-soundings",
|
|
12105
|
+
titleKey: "workspace-template-soundings",
|
|
12106
|
+
title: "New sounding preset",
|
|
12107
|
+
componentType: "Soundings",
|
|
12108
|
+
initialProps: {
|
|
12109
|
+
selectedSources: {
|
|
12110
|
+
},
|
|
12111
|
+
selectedLocations: {
|
|
12112
|
+
},
|
|
12113
|
+
syncGroupsIds: [
|
|
12114
|
+
]
|
|
12115
|
+
}
|
|
12116
|
+
},
|
|
12117
|
+
{
|
|
12118
|
+
id: "template-warninglist",
|
|
12119
|
+
titleKey: "workspace-template-warninglist",
|
|
12120
|
+
title: "New warninglist preset",
|
|
12121
|
+
componentType: "WarningList",
|
|
12122
|
+
initialProps: {
|
|
12123
|
+
}
|
|
12124
|
+
},
|
|
12125
|
+
{
|
|
12126
|
+
id: "template-timeline",
|
|
12127
|
+
titleKey: "workspace-template-timeline",
|
|
12128
|
+
title: "New timeline preset",
|
|
12129
|
+
componentType: "WarningsTimeline",
|
|
12130
|
+
initialProps: {
|
|
12131
|
+
}
|
|
12132
|
+
}
|
|
12133
|
+
];
|
|
12134
|
+
var templatePresets = {
|
|
12135
|
+
workspacePresets: workspacePresets$1,
|
|
12136
|
+
viewPresets: viewPresets
|
|
12137
|
+
};
|
|
12138
|
+
|
|
12004
12139
|
var workspacePresets = [
|
|
12005
12140
|
{
|
|
12006
12141
|
id: "screenConfigRadarTemp",
|
|
@@ -13297,6 +13432,7 @@ var createUserPreferencesEndpoints = function createUserPreferencesEndpoints() {
|
|
|
13297
13432
|
};
|
|
13298
13433
|
|
|
13299
13434
|
var defaultWorkspacePresets = workspacePresets;
|
|
13435
|
+
var templatePresetsFixture = templatePresets;
|
|
13300
13436
|
// Transforms full workspace presets to list items
|
|
13301
13437
|
var workspacePresetList = defaultWorkspacePresets.map(function (preset) {
|
|
13302
13438
|
var _preset$abstract;
|
|
@@ -13310,7 +13446,9 @@ var workspacePresetList = defaultWorkspacePresets.map(function (preset) {
|
|
|
13310
13446
|
username: preset.username
|
|
13311
13447
|
};
|
|
13312
13448
|
});
|
|
13313
|
-
var workspaceEndpoints = [].concat(createUserPreferencesEndpoints(), [http
|
|
13449
|
+
var workspaceEndpoints = [].concat(createUserPreferencesEndpoints(), [http.get(/\/assets\/templatePresets\.json$/, function () {
|
|
13450
|
+
return HttpResponse.json(templatePresetsFixture);
|
|
13451
|
+
}), http["delete"](/^.*\/workspacepreset\/(.*)$/, /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
|
|
13314
13452
|
return _regenerator().w(function (_context) {
|
|
13315
13453
|
while (1) switch (_context.n) {
|
|
13316
13454
|
case 0:
|
|
@@ -13396,4 +13534,4 @@ var workspaceEndpoints = [].concat(createUserPreferencesEndpoints(), [http["dele
|
|
|
13396
13534
|
}, _callee6);
|
|
13397
13535
|
})))]);
|
|
13398
13536
|
|
|
13399
|
-
export { ALL_COMPONENT_TYPES, AVIATION_COMPONENT_TYPES, CAP_COMPONENT_TYPES, ComponentsLookUpWrapper, DemoWrapper, PresetAction, SUPPORTED_COMPONENT_TYPES, SUPPORTED_TIMESERIES_COMPONENT_TYPES, ViewPresetErrorComponent, ViewPresetErrorType, WARNING_LIST_COMPONENT_TYPES, WORKSPACE_NAMESPACE, WorkspaceDetail, WorkspaceErrorType, WorkspaceI18nProvider, WorkspacePresetAction, WorkspaceStoreWrapper, WorkspaceThemeProvider, WorkspaceTopBar, WorkspaceViewConnect, WorkspaceWrapperProviderWithStore, createBalancedMosaicNode, createCustomEmptyMapWorkspace, defaultAuthConfig, defaultViewPresetsFilters, getEmptyMapWorkspace, getWorkspaceRouteUrl, selectors$1 as selectors, viewPresetActions, viewPresetsListener, viewPresetsReducer, workspaceActions, workspaceEndpoints, workspaceListActions, workspaceListListener, workspaceListReducer, workspaceListener, workspaceMiddlewares, workspaceReducer, workspaceReducersMap, routes as workspaceRoutes, workspaceTranslations };
|
|
13537
|
+
export { ALL_COMPONENT_TYPES, AVIATION_COMPONENT_TYPES, CAP_COMPONENT_TYPES, ComponentsLookUpWrapper, DemoWrapper, PresetAction, SUPPORTED_COMPONENT_TYPES, SUPPORTED_TIMESERIES_COMPONENT_TYPES, ViewPresetErrorComponent, ViewPresetErrorType, WARNING_LIST_COMPONENT_TYPES, WORKSPACE_NAMESPACE, WorkspaceDetail, WorkspaceErrorType, WorkspaceI18nProvider, WorkspacePresetAction, WorkspaceStoreWrapper, WorkspaceThemeProvider, WorkspaceTopBar, WorkspaceViewConnect, WorkspaceWrapperProviderWithStore, createBalancedMosaicNode, createCustomEmptyMapWorkspace, defaultAuthConfig, defaultViewPresetsFilters, getEmptyMapWorkspace, getWorkspaceRouteUrl, selectors$1 as selectors, templatePresetsFixture, viewPresetActions, viewPresetsListener, viewPresetsReducer, workspaceActions, workspaceEndpoints, workspaceListActions, workspaceListListener, workspaceListReducer, workspaceListener, workspaceMiddlewares, workspaceReducer, workspaceReducersMap, routes as workspaceRoutes, workspaceTranslations };
|