@opengeoweb/core 2.1.2 → 2.1.3

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 (57) hide show
  1. package/core.esm.js +1469 -452
  2. package/core.umd.js +1674 -542
  3. package/lib/components/ConfigurableConnectedMap/ConfigurableConnectedMap.d.ts +1 -0
  4. package/lib/components/ConfigurableMapWithSlider/ConfigurableMapWithSliderConnect.d.ts +1 -0
  5. package/lib/components/CustomSwitch/CustomSwitch.d.ts +1 -1
  6. package/lib/components/LayerManager/LayerSelect/KeywordFilterButton/KeywordFilterButtonConnect.d.ts +8 -0
  7. package/lib/components/LayerManager/LayerSelect/KeywordFilterButton/{KeywordFilterButton.spec.d.ts → KeywordFilterButtonConnect.spec.d.ts} +0 -0
  8. package/lib/components/LayerManager/LayerSelect/KeywordFilterResults/KeywordFilterResults.d.ts +10 -5
  9. package/lib/components/LayerManager/LayerSelect/KeywordFilterResults/KeywordFilterResults.stories.d.ts +13 -0
  10. package/lib/components/LayerManager/LayerSelect/KeywordFilterResults/KeywordFilterResultsConnect.d.ts +5 -1
  11. package/lib/components/LayerManager/LayerSelect/KeywordFilterResults/KeywordFilterResultsListItem.d.ts +1 -1
  12. package/lib/components/LayerManager/LayerSelect/LayerList/LayerList.d.ts +9 -0
  13. package/lib/components/LayerManager/LayerSelect/LayerList/LayerList.spec.d.ts +1 -0
  14. package/lib/components/LayerManager/LayerSelect/LayerList/LayerListConnect.d.ts +6 -0
  15. package/lib/components/LayerManager/LayerSelect/LayerList/LayerListConnect.spec.d.ts +1 -0
  16. package/lib/components/LayerManager/LayerSelect/SearchField/SearchField.d.ts +5 -1
  17. package/lib/components/LayerManager/LayerSelect/SearchField/SearchFieldButtonContainer.d.ts +8 -0
  18. package/lib/components/LayerManager/LayerSelect/SearchField/SearchFieldButtonContainer.spec.d.ts +1 -0
  19. package/lib/components/LayerManager/LayerSelect/SearchField/SearchFieldConnect.d.ts +3 -0
  20. package/lib/components/LayerManager/LayerSelect/SearchField/SearchFieldConnect.spec.d.ts +1 -0
  21. package/lib/components/LayerManager/LayerSelect/ServiceOptionsDialog/ServiceOptionsDialog.d.ts +6 -0
  22. package/lib/components/LayerManager/LayerSelect/ServiceOptionsDialog/ServiceOptionsDialog.spec.d.ts +1 -0
  23. package/lib/components/LayerManager/LayerSelect/ServiceOptionsDialog/ServiceOptionsDialog.stories.d.ts +13 -0
  24. package/lib/components/LayerManager/LayerSelect/ServicePopup/ServicePopup.d.ts +3 -0
  25. package/lib/components/Legend/LegendConnect.d.ts +3 -0
  26. package/lib/components/Legend/LegendDialog.d.ts +2 -0
  27. package/lib/components/Legend/LegendMapButtonConnect.d.ts +2 -0
  28. package/lib/components/MultiMapDimensionSelect/DimensionSelectButtonConnect.d.ts +2 -0
  29. package/lib/components/MultiMapDimensionSelect/DimensionSelectDialogConnect.d.ts +2 -0
  30. package/lib/components/MultiMapDimensionSelect/MultiDimensionSelectMapButtonsConnect.d.ts +2 -0
  31. package/lib/components/MultiMapView/MultiMapView.stories.d.ts +2 -0
  32. package/lib/components/MultiMapView/MultiMapView10x10.stories.d.ts +2 -0
  33. package/lib/components/ReactMapView/ReactMapView.d.ts +0 -1
  34. package/lib/components/ReactMapView/ReactMapViewParseLayer.d.ts +1 -1
  35. package/lib/components/ReactMapView/types.d.ts +0 -1
  36. package/lib/components/TimeSlider/TimeSliderUtils.d.ts +1 -1
  37. package/lib/store/coreModuleConfig.d.ts +1 -1
  38. package/lib/store/layerSelect/actions.d.ts +8 -1
  39. package/lib/store/layerSelect/config.d.ts +2 -2
  40. package/lib/store/layerSelect/constants.d.ts +1 -0
  41. package/lib/store/layerSelect/sagas.d.ts +5 -0
  42. package/lib/store/layerSelect/sagas.spec.d.ts +1 -0
  43. package/lib/store/layerSelect/selectors.d.ts +3 -1
  44. package/lib/store/layerSelect/types.d.ts +18 -2
  45. package/lib/store/mapStore/map/selectors.d.ts +1 -1
  46. package/lib/store/mapStore/service/selectors.d.ts +0 -8
  47. package/lib/store/mapStore/service/types.d.ts +1 -0
  48. package/lib/store/ui/actions.d.ts +2 -2
  49. package/lib/store/ui/types.d.ts +2 -1
  50. package/lib/storybookUtils/HelperComponents.d.ts +1 -1
  51. package/lib/utils/defaultTestSettings.d.ts +11 -2
  52. package/lib/utils/testUtils.d.ts +2 -2
  53. package/package.json +5 -5
  54. package/lib/components/LayerManager/LayerSelect/KeywordFilterButton/KeywordFilterButton.d.ts +0 -3
  55. package/lib/components/LayerManager/LayerSelect/KeywordFilterButton/KeywordFilterButton.stories.d.ts +0 -7
  56. package/lib/components/LayerManager/LayerSelect/KeywordFilterResults/KeywordFilterResultsConnect.stories.d.ts +0 -7
  57. package/lib/components/LayerManager/LayerSelect/KeywordFilterResults/mockServices.d.ts +0 -42
