@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
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opengeoweb/workspace",
3
- "version": "12.1.2",
3
+ "version": "12.3.0",
4
4
  "description": "GeoWeb Workspace library for the opengeoweb project",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {
@@ -8,32 +8,32 @@
8
8
  "url": "git@gitlab.com:opengeoweb/opengeoweb.git"
9
9
  },
10
10
  "dependencies": {
11
- "react-redux": "^8.1.3",
12
- "@opengeoweb/shared": "12.1.2",
13
- "@opengeoweb/store": "12.1.2",
14
- "@opengeoweb/api": "12.1.2",
11
+ "react-redux": "^9.2.0",
12
+ "@opengeoweb/shared": "12.3.0",
13
+ "@opengeoweb/store": "12.3.0",
14
+ "@opengeoweb/api": "12.3.0",
15
15
  "react-hook-form": "^7.50.1",
16
- "@opengeoweb/theme": "12.1.2",
17
- "@reduxjs/toolkit": "^1.9.7",
18
- "@opengeoweb/snackbar": "12.1.2",
16
+ "@opengeoweb/theme": "12.3.0",
17
+ "@reduxjs/toolkit": "^2.6.1",
18
+ "@opengeoweb/snackbar": "12.3.0",
19
19
  "react-window": "^1.8.10",
20
20
  "lodash": "^4.17.21",
21
21
  "axios": "^1.7.7",
22
22
  "react-virtualized-auto-sizer": "^1.0.21",
23
23
  "react-mosaic-component": "^6.1.0",
24
- "@opengeoweb/form-fields": "12.1.2",
25
- "@opengeoweb/timeseries": "12.1.2",
26
- "@opengeoweb/authentication": "12.1.2",
27
- "@opengeoweb/core": "12.1.2",
28
- "@opengeoweb/taf": "12.1.2",
29
- "@opengeoweb/sigmet-airmet": "12.1.2",
30
- "@opengeoweb/warnings": "12.1.2",
31
- "@opengeoweb/spaceweather": "12.1.2",
24
+ "@opengeoweb/form-fields": "12.3.0",
25
+ "@opengeoweb/timeseries": "12.3.0",
26
+ "@opengeoweb/authentication": "12.3.0",
27
+ "@opengeoweb/core": "12.3.0",
28
+ "@opengeoweb/taf": "12.3.0",
29
+ "@opengeoweb/sigmet-airmet": "12.3.0",
30
+ "@opengeoweb/warnings": "12.3.0",
31
+ "@opengeoweb/spaceweather": "12.3.0",
32
32
  "i18next": "^23.11.5",
33
33
  "react-i18next": "^15.1.1",
34
- "@mui/material": "^6.1.1",
35
- "@opengeoweb/webmap-react": "12.1.2",
36
- "@tanstack/react-query": "^5.62.7"
34
+ "@mui/material": "^7.0.1",
35
+ "@opengeoweb/webmap-react": "12.3.0",
36
+ "@tanstack/react-query": "^5.69.2"
37
37
  },
