@opengeoweb/core 4.0.0 → 4.2.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 (84) hide show
  1. package/index.esm.js +2771 -2289
  2. package/index.umd.js +2799 -2293
  3. package/lib/components/LayerManager/LayerManager.d.ts +13 -0
  4. package/lib/components/LayerManager/LayerManager.stories.d.ts +12 -0
  5. package/lib/components/LayerManager/LayerManagerConnect.stories.d.ts +18 -2
  6. package/lib/components/LayerManager/LayerManagerUtils.d.ts +49 -2
  7. package/lib/components/LayerManager/LayerSelect/KeywordFilterResults/KeywordFilterResults.d.ts +4 -4
  8. package/lib/components/LayerManager/LayerSelect/KeywordFilterResults/KeywordFilterResults.stories.d.ts +18 -2
  9. package/lib/components/LayerManager/LayerSelect/KeywordFilterResults/KeywordFilterResultsConnect.d.ts +0 -1
  10. package/lib/components/LayerManager/LayerSelect/KeywordFilterResults/KeywordFilterResultsListItem.d.ts +5 -5
  11. package/lib/components/LayerManager/LayerSelect/KeywordFilterResults/KeywordFilterResultsListItemConnect.d.ts +3 -2
  12. package/lib/components/LayerManager/LayerSelect/LayerInfo/LayerInfoButtonConnect.d.ts +11 -0
  13. package/lib/components/LayerManager/LayerSelect/{LayerSelectUtils.spec.d.ts → LayerInfo/LayerInfoButtonConnect.spec.d.ts} +0 -0
  14. package/lib/components/LayerManager/LayerSelect/LayerInfo/LayerInfoDialog.d.ts +14 -0
  15. package/lib/components/LayerManager/LayerSelect/LayerInfo/LayerInfoDialog.spec.d.ts +1 -0
  16. package/lib/components/LayerManager/LayerSelect/LayerInfo/LayerInfoDialog.stories.d.ts +25 -0
  17. package/lib/components/LayerManager/LayerSelect/LayerInfo/LayerInfoDialogConnect.d.ts +3 -0
  18. package/lib/components/LayerManager/LayerSelect/LayerInfo/LayerInfoList.d.ts +11 -0
  19. package/lib/components/LayerManager/LayerSelect/LayerInfo/LayerInfoText.d.ts +7 -0
  20. package/lib/components/LayerManager/LayerSelect/LayerInfo/LayerInfoUtils.d.ts +4 -0
  21. package/lib/components/LayerManager/LayerSelect/LayerInfo/LayerInfoUtils.spec.d.ts +1 -0
  22. package/lib/components/LayerManager/LayerSelect/LayerInfo/index.d.ts +2 -0
  23. package/lib/components/LayerManager/LayerSelect/LayerList/LayerList.d.ts +5 -3
  24. package/lib/components/LayerManager/LayerSelect/LayerList/LayerListConnect.d.ts +1 -0
  25. package/lib/components/LayerManager/LayerSelect/LayerList/LayerListRow.d.ts +1 -1
  26. package/lib/components/LayerManager/LayerSelect/LayerList/LayerListUtils.d.ts +1 -1
  27. package/lib/components/LayerManager/LayerSelect/LayerSelect.stories.d.ts +12 -0
  28. package/lib/components/LayerManager/LayerSelect/LayerSelectConnect.d.ts +0 -2
  29. package/lib/components/LayerManager/LayerSelect/SearchField/SearchFieldButtonContainer.d.ts +1 -0
  30. package/lib/components/LayerManager/LayerSelect/ServiceList/ServiceChipConnect.d.ts +2 -1
  31. package/lib/components/LayerManager/LayerSelect/ServiceList/ServiceList.d.ts +1 -1
  32. package/lib/components/LayerManager/LayerSelect/ServiceList/ServiceListConnect.d.ts +3 -1
  33. package/lib/components/LayerManager/LayerSelect/ServiceOptionsButton/ServiceOptionsButton.d.ts +4 -1
  34. package/lib/components/LayerManager/LayerSelect/ServiceOptionsDialog/ServiceOptionsDialog.d.ts +13 -3
  35. package/lib/components/LayerManager/LayerSelect/ServiceOptionsDialog/ServiceOptionsDialog.stories.d.ts +18 -2
  36. package/lib/components/LayerManager/LayerSelect/ServiceOptionsDialog/ServiceOptionsDialogConnect.d.ts +6 -1
  37. package/lib/components/LayerManager/LayerSelect/ServicePopup/ServicePopup.d.ts +11 -5
  38. package/lib/components/LayerManager/LayerSelect/ServicePopup/ServicePopup.stories.d.ts +49 -9
  39. package/lib/components/LayerManager/LayerSelect/ServicePopup/ServicePopupConnect.d.ts +2 -1
  40. package/lib/components/LayerManager/LayerSelect/ServicePopup/ServicePopupConnect.stories.d.ts +9 -0
  41. package/lib/components/LayerManager/LayerSelect/ServicePopup/utils.d.ts +8 -0
  42. package/lib/components/LayerManager/LayerSelect/ServicePopup/utils.spec.d.ts +1 -0
  43. package/lib/components/LayerManager/useFetchServices.d.ts +4 -0
  44. package/lib/components/LayerManager/useFetchServices.spec.d.ts +1 -0
  45. package/lib/components/MapView/useKeyboardZoomAndPan.d.ts +1 -0
  46. package/lib/components/MapView/useKeyboardZoomAndPan.spec.d.ts +1 -0
  47. package/lib/components/MapView/useTouchZoomPan.d.ts +1 -0
  48. package/lib/components/MapView/useTouchZoomPan.spec.d.ts +1 -0
  49. package/lib/components/MapWarning/MapWarningProperties.d.ts +1 -0
  50. package/lib/components/MultiMapDimensionSelect/DimensionSelectDialogConnect.d.ts +1 -1
  51. package/lib/components/MultiMapView/MultiMapViewConnect.d.ts +0 -1
  52. package/lib/components/ReactMapView/AdagucMapDraw.d.ts +12 -0
  53. package/lib/components/ReactMapView/types.d.ts +2 -1
  54. package/lib/components/Snackbar/SnackbarWrapperConnect.spec.d.ts +7 -0
  55. package/lib/components/Snackbar/index.d.ts +1 -0
  56. package/lib/components/TimeSlider/TimeSliderButtons/SpeedButton/SpeedButton.d.ts +1 -1
  57. package/lib/components/TimeSlider/TimeSliderButtons/SpeedButton/SpeedButtonConnect.d.ts +1 -5
  58. package/lib/components/TimeSlider/TimeSliderButtons/TimeSliderButtons.d.ts +0 -3
  59. package/lib/components/TimeSlider/TimeSliderButtons/TimeSliderMenu/TimeSliderMenu.d.ts +18 -0
  60. package/lib/components/TimeSlider/TimeSliderButtons/TimeSliderMenu/TimeSliderMenu.spec.d.ts +1 -0
  61. package/lib/components/TimeSlider/TimeSliderButtons/TimeSliderMenu/TimeSliderMenu.stories.d.ts +28 -0
  62. package/lib/components/TimeSlider/TimeSliderButtons/TimeStepButton/TimeStepButton.d.ts +3 -2
  63. package/lib/components/TimeSlider/TimeSliderButtons/TimeStepButton/TimeStepButton.stories.d.ts +30 -0
  64. package/lib/components/TimeSlider/TimeSliderConnect.stories.d.ts +6 -0
  65. package/lib/components/WMSLoader/services.d.ts +1 -0
  66. package/lib/hooks/index.d.ts +1 -0
  67. package/lib/hooks/useSetupDialog/index.d.ts +1 -0
  68. package/lib/hooks/useSetupDialog/useSetupDialog.d.ts +9 -0
  69. package/lib/hooks/useSetupDialog/useSetupDialog.spec.d.ts +1 -0
  70. package/lib/index.d.ts +5 -3
  71. package/lib/store/layerSelect/reducer.d.ts +8 -5
  72. package/lib/store/layerSelect/sagas.d.ts +3 -2
  73. package/lib/store/layerSelect/selectors.d.ts +53 -6
  74. package/lib/store/layerSelect/types.d.ts +32 -13
  75. package/lib/store/mapStore/service/types.d.ts +4 -1
  76. package/lib/store/snackbar/types.d.ts +2 -4
  77. package/lib/store/ui/types.d.ts +4 -1
  78. package/lib/storybookUtils/HelperComponents.d.ts +0 -1
  79. package/lib/storybookUtils/storyComponents/MapDrawGeoJSON.d.ts +34 -7
  80. package/lib/utils/defaultTestSettings.d.ts +1 -0
  81. package/lib/utils/getCapabilities.d.ts +4 -1
  82. package/package.json +6 -7
  83. package/lib/components/LayerManager/LayerSelect/LayerSelectUtils.d.ts +0 -4
  84. package/lib/storybookUtils/storyComponents/MapDrawGeoJSONStyles.d.ts +0 -4
