@opengeoweb/workspace 12.1.2 → 12.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. package/index.esm.js +854 -613
  2. package/package.json +19 -19
  3. package/src/lib/api/viewpresets-api/api.d.ts +4 -0
  4. package/src/lib/api/workspace-api/api.d.ts +3 -3
  5. package/src/lib/api/workspace-api/hooks.d.ts +2 -2
  6. package/src/lib/components/ViewPresetsFormDialog/ViewPresetsFormDialogConnect.d.ts +2 -2
  7. package/src/lib/components/WorkspacePresetsFormDialog/WorkspacePresetsForm.d.ts +2 -2
  8. package/src/lib/components/WorkspacePresetsFormDialog/WorkspacePresetsFormDialog.d.ts +2 -2
  9. package/src/lib/components/WorkspaceSelectList/WorkspaceSelectList.d.ts +2 -2
  10. package/src/lib/components/WorkspaceView/WorkspaceTileConnect.d.ts +1 -1
  11. package/src/lib/components/WorkspaceView/helpers.d.ts +2 -2
  12. package/src/lib/hooks/useFetchViewPresets.d.ts +1 -0
  13. package/src/lib/store/store.d.ts +11 -11
  14. package/src/lib/store/viewPresets/listener.d.ts +4 -4
  15. package/src/lib/store/viewPresets/reducer.d.ts +1 -1
  16. package/src/lib/store/viewPresets/selectors.d.ts +511 -35
  17. package/src/lib/store/viewPresets/types.d.ts +12 -9
  18. package/src/lib/store/viewPresets/utils.d.ts +1 -1
  19. package/src/lib/store/viewPresetsList/reducer.d.ts +1 -1
  20. package/src/lib/store/viewPresetsList/selectors.d.ts +177 -4
  21. package/src/lib/store/viewPresetsList/types.d.ts +4 -3
  22. package/src/lib/store/workspace/listener.d.ts +3 -3
  23. package/src/lib/store/workspace/selectors.d.ts +1788 -68
  24. package/src/lib/store/workspace/types.d.ts +19 -9
  25. package/src/lib/store/workspace/utils.d.ts +2 -2
  26. package/src/lib/store/workspaceList/listener.d.ts +3 -3
  27. package/src/lib/store/workspaceList/reducer.d.ts +21 -3
  28. package/src/lib/store/workspaceList/selectors.d.ts +310 -76
  29. package/src/lib/store/workspaceList/types.d.ts +12 -11
  30. package/src/lib/store/workspaceList/utils.d.ts +4 -4
  31. package/src/lib/utils/api.d.ts +3 -3
  32. package/src/lib/utils/utils.d.ts +3 -2
@@ -1,5 +1,5 @@
1
1
  /// <reference types="react" />
2
- import { PresetScope, SystemScope } from '@opengeoweb/shared';
2
+ import { SystemScope } from '@opengeoweb/shared';
3
3
  import { syncGroupsTypes } from '@opengeoweb/store';
4
4
  import { MosaicNode } from 'react-mosaic-component';
5
5
  export type InitialPropsWorkspaceViewType = Record<string, unknown>;
@@ -12,7 +12,7 @@ export interface WorkspaceViewType {
12
12
  initialProps?: InitialPropsWorkspaceViewType;
13
13
  activeLayerId?: string;
14
14
  shouldPreventClose?: boolean;
15
- scope?: PresetScope;
15
+ scope?: SystemScope;
16
16
  keywords?: string;
17
17
  }
