@opengeoweb/workspace 11.0.0 → 12.0.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.
package/index.esm.js CHANGED
@@ -1,15 +1,15 @@
1
1
  import { createEntityAdapter, createSlice, createSelector, createListenerMiddleware, combineReducers, configureStore } from '@reduxjs/toolkit';
2
- import { syncGroupsTypes, syncGroupsActions, layerActions, mapActions, uiActions, genericActions, layerTypes, mapEnums, selectorMemoizationOptions, genericSelectors, mapSelectors, syncGroupsSelectors, routerActions, mapListener, serviceListener, layersListener, syncGroupsListener, mapReducer, serviceReducer, layerReducer, syncGroupsReducer, loadingIndicatorReducer, uiReducer, linkComponentTypesConstants, uiTypes, loadingIndicatorSelectors, uiSelectors } from '@opengeoweb/store';
2
+ import { syncGroupsTypes, syncGroupsActions, layerActions, mapActions, uiActions, genericActions, layerTypes, mapEnums, selectorMemoizationOptions, genericSelectors, mapSelectors, syncGroupsSelectors, routerActions, createViewObjectForNewMap, mapListener, serviceListener, layersListener, syncGroupsListener, openlayersListener, mapReducer, serviceReducer, layerReducer, syncGroupsReducer, loadingIndicatorReducer, uiReducer, linkComponentTypesConstants, uiTypes, loadingIndicatorSelectors, uiSelectors } from '@opengeoweb/store';
3
3
  import { createApiInstance, createNonAuthApiInstance, getApi, createFakeApiInstance, ApiProvider, useApiContext, useAuthenticationContext as useAuthenticationContext$1, GEOWEB_ROLE_PRESETS_ADMIN as GEOWEB_ROLE_PRESETS_ADMIN$1 } from '@opengeoweb/api';
4
4
  import { chunk, cloneDeep, pick, isEmpty, isEqual, isString } from 'lodash';
5
5
  import { getLeaves, MosaicContext, getAndAssertNodeAtPathExists, createBalancedTreeFromLeaves, MosaicWindow, Mosaic } from 'react-mosaic-component';
6
6
  import { timeSeriesActions, TimeSeriesTypes, timeSeriesSelectors, timeSeriesReducer } from '@opengeoweb/timeseries';
7
7
  import { publicWarningActions, WARN_NAMESPACE, warningsTranslations, publicWarningsSelectors } from '@opengeoweb/warnings';
8
- import { PROJECTION, getAxiosErrorMessage, isAxiosAuthError, isAxiosError as isAxiosError$1, SHARED_NAMESPACE, sharedTranslations, ConfirmationServiceProvider, CustomIconButton, useConfirmationDialog, AlertBanner, PresetScope, CustomTooltip, SearchHighlight, ToggleMenu, DEFAULT_FILTER_HEIGHT, Filter, Resizable, ToolContainer, renderCounter, CustomToggleButton, usePrevious, ConfirmationDialog } from '@opengeoweb/shared';
8
+ import { PROJECTION, getAxiosErrorMessage, isAxiosAuthError, isAxiosError as isAxiosError$1, SHARED_NAMESPACE, sharedTranslations, ConfirmationServiceProvider, CustomIconButton, useConfirmationDialog, AlertBanner, PresetScope, CustomTooltip, SearchHighlight, ToggleMenu, DEFAULT_FILTER_HEIGHT, Filter, renderCounter, CustomDialog, ToolContainer, CustomToggleButton, usePrevious, ConfirmationButtons } from '@opengeoweb/shared';
9
9
  import { snackbarTypes, snackbarActions, snackbarListener, snackbarReducer, SnackbarWrapperConnect } from '@opengeoweb/snackbar';
10
10
  import { isAxiosError } from 'axios';
