@opengeoweb/core 1.3.0 → 2.1.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 (86) hide show
  1. package/README.md +11 -12
  2. package/core.esm.js +5615 -4960
  3. package/core.umd.js +4180 -3554
  4. package/lib/components/LayerManager/LayerContainerRow/LayerRow/DeleteLayer/DeleteLayerConnect.d.ts +1 -0
  5. package/lib/components/LayerManager/LayerContainerRow/LayerRow/LayerRowConnect.d.ts +1 -0
  6. package/lib/components/LayerManager/LayerManager.stories.d.ts +3 -0
  7. package/lib/components/LayerManager/LayerSelect/ServicePopup/ServicePopup.d.ts +11 -0
  8. package/lib/components/{MultiDimensionSelect/MultiDimensionSelectConnect.spec.d.ts → LayerManager/LayerSelect/ServicePopup/ServicePopup.spec.d.ts} +0 -0
  9. package/lib/components/LayerManager/LayerSelect/ServicePopup/ServicePopup.stories.d.ts +13 -0
  10. package/lib/components/Legend/LegendConnect.d.ts +1 -2
  11. package/lib/components/Mapcontrols/MapControlButton.d.ts +11 -0
  12. package/lib/components/{MultiDimensionSelect/MultiDimensionSelectDialog.spec.d.ts → Mapcontrols/MapControlButton.spec.d.ts} +0 -0
  13. package/lib/components/Mapcontrols/MapControls.d.ts +7 -0
  14. package/lib/components/{MultiDimensionSelect/VerticalDimensionSelect.spec.d.ts → Mapcontrols/MapControls.spec.d.ts} +0 -0
  15. package/lib/components/Mapcontrols/ZoomControls.d.ts +0 -8
  16. package/lib/components/Mapcontrols/index.d.ts +2 -0
  17. package/lib/components/MultiMapDimensionSelect/DimensionSelectButton.d.ts +8 -0
  18. package/lib/components/{TimeSlider/TimeSliderButtons/ToggleIconButton.spec.d.ts → MultiMapDimensionSelect/DimensionSelectButton.spec.d.ts} +0 -0
  19. package/lib/components/MultiMapDimensionSelect/DimensionSelectButtonConnect.d.ts +7 -0
  20. package/lib/components/MultiMapDimensionSelect/DimensionSelectButtonConnect.spec.d.ts +1 -0
  21. package/lib/components/MultiMapDimensionSelect/DimensionSelectDialogConnect.d.ts +12 -0
  22. package/lib/components/MultiMapDimensionSelect/DimensionSelectDialogConnect.spec.d.ts +1 -0
  23. package/lib/components/{MultiDimensionSelect/VerticalDimensionSelect.d.ts → MultiMapDimensionSelect/DimensionSelectSlider.d.ts} +5 -4
  24. package/lib/components/MultiMapDimensionSelect/DimensionSelectSlider.spec.d.ts +1 -0
  25. package/lib/components/MultiMapDimensionSelect/DimensionSelectSliderConnect.d.ts +11 -0
  26. package/lib/components/MultiMapDimensionSelect/DimensionSelectSliderConnect.spec.d.ts +1 -0
  27. package/lib/components/{MultiDimensionSelect → MultiMapDimensionSelect}/EnsembleDimensionExample.stories.d.ts +0 -0
  28. package/lib/components/{MultiDimensionSelect → MultiMapDimensionSelect}/MultiDimensionSelect.stories.d.ts +1 -0
  29. package/lib/components/MultiMapDimensionSelect/MultiDimensionSelectConfig.d.ts +11 -0
  30. package/lib/components/{MultiDimensionSelect → MultiMapDimensionSelect}/MultiDimensionSelectConnect.stories.d.ts +0 -1
  31. package/lib/components/MultiMapDimensionSelect/MultiDimensionSelectMapButtonsConnect.d.ts +6 -0
  32. package/lib/components/MultiMapDimensionSelect/MultiDimensionSelectMapButtonsConnect.spec.d.ts +1 -0
  33. package/lib/components/MultiMapDimensionSelect/MultiMapMultiDimensionSelect.stories.d.ts +2 -0
  34. package/lib/components/MultiMapDimensionSelect/MultiMapMultiDimensionSelectConnect.d.ts +9 -0
  35. package/lib/components/MultiMapDimensionSelect/MultiMapMultiDimensionSelectConnect.spec.d.ts +1 -0
  36. package/lib/components/MultiMapDimensionSelect/MultiMapSingleDimensionSelectConnect.d.ts +8 -0
  37. package/lib/components/MultiMapDimensionSelect/MultiMapSingleDimensionSelectConnect.spec.d.ts +1 -0
  38. package/lib/components/MultiMapDimensionSelect/index.d.ts +2 -0
  39. package/lib/components/MultiMapView/HarmoniePresets/HarmRefTimePreset.d.ts +2 -5
  40. package/lib/components/MultiMapView/HarmoniePresets/HarmonieTempAndPrecipPreset.d.ts +1 -4
  41. package/lib/components/MultiMapView/MultiMapViewConnect.d.ts +1 -1
  42. package/lib/components/ReactMapView/ReactMapView.d.ts +0 -1
  43. package/lib/components/ReactMapView/ReactMapViewParseLayer.d.ts +3 -2
  44. package/lib/components/ReactMapView/types.d.ts +1 -2
  45. package/lib/components/SyncGroups/ConfigurableConnectedMap.d.ts +2 -0
  46. package/lib/components/TimeSlider/TimeSliderButtons/TimeSliderButtonComponents.stories.d.ts +0 -1
  47. package/lib/components/{TimeSlider/TimeSliderButtons → ToggleIconButton}/ToggleIconButton.d.ts +1 -0
  48. package/lib/components/ToggleIconButton/ToggleIconButton.spec.d.ts +1 -0
  49. package/lib/components/{TimeSlider/TimeSliderButtons → ToggleIconButton}/ToggleIconButton.stories.d.ts +4 -0
  50. package/lib/components/ToggleIconButton/index.d.ts +1 -0
  51. package/lib/index.d.ts +7 -4
  52. package/lib/store/generic/sagas.d.ts +8 -2
  53. package/lib/store/generic/synchronizationGroups/index.d.ts +2 -1
  54. package/lib/store/generic/synchronizationGroups/sagas.d.ts +0 -1
  55. package/lib/store/generic/synchronizationGroups/utils.d.ts +79 -2
  56. package/lib/store/generic/types.d.ts +3 -3
  57. package/lib/store/mapStore/layers/actions.d.ts +0 -3
  58. package/lib/store/mapStore/layers/selectors.d.ts +21 -1
  59. package/lib/store/mapStore/layers/types.d.ts +7 -0
  60. package/lib/store/mapStore/layers/utils.d.ts +4 -2
  61. package/lib/store/mapStore/layers/utils.spec.d.ts +1 -0
  62. package/lib/store/mapStore/map/selectors.d.ts +34 -0
  63. package/lib/store/mapStore/map/types.d.ts +2 -0
  64. package/lib/store/mapStore/service/actions.d.ts +1 -10
  65. package/lib/store/mapStore/service/constants.d.ts +0 -1
  66. package/lib/store/mapStore/service/reducer.d.ts +4 -2
  67. package/lib/store/mapStore/service/selectors.d.ts +9 -39
  68. package/lib/store/mapStore/service/types.d.ts +4 -15
  69. package/lib/store/mapStore/types.d.ts +1 -1
  70. package/lib/store/ui/actions.d.ts +5 -5
  71. package/lib/store/ui/sagas.d.ts +5 -0
  72. package/lib/store/ui/sagas.test.d.ts +1 -0
  73. package/lib/store/ui/selectors.d.ts +5 -5
  74. package/lib/store/ui/types.d.ts +1 -1
  75. package/lib/utils/defaultTestSettings.d.ts +0 -44
  76. package/lib/utils/dimensionUtils.d.ts +5 -1
  77. package/lib/utils/getCapabilities.d.ts +2 -0
  78. package/lib/utils/testUtils.d.ts +1 -0
  79. package/package.json +6 -6
  80. package/lib/components/MultiDimensionSelect/MultiDimensionSelectConfig.d.ts +0 -3
  81. package/lib/components/MultiDimensionSelect/MultiDimensionSelectConnect.d.ts +0 -15
  82. package/lib/components/MultiDimensionSelect/MultiDimensionSelectDialog.d.ts +0 -15
  83. package/lib/components/MultiDimensionSelect/MultiDimensionSelectDialogConnect.d.ts +0 -8
  84. package/lib/components/MultiDimensionSelect/index.d.ts +0 -2
  85. package/lib/components/MultiDimensionSelect/types.d.ts +0 -18
  86. package/lib/components/SyncGroups/SyncGroupDialog.d.ts +0 -7