@@ -22,6 +22,7 @@ export interface ConfigurableConnectedMapProps {
22
22
  layers: Layer[];
23
23
  activeLayerId?: string;
24
24
  baseLayer?: Layer;
25
+ overLayers?: Layer[];
25
26
  bbox?: Bbox;
26
27
  srs?: string;
27
28
  displayTimeInMap?: boolean;
@@ -9,6 +9,7 @@ export interface ConfigurableMapWithSliderConnectProps {
9
9
  title?: string;
10
10
  layers: Layer[];
11
11
  baseLayer?: Layer;
12
+ overLayers?: Layer[];
12
13
  bbox?: Bbox;
13
14
  srs?: string;
14
15
  shouldShowZoomControls?: boolean;
@@ -1,3 +1,3 @@
1
1
  /// <reference types="react" />
2
- export declare const CustomSwitch: import("react").ComponentType<Pick<import("@material-ui/core").SwitchProps, "color" | "translate" | "hidden" | "size" | "style" | "icon" | "disabled" | "title" | "ref" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "className" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "id" | "lang" | "placeholder" | "slot" | "spellCheck" | "tabIndex" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "css" | "form" | "innerRef" | "key" | "name" | "type" | "autoFocus" | "formAction" | "formEncType" | "formMethod" | "formNoValidate" | "formTarget" | "value" | "readOnly" | "required" | "action" | "checked" | "disableFocusRipple" | "disableRipple" | "buttonRef" | "centerRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "onFocusVisible" | "TouchRippleProps" | "inputProps" | "inputRef" | "checkedIcon" | "edge"> & import("@material-ui/core").StyledComponentProps<"track" | "checked" | "switchBase">>;
2
+ export declare const CustomSwitch: import("react").ComponentType<Pick<import("@material-ui/core").SwitchProps, "color" | "translate" | "hidden" | "size" | "style" | "icon" | "disabled" | "checked" | "checkedIcon" | "className" | "innerRef" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "id" | "lang" | "placeholder" | "slot" | "spellCheck" | "tabIndex" | "title" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "css" | "ref" | "form" | "key" | "autoFocus" | "formAction" | "formEncType" | "formMethod" | "formNoValidate" | "formTarget" | "name" | "type" | "value" | "disableFocusRipple" | "edge" | "action" | "buttonRef" | "centerRipple" | "disableRipple" | "disableTouchRipple" | "focusRipple" | "focusVisibleClassName" | "onFocusVisible" | "TouchRippleProps" | "inputProps" | "inputRef" | "readOnly" | "required"> & import("@material-ui/core").StyledComponentProps<"switchBase" | "checked" | "track">>;
3
3
  export default CustomSwitch;
@@ -0,0 +1,8 @@
1
+ import * as React from 'react';
2
+ import { Source } from '../../../../store/ui/types';
3
+ interface KeywordFilterButtonConnectProps {
4
+ mapId: string;
5
+ source?: Source;
6
+ }
7
+ declare const KeywordFilterButtonConnect: React.FC<KeywordFilterButtonConnectProps>;
8
+ export default KeywordFilterButtonConnect;
@@ -1,11 +1,16 @@
1
1
  import * as React from 'react';
2
- interface KeywordObject {
3
- index: number;
4
- id: string;
5
- isSelected: boolean;
6
- }
2
+ import { KeywordObject } from '../../../../store/layerSelect/types';
3
+ import { Source } from '../../../../store/ui/types';
7
4
  interface KeywordFilterResultsProps {
8
5
  arrayOfKeywordObjects: KeywordObject[];
6
+ mapId: string;
7
+ bounds?: string;
8
+ showTitle?: boolean;
9
+ onClose?: () => void;
10
+ onMouseDown?: () => void;
11
+ isOpen: boolean;
12
+ order?: number;
13
+ source?: Source;
9
14
  }
10
15
  declare const KeywordFilterResults: React.FC<KeywordFilterResultsProps>;
11
16
  export default KeywordFilterResults;
@@ -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 KeywordFilterResultsLight: {
7
+ (): React.ReactElement;
8
+ storyName: string;
9
+ };
10
+ export declare const KeywordFilterResultsDark: {
11
+ (): React.ReactElement;
12
+ storyName: string;
13
+ };
@@ -1,3 +1,7 @@
1
1
  import * as React from 'react';
2
- declare const KeywordFilterResultsConnect: React.FC;
2
+ interface KeywordFilterResultsConnectProps {
3
+ bounds?: string;
4
+ showTitle?: boolean;
5
+ }
6
+ declare const KeywordFilterResultsConnect: React.FC<KeywordFilterResultsConnectProps>;
3
7
  export default KeywordFilterResultsConnect;
@@ -2,7 +2,7 @@ import * as React from 'react';
2
2
  interface FilterListItemProps {
3
3
  index: number;
4
4
  text: string;
5
- isSelected: boolean;
5
+ checked: boolean;
6
6
  toggleCheckbox: (index: number) => void;
7
7
  selectOnlyOne: (index: number) => void;
8
8
  }
@@ -0,0 +1,9 @@
1
+ import * as React from 'react';
2
+ import { Services } from '../../../../store/mapStore/service/types';
3
+ interface LayerListProps {
4
+ services: Services;
5
+ serviceIds: string[];
6
+ layerSelectHeight: number;
7
+ }
8
+ declare const LayerList: React.FC<LayerListProps>;
9
+ export default LayerList;
@@ -0,0 +1,6 @@
1
+ import * as React from 'react';
2
+ interface LayerListConnectProps {
3
+ layerSelectHeight: number;
4
+ }
5
+ declare const LayerListConnect: React.FC<LayerListConnectProps>;
6
+ export default LayerListConnect;
@@ -1,3 +1,7 @@
1
1
  import * as React from 'react';
2
- declare const SearchField: React.FC;
2
+ interface SearchFieldProps {
3
+ searchFilter: string;
4
+ setSearchFilter: (filterText: string) => void;
5
+ }
6
+ declare const SearchField: React.FC<SearchFieldProps>;
3
7
  export default SearchField;
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+ export declare const isURL: (string: string) => boolean;
3
+ interface FieldButtonProps {
4
+ localSearchString: string;
5
+ onClickClear: () => void;
6
+ }
7
+ declare const SearchFieldButtonContainer: React.FC<FieldButtonProps>;
8
+ export default SearchFieldButtonContainer;
@@ -0,0 +1,3 @@
1
+ import * as React from 'react';
2
+ declare const SearchFieldConnect: React.FC;
3
+ export default SearchFieldConnect;
@@ -0,0 +1,6 @@
1
+ import * as React from 'react';
2
+ interface ServiceOptionsDialogProps {
3
+ services: string[];
4
+ }
5
+ declare const ServiceOptionsDialog: React.FC<ServiceOptionsDialogProps>;
6
+ export default ServiceOptionsDialog;
@@ -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 ServiceOptionsDialogLight: {
7
+ (): React.ReactElement;
8
+ storyName: string;
9
+ };
10
+ export declare const ServiceOptionsDialogDark: {
11
+ (): React.ReactElement;
12
+ storyName: string;
13
+ };
@@ -2,6 +2,9 @@ import * as React from 'react';
2
2
  interface ServicePopupProps {
3
3
  servicePopupVariant: 'edit' | 'add' | 'save';
4
4
  hideBackdrop?: boolean;
5
+ isOpen?: boolean;
6
+ closePopup?: () => void;
7
+ url?: string;
5
8
  }
6
9
  export declare const ADD_HEADING = "Add a new service";
7
10
  export declare const EDIT_HEADING = "Edit service";
@@ -1,6 +1,8 @@
1
1
  import * as React from 'react';
2
+ import { Source } from '../../store/ui/types';
2
3
  interface LegendConnectProps {
3
4
  showMapId?: boolean;
5
+ source?: Source;
4
6
  }
5
7
  /**
6
8
  * Legend component connected to the store displaying a legend for every layer shown on the active map Id
@@ -9,6 +11,7 @@ interface LegendConnectProps {
9
11
  *
10
12
  * Expects the following props:
11
13
  * @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
14
+ * @param {Source} source (optional) source: Source - default is 'app', 'module' makes sure it will be shown on top of the module
12
15
 
13
16
  * ``` <LegendConnect legendDialogId={legendDialogId} />```
14
17
  */
@@ -1,5 +1,6 @@
1
1
  import * as React from 'react';
2
2
  import { Layer } from '../../store/mapStore/types';
3
+ import { Source } from '../../store/ui/types';
3
4
  interface LegendDialogProps {
4
5
  layers: Layer[];
5
6
  isOpen: boolean;
@@ -8,6 +9,7 @@ interface LegendDialogProps {
8
9
  mapId: string;
9
10
  showMapId?: boolean;
10
11
  order?: number;
12
+ source?: Source;
11
13
  }
12
14
  declare const LegendDialog: React.FC<LegendDialogProps>;
13
15
  export default LegendDialog;
@@ -1,6 +1,8 @@
1
1
  import * as React from 'react';
2
+ import { Source } from '../../store/ui/types';
2
3
  interface LegendMapButtonProps {
3
4
  mapId: string;
5
+ source?: Source;
4
6
  }
5
7
  declare const LegendMapButtonConnect: React.FC<LegendMapButtonProps>;
6
8
  export default LegendMapButtonConnect;
@@ -1,7 +1,9 @@
1
1
  import * as React from 'react';
2
+ import { Source } from '../../store/ui/types';
2
3
  interface DimensionSelectMapButtonProps {
3
4
  mapId: string;
4
5
  dimension: string;
6
+ source?: Source;
5
7
  }
6
8
  declare const DimensionSelectMapButtonConnect: React.FC<DimensionSelectMapButtonProps>;
7
9
  export default DimensionSelectMapButtonConnect;
@@ -1,4 +1,5 @@
1
1
  import * as React from 'react';
2
+ import { Source } from '../../store/ui/types';
2
3
  interface DimensionSelectDialogConnectProps {
3
4
  mapId: string;
4
5
  dimensionName: string;
@@ -7,6 +8,7 @@ interface DimensionSelectDialogConnectProps {
7
8
  onMouseDown?: () => void;
8
9
  onToggleDialog?: (isDialogOpen: boolean) => void;
9
10
  index?: number;
11
+ source?: Source;
10
12
  }
11
13
  declare const DimensionSelectDialogConnect: React.FC<DimensionSelectDialogConnectProps>;
12
14
  export default DimensionSelectDialogConnect;
@@ -1,6 +1,8 @@
1
1
  import * as React from 'react';
2
+ import { Source } from '../../store/ui/types';
2
3
  interface MultiDimensionSelectMapButtonsConnectProps {
3
4
  mapId: string;
5
+ source?: Source;
4
6
  }
5
7
  declare const MultiDimensionSelectMapButtonsConnect: React.FC<MultiDimensionSelectMapButtonsConnectProps>;
6
8
  export default MultiDimensionSelectMapButtonsConnect;
@@ -1,7 +1,9 @@
1
1
  import { MultiMapViewStory2x2 } from './MultiMapView2x2.stories';
2
2
  import { MultiMapViewStory4x3 } from './MultiMapView4x3.stories';
3
+ import { MultiMapViewStory10x10 } from './MultiMapView10x10.stories';
3
4
  export { MultiMapViewStory2x2 };
4
5
  export { MultiMapViewStory4x3 };
6
+ export { MultiMapViewStory10x10 };
5
7
  declare const _default: {
6
8
  title: string;
7
9
  };
@@ -0,0 +1,2 @@
1
+ import * as React from 'react';
2
+ export declare const MultiMapViewStory10x10: () => React.ReactElement;
@@ -42,7 +42,6 @@ declare class ReactMapView extends React.Component<ReactMapViewProps, ReactMapVi
42
42
  adagucWebMapJSRef: any;
43
43
  refetchTimer: any;
44
44
  static defaultProps: {
45
- xml2jsonrequestURL: string;
46
45
  srs: string;
47
46
  bbox: {
48
47
  left: number;
@@ -2,4 +2,4 @@ import { WMLayer, WMJSMap } from '@opengeoweb/webmap';
2
2
  import { SetLayerStylePayload, SetLayersForServicePayload, SetLayerStylesPayload, UpdateAllMapDimensionsPayload, SetLayerDimensionsPayload } from '../../store/mapStore/types';
3
3
  import { MapViewProps } from '../MapView/types';
4
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: SetLayerStylesPayload) => void, onLayerSetDimensions?: (payload: SetLayerDimensionsPayload) => void) => void;
5
+ export declare const setServiceMetadata: (wmLayer: WMLayer, mapId: string, webMapJSInstance: WMJSMap, mapProperties: MapViewProps, onMapUpdateAllDimensions?: (payload: UpdateAllMapDimensionsPayload) => void, onLayerChangeStyle?: (payload: SetLayerStylePayload) => void, onServiceSetLayers?: (payload: SetLayersForServicePayload) => void, onLayerSetStyles?: (payload: SetLayerStylesPayload) => void, onLayerSetDimensions?: (payload: SetLayerDimensionsPayload) => void) => void;
@@ -20,7 +20,6 @@ export interface ReactMapViewProps {
20
20
  animationDelay?: number;
21
21
  dimensions?: Dimension[];
22
22
  onClick?: () => void;
23
- xml2jsonrequestURL?: string;
24
23
  displayMapPin?: boolean;
25
24
  mapPinLocation?: MapLocation;
26
25
  shouldAutoFetch?: boolean;
@@ -39,7 +39,7 @@ export declare const setNewRoundedTime: (x: number, centerTime: number, width: n
39
39
  export declare const getDataLimitsFromLayers: (layers: Layer[]) => Array<number>;
40
40
  export declare const getNextTimeStepvalue: (value: number, max: number) => number;
41
41
  export declare const getPreviousTimeStepvalue: (value: number, min: number) => number;
42
- export declare const getValueFromKeyboardEvent: (event: React.KeyboardEvent<HTMLInputElement>, value: number, min: number, max: number) => number;
42
+ export declare const getValueFromKeyboardEvent: (event: React.KeyboardEvent<HTMLInputElement>, value: number, min: number, max: number, supportFourDirectionNavigation?: boolean) => number;
43
43
  export declare const getTimeStepFromDataInterval: (timeInterval: DateInterval) => number;
44
44
  export declare const getActiveLayerTimeStep: (timeDimension: Dimension) => number | null;
45
45
  /**
@@ -1,2 +1,2 @@
1
- declare const coreModuleConfig: (import("redux-dynamic-modules-saga").ISagaModule<import("./mapStore/types").WebMapStateModuleState> | import("redux-dynamic-modules-saga").ISagaModule<import("./generic/synchronizationGroups/types").SynchronizationGroupModuleState> | import("redux-dynamic-modules-saga").ISagaModule<import("./ui/types").UIModuleState> | import("redux-dynamic-modules-core").IModule<import("./layerSelect/types").LayerSelectModuleState>)[];
1
+ declare const coreModuleConfig: (import("redux-dynamic-modules-saga").ISagaModule<import("./mapStore/types").WebMapStateModuleState> | import("redux-dynamic-modules-saga").ISagaModule<import("./generic/synchronizationGroups/types").SynchronizationGroupModuleState> | import("redux-dynamic-modules-saga").ISagaModule<import("./ui/types").UIModuleState> | import("redux-dynamic-modules-saga").ISagaModule<import("./layerSelect/types").LayerSelectModuleState>)[];
2
2
  export default coreModuleConfig;
@@ -1,4 +1,4 @@
1
- import { LayerSelectActions, SetSearchFilterPayload } from './types';
1
+ import { AddNewKeywordsPayload, LayerSelectActions, SetSearchFilterPayload } from './types';
2
2
  /**
3
3
  * Sets the given text to the searchFilter
4
4
  *
@@ -6,3 +6,10 @@ import { LayerSelectActions, SetSearchFilterPayload } from './types';
6
6
  * @param {string} payload { filterText: string }
7
7
  */
8
8
  export declare const setSearchFilter: (payload: SetSearchFilterPayload) => LayerSelectActions;
9
+ /**
10
+ * Sets the given keywords to Layer Select store
11
+ *
12
+ * Example: addNewKeywords({ keywords: ['keyword1', 'keyword2'] })
13
+ * @param {string[]} payload { keywords: string[] }
14
+ */
15
+ export declare const addNewKeywords: (payload: AddNewKeywordsPayload) => LayerSelectActions;
@@ -1,4 +1,4 @@
1
- import { IModule } from 'redux-dynamic-modules';
1
+ import { ISagaModule } from 'redux-dynamic-modules-saga';
2
2
  import { LayerSelectModuleState } from './types';
3
- declare const layerSelectConfig: IModule<LayerSelectModuleState>;
3
+ declare const layerSelectConfig: ISagaModule<LayerSelectModuleState>;
4
4
  export default layerSelectConfig;
@@ -1 +1,2 @@
1
1
  export declare const LAYER_SELECT_SET_SEARCH_FILTER = "LAYER_SELECT_SET_SEARCH_FILTER";
2
+ export declare const LAYER_SELECT_ADD_NEW_KEYWORDS = "LAYER_SELECT_ADD_NEW_KEYWORDS";
@@ -0,0 +1,5 @@
1
+ import { SagaIterator } from 'redux-saga';
2
+ import { ServiceActions } from '../mapStore/types';
3
+ export declare function newServiceAddedSaga(capturedAction: ServiceActions): SagaIterator;
4
+ export declare function rootSaga(): SagaIterator;
5
+ export default rootSaga;
@@ -0,0 +1 @@
1
+ export {};
@@ -1,2 +1,4 @@
1
1
  import { AppStore } from '../../types/types';
2
- export declare const getSearchFilter: (store: AppStore) => string;
2
+ import { LayerSelectStoreType } from './types';
3
+ export declare const getSearchFilter: import("reselect").OutputSelector<AppStore, string, (res: LayerSelectStoreType) => string>;
4
+ export declare const getKeywords: import("reselect").OutputSelector<AppStore, import("./types").KeywordObject[], (res: LayerSelectStoreType) => import("./types").KeywordObject[]>;
@@ -1,7 +1,15 @@
1
1
  import { Action } from 'redux';
2
- import { LAYER_SELECT_SET_SEARCH_FILTER } from './constants';
2
+ import { LAYER_SELECT_ADD_NEW_KEYWORDS, LAYER_SELECT_SET_SEARCH_FILTER } from './constants';
3
+ export interface KeywordObject {
4
+ id: string;
5
+ amount: number;
6
+ amountVisible: number;
7
+ checked: boolean;
8
+ }
3
9
  export interface FiltersType {
4
10
  searchFilter: string;
11
+ keywords: KeywordObject[];
12
+ addedServices: string[];
5
13
  }
6
14
  export interface LayerSelectStoreType {
7
15
  filters: FiltersType;
@@ -16,4 +24,12 @@ export interface SetSearchFilter extends Action {
16
24
  type: typeof LAYER_SELECT_SET_SEARCH_FILTER;
17
25
  payload: SetSearchFilterPayload;
18
26
  }
19
- export declare type LayerSelectActions = SetSearchFilter;
27
+ export interface AddNewKeywordsPayload {
28
+ serviceName: string;
29
+ keywords: string[];
30
+ }
31
+ export interface AddNewKeywords extends Action {
32
+ type: typeof LAYER_SELECT_ADD_NEW_KEYWORDS;
33
+ payload: AddNewKeywordsPayload;
34
+ }
35
+ export declare type LayerSelectActions = SetSearchFilter | AddNewKeywords;
@@ -323,4 +323,4 @@ export declare const getAllUniqueDimensions: import("reselect").OutputSelector<A
323
323
  * @param {string} mapId mapId: string - Id of the map
324
324
  * @returns {object} returnType: latitude and longitude of pin
325
325
  */
326
- export declare const getPinLocation: import("reselect").OutputParametricSelector<AppStore, string, {}, (res: WebMap) => {}>;
326
+ export declare const getPinLocation: import("reselect").OutputParametricSelector<AppStore, string, import("./types").MapLocation, (res: WebMap) => import("./types").MapLocation>;
@@ -24,11 +24,3 @@ export declare const getServices: import("reselect").OutputSelector<AppStore, im
24
24
  * @returns {array} returnType: ServiceLayer[]
25
25
  */
26
26
  export declare const getServiceLayersByName: (store: AppStore, serviceName: string) => ServiceLayer[];
27
- /**
28
- * Gets all keywords from services
29
- *
30
- * const keywords = useSelector((store) => mapSelectors.getKeywords(store));
31
- * @param {object} store store: object - Store object
32
- * @returns {array} returnType: Keyword[]
33
- */
34
- export declare const getKeywords: import("reselect").OutputSelector<AppStore, string[], (res: ServiceState) => string[]>;
@@ -17,6 +17,7 @@ export interface ServiceLayer {
17
17
  text: string;
18
18
  leaf: boolean;
19
19
  path: string;
20
+ abstract?: string;
20
21
  keywords?: string[];
21
22
  }
22
23
  export interface ServiceState {
@@ -2,8 +2,8 @@ import { SetActiveMapIdForDialogPayload, UIActions, UIOrderDialogPayload, UIRegi
2
2
  /**
3
3
  * Registers the dialog in the store and creates the dialog state
4
4
  *
5
- * Example: registerDialog({'dialogId1', type: 'legend}) you can optionally specify the activeMapId and whether the dialog is open
6
- * @param {string} payload {type: 'legend' | 'layerManager' | 'dimensionSelect-elevation', activeMapId?: string, setOpen?: boolean}
5
+ * Example: registerDialog({'dialogId1', type: 'legend}) you can optionally specify the activeMapId, whether the dialog is open and the souce ('app' or 'module', default is 'app')
6
+ * @param {string} payload {type: 'legend' | 'layerManager' | 'dimensionSelect-elevation', activeMapId?: string, setOpen?: boolean, source?: Source}
7
7
  */
8
8
  export declare const registerDialog: (payload: UIRegisterDialogPayload) => UIActions;
9
9
  /**
@@ -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';
3
+ export declare type DialogType = 'legend' | 'layerManager' | 'layerSelect' | 'dimensionSelect-elevation' | 'dimensionSelect-ensemble_member' | 'keywordFilter';
4
4
  export declare type Source = 'app' | 'module';
5
5
  export interface UIType {
6
6
  type: DialogType;
@@ -29,6 +29,7 @@ export interface UIRegisterDialogPayload {
29
29
  type: DialogType;
30
30
  activeMapId?: string;
31
31
  setOpen?: boolean;
32
+ source?: Source;
32
33
  }
33
34
  export interface UIRegisterDialog extends Action {
34
35
  type: typeof UI_REGISTER_DIALOG;
@@ -1,6 +1,6 @@
1
1
  import * as React from 'react';
2
2
  import { Layer } from '../store/mapStore/layers/types';
3
- export declare const useStyles: (props?: any) => import("@material-ui/styles").ClassNameMap<"content" | "title" | "root" | "chips">;
3
+ export declare const useStyles: (props?: any) => import("@material-ui/styles").ClassNameMap<"content" | "root" | "title" | "chips">;
4
4
  declare type ExampleLayer = {
5
5
  title: string;
6
6
  layers: Layer[];
@@ -46,12 +46,21 @@ export declare const defaultReduxServices: {
46
46
  id: string;
47
47
  name: string;
48
48
  service: string;
49
- layers: {
49
+ layers: ({
50
50
  name: string;
51
51
  text: string;
52
52
  leaf: boolean;
53
53
  path: string;
54
- }[];
54
+ keywords: any[];
55
+ abstract: string;
56
+ } | {
57
+ name: string;
58
+ text: string;
59
+ leaf: boolean;
60
+ path: string;
61
+ keywords: any[];
62
+ abstract?: undefined;
63
+ })[];
55
64
  };
56
65
  };
57
66
  export declare const multiDimensionLayer: {
@@ -1,4 +1,4 @@
1
- import { WebMapState, LayerState, Dimension, Layer, WebMapStateModuleState } from '../store/mapStore/types';
1
+ import { WebMapState, LayerState, Dimension, Layer, WebMapStateModuleState, Scale } from '../store/mapStore/types';
2
2
  export declare const createWebmapState: (...mapIds: string[]) => WebMapState;
3
3
  export declare const createLayersState: (layerId: string, props?: {}) => LayerState;
4
4
  export declare const createMultipleLayersState: (layers: Layer[], mapId: string) => LayerState;
@@ -7,6 +7,6 @@ export declare const mockStateMapWithLayer: (layer: Layer, mapId: string) => Web
7
7
  export declare const mockStateMapWithMultipleLayers: (layers: Layer[], mapId: string) => WebMapStateModuleState;
8
8
  export declare const mockStateMapWithDimensions: (layer: Layer, mapId: string) => WebMapStateModuleState;
9
9
  export declare const mockStateMapWithDimensionsWithoutLayers: (mapId: string) => WebMapStateModuleState;
10
- export declare const mockStateMapWithTimeSliderScaleWithoutLayers: (mapId: string, timeSliderScale: number) => WebMapStateModuleState;
10
+ export declare const mockStateMapWithTimeSliderScaleWithoutLayers: (mapId: string, timeSliderScale: Scale) => WebMapStateModuleState;
11
11
  export declare const mockStateMapWithTimeStepWithoutLayers: (mapId: string, timeStep: number) => WebMapStateModuleState;
12
12
  export declare const mockStateMapWithAnimationDelayWithoutLayers: (mapId: string) => WebMapStateModuleState;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opengeoweb/core",
3
- "version": "2.1.2",
3
+ "version": "2.1.3",
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": "16.14.0",
16
- "@opengeoweb/theme": "2.1.2",
16
+ "@opengeoweb/theme": "2.1.3",
17
17
  "@material-ui/core": "^4.11.0",
18
18
  "@material-ui/lab": "^4.0.0-alpha.56",
19
19
  "@material-ui/icons": "^4.9.1",
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.2",
23
+ "@opengeoweb/webmap": "2.1.3",
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.2",
27
+ "@opengeoweb/shared": "2.1.3",
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.2",
31
+ "@opengeoweb/form-fields": "2.1.3",
32
32
  "react-hook-form": "^6.12.1",
33
33
  "@material-ui/pickers": "^3.2.10",
34
34
  "moment-timezone": "^0.5.31",
@@ -1,3 +0,0 @@
1
- import * as React from 'react';
2
- declare const KeywordFilterButton: React.FC;
3
- export default KeywordFilterButton;
@@ -1,7 +0,0 @@
1
- import * as React from 'react';
2
- declare const _default: {
3
- title: string;
4
- };
5
- export default _default;
6
- export declare const KeywordFilterButtonLight: () => React.ReactElement;
7
- export declare const KeywordFilterButtonDark: () => React.ReactElement;
@@ -1,7 +0,0 @@
1
- import * as React from 'react';
2
- declare const _default: {
3
- title: string;
4
- };
5
- export default _default;
6
- export declare const KeywordFilterResultsConnectLight: () => React.ReactElement;
7
- export declare const KeywordFilterResultsConnectDark: () => React.ReactElement;