@opengeoweb/core 4.19.1 → 4.21.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.esm.js +1884 -847
- package/index.umd.js +1992 -930
- package/lib/components/ComponentsLookUp/componentsLookUp.d.ts +1 -1
- package/lib/components/LayerManager/DockedLayerManagerConnect.d.ts +2 -1
- package/lib/components/LayerManager/LayerContainerRow/LayerRow/LayerRow.d.ts +1 -0
- package/lib/components/LayerManager/LayerManager.d.ts +1 -1
- package/lib/components/LayerManager/LayerManagerConnect.d.ts +2 -1
- package/lib/components/LayerManager/LayerManagerHeaderOptions.d.ts +21 -0
- package/lib/components/LayerManager/LayerManagerHeaderOptionsConnect.d.ts +2 -1
- package/lib/components/LayerManager/LayerManagerUtils.d.ts +20 -1
- package/lib/components/LayerManager/index.d.ts +1 -0
- package/lib/components/MapControls/MapControlButton.d.ts +2 -3
- package/lib/components/ReactMapView/ReactMapViewParseLayer.d.ts +1 -2
- package/lib/components/TimeSliderLite/TimeSliderLite.d.ts +36 -0
- package/lib/components/TimeSliderLite/TimeSliderLite.stories.d.ts +9 -0
- package/lib/components/TimeSliderLite/TimeSliderLiteBackground/TimeSliderDraggableNeedle.d.ts +20 -0
- package/lib/components/TimeSliderLite/TimeSliderLiteBackground/TimeSliderDraggableNeedle.spec.d.ts +1 -0
- package/lib/components/TimeSliderLite/TimeSliderLiteBackground/TimeSliderLiteBackground.d.ts +17 -0
- package/lib/components/TimeSliderLite/TimeSliderLiteBackground/TimeSliderLiteBackgroundSvg.d.ts +13 -0
- package/lib/components/TimeSliderLite/TimeSliderLiteBackground/TimeSliderLiteBackgroundSvg.spec.d.ts +1 -0
- package/lib/components/TimeSliderLite/TimeSliderLiteButtons/ControlButtonGroup/ControlButtonGroup.d.ts +8 -0
- package/lib/components/TimeSliderLite/TimeSliderLiteButtons/HideButton/HideButton.d.ts +9 -0
- package/lib/components/TimeSliderLite/TimeSliderLiteButtons/MenuButton/MenuButton.d.ts +9 -0
- package/lib/components/TimeSliderLite/TimeSliderLiteButtons/PlayButton/PlayButton.d.ts +11 -0
- package/lib/components/TimeSliderLite/TimeSliderLiteButtons/StepButton/StepButton.d.ts +11 -0
- package/lib/components/TimeSliderLite/TimeSliderLiteButtons/TimeSliderLiteButtonUtils.d.ts +3 -0
- package/lib/components/TimeSliderLite/TimeSliderLiteConnect.d.ts +20 -0
- package/lib/components/TimeSliderLite/TimeSliderLiteConnect.spec.d.ts +1 -0
- package/lib/components/TimeSliderLite/TimeSliderLiteConnect.stories.d.ts +9 -0
- package/lib/components/TimeSliderLite/TimeSliderLiteOptionsMenu/SubmenuWrapper.d.ts +8 -0
- package/lib/components/TimeSliderLite/TimeSliderLiteOptionsMenu/SubmenuWrapper.spec.d.ts +1 -0
- package/lib/components/TimeSliderLite/TimeSliderLiteOptionsMenu/TimeRangeOptions/DayHourSelector.d.ts +21 -0
- package/lib/components/TimeSliderLite/TimeSliderLiteOptionsMenu/TimeRangeOptions/DayHourSelector.spec.d.ts +1 -0
- package/lib/components/TimeSliderLite/TimeSliderLiteOptionsMenu/TimeRangeOptions/TimeRangeOptions.d.ts +15 -0
- package/lib/components/TimeSliderLite/TimeSliderLiteOptionsMenu/TimeSliderLiteOptionsMenu.d.ts +27 -0
- package/lib/components/TimeSliderLite/TimeSliderLiteOptionsMenu/TimeSliderLiteOptionsMenu.spec.d.ts +1 -0
- package/lib/components/TimeSliderLite/index.d.ts +4 -0
- package/lib/components/TimeSliderLite/timeSliderLiteUtils.d.ts +83 -0
- package/lib/components/TimeSliderLite/timeSliderLiteUtils.spec.d.ts +1 -0
- package/lib/index.d.ts +5 -4
- package/lib/store/generic/synchronizationGroups/selectors.d.ts +2 -1
- package/lib/store/generic/synchronizationGroups/types.d.ts +4 -4
- package/lib/store/mapStore/layers/reducer.d.ts +2 -2
- package/lib/store/mapStore/layers/types.d.ts +0 -2
- package/lib/store/mapStore/map/index.d.ts +1 -1
- package/lib/store/mapStore/utils/helpers.d.ts +1 -0
- package/lib/store/ui/index.d.ts +1 -1
- package/lib/utils/sanitizeHTML.d.ts +3 -0
- package/lib/utils/sanitizeHTML.spec.d.ts +1 -0
- package/package.json +11 -10
- package/lib/components/LayerManager/LayerSelect/LayerList/SearchHighlight.d.ts +0 -7
- /package/lib/components/{LayerManager/LayerSelect/LayerList/SearchHighlight.spec.d.ts → TimeSliderLite/TimeSliderLite.spec.d.ts} +0 -0
|
@@ -19,7 +19,7 @@ interface InitialSliderProps {
|
|
|
19
19
|
}
|
|
20
20
|
export declare type InitialProps = InitialMapProps | InitialMultiMapProps | InitialSliderProps | InitialHarmTempAndPrecipProps | ModelRunIntervalProps | MapPresetInitialProps;
|
|
21
21
|
/**
|
|
22
|
-
* The lookup table is for registering your own components with the
|
|
22
|
+
* The lookup table is for registering your own components with the workspace.
|
|
23
23
|
* @param payload
|
|
24
24
|
* @returns
|
|
25
25
|
*/
|
|
@@ -7,7 +7,8 @@ interface DockedLayerManagerConnectProps {
|
|
|
7
7
|
preloadedAvailableBaseLayers?: Layer[];
|
|
8
8
|
preloadedBaseServices?: Service[];
|
|
9
9
|
bounds?: string;
|
|
10
|
-
|
|
10
|
+
title?: string;
|
|
11
|
+
showMapIdInTitle?: boolean;
|
|
11
12
|
leftHeaderComponent?: React.ReactElement;
|
|
12
13
|
source?: Source;
|
|
13
14
|
}
|
|
@@ -43,6 +43,7 @@ interface LayerRowProps {
|
|
|
43
43
|
layerDeleteLayout?: React.ReactChild;
|
|
44
44
|
layerMenuLayout?: React.ReactChild;
|
|
45
45
|
layerActiveLayout?: React.ReactChild;
|
|
46
|
+
disableActivateLayer?: boolean;
|
|
46
47
|
services?: Services;
|
|
47
48
|
isEnabled?: boolean;
|
|
48
49
|
dragHandle?: React.ReactElement;
|
|
@@ -3,11 +3,32 @@ export declare type Size = {
|
|
|
3
3
|
width: number;
|
|
4
4
|
height: number;
|
|
5
5
|
};
|
|
6
|
+
export interface ToolbarButtonSettings {
|
|
7
|
+
small?: {
|
|
8
|
+
icon?: React.ReactNode;
|
|
9
|
+
isDisabled?: boolean;
|
|
10
|
+
};
|
|
11
|
+
medium?: {
|
|
12
|
+
icon?: React.ReactNode;
|
|
13
|
+
isDisabled?: boolean;
|
|
14
|
+
};
|
|
15
|
+
large?: {
|
|
16
|
+
icon?: React.ReactNode;
|
|
17
|
+
isDisabled?: boolean;
|
|
18
|
+
};
|
|
19
|
+
dock?: {
|
|
20
|
+
isDisabled?: boolean;
|
|
21
|
+
};
|
|
22
|
+
divider?: {
|
|
23
|
+
element: React.ReactNode;
|
|
24
|
+
};
|
|
25
|
+
}
|
|
6
26
|
interface HeaderOptionsProps {
|
|
7
27
|
isDockedLayerManager: boolean;
|
|
8
28
|
shortcutsEnabled: boolean;
|
|
9
29
|
onClickDockButton: () => void;
|
|
10
30
|
onChangeSize: (size: Size) => void;
|
|
31
|
+
buttonSettings?: ToolbarButtonSettings;
|
|
11
32
|
}
|
|
12
33
|
export declare const sizeSmall: {
|
|
13
34
|
width: number;
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import { Size } from './LayerManagerHeaderOptions';
|
|
2
|
+
import { Size, ToolbarButtonSettings } from './LayerManagerHeaderOptions';
|
|
3
3
|
interface HeaderOptionsProps {
|
|
4
4
|
isDockedLayerManager: boolean;
|
|
5
5
|
mapId: string;
|
|
6
6
|
onClickDockButton: () => void;
|
|
7
7
|
onChangeSize: (size: Size) => void;
|
|
8
|
+
buttonSettings?: ToolbarButtonSettings;
|
|
8
9
|
}
|
|
9
10
|
export declare const areShortcutsEnabled: (activeMapId: string, mapId: string, floatingLmFocused: boolean, isDockedLayerManager: boolean) => boolean;
|
|
10
11
|
declare const HeaderOptionsConnect: React.FC<HeaderOptionsProps>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { DockedLayerManagerSize } from '../../store/mapStore/types';
|
|
3
|
-
import { Size } from './LayerManagerHeaderOptions';
|
|
3
|
+
import { Size, ToolbarButtonSettings } from './LayerManagerHeaderOptions';
|
|
4
4
|
export declare const columnClasses: {
|
|
5
5
|
column1: string;
|
|
6
6
|
column2: string;
|
|
@@ -154,6 +154,15 @@ export declare const layerManagerStyle: {
|
|
|
154
154
|
};
|
|
155
155
|
export declare const returnCorrectSize: (sizeResult: DockedLayerManagerSize | undefined) => Size;
|
|
156
156
|
export interface LayerManagerCustomSettings {
|
|
157
|
+
toolbar?: {
|
|
158
|
+
dragHandle?: {
|
|
159
|
+
icon?: React.ReactNode;
|
|
160
|
+
};
|
|
161
|
+
controlButtonSettings?: ToolbarButtonSettings;
|
|
162
|
+
closeButton?: {
|
|
163
|
+
icon?: React.ReactNode;
|
|
164
|
+
};
|
|
165
|
+
};
|
|
157
166
|
header?: {
|
|
158
167
|
addLayer?: {
|
|
159
168
|
tooltipTitle?: string;
|
|
@@ -177,6 +186,9 @@ export interface LayerManagerCustomSettings {
|
|
|
177
186
|
tooltipTitle?: string;
|
|
178
187
|
icon?: React.ReactNode;
|
|
179
188
|
};
|
|
189
|
+
activateLayer?: {
|
|
190
|
+
isDisabled?: boolean;
|
|
191
|
+
};
|
|
180
192
|
enableLayer?: {
|
|
181
193
|
enabledIcon?: React.ReactNode;
|
|
182
194
|
disabledIcon?: React.ReactNode;
|
|
@@ -184,6 +196,10 @@ export interface LayerManagerCustomSettings {
|
|
|
184
196
|
disabledTooltipTitle?: string;
|
|
185
197
|
};
|
|
186
198
|
renderLayer?: {
|
|
199
|
+
Element?: React.FC<{
|
|
200
|
+
layerId: string;
|
|
201
|
+
mapId: string;
|
|
202
|
+
}>;
|
|
187
203
|
tooltipPrefix?: string;
|
|
188
204
|
};
|
|
189
205
|
layerStyle?: {
|
|
@@ -205,6 +221,9 @@ export interface LayerManagerCustomSettings {
|
|
|
205
221
|
footer?: {
|
|
206
222
|
baseLayerRow?: {
|
|
207
223
|
title?: string;
|
|
224
|
+
addLayersButton?: {
|
|
225
|
+
isDisabled?: boolean;
|
|
226
|
+
};
|
|
208
227
|
};
|
|
209
228
|
baseLayerDropdown?: {
|
|
210
229
|
tooltipPrefix?: string;
|
|
@@ -7,3 +7,4 @@ export { default as LayerManagerConnect } from './LayerManagerConnect';
|
|
|
7
7
|
export { default as DockedLayerManagerConnect } from './DockedLayerManagerConnect';
|
|
8
8
|
export { default as LayerSelectConnect } from './LayerSelect/LayerSelectConnect';
|
|
9
9
|
export { default as LayerManagerMapButtonConnect } from './LayerManagerMapButtonConnect';
|
|
10
|
+
export { useFetchServices } from './useFetchServices';
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { TooltipProps } from '@mui/material';
|
|
3
|
-
import {
|
|
4
|
-
interface MapControlButtonProps extends
|
|
5
|
-
onClick: () => void;
|
|
3
|
+
import { CustomIconProps } from '@opengeoweb/shared';
|
|
4
|
+
interface MapControlButtonProps extends CustomIconProps {
|
|
6
5
|
isActive?: boolean;
|
|
7
6
|
placement?: TooltipProps['placement'];
|
|
8
7
|
children: React.ReactNode;
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { WMLayer, WMJSDimension } from '@opengeoweb/webmap';
|
|
2
2
|
import { UpdateLayerInfoPayload } from '../../store/mapStore/types';
|
|
3
|
-
import { MapViewProps } from '../MapView/types';
|
|
4
3
|
export declare const getCurrentDimensionValue: (dimensions: WMJSDimension[] | undefined, name: string) => string;
|
|
5
|
-
export declare const
|
|
4
|
+
export declare const setLayerInfo: (wmLayer: WMLayer, mapId: string, onUpdateLayerInformation?: ((payload: UpdateLayerInfoPayload) => void) | undefined) => void;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import React, { ReactNode } from 'react';
|
|
2
|
+
import { SxProps } from '@mui/material';
|
|
3
|
+
import { TimeSliderLiteCustomSettings } from './timeSliderLiteUtils';
|
|
4
|
+
export interface TimeSliderLiteProps {
|
|
5
|
+
controlButtons?: ReactNode;
|
|
6
|
+
endTime: number;
|
|
7
|
+
height?: number;
|
|
8
|
+
hideButton?: ReactNode;
|
|
9
|
+
isAnimating?: boolean;
|
|
10
|
+
isVisible?: boolean;
|
|
11
|
+
locale?: string;
|
|
12
|
+
mapId: string;
|
|
13
|
+
menuOpen?: boolean;
|
|
14
|
+
overrideAnimation?: boolean;
|
|
15
|
+
onToggleAnimation?: () => void;
|
|
16
|
+
onToggleMenu: () => void;
|
|
17
|
+
onToggleTimeSlider: () => void;
|
|
18
|
+
selectedTime: number;
|
|
19
|
+
setSelectedTime: (time: number) => void;
|
|
20
|
+
settings?: TimeSliderLiteCustomSettings;
|
|
21
|
+
backgroundHoursOffset?: number;
|
|
22
|
+
needleWidth?: number;
|
|
23
|
+
needleDragAreaWidth?: number;
|
|
24
|
+
needleLabelZIndex?: number;
|
|
25
|
+
needleLabelOffset?: [number, number];
|
|
26
|
+
draggableTimeStamp?: boolean;
|
|
27
|
+
startTime: number;
|
|
28
|
+
sx?: SxProps;
|
|
29
|
+
timeStep: number;
|
|
30
|
+
}
|
|
31
|
+
export declare const TIME_SLIDER_LITE_DEFAULT_HEIGHT = 40;
|
|
32
|
+
export declare const TIME_SLIDER_LITE_DEFAULT_LOCALE = "en";
|
|
33
|
+
export declare const TIME_SLIDER_LITE_DEFAULT_TIME_STEP = 5;
|
|
34
|
+
export declare const TIME_SLIDER_LITE_TOOLTIP_DELAY = 3000;
|
|
35
|
+
declare const TimeSliderLite: React.FC<TimeSliderLiteProps>;
|
|
36
|
+
export default TimeSliderLite;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
interface Props {
|
|
3
|
+
draggableLabel?: boolean;
|
|
4
|
+
width: number;
|
|
5
|
+
height: number;
|
|
6
|
+
locale: string;
|
|
7
|
+
startTime: number;
|
|
8
|
+
endTime: number;
|
|
9
|
+
needleDragAreaWidth?: number;
|
|
10
|
+
needleLabelZIndex?: number;
|
|
11
|
+
needleLabelOffset?: [number, number];
|
|
12
|
+
needleWidth?: number;
|
|
13
|
+
timeStep: number;
|
|
14
|
+
selectedTime: number;
|
|
15
|
+
style: React.CSSProperties;
|
|
16
|
+
setSelectedTime: (time: number) => void;
|
|
17
|
+
}
|
|
18
|
+
export declare const DRAG_AREA_WIDTH = 10;
|
|
19
|
+
declare const TimeSliderDraggableNeedle: React.FC<Props>;
|
|
20
|
+
export default TimeSliderDraggableNeedle;
|
package/lib/components/TimeSliderLite/TimeSliderLiteBackground/TimeSliderDraggableNeedle.spec.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
interface TimeSliderLiteBackgroundProps {
|
|
3
|
+
height: number;
|
|
4
|
+
draggableTimeStamp?: boolean;
|
|
5
|
+
startTime: number;
|
|
6
|
+
locale: string;
|
|
7
|
+
needleWidth?: number;
|
|
8
|
+
needleDragAreaWidth?: number;
|
|
9
|
+
needleLabelZIndex?: number;
|
|
10
|
+
needleLabelOffset?: [number, number];
|
|
11
|
+
endTime: number;
|
|
12
|
+
timeStep: number;
|
|
13
|
+
selectedTime: number;
|
|
14
|
+
setSelectedTime: (time: number) => void;
|
|
15
|
+
}
|
|
16
|
+
declare const TimeSliderLiteBackground: React.FC<TimeSliderLiteBackgroundProps>;
|
|
17
|
+
export default TimeSliderLiteBackground;
|
package/lib/components/TimeSliderLite/TimeSliderLiteBackground/TimeSliderLiteBackgroundSvg.d.ts
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
interface Props {
|
|
3
|
+
width: number;
|
|
4
|
+
height: number;
|
|
5
|
+
startTime: number;
|
|
6
|
+
endTime: number;
|
|
7
|
+
timeStep?: number;
|
|
8
|
+
style?: React.CSSProperties;
|
|
9
|
+
locale: string;
|
|
10
|
+
}
|
|
11
|
+
export declare const TIME_SLIDER_LITE_PADDING_RIGHT = 1;
|
|
12
|
+
declare const TimeSliderLiteBackgroundSvg: React.FC<Props>;
|
|
13
|
+
export default TimeSliderLiteBackgroundSvg;
|
package/lib/components/TimeSliderLite/TimeSliderLiteBackground/TimeSliderLiteBackgroundSvg.spec.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { ButtonGroupProps } from '@mui/material';
|
|
3
|
+
interface ControlButtonGroupProps extends ButtonGroupProps {
|
|
4
|
+
right?: boolean;
|
|
5
|
+
left?: boolean;
|
|
6
|
+
}
|
|
7
|
+
declare const ControlButtonGroup: React.FC<ControlButtonGroupProps>;
|
|
8
|
+
export default ControlButtonGroup;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { TimeSliderLiteCustomSettings } from '../../timeSliderLiteUtils';
|
|
3
|
+
export interface HideButtonProps {
|
|
4
|
+
isVisible?: boolean;
|
|
5
|
+
settings?: TimeSliderLiteCustomSettings['hideButton'];
|
|
6
|
+
onClick: () => void;
|
|
7
|
+
}
|
|
8
|
+
declare const HideButton: React.FC<HideButtonProps>;
|
|
9
|
+
export default HideButton;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { TimeSliderLiteCustomSettings } from '../../timeSliderLiteUtils';
|
|
3
|
+
interface Props {
|
|
4
|
+
menuOpen?: boolean;
|
|
5
|
+
onClick?: () => void;
|
|
6
|
+
settings?: TimeSliderLiteCustomSettings['menuButton'];
|
|
7
|
+
}
|
|
8
|
+
declare const MenuButton: React.FC<Props>;
|
|
9
|
+
export default MenuButton;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { TimeSliderLiteCustomSettings } from '../../timeSliderLiteUtils';
|
|
3
|
+
export interface PlayButtonProps {
|
|
4
|
+
isAnimating?: boolean;
|
|
5
|
+
isDisabled?: boolean;
|
|
6
|
+
onTogglePlayButton: () => void;
|
|
7
|
+
settings?: TimeSliderLiteCustomSettings['playButton'];
|
|
8
|
+
tooltipDelay?: number;
|
|
9
|
+
}
|
|
10
|
+
declare const PlayButton: React.FC<PlayButtonProps>;
|
|
11
|
+
export default PlayButton;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { TimeSliderLiteCustomSettings } from '../../timeSliderLiteUtils';
|
|
3
|
+
export interface StepButtonProps {
|
|
4
|
+
forward?: boolean;
|
|
5
|
+
isDisabled?: boolean;
|
|
6
|
+
onClick?: () => void;
|
|
7
|
+
settings?: TimeSliderLiteCustomSettings['stepButton'];
|
|
8
|
+
tooltipDelay?: number;
|
|
9
|
+
}
|
|
10
|
+
declare const StepButton: React.FC<StepButtonProps>;
|
|
11
|
+
export default StepButton;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { SxProps } from '@mui/material';
|
|
3
|
+
import { TimeSliderLiteProps } from './TimeSliderLite';
|
|
4
|
+
export declare const TIME_SLIDER_LITE_DEFAULT_TIME_RANGE: number;
|
|
5
|
+
export interface TimeSliderConnectLiteProps extends Partial<TimeSliderLiteProps> {
|
|
6
|
+
overrideUseTimeRange?: [
|
|
7
|
+
[
|
|
8
|
+
number,
|
|
9
|
+
number
|
|
10
|
+
] | null,
|
|
11
|
+
(timeRange: [number, number] | null) => void
|
|
12
|
+
];
|
|
13
|
+
sourceId: string;
|
|
14
|
+
mapId: string;
|
|
15
|
+
isAlwaysVisible?: boolean;
|
|
16
|
+
menuSx?: SxProps;
|
|
17
|
+
subMenuSx?: SxProps;
|
|
18
|
+
}
|
|
19
|
+
declare const TimeSliderLiteConnect: React.FC<TimeSliderConnectLiteProps>;
|
|
20
|
+
export default TimeSliderLiteConnect;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { CardProps } from '@mui/material';
|
|
2
|
+
import React from 'react';
|
|
3
|
+
interface SubmenuWrapperProps extends CardProps {
|
|
4
|
+
closeButtonIcon?: React.ReactNode;
|
|
5
|
+
setSubmenu?: (value: string | null) => void;
|
|
6
|
+
}
|
|
7
|
+
declare const SubmenuWrapper: React.FC<SubmenuWrapperProps>;
|
|
8
|
+
export default SubmenuWrapper;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { SelectProps, SxProps } from '@mui/material';
|
|
2
|
+
import React from 'react';
|
|
3
|
+
interface CustomSelectProps extends SelectProps {
|
|
4
|
+
amountOfOptions: number;
|
|
5
|
+
dropdownButtonIcon?: React.ElementType;
|
|
6
|
+
itemPostFix: string;
|
|
7
|
+
value: number;
|
|
8
|
+
setValue: (value: number) => void;
|
|
9
|
+
}
|
|
10
|
+
export declare const CustomSelect: React.FC<CustomSelectProps>;
|
|
11
|
+
interface DayHourSelectorProps {
|
|
12
|
+
isDisabled?: boolean;
|
|
13
|
+
dropdownButtonIcon?: React.ElementType;
|
|
14
|
+
label: string;
|
|
15
|
+
maxHours?: number;
|
|
16
|
+
sx?: SxProps;
|
|
17
|
+
useDays: [number, (value: number) => void];
|
|
18
|
+
useHours: [number, (value: number) => void];
|
|
19
|
+
}
|
|
20
|
+
declare const DayHourSelector: React.FC<DayHourSelectorProps>;
|
|
21
|
+
export default DayHourSelector;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
interface IProps {
|
|
3
|
+
currentTime: number;
|
|
4
|
+
useTimeRange?: [
|
|
5
|
+
[
|
|
6
|
+
number,
|
|
7
|
+
number
|
|
8
|
+
] | null,
|
|
9
|
+
(timeRange: [number, number] | null) => void
|
|
10
|
+
];
|
|
11
|
+
defaultTimeRange: [number, number];
|
|
12
|
+
dropdownButtonIcon?: React.ElementType;
|
|
13
|
+
}
|
|
14
|
+
declare const TimeRangeOptions: React.FC<IProps>;
|
|
15
|
+
export default TimeRangeOptions;
|
package/lib/components/TimeSliderLite/TimeSliderLiteOptionsMenu/TimeSliderLiteOptionsMenu.d.ts
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { SxProps } from '@mui/material';
|
|
2
|
+
import React from 'react';
|
|
3
|
+
interface TimeSliderLiteOptionsMenuProps {
|
|
4
|
+
closeButtonIcon?: React.ReactNode;
|
|
5
|
+
currentTime?: number;
|
|
6
|
+
defaultTimeRange: [number, number];
|
|
7
|
+
dropdownButtonIcon?: React.ElementType;
|
|
8
|
+
menuOpen?: boolean;
|
|
9
|
+
setMenuOpen?: (menuOpen: boolean) => void;
|
|
10
|
+
submenuSx?: SxProps;
|
|
11
|
+
sx?: SxProps;
|
|
12
|
+
useTimeRange?: [
|
|
13
|
+
[
|
|
14
|
+
number,
|
|
15
|
+
number
|
|
16
|
+
] | null,
|
|
17
|
+
(timeRange: [number, number] | null) => void
|
|
18
|
+
];
|
|
19
|
+
}
|
|
20
|
+
export declare enum Submenu {
|
|
21
|
+
TIME_RANGE = "Time range",
|
|
22
|
+
TIME_STEP = "Time step",
|
|
23
|
+
SPEED = "Speed",
|
|
24
|
+
UPDATE_INTERVAL = "Update interval"
|
|
25
|
+
}
|
|
26
|
+
declare const TimeSliderLiteOptionsMenu: React.FC<TimeSliderLiteOptionsMenuProps>;
|
|
27
|
+
export default TimeSliderLiteOptionsMenu;
|
package/lib/components/TimeSliderLite/TimeSliderLiteOptionsMenu/TimeSliderLiteOptionsMenu.spec.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { default as TimeSliderLiteOptionsMenu } from './TimeSliderLiteOptionsMenu/TimeSliderLiteOptionsMenu';
|
|
2
|
+
export { default as TimeSliderLiteConnect } from './TimeSliderLiteConnect';
|
|
3
|
+
export { default as TimeSliderLite } from './TimeSliderLite';
|
|
4
|
+
export * from './timeSliderLiteUtils';
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { ElementType, ReactNode } from 'react';
|
|
2
|
+
import { ReduxLayer } from '../../store/mapStore/types';
|
|
3
|
+
export declare const DAY_TO_MILLISECOND: number;
|
|
4
|
+
export declare const DAY_TO_SECOND = 86400;
|
|
5
|
+
export declare const HOUR_TO_SECOND = 3600;
|
|
6
|
+
export declare const MILLISECOND_TO_DAY: number;
|
|
7
|
+
export declare const MILLISECOND_TO_SECOND: number;
|
|
8
|
+
export declare const MINUTE_TO_SECOND = 60;
|
|
9
|
+
export declare const SECOND_TO_DAY: number;
|
|
10
|
+
export declare const SECOND_TO_HOUR: number;
|
|
11
|
+
export declare const SECOND_TO_MILLISECOND = 1000;
|
|
12
|
+
export declare const SEVEN_DAYS_IN_SECONDS: number;
|
|
13
|
+
/**
|
|
14
|
+
* Reformats a date that has capitalized first letter and colon separator for time
|
|
15
|
+
* @param dateString Date string from Date.toLocaleDateString
|
|
16
|
+
* @returns Reformatted date string
|
|
17
|
+
*/
|
|
18
|
+
export declare const reformatFinnishDateString: (dateString: string) => string;
|
|
19
|
+
export declare const getMonthChanges: (startDate: Date, endDate: Date) => number[];
|
|
20
|
+
export declare const getSelectedTimePx: (startTime: number, endTime: number, selectedTime: number, width: number) => number;
|
|
21
|
+
export declare const boundedValue: (value: number, bounds: [number, number]) => number;
|
|
22
|
+
export declare const getSelectedTimeFromPx: (startTime: number, endTime: number, selectedTimePx: number, width: number) => number;
|
|
23
|
+
export declare const secondsToDaysAndHours: (seconds: number) => {
|
|
24
|
+
days: number;
|
|
25
|
+
hours: number;
|
|
26
|
+
};
|
|
27
|
+
export declare const hoursAndDaysToSeconds: (hours: number, days: number) => number;
|
|
28
|
+
export declare const TIME_SLIDER_LITE_DEFAULT_MAX_FORECAST_RANGE: number;
|
|
29
|
+
export declare const TIME_SLIDER_LITE_DEFAULT_MAX_OBSERVED_RANGE: number;
|
|
30
|
+
/**
|
|
31
|
+
* Checks which layers have observed/forecasted data and returns a default time range
|
|
32
|
+
* @param layers ReduxLayer[] Map layers
|
|
33
|
+
* @param currentTime Current time in seconds
|
|
34
|
+
* @param overrideDefaultTimeRange [observedTimeRange, forecastTime] in seconds from current time
|
|
35
|
+
* @returns [startTime, endTime] in seconds
|
|
36
|
+
*/
|
|
37
|
+
export declare const defaultTimeRange: (layers: ReduxLayer[], currentTime?: number, overrideDefaultTimeRange?: [number, number] | undefined) => [number, number];
|
|
38
|
+
export declare const useDefaultTimeRange: (layers: ReduxLayer[], updateThreshold: number, currentTime?: number) => [number, number];
|
|
39
|
+
export declare const subTicksPerDay: (dayWidthInPixels: number) => number;
|
|
40
|
+
export declare const maxSubTicksPerDay: (dayWidthInPixels: number, timeStep: number) => number;
|
|
41
|
+
export declare const getRemainingHours: (maxHours: number | undefined, days: number) => number;
|
|
42
|
+
export interface TimeSliderLiteCustomSettings {
|
|
43
|
+
menuButton?: {
|
|
44
|
+
label?: string;
|
|
45
|
+
icon?: ReactNode;
|
|
46
|
+
};
|
|
47
|
+
playButton?: {
|
|
48
|
+
label?: {
|
|
49
|
+
play?: string;
|
|
50
|
+
pause?: string;
|
|
51
|
+
};
|
|
52
|
+
icon?: {
|
|
53
|
+
play?: ReactNode;
|
|
54
|
+
pause?: ReactNode;
|
|
55
|
+
};
|
|
56
|
+
};
|
|
57
|
+
stepButton?: {
|
|
58
|
+
label?: {
|
|
59
|
+
forward?: string;
|
|
60
|
+
backward?: string;
|
|
61
|
+
};
|
|
62
|
+
icon?: {
|
|
63
|
+
forward?: ReactNode;
|
|
64
|
+
backward?: ReactNode;
|
|
65
|
+
};
|
|
66
|
+
};
|
|
67
|
+
hideButton?: {
|
|
68
|
+
label?: {
|
|
69
|
+
hide?: string;
|
|
70
|
+
show?: string;
|
|
71
|
+
};
|
|
72
|
+
icon?: {
|
|
73
|
+
hide?: ReactNode;
|
|
74
|
+
show?: ReactNode;
|
|
75
|
+
};
|
|
76
|
+
};
|
|
77
|
+
closeButton?: {
|
|
78
|
+
icon?: ReactNode;
|
|
79
|
+
};
|
|
80
|
+
dropdownButton?: {
|
|
81
|
+
icon?: ElementType;
|
|
82
|
+
};
|
|
83
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/lib/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { mapSelectors, uiActions, uiSelectors, layerActions, genericActions, snackbarActions, routerActions, appActions, layerSelectors, genericSelectors, syncGroupsSelectors } from './store';
|
|
1
|
+
import { mapSelectors, webmapReducer, uiActions, uiSelectors, uiReducer, layerActions, genericActions, snackbarActions, routerActions, appActions, layerSelectors, serviceSelectors, genericSelectors, syncGroupsSelectors } from './store';
|
|
2
2
|
import * as mapTypes from './store/mapStore/types';
|
|
3
3
|
import * as layerTypes from './store/mapStore/layers/types';
|
|
4
4
|
import * as mapUtils from './store/mapStore/map/utils';
|
|
@@ -7,7 +7,7 @@ import { reducer as layerReducer } from './store/mapStore/layers/reducer';
|
|
|
7
7
|
import synchronizationGroupConfig from './store/generic/config';
|
|
8
8
|
import * as SyncGroups from './store/generic/synchronizationGroups';
|
|
9
9
|
import coreModuleConfig from './store/coreModuleConfig';
|
|
10
|
-
import { LayerManagerConnect, LayerManagerHeaderOptions, LayerManagerDescriptionRow, LayerManagerLayerContainerRow, LayerManagerBaseLayerRow, LayerSelectConnect, LayerManagerMapButtonConnect, DockedLayerManagerConnect, LayerManager } from './components/LayerManager';
|
|
10
|
+
import { LayerManagerConnect, LayerManagerHeaderOptions, LayerManagerDescriptionRow, LayerManagerLayerContainerRow, LayerManagerBaseLayerRow, LayerSelectConnect, LayerManagerMapButtonConnect, DockedLayerManagerConnect, LayerManager, useFetchServices } from './components/LayerManager';
|
|
11
11
|
import { MultiDimensionSelectMapButtonsConnect, MultiMapDimensionSelectConnect } from './components/MultiMapDimensionSelect';
|
|
12
12
|
export * from './hooks';
|
|
13
13
|
export * from './components/MultiMapView/MultiMapViewConnect';
|
|
@@ -17,6 +17,7 @@ export { ReactMapView, ReactMapViewLayer } from './components/ReactMapView';
|
|
|
17
17
|
export { LegendConnect, Legend, LegendMapButtonConnect, } from './components/Legend';
|
|
18
18
|
export { ZoomControls, ZoomControlConnect } from './components/MapControls';
|
|
19
19
|
export { TimeSlider, TimeSliderConnect, TimeSliderButtonsConnect, TimeSliderOptionsMenuButtonConnect, TimeSliderPlayButtonConnect, TimeSliderBackwardForwardStepButtonConnect, timeSliderUtils, } from './components/TimeSlider';
|
|
20
|
+
export { TimeSliderLite } from './components/TimeSliderLite';
|
|
20
21
|
export { MapControls } from './components/MapControls';
|
|
21
22
|
export declare const mapActions: {
|
|
22
23
|
serviceSetLayers: import("@reduxjs/toolkit").ActionCreatorWithPayload<mapTypes.SetLayersForServicePayload, string>;
|
|
@@ -83,7 +84,7 @@ export declare const mapActions: {
|
|
|
83
84
|
onUpdateLayerInformation: import("@reduxjs/toolkit").ActionCreatorWithPayload<mapTypes.UpdateLayerInfoPayload, string>;
|
|
84
85
|
setSelectedFeature: import("@reduxjs/toolkit").ActionCreatorWithPayload<mapTypes.SetSelectedFeaturePayload, string>;
|
|
85
86
|
};
|
|
86
|
-
export { mapSelectors, mapTypes, mapUtils, layerTypes, layerReducer, layerActions, uiActions, uiSelectors, uiTypes, genericActions as syncGroupActions, snackbarActions, appActions, layerSelectors, routerActions, genericSelectors, syncGroupsSelectors, };
|
|
87
|
+
export { mapSelectors, webmapReducer, mapTypes, mapUtils, layerTypes, layerReducer, layerActions, uiActions, uiSelectors, uiReducer, uiTypes, genericActions as syncGroupActions, snackbarActions, appActions, layerSelectors, serviceSelectors, routerActions, genericSelectors, syncGroupsSelectors, };
|
|
87
88
|
export { synchronizationGroupConfig as synchronizationGroupModuleConfig };
|
|
88
89
|
export * from './components/ComponentsLookUp';
|
|
89
90
|
export * from './components/ConfigurableMap';
|
|
@@ -93,7 +94,7 @@ export { SyncGroups };
|
|
|
93
94
|
export { store } from './storybookUtils/store';
|
|
94
95
|
export * from './types/types';
|
|
95
96
|
export { coreModuleConfig };
|
|
96
|
-
export { LayerManagerConnect, LayerManagerHeaderOptions, LayerManagerDescriptionRow, LayerManagerBaseLayerRow, LayerManagerLayerContainerRow, LayerSelectConnect, LayerManagerMapButtonConnect, DockedLayerManagerConnect, LayerManager, };
|
|
97
|
+
export { LayerManagerConnect, LayerManagerHeaderOptions, LayerManagerDescriptionRow, LayerManagerBaseLayerRow, LayerManagerLayerContainerRow, LayerSelectConnect, LayerManagerMapButtonConnect, DockedLayerManagerConnect, LayerManager, useFetchServices, };
|
|
97
98
|
export { MultiDimensionSelectMapButtonsConnect, MultiMapDimensionSelectConnect, };
|
|
98
99
|
export * as publicLayers from './utils/publicLayers';
|
|
99
100
|
export * as publicServices from './utils/publicServices';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { AppStore } from '../../../types/types';
|
|
2
2
|
import { GenericSyncActionPayload } from '../synchronizationActions/types';
|
|
3
3
|
import { GenericActionPayload } from '../types';
|
|
4
|
-
import { SynchronizationGroup, SynchronizationGroupState, SynchronizationSource, SyncType } from './types';
|
|
4
|
+
import { SyncGroupTarget, SynchronizationGroup, SynchronizationGroupState, SynchronizationSource, SyncType } from './types';
|
|
5
5
|
export declare const syncGroupStore: (store: AppStore) => SynchronizationGroupState;
|
|
6
6
|
/**
|
|
7
7
|
* Gets synchronization group state
|
|
@@ -51,3 +51,4 @@ export declare const getSyncedMapIdsForTimeslider: ((state: {
|
|
|
51
51
|
}> & {
|
|
52
52
|
clearCache: () => void;
|
|
53
53
|
};
|
|
54
|
+
export declare const getSyncGroupTargets: (state: AppStore) => SyncGroupTarget[];
|
|
@@ -43,10 +43,12 @@ export interface SyncGroupsAddSourcePayload {
|
|
|
43
43
|
export interface SyncGroupRemoveSourcePayload {
|
|
44
44
|
id: string;
|
|
45
45
|
}
|
|
46
|
-
export interface
|
|
46
|
+
export interface SyncGroupTarget {
|
|
47
47
|
groupId: string;
|
|
48
48
|
targetId: string;
|
|
49
49
|
linked?: boolean;
|
|
50
|
+
}
|
|
51
|
+
export interface SyncGroupAddTargetPayload extends SyncGroupTarget {
|
|
50
52
|
origin?: Origin;
|
|
51
53
|
}
|
|
52
54
|
export interface SyncGroupRemoveTargetPayload {
|
|
@@ -54,10 +56,8 @@ export interface SyncGroupRemoveTargetPayload {
|
|
|
54
56
|
targetId: string;
|
|
55
57
|
origin?: Origin;
|
|
56
58
|
}
|
|
57
|
-
export interface SyncGroupLinkTargetPayload {
|
|
59
|
+
export interface SyncGroupLinkTargetPayload extends SyncGroupTarget {
|
|
58
60
|
linked: boolean;
|
|
59
|
-
groupId: string;
|
|
60
|
-
targetId: string;
|
|
61
61
|
}
|
|
62
62
|
export interface SyncGroupAddGroupPayload {
|
|
63
63
|
groupId: string;
|