@@ -2,6 +2,7 @@ import * as React from 'react';
2
2
  interface DeleteLayerProps {
3
3
  layerId: string;
4
4
  mapId: string;
5
+ layerIndex: number;
5
6
  }
6
7
  declare const DeleteLayerConnect: React.FC<DeleteLayerProps>;
7
8
  /**
@@ -5,6 +5,7 @@ interface LayerRowConnectProps {
5
5
  mapId: string;
6
6
  layerManagerWidth: LayerManagerWidth;
7
7
  dragHandle: React.ReactElement;
8
+ layerIndex: number;
8
9
  }
9
10
  declare const LayerRowConnect: React.FC<LayerRowConnectProps>;
10
11
  export default LayerRowConnect;
@@ -5,4 +5,7 @@ declare const _default: {
5
5
  export default _default;
6
6
  export declare const LayerManagerDemoLightTheme: React.FC;
7
7
  export declare const LayerManagerDemoDarkTheme: React.FC;
8
+ export declare const LayerManagerUnconnectedDemoLightTheme: React.FC;
9
+ export declare const LayerManagerUnconnectedDemoDarkTheme: React.FC;
8
10
  export declare const LayerManagerStoryWithMultiMaps: () => React.ReactElement;
11
+ export declare const MultiMapLayerManager: () => React.ReactElement;
@@ -0,0 +1,11 @@
1
+ import * as React from 'react';
2
+ interface ServicePopupProps {
3
+ servicePopupVariant: 'edit' | 'add' | 'save';
4
+ shouldDisableTransition?: boolean;
5
+ hideBackdrop?: boolean;
6
+ }
7
+ export declare const ADD_HEADING = "Add a new service";
8
+ export declare const EDIT_HEADING = "Edit service";
9
+ export declare const SAVE_HEADING = "Save service";
10
+ declare const ServicePopup: React.FC<ServicePopupProps>;
11
+ export default ServicePopup;
@@ -0,0 +1,13 @@
1
+ import * as React from 'react';
2
+ declare const _default: {
3
+ title: string;
4
+ };
5
+ export default _default;
6
+ export declare const ServicePopupLight: {
7
+ (): React.ReactElement;
8
+ storyName: string;
9
+ };
10
+ export declare const ServicePopupDark: {
11
+ (): React.ReactElement;
12
+ storyName: string;
13
+ };
@@ -1,6 +1,5 @@
1
1
  import * as React from 'react';
2
2
  interface LegendConnectProps {
3
- initialActiveMapId?: string;
4
3
  showMapId?: boolean;
5
4
  }
6
5
  /**
@@ -9,8 +8,8 @@ interface LegendConnectProps {
9
8
  * a dialog should have the <LegendMapButtonConnect/> which is used to focus the correct map and open the dialog
10
9
  *
11
10
  * Expects the following props:
12
- * @param {string} initialActiveMapId (optional) initialActiveMapId: string - Id of map that is initially active, if set dialog will be opend immediately
13
11
  * @param {boolean} showMapId (optional) showMapId: boolean - show the id of the map in the dialog title of which the legend is shown in te dialog
12
+
14
13
  * ``` <LegendConnect legendDialogId={legendDialogId} />```
15
14
  */