18
18
  export interface WorkspaceViews {
@@ -38,16 +38,17 @@ export interface WorkspacePreset {
38
38
  viewType?: ViewType;
39
39
  mosaicNode: MosaicNode<string>;
40
40
  minimumPaneSizePercentage?: number;
41
- scope?: PresetScope;
41
+ scope?: SystemScope;
42
42
  abstract?: string;
43
43
  linking?: Record<string, string[]>;
44
+ username?: string;
44
45
  }
45
46
  export interface WorkspaceState extends WorkspacePreset {
46
47
  isLoading?: boolean;
47
48
  error?: WorkspaceError;
48
49
  hasChanges?: boolean;
49
50
  }
50
- export interface WorkspacePresetFromBE {
51
+ export interface WorkspacePresetForBE {
51
52
  id?: string;
52
53
  title: string;
53
54
  syncGroups?: WorkspaceSyncGroup[];
@@ -55,16 +56,22 @@ export interface WorkspacePresetFromBE {
55
56
  views: WorkspaceViewsFromBE[];
56
57
  viewType?: ViewType;
57
58
  mosaicNode: MosaicNode<string>;
58
- scope?: PresetScope;
59
+ scope?: SystemScope;
59
60
  is_shared?: boolean;
60
61
  username?: string;
61
62
  abstract?: string;
62
63
  }
64
+ export interface WorkspacePresetFromBE extends WorkspacePresetForBE {
65
+ id: string;
66
+ viewType: ViewType;
67
+ scope: SystemScope;
68
+ username: string;
69
+ }
63
70
  export interface WorkspacePresetListItem {
64
71
  id: string;
65
72
  date?: string;
66
73
  title: string;
67
- scope?: SystemScope;
74
+ scope: SystemScope;
68
75
  viewType: ViewType;
69
76
  abstract: string;
70
77
  username?: string;
@@ -125,21 +132,24 @@ export interface ViewPresetListItem {
125
132
  id: string;
126
133
  title: string;
127
134
  date: string;
128
- scope: PresetScope;
135
+ scope: SystemScope;
136
+ abstract?: string;
137
+ is_shared?: boolean;
138
+ username?: string;
129
139
  }
130
140
  export interface WorkspaceFetchWorkspacePayload {
131
141
  workspaceId: string;
132
142
  }
133
143
  export interface WorkspaceFetchedWorkspacePayload {
134
144
  workspaceId: string;
135
- workspace: WorkspacePresetFromBE;
145
+ workspace: WorkspacePresetForBE;
136
146
  }
137
147
  export interface WorkspaceFetchWorkspaceViewPresetPayload {
138
148
  viewPresetId: string;
139
149
  mosaicNodeId: string;
140
150
  }
141
151
  export interface WorkspaceSaveWorkspacePresetPayload {
142
- workspace: WorkspacePresetFromBE;
152
+ workspace: WorkspacePresetForBE;
143
153
  }
144
154
  export declare enum WorkspaceErrorType {
145
155
  NOT_FOUND = "NOT_FOUND",
@@ -2,7 +2,7 @@ import { syncGroupsTypes } from '@opengeoweb/store';
2
2
  import { MosaicNode } from 'react-mosaic-component';
3
3
  import { AxiosError } from 'axios';
4
4
  import { PresetsApi } from '../../utils/api';
5
- import { WorkspacePreset, WorkspacePresetFromBE, WorkspaceViewsFromBE, ViewType, WorkspaceViewPresetComponentsLookupType, WorkspaceSyncGroup } from './types';
5
+ import { WorkspacePreset, WorkspacePresetForBE, WorkspaceViewsFromBE, ViewType, WorkspaceViewPresetComponentsLookupType, WorkspaceSyncGroup } from './types';
6
6
  export declare const getWorkspaceApi: () => PresetsApi;
7
7
  export declare const getViewPresetState: (viewPresetId: string, mosaicNodeId: string, state: 'loading' | 'error') => {
8
8
  title: string;
@@ -10,7 +10,7 @@ export declare const getViewPresetState: (viewPresetId: string, mosaicNodeId: st
10
10
  mosaicNodeId: string;
11
11
  componentType: WorkspaceViewPresetComponentsLookupType;
12
12
  };
13
- export declare const getLoadingWorkspace: (workspacePreset: WorkspacePresetFromBE) => WorkspacePreset;
13
+ export declare const getLoadingWorkspace: (workspacePreset: WorkspacePresetForBE) => WorkspacePreset;
14
14
  export declare const getListInChunks: (views: WorkspaceViewsFromBE[]) => WorkspaceViewsFromBE[][];
15
15
  export declare const defaultSyncGroups: {
16
16
  groupId: string;
@@ -1,4 +1,4 @@
1
- import { WorkspacePresetFromBE } from '../workspace/types';
2
1
  import { WorkspaceModuleStore } from '../types';
3
- export declare const emptyWorkspaceBEData: Omit<WorkspacePresetFromBE, 'title'>;
4
- export declare const workspaceListListener: import("@reduxjs/toolkit").ListenerMiddlewareInstance<WorkspaceModuleStore, import("@reduxjs/toolkit").ThunkDispatch<WorkspaceModuleStore, unknown, import("redux").AnyAction>, unknown>;
2
+ import { WorkspacePresetForBE } from '../workspace/types';
3
+ export declare const emptyWorkspaceBEData: Omit<WorkspacePresetForBE, 'title'>;
4
+ export declare const workspaceListListener: import("@reduxjs/toolkit").ListenerMiddlewareInstance<WorkspaceModuleStore, import("redux-thunk").ThunkDispatch<WorkspaceModuleStore, unknown, import("redux").UnknownAction>, unknown>;
@@ -1,8 +1,26 @@
1
1
  import { Draft, PayloadAction } from '@reduxjs/toolkit';
2
2
  import { WorkspacePresetListItem } from '../workspace/types';
3
- import { ErrorWorkspaceList, FetchedWorkspaceList, FetchWorkspaceList, OnErrorWorkspacePresetActionPayload, OnSuccesWorkspacePresetActionPayload, OpenWorkspaceActionDialogPayload, SearchWorkspaceFilter, SubmitFormWorkspaceActionDialogPayload, ToggleListDialogPayload, ToggleSelectFilterChip, WorkspaceListFilter, WorkspaceListState } from './types';
4
- export declare const workspaceListFilterOptions: WorkspaceListFilter[];
5
- export declare const workspaceListAdapter: import("@reduxjs/toolkit").EntityAdapter<WorkspacePresetListItem>;
3
+ import { ErrorWorkspaceList, FetchedWorkspaceList, FetchWorkspaceList, OnErrorWorkspacePresetActionPayload, OnSuccesWorkspacePresetActionPayload, OpenWorkspaceActionDialogPayload, PresetFilterType, SearchWorkspaceFilter, SubmitFormWorkspaceActionDialogPayload, ToggleListDialogPayload, ToggleSelectFilterChip, WorkspaceListFilter, WorkspaceListState } from './types';
4
+ export declare const personalFilterState: {
5
+ label: string;
6
+ id: PresetFilterType;
7
+ isSelected: boolean;
8
+ isDisabled: boolean;
9
+ };
10
+ export declare const systemFilterState: {
11
+ label: string;
12
+ id: PresetFilterType;
13
+ isSelected: boolean;
14
+ isDisabled: boolean;
15
+ };
16
+ export declare const sharedFilterState: {
17
+ label: string;
18
+ id: PresetFilterType;
19
+ isSelected: boolean;
20
+ isDisabled: boolean;
21
+ };
22
+ export declare const defaultPresetFilterState: WorkspaceListFilter[];
23
+ export declare const workspaceListAdapter: import("@reduxjs/toolkit").EntityAdapter<WorkspacePresetListItem, string>;
6
24
  export declare const initialState: WorkspaceListState;
7
25
  export declare const workspaceListReducer: import("redux").Reducer<WorkspaceListState>, workspaceListActions: import("@reduxjs/toolkit").CaseReducerActions<{
8
26
  fetchWorkspaceList: (draft: Draft<WorkspaceListState>, action: PayloadAction<FetchWorkspaceList>) => void;
@@ -1,29 +1,93 @@
1
- import { PresetScope } from '@opengeoweb/shared';
1
+ import { SystemScope } from '@opengeoweb/shared';
2
2
  import { AppStore } from '../types';
3
3
  import { ViewPresetState } from '../viewPresets/types';
4
4
  import { WorkspaceState } from '../workspace/types';
5
5
  import { WorkspaceListFilter, WorkspaceListState } from './types';
6
6
  export declare const getWorkspaceListStore: (store: AppStore) => WorkspaceListState;
7
7
  export declare const getWorkspaceList: (state: AppStore) => import("../workspace/types").WorkspacePresetListItem[];
8
- export declare const getIsWorkspaceListFetching: ((state: AppStore) => boolean) & import("reselect").OutputSelectorFields<(args_0: WorkspaceListState, args_1: AppStore) => boolean, {
9
- clearCache: () => void;
10
- }> & {
8
+ export declare const getIsWorkspaceListFetching: ((state: AppStore) => boolean) & {
11
9
  clearCache: () => void;
10
+ resultsCount: () => number;
11
+ resetResultsCount: () => void;
12
+ } & {
13
+ resultFunc: (resultFuncArgs_0: WorkspaceListState, resultFuncArgs_1: AppStore) => boolean;
14
+ memoizedResultFunc: ((resultFuncArgs_0: WorkspaceListState, resultFuncArgs_1: AppStore) => boolean) & {
15
+ clearCache: () => void;
16
+ resultsCount: () => number;
17
+ resetResultsCount: () => void;
18
+ };
19
+ lastResult: () => boolean;
20
+ dependencies: [(store: AppStore) => WorkspaceListState, (store: AppStore) => AppStore];
21
+ recomputations: () => number;
22
+ resetRecomputations: () => void;
23
+ dependencyRecomputations: () => number;
24
+ resetDependencyRecomputations: () => void;
25
+ } & {
26
+ memoize: typeof import("reselect").weakMapMemoize;
27
+ argsMemoize: typeof import("reselect").weakMapMemoize;
12
28
  };
13
- export declare const getWorkspaceDialogIsSaved: ((state: AppStore) => boolean) & import("reselect").OutputSelectorFields<(args_0: WorkspaceListState, args_1: AppStore) => boolean, {
14
- clearCache: () => void;
15
- }> & {
29
+ export declare const getWorkspaceDialogIsSaved: ((state: AppStore) => boolean) & {
16
30
  clearCache: () => void;
31
+ resultsCount: () => number;
32
+ resetResultsCount: () => void;
33
+ } & {
34
+ resultFunc: (resultFuncArgs_0: WorkspaceListState, resultFuncArgs_1: AppStore) => boolean;
35
+ memoizedResultFunc: ((resultFuncArgs_0: WorkspaceListState, resultFuncArgs_1: AppStore) => boolean) & {
36
+ clearCache: () => void;
37
+ resultsCount: () => number;
38
+ resetResultsCount: () => void;
39
+ };
40
+ lastResult: () => boolean;
41
+ dependencies: [(store: AppStore) => WorkspaceListState, (store: AppStore) => AppStore];
42
+ recomputations: () => number;
43
+ resetRecomputations: () => void;
44
+ dependencyRecomputations: () => number;
45
+ resetDependencyRecomputations: () => void;
46
+ } & {
47
+ memoize: typeof import("reselect").weakMapMemoize;
48
+ argsMemoize: typeof import("reselect").weakMapMemoize;
17
49
  };
18
- export declare const getWorkspaceListError: ((state: AppStore) => import("./types").TranslatableWorkspaceListError | import("./types").VerbatimWorkspaceListError | undefined) & import("reselect").OutputSelectorFields<(args_0: WorkspaceListState, args_1: AppStore) => import("./types").TranslatableWorkspaceListError | import("./types").VerbatimWorkspaceListError | undefined, {
19
- clearCache: () => void;
20
- }> & {
50
+ export declare const getWorkspaceListError: ((state: AppStore) => import("./types").TranslatableWorkspaceListError | import("./types").VerbatimWorkspaceListError | undefined) & {
21
51
  clearCache: () => void;
52
+ resultsCount: () => number;
53
+ resetResultsCount: () => void;
54
+ } & {
55
+ resultFunc: (resultFuncArgs_0: WorkspaceListState, resultFuncArgs_1: AppStore) => import("./types").TranslatableWorkspaceListError | import("./types").VerbatimWorkspaceListError | undefined;
56
+ memoizedResultFunc: ((resultFuncArgs_0: WorkspaceListState, resultFuncArgs_1: AppStore) => import("./types").TranslatableWorkspaceListError | import("./types").VerbatimWorkspaceListError | undefined) & {
57
+ clearCache: () => void;
58
+ resultsCount: () => number;
59
+ resetResultsCount: () => void;
60
+ };
61
+ lastResult: () => import("./types").TranslatableWorkspaceListError | import("./types").VerbatimWorkspaceListError | undefined;
62
+ dependencies: [(store: AppStore) => WorkspaceListState, (store: AppStore) => AppStore];
63
+ recomputations: () => number;
64
+ resetRecomputations: () => void;
65
+ dependencyRecomputations: () => number;
66
+ resetDependencyRecomputations: () => void;
67
+ } & {
68
+ memoize: typeof import("reselect").weakMapMemoize;
69
+ argsMemoize: typeof import("reselect").weakMapMemoize;
22
70
  };
23
- export declare const getWorkspaceActionFormValues: ((state: AppStore) => import("./types").WorkspacePresetFormValues) & import("reselect").OutputSelectorFields<(args_0: WorkspaceListState) => import("./types").WorkspacePresetFormValues, {
24
- clearCache: () => void;
25
- }> & {
71
+ export declare const getWorkspaceActionFormValues: ((state: AppStore) => import("./types").WorkspacePresetFormValues) & {
26
72
  clearCache: () => void;
73
+ resultsCount: () => number;
74
+ resetResultsCount: () => void;
75
+ } & {
76
+ resultFunc: (resultFuncArgs_0: WorkspaceListState) => import("./types").WorkspacePresetFormValues;
77
+ memoizedResultFunc: ((resultFuncArgs_0: WorkspaceListState) => import("./types").WorkspacePresetFormValues) & {
78
+ clearCache: () => void;
79
+ resultsCount: () => number;
80
+ resetResultsCount: () => void;
81
+ };
82
+ lastResult: () => import("./types").WorkspacePresetFormValues;
83
+ dependencies: [(store: AppStore) => WorkspaceListState];
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;
27
91
  };
28
92
  export declare const getWorkspaceActionDialogDetails: ((state: AppStore) => false | {
29
93
  formValues: {
@@ -33,57 +97,14 @@ export declare const getWorkspaceActionDialogDetails: ((state: AppStore) => fals
33
97
  isSelected: boolean;
34
98
  title: string | undefined;
35
99
  error: import("../viewPresets/types").ViewPresetError;
36
- isFetching: boolean | undefined;
37
- hasChanges: boolean | undefined;
38
- scope: PresetScope;
39
- }[];
40
- id?: string | undefined;
41
- title?: string | undefined;
42
- abstract?: string | undefined;
43
- scope?: PresetScope | undefined;
44
- } | {
45
- views: {
46
- mosaicNodeId: string;
47
- viewPresetId: string;
48
- isSelected: boolean;
49
- title: string | undefined;
50
- error: import("../viewPresets/types").ViewPresetError;
51
- isFetching: boolean | undefined;
52
- hasChanges: boolean | undefined;
53
- scope: PresetScope;
54
- }[];
55
- id?: string | undefined;
56
- title: string;
57
- syncGroups?: import("../workspace/types").WorkspaceSyncGroup[] | undefined;
58
- linking?: Record<string, string[]> | undefined;
59
- viewType?: import("../workspace/types").ViewType | undefined;
60
- mosaicNode: import("react-mosaic-component").MosaicNode<string>;
61
- scope?: PresetScope | undefined;
62
- is_shared?: boolean | undefined;
63
- username?: string | undefined;
64
- abstract?: string | undefined;
65
- };
66
- action: import("../workspace/types").WorkspacePresetAction;
67
- presetId: string;
68
- error?: import("./types").WorkspaceListError;
69
- isFetching?: boolean | undefined;
70
- hasSaved?: boolean | undefined;
71
- }) & import("reselect").OutputSelectorFields<(args_0: WorkspaceListState, args_1: WorkspaceState, args_2: ViewPresetState) => false | {
72
- formValues: {
73
- views: {
74
- mosaicNodeId: string;
75
- viewPresetId: string;
76
- isSelected: boolean;
77
- title: string | undefined;
78
- error: import("../viewPresets/types").ViewPresetError;
79
- isFetching: boolean | undefined;
80
- hasChanges: boolean | undefined;
81
- scope: PresetScope;
100
+ isFetching: boolean;
101
+ hasChanges: boolean;
102
+ scope: SystemScope;
82
103
  }[];
83
104
  id?: string | undefined;
84
105
  title?: string | undefined;
85
106
  abstract?: string | undefined;
86
- scope?: PresetScope | undefined;
107
+ scope?: SystemScope | undefined;
87
108
  } | {
88
109
  views: {
89
110
  mosaicNodeId: string;
@@ -91,9 +112,9 @@ export declare const getWorkspaceActionDialogDetails: ((state: AppStore) => fals
91
112
  isSelected: boolean;
92
113
  title: string | undefined;
93
114
  error: import("../viewPresets/types").ViewPresetError;
94
- isFetching: boolean | undefined;
95
- hasChanges: boolean | undefined;
96
- scope: PresetScope;
115
+ isFetching: boolean;
116
+ hasChanges: boolean;
117
+ scope: SystemScope;
97
118
  }[];
98
119
  id?: string | undefined;
99
120
  title: string;
@@ -101,7 +122,7 @@ export declare const getWorkspaceActionDialogDetails: ((state: AppStore) => fals
101
122
  linking?: Record<string, string[]> | undefined;
102
123
  viewType?: import("../workspace/types").ViewType | undefined;
103
124
  mosaicNode: import("react-mosaic-component").MosaicNode<string>;
104
- scope?: PresetScope | undefined;
125
+ scope?: SystemScope | undefined;
105
126
  is_shared?: boolean | undefined;
106
127
  username?: string | undefined;
107
128
  abstract?: string | undefined;
@@ -111,23 +132,236 @@ export declare const getWorkspaceActionDialogDetails: ((state: AppStore) => fals
111
132
  error?: import("./types").WorkspaceListError;
112
133
  isFetching?: boolean | undefined;
113
134
  hasSaved?: boolean | undefined;
114
- }, {
115
- clearCache: () => void;
116
- }> & {
135
+ }) & {
117
136
  clearCache: () => void;
137
+ resultsCount: () => number;
138
+ resetResultsCount: () => void;
139
+ } & {
140
+ resultFunc: (resultFuncArgs_0: WorkspaceListState, resultFuncArgs_1: WorkspaceState, resultFuncArgs_2: ViewPresetState) => false | {
141
+ formValues: {
142
+ views: {
143
+ mosaicNodeId: string;
144
+ viewPresetId: string;
145
+ isSelected: boolean;
146
+ title: string | undefined;
147
+ error: import("../viewPresets/types").ViewPresetError;
148
+ isFetching: boolean;
149
+ hasChanges: boolean;
150
+ scope: SystemScope;
151
+ }[];
152
+ id?: string | undefined;
153
+ title?: string | undefined;
154
+ abstract?: string | undefined;
155
+ scope?: SystemScope | undefined;
156
+ } | {
157
+ views: {
158
+ mosaicNodeId: string;
159
+ viewPresetId: string;
160
+ isSelected: boolean;
161
+ title: string | undefined;
162
+ error: import("../viewPresets/types").ViewPresetError;
163
+ isFetching: boolean;
164
+ hasChanges: boolean;
165
+ scope: SystemScope;
166
+ }[];
167
+ id?: string | undefined;
168
+ title: string;
169
+ syncGroups?: import("../workspace/types").WorkspaceSyncGroup[] | undefined;
170
+ linking?: Record<string, string[]> | undefined;
171
+ viewType?: import("../workspace/types").ViewType | undefined;
172
+ mosaicNode: import("react-mosaic-component").MosaicNode<string>;
173
+ scope?: SystemScope | undefined;
174
+ is_shared?: boolean | undefined;
175
+ username?: string | undefined;
176
+ abstract?: string | undefined;
177
+ };
178
+ action: import("../workspace/types").WorkspacePresetAction;
179
+ presetId: string;
180
+ error?: import("./types").WorkspaceListError;
181
+ isFetching?: boolean | undefined;
182
+ hasSaved?: boolean | undefined;
183
+ };
184
+ memoizedResultFunc: ((resultFuncArgs_0: WorkspaceListState, resultFuncArgs_1: WorkspaceState, resultFuncArgs_2: ViewPresetState) => false | {
185
+ formValues: {
186
+ views: {
187
+ mosaicNodeId: string;
188
+ viewPresetId: string;
189
+ isSelected: boolean;
190
+ title: string | undefined;
191
+ error: import("../viewPresets/types").ViewPresetError;
192
+ isFetching: boolean;
193
+ hasChanges: boolean;
194
+ scope: SystemScope;
195
+ }[];
196
+ id?: string | undefined;
197
+ title?: string | undefined;
198
+ abstract?: string | undefined;
199
+ scope?: SystemScope | undefined;
200
+ } | {
201
+ views: {
202
+ mosaicNodeId: string;
203
+ viewPresetId: string;
204
+ isSelected: boolean;
205
+ title: string | undefined;
206
+ error: import("../viewPresets/types").ViewPresetError;
207
+ isFetching: boolean;
208
+ hasChanges: boolean;
209
+ scope: SystemScope;
210
+ }[];
211
+ id?: string | undefined;
212
+ title: string;
213
+ syncGroups?: import("../workspace/types").WorkspaceSyncGroup[] | undefined;
214
+ linking?: Record<string, string[]> | undefined;
215
+ viewType?: import("../workspace/types").ViewType | undefined;
216
+ mosaicNode: import("react-mosaic-component").MosaicNode<string>;
217
+ scope?: SystemScope | undefined;
218
+ is_shared?: boolean | undefined;
219
+ username?: string | undefined;
220
+ abstract?: string | undefined;
221
+ };
222
+ action: import("../workspace/types").WorkspacePresetAction;
223
+ presetId: string;
224
+ error?: import("./types").WorkspaceListError;
225
+ isFetching?: boolean | undefined;
226
+ hasSaved?: boolean | undefined;
227
+ }) & {
228
+ clearCache: () => void;
229
+ resultsCount: () => number;
230
+ resetResultsCount: () => void;
231
+ };
232
+ lastResult: () => false | {
233
+ formValues: {
234
+ views: {
235
+ mosaicNodeId: string;
236
+ viewPresetId: string;
237
+ isSelected: boolean;
238
+ title: string | undefined;
239
+ error: import("../viewPresets/types").ViewPresetError;
240
+ isFetching: boolean;
241
+ hasChanges: boolean;
242
+ scope: SystemScope;
243
+ }[];
244
+ id?: string | undefined;
245
+ title?: string | undefined;
246
+ abstract?: string | undefined;
247
+ scope?: SystemScope | undefined;
248
+ } | {
249
+ views: {
250
+ mosaicNodeId: string;
251
+ viewPresetId: string;
252
+ isSelected: boolean;
253
+ title: string | undefined;
254
+ error: import("../viewPresets/types").ViewPresetError;
255
+ isFetching: boolean;
256
+ hasChanges: boolean;
257
+ scope: SystemScope;
258
+ }[];
259
+ id?: string | undefined;
260
+ title: string;
261
+ syncGroups?: import("../workspace/types").WorkspaceSyncGroup[] | undefined;
262
+ linking?: Record<string, string[]> | undefined;
263
+ viewType?: import("../workspace/types").ViewType | undefined;
264
+ mosaicNode: import("react-mosaic-component").MosaicNode<string>;
265
+ scope?: SystemScope | undefined;
266
+ is_shared?: boolean | undefined;
267
+ username?: string | undefined;
268
+ abstract?: string | undefined;
269
+ };
270
+ action: import("../workspace/types").WorkspacePresetAction;
271
+ presetId: string;
272
+ error?: import("./types").WorkspaceListError;
273
+ isFetching?: boolean | undefined;
274
+ hasSaved?: boolean | undefined;
275
+ };
276
+ dependencies: [(store: AppStore) => WorkspaceListState, ((state: AppStore) => WorkspaceState) & {
277
+ clearCache: () => void;
278
+ resultsCount: () => number;
279
+ resetResultsCount: () => void;
280
+ } & {
281
+ resultFunc: (resultFuncArgs_0: WorkspaceState) => WorkspaceState;
282
+ memoizedResultFunc: ((resultFuncArgs_0: WorkspaceState) => WorkspaceState) & {
283
+ clearCache: () => void;
284
+ resultsCount: () => number;
285
+ resetResultsCount: () => void;
286
+ };
287
+ lastResult: () => WorkspaceState;
288
+ dependencies: [(store: AppStore) => WorkspaceState];
289
+ recomputations: () => number;
290
+ resetRecomputations: () => void;
291
+ dependencyRecomputations: () => number;
292
+ resetDependencyRecomputations: () => void;
293
+ } & {
294
+ memoize: typeof import("reselect").weakMapMemoize;
295
+ argsMemoize: typeof import("reselect").weakMapMemoize;
296
+ }, (store: AppStore) => ViewPresetState];
297
+ recomputations: () => number;
298
+ resetRecomputations: () => void;
299
+ dependencyRecomputations: () => number;
300
+ resetDependencyRecomputations: () => void;
301
+ } & {
302
+ memoize: typeof import("reselect").weakMapMemoize;
303
+ argsMemoize: typeof import("reselect").weakMapMemoize;
118
304
  };
119
- export declare const getIsWorkspaceListDialogOpen: ((state: AppStore) => boolean) & import("reselect").OutputSelectorFields<(args_0: WorkspaceListState, args_1: AppStore) => boolean, {
120
- clearCache: () => void;
121
- }> & {
305
+ export declare const getIsWorkspaceListDialogOpen: ((state: AppStore) => boolean) & {
122
306
  clearCache: () => void;
307
+ resultsCount: () => number;
308
+ resetResultsCount: () => void;
309
+ } & {
310
+ resultFunc: (resultFuncArgs_0: WorkspaceListState, resultFuncArgs_1: AppStore) => boolean;
311
+ memoizedResultFunc: ((resultFuncArgs_0: WorkspaceListState, resultFuncArgs_1: AppStore) => boolean) & {
312
+ clearCache: () => void;
313
+ resultsCount: () => number;
314
+ resetResultsCount: () => void;
315
+ };
316
+ lastResult: () => boolean;
317
+ dependencies: [(store: AppStore) => WorkspaceListState, (store: AppStore) => AppStore];
318
+ recomputations: () => number;
319
+ resetRecomputations: () => void;
320
+ dependencyRecomputations: () => number;
321
+ resetDependencyRecomputations: () => void;
322
+ } & {
323
+ memoize: typeof import("reselect").weakMapMemoize;
324
+ argsMemoize: typeof import("reselect").weakMapMemoize;
123
325
  };
124
- export declare const getWorkspaceListFilters: ((state: AppStore, scope?: PresetScope | undefined) => WorkspaceListFilter[]) & import("reselect").OutputSelectorFields<(args_0: WorkspaceListState, args_1: PresetScope | undefined) => WorkspaceListFilter[], {
125
- clearCache: () => void;
126
- }> & {
326
+ export declare const getWorkspaceListFilters: ((state: AppStore, scope?: SystemScope | undefined) => WorkspaceListFilter[]) & {
127
327
  clearCache: () => void;
328
+ resultsCount: () => number;
329
+ resetResultsCount: () => void;
330
+ } & {
331
+ resultFunc: (resultFuncArgs_0: WorkspaceListState, resultFuncArgs_1: SystemScope | undefined) => WorkspaceListFilter[];
332
+ memoizedResultFunc: ((resultFuncArgs_0: WorkspaceListState, resultFuncArgs_1: SystemScope | undefined) => WorkspaceListFilter[]) & {
333
+ clearCache: () => void;
334
+ resultsCount: () => number;
335
+ resetResultsCount: () => void;
336
+ };
337
+ lastResult: () => WorkspaceListFilter[];
338
+ dependencies: [(store: AppStore) => WorkspaceListState, (_store: AppStore, scope?: SystemScope) => SystemScope | undefined];
339
+ recomputations: () => number;
340
+ resetRecomputations: () => void;
341
+ dependencyRecomputations: () => number;
342
+ resetDependencyRecomputations: () => void;
343
+ } & {
344
+ memoize: typeof import("reselect").weakMapMemoize;
345
+ argsMemoize: typeof import("reselect").weakMapMemoize;
128
346
  };
129
- export declare const getWorkspaceListSearchQuery: ((state: AppStore) => string) & import("reselect").OutputSelectorFields<(args_0: WorkspaceListState, args_1: AppStore) => string, {
130
- clearCache: () => void;
131
- }> & {
347
+ export declare const getWorkspaceListSearchQuery: ((state: AppStore) => string) & {
132
348
  clearCache: () => void;
349
+ resultsCount: () => number;
350
+ resetResultsCount: () => void;
351
+ } & {
352
+ resultFunc: (resultFuncArgs_0: WorkspaceListState, resultFuncArgs_1: AppStore) => string;
353
+ memoizedResultFunc: ((resultFuncArgs_0: WorkspaceListState, resultFuncArgs_1: AppStore) => string) & {
354
+ clearCache: () => void;
355
+ resultsCount: () => number;
356
+ resetResultsCount: () => void;
357
+ };
358
+ lastResult: () => string;
359
+ dependencies: [(store: AppStore) => WorkspaceListState, (store: AppStore) => AppStore];
360
+ recomputations: () => number;
361
+ resetRecomputations: () => void;
362
+ dependencyRecomputations: () => number;
363
+ resetDependencyRecomputations: () => void;
364
+ } & {
365
+ memoize: typeof import("reselect").weakMapMemoize;
366
+ argsMemoize: typeof import("reselect").weakMapMemoize;
133
367
  };
@@ -1,7 +1,7 @@
1
- import { PresetScope } from '@opengeoweb/shared';
1
+ import { SystemScope } from '@opengeoweb/shared';
2
2
  import { EntityState } from '@reduxjs/toolkit';
3
- import { ViewPresetError } from '../viewPresets/types';
4
- import { WorkspacePresetAction, WorkspacePresetFromBE, WorkspacePresetListItem, WorkspaceViewsFromBE } from '../workspace/types';
3
+ import { type ViewPresetError } from '../viewPresets/types';
4
+ import { WorkspacePresetAction, WorkspacePresetForBE, WorkspacePresetListItem, WorkspaceViewsFromBE } from '../workspace/types';
5
5
  export declare enum WorkspaceListErrorCategory {
6
6
  AUTH = "AUTH",// Errors related to authentication and authorization
7
7
  GENERIC = "GENERIC"
@@ -29,7 +29,7 @@ export interface VerbatimWorkspaceListError {
29
29
  }
30
30
  export interface WorkspaceListFilter {
31
31
  label: string;
32
- id: string;
32
+ id: PresetFilterType;
33
33
  isSelected?: boolean;
34
34
  isDisabled?: boolean;
35
35
  }
@@ -37,23 +37,23 @@ export interface FetchWorkspaceParams {
37
37
  scope?: string;
38
38
  search?: string;
39
39
  }
40
- export type WorkspaceListEntityState = EntityState<WorkspacePresetListItem>;
40
+ export type WorkspaceListEntityState = EntityState<WorkspacePresetListItem, string>;
41
41
  export type WorkspaceDialogView = {
42
42
  hasChanges: boolean;
43
43
  title: string;
44
44
  isSelected: boolean;
45
45
  error?: ViewPresetError;
46
- scope: PresetScope;
46
+ scope: SystemScope;
47
47
  abstract?: string;
48
48
  } & WorkspaceViewsFromBE;
49
49
  export interface WorkspaceFormValues {
50
50
  id?: string;
51
51
  title?: string;
52
52
  abstract?: string;
53
- scope?: PresetScope;
53
+ scope?: SystemScope;
54
54
  views?: WorkspaceDialogView[];
55
55
  }
56
- export type WorkspacePresetFormValues = WorkspaceFormValues | WorkspacePresetFromBE;
56
+ export type WorkspacePresetFormValues = WorkspaceFormValues | WorkspacePresetForBE;
57
57
  export interface WorkspaceActionDialogType {
58
58
  action: WorkspacePresetAction;
59
59
  presetId: string;
@@ -81,7 +81,7 @@ export interface ToggleListDialogPayload {
81
81
  isWorkspaceListDialogOpen: boolean;
82
82
  }
83
83
  export interface ToggleSelectFilterChip {
84
- id: string;
84
+ id: PresetFilterType;
85
85
  isSelected: boolean;
86
86
  }
87
87
  export interface SearchWorkspaceFilter {
@@ -91,7 +91,7 @@ export type OpenWorkspaceActionDialogPayload = WorkspaceActionDialogType;
91
91
  export interface SubmitFormWorkspaceActionDialogPayload {
92
92
  presetAction: WorkspacePresetAction;
93
93
  presetId: string;
94
- data: WorkspacePresetFromBE;
94
+ data: WorkspacePresetForBE;
95
95
  emptyMapPresetTitle: string;
96
96
  emptyWorkspacePresetTitle: string;
97
97
  }
@@ -101,7 +101,8 @@ export interface OnNonDeleteSuccesWorkspacePresetActionPayload {
101
101
  title: string;
102
102
  abstract?: string;
103
103
  currentActiveWorkspaceId?: string;
104
- scope: PresetScope;
104
+ scope: SystemScope;
105
+ is_shared?: boolean;
105
106
  }
106
107
  export interface OnDeleteSuccesWorkspacePresetActionPayload {
107
108
  workspaceId: string;