@@ -0,0 +1 @@
1
+ export declare const useKeyboardZoomAndPan: (mapIsActive: boolean, mapId: string) => void;
@@ -0,0 +1 @@
1
+ export declare const useTouchZoomPan: (mapIsActive: boolean, mapId: string) => void;
@@ -0,0 +1 @@
1
+ export {};
@@ -9,6 +9,7 @@ interface WarningListProps {
9
9
  expires?: string;
10
10
  languages?: Language[];
11
11
  };
12
+ languageIndex?: number;
12
13
  }
13
14
  interface Language {
14
15
  language: string;
@@ -6,7 +6,7 @@ interface DimensionSelectDialogConnectProps {
6
6
  isOpen: boolean;
7
7
  order?: number;
8
8
  onMouseDown?: () => void;
9
- onToggleDialog?: (isDialogOpen: boolean) => void;
9
+ onCloseDialog?: () => void;
10
10
  index?: number;
11
11
  source?: Source;
12
12
  }
@@ -1,6 +1,5 @@
1
1
  import React from 'react';
2
2
  import { Bbox, Layer } from '../../store/mapStore/types';
3
- export declare const useStyles: (props?: any) => import("@mui/styles").ClassNameMap<"box">;
4
3
  export interface MultiMapPreset {
5
4
  id: string;
6
5
  title?: string;
@@ -40,6 +40,17 @@ export interface FeatureEvent {
40
40
  isInEditMode: boolean;
41
41
  feature: GeoJsonFeature;
42
42
  }
43
+ export interface AdagucMapDrawDrawFunctionArgs {
44
+ context: CanvasRenderingContext2D;
45
+ featureIndex: number;
46
+ coord: Coordinate;
47
+ selected: boolean;
48
+ isInEditMode: boolean;
49
+ feature: GeoJsonFeature;
50
+ mouseX: number;
51
+ mouseY: number;
52
+ isHovered: boolean;
53
+ }
43
54
  export interface AdagucMapDrawProps {
44
55
  webmapjs: WMJSMap;
45
56
  geojson: GeoJSON.FeatureCollection;
@@ -117,6 +128,7 @@ export default class AdagucMapDraw extends React.PureComponent<AdagucMapDrawProp
117
128
  webmapjs: any;
118
129
  featureNrToEdit: number;
119
130
  };
131
+ featureEvent: FeatureEvent;
120
132
  constructor(props: AdagucMapDrawProps);
121
133
  componentDidMount(): void;
122
134
  componentDidUpdate(prevProps: AdagucMapDrawProps): void;
@@ -1,6 +1,6 @@
1
1
  /// <reference types="react" />
2
2
  import { WMJSMap } from '@opengeoweb/webmap';
3
- import { SetMapDimensionPayload, Dimension, SetBboxPayload, Bbox, MapPinLocationPayload, MapLocation, UpdateLayerInfoPayload } from '../../store/mapStore/types';
3
+ import { SetMapDimensionPayload, Dimension, SetBboxPayload, Bbox, MapPinLocationPayload, MapLocation, UpdateLayerInfoPayload, Services } from '../../store/mapStore/types';
4
4
  export interface ReactMapViewProps {
5
5
  listeners?: {
6
6
  name?: string;
@@ -25,6 +25,7 @@ export interface ReactMapViewProps {
25
25
  shouldAutoFetch?: boolean;
26
26
  showLayerInfo?: boolean;
27
27
  disableMapPin?: boolean;
28
+ services?: Services;
28
29
  onMount?: (mapId: string, WMJSMapInstance: WMJSMap) => void;
29
30
  onUnMount?: (mapId: string, WMJSMapInstance: WMJSMap) => void;
30
31
  onMapChangeDimension?: (payload: SetMapDimensionPayload) => void;
@@ -1 +1,8 @@
1
+ import * as React from 'react';
2
+ import { Store } from '@reduxjs/toolkit';
3
+ interface TestProviderProps {
4
+ children?: React.ReactNode;
5
+ store: Store;
6
+ }
7
+ export declare const TestProvider: React.FC<TestProviderProps>;
1
8
  export {};
@@ -0,0 +1 @@
1
+ export { SnackbarWrapperConnect } from './SnackbarWrapperConnect';
@@ -1,6 +1,6 @@
1
1
  import * as React from 'react';
2
2
  export declare const speedTooltipTitle = "Speed";
3
- interface SpeedButtonProps {
3
+ export interface SpeedButtonProps {
4
4
  animationDelay: number;
5
5
  setMapAnimationDelay: (delay: number) => void;
6
6
  }
@@ -1,9 +1,5 @@
1
- /// <reference types="react" />
2
- import { mapActions } from '../../../../store';
3
1
  interface SpeedButtonConnectProps {
4
- animationDelay?: number;
5
2
  mapId: string;
6
- setMapAnimationDelay?: typeof mapActions.setAnimationDelay;
7
3
  }
8
- declare const SpeedButtonConnect: import("react-redux").ConnectedComponent<({ animationDelay, mapId, setMapAnimationDelay, }: SpeedButtonConnectProps) => JSX.Element, Omit<SpeedButtonConnectProps, "animationDelay" | "setMapAnimationDelay"> & SpeedButtonConnectProps & import("react-redux").ConnectProps>;
4
+ declare const SpeedButtonConnect: ({ mapId, }: SpeedButtonConnectProps) => JSX.Element;
9
5
  export default SpeedButtonConnect;
@@ -1,10 +1,7 @@
1
1
  import * as React from 'react';
2
2
  interface TimeSliderButtonsProps {
3
- autoUpdateBtn?: React.ReactChild;
4
3
  optionsMenuBtn?: React.ReactChild;
5
4
  playBtn?: React.ReactChild;
6
- speedBtn?: React.ReactChild;
7
- timeStepBtn?: React.ReactChild;
8
5
  }
9
6
  declare const TimeSliderButtons: React.FC<TimeSliderButtonsProps>;
10
7
  export default TimeSliderButtons;
@@ -0,0 +1,18 @@
1
+ /// <reference types="react" />
2
+ export interface Mark {
3
+ label?: string;
4
+ value: number;
5
+ text: string;
6
+ }
7
+ export interface TimeSliderMenuProps {
8
+ marks: Mark[];
9
+ value: number;
10
+ handleMenuItemClick: (mark: Mark) => void;
11
+ title: string;
12
+ icon: JSX.Element;
13
+ isOpenByDefault?: boolean;
14
+ isDisabled?: boolean;
15
+ handleAutoClick?: () => void;
16
+ isAutoSelected?: boolean;
17
+ }
18
+ export declare const TimeSliderMenu: ({ marks, value, isOpenByDefault, handleMenuItemClick, isDisabled, handleAutoClick, isAutoSelected, title, icon, }: TimeSliderMenuProps) => JSX.Element;
@@ -0,0 +1,28 @@
1
+ declare const _default: {
2
+ title: string;
3
+ };
4
+ export default _default;
5
+ export declare const TimeSliderMenuDemoLight: {
6
+ (): JSX.Element;
7
+ story: {
8
+ name: string;
9
+ parameters: {
10
+ zeplinLink: {
11
+ name: string;
12
+ link: string;
13
+ }[];
14
+ };
15
+ };
16
+ };
17
+ export declare const TimeSliderMenuDemoDark: {
18
+ (): JSX.Element;
19
+ story: {
20
+ name: string;
21
+ parameters: {
22
+ zeplinLink: {
23
+ name: string;
24
+ link: string;
25
+ }[];
26
+ };
27
+ };
28
+ };
@@ -1,13 +1,14 @@
1
1
  import * as React from 'react';
2
2
  import { Dimension, MapActionOrigin } from '../../../../store/mapStore/types';
3
3
  export declare const timeStepTitle = "Time step";
4
- interface TimeStepProps {
4
+ export interface TimeStepButtonProps {
5
5
  timeStep: number;
6
6
  disabled?: boolean;
7
7
  isTimestepAuto?: boolean;
8
8
  timeDimension?: Dimension;
9
9
  onChangeTimeStep: (scale: number, origin?: MapActionOrigin) => void;
10
10
  onToggleTimestepAuto?: () => void;
11
+ isOpenByDefault?: boolean;
11
12
  }
12
- declare const TimeStepButton: React.FC<TimeStepProps>;
13
+ declare const TimeStepButton: React.FC<TimeStepButtonProps>;
13
14
  export default TimeStepButton;
@@ -0,0 +1,30 @@
1
+ declare const _default: {
2
+ title: string;
3
+ };
4
+ export default _default;
5
+ export declare const TimeStepButtonDemoLight: {
6
+ (): JSX.Element;
7
+ storyName: string;
8
+ story: {
9
+ name: string;
10
+ parameters: {
11
+ zeplinLink: {
12
+ name: string;
13
+ link: string;
14
+ }[];
15
+ };
16
+ };
17
+ };
18
+ export declare const TimeStepButtonDemoDark: {
19
+ (): JSX.Element;
20
+ storyName: string;
21
+ story: {
22
+ name: string;
23
+ parameters: {
24
+ zeplinLink: {
25
+ name: string;
26
+ link: string;
27
+ }[];
28
+ };
29
+ };
30
+ };
@@ -6,4 +6,10 @@ export default _default;
6
6
  export declare const DemoTimeSliderConnect: {
7
7
  (): React.ReactElement;
8
8
  storyName: string;
9
+ parameters: {
10
+ zeplinLink: {
11
+ name: string;
12
+ link: string;
13
+ }[];
14
+ };
9
15
  };
@@ -3,4 +3,5 @@ export interface Service {
3
3
  url: string;
4
4
  id: string;
5
5
  isUserAddedService?: boolean;
6
+ abstract?: string;
6
7
  }
@@ -0,0 +1 @@
1
+ export * from './useSetupDialog';
@@ -0,0 +1 @@
1
+ export * from './useSetupDialog';
@@ -0,0 +1,9 @@
1
+ import type { uiTypes } from '../..';
2
+ export interface SetupDialogReturnValue {
3
+ setDialogOrder: () => void;
4
+ dialogOrder: number;
5
+ onCloseDialog: () => void;
6
+ uiSource: uiTypes.Source;
7
+ isDialogOpen: boolean;
8
+ }
9
+ export declare const useSetupDialog: (dialogType: uiTypes.DialogType) => SetupDialogReturnValue;
@@ -0,0 +1 @@
1
+ export {};
package/lib/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { mapSelectors, uiActions, uiSelectors, layerActions, genericActions } from './store';
1
+ import { mapSelectors, uiActions, uiSelectors, layerActions, genericActions, snackbarActions } from './store';
2
2
  import * as mapTypes from './store/mapStore/types';
3
3
  import * as mapUtils from './store/mapStore/map/utils';
4
4
  import * as uiTypes from './store/ui/types';
@@ -8,6 +8,7 @@ import * as SyncGroups from './store/generic/synchronizationGroups';
8
8
  import coreModuleConfig from './store/coreModuleConfig';
9
9
  import { LayerManagerConnect, LayerManagerMapButtonConnect } from './components/LayerManager';
10
10
  import { MultiDimensionSelectMapButtonsConnect, MultiMapDimensionSelectConnect } from './components/MultiMapDimensionSelect';
11
+ export * from './hooks';
11
12
  export * from './components/MultiMapView/MultiMapViewConnect';
12
13
  export * from './components/MultiMapView/HarmoniePresets';
13
14
  export { MapViewConnect, MapView, MapViewLayer } from './components/MapView';
@@ -74,7 +75,7 @@ export declare const mapActions: {
74
75
  setAvailableBaseLayers: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload<mapTypes.AddAvailableBaseLayersPayload, string>;
75
76
  onUpdateLayerInformation: import("@reduxjs/toolkit").ActionCreatorWithOptionalPayload<mapTypes.UpdateLayerInfoPayload, string>;
76
77
  };
77
- export { mapSelectors, mapTypes, mapUtils, layerReducer, layerActions, uiActions, uiSelectors, uiTypes, genericActions as syncGroupActions, };
78
+ export { mapSelectors, mapTypes, mapUtils, layerReducer, layerActions, uiActions, uiSelectors, uiTypes, genericActions as syncGroupActions, snackbarActions, };
78
79
  export { synchronizationGroupConfig as synchronizationGroupModuleConfig };
79
80
  export * from './components/ComponentsLookUp';
80
81
  export * from './components/ConfigurableMap';
@@ -93,8 +94,9 @@ export * from './utils/jsonPresetFilter';
93
94
  export * from './utils/types';
94
95
  export * as defaultConfigurations from './utils/defaultConfigurations';
95
96
  export * from './components/Providers/Providers';
97
+ export * from './components/Snackbar';
96
98
  export { default as uiModuleConfig } from './store/ui/config';
97
99
  export { default as mapModuleConfig } from './store/mapStore/config';
98
100
  export { default as synchronizationGroupsConfig } from './store/generic/config';
99
101
  export * from './components/MapWarning/MapWarningProperties';
100
- export type { FeatureEvent, GeoFeatureStyle, } from './components/ReactMapView/AdagucMapDraw';
102
+ export type { FeatureEvent, GeoFeatureStyle, AdagucMapDrawDrawFunctionArgs, GeoJsonFeature, } from './components/ReactMapView/AdagucMapDraw';
@@ -1,13 +1,16 @@
1
1
  import { PayloadAction } from '@reduxjs/toolkit';
2
- import { AddKeywordsAndActiveServicesPayload, DisableActiveServicePayload, EnableActiveServicePayload, EnableOnlyOneKeywordPayload, LayerSelectServiceRemovedPayload, LayerSelectStoreType, SetSearchFilterPayload, ToggleKeywordsPayload } from './types';
2
+ import { AddKeywordsAndActiveServicesPayload, DisableActiveServicePayload, EnableActiveServicePayload, EnableOnlyOneKeywordPayload, LayerSelectRemoveServicePayload, LayerSelectStoreType, SetAllServicesEnabledPayload, SetActiveLayerInfoPayload, SetSearchFilterPayload, ToggleKeywordsPayload } from './types';
3
3
  export declare const initialState: LayerSelectStoreType;
4
4
  export declare const reducer: import("@reduxjs/toolkit").Reducer<LayerSelectStoreType, import("@reduxjs/toolkit").AnyAction>;
5
5
  export declare const layerSelectActions: import("@reduxjs/toolkit").CaseReducerActions<{
6
6
  setSearchFilter: (draft: import("immer/dist/internal").WritableDraft<LayerSelectStoreType>, action: PayloadAction<SetSearchFilterPayload>) => void;
7
- addKeywordsAndActiveServices: (draft: import("immer/dist/internal").WritableDraft<LayerSelectStoreType>, action: PayloadAction<AddKeywordsAndActiveServicesPayload>) => void;
8
- layerSelectServiceRemoved: (draft: import("immer/dist/internal").WritableDraft<LayerSelectStoreType>, action: PayloadAction<LayerSelectServiceRemovedPayload>) => void;
7
+ setAllServicesEnabled: (draft: import("immer/dist/internal").WritableDraft<LayerSelectStoreType>, action: PayloadAction<SetAllServicesEnabledPayload>) => void;
8
+ addFiltersAndActiveServices: (draft: import("immer/dist/internal").WritableDraft<LayerSelectStoreType>, action: PayloadAction<AddKeywordsAndActiveServicesPayload>) => void;
9
+ layerSelectRemoveService: (draft: import("immer/dist/internal").WritableDraft<LayerSelectStoreType>, action: PayloadAction<LayerSelectRemoveServicePayload>) => void;
9
10
  enableActiveService: (draft: import("immer/dist/internal").WritableDraft<LayerSelectStoreType>, action: PayloadAction<EnableActiveServicePayload>) => void;
10
11
  disableActiveService: (draft: import("immer/dist/internal").WritableDraft<LayerSelectStoreType>, action: PayloadAction<DisableActiveServicePayload>) => void;
11
- toggleKeywords: (draft: import("immer/dist/internal").WritableDraft<LayerSelectStoreType>, action: PayloadAction<ToggleKeywordsPayload>) => void;
12
- enableOnlyOneKeyword: (draft: import("immer/dist/internal").WritableDraft<LayerSelectStoreType>, action: PayloadAction<EnableOnlyOneKeywordPayload>) => void;
12
+ toggleFilter: (draft: import("immer/dist/internal").WritableDraft<LayerSelectStoreType>, action: PayloadAction<ToggleKeywordsPayload>) => void;
13
+ enableOnlyOneFilter: (draft: import("immer/dist/internal").WritableDraft<LayerSelectStoreType>, action: PayloadAction<EnableOnlyOneKeywordPayload>) => void;
14
+ setActiveLayerInfo: (draft: import("immer/dist/internal").WritableDraft<LayerSelectStoreType>, action: PayloadAction<SetActiveLayerInfoPayload>) => void;
13
15
  }>;
16
+ export declare type LayerSelectActions = ReturnType<typeof layerSelectActions.setSearchFilter> | ReturnType<typeof layerSelectActions.addFiltersAndActiveServices> | ReturnType<typeof layerSelectActions.layerSelectRemoveService> | ReturnType<typeof layerSelectActions.enableActiveService> | ReturnType<typeof layerSelectActions.disableActiveService> | ReturnType<typeof layerSelectActions.toggleFilter> | ReturnType<typeof layerSelectActions.enableOnlyOneFilter> | ReturnType<typeof layerSelectActions.setActiveLayerInfo>;
@@ -1,7 +1,8 @@
1
1
  import { SagaIterator } from 'redux-saga';
2
- import { ServiceActions, serviceActions } from '../mapStore/service/reducer';
2
+ import { serviceActions, ServiceActions } from '../mapStore/service/reducer';
3
+ import { LayerSelectActions } from './reducer';
3
4
  export declare function newServiceAddedSaga(capturedAction: ServiceActions): SagaIterator;
4
- export declare function layerSelectServiceRemovedSaga(capturedAction: ServiceActions): SagaIterator;
5
+ export declare function layerSelectRemoveServiceSaga(capturedAction: LayerSelectActions): SagaIterator;
5
6
  export declare function addServiceToLocalStorageSaga({ payload, }: ReturnType<typeof serviceActions.serviceSetLayers>): void;
6
7
  export declare function removeServiceFromLocalStorageSaga({ payload, }: ReturnType<typeof serviceActions.mapStoreRemoveService>): void;
7
8
  export declare function rootSaga(): SagaIterator;
@@ -1,5 +1,5 @@
1
1
  import { AppStore } from '../../types/types';
2
- import { LayerSelectStoreType, ActiveServices, KeywordObject } from './types';
2
+ import { LayerSelectStoreType, ActiveServices, ActiveServiceObject, Filter, ActiveLayerObject } from './types';
3
3
  /**
4
4
  * Returns search filter string
5
5
  *
@@ -38,6 +38,15 @@ export declare const getActiveServices: ((state: {
38
38
  }> & {
39
39
  clearCache: () => void;
40
40
  };
41
+ /**
42
+ * Returns active services by id
43
+ *
44
+ * Example getActiveServices(store, 'server-id');
45
+ * @param {object} store store: object - store object
46
+ * @param {serverId} serverId serverId: string - active server id
47
+ * @returns {object} returnType: object of active service
48
+ */
49
+ export declare const getActiveServiceById: (store: AppStore, serviceId: string) => ActiveServiceObject;
41
50
  /**
42
51
  * Returns all ids of enabled services
43
52
  *
@@ -64,7 +73,7 @@ export declare const getEnabledServiceIds: ((state: {
64
73
  * @param {object} store store: object - store object
65
74
  * @returns {array} returnType: array of keyword ids that are checked
66
75
  */
67
- export declare const getCheckedKeywordIds: ((state: {
76
+ export declare const getCheckedFilterIds: ((state: {
68
77
  syncronizationGroupStore?: import("../generic/synchronizationGroups/types").SynchronizationGroupState;
69
78
  ui?: import("../ui/types").UIStoreType;
70
79
  webmap?: import("../mapStore/types").WebMapState;
@@ -83,7 +92,7 @@ export declare const getCheckedKeywordIds: ((state: {
83
92
  * @param {object} store store: object - store object
84
93
  * @returns {array} returnType: array of all keyword ids
85
94
  */
86
- export declare const getAllKeywordIds: ((state: {
95
+ export declare const getAllFilterIds: ((state: {
87
96
  syncronizationGroupStore?: import("../generic/synchronizationGroups/types").SynchronizationGroupState;
88
97
  ui?: import("../ui/types").UIStoreType;
89
98
  webmap?: import("../mapStore/types").WebMapState;
@@ -95,6 +104,25 @@ export declare const getAllKeywordIds: ((state: {
95
104
  }> & {
96
105
  clearCache: () => void;
97
106
  };
107
+ /**
108
+ * Returns all filters
109
+ *
110
+ * Example getAllFilters(store);
111
+ * @param {object} store store: object - store object
112
+ * @returns {array} returnType: array of all filters
113
+ */
114
+ export declare const getAllFilters: ((state: {
115
+ syncronizationGroupStore?: import("../generic/synchronizationGroups/types").SynchronizationGroupState;
116
+ ui?: import("../ui/types").UIStoreType;
117
+ webmap?: import("../mapStore/types").WebMapState;
118
+ services?: import("../mapStore/types").ServiceState;
119
+ layers?: import("../mapStore/types").LayerState;
120
+ layerSelect?: LayerSelectStoreType;
121
+ }) => Filter[]) & import("reselect").OutputSelectorFields<(args_0: LayerSelectStoreType) => Filter[] & {
122
+ clearCache: () => void;
123
+ }> & {
124
+ clearCache: () => void;
125
+ };
98
126
  /**
99
127
  * Returns if all keywords are checked
100
128
  *
@@ -102,7 +130,7 @@ export declare const getAllKeywordIds: ((state: {
102
130
  * @param {object} store store: object - store object
103
131
  * @returns {array} returnType: boolean if all keywords are checked
104
132
  */
105
- export declare const isAllKeywordsChecked: ((state: {
133
+ export declare const isAllFiltersChecked: ((state: {
106
134
  syncronizationGroupStore?: import("../generic/synchronizationGroups/types").SynchronizationGroupState;
107
135
  ui?: import("../ui/types").UIStoreType;
108
136
  webmap?: import("../mapStore/types").WebMapState;
@@ -119,7 +147,26 @@ export declare const isAllKeywordsChecked: ((state: {
119
147
  *
120
148
  * Example: keywordObject = getKeywordObjectById(store, 'keywordId')
121
149
  * @param {object} store object from which the keyword state will be extracted
122
- * @param {string} keywordId Id of the keyword
150
+ * @param {string} filterId Id of the keyword
123
151
  * @returns {object} object containing keyword information (id, amount, amountVisible, checked)
124
152
  */
125
- export declare const getKeywordObjectById: (store: AppStore, keywordId: string) => KeywordObject;
153
+ export declare const getFilterById: (store: AppStore, filterId: string) => Filter;
154
+ /**
155
+ * Returns the active layer info
156
+ *
157
+ * Example getActiveLayerInfo(store);
158
+ * @param {object} store store: object - store object
159
+ * @returns {object} returnType: ActiveLayerObject
160
+ */
161
+ export declare const getActiveLayerInfo: ((state: {
162
+ syncronizationGroupStore?: import("../generic/synchronizationGroups/types").SynchronizationGroupState;
163
+ ui?: import("../ui/types").UIStoreType;
164
+ webmap?: import("../mapStore/types").WebMapState;
165
+ services?: import("../mapStore/types").ServiceState;
166
+ layers?: import("../mapStore/types").LayerState;
167
+ layerSelect?: LayerSelectStoreType;
168
+ }) => ActiveLayerObject) & import("reselect").OutputSelectorFields<(args_0: LayerSelectStoreType) => ActiveLayerObject & {
169
+ clearCache: () => void;
170
+ }> & {
171
+ clearCache: () => void;
172
+ };
@@ -1,8 +1,14 @@
1
+ import { ServiceLayer } from '../mapStore/types';
2
+ export interface ActiveLayerObject extends ServiceLayer {
3
+ serviceName: string;
4
+ }
1
5
  export interface ActiveServiceObject {
6
+ serviceId?: string;
2
7
  serviceName?: string;
3
8
  serviceUrl?: string;
9
+ abstract?: string;
4
10
  enabled?: boolean;
5
- keywordsPerService?: string[];
11
+ filterIds?: string[];
6
12
  isUserAddedService?: boolean;
7
13
  }
8
14
  export interface ActiveServices {
@@ -12,17 +18,19 @@ export interface ActiveServiceType {
12
18
  byId: ActiveServices;
13
19
  allIds: string[];
14
20
  }
15
- export interface KeywordObject {
16
- id?: string;
21
+ export interface Filter {
22
+ id: string;
23
+ name: string;
17
24
  amount?: number;
18
25
  amountVisible?: number;
19
26
  checked?: boolean;
27
+ type: 'keyword' | 'group';
20
28
  }
21
- export interface Keywords {
22
- [key: string]: KeywordObject;
29
+ export interface FiltersById {
30
+ [key: string]: Filter;
23
31
  }
24
- export interface KeywordType {
25
- byId: Keywords;
32
+ export interface Filters {
33
+ byId: FiltersById;
26
34
  allIds: string[];
27
35
  }
28
36
  export interface LayerSelectModuleState {
@@ -30,36 +38,47 @@ export interface LayerSelectModuleState {
30
38
  }
31
39
  export interface LayerSelectStoreType {
32
40
  filters: FiltersType;
41
+ allServicesEnabled: boolean;
42
+ activeLayerInfo: ActiveLayerObject;
33
43
  }
34
44
  export interface FiltersType {
35
45
  searchFilter: string;
36
46
  activeServices: ActiveServiceType;
37
- keywords: KeywordType;
47
+ filters: Filters;
38
48
  }
39
49
  export interface SetSearchFilterPayload {
40
50
  filterText: string;
41
51
  }
52
+ export interface SetAllServicesEnabledPayload {
53
+ allServicesEnabled: boolean;
54
+ }
42
55
  export interface EnableActiveServicePayload {
43
56
  serviceId: string;
44
- keywords: string[];
57
+ filters: string[];
45
58
  }
46
59
  export interface DisableActiveServicePayload {
47
60
  serviceId: string;
48
- keywords: string[];
61
+ filters: string[];
49
62
  }
50
63
  export interface AddKeywordsAndActiveServicesPayload {
51
64
  serviceId: string;
52
65
  serviceName: string;
53
66
  serviceUrl: string;
67
+ abstract?: string;
54
68
  keywords: string[];
55
69
  isUserAddedService: boolean;
70
+ groups: string[];
56
71
  }
57
- export interface LayerSelectServiceRemovedPayload {
72
+ export interface LayerSelectRemoveServicePayload {
58
73
  serviceId: string;
74
+ serviceUrl?: string;
59
75
  }
60
76
  export interface ToggleKeywordsPayload {
61
- keywords: string[];
77
+ filterIds: string[];
62
78
  }
63
79
  export interface EnableOnlyOneKeywordPayload {
64
- keyword: string;
80
+ filterId: string;
81
+ }
82
+ export interface SetActiveLayerInfoPayload {
83
+ layer: ActiveLayerObject;
65
84
  }
@@ -1,4 +1,4 @@
1
- import { Style } from '@opengeoweb/webmap';
1
+ import { Dimension, GeographicBoundingBox, Style } from '@opengeoweb/webmap';
2
2
  export interface Services {
3
3
  [key: string]: ReduxService;
4
4
  }
@@ -20,6 +20,8 @@ export interface ServiceLayer {
20
20
  abstract?: string;
21
21
  keywords?: string[];
22
22
  styles?: Style[];
23
+ dimensions?: Dimension[];
24
+ geographicBoundingBox?: GeographicBoundingBox;
23
25
  }
24
26
  export interface ServiceState {
25
27
  byId: Services;
@@ -29,6 +31,7 @@ export interface SetLayersForServicePayload {
29
31
  id: string;
30
32
  name: string;
31
33
  serviceUrl: string;
34
+ abstract?: string;
32
35
  layers: ServiceLayer[];
33
36
  isUserAddedService: boolean;
34
37
  }
@@ -1,8 +1,6 @@
1
1
  import { EntityState } from '@reduxjs/toolkit';
2
- export interface SnackbarMessage {
2
+ export interface SnackbarItem {
3
3
  message: string;
4
- }
5
- export interface SnackbarItem extends SnackbarMessage {
6
4
  id: string;
7
5
  }
8
6
  export declare type SnackbarState = EntityState<SnackbarItem>;
@@ -10,7 +8,7 @@ export interface SnackbarModuleStore {
10
8
  snackbar?: SnackbarState;
11
9
  }
12
10
  export interface OpenSnackbarPayload {
13
- snackbarContent: SnackbarMessage;
11
+ message: string;
14
12
  }
15
13
  export interface TriggerOpenSnackbarBySagaPayload {
16
14
  snackbarContent: SnackbarItem;
@@ -1,6 +1,9 @@
1
1
  import { MapActionOrigin } from '../mapStore/types';
2
2
  declare type LegendDialogType = string;
3
- export declare type DialogType = 'layerManager' | 'layerSelect' | 'dimensionSelect-elevation' | 'dimensionSelect-ensemble_member' | 'keywordFilter' | 'timeSeriesManager' | 'timeSeriesSelect' | 'syncGroups' | LegendDialogType;
3
+ export declare enum DialogTypes {
4
+ LayerInfo = "layerInfo"
5
+ }
6
+ export declare type DialogType = 'layerManager' | 'layerSelect' | DialogTypes.LayerInfo | 'dimensionSelect-elevation' | 'dimensionSelect-ensemble_member' | 'keywordFilter' | 'timeSeriesManager' | 'timeSeriesSelect' | 'syncGroups' | LegendDialogType;
4
7
  export declare type Source = 'app' | 'module';
5
8
  export interface UIType {
6
9
  type: DialogType;
@@ -1,6 +1,5 @@
1
1
  import * as React from 'react';
2
2
  import { Layer } from '../store/mapStore/layers/types';
3
- export declare const useStyles: (props?: any) => import("@mui/styles").ClassNameMap<"content" | "title" | "root" | "chips">;
4
3
  declare type ExampleLayer = {
5
4
  title: string;
6
5
  layers: Layer[];