16
15
  declare const LegendConnect: React.FC<LegendConnectProps>;
@@ -0,0 +1,11 @@
1
+ import * as React from 'react';
2
+ import { TooltipProps } from '@material-ui/core';
3
+ import { ToggleIconButtonProps } from '../ToggleIconButton/ToggleIconButton';
4
+ interface MapControlButtonProps extends ToggleIconButtonProps {
5
+ onClick: () => void;
6
+ isActive?: boolean;
7
+ placement?: TooltipProps['placement'];
8
+ children: React.ReactElement;
9
+ }
10
+ declare const MapControlButton: React.FC<MapControlButtonProps>;
11
+ export default MapControlButton;
@@ -0,0 +1,7 @@
1
+ import * as React from 'react';
2
+ interface MapControlsProps {
3
+ children: React.ReactNode;
4
+ style?: React.CSSProperties;
5
+ }
6
+ declare const MapControls: React.FC<MapControlsProps>;
7
+ export default MapControls;
@@ -1,12 +1,4 @@
1
1
  import * as React from 'react';
2
- export declare type ZoomType = 'zoomIn' | 'zoomOut' | 'zoomReset';
3
- export declare const renderZoomIcon: (zoomType: ZoomType) => React.ReactChild;
4
- interface ZoomButtonProps {
5
- zoomType: ZoomType;
6
- onClick: () => void;
7
- className: string;
8
- }
9
- export declare const ZoomButton: React.FC<ZoomButtonProps>;
10
2
  interface ZoomControlsProps {
11
3
  onZoomIn: () => void;
12
4
  onZoomOut: () => void;
@@ -1,2 +1,4 @@
1
1
  export { default as ZoomControls } from './ZoomControls';
2
2
  export { default as ZoomControlConnect } from './ZoomControlsConnect';
3
+ export { default as MapControlButton } from './MapControlButton';
4
+ export { default as MapControls } from './MapControls';
@@ -0,0 +1,8 @@
1
+ import * as React from 'react';
2
+ interface DimensionSelectButtonProps {
3
+ dimension: string;
4
+ onClickDimensionButton: () => void;
5
+ isActive?: boolean;
6
+ }
7
+ declare const DimensionSelectButton: React.FC<DimensionSelectButtonProps>;
8
+ export default DimensionSelectButton;
@@ -0,0 +1,7 @@
1
+ import * as React from 'react';
2
+ interface DimensionSelectMapButtonProps {
3
+ mapId: string;
4
+ dimension: string;
5
+ }
6
+ declare const DimensionSelectMapButtonConnect: React.FC<DimensionSelectMapButtonProps>;
7
+ export default DimensionSelectMapButtonConnect;
@@ -0,0 +1,12 @@
1
+ import * as React from 'react';
2
+ interface DimensionSelectDialogConnectProps {
3
+ mapId: string;
4
+ dimensionName: string;
5
+ isOpen: boolean;
6
+ order?: number;
7
+ onMouseDown?: () => void;
8
+ onToggleDialog?: (isDialogOpen: boolean) => void;
9
+ index?: number;
10
+ }
11
+ declare const DimensionSelectDialogConnect: React.FC<DimensionSelectDialogConnectProps>;
12
+ export default DimensionSelectDialogConnect;
@@ -1,7 +1,8 @@
1
1
  import * as React from 'react';
2
- import { Mark } from '@material-ui/core';
3
- interface VerticalDimensionSelectProps {
2
+ import { Mark } from '../../utils/dimensionUtils';
3
+ interface DimensionSelectSliderProps {
4
4
  marks: Mark[];
5
+ layerName: string;
5
6
  reverse?: boolean;
6
7
  isDisabled?: boolean;
7
8
  managedValue?: number;
@@ -9,5 +10,5 @@ interface VerticalDimensionSelectProps {
9
10
  alertColor?: string;
10
11
  onChangeDimensionValue: (dimensionValue: string) => void;
11
12
  }
12
- declare const VerticalDimensionSelect: React.FC<VerticalDimensionSelectProps>;
13
- export default VerticalDimensionSelect;
13
+ declare const DimensionSelectSlider: React.FC<DimensionSelectSliderProps>;
14
+ export default DimensionSelectSlider;
@@ -0,0 +1,11 @@
1
+ import * as React from 'react';
2
+ import { DimensionConfig } from './MultiDimensionSelectConfig';
3
+ export interface DimensionSelectSliderConnectProps {
4
+ layerId: string;
5
+ dimConfig: DimensionConfig;
6
+ dimensionName: string;
7
+ handleDimensionValueChanged: (layerId: string, dimensionName: string, dimensionValue: string) => void;
8
+ handleSyncChanged: (layerId: string, dimensionName: string, dimensionValue: string, synced: boolean) => void;
9
+ }
10
+ declare const DimensionSelectSliderConnect: React.FC<DimensionSelectSliderConnectProps>;
11
+ export default DimensionSelectSliderConnect;
@@ -1,3 +1,4 @@
1
+ export * from './MultiMapMultiDimensionSelect.stories';
1
2
  export * from './EnsembleDimensionExample.stories';
2
3
  export * from './MultiDimensionSelectConnect.stories';
3
4
  declare const _default: {
@@ -0,0 +1,11 @@
1
+ import * as React from 'react';
2
+ import { SvgIconProps } from '@material-ui/core';
3
+ export interface DimensionConfig {
4
+ name: string;
5
+ label: string;
6
+ defaultUnit: string;
7
+ reversed: boolean;
8
+ iconType: string;
9
+ }
10
+ export declare const dimensionConfig: DimensionConfig[];
11
+ export declare const getDimensionIcon: (iconType: string) => React.FC<SvgIconProps>;
@@ -1,4 +1,3 @@
1
1
  import * as React from 'react';
2
- export declare const ElevationDimensionDemo: React.FC;
3
2
  export declare const ElevationDimensionDemoWithLightTheme: React.FC;
4
3
  export declare const ElevationDimensionDemoWithDarkTheme: React.FC;
@@ -0,0 +1,6 @@
1
+ import * as React from 'react';
2
+ interface MultiDimensionSelectMapButtonsConnectProps {
3
+ mapId: string;
4
+ }
5
+ declare const MultiDimensionSelectMapButtonsConnect: React.FC<MultiDimensionSelectMapButtonsConnectProps>;
6
+ export default MultiDimensionSelectMapButtonsConnect;
@@ -0,0 +1,2 @@
1
+ import * as React from 'react';
2
+ export declare const MultiDimensionSelectStoryWithMultiMaps: () => React.ReactElement;
@@ -0,0 +1,9 @@
1
+ import * as React from 'react';
2
+ declare const MultiMapMultiDimensionSelectConnect: React.FC;
3
+ /**
4
+ * Component used to control values for all dimension other than time and ref.time
5
+ *
6
+ * @example
7
+ * ``` <MultiMapMultiDimensionSelectConnect /> ```
8
+ */
9
+ export default MultiMapMultiDimensionSelectConnect;
@@ -0,0 +1,8 @@
1
+ import * as React from 'react';
2
+ export declare const getDimensionType: (dimensionName: string) => string;
3
+ interface MultiMapSingleDimensionSelectConnectProps {
4
+ dimensionName: string;
5
+ index?: number;
6
+ }
7
+ declare const MultiMapSingleDimensionSelectConnect: React.FC<MultiMapSingleDimensionSelectConnectProps>;
8
+ export default MultiMapSingleDimensionSelectConnect;
@@ -0,0 +1,2 @@
1
+ export { default as MultiDimensionSelectMapButtonsConnect } from './MultiDimensionSelectMapButtonsConnect';
2
+ export { default as MultiMapDimensionSelectConnect } from './MultiMapMultiDimensionSelectConnect';
@@ -1,12 +1,9 @@
1
1
  import * as React from 'react';
2
2
  import { Layer } from '../../../store/mapStore/types';
3
3
  import { MultiMapPreset } from '../MultiMapViewConnect';
4
- export declare const makeMapPreset: (timeIncrement: number, uniqueId: string, referenceTime: string, layers: Layer[], layerSyncGroupId: string, displayLayerManagerButtonInMap: boolean) => MultiMapPreset;
4
+ export declare const makeMapPreset: (timeIncrement: number, uniqueId: string, referenceTime: string, layers: Layer[], layerSyncGroupId: string, displayLayerManagerButtonInMap: boolean, displayDimensionSelectButtonInMap: boolean) => MultiMapPreset;
5
5
  export interface InitialHarmRefTimeProps {
6
6
  layers?: Layer[];
7
7
  layerSyncGroupId: string;
8
8
  }
9
- export interface HarmRefTimePresetProps extends InitialHarmRefTimeProps {
10
- id: string;
11
- }
12
- export declare const HarmRefTimePreset: React.FC<HarmRefTimePresetProps>;
9
+ export declare const HarmRefTimePreset: React.FC<InitialHarmRefTimeProps>;
@@ -8,7 +8,4 @@ export interface InitialHarmTempAndPrecipProps {
8
8
  bottomrowGroup?: string;
9
9
  };
10
10
  }
11
- export interface HarmonieTempAndPrecipPresetProps extends InitialHarmTempAndPrecipProps {
12
- id: string;
13
- }
14
- export declare const HarmonieTempAndPrecipPreset: React.FC<HarmonieTempAndPrecipPresetProps>;
11
+ export declare const HarmonieTempAndPrecipPreset: React.FC<InitialHarmTempAndPrecipProps>;
@@ -11,9 +11,9 @@ export interface MultiMapPreset {
11
11
  displayTimeInMap?: boolean;
12
12
  layerSyncGroupId?: string;
13
13
  displayLayerManagerButtonInMap?: boolean;
14
+ displayDimensionSelectButtonInMap?: boolean;
14
15
  }
15
16
  export interface MultiMapViewProps {
16
- id: string;
17
17
  rows: number;
18
18
  cols: number;
19
19
  maps: MultiMapPreset[];
@@ -60,7 +60,6 @@ declare class ReactMapView extends React.Component<ReactMapViewProps, ReactMapVi
60
60
  onLayerSetDimensions: () => void;
61
61
  onServiceSetLayers: () => void;
62
62
  onLayerSetStyles: () => void;
63
- onSetLayerDimensionsForService: () => void;
64
63
  onMapZoomEnd: () => void;
65
64
  };
66
65
  constructor(props: ReactMapViewProps);
@@ -1,4 +1,5 @@
1
1
  import { WMLayer, WMJSMap } from '@opengeoweb/webmap';
2
- import { SetLayerStylePayload, SetLayersForServicePayload, SetLayerStylesForServicePayload, SetLayerDimensionsForServicePayload, UpdateAllMapDimensionsPayload, SetLayerDimensionsPayload } from '../../store/mapStore/types';
2
+ import { SetLayerStylePayload, SetLayersForServicePayload, SetLayerStylesForServicePayload, UpdateAllMapDimensionsPayload, SetLayerDimensionsPayload } from '../../store/mapStore/types';
3
3
  import { MapViewProps } from '../MapView/types';
4
- export declare const setServiceMetadata: (wmLayer: WMLayer, mapId: string, xml2jsonrequestURL: string, webMapJSInstance: WMJSMap, mapProperties: MapViewProps, onMapUpdateAllDimensions?: (payload: UpdateAllMapDimensionsPayload) => void, onLayerChangeStyle?: (payload: SetLayerStylePayload) => void, onServiceSetLayers?: (payload: SetLayersForServicePayload) => void, onLayerSetStyles?: (payload: SetLayerStylesForServicePayload) => void, onSetLayerDimensionsForService?: (payload: SetLayerDimensionsForServicePayload) => void, onLayerSetDimensions?: (payload: SetLayerDimensionsPayload) => void) => void;
4
+ export declare const ORIGIN_REACTMAPVIEWPARSELAYER = "ReactMapViewParseLayer";
5
+ export declare const setServiceMetadata: (wmLayer: WMLayer, mapId: string, xml2jsonrequestURL: string, webMapJSInstance: WMJSMap, mapProperties: MapViewProps, onMapUpdateAllDimensions?: (payload: UpdateAllMapDimensionsPayload) => void, onLayerChangeStyle?: (payload: SetLayerStylePayload) => void, onServiceSetLayers?: (payload: SetLayersForServicePayload) => void, onLayerSetStyles?: (payload: SetLayerStylesForServicePayload) => void, onLayerSetDimensions?: (payload: SetLayerDimensionsPayload) => void) => void;
@@ -1,6 +1,6 @@
1
1
  /// <reference types="react" />
2
2
  import { WMJSMap } from '@opengeoweb/webmap';
3
- import { SetMapDimensionPayload, SetLayerDimensionsForServicePayload, SetLayerStylePayload, SetLayerDimensionPayload, SetLayersForServicePayload, SetLayerStylesForServicePayload, UpdateAllMapDimensionsPayload, Dimension, SetBboxPayload, SetLayerDimensionsPayload, Bbox } from '../../store/mapStore/types';
3
+ import { SetMapDimensionPayload, SetLayerStylePayload, SetLayerDimensionPayload, SetLayersForServicePayload, SetLayerStylesForServicePayload, UpdateAllMapDimensionsPayload, Dimension, SetBboxPayload, SetLayerDimensionsPayload, Bbox } from '../../store/mapStore/types';
4
4
  export interface ReactMapViewProps {
5
5
  listeners?: {
6
6
  name?: string;
@@ -35,7 +35,6 @@ export interface ReactMapViewProps {
35
35
  onLayerChangeDimension?: (payload: SetLayerDimensionPayload) => void;
36
36
  onServiceSetLayers?: (payload: SetLayersForServicePayload) => void;
37
37
  onLayerSetStyles?: (payload: SetLayerStylesForServicePayload) => void;
38
- onSetLayerDimensionsForService?: (payload: SetLayerDimensionsForServicePayload) => void;
39
38
  onMapZoomEnd?: (payload: SetBboxPayload) => void;
40
39
  onRegisterAdaguc?: (WMJSMapInstance: WMJSMap) => void;
41
40
  onLayerSetDimensions?: (payload: SetLayerDimensionsPayload) => void;
@@ -11,7 +11,9 @@ interface ConfigurableConnectedMapProps {
11
11
  srs?: string;
12
12
  displayTimeInMap?: boolean;
13
13
  displayLayerManagerButtonInMap?: boolean;
14
+ displayDimensionSelectButtonInMap?: boolean;
14
15
  shouldAutoUpdate?: boolean;
16
+ shouldShowZoomControls?: boolean;
15
17
  }
16
18
  export declare const ConfigurableConnectedMap: React.FC<ConfigurableConnectedMapProps>;
17
19
  export {};
@@ -1,5 +1,4 @@
1
1
  export * from './TimeSliderButtons.stories';
2
- export * from './ToggleIconButton.stories';
3
2
  declare const _default: {
4
3
  title: string;
5
4
  };
@@ -1,5 +1,6 @@
1
1
  import * as React from 'react';
2
2
  import { ToggleButtonProps } from '@material-ui/lab';
3
+ export declare const useButtonStyles: (props: ToggleIconButtonProps) => import("@material-ui/styles").ClassNameMap<"button">;
3
4
  export interface ToggleIconButtonProps extends ToggleButtonProps {
4
5
  active?: boolean;
5
6
  width?: number;
@@ -1,4 +1,8 @@
1
1
  import React from 'react';
2
+ declare const _default: {
3
+ title: string;
4
+ };
5
+ export default _default;
2
6
  export declare const ToggleIconButtonLight: {
3
7
  (): React.ReactElement;
4
8
  storyName: string;
@@ -0,0 +1 @@
1
+ export { default as ToggleIconButton } from './ToggleIconButton';
package/lib/index.d.ts CHANGED
@@ -5,34 +5,37 @@ import * as mapConstants from './store/mapStore/constants';
5
5
  import * as mapUtils from './store/mapStore/map/utils';
6
6
  import * as uiActions from './store/ui/actions';
7
7
  import * as uiTypes from './store/ui/types';
8
+ import * as syncGroupActions from './store/generic/actions';
8
9
  import * as layerReducer from './store/mapStore/layers/reducer';
9
10
  import synchronizationGroupConfig from './store/generic/config';
10
11
  import TooltipSelect from './components/TooltipSelect/TooltipSelect';
11
- import { SyncGroupDialog } from './components/SyncGroups/SyncGroupDialog';
12
12
  import * as SyncGroups from './store/generic/synchronizationGroups';
13
13
  import coreModuleConfig from './store/coreModuleConfig';
14
14
  import { LayerManagerConnect, LayerManagerMapButtonConnect } from './components/LayerManager';
15
+ import { MultiDimensionSelectMapButtonsConnect, MultiMapDimensionSelectConnect } from './components/MultiMapDimensionSelect';
15
16
  export * from './components/MultiMapView/MultiMapViewConnect';
16
17
  export * from './components/MultiMapView/HarmoniePresets';
17
18
  export { MapViewConnect, MapView, MapViewLayer } from './components/MapView';
18
19
  export { ReactMapView, ReactMapViewLayer } from './components/ReactMapView';
19
- export { MultiDimensionSelectConnect } from './components/MultiDimensionSelect';
20
20
  export { LegendConnect, Legend, LegendMapButtonConnect, } from './components/Legend';
21
21
  export { ZoomControls, ZoomControlConnect } from './components/Mapcontrols';
22
22
  export { TimeSliderConnect } from './components/TimeSlider';
23
- export { mapActions, mapSelectors, mapTypes, mapConstants, mapUtils, layerReducer, uiActions, uiTypes, };
23
+ export { MapControls } from './components/Mapcontrols';
24
+ export { mapActions, mapSelectors, mapTypes, mapConstants, mapUtils, layerReducer, uiActions, uiTypes, syncGroupActions, };
24
25
  export { synchronizationGroupConfig as synchronizationGroupModuleConfig };
25
26
  export * from './components/ConfigurableMapWithSlider';
26
27
  export { ConfigurableConnectedMap } from './components/SyncGroups/ConfigurableConnectedMap';
27
28
  export * from './store/mapStore/utils/helpers';
28
29
  export { TooltipSelect };
29
- export { SyncGroupDialog };
30
+ export { SyncGroupViewerConnect } from './components/SyncGroups/SyncGroupViewerConnect';
30
31
  export { SyncGroups };
31
32
  export { store } from './store';
32
33
  export * from './types/types';
33
34
  export { coreModuleConfig };
34
35
  export { LayerManagerConnect, LayerManagerMapButtonConnect };
36
+ export { MultiDimensionSelectMapButtonsConnect, MultiMapDimensionSelectConnect, };
35
37
  export * as publicLayers from './utils/publicLayers';
36
38
  export * as publicServices from './utils/publicServices';
37
39
  export * as testLayers from './utils/testLayers';
38
40
  export * as defaultConfigurations from './utils/defaultConfigurations';
41
+ export * from './components/Providers/Providers';
@@ -1,7 +1,13 @@
1
1
  import { SagaIterator } from 'redux-saga';
2
- import { SetBbox, SetTime, SyncLayerActions } from './types';
2
+ import { SetBbox, SetTime } from './types';
3
+ import { AddLayer, DeleteLayer, LayerActions, MoveLayer, SetActiveLayerId, SetBaseLayers } from '../mapStore/types';
3
4
  export declare function setTimeSaga({ payload }: SetTime): SagaIterator;
4
5
  export declare function setBBoxSaga({ payload }: SetBbox): SagaIterator;
5
- export declare function layerActionsSaga({ payload, type, }: SyncLayerActions): SagaIterator;
6
+ export declare function layerActionsSaga({ payload, type, }: LayerActions): SagaIterator;
7
+ export declare function addLayerActionsSaga({ payload, type, }: AddLayer): SagaIterator;
8
+ export declare function deleteLayerActionsSaga({ payload, type, }: DeleteLayer): SagaIterator;
9
+ export declare function moveLayerActionsSaga({ payload, type, }: MoveLayer): SagaIterator;
10
+ export declare function setActiveLayerIdActionsSaga({ payload, type, }: SetActiveLayerId): SagaIterator;
11
+ export declare function mapBaseLayerActionsSaga({ payload, type, }: SetBaseLayers): SagaIterator;
6
12
  export declare function rootSaga(): SagaIterator;
7
13
  export default rootSaga;
@@ -1,4 +1,5 @@
1
1
  import * as actions from './actions';
2
2
  import * as constants from './constants';
3
3
  import * as types from './types';
4
- export { actions, constants, types };
4
+ import { initialState } from './reducer';
5
+ export { actions, constants, types, initialState };
@@ -3,6 +3,5 @@ import { SyncGroupAddTarget, SyncGroupLinkTarget } from './types';
3
3
  export declare function updateSourceValueWhenLinkingComponentToGroupSaga(groupId: string, targetToUpdate: string): SagaIterator;
4
4
  export declare function addGroupTargetSaga({ payload, }: SyncGroupAddTarget): SagaIterator;
5
5
  export declare function linkGroupTargetSaga({ payload, }: SyncGroupLinkTarget): SagaIterator;
6
- export declare function clearGroupsSaga(): SagaIterator;
7
6
  declare function rootSaga(): SagaIterator;
8
7
  export default rootSaga;
@@ -1,4 +1,81 @@
1
1
  import { AppStore } from '../../../types/types';
2
- import { SyncLayerPayloads } from '../types';
2
+ import { AddLayerPayload, DeleteLayerPayload, MoveLayerPayload, SetBaseLayersPayload } from '../../mapStore/types';
3
+ import { SyncLayerPayloads, LayerActionPayloadsWithLayerIds } from '../types';
3
4
  import { SyncType } from './types';
4
- export declare const getLayerActionsTargets: (state: AppStore, payload: SyncLayerPayloads, actionType: SyncType) => SyncLayerPayloads[];
5
+ export declare const ORIGIN_GENERIC_SYNCHRONIZATIONGROUP_UTILS_DELETEACTION = "ORIGIN_GENERIC_SYNCHRONIZATIONGROUP_UTILS_DELETEACTION";
6
+ export declare const ORIGIN_GENERIC_SYNCHRONIZATIONGROUP_UTILS_LAYERACTIONS = "ORIGIN_GENERIC_SYNCHRONIZATIONGROUP_UTILS_LAYERACTIONS";
7
+ export declare const ORIGIN_GENERIC_SYNCHRONIZATIONGROUP_UTILS_MOVEACTION = "ORIGIN_GENERIC_SYNCHRONIZATIONGROUP_UTILS_MOVEACTION";
8
+ export declare const ORIGIN_GENERIC_SYNCHRONIZATIONGROUP_UTILS_ADDACTION = "ORIGIN_GENERIC_SYNCHRONIZATIONGROUP_UTILS_ADDACTION";
9
+ export declare const ORIGIN_GENERIC_SYNCHRONIZATIONGROUP_UTILS_ACTIVELAYERIDACTION = "ORIGIN_GENERIC_SYNCHRONIZATIONGROUP_UTILS_ACTIVELAYERIDACTION";
10
+ interface FoundTargets {
11
+ payload: SyncLayerPayloads;
12
+ targetId: string;
13
+ layerId: string;
14
+ }
15
+ /**
16
+ * Tries to find the layerId's in the other map based on the payload of the action. It works for all layer actions.
17
+ * @param state
18
+ * @param mapId
19
+ * @param targetMapId
20
+ * @param payload
21
+ * @returns
22
+ */
23
+ export declare const getTargetLayerIdFromPayload: (state: AppStore, mapId: string, targetMapId: string, payload: SyncLayerPayloads) => string;
24
+ /**
25
+ * Local helper function used by getLayerDeleteActionsTargets, getLayerActionsTargets, getAddLayerActionsTargets, getTargetLayerIdFromPayload to find the targets
26
+ * @param state
27
+ * @param payload
28
+ * @param actionType
29
+ * @param sourceMapId
30
+ * @returns The found targets
31
+ */
32
+ export declare const findTargets: (state: AppStore, payload: SyncLayerPayloads, actionType: SyncType, sourceMapId: string) => FoundTargets[];
33
+ /**
34
+ * These targets are found for layer actions that work with a layerId like: SetLayerName, SetLayerEnabled, SetLayerOpacity, SetLayerDimension and SetLayerStyle
35
+ * @param state
36
+ * @param payload
37
+ * @param actionType
38
+ * @returns
39
+ */
40
+ export declare const getLayerActionsTargets: (state: AppStore, payload: LayerActionPayloadsWithLayerIds, actionType: SyncType) => LayerActionPayloadsWithLayerIds[];
41
+ /**
42
+ * These targets are found for the layer/map action AddLayer. AddLayer does not have a layerId (because it's new)
43
+ * @param state
44
+ * @param payload
45
+ * @param actionType
46
+ * @returns
47
+ */
48
+ export declare const getAddLayerActionsTargets: (state: AppStore, payload: AddLayerPayload, actionType: SyncType) => AddLayerPayload[];
49
+ /**
50
+ * These targets are found for the layer/map action DeleteLayer. The layer is already gone, so there is no layerId anymore. Using layerIndex instead.
51
+ * @param state
52
+ * @param payload
53
+ * @param actionType
54
+ * @returns
55
+ */
56
+ export declare const getLayerDeleteActionsTargets: (state: AppStore, payload: DeleteLayerPayload, actionType: SyncType) => DeleteLayerPayload[];
57
+ /**
58
+ * These targets are found for the layer/map action MoveLayer. Here layers are referenced by newIndex and oldIndex.
59
+ * @param state
60
+ * @param payload
61
+ * @param actionType
62
+ * @returns
63
+ */
64
+ export declare const getLayerMoveActionsTargets: (state: AppStore, payload: MoveLayerPayload, actionType: SyncType) => MoveLayerPayload[];
65
+ /**
66
+ * These targets are found for the layer/map action SetActiveLayerId. It needs both a target mapId and layerId
67
+ * @param state
68
+ * @param payload
69
+ * @param actionType
70
+ * @returns
71
+ */
72
+ export declare const getSetActiveLayerIdActionsTargets: (state: AppStore, payload: LayerActionPayloadsWithLayerIds, actionType: SyncType) => LayerActionPayloadsWithLayerIds[];
73
+ /**
74
+ * These targets are found for baselayer actions that work with a mapId like: setBaseLayers
75
+ * @param state
76
+ * @param payload
77
+ * @param actionType
78
+ * @returns
79
+ */
80
+ export declare const getMapBaseLayerActionsTargets: (state: AppStore, payload: SetBaseLayersPayload, actionType: SyncType) => SetBaseLayersPayload[];
81
+ export {};
@@ -1,5 +1,5 @@
1
1
  import { Action } from 'redux';
2
- import { SetLayerDimension, SetLayerDimensionPayload, SetLayerEnabled, SetLayerEnabledPayload, SetLayerName, SetLayerNamePayload, SetLayerOpacity, SetLayerOpacityPayload, SetLayerStyle, SetLayerStylePayload } from '../mapStore/types';
2
+ import { AddLayerPayload, DeleteLayerPayload, MoveLayerPayload, SetActiveLayerIdPayload, SetBaseLayersPayload, SetLayerDimensionPayload, SetLayerEnabledPayload, SetLayerNamePayload, SetLayerOpacityPayload, SetLayerStylePayload } from '../mapStore/types';
3
3
  import { GENERIC_SETTIME, GENERIC_SETBBOX } from './constants';
4
4
  export interface SetTimePayload {
5
5
  sourceId: string;
@@ -26,5 +26,5 @@ export interface SetBbox extends Action {
26
26
  }
27
27
  export declare type GenericActionPayload = SetBboxPayload | SetTimePayload;
28
28
  export declare type GenericActions = SetTime | SetBbox;
29
- export declare type SyncLayerActions = SetLayerName | SetLayerEnabled | SetLayerOpacity | SetLayerDimension | SetLayerStyle;
30
- export declare type SyncLayerPayloads = SetLayerNamePayload | SetLayerEnabledPayload | SetLayerOpacityPayload | SetLayerDimensionPayload | SetLayerStylePayload;
29
+ export declare type LayerActionPayloadsWithLayerIds = SetLayerOpacityPayload | SetLayerNamePayload | SetLayerEnabledPayload | SetLayerDimensionPayload | SetLayerStylePayload | SetActiveLayerIdPayload;
30
+ export declare type SyncLayerPayloads = LayerActionPayloadsWithLayerIds | AddLayerPayload | MoveLayerPayload | DeleteLayerPayload | SetBaseLayersPayload;
@@ -5,7 +5,6 @@ import { SetLayerOpacityPayload, SetLayerEnabledPayload, SetLayerDimensionPayloa
5
5
  * - serviceSetLayers
6
6
  * - layerSetStyles
7
7
  * - layerChangeStyle
8
- * - setLayerDimensionsForService
9
8
  * - layerChangeDimension
10
9
  *
11
10
  * Example: setLayers ({layers: someLayerObjectArray, mapId: 'mapId1'});
@@ -19,7 +18,6 @@ export declare const setLayers: (payload: SetLayersPayload) => LayerActions;
19
18
  * - serviceSetLayers
20
19
  * - layerSetStyles
21
20
  * - layerChangeStyle
22
- * - setLayerDimensionsForService
23
21
  * - layerChangeDimension
24
22
  *
25
23
  * Example: setBaseLayers({layers: someLayerObjectArray, mapId:'mapId1'})
@@ -40,7 +38,6 @@ export declare const addBaseLayer: (payload: AddBaseLayerPayload) => LayerAction
40
38
  * - serviceSetLayers
41
39
  * - layerSetStyles
42
40
  * - layerChangeStyle
43
- * - setLayerDimensionsForService
44
41
  * - layerChangeDimension
45
42
  *
46
43
  * Example: addLayer ({layerId: 'someLayerId', layer: someLayerObject, mapId:'mapId1'});