@opengeoweb/shared 19.1.0 → 19.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/README.md +27 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.esm.js +6490 -0
- package/dist/src/index.d.ts +7 -0
- package/dist/src/lib/components/AlertBanner/AlertBanner.d.ts +16 -0
- package/dist/src/lib/components/AlertBanner/index.d.ts +1 -0
- package/dist/src/lib/components/AlertIcon/AlertIcon.d.ts +8 -0
- package/dist/src/lib/components/AlertIcon/index.d.ts +1 -0
- package/dist/src/lib/components/AppHeader/AppHeader.d.ts +10 -0
- package/dist/src/lib/components/AppHeader/index.d.ts +1 -0
- package/dist/src/lib/components/AppLayout/AppLayout.d.ts +7 -0
- package/dist/src/lib/components/AppLayout/index.d.ts +1 -0
- package/dist/src/lib/components/Avatar/Avatar.d.ts +8 -0
- package/dist/src/lib/components/Avatar/index.d.ts +1 -0
- package/dist/src/lib/components/CanvasComponent/CanvasComponent.d.ts +71 -0
- package/dist/src/lib/components/CanvasComponent/index.d.ts +1 -0
- package/dist/src/lib/components/ConfirmationDialog/ConfirmationButtons.d.ts +12 -0
- package/dist/src/lib/components/ConfirmationDialog/ConfirmationDialog.d.ts +22 -0
- package/dist/src/lib/components/ConfirmationDialog/ConfirmationService.d.ts +18 -0
- package/dist/src/lib/components/ConfirmationDialog/index.d.ts +3 -0
- package/dist/src/lib/components/CustomAccordion/CustomAccordion.d.ts +13 -0
- package/dist/src/lib/components/CustomAccordion/index.d.ts +1 -0
- package/dist/src/lib/components/CustomDialog/CustomDialog.d.ts +18 -0
- package/dist/src/lib/components/CustomDialog/CustomDialogHeader.d.ts +13 -0
- package/dist/src/lib/components/CustomDialog/index.d.ts +2 -0
- package/dist/src/lib/components/CustomDialog/types.d.ts +1 -0
- package/dist/src/lib/components/CustomIconButton/CustomIconButton.d.ts +15 -0
- package/dist/src/lib/components/CustomIconButton/index.d.ts +1 -0
- package/dist/src/lib/components/CustomSlider/CustomSlider.d.ts +14 -0
- package/dist/src/lib/components/CustomSlider/index.d.ts +1 -0
- package/dist/src/lib/components/CustomToggleButton/CustomToggleButton.d.ts +8 -0
- package/dist/src/lib/components/CustomToggleButton/index.d.ts +1 -0
- package/dist/src/lib/components/CustomTooltip/CustomTooltip.d.ts +5 -0
- package/dist/src/lib/components/CustomTooltip/index.d.ts +1 -0
- package/dist/src/lib/components/DraggableResizable/Draggable.d.ts +16 -0
- package/dist/src/lib/components/DraggableResizable/Resizable.d.ts +10 -0
- package/dist/src/lib/components/DraggableResizable/index.d.ts +3 -0
- package/dist/src/lib/components/DraggableResizable/types.d.ts +27 -0
- package/dist/src/lib/components/ErrorBoundary/ErrorBoundary.d.ts +31 -0
- package/dist/src/lib/components/ErrorBoundary/index.d.ts +1 -0
- package/dist/src/lib/components/Filter/Filter.d.ts +18 -0
- package/dist/src/lib/components/Filter/FilterChip.d.ts +14 -0
- package/dist/src/lib/components/Filter/FilterList.d.ts +19 -0
- package/dist/src/lib/components/Filter/FilterOption.d.ts +12 -0
- package/dist/src/lib/components/Filter/FilterToggleButton.d.ts +6 -0
- package/dist/src/lib/components/Filter/SearchField.d.ts +8 -0
- package/dist/src/lib/components/Filter/index.d.ts +7 -0
- package/dist/src/lib/components/LastUpdateTime/LastUpdateTime.d.ts +14 -0
- package/dist/src/lib/components/LastUpdateTime/index.d.ts +1 -0
- package/dist/src/lib/components/Providers/Providers.d.ts +18 -0
- package/dist/src/lib/components/Providers/index.d.ts +1 -0
- package/dist/src/lib/components/SearchField/SearchField.d.ts +10 -0
- package/dist/src/lib/components/SearchField/SearchFieldButtonContainer.d.ts +9 -0
- package/dist/src/lib/components/SearchField/index.d.ts +2 -0
- package/dist/src/lib/components/SearchHighlight/SearchHighlight.d.ts +7 -0
- package/dist/src/lib/components/SearchHighlight/index.d.ts +1 -0
- package/dist/src/lib/components/StatusTag/StatusTag.d.ts +17 -0
- package/dist/src/lib/components/StatusTag/index.d.ts +1 -0
- package/dist/src/lib/components/Storybook/StorybookDocsWrapper.d.ts +6 -0
- package/dist/src/lib/components/Storybook/index.d.ts +1 -0
- package/dist/src/lib/components/SwitchButton/SwitchButton.d.ts +8 -0
- package/dist/src/lib/components/SwitchButton/index.d.ts +1 -0
- package/dist/src/lib/components/ToggleMenu/ToggleMenu.d.ts +32 -0
- package/dist/src/lib/components/ToggleMenu/index.d.ts +1 -0
- package/dist/src/lib/components/ToolContainer/ToolContainer.d.ts +5 -0
- package/dist/src/lib/components/ToolContainer/ToolContainerDraggable.d.ts +40 -0
- package/dist/src/lib/components/ToolContainer/ToolFooter.d.ts +3 -0
- package/dist/src/lib/components/ToolContainer/ToolHeader.d.ts +4 -0
- package/dist/src/lib/components/ToolContainer/index.d.ts +7 -0
- package/dist/src/lib/components/ToolContainer/types.d.ts +19 -0
- package/dist/src/lib/components/ToolContainer/useHandleSizeFromOutsideComponent.d.ts +16 -0
- package/dist/src/lib/components/TooltipSelect/TooltipSelect.d.ts +23 -0
- package/dist/src/lib/components/TooltipSelect/index.d.ts +1 -0
- package/dist/src/lib/components/UserMenu/CheatSheet/CheatSheet.d.ts +3 -0
- package/dist/src/lib/components/UserMenu/CheatSheet/ShortcutList.d.ts +6 -0
- package/dist/src/lib/components/UserMenu/CheatSheet/ShortcutSegment.d.ts +7 -0
- package/dist/src/lib/components/UserMenu/UserMenu.d.ts +11 -0
- package/dist/src/lib/components/UserMenu/UserMenuItemCheatSheet.d.ts +3 -0
- package/dist/src/lib/components/UserMenu/UserMenuItemTheme.d.ts +6 -0
- package/dist/src/lib/components/UserMenu/index.d.ts +5 -0
- package/dist/src/lib/components/UserMenu/useUserMenu.d.ts +7 -0
- package/dist/src/lib/components/UserMenu/utils.d.ts +1 -0
- package/dist/src/lib/components/index.d.ts +26 -0
- package/dist/src/lib/hooks/index.d.ts +9 -0
- package/dist/src/lib/hooks/useDebounce/useDebounce.d.ts +1 -0
- package/dist/src/lib/hooks/useIsMounted/useIsMounted.d.ts +4 -0
- package/dist/src/lib/hooks/useMakeSureContainerStaysInsideWindow/useMakeSureContainerStaysInsideWindow.d.ts +4 -0
- package/dist/src/lib/hooks/usePoller/usePoller.d.ts +3 -0
- package/dist/src/lib/hooks/usePreventBrowserClose/usePreventBrowserClose.d.ts +2 -0
- package/dist/src/lib/hooks/usePrevious/usePrevious.d.ts +1 -0
- package/dist/src/lib/hooks/useResizeObserver/useResizeObserver.d.ts +2 -0
- package/dist/src/lib/hooks/useScrollingInIsolation/useScrollingInIsolation.d.ts +11 -0
- package/dist/src/lib/hooks/useWheelStopPropagation/useWheelStopPropagation.d.ts +2 -0
- package/dist/src/lib/types/crss-types.d.ts +26 -0
- package/dist/src/lib/types/edr-coverage-types.d.ts +98 -0
- package/dist/src/lib/types/index.d.ts +2 -0
- package/dist/src/lib/types/types.d.ts +204 -0
- package/dist/src/lib/utils/axiosErrorUtils/axiosErrorUtils.d.ts +9 -0
- package/dist/src/lib/utils/axiosErrorUtils/index.d.ts +1 -0
- package/dist/src/lib/utils/dateUtils/dateFormats.d.ts +8 -0
- package/dist/src/lib/utils/dateUtils/dateUtils.d.ts +372 -0
- package/dist/src/lib/utils/dateUtils/index.d.ts +2 -0
- package/dist/src/lib/utils/i18n.d.ts +14 -0
- package/dist/src/lib/utils/index.d.ts +7 -0
- package/dist/src/lib/utils/mapProjections.d.ts +71 -0
- package/dist/src/lib/utils/referenceTimeUtils/index.d.ts +1 -0
- package/dist/src/lib/utils/referenceTimeUtils/referenceTimeUtils.d.ts +20 -0
- package/dist/src/lib/utils/renderCounter.d.ts +21 -0
- package/dist/src/lib/utils/sessionStorage.d.ts +28 -0
- package/package.json +2 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './StorybookDocsWrapper';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default as SwitchButton } from './SwitchButton';
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { PopoverOrigin, SxProps, Theme } from '@mui/material';
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import type { Variant } from '../CustomIconButton';
|
|
4
|
+
type MenuPosition = 'left' | 'right' | 'bottom';
|
|
5
|
+
export declare const getPosition: (menuPosition: MenuPosition) => {
|
|
6
|
+
anchorOrigin: PopoverOrigin;
|
|
7
|
+
transformOrigin: PopoverOrigin;
|
|
8
|
+
};
|
|
9
|
+
export interface MenuItemType {
|
|
10
|
+
text: string;
|
|
11
|
+
action: (event: React.MouseEvent) => void;
|
|
12
|
+
icon?: React.ReactNode;
|
|
13
|
+
isDisabled?: boolean;
|
|
14
|
+
isSelected?: boolean;
|
|
15
|
+
}
|
|
16
|
+
interface ToggleMenuProps {
|
|
17
|
+
buttonTestId?: string;
|
|
18
|
+
menuPosition?: MenuPosition;
|
|
19
|
+
menuItems?: MenuItemType[];
|
|
20
|
+
menuTitle?: string;
|
|
21
|
+
secondaryMenuItems?: MenuItemType[];
|
|
22
|
+
secondaryMenuTitle?: string;
|
|
23
|
+
children?: React.ReactNode;
|
|
24
|
+
buttonSx?: SxProps<Theme>;
|
|
25
|
+
tooltipTitle?: string;
|
|
26
|
+
variant?: Variant;
|
|
27
|
+
isDefaultOpen?: boolean;
|
|
28
|
+
buttonIcon?: React.ReactNode;
|
|
29
|
+
isDisabled?: boolean;
|
|
30
|
+
}
|
|
31
|
+
export declare const ToggleMenu: React.FC<ToggleMenuProps>;
|
|
32
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './ToggleMenu';
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import type { SxProps } from '@mui/material';
|
|
2
|
+
import type { NumberSize } from 're-resizable';
|
|
3
|
+
import React from 'react';
|
|
4
|
+
import type { HeaderSize } from './types';
|
|
5
|
+
import type { DraggablePosition, DraggableSize, Position, ResizableComponentProps, Size } from '../DraggableResizable/types';
|
|
6
|
+
export declare const calculateDialogSizeAndPosition: () => {
|
|
7
|
+
width: number;
|
|
8
|
+
height: number;
|
|
9
|
+
top: number;
|
|
10
|
+
left: number;
|
|
11
|
+
};
|
|
12
|
+
export declare const calculateStartSize: (minSize: DraggableSize, prefSize: DraggableSize, startPosition: Position) => DraggableSize;
|
|
13
|
+
interface DraggableComponentProps extends Omit<ResizableComponentProps, 'bounds'> {
|
|
14
|
+
startPosition?: Position;
|
|
15
|
+
startDraggablePosition?: DraggablePosition;
|
|
16
|
+
onStartResize?: () => void;
|
|
17
|
+
isOpen?: boolean;
|
|
18
|
+
onClose?: () => void;
|
|
19
|
+
title?: string;
|
|
20
|
+
headerSize?: HeaderSize;
|
|
21
|
+
initialMaxHeight?: string | number;
|
|
22
|
+
fixTopPosition?: boolean;
|
|
23
|
+
onChangeSize?: (size: Size) => void;
|
|
24
|
+
onDragEnd?: (position: DraggablePosition, size: Size) => void;
|
|
25
|
+
onMouseDown?: (event: MouseEvent) => void;
|
|
26
|
+
bounds?: 'parent' | string;
|
|
27
|
+
cancel?: string;
|
|
28
|
+
order?: number;
|
|
29
|
+
source?: Source;
|
|
30
|
+
leftHeaderComponent?: React.ReactNode;
|
|
31
|
+
rightHeaderComponent?: React.ReactNode;
|
|
32
|
+
dragHandleIcon?: React.ReactNode;
|
|
33
|
+
closeIcon?: React.ReactNode;
|
|
34
|
+
sx?: SxProps;
|
|
35
|
+
resetPositionOnOpen?: boolean;
|
|
36
|
+
}
|
|
37
|
+
export declare const calculateNewPosition: (position: DraggablePosition, isRightAligned: boolean, handle: string, delta: NumberSize) => DraggablePosition;
|
|
38
|
+
export type Source = 'app' | 'module';
|
|
39
|
+
declare const DraggableComponent: React.FC<DraggableComponentProps>;
|
|
40
|
+
export default DraggableComponent;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { default as ToolContainer } from './ToolContainer';
|
|
2
|
+
export { default as ToolContainerDraggable } from './ToolContainerDraggable';
|
|
3
|
+
export type { Source } from './ToolContainerDraggable';
|
|
4
|
+
export { calculateDialogSizeAndPosition, calculateStartSize, } from './ToolContainerDraggable';
|
|
5
|
+
export { default as ToolHeader } from './ToolHeader';
|
|
6
|
+
export { default as ToolFooter } from './ToolFooter';
|
|
7
|
+
export type * from './types';
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { PaperProps } from '@mui/material';
|
|
2
|
+
export type HeaderSize = 'xxs' | 'xs' | 'small' | 'medium' | 'large';
|
|
3
|
+
export interface ToolHeaderProps {
|
|
4
|
+
title?: string;
|
|
5
|
+
size?: HeaderSize;
|
|
6
|
+
onClose?: () => void;
|
|
7
|
+
className?: string;
|
|
8
|
+
isDraggable?: boolean;
|
|
9
|
+
leftHeaderComponent?: React.ReactNode;
|
|
10
|
+
rightHeaderComponent?: React.ReactNode;
|
|
11
|
+
dragHandleIcon?: React.ReactNode;
|
|
12
|
+
closeIcon?: React.ReactNode;
|
|
13
|
+
}
|
|
14
|
+
export interface ToolContainerProps extends PaperProps, ToolHeaderProps {
|
|
15
|
+
isResizable?: boolean;
|
|
16
|
+
children?: React.ReactNode;
|
|
17
|
+
maxHeight?: string | number;
|
|
18
|
+
headerClassName?: string;
|
|
19
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { DraggablePosition, Position, Size } from '../DraggableResizable/types';
|
|
3
|
+
export declare const getNewPositionSize: (element: Element, boundsNode: Element, isRightAligned: boolean, position: DraggablePosition, fixTopPosition: boolean, newSize?: Size) => {
|
|
4
|
+
position: Position;
|
|
5
|
+
size: Size;
|
|
6
|
+
};
|
|
7
|
+
export declare const useHandleSizeFromOutsideComponent: ({ nodeRef, bounds, position, isRightAligned, isOpen, startSize, onChangeSize, fixTopPosition, }: {
|
|
8
|
+
nodeRef: React.RefObject<HTMLDivElement | null>;
|
|
9
|
+
position: DraggablePosition;
|
|
10
|
+
bounds: string;
|
|
11
|
+
isRightAligned: boolean;
|
|
12
|
+
isOpen: boolean;
|
|
13
|
+
startSize: Size;
|
|
14
|
+
onChangeSize: (size: Size) => void;
|
|
15
|
+
fixTopPosition?: boolean;
|
|
16
|
+
}) => void;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { BaseSelectProps, SelectVariants, SxProps, Theme } from '@mui/material';
|
|
2
|
+
import React from 'react';
|
|
3
|
+
interface ListElement {
|
|
4
|
+
value: string;
|
|
5
|
+
}
|
|
6
|
+
type TooltipSelectProps = Omit<BaseSelectProps, 'sx'> & {
|
|
7
|
+
tooltip: string;
|
|
8
|
+
list?: ListElement[];
|
|
9
|
+
currentIndex?: number;
|
|
10
|
+
onChangeMouseWheel?: (element: ListElement) => void;
|
|
11
|
+
isEnabled?: boolean;
|
|
12
|
+
hasBackgroundColor?: boolean;
|
|
13
|
+
variant?: SelectVariants;
|
|
14
|
+
additionalStyling?: SxProps;
|
|
15
|
+
skipLocalStyling?: boolean;
|
|
16
|
+
};
|
|
17
|
+
export declare const TooltipSelect: React.FC<TooltipSelectProps>;
|
|
18
|
+
interface StyledSelectProps extends Omit<TooltipSelectProps, 'tooltip' | 'skipLocalStyling'> {
|
|
19
|
+
skipLocalStyling: boolean;
|
|
20
|
+
}
|
|
21
|
+
export declare const StyledSelect: import("@emotion/styled").StyledComponent<Omit<StyledSelectProps, "ref"> & React.RefAttributes<unknown> & import("@mui/system").MUIStyledCommonProps<Theme>, {}, {}>;
|
|
22
|
+
export declare const tooltipContainerStyles: (theme: Theme, isEnabled: boolean, hasBackgroundColor?: boolean) => object;
|
|
23
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './TooltipSelect';
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
interface UserMenuProps {
|
|
3
|
+
isOpen?: boolean;
|
|
4
|
+
onToggle?: () => void;
|
|
5
|
+
onClose?: () => void;
|
|
6
|
+
children?: React.ReactNode;
|
|
7
|
+
initials?: string;
|
|
8
|
+
isAdmin?: boolean;
|
|
9
|
+
}
|
|
10
|
+
declare const UserMenu: React.FC<UserMenuProps>;
|
|
11
|
+
export default UserMenu;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export { default as UserMenu } from './UserMenu';
|
|
2
|
+
export { default as UserMenuItemTheme } from './UserMenuItemTheme';
|
|
3
|
+
export { default as UserMenuItemCheatSheet } from './UserMenuItemCheatSheet';
|
|
4
|
+
export { useUserMenu } from './useUserMenu';
|
|
5
|
+
export { getInitials } from './utils';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const getInitials: (name: string) => string;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
export * from './StatusTag';
|
|
2
|
+
export * from './ConfirmationDialog';
|
|
3
|
+
export * from './AlertBanner';
|
|
4
|
+
export * from './AppLayout';
|
|
5
|
+
export * from './AppHeader';
|
|
6
|
+
export * from './DraggableResizable';
|
|
7
|
+
export * from './ErrorBoundary';
|
|
8
|
+
export * from './UserMenu';
|
|
9
|
+
export * from './ToolContainer';
|
|
10
|
+
export * from './CustomSlider';
|
|
11
|
+
export * from './CustomToggleButton';
|
|
12
|
+
export * from './ToggleMenu';
|
|
13
|
+
export * from './AlertIcon';
|
|
14
|
+
export * from './TooltipSelect';
|
|
15
|
+
export * from './Avatar';
|
|
16
|
+
export * from './CustomTooltip';
|
|
17
|
+
export * from './CustomAccordion';
|
|
18
|
+
export * from './CustomDialog';
|
|
19
|
+
export * from './CustomIconButton';
|
|
20
|
+
export * from './SearchHighlight';
|
|
21
|
+
export * from './SwitchButton';
|
|
22
|
+
export * from './SearchField';
|
|
23
|
+
export * from './LastUpdateTime';
|
|
24
|
+
export * from './CanvasComponent';
|
|
25
|
+
export * from './Filter';
|
|
26
|
+
export * from './Storybook';
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export * from './usePreventBrowserClose/usePreventBrowserClose';
|
|
2
|
+
export * from './usePoller/usePoller';
|
|
3
|
+
export * from './usePrevious/usePrevious';
|
|
4
|
+
export * from './useIsMounted/useIsMounted';
|
|
5
|
+
export * from './useMakeSureContainerStaysInsideWindow/useMakeSureContainerStaysInsideWindow';
|
|
6
|
+
export * from './useDebounce/useDebounce';
|
|
7
|
+
export * from './useWheelStopPropagation/useWheelStopPropagation';
|
|
8
|
+
export * from './useScrollingInIsolation/useScrollingInIsolation';
|
|
9
|
+
export * from './useResizeObserver/useResizeObserver';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const useDebounce: <S>(value: S, timeout: number) => S;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { DraggablePosition } from '../../components/DraggableResizable/types';
|
|
3
|
+
export declare const adjustPosition: (bbox: DOMRect, containingView: DOMRect, position: DraggablePosition, setPosition: (position: DraggablePosition) => void) => void;
|
|
4
|
+
export declare const useMakeSureContainerStaysInsideWindow: (nodeRef: React.RefObject<HTMLDivElement | null>, position: DraggablePosition, setPosition: (position: DraggablePosition) => void) => void;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function usePrevious<T>(value: T): T;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This hook allows to stop wheel events from propagating to parent elements.
|
|
3
|
+
* Normally, when you scroll a child element, the scroll event will propagate to the parent element,
|
|
4
|
+
* as calling event.stopPropagation() on syncthetic events does not stop the propagation
|
|
5
|
+
*/
|
|
6
|
+
import React from 'react';
|
|
7
|
+
interface ScrollInIsolationProps {
|
|
8
|
+
onWheel?: (event: WheelEvent) => void;
|
|
9
|
+
}
|
|
10
|
+
export declare const useScrollingInIsolation: <T extends HTMLElement>(options?: ScrollInIsolationProps) => React.RefObject<T | null>;
|
|
11
|
+
export {};
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
export interface Referencing {
|
|
2
|
+
coordinates: string[];
|
|
3
|
+
system: CRSSystem;
|
|
4
|
+
}
|
|
5
|
+
interface GeographicCRS {
|
|
6
|
+
type: 'GeographicCRS';
|
|
7
|
+
id: string;
|
|
8
|
+
}
|
|
9
|
+
interface ProjectedCRS {
|
|
10
|
+
type: 'ProjectedCRS';
|
|
11
|
+
id: string;
|
|
12
|
+
}
|
|
13
|
+
interface VerticalCRS {
|
|
14
|
+
type: 'VerticalCRS';
|
|
15
|
+
id: string;
|
|
16
|
+
}
|
|
17
|
+
interface EngineeringCRS {
|
|
18
|
+
type: 'EngineeringCRS';
|
|
19
|
+
id?: string;
|
|
20
|
+
}
|
|
21
|
+
interface TemporalRS {
|
|
22
|
+
type: 'TemporalRS';
|
|
23
|
+
calendar: string;
|
|
24
|
+
}
|
|
25
|
+
type CRSSystem = GeographicCRS | ProjectedCRS | VerticalCRS | EngineeringCRS | TemporalRS;
|
|
26
|
+
export {};
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import type { Referencing } from './crss-types';
|
|
2
|
+
interface AxisValues {
|
|
3
|
+
values: number[] | string[];
|
|
4
|
+
}
|
|
5
|
+
interface SingleValueAxis {
|
|
6
|
+
values: [number];
|
|
7
|
+
}
|
|
8
|
+
interface SingleTimeValueAxis {
|
|
9
|
+
values: [string];
|
|
10
|
+
}
|
|
11
|
+
interface PointSeriesAxes {
|
|
12
|
+
x: SingleValueAxis;
|
|
13
|
+
y: SingleValueAxis;
|
|
14
|
+
z?: SingleTimeValueAxis;
|
|
15
|
+
t: AxisValues;
|
|
16
|
+
}
|
|
17
|
+
export interface PointSeriesDomain {
|
|
18
|
+
type: 'Domain';
|
|
19
|
+
domainType: 'PointSeries';
|
|
20
|
+
axes: PointSeriesAxes;
|
|
21
|
+
referencing?: Referencing[];
|
|
22
|
+
}
|
|
23
|
+
interface PointAxes {
|
|
24
|
+
x: SingleValueAxis;
|
|
25
|
+
y: SingleValueAxis;
|
|
26
|
+
z?: SingleValueAxis;
|
|
27
|
+
t?: SingleTimeValueAxis;
|
|
28
|
+
}
|
|
29
|
+
export interface PointDomain {
|
|
30
|
+
type: 'Domain';
|
|
31
|
+
domainType: 'Point';
|
|
32
|
+
axes: PointAxes;
|
|
33
|
+
referencing?: Referencing[];
|
|
34
|
+
}
|
|
35
|
+
interface VerticalProfileAxes {
|
|
36
|
+
x: SingleValueAxis;
|
|
37
|
+
y: SingleValueAxis;
|
|
38
|
+
z: AxisValues;
|
|
39
|
+
t?: SingleTimeValueAxis;
|
|
40
|
+
}
|
|
41
|
+
export interface VerticalProfileDomain {
|
|
42
|
+
type: 'Domain';
|
|
43
|
+
domainType: 'VerticalProfile';
|
|
44
|
+
axes: VerticalProfileAxes;
|
|
45
|
+
referencing?: Referencing[];
|
|
46
|
+
}
|
|
47
|
+
interface GridAxes {
|
|
48
|
+
x: SingleValueAxis;
|
|
49
|
+
y: SingleValueAxis;
|
|
50
|
+
z: AxisValues;
|
|
51
|
+
t?: SingleTimeValueAxis;
|
|
52
|
+
}
|
|
53
|
+
export interface GridDomain {
|
|
54
|
+
type: 'Domain';
|
|
55
|
+
domainType: 'Grid';
|
|
56
|
+
axes: GridAxes;
|
|
57
|
+
referencing?: Referencing[];
|
|
58
|
+
}
|
|
59
|
+
export type CoverageDomain = VerticalProfileDomain | PointDomain | PointSeriesDomain | GridDomain;
|
|
60
|
+
interface NdArray {
|
|
61
|
+
type: 'NdArray';
|
|
62
|
+
dataType: 'float' | 'integer' | 'string';
|
|
63
|
+
axisNames?: string[];
|
|
64
|
+
shape?: number[];
|
|
65
|
+
values: number[] | string[];
|
|
66
|
+
}
|
|
67
|
+
type Ranges = Record<string, NdArray>;
|
|
68
|
+
type Description = Record<string, string>;
|
|
69
|
+
type Label = Record<string, string>;
|
|
70
|
+
interface Parameter {
|
|
71
|
+
type: 'Parameter';
|
|
72
|
+
id?: string;
|
|
73
|
+
label?: Label;
|
|
74
|
+
description?: Description;
|
|
75
|
+
unit?: {
|
|
76
|
+
label?: Label;
|
|
77
|
+
symbol?: Record<string, string>;
|
|
78
|
+
};
|
|
79
|
+
observedProperty: {
|
|
80
|
+
id?: string;
|
|
81
|
+
label: Label;
|
|
82
|
+
description?: Description;
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
export interface Coverage<T extends CoverageDomain> {
|
|
86
|
+
type: 'Coverage';
|
|
87
|
+
domain: T;
|
|
88
|
+
ranges: Ranges;
|
|
89
|
+
}
|
|
90
|
+
export interface CoverageCollection<T extends CoverageDomain> {
|
|
91
|
+
type: 'CoverageCollection';
|
|
92
|
+
domainType: string;
|
|
93
|
+
parameters: Record<string, Parameter>;
|
|
94
|
+
ranges: Record<string, NdArray>;
|
|
95
|
+
coverages: Coverage<T>[];
|
|
96
|
+
referencing: Referencing[];
|
|
97
|
+
}
|
|
98
|
+
export {};
|