38
38
  "peerDependencies": {
39
39
  "react": "18",
@@ -0,0 +1,4 @@
1
+ import { Credentials } from '@opengeoweb/api';
2
+ import { ViewPresetListItem } from '../../store/workspace/types';
3
+ export declare const getViewPreset: (viewpresetId: string, auth: Credentials) => Promise<ViewPresetListItem>;
4
+ export declare const updateViewPreset: (viewpresetId: string, data: ViewPresetListItem, auth: Credentials) => Promise<null>;
@@ -1,6 +1,6 @@
1
1
  import { Credentials } from '@opengeoweb/api';
2
- import { WorkspacePresetFromBE } from '../../store/workspace/types';
2
+ import { WorkspacePresetForBE, WorkspacePresetFromBE } from '../../store/workspace/types';
3
3
  export declare const getWorkspace: (workspaceId: string, auth: Credentials) => Promise<WorkspacePresetFromBE>;
4
4
  export declare const deleteWorkspace: (workspaceId: string, auth: Credentials) => Promise<null>;
5
- export declare const updateWorkspace: (workspaceId: string, data: WorkspacePresetFromBE, auth: Credentials) => Promise<null>;
6
- export declare const createWorkspace: (data: WorkspacePresetFromBE, auth: Credentials) => Promise<Headers>;
5
+ export declare const updateWorkspace: (workspaceId: string, data: WorkspacePresetForBE, auth: Credentials) => Promise<null>;
6
+ export declare const createWorkspace: (data: WorkspacePresetForBE, auth: Credentials) => Promise<Headers>;
@@ -1,11 +1,11 @@
1
1
  import { UseMutationResult } from '@tanstack/react-query';
2
- import { WorkspacePresetAction, WorkspacePresetFromBE } from '../../store/workspace/types';
2
+ import { WorkspacePresetAction, WorkspacePresetForBE } from '../../store/workspace/types';
3
3
  type MutationReturnType<T> = UseMutationResult<Headers | null, Error, T>;
4
4
  export declare const useDeleteWorkspacePreset: () => MutationReturnType<{
5
5
  id: string;
6
6
  }>;
7
7
  export declare const useCreateWorkspacePreset: () => MutationReturnType<{
8
- data: WorkspacePresetFromBE;
8
+ data: WorkspacePresetForBE;
9
9
  action?: WorkspacePresetAction.DUPLICATE;
10
10
  }>;
11
11
  export {};
@@ -1,6 +1,6 @@
1
- import { PresetScope } from '@opengeoweb/shared';
2
1
  import React from 'react';
2
+ import { SystemScope } from '@opengeoweb/shared';
3
3
  declare const ViewPresetsFormDialogConnect: React.FC<{
4
- scope?: PresetScope;
4
+ scope?: SystemScope;
5
5
  }>;
6
6
  export default ViewPresetsFormDialogConnect;
@@ -1,11 +1,11 @@
1
- import { PresetScope } from '@opengeoweb/shared';
1
+ import { SystemScope } from '@opengeoweb/shared';
2
2
  import React from 'react';
3
3
  import { WorkspacePresetAction } from '../../store/workspace/types';
4
4
  import { WorkspaceListError, WorkspacePresetFormValues } from '../../store/workspaceList/types';
5
5
  export declare const ERROR_DUPLICATE_TITLE_BE = "Preset title already in use, please choose a different title";
6
6
  export declare const ERROR_LONG_TITLE_BE = "Preset title cannot exceed 100 characters";
7
7
  export declare const emptyWorkspacePreset: {
8
- scope: PresetScope;
8
+ scope: SystemScope;
9
9
  title: string;
10
10
  abstract: string;
11
11
  };
@@ -1,12 +1,12 @@
1
1
  import React from 'react';
2
- import { WorkspacePresetAction, WorkspacePresetFromBE } from '../../store/workspace/types';
2
+ import { WorkspacePresetAction, WorkspacePresetForBE } from '../../store/workspace/types';
3
3
  import { WorkspaceListError, WorkspacePresetFormValues } from '../../store/workspaceList/types';
4
4
  export interface WorkspacePresetsFormDialogProps {
5
5
  isOpen: boolean;
6
6
  action: WorkspacePresetAction;
7
7
  presetId: string;
8
8
  formValues: WorkspacePresetFormValues;
9
- onFormSubmit: (action: WorkspacePresetAction, presetId: string, data: WorkspacePresetFromBE) => void;
9
+ onFormSubmit: (action: WorkspacePresetAction, presetId: string, data: WorkspacePresetForBE) => void;
10
10
  onClose: () => void;
11
11
  isLoading: boolean;
12
12
  error?: WorkspaceListError;
@@ -1,6 +1,6 @@
1
- import * as React from 'react';
2
1
  import { BoxProps } from '@mui/material';
3
- import { WorkspacePresetListItem, WorkspacePresetAction } from '../../store/workspace/types';
2
+ import * as React from 'react';
3
+ import { WorkspacePresetAction, WorkspacePresetListItem } from '../../store/workspace/types';
4
4
  export interface WorkspaceSelectListProps extends BoxProps {
5
5
  workspacePresets: WorkspacePresetListItem[];
6
6
  currentSelectedId: string;
@@ -1,8 +1,8 @@
1
1
  import * as React from 'react';
2
2
  import { MosaicBranch } from 'react-mosaic-component';
3
3
  import 'react-mosaic-component/react-mosaic-component.css';
4
- import './WorkspaceView.css';
5
4
  import { WorkspaceLookupFunctionType } from '../../store/workspace/types';
5
+ import './WorkspaceView.css';
6
6
  interface WorkspaceTileConnectProps {
7
7
  mosaicNodeId: string;
8
8
  path: MosaicBranch[];
@@ -1,5 +1,5 @@
1
- import { AnyAction } from '@reduxjs/toolkit';
1
+ import { UnknownAction } from '@reduxjs/toolkit';
2
2
  import { MosaicNode } from 'react-mosaic-component';
3
3
  export declare const getUniqueId: (existingIds: string[], count?: number) => string;
4
4
  export declare const createBalancedMosaicNode: (currentNode: MosaicNode<string>) => MosaicNode<string>;
5
- export declare const closeTimeSeriesDialogsWhenChangingPreset: (componentTypes: string[] | undefined, dispatch: (action: AnyAction) => void) => void;
5
+ export declare const closeTimeSeriesDialogsWhenChangingPreset: (componentTypes: string[] | undefined, dispatch: (action: UnknownAction) => void) => void;
@@ -0,0 +1 @@
1
+ export declare const useFetchViewPresets: (panelId: string) => void;
@@ -1,20 +1,20 @@
1
1
  import { SnackbarModuleStore } from '@opengeoweb/snackbar';
2
2
  import { WebMapStateModuleState, SynchronizationGroupModuleState, UIModuleState } from '@opengeoweb/store';
3
- import { ToolkitStore } from '@reduxjs/toolkit/dist/configureStore';
3
+ import { Store } from '@reduxjs/toolkit';
4
4
  import { WorkspaceModuleStore } from './types';
5
5
  export declare const workspaceReducersMap: {
6
- webmap: import("redux").Reducer<import("dist/libs/store/src/store/map/types").WebMapState, import("redux").AnyAction>;
7
- services: import("redux").Reducer<import("dist/libs/store/src/store/map/types").ServiceState, import("redux").AnyAction>;
8
- layers: import("redux").Reducer<import("dist/libs/store/src/store/map/types").LayerState, import("redux").AnyAction>;
9
- syncGroups: import("redux").Reducer<import("dist/libs/store/src/store/generic/syncGroups/types").SynchronizationGroupState, import("redux").AnyAction>;
10
- loadingIndicator: import("redux").Reducer<import("@reduxjs/toolkit").EntityState<import("dist/libs/store/src/store/generic/loadingIndicator/types").LoadingIndicatorType>, import("redux").AnyAction>;
11
- ui: import("redux").Reducer<import("dist/libs/store/src/store/ui/types").UIStoreType, import("redux").AnyAction>;
6
+ webmap: import("redux").Reducer<import("dist/libs/store/src/store/map/types").WebMapState, import("redux").UnknownAction, import("dist/libs/store/src/store/map/types").WebMapState>;
7
+ services: import("redux").Reducer<import("dist/libs/store/src/store/map/types").ServiceState, import("redux").UnknownAction, import("dist/libs/store/src/store/map/types").ServiceState>;
8
+ layers: import("redux").Reducer<import("dist/libs/store/src/store/map/types").LayerState, import("redux").UnknownAction, import("dist/libs/store/src/store/map/types").LayerState>;
9
+ syncGroups: import("redux").Reducer<import("dist/libs/store/src/store/generic/syncGroups/types").SynchronizationGroupState, import("redux").UnknownAction, import("dist/libs/store/src/store/generic/syncGroups/types").SynchronizationGroupState>;
10
+ loadingIndicator: import("redux").Reducer<import("@reduxjs/toolkit").EntityState<import("dist/libs/store/src/store/generic/loadingIndicator/types").LoadingIndicatorType, string>, import("redux").UnknownAction, import("@reduxjs/toolkit").EntityState<import("dist/libs/store/src/store/generic/loadingIndicator/types").LoadingIndicatorType, string>>;
11
+ ui: import("redux").Reducer<import("dist/libs/store/src/store/ui/types").UIStoreType, import("redux").UnknownAction, import("dist/libs/store/src/store/ui/types").UIStoreType>;
12
12
  workspace: import("redux").Reducer<import("./workspace/types").WorkspaceState>;
13
13
  workspaceList: import("redux").Reducer<import("./workspaceList/types").WorkspaceListState>;
14
14
  viewPresetsList: import("redux").Reducer<import("./viewPresetsList/types").ViewPresetListState>;
15
15
  viewPresets: import("redux").Reducer<import("./viewPresets/types").ViewPresetState>;
16
- timeSeries: import("redux").Reducer<import("dist/libs/timeseries/src/lib/store/types").TimeSeriesStoreType, import("redux").AnyAction>;
17
- snackbar: import("redux").Reducer<import("dist/libs/snackbar/src/lib/store/types").SnackbarState, import("redux").AnyAction>;
16
+ timeSeries: import("redux").Reducer<import("dist/libs/timeseries/src/lib/store/types").TimeSeriesStoreType, import("redux").UnknownAction, import("dist/libs/timeseries/src/lib/store/types").TimeSeriesStoreType>;
17
+ snackbar: import("redux").Reducer<import("dist/libs/snackbar/src/lib/store/types").SnackbarState, import("redux").UnknownAction, import("dist/libs/snackbar/src/lib/store/types").SnackbarState>;
18
18
  };
19
- export declare const workspaceMiddlewares: (import("@reduxjs/toolkit").ListenerMiddleware<import("./types").AppStore, import("@reduxjs/toolkit").ThunkDispatch<import("./types").AppStore, unknown, import("redux").AnyAction>, unknown> | import("@reduxjs/toolkit").ListenerMiddleware<SnackbarModuleStore, import("@reduxjs/toolkit").ThunkDispatch<SnackbarModuleStore, unknown, import("redux").AnyAction>, unknown>)[];
20
- export declare const createMockStore: (mockState?: WebMapStateModuleState | WorkspaceModuleStore | UIModuleState | SynchronizationGroupModuleState | SnackbarModuleStore) => ToolkitStore;
19
+ export declare const workspaceMiddlewares: (import("@reduxjs/toolkit").ListenerMiddleware<import("./types").AppStore, import("redux-thunk").ThunkDispatch<import("./types").AppStore, unknown, import("redux").UnknownAction>, unknown> | import("@reduxjs/toolkit").ListenerMiddleware<SnackbarModuleStore, import("redux-thunk").ThunkDispatch<SnackbarModuleStore, unknown, import("redux").UnknownAction>, unknown>)[];
20
+ export declare const createMockStore: (mockState?: WebMapStateModuleState | WorkspaceModuleStore | UIModuleState | SynchronizationGroupModuleState | SnackbarModuleStore) => Store;
@@ -1,6 +1,6 @@
1
- import { AnyAction, ListenerEffectAPI, PayloadAction, ThunkDispatch } from '@reduxjs/toolkit';
1
+ import { UnknownAction, ListenerEffectAPI, PayloadAction, ThunkDispatch } from '@reduxjs/toolkit';
2
2
  import { WorkspaceModuleStore } from '../types';
3
3
  import { SaveViewPresetPayload, ViewPreset } from './types';
4
- export declare const viewPresetsListener: import("@reduxjs/toolkit").ListenerMiddlewareInstance<WorkspaceModuleStore, ThunkDispatch<WorkspaceModuleStore, unknown, AnyAction>, unknown>;
5
- export declare const saveViewPresetAsEffect: ({ payload }: PayloadAction<SaveViewPresetPayload>, listenerApi: ListenerEffectAPI<WorkspaceModuleStore, ThunkDispatch<WorkspaceModuleStore, unknown, AnyAction>>) => Promise<ViewPreset | Error | void>;
6
- export declare const saveViewPresetEffect: ({ payload }: PayloadAction<SaveViewPresetPayload>, listenerApi: ListenerEffectAPI<WorkspaceModuleStore, ThunkDispatch<WorkspaceModuleStore, unknown, AnyAction>>) => Promise<ViewPreset | Error | void>;
4
+ export declare const viewPresetsListener: import("@reduxjs/toolkit").ListenerMiddlewareInstance<WorkspaceModuleStore, ThunkDispatch<WorkspaceModuleStore, unknown, UnknownAction>, unknown>;
5
+ export declare const saveViewPresetAsEffect: ({ payload }: PayloadAction<SaveViewPresetPayload>, listenerApi: ListenerEffectAPI<WorkspaceModuleStore, ThunkDispatch<WorkspaceModuleStore, unknown, UnknownAction>>) => Promise<ViewPreset | Error | void>;
6
+ export declare const saveViewPresetEffect: ({ payload }: PayloadAction<SaveViewPresetPayload>, listenerApi: ListenerEffectAPI<WorkspaceModuleStore, ThunkDispatch<WorkspaceModuleStore, unknown, UnknownAction>>) => Promise<ViewPreset | Error | void>;
@@ -2,7 +2,7 @@ import { layerTypes, mapEnums } from '@opengeoweb/store';
2
2
  import { TimeSeriesTypes } from '@opengeoweb/timeseries';
3
3
  import { Draft, PayloadAction } from '@reduxjs/toolkit';
4
4
  import { ErrorViewPresetPayload, FetchedViewPresetPayload, FetchedViewPresetsPayload, FetchViewPresetsPayload, OnSuccesViewPresetActionPayload, OpenViewPresetDialogPayload, RegisterViewPresetPayload, SavedViewPresetPayload, SaveViewPresetPayload, SearchWorkspaceFilter, SelectViewPresetPayload, SetActiveViewPresetIdPayload, SetFilterChipsPayload, SetSelectAllFilterChip, SetViewPresetHasChangePayload, ToggleSelectFilterChip, ToggleViewPresetListDialogPayload, UnregisterViewPresetPayload, ViewPresetEntity, ViewPresetState } from './types';
5
- export declare const viewPresetsAdapter: import("@reduxjs/toolkit").EntityAdapter<ViewPresetEntity>;
5
+ export declare const viewPresetsAdapter: import("@reduxjs/toolkit").EntityAdapter<ViewPresetEntity, string>;
6
6
  export declare const initialState: ViewPresetState;
7
7
  export type SupportedMapActionOrigins = layerTypes.LayerActionOrigin | mapEnums.MapActionOrigin;
8
8
  export declare const supportedMapActionOrigins: SupportedMapActionOrigins[];