11
11
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
12
- import { ThemeWrapper, lightTheme, Link, LinkOff, SplitVertical, SplitHorizontal, Expand, UnExpand, Close, Delete, Preset, PresetWorkspace, PresetTiles, BackdropStyle, BackdropElement, CloudLoading, CloudIdle, WebAssetOff, Exclamation } from '@opengeoweb/theme';
12
+ import { ThemeWrapper, lightTheme, Link, LinkOff, SplitVertical, SplitHorizontal, Expand, UnExpand, Close, Delete, Preset, PresetWorkspace, PresetTiles, CloudLoading, CloudIdle, WebAssetOff, Exclamation } from '@opengeoweb/theme';
13
13
  import { Provider, useDispatch, useSelector, useStore, shallowEqual } from 'react-redux';
14
14
  import { initReactI18next, useTranslation, I18nextProvider } from 'react-i18next';
15
15
  import { AuthenticationProvider, useAuthenticationContext, GEOWEB_ROLE_PRESETS_ADMIN } from '@opengeoweb/authentication';
@@ -20,7 +20,7 @@ import { CORE_NAMESPACE, coreTranslations } from '@opengeoweb/core';
20
20
  import { FORM_FIELDS_NAMESPACE, formFieldsTranslations, ReactHookFormTextField, ReactHookFormHiddenInput, ReactHookFormProvider, defaultFormOptions } from '@opengeoweb/form-fields';
21
21
  import * as React from 'react';
22
22
  import React__default, { useCallback } from 'react';
23
- import { Menu, Typography, List, ListItem, ListItemButton, ListItemIcon, Checkbox, ListItemText, LinearProgress, Grid2, Box, Backdrop, ListSubheader, MenuItem, useTheme, FormGroup, FormControlLabel, Tabs } from '@mui/material';
23
+ import { Menu, Typography, List, ListItem, ListItemButton, ListItemIcon, Checkbox, ListItemText, LinearProgress, Grid2, Box, ListSubheader, MenuItem, useTheme, FormGroup, FormControlLabel, Tabs } from '@mui/material';
24
24
  import 'react-mosaic-component/react-mosaic-component.css';
25
25
  import AutoSizer from 'react-virtualized-auto-sizer';
26
26
  import { FixedSizeList } from 'react-window';
