@opengeoweb/core 2.1.4 → 2.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 (81) hide show
  1. package/index.esm.js +2864 -1816
  2. package/index.umd.js +2900 -1818
  3. package/lib/components/ComponentsLookUp/componentsLookUp.d.ts +3 -3
  4. package/lib/components/ConfigurableConnectedMap/ConfigurableConnectedMap.d.ts +2 -0
  5. package/lib/components/ConfigurableMapWithSlider/ConfigurableMapWithSliderConnect.d.ts +3 -0
  6. package/lib/components/CustomSwitch/CustomSwitch.stories.d.ts +4 -0
  7. package/lib/components/LayerManager/LayerContainerRow/LayerManagerButton.d.ts +1 -0
  8. package/lib/components/LayerManager/LayerContainerRow/LayerRow/Menubutton/MenuButton.d.ts +0 -2
  9. package/lib/components/LayerManager/LayerContainerRow/LayerRow/styles.d.ts +1 -0
  10. package/lib/components/LayerManager/LayerSelect/KeywordFilterResults/KeywordFilterResults.d.ts +1 -2
  11. package/lib/components/LayerManager/LayerSelect/KeywordFilterResults/KeywordFilterResultsListItem.d.ts +4 -5
  12. package/lib/components/LayerManager/LayerSelect/KeywordFilterResults/KeywordFilterResultsListItemConnect.d.ts +6 -0
  13. package/lib/components/{Mapcontrols/MapControlButton.spec.d.ts → LayerManager/LayerSelect/KeywordFilterResults/KeywordFilterResultsListItemConnect.spec.d.ts} +0 -0
  14. package/lib/components/LayerManager/LayerSelect/KeywordFilterResults/KeywordFilterSelectAllSwitchConnect.d.ts +3 -0
  15. package/lib/components/{Mapcontrols/MapControls.spec.d.ts → LayerManager/LayerSelect/KeywordFilterResults/KeywordFilterSelectAllSwitchConnect.spec.d.ts} +0 -0
  16. package/lib/components/{Mapcontrols/ZoomControls.spec.d.ts → LayerManager/LayerSelect/KeywordFilterResults/keywordFilterResultsConnect.spec.d.ts} +0 -0
  17. package/lib/components/LayerManager/LayerSelect/LayerList/LayerAddRemoveButton.d.ts +18 -0
  18. package/lib/components/{Mapcontrols/ZoomControlsConnect.spec.d.ts → LayerManager/LayerSelect/LayerList/LayerAddRemoveButton.spec.d.ts} +0 -0
  19. package/lib/components/LayerManager/LayerSelect/LayerList/LayerList.d.ts +12 -0
  20. package/lib/components/LayerManager/LayerSelect/LayerList/LayerListConnect.d.ts +1 -0
  21. package/lib/components/LayerManager/LayerSelect/LayerList/LayerListUtils.d.ts +2 -0
  22. package/lib/components/{ToggleIconButton/ToggleIconButton.spec.d.ts → LayerManager/LayerSelect/LayerList/LayerListUtils.spec.d.ts} +0 -0
  23. package/lib/components/LayerManager/LayerSelect/ServiceList/ServiceList.d.ts +2 -2
  24. package/lib/components/LayerManager/LayerSelect/ServiceOptionsDialog/ServiceOptionsDialog.d.ts +4 -1
  25. package/lib/components/LayerManager/LayerSelect/ServiceOptionsDialog/ServiceOptionsDialogConnect.d.ts +3 -0
  26. package/lib/components/LayerManager/LayerSelect/ServiceOptionsDialog/ServiceOptionsDialogConnect.spec.d.ts +1 -0
  27. package/lib/components/LayerManager/LayerSelect/ServicePopup/ServicePopup.d.ts +3 -0
  28. package/lib/components/LayerManager/LayerSelect/ServicePopup/ServicePopupConnect.d.ts +10 -0
  29. package/lib/components/{Mapcontrols → MapControls}/MapControlButton.d.ts +2 -2
  30. package/lib/components/MapControls/MapControlButton.spec.d.ts +1 -0
  31. package/lib/components/{Mapcontrols → MapControls}/MapControls.d.ts +0 -0
  32. package/lib/components/MapControls/MapControls.spec.d.ts +1 -0
  33. package/lib/components/{Mapcontrols → MapControls}/ZoomControls.d.ts +0 -0
  34. package/lib/components/MapControls/ZoomControls.spec.d.ts +1 -0
  35. package/lib/components/{Mapcontrols → MapControls}/ZoomControlsConnect.d.ts +0 -0
  36. package/lib/components/MapControls/ZoomControlsConnect.spec.d.ts +1 -0
  37. package/lib/components/{Mapcontrols → MapControls}/index.d.ts +0 -0
  38. package/lib/components/MapView/MapViewConnect.DisableMapPin.stories.d.ts +5 -0
  39. package/lib/components/MapView/MapViewConnect.SelectorTest.stories.d.ts +2 -0
  40. package/lib/components/MapView/MapViewConnect.stories.d.ts +2 -0
  41. package/lib/components/MultiMapView/HarmoniePresets/HarmRefTimePreset.d.ts +2 -2
  42. package/lib/components/MultiMapView/HarmoniePresets/HarmonieTempAndPrecipPreset.d.ts +4 -4
  43. package/lib/components/MultiMapView/MultiMapViewConnect.d.ts +2 -1
  44. package/lib/components/MultiMapView/storyUtils/mapPresets.d.ts +81 -0
  45. package/lib/components/ReactMapView/types.d.ts +1 -0
  46. package/lib/components/SyncGroups/selector.d.ts +13 -2
  47. package/lib/components/TooltipSelect/TooltipSelect.d.ts +1 -0
  48. package/lib/index.d.ts +8 -3
  49. package/lib/store/advancedLayerStore/selectors.d.ts +13 -2
  50. package/lib/store/generic/selectors.d.ts +21 -3
  51. package/lib/store/generic/synchronizationGroups/selectors.d.ts +13 -1
  52. package/lib/store/generic/synchronizationGroups/types.d.ts +1 -0
  53. package/lib/store/layerSelect/actions.d.ts +5 -9
  54. package/lib/store/layerSelect/constants.d.ts +4 -2
  55. package/lib/store/layerSelect/sagas.d.ts +2 -2
  56. package/lib/store/layerSelect/selectors.d.ts +106 -9
  57. package/lib/store/layerSelect/types.d.ts +60 -30
  58. package/lib/store/mapStore/layers/selectors.d.ts +222 -18
  59. package/lib/store/mapStore/map/actions.d.ts +8 -1
  60. package/lib/store/mapStore/map/constants.d.ts +1 -0
  61. package/lib/store/mapStore/map/selectors.d.ts +481 -54
  62. package/lib/store/mapStore/map/types.d.ts +11 -2
  63. package/lib/store/mapStore/service/actions.d.ts +8 -1
  64. package/lib/store/mapStore/service/constants.d.ts +1 -0
  65. package/lib/store/mapStore/service/selectors.d.ts +107 -8
  66. package/lib/store/mapStore/service/types.d.ts +10 -3
  67. package/lib/store/mapStore/utils/helpers.d.ts +0 -1
  68. package/lib/store/ui/selectors.d.ts +67 -7
  69. package/lib/store/ui/types.d.ts +1 -1
  70. package/lib/store/utils.d.ts +6 -0
  71. package/lib/utils/defaultConfigurations.d.ts +3 -21
  72. package/lib/utils/defaultTestSettings.d.ts +7 -7
  73. package/lib/utils/getCapabilities.d.ts +3 -2
  74. package/lib/utils/jsonPresetFilter.d.ts +10 -0
  75. package/lib/utils/jsonPresetFilter.spec.d.ts +1 -0
  76. package/lib/utils/types.d.ts +43 -0
  77. package/package.json +6 -6
  78. package/lib/components/LayerManager/LayerContainerRow/LayerRow/Menubutton/MenuItemButton.d.ts +0 -8
  79. package/lib/components/ToggleIconButton/ToggleIconButton.d.ts +0 -12
  80. package/lib/components/ToggleIconButton/ToggleIconButton.stories.d.ts +0 -13
  81. package/lib/components/ToggleIconButton/index.d.ts +0 -1