@@ -1414,9 +1414,9 @@ var slice$2 = createSlice({
1414
1414
  warningsPresetChangeActions.map(function (warningsAction) {
1415
1415
  return builder.addCase(warningsAction, function (draft, action) {
1416
1416
  var _action$payload14 = action.payload,
1417
- origin = _action$payload14.origin,
1417
+ systemUpdate = _action$payload14.systemUpdate,
1418
1418
  panelId = _action$payload14.panelId;
1419
- if (origin === 'user' && panelId) {
1419
+ if (!systemUpdate && panelId) {
1420
1420
  var entity = draft.entities[panelId];
1421
1421
  if (entity && !(entity != null && entity.hasChanges)) {
1422
1422
  entity.hasChanges = true;
@@ -5013,7 +5013,9 @@ workspaceListener.startListening({
5013
5013
  while (1) switch (_context11.prev = _context11.next) {
5014
5014
  case 0:
5015
5015
  payload = _ref10.payload;
5016
- mosaicNodeId = payload.mosaicNodeId, componentType = payload.componentType, newId = payload.newId;
5016
+ mosaicNodeId = payload.mosaicNodeId, componentType = payload.componentType, newId = payload.newId; // TODO: this would be nice to move into the openlayers store
5017
+ createViewObjectForNewMap(mosaicNodeId, newId);
5018
+ // Note, at some point these might no longer be necessary
5017
5019
  bbox = mapSelectors.getBbox(listenerApi.getState(), mosaicNodeId);
5018
5020
  srs = mapSelectors.getSrs(listenerApi.getState(), mosaicNodeId);
5019
5021
  mapPreset = bbox.bottom ? {
@@ -5030,7 +5032,7 @@ workspaceListener.startListening({
5030
5032
  syncGroupsIds: []
5031
5033
  }
5032
5034
  }));
5033
- case 6:
5035
+ case 7:
5034
5036
  case "end":
5035
5037
  return _context11.stop();
5036
5038
  }
@@ -5980,7 +5982,7 @@ var workspaceReducersMap = {
5980
5982
  timeSeries: timeSeriesReducer,
5981
5983
  snackbar: snackbarReducer
5982
5984
  };
5983
- var workspaceMiddlewares = [mapListener.middleware, serviceListener.middleware, layersListener.middleware, syncGroupsListener.middleware, workspaceListener.middleware, workspaceListListener.middleware, viewPresetsListener.middleware, snackbarListener.middleware];
5985
+ var workspaceMiddlewares = [mapListener.middleware, serviceListener.middleware, layersListener.middleware, syncGroupsListener.middleware, workspaceListener.middleware, workspaceListListener.middleware, viewPresetsListener.middleware, snackbarListener.middleware, openlayersListener.middleware];
5984
5986
  var workspaceRootReducer = combineReducers(workspaceReducersMap);
5985
5987
  var createMockStore = function createMockStore(mockState) {
5986
5988
  return configureStore({
@@ -6536,7 +6538,8 @@ var WorkspaceSelectListRow = function WorkspaceSelectListRow(_ref) {
6536
6538
  fontSize: '12px',
6537
6539
  fontWeight: 500,
6538
6540
  textOverflow: 'ellipsis',
6539
- overflow: 'hidden'
6541
+ overflow: 'hidden',
6542
+ whiteSpace: 'nowrap'
6540
6543
  },
6541
6544
  ' .MuiListItemText-secondary': {
6542
6545
  fontSize: '10px',
@@ -6892,36 +6895,32 @@ var ViewPresetMenuListConnect = function ViewPresetMenuListConnect(_ref) {
6892
6895
  });
6893
6896
  };
6894
6897
 
6895
- var ResizeMenu = function ResizeMenu(_ref) {
6896
- var onCloseMenu = _ref.onCloseMenu,
6897
- title = _ref.title,
6898
- children = _ref.children;
6899
- return jsx(Resizable, {
6900
- defaultSize: {
6898
+ var ViewPresetMenu = function ViewPresetMenu(_ref) {
6899
+ var closeMenu = _ref.closeMenu,
6900
+ panelId = _ref.panelId,
6901
+ _ref$isOpen = _ref.isOpen,
6902
+ isOpen = _ref$isOpen === void 0 ? false : _ref$isOpen;
6903
+ var _useWorkspaceTranslat = useWorkspaceTranslation(),
6904
+ t = _useWorkspaceTranslat.t;
6905
+ renderCounter.count(ViewPresetMenu.name);
6906
+ return jsx(CustomDialog, {
6907
+ open: isOpen,
6908
+ onClose: function onClose() {
6909
+ if (closeMenu) {
6910
+ closeMenu();
6911
+ }
6912
+ },
6913
+ isResizable: true,
6914
+ hasLayout: false,
6915
+ resizableDefaultSize: {
6901
6916
  width: 380,
6902
6917
  height: '90%'
6903
6918
  },
6904
- maxWidth: "100%",
6905
- minHeight: 110,
6906
- minWidth: 280,
6907
- style: {
6908
- display: 'flex',
6909
- alignItems: 'center',
6910
- justifyContent: 'center'
6911
- },
6912
- enable: {
6913
- top: true,
6914
- right: true,
6915
- bottom: true,
6916
- left: true,
6917
- topRight: true,
6918
- bottomRight: true,
6919
- bottomLeft: true,
6920
- topLeft: true
6921
- },
6919
+ shouldRenderInline: true,
6920
+ "data-testid": "workspace-viewpreset-menu",
6922
6921
  children: jsx(ToolContainer, {
6923
- title: title,
6924
- onClose: onCloseMenu,
6922
+ title: t('workspace-viewpreset-menu'),
6923
+ onClose: closeMenu,
6925
6924
  style: {
6926
6925
  width: '100%',
6927
6926
  height: '100%'
@@ -6929,40 +6928,11 @@ var ResizeMenu = function ResizeMenu(_ref) {
6929
6928
  onClick: function onClick(event) {
6930
6929
  event.stopPropagation();
6931
6930
  },
6932
- children: children
6933
- })
6934
- });
6935
- };
6936
-
6937
- var ViewPresetMenu = function ViewPresetMenu(_ref) {
6938
- var _ref$hideBackdrop = _ref.hideBackdrop,
6939
- hideBackdrop = _ref$hideBackdrop === void 0 ? false : _ref$hideBackdrop,
6940
- closeMenu = _ref.closeMenu,
6941
- panelId = _ref.panelId;
6942
- var _useWorkspaceTranslat = useWorkspaceTranslation(),
6943
- t = _useWorkspaceTranslat.t;
6944
- var toolContainer = jsx(ResizeMenu, {
6945
- title: t('workspace-viewpreset-menu'),
6946
- onCloseMenu: closeMenu,
6947
- children: jsx(ViewPresetMenuListConnect, {
6948
- panelId: panelId
6931
+ children: jsx(ViewPresetMenuListConnect, {
6932
+ panelId: panelId
6933
+ })
6949
6934
  })
6950
6935
  });
6951
- renderCounter.count(ViewPresetMenu.name);
6952
- return hideBackdrop ?
6953
- // Enable hiding backdrop from snapshot tests
6954
- toolContainer : jsxs(Backdrop, {
6955
- "data-testid": "viewpresetMenuBackdrop",
6956
- open: true,
6957
- sx: Object.assign({
6958
- '&.MuiBackdrop-root': {
6959
- position: 'absolute',
6960
- zIndex: 1002
6961
- }
6962
- }, BackdropStyle()),
6963
- onClick: closeMenu,
6964
- children: [BackdropElement(), toolContainer]
6965
- });
6966
6936
  };
6967
6937
 
6968
6938
  var workspacePresetOptionId = 'workspace-options-toolbutton';
@@ -7504,14 +7474,15 @@ var WorkspaceTileConnect = /*#__PURE__*/React.memo(function (_ref2) {
7504
7474
  })
7505
7475
  }), defaultComponentsLookupResult, genericComponentsLookupResult, jsx(FetchViewPresets, {
7506
7476
  panelId: mosaicNodeId
7507
- }), isViewPresetDialogOpen && jsx(ViewPresetMenu, {
7477
+ }), jsx(ViewPresetMenu, {
7508
7478
  panelId: mosaicNodeId,
7509
7479
  closeMenu: function closeMenu() {
7510
7480
  toggleViewPresetDialog({
7511
7481
  panelId: mosaicNodeId,
7512
7482
  isViewPresetDialogOpen: false
7513
7483
  });
7514
- }
7484
+ },
7485
+ isOpen: isViewPresetDialogOpen
7515
7486
  })]
7516
7487
  });
7517
7488
  }, isEqual);
@@ -7845,7 +7816,8 @@ var WorkspaceSelectListConnect = function WorkspaceSelectListConnect() {
7845
7816
  return jsxs(Box, {
7846
7817
  "data-testid": "workspace-selectlist-connect",
7847
7818
  style: {
7848
- height: '100%'
7819
+ height: '100%',
7820
+ width: '100%'
7849
7821
  },
7850
7822
  tabIndex: 0,
7851
7823
  children: [isFetching && jsx(LinearProgress, {
@@ -7899,28 +7871,49 @@ var WorkspaceSelectListConnect = function WorkspaceSelectListConnect() {
7899
7871
  };
7900
7872
 
7901
7873
  var WorkspaceMenu = function WorkspaceMenu(_ref) {
7902
- var _ref$hideBackdrop = _ref.hideBackdrop,
7903
- hideBackdrop = _ref$hideBackdrop === void 0 ? false : _ref$hideBackdrop,
7874
+ var _ref$isOpen = _ref.isOpen,
7875
+ isOpen = _ref$isOpen === void 0 ? false : _ref$isOpen,
7904
7876
  closeMenu = _ref.closeMenu;
7905
7877
  var _useWorkspaceTranslat = useWorkspaceTranslation(),
7906
7878
  t = _useWorkspaceTranslat.t;
7907
- var toolContainer = jsx(ResizeMenu, {
7908
- title: t('workspace-menu'),
7909
- onCloseMenu: closeMenu,
7910
- children: jsx(WorkspaceSelectListConnect, {})
7911
- });
7912
- return hideBackdrop ?
7913
- // Enable hiding backdrop from snapshot tests
7914
- toolContainer : jsxs(Backdrop, {
7915
- "data-testid": "workspaceMenuBackdrop",
7916
- open: true,
7917
- sx: Object.assign({
7918
- '&.MuiBackdrop-root': {
7919
- top: '40px'
7879
+ return jsx(CustomDialog, {
7880
+ open: isOpen,
7881
+ onClose: function onClose() {
7882
+ if (closeMenu) {
7883
+ closeMenu();
7920
7884
  }
7921
- }, BackdropStyle()),
7922
- onClick: closeMenu,
7923
- children: [BackdropElement(), toolContainer]
7885
+ },
7886
+ isResizable: true,
7887
+ hasLayout: false,
7888
+ resizableDefaultSize: {
7889
+ width: 380,
7890
+ height: '90%'
7891
+ },
7892
+ slotProps: {
7893
+ backdrop: {
7894
+ style: {
7895
+ top: 40
7896
+ }
7897
+ },
7898
+ root: {
7899
+ style: {
7900
+ top: 40
7901
+ }
7902
+ }
7903
+ },
7904
+ "data-testid": "workspace-menu",
7905
+ children: jsx(ToolContainer, {
7906
+ title: t('workspace-menu'),
7907
+ onClose: closeMenu,
7908
+ style: {
7909
+ width: '100%',
7910
+ height: '100%'
7911
+ },
7912
+ onClick: function onClick(event) {
7913
+ event.stopPropagation();
7914
+ },
7915
+ children: jsx(WorkspaceSelectListConnect, {})
7916
+ })
7924
7917
  });
7925
7918
  };
7926
7919
 
@@ -7960,7 +7953,8 @@ var WorkspaceMenuButton = function WorkspaceMenuButton(_ref) {
7960
7953
  },
7961
7954
  children: jsx(PresetWorkspace, {})
7962
7955
  })
7963
- }), showMenu && jsx(WorkspaceMenu, {
7956
+ }), jsx(WorkspaceMenu, {
7957
+ isOpen: showMenu,
7964
7958
  closeMenu: onCloseMenu
7965
7959
  })]
7966
7960
  });
@@ -8586,20 +8580,26 @@ var WorkspacePresetsFormDialog = function WorkspacePresetsFormDialog(_ref) {
8586
8580
  };
8587
8581
  }();
8588
8582
  var cancelLabel = t('workspace-cancel');
8589
- return jsx(ConfirmationDialog, {
8583
+ return jsx(CustomDialog, {
8590
8584
  "data-testid": "workspace-preset-dialog",
8591
8585
  title: getDialogTitle(action),
8592
8586
  open: isOpen,
8593
- confirmLabel: confirmLabel,
8594
- cancelLabel: cancelLabel,
8595
8587
  description: "",
8596
8588
  onClose: onClose,
8597
8589
  onSubmit: onSubmit,
8598
- isLoading: isLoading,
8599
- sx: {
8600
- width: '330px'
8590
+ isResizable: true,
8591
+ resizableDefaultSize: {
8592
+ width: 500,
8593
+ height: 'auto'
8601
8594
  },
8602
- content: jsx(WorkspacePresetsForm, {
8595
+ actions: jsx(ConfirmationButtons, {
8596
+ onClose: onClose,
8597
+ cancelLabel: cancelLabel,
8598
+ isLoading: isLoading,
8599
+ onSubmit: onSubmit,
8600
+ confirmLabel: confirmLabel
8601
+ }),
8602
+ children: jsx(WorkspacePresetsForm, {
8603
8603
  formValues: formValues,
8604
8604
  error: error,
8605
8605
  onSubmit: onSubmit,
@@ -8655,7 +8655,7 @@ var WorkspaceTabConnect = function WorkspaceTabConnect(_ref) {
8655
8655
  title: title,
8656
8656
  workspaceId: workspaceId,
8657
8657
  appTitle: appTitle
8658
- }), Boolean(dialogDetails) && jsx(WorkspacePresetsFormDialogWrapper, {
8658
+ }), jsx(WorkspacePresetsFormDialogWrapper, {
8659
8659
  isOpen: Boolean(dialogDetails),
8660
8660
  onClose: closeWorkspaceActionDialog,
8661
8661
  presetId: presetId || undefined,
@@ -8966,20 +8966,24 @@ var ViewPresetsFormDialog = function ViewPresetsFormDialog(_ref) {
8966
8966
  return _ref3.apply(this, arguments);
8967
8967
  };
8968
8968
  }();
8969
- return jsx(ConfirmationDialog, {
8969
+ return jsx(CustomDialog, {
8970
8970
  "data-testid": "map-preset-dialog",
8971
8971
  title: title,
8972
8972
  open: isOpen,
8973
- confirmLabel: confirmLabel,
8974
- cancelLabel: t('workspace-cancel'),
8975
8973
  description: "",
8976
8974
  onClose: onClose,
8977
8975
  onSubmit: onSubmit,
8978
- isLoading: isLoading,
8979
8976
  sx: {
8980
8977
  width: '330px'
8981
8978
  },
8982
- content: jsx(ViewPresetsForm, {
8979
+ actions: jsx(ConfirmationButtons, {
8980
+ onClose: onClose,
8981
+ cancelLabel: t('workspace-cancel'),
8982
+ isLoading: isLoading,
8983
+ onSubmit: onSubmit,
8984
+ confirmLabel: confirmLabel
8985
+ }),
8986
+ children: jsx(ViewPresetsForm, {
8983
8987
  viewComponentType: viewComponentType,
8984
8988
  formValues: formValues,
8985
8989
  error: error,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opengeoweb/workspace",
3
- "version": "11.0.0",
3
+ "version": "12.0.0",
4
4
  "description": "GeoWeb Workspace library for the opengeoweb project",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {
@@ -8,37 +8,53 @@
8
8
  "url": "git@gitlab.com:opengeoweb/opengeoweb.git"
9
9
  },
10
10
  "dependencies": {
11
- "react-redux": "^8.1.3",
12
- "@opengeoweb/shared": "*",
13
- "@opengeoweb/store": "*",
14
- "@opengeoweb/api": "*",
15
- "react-hook-form": "^7.50.1",
16
- "@opengeoweb/theme": "*",
11
+ "@emotion/react": "11.14.0",
12
+ "@emotion/styled": "11.14.0",
13
+ "@mui/base": "5.0.0-beta.69",
14
+ "@mui/material": "^6.1.1",
15
+ "@mui/system": "6.4.6",
16
+ "@mui/x-date-pickers": "7.27.1",
17
17
  "@reduxjs/toolkit": "^1.9.7",
18
- "@opengeoweb/snackbar": "*",
19
- "react-window": "^1.8.10",
20
- "lodash": "^4.17.21",
18
+ "@sentry/react": "8.54.0",
19
+ "@storybook/core-events": "8.4.2",
20
+ "@storybook/preview-api": "8.4.2",
21
+ "@storybook/react": "8.4.2",
22
+ "@tanstack/query-core": "5.67.1",
23
+ "@tanstack/react-query": "^5.62.7",
24
+ "@testing-library/react": "16.0.1",
25
+ "@testing-library/user-event": "14.5.2",
26
+ "@turf/turf": "7.2.0",
21
27
  "axios": "^1.7.7",
22
- "react-virtualized-auto-sizer": "^1.0.21",
23
- "react-mosaic-component": "^6.1.0",
24
- "@opengeoweb/form-fields": "*",
25
- "@opengeoweb/timeseries": "*",
26
- "@opengeoweb/authentication": "*",
27
- "@opengeoweb/core": "*",
28
- "@opengeoweb/taf": "*",
29
- "@opengeoweb/sigmet-airmet": "*",
30
- "@opengeoweb/warnings": "*",
31
- "@opengeoweb/spaceweather": "*",
28
+ "axios-cache-interceptor": "1.6.2",
29
+ "css-mediaquery": "0.1.2",
30
+ "date-fns": "4.1.0",
31
+ "dompurify": "3.2.4",
32
+ "echarts": "5.6.0",
33
+ "echarts-for-react": "3.0.2",
32
34
  "i18next": "^23.11.5",
35
+ "immer": "10.1.1",
36
+ "jest-canvas-mock": "2.5.2",
37
+ "jest-date-mock": "1.0.10",
38
+ "lodash": "^4.17.21",
39
+ "msw": "2.7.3",
40
+ "msw-storybook-addon": "2.0.4",
41
+ "ol": "10.4.0",
42
+ "proj4": "2.15.0",
43
+ "re-resizable": "6.11.2",
44
+ "react": "18.3.1",
45
+ "react-dom": "18.3.1",
46
+ "react-draggable": "4.4.6",
47
+ "react-hook-form": "^7.50.1",
33
48
  "react-i18next": "^15.1.1",
34
- "@mui/material": "^6.1.1",
35
- "@opengeoweb/webmap-react": "*",
36
- "@tanstack/react-query": "^5.62.7"
37
- },
38
- "peerDependencies": {
39
- "react": "18",
40
- "@emotion/react": "*",
41
- "@emotion/styled": "*"
49
+ "react-mosaic-component": "^6.1.0",
50
+ "react-redux": "^8.1.3",
51
+ "react-resize-detector": "9.1.1",
52
+ "react-router-dom": "6.23.1",
53
+ "react-sortablejs": "6.1.4",
54
+ "react-virtualized-auto-sizer": "^1.0.21",
55
+ "react-window": "^1.8.10",
56
+ "sortablejs": "1.15.2",
57
+ "uuid": "10.0.0"
42
58
  },
43
59
  "module": "./index.esm.js",
44
60
  "type": "module",
@@ -2,7 +2,7 @@ import React from 'react';
2
2
  export declare const DIALOG_TITLE = "View presets menu";
3
3
  export interface ViewPresetMenuProps {
4
4
  panelId: string;
5
- hideBackdrop?: boolean;
6
5
  closeMenu?: () => void;
6
+ isOpen?: boolean;
7
7
  }
8
8
  export declare const ViewPresetMenu: React.FC<ViewPresetMenuProps>;
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  export interface WorkspaceMenuProps {
3
- hideBackdrop?: boolean;
4
3
  closeMenu?: () => void;
4
+ isOpen?: boolean;
5
5
  }
6
6
  export declare const WorkspaceMenu: React.FC<WorkspaceMenuProps>;
@@ -1,6 +0,0 @@
1
- import React from 'react';
2
- export declare const ResizeMenu: React.FC<{
3
- onCloseMenu?: () => void;
4
- title: string;
5
- children: React.ReactNode;
6
- }>;
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export * from './ResizeMenu';