@@ -1,6 +1,6 @@
1
1
  import { DateInterval } from '@opengeoweb/webmap';
2
2
  import { Action } from 'redux';
3
- import { WEBMAP_LAYER_MOVE, WEBMAP_SET_BBOX, WEBMAP_MAP_UPDATE_ALL_DIMENSIONS, WEBMAP_MAP_CHANGE_DIMENSION, WEBMAP_START_ANIMATION, WEBMAP_STOP_ANIMATION, WEBMAP_REGISTER_MAP, WEBMAP_UNREGISTER_MAP, WEBMAP_SET_ACTIVELAYERID, WEBMAP_TOGGLE_AUTO_UPDATE, WEBMAP_TOGGLE_LOOP, WEBMAP_SET_TIME_SLIDER_SCALE, WEBMAP_SET_TIME_STEP, WEBMAP_SET_ANIMATION_DELAY, WEBMAP_SET_ANIMATION_START_TIME, WEBMAP_SET_ANIMATION_END_TIME, WEBMAP_TOGGLE_TIMESTEP_AUTO, WEBMAP_TOGGLE_TIME_SLIDER_HOVER, WEBMAP_SET_TIME_SLIDER_CENTER_TIME, WEBMAP_SET_TIME_SLIDER_SECONDS_PER_PX, WEBMAP_SET_TIME_SLIDER_DATA_SCALE_TO_SECONDS_PER_PX, WEBMAP_SET_PIN } from './constants';
3
+ import { WEBMAP_LAYER_MOVE, WEBMAP_SET_BBOX, WEBMAP_MAP_UPDATE_ALL_DIMENSIONS, WEBMAP_MAP_CHANGE_DIMENSION, WEBMAP_START_ANIMATION, WEBMAP_STOP_ANIMATION, WEBMAP_REGISTER_MAP, WEBMAP_UNREGISTER_MAP, WEBMAP_SET_ACTIVELAYERID, WEBMAP_TOGGLE_AUTO_UPDATE, WEBMAP_TOGGLE_LOOP, WEBMAP_SET_TIME_SLIDER_SCALE, WEBMAP_SET_TIME_STEP, WEBMAP_SET_ANIMATION_DELAY, WEBMAP_SET_ANIMATION_START_TIME, WEBMAP_SET_ANIMATION_END_TIME, WEBMAP_TOGGLE_TIMESTEP_AUTO, WEBMAP_TOGGLE_TIME_SLIDER_HOVER, WEBMAP_SET_TIME_SLIDER_CENTER_TIME, WEBMAP_SET_TIME_SLIDER_SECONDS_PER_PX, WEBMAP_SET_TIME_SLIDER_DATA_SCALE_TO_SECONDS_PER_PX, WEBMAP_SET_PIN, WEBMAP_DISABLE_PIN } from './constants';
4
4
  export interface Dimension {
5
5
  name?: string;
6
6
  units?: string;
@@ -36,6 +36,7 @@ export interface WebMap {
36
36
  isTimestepAuto?: boolean;
37
37
  isTimeSliderHoverOn?: boolean;
38
38
  mapPinLocation?: MapLocation;
39
+ disableMapPin?: boolean;
39
40
  }
40
41
  export interface WebMapState {
41
42
  byId: Record<string, WebMap>;
@@ -245,4 +246,12 @@ export interface MapPinLocationPayload {
245
246
  mapId: string;
246
247
  mapPinLocation: MapLocation;
247
248
  }
248
- export declare type MapActions = RegisterMap | UnregisterMap | SetMapDimension | UpdateAllMapDimensions | SetMapAnimationStart | SetMapAnimationStop | SetBbox | MoveLayer | SetActiveLayerId | ToggleAutoUpdate | ToggleLoop | SetTimeStep | SetTimeSliderScale | SetAnimationDelay | SetAnimationStartTime | SetAnimationEndTime | ToggleTimestepAuto | ToggleTimeSliderHover | SetTimeSliderCenterTime | SetTimeSliderSecondsPerPx | SetTimeSliderDataScaleToSecondsPerPx | SetMapPinLocation;
249
+ export interface SetDisableMapPin extends Action {
250
+ type: typeof WEBMAP_DISABLE_PIN;
251
+ payload: DisableMapPinPayload;
252
+ }
253
+ export interface DisableMapPinPayload {
254
+ mapId: string;
255
+ disableMapPin: boolean;
256
+ }
257
+ export declare type MapActions = RegisterMap | UnregisterMap | SetMapDimension | UpdateAllMapDimensions | SetMapAnimationStart | SetMapAnimationStop | SetBbox | MoveLayer | SetActiveLayerId | ToggleAutoUpdate | ToggleLoop | SetTimeStep | SetTimeSliderScale | SetAnimationDelay | SetAnimationStartTime | SetAnimationEndTime | ToggleTimestepAuto | ToggleTimeSliderHover | SetTimeSliderCenterTime | SetTimeSliderSecondsPerPx | SetTimeSliderDataScaleToSecondsPerPx | SetMapPinLocation | SetDisableMapPin;
@@ -1,4 +1,4 @@
1
- import { ServiceActions, SetLayersForServicePayload } from './types';
1
+ import { ServiceActions, SetLayersForServicePayload, MapStoreRemoveServicePayload } from './types';
2
2
  /**
3
3
  * Action serviceSetLayers is used automatically after calling the setLayers action. Contents is based on WMS GetCapabilities
4
4
  *
@@ -6,3 +6,10 @@ import { ServiceActions, SetLayersForServicePayload } from './types';
6
6
  * @param {object} payload consisting of service: string, layers: ServiceLayer[]
7
7
  */
8
8
  export declare const serviceSetLayers: (payload: SetLayersForServicePayload) => ServiceActions;
9
+ /**
10
+ * Action mapStoreRemoveService is used in ServiceOptionsDialogConnect after clicking the remove button. Action layerSelectServiceRemoved is used automatically after calling the mapStoreRemoveService action
11
+ *
12
+ * Example: mapStoreRemoveService({serviceUrl: someService})
13
+ * @param {object} payload consisting of serviceUrl: string
14
+ */
15
+ export declare const mapStoreRemoveService: (payload: MapStoreRemoveServicePayload) => ServiceActions;
@@ -1 +1,2 @@
1
1
  export declare const MAP_SERVICES_SET_LAYERS = "MAP_SERVICES_SET_LAYERS";
2
+ export declare const MAP_SERVICES_REMOVE_SERVICE = "MAP_SERVICES_REMOVE_SERVICE";
@@ -1,5 +1,4 @@
1
1
  import { Style } from '@opengeoweb/webmap';
2
- import { AppStore } from '../../../types/types';
3
2
  import { ServiceState, ServiceLayer, Service } from './types';
4
3
  /**
5
4
  * Retrieves all serviceIds
@@ -8,7 +7,19 @@ import { ServiceState, ServiceLayer, Service } from './types';
8
7
  * @param {object} store store: object - object from which the service state will be extracted
9
8
  * @returns {array} returnType: array - an array of all serviceIds
10
9
  */
11
- export declare const getServiceIds: import("reselect").OutputSelector<AppStore, string[], (res: ServiceState) => string[]>;
10
+ export declare const getServiceIds: ((state: {
11
+ advancedLayerStore?: import("../../advancedLayerStore/types").AdvancedLayerStoreState;
12
+ syncronizationGroupStore?: import("../../generic/synchronizationGroups/types").SynchronizationGroupState;
13
+ ui?: import("../../ui/types").UIStoreType;
14
+ webmap?: import("../types").WebMapState;
15
+ services?: ServiceState;
16
+ layers?: import("../types").LayerState;
17
+ layerSelect?: import("../../layerSelect/types").LayerSelectStoreType;
18
+ }) => string[]) & import("reselect").OutputSelectorFields<((args_0: ServiceState) => string[]) & {
19
+ clearCache: () => void;
20
+ }> & {
21
+ clearCache: () => void;
22
+ };
12
23
  /**
13
24
  * Gets map services
14
25
  *
@@ -16,7 +27,19 @@ export declare const getServiceIds: import("reselect").OutputSelector<AppStore,
16
27
  * @param {object} store store: object - Store object
17
28
  * @returns {object} returnType: ServiceState
18
29
  */
19
- export declare const getServices: import("reselect").OutputSelector<AppStore, import("./types").Services, (res: ServiceState) => import("./types").Services>;
30
+ export declare const getServices: ((state: {
31
+ advancedLayerStore?: import("../../advancedLayerStore/types").AdvancedLayerStoreState;
32
+ syncronizationGroupStore?: import("../../generic/synchronizationGroups/types").SynchronizationGroupState;
33
+ ui?: import("../../ui/types").UIStoreType;
34
+ webmap?: import("../types").WebMapState;
35
+ services?: ServiceState;
36
+ layers?: import("../types").LayerState;
37
+ layerSelect?: import("../../layerSelect/types").LayerSelectStoreType;
38
+ }) => import("./types").Services) & import("reselect").OutputSelectorFields<((args_0: ServiceState) => import("./types").Services) & {
39
+ clearCache: () => void;
40
+ }> & {
41
+ clearCache: () => void;
42
+ };
20
43
  /**
21
44
  * Gets the service object by its url
22
45
  *
@@ -24,16 +47,40 @@ export declare const getServices: import("reselect").OutputSelector<AppStore, im
24
47
  * @param {object} store store: object - Store object
25
48
  * @returns {Service} returnType: Service
26
49
  */
27
- export declare const getServiceByName: import("reselect").OutputParametricSelector<any, any, Service, (res1: ServiceState, res2: string) => Service>;
50
+ export declare const getServiceByName: ((state: {
51
+ advancedLayerStore?: import("../../advancedLayerStore/types").AdvancedLayerStoreState;
52
+ syncronizationGroupStore?: import("../../generic/synchronizationGroups/types").SynchronizationGroupState;
53
+ ui?: import("../../ui/types").UIStoreType;
54
+ webmap?: import("../types").WebMapState;
55
+ services?: ServiceState;
56
+ layers?: import("../types").LayerState;
57
+ layerSelect?: import("../../layerSelect/types").LayerSelectStoreType;
58
+ }, params_0: string) => Service) & import("reselect").OutputSelectorFields<(args_0: ServiceState, args_1: string) => Service & {
59
+ clearCache: () => void;
60
+ }> & {
61
+ clearCache: () => void;
62
+ };
28
63
  /**
29
64
  * Gets the layer from the store using the serviceUrl and layerName
30
65
  *
31
66
  * Example: layers = getLayersFromService(store, 'https://geoservices.knmi.nl/...')
32
67
  * @param {object} store store: object - object from which the layers state will be extracted
33
68
  * @param {string} serviceUrl serviceUrl: string - Url of the service where the layer belongs to
34
- * @returns {arrayr} returnType: ServiceLayer[] - All layers within the service object.
69
+ * @returns {array} returnType: ServiceLayer[] - All layers within the service object.
35
70
  */
36
- export declare const getLayersFromService: import("reselect").OutputParametricSelector<any, any, ServiceLayer[], (res: Service) => ServiceLayer[]>;
71
+ export declare const getLayersFromService: ((state: {
72
+ advancedLayerStore?: import("../../advancedLayerStore/types").AdvancedLayerStoreState;
73
+ syncronizationGroupStore?: import("../../generic/synchronizationGroups/types").SynchronizationGroupState;
74
+ ui?: import("../../ui/types").UIStoreType;
75
+ webmap?: import("../types").WebMapState;
76
+ services?: ServiceState;
77
+ layers?: import("../types").LayerState;
78
+ layerSelect?: import("../../layerSelect/types").LayerSelectStoreType;
79
+ }, params_0: string) => ServiceLayer[]) & import("reselect").OutputSelectorFields<((args_0: Service) => ServiceLayer[]) & {
80
+ clearCache: () => void;
81
+ }> & {
82
+ clearCache: () => void;
83
+ };
37
84
  /**
38
85
  * Gets the layer from the store using the serviceUrl and layerName
39
86
  *
@@ -43,7 +90,19 @@ export declare const getLayersFromService: import("reselect").OutputParametricSe
43
90
  * @param {string} layerName layerName: string - Name of the layer in the service
44
91
  * @returns {ServiceLayer} returnType: ServiceLayer - The layer from the service object.
45
92
  */
46
- export declare const getLayerFromService: import("reselect").OutputParametricSelector<AppStore, string, ServiceLayer, (res1: ServiceLayer[], res2: string, res3: string) => ServiceLayer>;
93
+ export declare const getLayerFromService: ((state: {
94
+ advancedLayerStore?: import("../../advancedLayerStore/types").AdvancedLayerStoreState;
95
+ syncronizationGroupStore?: import("../../generic/synchronizationGroups/types").SynchronizationGroupState;
96
+ ui?: import("../../ui/types").UIStoreType;
97
+ webmap?: import("../types").WebMapState;
98
+ services?: ServiceState;
99
+ layers?: import("../types").LayerState;
100
+ layerSelect?: import("../../layerSelect/types").LayerSelectStoreType;
101
+ }, params_0: string, params_1: string) => ServiceLayer) & import("reselect").OutputSelectorFields<((args_0: ServiceLayer[], args_1: string, args_2: string) => ServiceLayer) & {
102
+ clearCache: () => void;
103
+ }> & {
104
+ clearCache: () => void;
105
+ };
47
106
  /**
48
107
  * Gets the layers stylelist from the servicestore using the serviceUrl and layerName
49
108
  *
@@ -53,4 +112,44 @@ export declare const getLayerFromService: import("reselect").OutputParametricSel
53
112
  * @param {string} layerName layerName: string - Name of the layer in the service
54
113
  * @returns {array} returnType: Style[] - array containing layer styles
55
114
  */
56
- export declare const getLayerStyles: import("reselect").OutputParametricSelector<AppStore, string, Style[], (res: ServiceLayer) => Style[]>;
115
+ export declare const getLayerStyles: ((state: {
116
+ advancedLayerStore?: import("../../advancedLayerStore/types").AdvancedLayerStoreState;
117
+ syncronizationGroupStore?: import("../../generic/synchronizationGroups/types").SynchronizationGroupState;
118
+ ui?: import("../../ui/types").UIStoreType;
119
+ webmap?: import("../types").WebMapState;
120
+ services?: ServiceState;
121
+ layers?: import("../types").LayerState;
122
+ layerSelect?: import("../../layerSelect/types").LayerSelectStoreType;
123
+ }, params_0: string, params_1: string) => Style[]) & import("reselect").OutputSelectorFields<((args_0: ServiceLayer) => Style[]) & {
124
+ clearCache: () => void;
125
+ }> & {
126
+ clearCache: () => void;
127
+ };
128
+ /**
129
+ * Gets services and maps them into an array
130
+ *
131
+ * Example: services = getServices(store)
132
+ * @param {object} store store: object - Store object
133
+ * @returns {array} returnType: [] - array containing services
134
+ */
135
+ export declare const getServicesInArray: ((state: {
136
+ advancedLayerStore?: import("../../advancedLayerStore/types").AdvancedLayerStoreState;
137
+ syncronizationGroupStore?: import("../../generic/synchronizationGroups/types").SynchronizationGroupState;
138
+ ui?: import("../../ui/types").UIStoreType;
139
+ webmap?: import("../types").WebMapState;
140
+ services?: ServiceState;
141
+ layers?: import("../types").LayerState;
142
+ layerSelect?: import("../../layerSelect/types").LayerSelectStoreType;
143
+ }) => {
144
+ id: string;
145
+ name: string;
146
+ service: string;
147
+ }[]) & import("reselect").OutputSelectorFields<((args_0: ServiceState) => {
148
+ id: string;
149
+ name: string;
150
+ service: string;
151
+ }[]) & {
152
+ clearCache: () => void;
153
+ }> & {
154
+ clearCache: () => void;
155
+ };
@@ -1,7 +1,7 @@
1
1
  import { Style } from '@opengeoweb/webmap';
2
2
  import { Action } from 'redux';
3
3
  import type { UpdateLayerInfo } from '../types';
4
- import { MAP_SERVICES_SET_LAYERS } from './constants';
4
+ import { MAP_SERVICES_SET_LAYERS, MAP_SERVICES_REMOVE_SERVICE } from './constants';
5
5
  export interface Services {
6
6
  [key: string]: Service;
7
7
  }
@@ -19,7 +19,7 @@ export interface ServiceLayer {
19
19
  name: string;
20
20
  text: string;
21
21
  leaf: boolean;
22
- path: string;
22
+ path: string[];
23
23
  abstract?: string;
24
24
  keywords?: string[];
25
25
  styles?: Style[];
@@ -38,5 +38,12 @@ interface SetLayersForService extends Action {
38
38
  type: typeof MAP_SERVICES_SET_LAYERS;
39
39
  payload: SetLayersForServicePayload;
40
40
  }
41
- export declare type ServiceActions = SetLayersForService | UpdateLayerInfo;
41
+ export interface MapStoreRemoveServicePayload {
42
+ serviceUrl: string;
43
+ }
44
+ interface MapStoreRemoveService extends Action {
45
+ type: typeof MAP_SERVICES_REMOVE_SERVICE;
46
+ payload: MapStoreRemoveServicePayload;
47
+ }
48
+ export declare type ServiceActions = SetLayersForService | UpdateLayerInfo | MapStoreRemoveService;
42
49
  export {};
@@ -4,7 +4,6 @@ export declare const dateFormat = "YYYY-MM-DDTHH:mm:ss[Z]";
4
4
  export declare const generateLayerId: () => string;
5
5
  export declare const generateMapId: () => string;
6
6
  export declare const generateTimesliderId: () => string;
7
- export declare const generateScreenId: () => string;
8
7
  /**
9
8
  * Registers a WMJSLayer in a lookuptable with a layerId
10
9
  * @param {WMLayer} wmLayer
@@ -14,17 +14,41 @@ export declare const getDialogDetailsByType: (store: AppStore, dialogType: strin
14
14
  *
15
15
  * @param {object} store store object from which the ui state wll be extracted
16
16
  * @param {string} dialogType type of the dialog 'legend' | 'layerManager' | 'dimensionSelect-elevation'
17
- * @returns {array} [string, boolean] first element gives the active map id, second element whether the dialog is open
17
+ * @returns {boolean} returnType: boolean
18
18
  */
19
- export declare const getisDialogOpen: import("reselect").OutputParametricSelector<AppStore, string, boolean, (res: UIType) => boolean>;
19
+ export declare const getisDialogOpen: ((state: {
20
+ advancedLayerStore?: import("../advancedLayerStore/types").AdvancedLayerStoreState;
21
+ syncronizationGroupStore?: import("../generic/synchronizationGroups/types").SynchronizationGroupState;
22
+ ui?: import("./types").UIStoreType;
23
+ webmap?: import("../mapStore/types").WebMapState;
24
+ services?: import("../mapStore/types").ServiceState;
25
+ layers?: import("../mapStore/types").LayerState;
26
+ layerSelect?: import("../layerSelect/types").LayerSelectStoreType;
27
+ }, params_0: string) => boolean) & import("reselect").OutputSelectorFields<(args_0: UIType) => boolean & {
28
+ clearCache: () => void;
29
+ }> & {
30
+ clearCache: () => void;
31
+ };
20
32
  /**
21
33
  *For a given ui component: gets the active map Id
22
34
  *
23
35
  * @param {object} store store object from which the ui state wll be extracted
24
36
  * @param {string} dialogType type of the dialog 'legend' | 'layerManager' | 'dimensionSelect-elevation'
25
- * @returns {array} [string, boolean] first element gives the active map id, second element whether the dialog is open
37
+ * @returns {string} returnType: string - the active map id
26
38
  */
27
- export declare const getDialogMapId: import("reselect").OutputParametricSelector<AppStore, string, string, (res: UIType) => string>;
39
+ export declare const getDialogMapId: ((state: {
40
+ advancedLayerStore?: import("../advancedLayerStore/types").AdvancedLayerStoreState;
41
+ syncronizationGroupStore?: import("../generic/synchronizationGroups/types").SynchronizationGroupState;
42
+ ui?: import("./types").UIStoreType;
43
+ webmap?: import("../mapStore/types").WebMapState;
44
+ services?: import("../mapStore/types").ServiceState;
45
+ layers?: import("../mapStore/types").LayerState;
46
+ layerSelect?: import("../layerSelect/types").LayerSelectStoreType;
47
+ }, params_0: string) => string) & import("reselect").OutputSelectorFields<(args_0: UIType) => string & {
48
+ clearCache: () => void;
49
+ }> & {
50
+ clearCache: () => void;
51
+ };
28
52
  /**
29
53
  *For a given ui component: gets the order of visible dialog
30
54
  *
@@ -32,7 +56,19 @@ export declare const getDialogMapId: import("reselect").OutputParametricSelector
32
56
  * @param {DialogType} dialogType type of the dialog 'legend' | 'layerManager' | 'dimensionSelect-elevation' | dimensionSelect-ensemble_member
33
57
  * @returns {number} the higher the order number the higher the zIndex
34
58
  */
35
- export declare const getDialogOrder: import("reselect").OutputParametricSelector<AppStore, DialogType, number, (res: number) => number>;
59
+ export declare const getDialogOrder: ((state: {
60
+ advancedLayerStore?: import("../advancedLayerStore/types").AdvancedLayerStoreState;
61
+ syncronizationGroupStore?: import("../generic/synchronizationGroups/types").SynchronizationGroupState;
62
+ ui?: import("./types").UIStoreType;
63
+ webmap?: import("../mapStore/types").WebMapState;
64
+ services?: import("../mapStore/types").ServiceState;
65
+ layers?: import("../mapStore/types").LayerState;
66
+ layerSelect?: import("../layerSelect/types").LayerSelectStoreType;
67
+ }, params_0: DialogType) => number) & import("reselect").OutputSelectorFields<(args_0: number) => number & {
68
+ clearCache: () => void;
69
+ }> & {
70
+ clearCache: () => void;
71
+ };
36
72
  /**
37
73
  *For a given ui component: returns if ordered on top
38
74
  *
@@ -40,5 +76,29 @@ export declare const getDialogOrder: import("reselect").OutputParametricSelector
40
76
  * @param {DialogType} dialogType type of the dialog 'legend' | 'layerManager' | 'dimensionSelect-elevation' | dimensionSelect-ensemble_member
41
77
  * @returns {boolean}
42
78
  */
43
- export declare const getDialogIsOrderedOnTop: import("reselect").OutputParametricSelector<AppStore, DialogType, boolean, (res: boolean) => boolean>;
44
- export declare const getDialogSource: import("reselect").OutputParametricSelector<AppStore, string, import("./types").Source, (res: UIType) => import("./types").Source>;
79
+ export declare const getDialogIsOrderedOnTop: ((state: {
80
+ advancedLayerStore?: import("../advancedLayerStore/types").AdvancedLayerStoreState;
81
+ syncronizationGroupStore?: import("../generic/synchronizationGroups/types").SynchronizationGroupState;
82
+ ui?: import("./types").UIStoreType;
83
+ webmap?: import("../mapStore/types").WebMapState;
84
+ services?: import("../mapStore/types").ServiceState;
85
+ layers?: import("../mapStore/types").LayerState;
86
+ layerSelect?: import("../layerSelect/types").LayerSelectStoreType;
87
+ }, params_0: DialogType) => boolean) & import("reselect").OutputSelectorFields<(args_0: boolean) => boolean & {
88
+ clearCache: () => void;
89
+ }> & {
90
+ clearCache: () => void;
91
+ };
92
+ export declare const getDialogSource: ((state: {
93
+ advancedLayerStore?: import("../advancedLayerStore/types").AdvancedLayerStoreState;
94
+ syncronizationGroupStore?: import("../generic/synchronizationGroups/types").SynchronizationGroupState;
95
+ ui?: import("./types").UIStoreType;
96
+ webmap?: import("../mapStore/types").WebMapState;
97
+ services?: import("../mapStore/types").ServiceState;
98
+ layers?: import("../mapStore/types").LayerState;
99
+ layerSelect?: import("../layerSelect/types").LayerSelectStoreType;
100
+ }, params_0: string) => import("./types").Source) & import("reselect").OutputSelectorFields<(args_0: UIType) => import("./types").Source & {
101
+ clearCache: () => void;
102
+ }> & {
103
+ clearCache: () => void;
104
+ };
@@ -1,6 +1,6 @@
1
1
  import { Action } from 'redux';
2
2
  import { UI_SET_ACTIVE_MAPID_FOR_DIALOG, UI_REGISTER_DIALOG, UI_TOGGLE_DIALOG, UI_UNREGISTER_DIALOG, UI_ORDER_DIALOG } from './constants';
3
- export declare type DialogType = 'legend' | 'layerManager' | 'layerSelect' | 'dimensionSelect-elevation' | 'dimensionSelect-ensemble_member' | 'keywordFilter';
3
+ export declare type DialogType = 'legend' | 'layerManager' | 'layerSelect' | 'dimensionSelect-elevation' | 'dimensionSelect-ensemble_member' | 'keywordFilter' | 'timeSeriesManager';
4
4
  export declare type Source = 'app' | 'module';
5
5
  export interface UIType {
6
6
  type: DialogType;
@@ -0,0 +1,6 @@
1
+ export declare const selectorMemoizationOptions: {
2
+ memoizeOptions: {
3
+ maxSize: number;
4
+ resultEqualityCheck: (value: any, other: any) => boolean;
5
+ };
6
+ };
@@ -1,21 +1,3 @@
1
- export declare const availableDefaultBaseLayers: ({
2
- id: string;
3
- name: string;
4
- type: string;
5
- layerType: import("../store/mapStore/types").LayerType;
6
- } | {
7
- service: string;
8
- id: string;
9
- name: string;
10
- layerType: import("../store/mapStore/types").LayerType;
11
- })[];
12
- export declare const preloadedDefaultBaseServices: {
13
- name: string;
14
- url: string;
15
- id: string;
16
- }[];
17
- export declare const preloadedDefaultMapServices: {
18
- name: string;
19
- url: string;
20
- id: string;
21
- }[];
1
+ export declare const availableDefaultBaseLayers: import("../store/mapStore/types").Layer[];
2
+ export declare const preloadedDefaultBaseServices: import("./types").Service[];
3
+ export declare const preloadedDefaultMapServices: import("./types").Service[];
@@ -52,23 +52,23 @@ export declare const defaultReduxServices: {
52
52
  name: string;
53
53
  text: string;
54
54
  leaf: boolean;
55
- path: string;
56
- keywords: any[];
55
+ path: any[];
56
+ keywords: string[];
57
57
  abstract: string;
58
58
  styles?: undefined;
59
59
  } | {
60
60
  name: string;
61
61
  text: string;
62
62
  leaf: boolean;
63
- path: string;
64
- keywords: any[];
63
+ path: any[];
64
+ keywords: string[];
65
65
  abstract: string;
66
66
  styles: Style[];
67
67
  } | {
68
68
  name: string;
69
69
  text: string;
70
70
  leaf: boolean;
71
- path: string;
71
+ path: any[];
72
72
  keywords: any[];
73
73
  abstract?: undefined;
74
74
  styles?: undefined;
@@ -189,7 +189,7 @@ export declare const WmMultiDimensionServices: {
189
189
  name: string;
190
190
  text: string;
191
191
  leaf: boolean;
192
- path: string;
192
+ path: any[];
193
193
  }[];
194
194
  };
195
195
  'https://testservice': {
@@ -200,7 +200,7 @@ export declare const WmMultiDimensionServices: {
200
200
  name: string;
201
201
  text: string;
202
202
  leaf: boolean;
203
- path: string;
203
+ path: any[];
204
204
  }[];
205
205
  };
206
206
  };
@@ -10,6 +10,7 @@ export interface LayerTree {
10
10
  keywords?: string[];
11
11
  abstract?: string;
12
12
  text?: string;
13
+ styles?: any[];
13
14
  }
14
15
  /**
15
16
  * Converts webmapjs node structure to LayerTree
@@ -23,8 +24,8 @@ export declare const recurseNodes: (nodesToRecur: LayerTree) => LayerTree;
23
24
  */
24
25
  export declare const getLayersFromService: (serviceUrl: string, forceReload?: boolean) => Promise<LayerTree>;
25
26
  /**
26
- * Returns a promise with a webmapjs node structure layers from the WMS GetCapabilities document.
27
+ * Returns a promise with an array of flattened layerobjects from the WMS GetCapabilities document.
27
28
  * @param serviceUrl The URL of the WMS service
28
29
  * @param {boolean} forceReload **optional** forceReload: boolean, true will force the layers to be reloaded from the service, defaults to false
29
30
  */
30
- export declare const getLayerNodesFromService: (serviceUrl: string, forceReload?: boolean) => Promise<[]>;
31
+ export declare const getLayersFlattenedFromService: (serviceUrl: string, forceReload?: boolean) => Promise<[]>;
@@ -0,0 +1,10 @@
1
+ import { Bbox, Layer } from '../store/mapStore/types';
2
+ import { FilteredMapPresets, Service, MapPresets, LayerDimension } from './types';
3
+ export declare const filterBaseLayers: (presetArray: unknown[]) => Layer[];
4
+ export declare const filterMapLayers: (presetArray: unknown[]) => Layer[];
5
+ export declare const filterServices: (presetArray: Service[]) => Service[];
6
+ export declare const filterBbox: (presetBbox: Bbox) => Bbox;
7
+ export declare const filterSrs: (presetSrs: string) => string;
8
+ export declare const filterDimensions: (mapLayers: Layer[]) => LayerDimension[];
9
+ export declare const filterMapPresets: (presets: MapPresets) => FilteredMapPresets;
10
+ export declare const getInitialPresets: (mapPresets: MapPresets, defaultInitialPresets: MapPresets) => FilteredMapPresets;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,43 @@
1
+ import { Bbox, Dimension, Layer } from '../store/mapStore/types';
2
+ export interface Service {
3
+ id: string;
4
+ name: string;
5
+ url: string;
6
+ }
7
+ export interface PresetLayer {
8
+ id?: string;
9
+ mapId?: string;
10
+ service?: string;
11
+ name?: string;
12
+ format?: string;
13
+ enabled?: string;
14
+ style?: string;
15
+ dimensions?: Dimension[];
16
+ opacity?: number;
17
+ type?: string;
18
+ layerType?: string;
19
+ status?: string;
20
+ }
21
+ export interface MapPreset {
22
+ presetType?: string;
23
+ presetId?: string;
24
+ presetName?: string;
25
+ srs?: string;
26
+ bbox?: Bbox;
27
+ services?: Service[];
28
+ baseServices?: Service[];
29
+ layers?: PresetLayer[];
30
+ activeLayerId?: string;
31
+ }
32
+ export interface MapPresets {
33
+ preset: MapPreset;
34
+ }
35
+ export interface LayerDimension {
36
+ dimension?: Dimension;
37
+ layerId?: string;
38
+ }
39
+ export interface FilteredMapPresets extends MapPreset {
40
+ baseLayers?: Layer[];
41
+ mapLayers?: Layer[];
42
+ layerDimensions?: LayerDimension[];
43
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opengeoweb/core",
3
- "version": "2.1.4",
3
+ "version": "2.3.0",
4
4
  "description": "GeoWeb Core library for the opengeoweb project",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {
@@ -13,22 +13,22 @@
13
13
  "dependencies": {},
14
14
  "peerDependencies": {
15
15
  "react": "^17.0.2",
16
- "@opengeoweb/theme": "2.1.4",
16
+ "@opengeoweb/theme": "2.3.0",
17
17
  "@mui/material": "^5.2.8",
18
18
  "@mui/styles": "^5.2.3",
19
19
  "@mui/icons-material": "^5.2.5",
20
20
  "react-redux": "7.2.2",
21
21
  "moment": "^2.29.0",
22
22
  "react-intl": "^5.17.5",
23
- "@opengeoweb/webmap": "2.1.4",
23
+ "@opengeoweb/webmap": "2.3.0",
24
24
  "throttle-debounce": "^3.0.1",
25
25
  "proj4": "^2.6.2",
26
26
  "react-sortablejs": "^6.0.0",
27
- "@opengeoweb/shared": "2.1.4",
27
+ "@opengeoweb/shared": "2.3.0",
28
28
  "react-draggable": "^4.4.3",
29
29
  "re-resizable": "^6.9.0",
30
30
  "lodash": "^4.17.20",
31
- "@opengeoweb/form-fields": "2.1.4",
31
+ "@opengeoweb/form-fields": "2.3.0",
32
32
  "react-hook-form": "^6.12.1",
33
33
  "moment-timezone": "^0.5.31",
34
34
  "@mui/lab": "^5.0.0-alpha.64",
@@ -37,7 +37,7 @@
37
37
  "redux": "^4.0.4",
38
38
  "lodash.clonedeep": "^4.5.0",
39
39
  "immer": "^9.0.6",
40
- "reselect": "^4.0.0",
40
+ "reselect": "^4.1.5",
41
41
  "redux-dynamic-modules-saga": "^5.2.0",
42
42
  "redux-saga": "^1.1.3"
43
43
  }
@@ -1,8 +0,0 @@
1
- import * as React from 'react';
2
- interface MenuItemButtonProps {
3
- tooltipTitle: string | JSX.Element;
4
- title: string;
5
- icon: JSX.Element;
6
- }
7
- declare const MenuItemButton: React.FC<MenuItemButtonProps>;
8
- export default MenuItemButton;
@@ -1,12 +0,0 @@
1
- import * as React from 'react';
2
- import { ToggleButtonProps } from '@mui/material';
3
- export declare const useButtonStyles: (props: {
4
- width: number;
5
- }) => import("@mui/styles").ClassNameMap<"button">;
6
- export interface ToggleIconButtonProps extends Omit<ToggleButtonProps, 'value'> {
7
- active?: boolean;
8
- width?: number;
9
- value?: unknown;
10
- }
11
- declare const ToggleIconButton: React.FC<ToggleIconButtonProps>;
12
- export default ToggleIconButton;
@@ -1,13 +0,0 @@
1
- import React from 'react';
2
- declare const _default: {
3
- title: string;
4
- };
5
- export default _default;
6
- export declare const ToggleIconButtonLight: {
7
- (): React.ReactElement;
8
- storyName: string;
9
- };
10
- export declare const ToggleIconButtonDark: {
11
- (): React.ReactElement;
12
- storyName: string;
13
- };
@@ -1 +0,0 @@
1
- export { default as ToggleIconButton } from './ToggleIconButton';