@opengeoweb/shared 9.28.1 → 9.29.1
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 +616 -606
- package/package.json +2 -2
- package/src/index.d.ts +7 -7
- package/src/lib/components/AlertBanner/AlertBanner.d.ts +16 -16
- package/src/lib/components/AlertBanner/AlertBanner.spec.d.ts +1 -1
- package/src/lib/components/AlertBanner/AlertBanner.stories.d.ts +13 -13
- package/src/lib/components/AlertBanner/index.d.ts +1 -1
- package/src/lib/components/AlertIcon/AlertIcon.d.ts +8 -8
- package/src/lib/components/AlertIcon/index.d.ts +1 -1
- package/src/lib/components/AppHeader/AppHeader.d.ts +10 -10
- package/src/lib/components/AppHeader/AppHeader.spec.d.ts +1 -1
- package/src/lib/components/AppHeader/AppHeader.stories.d.ts +25 -25
- package/src/lib/components/AppHeader/index.d.ts +1 -1
- package/src/lib/components/AppLayout/AppLayout.d.ts +7 -7
- package/src/lib/components/AppLayout/AppLayout.spec.d.ts +1 -1
- package/src/lib/components/AppLayout/AppLayout.stories.d.ts +7 -7
- package/src/lib/components/AppLayout/index.d.ts +1 -1
- package/src/lib/components/Avatar/Avatar.d.ts +7 -7
- package/src/lib/components/Avatar/Avatar.stories.d.ts +25 -25
- package/src/lib/components/Avatar/index.d.ts +1 -1
- package/src/lib/components/CanvasComponent/CanvasComponent.d.ts +71 -71
- package/src/lib/components/CanvasComponent/CanvasComponent.spec.d.ts +1 -1
- package/src/lib/components/CanvasComponent/CanvasComponent.stories.d.ts +7 -7
- package/src/lib/components/CanvasComponent/index.d.ts +1 -1
- package/src/lib/components/ConfirmationDialog/ConfirmationDialog.d.ts +22 -22
- package/src/lib/components/ConfirmationDialog/ConfirmationDialog.spec.d.ts +1 -1
- package/src/lib/components/ConfirmationDialog/ConfirmationDialog.stories.d.ts +15 -15
- package/src/lib/components/ConfirmationDialog/ConfirmationService.d.ts +18 -18
- package/src/lib/components/ConfirmationDialog/ConfirmationService.spec.d.ts +1 -1
- package/src/lib/components/ConfirmationDialog/index.d.ts +2 -2
- package/src/lib/components/CustomAccordion/CustomAccordion.d.ts +13 -12
- package/src/lib/components/CustomAccordion/CustomAccordion.spec.d.ts +1 -1
- package/src/lib/components/CustomAccordion/CustomAccordion.stories.d.ts +13 -13
- package/src/lib/components/CustomAccordion/index.d.ts +1 -1
- package/src/lib/components/CustomDialog/CustomDialog.d.ts +10 -10
- package/src/lib/components/CustomDialog/CustomDialog.spec.d.ts +1 -1
- package/src/lib/components/CustomDialog/CustomDialog.stories.d.ts +13 -13
- package/src/lib/components/CustomDialog/index.d.ts +1 -1
- package/src/lib/components/CustomIconButton/CustomIconButton.d.ts +13 -13
- package/src/lib/components/CustomIconButton/CustomIconButton.spec.d.ts +1 -1
- package/src/lib/components/CustomIconButton/CustomIconButton.stories.d.ts +25 -25
- package/src/lib/components/CustomIconButton/index.d.ts +1 -1
- package/src/lib/components/CustomSlider/CustomSlider.d.ts +14 -14
- package/src/lib/components/CustomSlider/CustomSlider.spec.d.ts +1 -1
- package/src/lib/components/CustomSlider/CustomSlider.stories.d.ts +13 -13
- package/src/lib/components/CustomSlider/index.d.ts +1 -1
- package/src/lib/components/CustomToggleButton/CustomToggleButton.d.ts +8 -8
- package/src/lib/components/CustomToggleButton/CustomToggleButton.spec.d.ts +1 -1
- package/src/lib/components/CustomToggleButton/CustomToggleButton.stories.d.ts +13 -13
- package/src/lib/components/CustomToggleButton/index.d.ts +1 -1
- package/src/lib/components/CustomTooltip/CustomTooltip.d.ts +8 -8
- package/src/lib/components/CustomTooltip/CustomTooltip.spec.d.ts +1 -1
- package/src/lib/components/CustomTooltip/index.d.ts +1 -1
- package/src/lib/components/DraggableResizable/Draggable.d.ts +15 -15
- package/src/lib/components/DraggableResizable/Draggable.spec.d.ts +1 -1
- package/src/lib/components/DraggableResizable/Resizable.d.ts +10 -10
- package/src/lib/components/DraggableResizable/Resizable.spec.d.ts +1 -1
- package/src/lib/components/DraggableResizable/index.d.ts +3 -3
- package/src/lib/components/DraggableResizable/types.d.ts +27 -27
- package/src/lib/components/ErrorBoundary/ErrorBoundary.d.ts +31 -31
- package/src/lib/components/ErrorBoundary/ErrorBoundary.spec.d.ts +1 -1
- package/src/lib/components/ErrorBoundary/ErrorBoundary.stories.d.ts +10 -10
- package/src/lib/components/ErrorBoundary/index.d.ts +1 -1
- package/src/lib/components/Filter/Filter.d.ts +13 -13
- package/src/lib/components/Filter/Filter.spec.d.ts +1 -1
- package/src/lib/components/Filter/Filter.stories.d.ts +25 -25
- package/src/lib/components/Filter/FilterChip.d.ts +13 -13
- package/src/lib/components/Filter/FilterChip.spec.d.ts +1 -1
- package/src/lib/components/Filter/FilterList.d.ts +15 -15
- package/src/lib/components/Filter/FilterList.spec.d.ts +1 -1
- package/src/lib/components/Filter/FilterListItem.d.ts +17 -17
- package/src/lib/components/Filter/FilterListItem.spec.d.ts +1 -1
- package/src/lib/components/Filter/FilterListItem.stories.d.ts +7 -7
- package/src/lib/components/Filter/SearchField.d.ts +8 -8
- package/src/lib/components/Filter/SearchField.spec.d.ts +1 -1
- package/src/lib/components/Filter/index.d.ts +8 -8
- package/src/lib/components/LastUpdateTime/LastUpdateTime.d.ts +10 -10
- package/src/lib/components/LastUpdateTime/LastUpdateTime.spec.d.ts +1 -1
- package/src/lib/components/LastUpdateTime/LastUpdateTime.stories.d.ts +13 -13
- package/src/lib/components/LastUpdateTime/index.d.ts +1 -1
- package/src/lib/components/Providers/Providers.d.ts +14 -14
- package/src/lib/components/Providers/index.d.ts +1 -1
- package/src/lib/components/SearchField/SearchField.d.ts +9 -9
- package/src/lib/components/SearchField/SearchField.spec.d.ts +1 -1
- package/src/lib/components/SearchField/SearchFieldButtonContainer.d.ts +9 -9
- package/src/lib/components/SearchField/SearchFieldButtonContainer.spec.d.ts +1 -1
- package/src/lib/components/SearchField/index.d.ts +2 -2
- package/src/lib/components/SearchHighlight/SearchHighlight.d.ts +7 -7
- package/src/lib/components/SearchHighlight/SearchHighlight.spec.d.ts +1 -1
- package/src/lib/components/SearchHighlight/SearchHighlight.stories.d.ts +13 -13
- package/src/lib/components/SearchHighlight/index.d.ts +1 -1
- package/src/lib/components/StatusTag/StatusTag.d.ts +9 -9
- package/src/lib/components/StatusTag/StatusTag.spec.d.ts +1 -1
- package/src/lib/components/StatusTag/StatusTag.stories.d.ts +25 -25
- package/src/lib/components/StatusTag/index.d.ts +1 -1
- package/src/lib/components/SwitchButton/SwitchButton.d.ts +8 -8
- package/src/lib/components/SwitchButton/SwitchButton.spec.d.ts +1 -1
- package/src/lib/components/SwitchButton/index.d.ts +1 -1
- package/src/lib/components/ToggleMenu/ToggleMenu.d.ts +30 -30
- package/src/lib/components/ToggleMenu/ToggleMenu.spec.d.ts +1 -1
- package/src/lib/components/ToggleMenu/ToggleMenu.stories.d.ts +13 -13
- package/src/lib/components/ToggleMenu/index.d.ts +1 -1
- package/src/lib/components/ToolContainer/ToolContainer.d.ts +5 -5
- package/src/lib/components/ToolContainer/ToolContainer.spec.d.ts +1 -1
- package/src/lib/components/ToolContainer/ToolContainer.stories.d.ts +28 -28
- package/src/lib/components/ToolContainer/ToolContainerDraggable.d.ts +37 -37
- package/src/lib/components/ToolContainer/ToolContainerDraggable.spec.d.ts +1 -1
- package/src/lib/components/ToolContainer/ToolContainerDraggable.stories.d.ts +7 -7
- package/src/lib/components/ToolContainer/ToolContainerSnapShots.stories.d.ts +13 -13
- package/src/lib/components/ToolContainer/ToolFooter.d.ts +3 -3
- package/src/lib/components/ToolContainer/ToolFooter.spec.d.ts +1 -1
- package/src/lib/components/ToolContainer/ToolHeader.d.ts +4 -4
- package/src/lib/components/ToolContainer/ToolHeader.spec.d.ts +1 -1
- package/src/lib/components/ToolContainer/ToolHeader.stories.d.ts +23 -23
- package/src/lib/components/ToolContainer/index.d.ts +7 -7
- package/src/lib/components/ToolContainer/types.d.ts +20 -20
- package/src/lib/components/ToolContainer/useHandleSizeFromOutsideComponent.d.ts +15 -15
- package/src/lib/components/ToolContainer/useHandleSizeFromOutsideComponent.spec.d.ts +1 -1
- package/src/lib/components/TooltipSelect/TooltipSelect.d.ts +20 -20
- package/src/lib/components/TooltipSelect/TooltipSelect.spec.d.ts +1 -1
- package/src/lib/components/TooltipSelect/TooltipSelect.stories.d.ts +13 -13
- package/src/lib/components/TooltipSelect/index.d.ts +1 -1
- package/src/lib/components/UserMenu/CheatSheet/CheatSheet.d.ts +3 -3
- package/src/lib/components/UserMenu/CheatSheet/CheatSheet.spec.d.ts +1 -1
- package/src/lib/components/UserMenu/CheatSheet/CheatSheet.stories.d.ts +31 -31
- package/src/lib/components/UserMenu/CheatSheet/ShortcutList.d.ts +6 -6
- package/src/lib/components/UserMenu/CheatSheet/ShortcutList.spec.d.ts +1 -1
- package/src/lib/components/UserMenu/CheatSheet/ShortcutSegment.d.ts +7 -7
- package/src/lib/components/UserMenu/CheatSheet/ShortcutSegment.spec.d.ts +1 -1
- package/src/lib/components/UserMenu/UserMenu.d.ts +11 -11
- package/src/lib/components/UserMenu/UserMenu.spec.d.ts +1 -1
- package/src/lib/components/UserMenu/UserMenu.stories.d.ts +15 -15
- package/src/lib/components/UserMenu/UserMenuItemCheatSheet.d.ts +3 -3
- package/src/lib/components/UserMenu/UserMenuItemCheatSheet.spec.d.ts +1 -1
- package/src/lib/components/UserMenu/UserMenuItemTheme.d.ts +3 -3
- package/src/lib/components/UserMenu/UserMenuItemTheme.spec.d.ts +1 -1
- package/src/lib/components/UserMenu/UserMenuSentryRecording.d.ts +7 -7
- package/src/lib/components/UserMenu/index.d.ts +6 -6
- package/src/lib/components/UserMenu/useUserMenu.d.ts +7 -7
- package/src/lib/components/UserMenu/useUserMenu.spec.d.ts +1 -1
- package/src/lib/components/UserMenu/utils.d.ts +1 -1
- package/src/lib/components/WithEggs/WithEggs.d.ts +7 -7
- package/src/lib/components/WithEggs/WithEggs.spec.d.ts +1 -1
- package/src/lib/components/WithEggs/index.d.ts +1 -1
- package/src/lib/components/components.stories.d.ts +5 -5
- package/src/lib/components/index.d.ts +26 -26
- package/src/lib/hooks/index.d.ts +6 -6
- package/src/lib/hooks/useDebounce/useDebounce.d.ts +1 -1
- package/src/lib/hooks/useDebounce/useDebounce.spec.d.ts +1 -1
- package/src/lib/hooks/useIsMounted/useIsMounted.d.ts +4 -4
- package/src/lib/hooks/useIsMounted/useIsMounted.spec.d.ts +1 -1
- package/src/lib/hooks/useMakeSureContainerStaysInsideWindow/useMakeSureContainerStaysInsideWindow.d.ts +4 -4
- package/src/lib/hooks/useMakeSureContainerStaysInsideWindow/useMakeSureContainerStaysInsideWindow.spec.d.ts +1 -1
- package/src/lib/hooks/usePoller/usePoller.d.ts +3 -3
- package/src/lib/hooks/usePoller/usePoller.spec.d.ts +1 -1
- package/src/lib/hooks/usePoller/usePoller.stories.d.ts +6 -6
- package/src/lib/hooks/usePreventBrowserClose/usePreventBrowserClose.d.ts +2 -2
- package/src/lib/hooks/usePreventBrowserClose/usePreventBrowserClose.spec.d.ts +1 -1
- package/src/lib/hooks/usePreventBrowserClose/usePreventBrowserClose.stories.d.ts +6 -6
- package/src/lib/hooks/usePrevious/usePrevious.d.ts +1 -1
- package/src/lib/hooks/usePrevious/usePrevious.spec.d.ts +1 -1
- package/src/lib/hooks/usePrevious/usePrevious.stories.d.ts +6 -6
- package/src/lib/types/index.d.ts +1 -1
- package/src/lib/types/types.d.ts +107 -108
- package/src/lib/utils/axiosErrorUtils/axiosErrorUtils.d.ts +8 -8
- package/src/lib/utils/axiosErrorUtils/axiosErrorUtils.spec.d.ts +1 -1
- package/src/lib/utils/axiosErrorUtils/index.d.ts +1 -1
- package/src/lib/utils/dateUtils/dateFormats.d.ts +7 -7
- package/src/lib/utils/dateUtils/dateUtils.d.ts +343 -343
- package/src/lib/utils/dateUtils/dateUtils.spec.d.ts +1 -1
- package/src/lib/utils/dateUtils/index.d.ts +2 -2
- package/src/lib/utils/i18n.d.ts +7 -7
- package/src/lib/utils/index.d.ts +5 -5
- package/src/lib/utils/mapProjections.d.ts +75 -75
- package/src/lib/utils/reduxTestUtils/createMockStoreWithEggs.d.ts +20 -20
- package/src/lib/utils/reduxTestUtils/createMockStoreWithEggs.spec.d.ts +1 -1
- package/src/lib/utils/reduxTestUtils/index.d.ts +1 -1
- package/src/lib/utils/renderCounter.d.ts +21 -21
- package/src/lib/utils/renderCounter.spec.d.ts +1 -1
package/index.esm.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
|
|
2
|
-
import { Box, Typography, Tooltip, IconButton, Dialog, DialogTitle, DialogContent, DialogActions, Button, CircularProgress, Alert, AlertTitle, useTheme, Drawer, Link, Avatar as Avatar$1, Paper, ClickAwayListener, MenuList, MenuItem,
|
|
2
|
+
import { Box, Typography, Tooltip, IconButton, Dialog, DialogTitle, DialogContent, DialogActions, Button, CircularProgress, Alert, AlertTitle, useTheme, Drawer, Link, Avatar as Avatar$1, Paper, ClickAwayListener, MenuList, MenuItem, Grid2, RadioGroup, FormControlLabel, Radio, List, ListItem, Tabs, Tab, Backdrop, Switch, Slider, ToggleButton, Menu, ListSubheader, ListItemText, ListItemIcon, styled, Select, Accordion, AccordionSummary, AccordionDetails, FormLabel, TextField, InputAdornment, Chip, Stack, debounce as debounce$1, Checkbox } from '@mui/material';
|
|
3
3
|
import { Close, Exclamation, Success, Info, ChevronRight, GeoWebLogo, HamburgerMenu, Resize, Admin, useThemeContext, DragHandle, ArrowLeft, ArrowRight, KeyOption, ArrowUp, ArrowDown, KeyCommand, Options, ChevronDown, Search, Clear, Cached } from '@opengeoweb/theme';
|
|
4
4
|
import * as React from 'react';
|
|
5
5
|
import React__default, { useRef, Component } from 'react';
|
|
@@ -3472,22 +3472,22 @@ $$a({ target: 'Promise', stat: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {
|
|
|
3472
3472
|
}
|
|
3473
3473
|
});
|
|
3474
3474
|
|
|
3475
|
-
/* *
|
|
3476
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
3477
|
-
* you may not use this file except in compliance with the License.
|
|
3478
|
-
* You may obtain a copy of the License at
|
|
3479
|
-
*
|
|
3480
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
3481
|
-
*
|
|
3482
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
3483
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
3484
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3485
|
-
* See the License for the specific language governing permissions and
|
|
3486
|
-
* limitations under the License.
|
|
3487
|
-
*
|
|
3488
|
-
* Copyright 2021 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
|
|
3489
|
-
* Copyright 2021 - Finnish Meteorological Institute (FMI)
|
|
3490
|
-
* Copyright 2024 - The Norwegian Meteorological Institute (MET Norway)
|
|
3475
|
+
/* *
|
|
3476
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
3477
|
+
* you may not use this file except in compliance with the License.
|
|
3478
|
+
* You may obtain a copy of the License at
|
|
3479
|
+
*
|
|
3480
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
3481
|
+
*
|
|
3482
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
3483
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
3484
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3485
|
+
* See the License for the specific language governing permissions and
|
|
3486
|
+
* limitations under the License.
|
|
3487
|
+
*
|
|
3488
|
+
* Copyright 2021 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
|
|
3489
|
+
* Copyright 2021 - Finnish Meteorological Institute (FMI)
|
|
3490
|
+
* Copyright 2024 - The Norwegian Meteorological Institute (MET Norway)
|
|
3491
3491
|
* */
|
|
3492
3492
|
const showPrompt = event => {
|
|
3493
3493
|
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
@@ -3508,22 +3508,22 @@ function usePreventBrowserClose(shouldPreventClose) {
|
|
|
3508
3508
|
}, [shouldPreventClose]);
|
|
3509
3509
|
}
|
|
3510
3510
|
|
|
3511
|
-
/* *
|
|
3512
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
3513
|
-
* you may not use this file except in compliance with the License.
|
|
3514
|
-
* You may obtain a copy of the License at
|
|
3515
|
-
*
|
|
3516
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
3517
|
-
*
|
|
3518
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
3519
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
3520
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3521
|
-
* See the License for the specific language governing permissions and
|
|
3522
|
-
* limitations under the License.
|
|
3523
|
-
*
|
|
3524
|
-
* Copyright 2023 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
|
|
3525
|
-
* Copyright 2023 - Finnish Meteorological Institute (FMI)
|
|
3526
|
-
* Copyright 2024 - The Norwegian Meteorological Institute (MET Norway)
|
|
3511
|
+
/* *
|
|
3512
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
3513
|
+
* you may not use this file except in compliance with the License.
|
|
3514
|
+
* You may obtain a copy of the License at
|
|
3515
|
+
*
|
|
3516
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
3517
|
+
*
|
|
3518
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
3519
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
3520
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3521
|
+
* See the License for the specific language governing permissions and
|
|
3522
|
+
* limitations under the License.
|
|
3523
|
+
*
|
|
3524
|
+
* Copyright 2023 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
|
|
3525
|
+
* Copyright 2023 - Finnish Meteorological Institute (FMI)
|
|
3526
|
+
* Copyright 2024 - The Norwegian Meteorological Institute (MET Norway)
|
|
3527
3527
|
* */
|
|
3528
3528
|
const pollingIntervalTimeout = 300000;
|
|
3529
3529
|
const usePoller = (deps, callback, pollingInterval = pollingIntervalTimeout) => {
|
|
@@ -3547,22 +3547,22 @@ const usePoller = (deps, callback, pollingInterval = pollingIntervalTimeout) =>
|
|
|
3547
3547
|
return interval;
|
|
3548
3548
|
};
|
|
3549
3549
|
|
|
3550
|
-
/* *
|
|
3551
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
3552
|
-
* you may not use this file except in compliance with the License.
|
|
3553
|
-
* You may obtain a copy of the License at
|
|
3554
|
-
*
|
|
3555
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
3556
|
-
*
|
|
3557
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
3558
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
3559
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3560
|
-
* See the License for the specific language governing permissions and
|
|
3561
|
-
* limitations under the License.
|
|
3562
|
-
*
|
|
3563
|
-
* Copyright 2021 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
|
|
3564
|
-
* Copyright 2021 - Finnish Meteorological Institute (FMI)
|
|
3565
|
-
* Copyright 2024 - The Norwegian Meteorological Institute (MET Norway)
|
|
3550
|
+
/* *
|
|
3551
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
3552
|
+
* you may not use this file except in compliance with the License.
|
|
3553
|
+
* You may obtain a copy of the License at
|
|
3554
|
+
*
|
|
3555
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
3556
|
+
*
|
|
3557
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
3558
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
3559
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3560
|
+
* See the License for the specific language governing permissions and
|
|
3561
|
+
* limitations under the License.
|
|
3562
|
+
*
|
|
3563
|
+
* Copyright 2021 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
|
|
3564
|
+
* Copyright 2021 - Finnish Meteorological Institute (FMI)
|
|
3565
|
+
* Copyright 2024 - The Norwegian Meteorological Institute (MET Norway)
|
|
3566
3566
|
* */
|
|
3567
3567
|
function usePrevious(value) {
|
|
3568
3568
|
const ref = React.useRef();
|
|
@@ -3572,22 +3572,22 @@ function usePrevious(value) {
|
|
|
3572
3572
|
return ref.current;
|
|
3573
3573
|
}
|
|
3574
3574
|
|
|
3575
|
-
/* *
|
|
3576
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
3577
|
-
* you may not use this file except in compliance with the License.
|
|
3578
|
-
* You may obtain a copy of the License at
|
|
3579
|
-
*
|
|
3580
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
3581
|
-
*
|
|
3582
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
3583
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
3584
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3585
|
-
* See the License for the specific language governing permissions and
|
|
3586
|
-
* limitations under the License.
|
|
3587
|
-
*
|
|
3588
|
-
* Copyright 2021 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
|
|
3589
|
-
* Copyright 2021 - Finnish Meteorological Institute (FMI)
|
|
3590
|
-
* Copyright 2024 - The Norwegian Meteorological Institute (MET Norway)
|
|
3575
|
+
/* *
|
|
3576
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
3577
|
+
* you may not use this file except in compliance with the License.
|
|
3578
|
+
* You may obtain a copy of the License at
|
|
3579
|
+
*
|
|
3580
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
3581
|
+
*
|
|
3582
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
3583
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
3584
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
3585
|
+
* See the License for the specific language governing permissions and
|
|
3586
|
+
* limitations under the License.
|
|
3587
|
+
*
|
|
3588
|
+
* Copyright 2021 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
|
|
3589
|
+
* Copyright 2021 - Finnish Meteorological Institute (FMI)
|
|
3590
|
+
* Copyright 2024 - The Norwegian Meteorological Institute (MET Norway)
|
|
3591
3591
|
* */
|
|
3592
3592
|
const useIsMounted = () => {
|
|
3593
3593
|
const isMounted = React.useRef(false);
|
|
@@ -3667,15 +3667,15 @@ const useMakeSureContainerStaysInsideWindow = (nodeRef, position, setPosition) =
|
|
|
3667
3667
|
}, [onResizeWindow]);
|
|
3668
3668
|
};
|
|
3669
3669
|
|
|
3670
|
-
/*
|
|
3671
|
-
Accepts a value and timeout and will debounce
|
|
3670
|
+
/*
|
|
3671
|
+
Accepts a value and timeout and will debounce
|
|
3672
3672
|
|
|
3673
|
-
@param {string} value: value of element
|
|
3674
|
-
@param {timeout} number: timer
|
|
3675
|
-
@return {value: string}
|
|
3673
|
+
@param {string} value: value of element
|
|
3674
|
+
@param {timeout} number: timer
|
|
3675
|
+
@return {value: string}
|
|
3676
3676
|
|
|
3677
|
-
@example:
|
|
3678
|
-
const debouncedName = useDebounce('testing', 2000)
|
|
3677
|
+
@example:
|
|
3678
|
+
const debouncedName = useDebounce('testing', 2000)
|
|
3679
3679
|
*/
|
|
3680
3680
|
const useDebounce = (value, timeout) => {
|
|
3681
3681
|
const [state, setState] = React.useState(value);
|
|
@@ -4615,12 +4615,12 @@ if (NOT_GENERIC || INCORRECT_NAME) {
|
|
|
4615
4615
|
}
|
|
4616
4616
|
|
|
4617
4617
|
// TODO: (Sander de Snaijer 2020-07-13) this error wrappper should get more (non-breaking?) logic when we have decided how to handle errors.
|
|
4618
|
-
/**
|
|
4619
|
-
* ErrorBoundary
|
|
4620
|
-
* Wrap this component around parts of your application. It will catch any uncaught errors and display an alert, and allows you to continue using the rest of your application.
|
|
4621
|
-
*
|
|
4622
|
-
* @example
|
|
4623
|
-
* ``` <ErrorBoundary><ExampleComponent /></ErrorBoundary> ```
|
|
4618
|
+
/**
|
|
4619
|
+
* ErrorBoundary
|
|
4620
|
+
* Wrap this component around parts of your application. It will catch any uncaught errors and display an alert, and allows you to continue using the rest of your application.
|
|
4621
|
+
*
|
|
4622
|
+
* @example
|
|
4623
|
+
* ``` <ErrorBoundary><ExampleComponent /></ErrorBoundary> ```
|
|
4624
4624
|
*/
|
|
4625
4625
|
class ErrorBoundary extends React.Component {
|
|
4626
4626
|
constructor(props) {
|
|
@@ -4835,16 +4835,12 @@ const MenuItemTheme = () => {
|
|
|
4835
4835
|
return jsx(MenuItem, Object.assign({
|
|
4836
4836
|
divider: true
|
|
4837
4837
|
}, {
|
|
4838
|
-
children: jsxs(
|
|
4838
|
+
children: jsxs(Grid2, Object.assign({
|
|
4839
4839
|
container: true
|
|
4840
4840
|
}, {
|
|
4841
|
-
children: [jsx(
|
|
4842
|
-
item: true
|
|
4843
|
-
}, {
|
|
4841
|
+
children: [jsx(Grid2, {
|
|
4844
4842
|
children: t('shared-choose-app-mode')
|
|
4845
|
-
})
|
|
4846
|
-
item: true
|
|
4847
|
-
}, {
|
|
4843
|
+
}), jsx(Grid2, {
|
|
4848
4844
|
children: jsxs(RadioGroup, Object.assign({
|
|
4849
4845
|
onChange: toggleTheme
|
|
4850
4846
|
}, {
|
|
@@ -4862,7 +4858,7 @@ const MenuItemTheme = () => {
|
|
|
4862
4858
|
label: t('shared-dark')
|
|
4863
4859
|
})]
|
|
4864
4860
|
}))
|
|
4865
|
-
})
|
|
4861
|
+
})]
|
|
4866
4862
|
}))
|
|
4867
4863
|
}));
|
|
4868
4864
|
};
|
|
@@ -4975,7 +4971,7 @@ const ToolHeader = ({
|
|
|
4975
4971
|
role: "heading",
|
|
4976
4972
|
"aria-label": "toolheader"
|
|
4977
4973
|
}, {
|
|
4978
|
-
children: jsxs(
|
|
4974
|
+
children: jsxs(Grid2, Object.assign({
|
|
4979
4975
|
container: true,
|
|
4980
4976
|
alignItems: "center",
|
|
4981
4977
|
sx: {
|
|
@@ -4983,17 +4979,19 @@ const ToolHeader = ({
|
|
|
4983
4979
|
height: styles.height
|
|
4984
4980
|
}
|
|
4985
4981
|
}, {
|
|
4986
|
-
children: [jsxs(
|
|
4982
|
+
children: [jsxs(Grid2, Object.assign({
|
|
4987
4983
|
className: "header-left",
|
|
4988
|
-
item: true,
|
|
4989
|
-
xs: columnSizeLeft,
|
|
4990
4984
|
sx: {
|
|
4991
4985
|
paddingRight: 1
|
|
4986
|
+
},
|
|
4987
|
+
size: {
|
|
4988
|
+
sm: columnSizeLeft
|
|
4992
4989
|
}
|
|
4993
4990
|
}, {
|
|
4994
|
-
children: [_isDraggable && size !== 'xxs' && !_leftHeaderComponent && jsx(
|
|
4991
|
+
children: [_isDraggable && size !== 'xxs' && !_leftHeaderComponent && jsx(Grid2, Object.assign({
|
|
4995
4992
|
container: true,
|
|
4996
|
-
justifyContent: "flex-start"
|
|
4993
|
+
justifyContent: "flex-start",
|
|
4994
|
+
size: "grow"
|
|
4997
4995
|
}, {
|
|
4998
4996
|
children: jsx(CustomIconButton, Object.assign({
|
|
4999
4997
|
"data-testid": "dragBtn",
|
|
@@ -5006,48 +5004,45 @@ const ToolHeader = ({
|
|
|
5006
5004
|
children: _dragHandleIcon
|
|
5007
5005
|
}))
|
|
5008
5006
|
})), _leftHeaderComponent && _leftHeaderComponent]
|
|
5009
|
-
})),
|
|
5007
|
+
})), jsxs(Grid2, Object.assign({
|
|
5010
5008
|
className: "header-title",
|
|
5011
|
-
|
|
5012
|
-
|
|
5009
|
+
size: title ? columnSizeTitle : 0,
|
|
5010
|
+
container: true,
|
|
5011
|
+
justifyContent: "center",
|
|
5012
|
+
alignItems: "center"
|
|
5013
5013
|
}, {
|
|
5014
|
-
children:
|
|
5015
|
-
|
|
5016
|
-
|
|
5017
|
-
|
|
5014
|
+
children: [title && jsx(Typography, Object.assign({
|
|
5015
|
+
variant: "h2",
|
|
5016
|
+
noWrap: true,
|
|
5017
|
+
sx: {
|
|
5018
|
+
fontSize: styles.fontSize,
|
|
5019
|
+
fontWeight: styles.fontWeight,
|
|
5020
|
+
lineHeight: styles.lineHeight,
|
|
5021
|
+
marginTop: styles.marginTop,
|
|
5022
|
+
textAlign: 'center'
|
|
5023
|
+
},
|
|
5024
|
+
role: "heading"
|
|
5018
5025
|
}, {
|
|
5019
|
-
children:
|
|
5020
|
-
|
|
5021
|
-
|
|
5022
|
-
|
|
5023
|
-
|
|
5024
|
-
|
|
5025
|
-
|
|
5026
|
-
|
|
5027
|
-
},
|
|
5028
|
-
|
|
5029
|
-
|
|
5030
|
-
|
|
5031
|
-
|
|
5032
|
-
|
|
5033
|
-
|
|
5034
|
-
|
|
5035
|
-
pointerEvents: 'none',
|
|
5036
|
-
transform: 'rotate(90deg)',
|
|
5037
|
-
'&.MuiButtonBase-root.MuiIconButton-root': Object.assign(Object.assign({}, iconStyle), {
|
|
5038
|
-
height: 12
|
|
5039
|
-
})
|
|
5040
|
-
}
|
|
5041
|
-
}, {
|
|
5042
|
-
children: _dragHandleIcon
|
|
5043
|
-
}))]
|
|
5044
|
-
}))
|
|
5045
|
-
})), jsxs(Grid, Object.assign({
|
|
5026
|
+
children: title
|
|
5027
|
+
})), size === 'xxs' && jsx(CustomIconButton, Object.assign({
|
|
5028
|
+
"data-testid": "dragBtn-xxs",
|
|
5029
|
+
disableRipple: true,
|
|
5030
|
+
sx: {
|
|
5031
|
+
pointerEvents: 'none',
|
|
5032
|
+
right: -12,
|
|
5033
|
+
transform: 'rotate(90deg)',
|
|
5034
|
+
'&.MuiButtonBase-root.MuiIconButton-root': Object.assign(Object.assign({}, iconStyle), {
|
|
5035
|
+
height: 12
|
|
5036
|
+
})
|
|
5037
|
+
}
|
|
5038
|
+
}, {
|
|
5039
|
+
children: _dragHandleIcon
|
|
5040
|
+
}))]
|
|
5041
|
+
})), jsxs(Grid2, Object.assign({
|
|
5046
5042
|
className: "header-right",
|
|
5047
|
-
item: true,
|
|
5048
|
-
xs: columnSizeIcon,
|
|
5049
5043
|
container: true,
|
|
5050
|
-
justifyContent: "flex-end"
|
|
5044
|
+
justifyContent: "flex-end",
|
|
5045
|
+
size: columnSizeIcon
|
|
5051
5046
|
}, {
|
|
5052
5047
|
children: [_rightHeaderComponent && _rightHeaderComponent, _onClose && jsx(CustomTooltip, Object.assign({
|
|
5053
5048
|
title: t('shared-close'),
|
|
@@ -5915,14 +5910,14 @@ const ShortcutList = ({
|
|
|
5915
5910
|
},
|
|
5916
5911
|
divider: index !== shortcuts.length - 1
|
|
5917
5912
|
}, {
|
|
5918
|
-
children: jsxs(
|
|
5913
|
+
children: jsxs(Grid2, Object.assign({
|
|
5919
5914
|
container: true,
|
|
5920
5915
|
direction: "row",
|
|
5921
5916
|
justifyContent: "space-between",
|
|
5922
|
-
alignItems: "center"
|
|
5917
|
+
alignItems: "center",
|
|
5918
|
+
size: "grow"
|
|
5923
5919
|
}, {
|
|
5924
|
-
children: [jsx(
|
|
5925
|
-
item: true,
|
|
5920
|
+
children: [jsx(Grid2, Object.assign({
|
|
5926
5921
|
sx: {
|
|
5927
5922
|
fontSize: 12,
|
|
5928
5923
|
fontWeight: 300,
|
|
@@ -5931,9 +5926,7 @@ const ShortcutList = ({
|
|
|
5931
5926
|
}
|
|
5932
5927
|
}, {
|
|
5933
5928
|
children: t(shortcut.titleKey)
|
|
5934
|
-
})), jsx(
|
|
5935
|
-
item: true
|
|
5936
|
-
}, {
|
|
5929
|
+
})), jsx(Grid2, {
|
|
5937
5930
|
children: jsx(Box, Object.assign({
|
|
5938
5931
|
sx: {
|
|
5939
5932
|
alignItems: 'center'
|
|
@@ -5941,7 +5934,7 @@ const ShortcutList = ({
|
|
|
5941
5934
|
}, {
|
|
5942
5935
|
children: _platform === 'mac' && shortcut.descriptionMac ? shortcut.descriptionMac : shortcut.description
|
|
5943
5936
|
}))
|
|
5944
|
-
})
|
|
5937
|
+
})]
|
|
5945
5938
|
}))
|
|
5946
5939
|
}), shortcut.titleKey))
|
|
5947
5940
|
}));
|
|
@@ -6021,14 +6014,12 @@ const UserMenuItemCheatSheet = () => {
|
|
|
6021
6014
|
onClick: onOpen,
|
|
6022
6015
|
divider: true
|
|
6023
6016
|
}, {
|
|
6024
|
-
children: jsx(
|
|
6017
|
+
children: jsx(Grid2, Object.assign({
|
|
6025
6018
|
container: true
|
|
6026
6019
|
}, {
|
|
6027
|
-
children: jsx(
|
|
6028
|
-
item: true
|
|
6029
|
-
}, {
|
|
6020
|
+
children: jsx(Grid2, {
|
|
6030
6021
|
children: t('shared-cheat-sheet')
|
|
6031
|
-
})
|
|
6022
|
+
})
|
|
6032
6023
|
}))
|
|
6033
6024
|
})), jsx(Backdrop, Object.assign({
|
|
6034
6025
|
"data-testid": "cheatsheet-content",
|
|
@@ -6119,14 +6110,12 @@ const UserMenuItemSentryRecording = ({
|
|
|
6119
6110
|
onClick: onOpen,
|
|
6120
6111
|
divider: true
|
|
6121
6112
|
}, {
|
|
6122
|
-
children: jsx(
|
|
6113
|
+
children: jsx(Grid2, Object.assign({
|
|
6123
6114
|
container: true
|
|
6124
6115
|
}, {
|
|
6125
|
-
children: jsx(
|
|
6126
|
-
item: true
|
|
6127
|
-
}, {
|
|
6116
|
+
children: jsx(Grid2, {
|
|
6128
6117
|
children: t('shared-sentry-recording')
|
|
6129
|
-
})
|
|
6118
|
+
})
|
|
6130
6119
|
}))
|
|
6131
6120
|
})), jsx(Backdrop, Object.assign({
|
|
6132
6121
|
"data-testid": "sentryRecording-content",
|
|
@@ -6146,7 +6135,7 @@ const UserMenuItemSentryRecording = ({
|
|
|
6146
6135
|
onClose: onClose,
|
|
6147
6136
|
bounds: "parent"
|
|
6148
6137
|
}, {
|
|
6149
|
-
children: jsxs(
|
|
6138
|
+
children: jsxs(Grid2, Object.assign({
|
|
6150
6139
|
container: true,
|
|
6151
6140
|
spacing: 4,
|
|
6152
6141
|
sx: {
|
|
@@ -6154,9 +6143,8 @@ const UserMenuItemSentryRecording = ({
|
|
|
6154
6143
|
paddingRight: '70px'
|
|
6155
6144
|
}
|
|
6156
6145
|
}, {
|
|
6157
|
-
children: [jsx(
|
|
6146
|
+
children: [jsx(Grid2, Object.assign({
|
|
6158
6147
|
container: true,
|
|
6159
|
-
item: true,
|
|
6160
6148
|
justifyContent: "center",
|
|
6161
6149
|
sx: {
|
|
6162
6150
|
textAlign: 'center'
|
|
@@ -6165,9 +6153,8 @@ const UserMenuItemSentryRecording = ({
|
|
|
6165
6153
|
children: jsx(Typography, {
|
|
6166
6154
|
children: t('shared-sentry-information')
|
|
6167
6155
|
})
|
|
6168
|
-
})), jsx(
|
|
6156
|
+
})), jsx(Grid2, Object.assign({
|
|
6169
6157
|
container: true,
|
|
6170
|
-
item: true,
|
|
6171
6158
|
justifyContent: "center",
|
|
6172
6159
|
sx: {
|
|
6173
6160
|
textAlign: 'center'
|
|
@@ -6176,9 +6163,8 @@ const UserMenuItemSentryRecording = ({
|
|
|
6176
6163
|
children: jsx(Typography, {
|
|
6177
6164
|
children: t('shared-sentry-enable-message')
|
|
6178
6165
|
})
|
|
6179
|
-
})), jsxs(
|
|
6166
|
+
})), jsxs(Grid2, Object.assign({
|
|
6180
6167
|
container: true,
|
|
6181
|
-
item: true,
|
|
6182
6168
|
alignItems: "center",
|
|
6183
6169
|
direction: "column"
|
|
6184
6170
|
}, {
|
|
@@ -6191,9 +6177,8 @@ const UserMenuItemSentryRecording = ({
|
|
|
6191
6177
|
}) : jsxs(Typography, {
|
|
6192
6178
|
children: [" ", t('shared-sentry-enable')]
|
|
6193
6179
|
})]
|
|
6194
|
-
})), jsxs(
|
|
6180
|
+
})), jsxs(Grid2, Object.assign({
|
|
6195
6181
|
container: true,
|
|
6196
|
-
item: true,
|
|
6197
6182
|
alignItems: "center",
|
|
6198
6183
|
direction: "column"
|
|
6199
6184
|
}, {
|
|
@@ -6219,9 +6204,8 @@ const UserMenuItemSentryRecording = ({
|
|
|
6219
6204
|
children: ["(", t('shared-sentry-cors-wait'), ")"]
|
|
6220
6205
|
}))]
|
|
6221
6206
|
})]
|
|
6222
|
-
})), jsx(
|
|
6207
|
+
})), jsx(Grid2, Object.assign({
|
|
6223
6208
|
container: true,
|
|
6224
|
-
item: true,
|
|
6225
6209
|
justifyContent: "center"
|
|
6226
6210
|
}, {
|
|
6227
6211
|
children: jsx(Typography, Object.assign({
|
|
@@ -6250,22 +6234,22 @@ const useUserMenu = (open = false) => {
|
|
|
6250
6234
|
};
|
|
6251
6235
|
};
|
|
6252
6236
|
|
|
6253
|
-
/* *
|
|
6254
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6255
|
-
* you may not use this file except in compliance with the License.
|
|
6256
|
-
* You may obtain a copy of the License at
|
|
6257
|
-
*
|
|
6258
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
6259
|
-
*
|
|
6260
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
6261
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
6262
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
6263
|
-
* See the License for the specific language governing permissions and
|
|
6264
|
-
* limitations under the License.
|
|
6265
|
-
*
|
|
6266
|
-
* Copyright 2021 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
|
|
6267
|
-
* Copyright 2021 - Finnish Meteorological Institute (FMI)
|
|
6268
|
-
* Copyright 2024 - The Norwegian Meteorological Institute (MET Norway)
|
|
6237
|
+
/* *
|
|
6238
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
6239
|
+
* you may not use this file except in compliance with the License.
|
|
6240
|
+
* You may obtain a copy of the License at
|
|
6241
|
+
*
|
|
6242
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
6243
|
+
*
|
|
6244
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
6245
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
6246
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
6247
|
+
* See the License for the specific language governing permissions and
|
|
6248
|
+
* limitations under the License.
|
|
6249
|
+
*
|
|
6250
|
+
* Copyright 2021 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
|
|
6251
|
+
* Copyright 2021 - Finnish Meteorological Institute (FMI)
|
|
6252
|
+
* Copyright 2024 - The Norwegian Meteorological Institute (MET Norway)
|
|
6269
6253
|
* */
|
|
6270
6254
|
const getInitials = name => {
|
|
6271
6255
|
if (!name) {
|
|
@@ -6547,19 +6531,17 @@ const ToggleMenu = ({
|
|
|
6547
6531
|
disabled: isDisabled,
|
|
6548
6532
|
selected: menuItem.isSelected
|
|
6549
6533
|
}, {
|
|
6550
|
-
children: jsxs(
|
|
6534
|
+
children: jsxs(Grid2, Object.assign({
|
|
6551
6535
|
container: true,
|
|
6552
6536
|
spacing: 2,
|
|
6553
|
-
justifyContent: "space-between"
|
|
6537
|
+
justifyContent: "space-between",
|
|
6538
|
+
size: "grow"
|
|
6554
6539
|
}, {
|
|
6555
|
-
children: [jsx(
|
|
6556
|
-
item: true
|
|
6557
|
-
}, {
|
|
6540
|
+
children: [jsx(Grid2, {
|
|
6558
6541
|
children: jsx(ListItemText, {
|
|
6559
6542
|
children: text
|
|
6560
6543
|
})
|
|
6561
|
-
})
|
|
6562
|
-
item: true,
|
|
6544
|
+
}), icon && jsx(Grid2, Object.assign({
|
|
6563
6545
|
alignItems: "flex-end"
|
|
6564
6546
|
}, {
|
|
6565
6547
|
children: jsx(ListItemIcon, Object.assign({
|
|
@@ -6798,6 +6780,7 @@ function withEggs(eggs) {
|
|
|
6798
6780
|
const CustomAccordion = _a => {
|
|
6799
6781
|
var {
|
|
6800
6782
|
title,
|
|
6783
|
+
title2,
|
|
6801
6784
|
defaultExpanded = true,
|
|
6802
6785
|
disableGutters = true,
|
|
6803
6786
|
expandedElevation = 3,
|
|
@@ -6808,7 +6791,7 @@ const CustomAccordion = _a => {
|
|
|
6808
6791
|
children,
|
|
6809
6792
|
amountOfItems
|
|
6810
6793
|
} = _a,
|
|
6811
|
-
props = __rest(_a, ["title", "defaultExpanded", "disableGutters", "expandedElevation", "collapsedElevation", "transitionDuration", "detailsSx", "CustomExpandIcon", "children", "amountOfItems"]);
|
|
6794
|
+
props = __rest(_a, ["title", "title2", "defaultExpanded", "disableGutters", "expandedElevation", "collapsedElevation", "transitionDuration", "detailsSx", "CustomExpandIcon", "children", "amountOfItems"]);
|
|
6812
6795
|
const [expanded, setExpanded] = React.useState(defaultExpanded);
|
|
6813
6796
|
const theme = useTheme();
|
|
6814
6797
|
const iconColor = theme.palette.geowebColors.buttons.icon.default.color;
|
|
@@ -6839,22 +6822,38 @@ const CustomAccordion = _a => {
|
|
|
6839
6822
|
width: '100%'
|
|
6840
6823
|
}
|
|
6841
6824
|
}, {
|
|
6842
|
-
children: [
|
|
6825
|
+
children: [jsxs(Box, Object.assign({
|
|
6843
6826
|
sx: {
|
|
6827
|
+
width: '100%',
|
|
6844
6828
|
display: 'flex',
|
|
6845
|
-
justifyContent: '
|
|
6829
|
+
justifyContent: 'space-between'
|
|
6846
6830
|
}
|
|
6847
6831
|
}, {
|
|
6848
|
-
children:
|
|
6849
|
-
|
|
6832
|
+
children: [jsx(Box, Object.assign({
|
|
6833
|
+
sx: {
|
|
6834
|
+
display: 'flex',
|
|
6835
|
+
justifyContent: 'flex-start'
|
|
6836
|
+
}
|
|
6837
|
+
}, {
|
|
6838
|
+
children: title
|
|
6839
|
+
})), jsx(Box, Object.assign({
|
|
6840
|
+
sx: {
|
|
6841
|
+
display: 'flex',
|
|
6842
|
+
justifyContent: 'flex-end',
|
|
6843
|
+
paddingRight: '25px'
|
|
6844
|
+
}
|
|
6845
|
+
}, {
|
|
6846
|
+
children: title2
|
|
6847
|
+
}))]
|
|
6848
|
+
})), jsx(Box, Object.assign({
|
|
6850
6849
|
sx: {
|
|
6851
6850
|
display: 'flex',
|
|
6852
6851
|
justifyContent: 'flex-end',
|
|
6853
|
-
marginRight: '
|
|
6852
|
+
marginRight: '10px'
|
|
6854
6853
|
}
|
|
6855
6854
|
}, {
|
|
6856
6855
|
children: amountOfItems
|
|
6857
|
-
}))
|
|
6856
|
+
}))]
|
|
6858
6857
|
}))
|
|
6859
6858
|
})), jsx(AccordionDetails, Object.assign({
|
|
6860
6859
|
sx: detailsSx
|
|
@@ -7938,23 +7937,25 @@ const SearchField$1 = ({
|
|
|
7938
7937
|
},
|
|
7939
7938
|
autoFocus: true,
|
|
7940
7939
|
fullWidth: true,
|
|
7941
|
-
|
|
7942
|
-
|
|
7943
|
-
|
|
7944
|
-
|
|
7945
|
-
|
|
7946
|
-
|
|
7947
|
-
|
|
7948
|
-
|
|
7949
|
-
|
|
7950
|
-
|
|
7951
|
-
|
|
7952
|
-
|
|
7953
|
-
|
|
7954
|
-
|
|
7955
|
-
|
|
7956
|
-
|
|
7957
|
-
|
|
7940
|
+
slotProps: {
|
|
7941
|
+
input: {
|
|
7942
|
+
endAdornment: jsx(InputAdornment, Object.assign({
|
|
7943
|
+
position: "end"
|
|
7944
|
+
}, {
|
|
7945
|
+
children: jsx(SearchFieldButton, {
|
|
7946
|
+
setPopupIsOpen: () => {
|
|
7947
|
+
onOpenServicePopup(localSearchString);
|
|
7948
|
+
setLocalSearchString('');
|
|
7949
|
+
},
|
|
7950
|
+
localSearchString: localSearchString,
|
|
7951
|
+
onClickClear: () => {
|
|
7952
|
+
setLocalSearchString('');
|
|
7953
|
+
setSearchFilterDebounced('');
|
|
7954
|
+
setUrlIsValid(false);
|
|
7955
|
+
}
|
|
7956
|
+
})
|
|
7957
|
+
}))
|
|
7958
|
+
}
|
|
7958
7959
|
}
|
|
7959
7960
|
});
|
|
7960
7961
|
};
|
|
@@ -8364,12 +8365,15 @@ const FilterChip = ({
|
|
|
8364
8365
|
isSelected: _isSelected = false,
|
|
8365
8366
|
isDisabled: _isDisabled = false,
|
|
8366
8367
|
handleClick: _handleClick = () => {},
|
|
8367
|
-
|
|
8368
|
+
onClick,
|
|
8368
8369
|
actionIcon,
|
|
8369
8370
|
size: _size = 'small'
|
|
8370
8371
|
}) => {
|
|
8371
8372
|
const theme = useTheme();
|
|
8373
|
+
const chipRef = useRef(null);
|
|
8374
|
+
const clickHandler = () => onClick ? onClick(chipRef.current) : _handleClick(id, _isSelected);
|
|
8372
8375
|
return jsx(Chip, {
|
|
8376
|
+
ref: chipRef,
|
|
8373
8377
|
size: _size,
|
|
8374
8378
|
id: id,
|
|
8375
8379
|
label: label,
|
|
@@ -8386,13 +8390,13 @@ const FilterChip = ({
|
|
|
8386
8390
|
'& .MuiChip-filled': {
|
|
8387
8391
|
border: '1px solid transparent'
|
|
8388
8392
|
},
|
|
8389
|
-
'
|
|
8393
|
+
'&.MuiChip-sizeMedium > .MuiChip-label': {
|
|
8390
8394
|
overflow: 'visible'
|
|
8391
8395
|
}
|
|
8392
8396
|
},
|
|
8393
|
-
onClick:
|
|
8397
|
+
onClick: clickHandler,
|
|
8394
8398
|
deleteIcon: actionIcon,
|
|
8395
|
-
onDelete:
|
|
8399
|
+
onDelete: actionIcon ? clickHandler : undefined
|
|
8396
8400
|
});
|
|
8397
8401
|
};
|
|
8398
8402
|
|
|
@@ -8478,19 +8482,21 @@ const SearchField = ({
|
|
|
8478
8482
|
handleValueChangeDebounced(e.target.value);
|
|
8479
8483
|
setLocalValue(e.target.value);
|
|
8480
8484
|
},
|
|
8481
|
-
|
|
8482
|
-
|
|
8483
|
-
|
|
8484
|
-
|
|
8485
|
-
|
|
8486
|
-
|
|
8487
|
-
|
|
8488
|
-
|
|
8489
|
-
|
|
8490
|
-
|
|
8491
|
-
|
|
8492
|
-
|
|
8493
|
-
|
|
8485
|
+
slotProps: {
|
|
8486
|
+
input: {
|
|
8487
|
+
endAdornment: jsx(InputAdornment, Object.assign({
|
|
8488
|
+
position: "end"
|
|
8489
|
+
}, {
|
|
8490
|
+
children: localValue ? jsx(ClearButton, {
|
|
8491
|
+
onClick: () => {
|
|
8492
|
+
setLocalValue('');
|
|
8493
|
+
valueChanged('');
|
|
8494
|
+
}
|
|
8495
|
+
}) : jsx(SearchButton, {
|
|
8496
|
+
label: label
|
|
8497
|
+
})
|
|
8498
|
+
}))
|
|
8499
|
+
}
|
|
8494
8500
|
}
|
|
8495
8501
|
});
|
|
8496
8502
|
};
|
|
@@ -8596,7 +8602,29 @@ const FilterListItem = ({
|
|
|
8596
8602
|
paddingLeft: '0px',
|
|
8597
8603
|
paddingRight: '50px',
|
|
8598
8604
|
fontSize: '12px'
|
|
8599
|
-
}
|
|
8605
|
+
},
|
|
8606
|
+
secondaryAction: jsx(CustomIconButton, Object.assign({
|
|
8607
|
+
"aria-label": `Only ${filter.name}`,
|
|
8608
|
+
style: {
|
|
8609
|
+
backgroundColor: 'transparent',
|
|
8610
|
+
width: 'auto',
|
|
8611
|
+
display: isHovering ? 'block' : 'none'
|
|
8612
|
+
},
|
|
8613
|
+
edge: "end",
|
|
8614
|
+
onClick: () => {
|
|
8615
|
+
selectOnlyOne(filter.id);
|
|
8616
|
+
}
|
|
8617
|
+
}, {
|
|
8618
|
+
children: jsx(Typography, Object.assign({
|
|
8619
|
+
sx: {
|
|
8620
|
+
color: 'geowebColors.buttons.primary.default.fill',
|
|
8621
|
+
fontSize: '14px',
|
|
8622
|
+
fontWeight: 500
|
|
8623
|
+
}
|
|
8624
|
+
}, {
|
|
8625
|
+
children: t('shared-only')
|
|
8626
|
+
}))
|
|
8627
|
+
}))
|
|
8600
8628
|
}, {
|
|
8601
8629
|
children: [jsx(ListItemIcon, Object.assign({
|
|
8602
8630
|
sx: {
|
|
@@ -8605,8 +8633,10 @@ const FilterListItem = ({
|
|
|
8605
8633
|
}, {
|
|
8606
8634
|
children: jsx(Checkbox, {
|
|
8607
8635
|
inputProps: {
|
|
8608
|
-
'aria-label': filter.name
|
|
8636
|
+
'aria-label': filter.name,
|
|
8637
|
+
checked: filter.checked
|
|
8609
8638
|
},
|
|
8639
|
+
className: filter.checked ? 'is-checked' : '',
|
|
8610
8640
|
color: "secondary",
|
|
8611
8641
|
checked: filter.checked,
|
|
8612
8642
|
onChange: () => {
|
|
@@ -8622,49 +8652,29 @@ const FilterListItem = ({
|
|
|
8622
8652
|
})
|
|
8623
8653
|
})), children || jsx(FilterLabel, {
|
|
8624
8654
|
name: name
|
|
8625
|
-
})
|
|
8626
|
-
children: jsx(CustomIconButton, Object.assign({
|
|
8627
|
-
"aria-label": `Only ${filter.name}`,
|
|
8628
|
-
style: {
|
|
8629
|
-
backgroundColor: 'transparent',
|
|
8630
|
-
width: 'auto'
|
|
8631
|
-
},
|
|
8632
|
-
edge: "end",
|
|
8633
|
-
onClick: () => selectOnlyOne(filter.id)
|
|
8634
|
-
}, {
|
|
8635
|
-
children: jsx(Typography, Object.assign({
|
|
8636
|
-
sx: {
|
|
8637
|
-
color: 'geowebColors.buttons.primary.default.fill',
|
|
8638
|
-
fontSize: '14px',
|
|
8639
|
-
fontWeight: 500
|
|
8640
|
-
}
|
|
8641
|
-
}, {
|
|
8642
|
-
children: t('shared-only')
|
|
8643
|
-
}))
|
|
8644
|
-
}))
|
|
8645
|
-
}) : null]
|
|
8655
|
+
})]
|
|
8646
8656
|
}))
|
|
8647
8657
|
}));
|
|
8648
8658
|
}
|
|
8649
8659
|
return null;
|
|
8650
8660
|
};
|
|
8651
8661
|
|
|
8652
|
-
/* *
|
|
8653
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
8654
|
-
* you may not use this file except in compliance with the License.
|
|
8655
|
-
* You may obtain a copy of the License at
|
|
8656
|
-
*
|
|
8657
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
8658
|
-
*
|
|
8659
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
8660
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
8661
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
8662
|
-
* See the License for the specific language governing permissions and
|
|
8663
|
-
* limitations under the License.
|
|
8664
|
-
*
|
|
8665
|
-
* Copyright 2021 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
|
|
8666
|
-
* Copyright 2021 - Finnish Meteorological Institute (FMI)
|
|
8667
|
-
* Copyright 2024 - The Norwegian Meteorological Institute (MET Norway)
|
|
8662
|
+
/* *
|
|
8663
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
8664
|
+
* you may not use this file except in compliance with the License.
|
|
8665
|
+
* You may obtain a copy of the License at
|
|
8666
|
+
*
|
|
8667
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
8668
|
+
*
|
|
8669
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
8670
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
8671
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
8672
|
+
* See the License for the specific language governing permissions and
|
|
8673
|
+
* limitations under the License.
|
|
8674
|
+
*
|
|
8675
|
+
* Copyright 2021 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
|
|
8676
|
+
* Copyright 2021 - Finnish Meteorological Institute (FMI)
|
|
8677
|
+
* Copyright 2024 - The Norwegian Meteorological Institute (MET Norway)
|
|
8668
8678
|
* */
|
|
8669
8679
|
const DEFAULT_ERROR_MESSAGE = 'An error has occurred';
|
|
8670
8680
|
// Guard function for detecting an AxiosError (typically the kind of error returned by the backend)
|
|
@@ -8759,22 +8769,22 @@ fixRegExpWellKnownSymbolLogic('match', function (MATCH, nativeMatch, maybeCallNa
|
|
|
8759
8769
|
];
|
|
8760
8770
|
});
|
|
8761
8771
|
|
|
8762
|
-
/* *
|
|
8763
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
8764
|
-
* you may not use this file except in compliance with the License.
|
|
8765
|
-
* You may obtain a copy of the License at
|
|
8766
|
-
*
|
|
8767
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
8768
|
-
*
|
|
8769
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
8770
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
8771
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
8772
|
-
* See the License for the specific language governing permissions and
|
|
8773
|
-
* limitations under the License.
|
|
8774
|
-
*
|
|
8775
|
-
* Copyright 2024 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
|
|
8776
|
-
* Copyright 2024 - Finnish Meteorological Institute (FMI)
|
|
8777
|
-
* Copyright 2024 - The Norwegian Meteorological Institute (MET Norway)
|
|
8772
|
+
/* *
|
|
8773
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
8774
|
+
* you may not use this file except in compliance with the License.
|
|
8775
|
+
* You may obtain a copy of the License at
|
|
8776
|
+
*
|
|
8777
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
8778
|
+
*
|
|
8779
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
8780
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
8781
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
8782
|
+
* See the License for the specific language governing permissions and
|
|
8783
|
+
* limitations under the License.
|
|
8784
|
+
*
|
|
8785
|
+
* Copyright 2024 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
|
|
8786
|
+
* Copyright 2024 - Finnish Meteorological Institute (FMI)
|
|
8787
|
+
* Copyright 2024 - The Norwegian Meteorological Institute (MET Norway)
|
|
8778
8788
|
* */
|
|
8779
8789
|
const DATE_FORMAT_DATEPICKER = 'dd/MM/yyyy HH:mm';
|
|
8780
8790
|
const DATE_FORMAT_UTC = "yyyy-MM-dd'T'HH:mm:ss'Z'";
|
|
@@ -8784,58 +8794,58 @@ const DATE_FORMAT_NAME_OF_DAY_MONTH = 'eee dd MMM HH:mm';
|
|
|
8784
8794
|
const DATE_FORMAT_NAME_OF_MONTH = 'dd MMM yyyy, HH:mm';
|
|
8785
8795
|
const DATE_FORMAT_NAME_OF_DAY = 'eee dd/MM/yyyy HH:mm';
|
|
8786
8796
|
|
|
8787
|
-
/**
|
|
8788
|
-
* Parsing date strings with geoweb dateUtils:
|
|
8789
|
-
*
|
|
8790
|
-
* An ISO String *with timezone* can safely be parsed directly to a date:
|
|
8791
|
-
*
|
|
8792
|
-
* date = new Date('2022-10-10T15:30:00Z')
|
|
8793
|
-
* date = new Date('2022-10-10T15:30:00+00:00')
|
|
8794
|
-
* date = new Date('2022-10-10T15:30:00+02:00')
|
|
8795
|
-
*
|
|
8796
|
-
* or using the dateUtils isoStringToDate function *with utc=false*
|
|
8797
|
-
*
|
|
8798
|
-
* date = isoStringToDate('2022-10-10T15:30:00Z', false)
|
|
8799
|
-
*
|
|
8800
|
-
* An ISO String *without a timezone* can be parsed with isoStringToDate
|
|
8801
|
-
*
|
|
8802
|
-
* date = isoStringToDate('2022-10-10T15:30:00')
|
|
8803
|
-
*
|
|
8804
|
-
* *Do not parse ISO without timezone using `new Date()` unless you correct for the local timezone*
|
|
8805
|
-
*
|
|
8806
|
-
* To parse an arbitrary date string with timezone use:
|
|
8807
|
-
*
|
|
8808
|
-
* date = stringToDate('2022.11.10, 11:15 +01:00', 'yyyy.MM.dd, HH:mm xxx', false)
|
|
8809
|
-
*
|
|
8810
|
-
* To parse an arbitrary date string without timezone use:
|
|
8811
|
-
*
|
|
8812
|
-
* date = stringToDate('2022.11.10, 11:15', 'yyyy.MM.dd, HH:mm')
|
|
8813
|
-
*
|
|
8814
|
-
*
|
|
8815
|
-
* To safely convert dates to utc strings use:
|
|
8816
|
-
*
|
|
8817
|
-
* date.toISOString()
|
|
8818
|
-
*
|
|
8819
|
-
* To get parts of UTC time use
|
|
8820
|
-
*
|
|
8821
|
-
* date.getUTCHours()
|
|
8822
|
-
* date.getUTCMins()
|
|
8823
|
-
*
|
|
8824
|
-
* To parse an arbitrary date string to a UTC string use:
|
|
8825
|
-
*
|
|
8826
|
-
* dateToString(new Date('2022-10-10T15:30:00Z'), 'HH:ss dd MMM yyyy')
|
|
8827
|
-
*
|
|
8797
|
+
/**
|
|
8798
|
+
* Parsing date strings with geoweb dateUtils:
|
|
8799
|
+
*
|
|
8800
|
+
* An ISO String *with timezone* can safely be parsed directly to a date:
|
|
8801
|
+
*
|
|
8802
|
+
* date = new Date('2022-10-10T15:30:00Z')
|
|
8803
|
+
* date = new Date('2022-10-10T15:30:00+00:00')
|
|
8804
|
+
* date = new Date('2022-10-10T15:30:00+02:00')
|
|
8805
|
+
*
|
|
8806
|
+
* or using the dateUtils isoStringToDate function *with utc=false*
|
|
8807
|
+
*
|
|
8808
|
+
* date = isoStringToDate('2022-10-10T15:30:00Z', false)
|
|
8809
|
+
*
|
|
8810
|
+
* An ISO String *without a timezone* can be parsed with isoStringToDate
|
|
8811
|
+
*
|
|
8812
|
+
* date = isoStringToDate('2022-10-10T15:30:00')
|
|
8813
|
+
*
|
|
8814
|
+
* *Do not parse ISO without timezone using `new Date()` unless you correct for the local timezone*
|
|
8815
|
+
*
|
|
8816
|
+
* To parse an arbitrary date string with timezone use:
|
|
8817
|
+
*
|
|
8818
|
+
* date = stringToDate('2022.11.10, 11:15 +01:00', 'yyyy.MM.dd, HH:mm xxx', false)
|
|
8819
|
+
*
|
|
8820
|
+
* To parse an arbitrary date string without timezone use:
|
|
8821
|
+
*
|
|
8822
|
+
* date = stringToDate('2022.11.10, 11:15', 'yyyy.MM.dd, HH:mm')
|
|
8823
|
+
*
|
|
8824
|
+
*
|
|
8825
|
+
* To safely convert dates to utc strings use:
|
|
8826
|
+
*
|
|
8827
|
+
* date.toISOString()
|
|
8828
|
+
*
|
|
8829
|
+
* To get parts of UTC time use
|
|
8830
|
+
*
|
|
8831
|
+
* date.getUTCHours()
|
|
8832
|
+
* date.getUTCMins()
|
|
8833
|
+
*
|
|
8834
|
+
* To parse an arbitrary date string to a UTC string use:
|
|
8835
|
+
*
|
|
8836
|
+
* dateToString(new Date('2022-10-10T15:30:00Z'), 'HH:ss dd MMM yyyy')
|
|
8837
|
+
*
|
|
8828
8838
|
*/
|
|
8829
|
-
/**
|
|
8830
|
-
* Parse an ISO string to a date
|
|
8831
|
-
*
|
|
8832
|
-
* Expects the following props:
|
|
8833
|
-
* @param {string} input - string containing date
|
|
8834
|
-
*
|
|
8835
|
-
* @returns {Date} Date
|
|
8836
|
-
* @example
|
|
8837
|
-
* ``` isoStringToDate("2022-5-10T20:32:00+00:00") ```
|
|
8838
|
-
* ``` isoStringToDate("2022-5-10T20:32:00:00Z", false) ```
|
|
8839
|
+
/**
|
|
8840
|
+
* Parse an ISO string to a date
|
|
8841
|
+
*
|
|
8842
|
+
* Expects the following props:
|
|
8843
|
+
* @param {string} input - string containing date
|
|
8844
|
+
*
|
|
8845
|
+
* @returns {Date} Date
|
|
8846
|
+
* @example
|
|
8847
|
+
* ``` isoStringToDate("2022-5-10T20:32:00+00:00") ```
|
|
8848
|
+
* ``` isoStringToDate("2022-5-10T20:32:00:00Z", false) ```
|
|
8839
8849
|
*/
|
|
8840
8850
|
const isoStringToDate = (input, utc = true) => {
|
|
8841
8851
|
if (!input) {
|
|
@@ -8856,20 +8866,20 @@ const isValidIsoDateString = input => {
|
|
|
8856
8866
|
}
|
|
8857
8867
|
return isoStringToDate(input) !== undefined;
|
|
8858
8868
|
};
|
|
8859
|
-
/**
|
|
8860
|
-
* Parse a string to a date
|
|
8861
|
-
*
|
|
8862
|
-
* ***NOTE: String will be parsed in local time if utc is set to false***
|
|
8863
|
-
*
|
|
8864
|
-
* Expects the following props:
|
|
8865
|
-
* @param {string} input - string containing date
|
|
8866
|
-
* @param {string} strFormat - format of the string, see: https://date-fns.org/v2.29.3/docs/parse
|
|
8867
|
-
* @param {boolean} utc [ default = true ] - boolean indicating whether to parse as UTC
|
|
8868
|
-
* @param {Date} referenceDate [ default = new Date() ] - defines values missing from the parsed dateString
|
|
8869
|
-
*
|
|
8870
|
-
* @returns {Date} Date
|
|
8871
|
-
* @example
|
|
8872
|
-
* ``` stringToDate("2022 5 10 20:32", 'yyyy M d HH:mm')) ```
|
|
8869
|
+
/**
|
|
8870
|
+
* Parse a string to a date
|
|
8871
|
+
*
|
|
8872
|
+
* ***NOTE: String will be parsed in local time if utc is set to false***
|
|
8873
|
+
*
|
|
8874
|
+
* Expects the following props:
|
|
8875
|
+
* @param {string} input - string containing date
|
|
8876
|
+
* @param {string} strFormat - format of the string, see: https://date-fns.org/v2.29.3/docs/parse
|
|
8877
|
+
* @param {boolean} utc [ default = true ] - boolean indicating whether to parse as UTC
|
|
8878
|
+
* @param {Date} referenceDate [ default = new Date() ] - defines values missing from the parsed dateString
|
|
8879
|
+
*
|
|
8880
|
+
* @returns {Date} Date
|
|
8881
|
+
* @example
|
|
8882
|
+
* ``` stringToDate("2022 5 10 20:32", 'yyyy M d HH:mm')) ```
|
|
8873
8883
|
*/
|
|
8874
8884
|
const stringToDate = (input, strFormat, utc = true, referenceDate = new Date()) => {
|
|
8875
8885
|
if (!input) {
|
|
@@ -8890,19 +8900,19 @@ const dateToIsoString = input => {
|
|
|
8890
8900
|
}
|
|
8891
8901
|
return input.toISOString();
|
|
8892
8902
|
};
|
|
8893
|
-
/**
|
|
8894
|
-
* Use this if you initialise a date without a timezone to set it to utc correctly
|
|
8895
|
-
* eg.
|
|
8896
|
-
* new Date(2022, 10, 12, 15, 30)
|
|
8897
|
-
* should be:
|
|
8898
|
-
* setUTCDate(new Date(2022, 10, 12, 15, 30))
|
|
8899
|
-
*
|
|
8900
|
-
* Expects the following props:
|
|
8901
|
-
* @param {Date} inDate - date to be set to UTC
|
|
8902
|
-
*
|
|
8903
|
-
* @returns {Date} - Date in UTC
|
|
8904
|
-
* @example
|
|
8905
|
-
* ``` setUTCDate(new Date(2022, 10, 12, 15, 30)) ```
|
|
8903
|
+
/**
|
|
8904
|
+
* Use this if you initialise a date without a timezone to set it to utc correctly
|
|
8905
|
+
* eg.
|
|
8906
|
+
* new Date(2022, 10, 12, 15, 30)
|
|
8907
|
+
* should be:
|
|
8908
|
+
* setUTCDate(new Date(2022, 10, 12, 15, 30))
|
|
8909
|
+
*
|
|
8910
|
+
* Expects the following props:
|
|
8911
|
+
* @param {Date} inDate - date to be set to UTC
|
|
8912
|
+
*
|
|
8913
|
+
* @returns {Date} - Date in UTC
|
|
8914
|
+
* @example
|
|
8915
|
+
* ``` setUTCDate(new Date(2022, 10, 12, 15, 30)) ```
|
|
8906
8916
|
*/
|
|
8907
8917
|
const setUTCDate = inDate => {
|
|
8908
8918
|
if (!inDate || !isValid(inDate)) {
|
|
@@ -8913,17 +8923,17 @@ const setUTCDate = inDate => {
|
|
|
8913
8923
|
utcDate.setUTCHours(inDate.getHours(), inDate.getMinutes(), inDate.getSeconds(), inDate.getMilliseconds());
|
|
8914
8924
|
return utcDate;
|
|
8915
8925
|
};
|
|
8916
|
-
/**
|
|
8917
|
-
* Format a date to a string
|
|
8918
|
-
*
|
|
8919
|
-
* Expects the following props:
|
|
8920
|
-
* @param {Date} inDate - date to be formatted
|
|
8921
|
-
* @param {string} strFormat - [default: "yyyy-MM-dd'T'HH:mm:ss'Z'"] format of string
|
|
8922
|
-
* @param {boolean} utc - [default: true] true to return in utc otherwise return in local timezone
|
|
8923
|
-
*
|
|
8924
|
-
* @returns {string} - formatted date string
|
|
8925
|
-
* @example
|
|
8926
|
-
* ``` dateToString(new Date(2022, 10, 12, 15, 30), 'dd MMM yyyy') ```
|
|
8926
|
+
/**
|
|
8927
|
+
* Format a date to a string
|
|
8928
|
+
*
|
|
8929
|
+
* Expects the following props:
|
|
8930
|
+
* @param {Date} inDate - date to be formatted
|
|
8931
|
+
* @param {string} strFormat - [default: "yyyy-MM-dd'T'HH:mm:ss'Z'"] format of string
|
|
8932
|
+
* @param {boolean} utc - [default: true] true to return in utc otherwise return in local timezone
|
|
8933
|
+
*
|
|
8934
|
+
* @returns {string} - formatted date string
|
|
8935
|
+
* @example
|
|
8936
|
+
* ``` dateToString(new Date(2022, 10, 12, 15, 30), 'dd MMM yyyy') ```
|
|
8927
8937
|
*/
|
|
8928
8938
|
const dateToString = (inDate, strFormat = DATE_FORMAT_UTC, utc = true) => {
|
|
8929
8939
|
if (!inDate || !isValid(inDate)) {
|
|
@@ -8932,19 +8942,19 @@ const dateToString = (inDate, strFormat = DATE_FORMAT_UTC, utc = true) => {
|
|
|
8932
8942
|
const formattedDate = utc ? format(new Date(inDate.getUTCFullYear(), inDate.getUTCMonth(), inDate.getUTCDate(), inDate.getUTCHours(), inDate.getUTCMinutes(), inDate.getUTCSeconds()), strFormat) : format(inDate, strFormat);
|
|
8933
8943
|
return formattedDate;
|
|
8934
8944
|
};
|
|
8935
|
-
/**
|
|
8936
|
-
* Find out if a date is between two other dates.
|
|
8937
|
-
*
|
|
8938
|
-
* Inclusivity parameter matches that used in momentjs where '[' indicates inclusion and '(' indicates exclusion.
|
|
8939
|
-
*
|
|
8940
|
-
* Expects the following props:
|
|
8941
|
-
* @param {Date} date - date to be tested
|
|
8942
|
-
* @param {Date} from - first date
|
|
8943
|
-
* @param {Date} to - last date
|
|
8944
|
-
* @param {string} inclusivity - [default: '()'] Must be one of : '()', '[]', '(]', '[)'
|
|
8945
|
-
*
|
|
8946
|
-
* @returns {boolen} - true if date is between, otherwise false
|
|
8947
|
-
*
|
|
8945
|
+
/**
|
|
8946
|
+
* Find out if a date is between two other dates.
|
|
8947
|
+
*
|
|
8948
|
+
* Inclusivity parameter matches that used in momentjs where '[' indicates inclusion and '(' indicates exclusion.
|
|
8949
|
+
*
|
|
8950
|
+
* Expects the following props:
|
|
8951
|
+
* @param {Date} date - date to be tested
|
|
8952
|
+
* @param {Date} from - first date
|
|
8953
|
+
* @param {Date} to - last date
|
|
8954
|
+
* @param {string} inclusivity - [default: '()'] Must be one of : '()', '[]', '(]', '[)'
|
|
8955
|
+
*
|
|
8956
|
+
* @returns {boolen} - true if date is between, otherwise false
|
|
8957
|
+
*
|
|
8948
8958
|
*/
|
|
8949
8959
|
const isBetween = (date, from, to, inclusivity = '()') => {
|
|
8950
8960
|
if (!['()', '[]', '(]', '[)'].includes(inclusivity)) {
|
|
@@ -8954,25 +8964,25 @@ const isBetween = (date, from, to, inclusivity = '()') => {
|
|
|
8954
8964
|
const isAfterEqual = inclusivity[1] === ']';
|
|
8955
8965
|
return (isBeforeEqual ? isEqual(from, date) || isBefore(from, date) : isBefore(from, date)) && (isAfterEqual ? isEqual(to, date) || isAfter(to, date) : isAfter(to, date));
|
|
8956
8966
|
};
|
|
8957
|
-
/**
|
|
8958
|
-
* Creates a new Date object with the specified date and time, or the current date and time if no arguments are provided.
|
|
8959
|
-
*
|
|
8960
|
-
* @param yearOrIsoString The year for the new Date object, or an ISO-formatted string representing the date and time.
|
|
8961
|
-
* @param month The month for the new Date object (0-11).
|
|
8962
|
-
* @param day The day for the new Date object (1-31).
|
|
8963
|
-
* @param hours The hour for the new Date object (0-23).
|
|
8964
|
-
* @param minutes The minute for the new Date object (0-59).
|
|
8965
|
-
* @param seconds The second for the new Date object (0-59).
|
|
8966
|
-
* @param milliseconds The millisecond for the new Date object (0-999).
|
|
8967
|
-
* @returns A new Date object with the specified date and time, or the current date and time if no arguments are provided.
|
|
8968
|
-
*
|
|
8969
|
-
* @example
|
|
8970
|
-
* createDate(2022, 11, 13);
|
|
8971
|
-
* // => 2022-12-13T00:00:00.000Z
|
|
8972
|
-
*
|
|
8973
|
-
* @example
|
|
8974
|
-
* createDate('2022-12-13T00:00:00.000Z');
|
|
8975
|
-
* // => 2022-12-13T00:00:00.000Z
|
|
8967
|
+
/**
|
|
8968
|
+
* Creates a new Date object with the specified date and time, or the current date and time if no arguments are provided.
|
|
8969
|
+
*
|
|
8970
|
+
* @param yearOrIsoString The year for the new Date object, or an ISO-formatted string representing the date and time.
|
|
8971
|
+
* @param month The month for the new Date object (0-11).
|
|
8972
|
+
* @param day The day for the new Date object (1-31).
|
|
8973
|
+
* @param hours The hour for the new Date object (0-23).
|
|
8974
|
+
* @param minutes The minute for the new Date object (0-59).
|
|
8975
|
+
* @param seconds The second for the new Date object (0-59).
|
|
8976
|
+
* @param milliseconds The millisecond for the new Date object (0-999).
|
|
8977
|
+
* @returns A new Date object with the specified date and time, or the current date and time if no arguments are provided.
|
|
8978
|
+
*
|
|
8979
|
+
* @example
|
|
8980
|
+
* createDate(2022, 11, 13);
|
|
8981
|
+
* // => 2022-12-13T00:00:00.000Z
|
|
8982
|
+
*
|
|
8983
|
+
* @example
|
|
8984
|
+
* createDate('2022-12-13T00:00:00.000Z');
|
|
8985
|
+
* // => 2022-12-13T00:00:00.000Z
|
|
8976
8986
|
*/
|
|
8977
8987
|
const createDate = (yearOrIsoString, month, day, hours = 0, minutes = 0, seconds = 0, milliseconds = 0) => {
|
|
8978
8988
|
if (yearOrIsoString === undefined) {
|
|
@@ -8983,121 +8993,121 @@ const createDate = (yearOrIsoString, month, day, hours = 0, minutes = 0, seconds
|
|
|
8983
8993
|
}
|
|
8984
8994
|
return new Date(yearOrIsoString, month, day, hours, minutes, seconds, milliseconds);
|
|
8985
8995
|
};
|
|
8986
|
-
/**
|
|
8987
|
-
*
|
|
8988
|
-
* @param date
|
|
8989
|
-
* @param duration
|
|
8990
|
-
* @returns {Date} the new Date
|
|
8996
|
+
/**
|
|
8997
|
+
*
|
|
8998
|
+
* @param date
|
|
8999
|
+
* @param duration
|
|
9000
|
+
* @returns {Date} the new Date
|
|
8991
9001
|
*/
|
|
8992
9002
|
const add = (date, duration) => {
|
|
8993
9003
|
return add$1(date, duration);
|
|
8994
9004
|
};
|
|
8995
|
-
/**
|
|
8996
|
-
*
|
|
8997
|
-
* @param date
|
|
8998
|
-
* @param duration
|
|
8999
|
-
* @returns {Date} the new Date
|
|
9005
|
+
/**
|
|
9006
|
+
*
|
|
9007
|
+
* @param date
|
|
9008
|
+
* @param duration
|
|
9009
|
+
* @returns {Date} the new Date
|
|
9000
9010
|
*/
|
|
9001
9011
|
const sub = (date, duration) => {
|
|
9002
9012
|
return sub$1(date, duration);
|
|
9003
9013
|
};
|
|
9004
|
-
/**
|
|
9005
|
-
* Finds the number of years between to dates
|
|
9006
|
-
*
|
|
9007
|
-
* @param dateLeft - the later date
|
|
9008
|
-
* @param dateRight - the earlier date
|
|
9009
|
-
* @returns {number} the number of minutes
|
|
9014
|
+
/**
|
|
9015
|
+
* Finds the number of years between to dates
|
|
9016
|
+
*
|
|
9017
|
+
* @param dateLeft - the later date
|
|
9018
|
+
* @param dateRight - the earlier date
|
|
9019
|
+
* @returns {number} the number of minutes
|
|
9010
9020
|
*/
|
|
9011
9021
|
const differenceInYears = (dateLeft, dateRight) => {
|
|
9012
9022
|
return differenceInYears$1(dateLeft, dateRight);
|
|
9013
9023
|
};
|
|
9014
|
-
/**
|
|
9015
|
-
* Finds the number of months between to dates
|
|
9016
|
-
*
|
|
9017
|
-
* @param dateLeft - the later date
|
|
9018
|
-
* @param dateRight - the earlier date
|
|
9019
|
-
* @returns {number} the number of minutes
|
|
9024
|
+
/**
|
|
9025
|
+
* Finds the number of months between to dates
|
|
9026
|
+
*
|
|
9027
|
+
* @param dateLeft - the later date
|
|
9028
|
+
* @param dateRight - the earlier date
|
|
9029
|
+
* @returns {number} the number of minutes
|
|
9020
9030
|
*/
|
|
9021
9031
|
const differenceInMonths = (dateLeft, dateRight) => {
|
|
9022
9032
|
return differenceInMonths$1(dateLeft, dateRight);
|
|
9023
9033
|
};
|
|
9024
|
-
/**
|
|
9025
|
-
* Finds the number of days between to dates
|
|
9026
|
-
*
|
|
9027
|
-
* @param dateLeft - the later date
|
|
9028
|
-
* @param dateRight - the earlier date
|
|
9029
|
-
* @returns {number} the number of minutes
|
|
9034
|
+
/**
|
|
9035
|
+
* Finds the number of days between to dates
|
|
9036
|
+
*
|
|
9037
|
+
* @param dateLeft - the later date
|
|
9038
|
+
* @param dateRight - the earlier date
|
|
9039
|
+
* @returns {number} the number of minutes
|
|
9030
9040
|
*/
|
|
9031
9041
|
const differenceInDays = (dateLeft, dateRight) => {
|
|
9032
9042
|
return differenceInDays$1(dateLeft, dateRight);
|
|
9033
9043
|
};
|
|
9034
|
-
/**
|
|
9035
|
-
* Finds the number of minuts between to dates
|
|
9036
|
-
*
|
|
9037
|
-
* @param dateLeft - the later date
|
|
9038
|
-
* @param dateRight - the earlier date
|
|
9039
|
-
* @returns {number} the number of minutes
|
|
9044
|
+
/**
|
|
9045
|
+
* Finds the number of minuts between to dates
|
|
9046
|
+
*
|
|
9047
|
+
* @param dateLeft - the later date
|
|
9048
|
+
* @param dateRight - the earlier date
|
|
9049
|
+
* @returns {number} the number of minutes
|
|
9040
9050
|
*/
|
|
9041
9051
|
const differenceInMinutes = (dateLeft, dateRight) => {
|
|
9042
9052
|
return differenceInMinutes$1(dateLeft, dateRight);
|
|
9043
9053
|
};
|
|
9044
|
-
/**
|
|
9045
|
-
* Finds the number of hours between to dates
|
|
9046
|
-
*
|
|
9047
|
-
* @param dateLeft - the later date
|
|
9048
|
-
* @param dateRight - the earlier date
|
|
9049
|
-
* @returns {number} the number of hours
|
|
9054
|
+
/**
|
|
9055
|
+
* Finds the number of hours between to dates
|
|
9056
|
+
*
|
|
9057
|
+
* @param dateLeft - the later date
|
|
9058
|
+
* @param dateRight - the earlier date
|
|
9059
|
+
* @returns {number} the number of hours
|
|
9050
9060
|
*/
|
|
9051
9061
|
const differenceInHours = (dateLeft, dateRight, roundingMethod) => {
|
|
9052
9062
|
return roundingMethod ? differenceInHours$1(dateLeft, dateRight, {
|
|
9053
9063
|
roundingMethod
|
|
9054
9064
|
}) : differenceInHours$1(dateLeft, dateRight);
|
|
9055
9065
|
};
|
|
9056
|
-
/**
|
|
9057
|
-
* Finds the number of seconds between to dates
|
|
9058
|
-
*
|
|
9059
|
-
* @param dateLeft - the later date
|
|
9060
|
-
* @param dateRight - the earlier date
|
|
9061
|
-
* @returns {number} the number of minutes
|
|
9066
|
+
/**
|
|
9067
|
+
* Finds the number of seconds between to dates
|
|
9068
|
+
*
|
|
9069
|
+
* @param dateLeft - the later date
|
|
9070
|
+
* @param dateRight - the earlier date
|
|
9071
|
+
* @returns {number} the number of minutes
|
|
9062
9072
|
*/
|
|
9063
9073
|
const differenceInSeconds = (dateLeft, dateRight) => {
|
|
9064
9074
|
return differenceInSeconds$1(dateLeft, dateRight);
|
|
9065
9075
|
};
|
|
9066
|
-
/**
|
|
9067
|
-
*
|
|
9068
|
-
* @param date - the date to be rounded
|
|
9069
|
-
* @param options - the options for rounding
|
|
9070
|
-
* @returns the new date
|
|
9076
|
+
/**
|
|
9077
|
+
*
|
|
9078
|
+
* @param date - the date to be rounded
|
|
9079
|
+
* @param options - the options for rounding
|
|
9080
|
+
* @returns the new date
|
|
9071
9081
|
*/
|
|
9072
9082
|
const roundToNearestMinutes = (date, options) => {
|
|
9073
9083
|
return roundToNearestMinutes$1(date, options);
|
|
9074
9084
|
};
|
|
9075
|
-
/**
|
|
9076
|
-
*
|
|
9077
|
-
* @param date - the date that should be before the other one to return true
|
|
9078
|
-
* @param dateToCompare -the date to compare with
|
|
9079
|
-
*
|
|
9080
|
-
* @returns the first date is before the second date
|
|
9085
|
+
/**
|
|
9086
|
+
*
|
|
9087
|
+
* @param date - the date that should be before the other one to return true
|
|
9088
|
+
* @param dateToCompare -the date to compare with
|
|
9089
|
+
*
|
|
9090
|
+
* @returns the first date is before the second date
|
|
9081
9091
|
*/
|
|
9082
9092
|
const isBefore = (date, dateToCompare) => {
|
|
9083
9093
|
const before = isBefore$1(date, dateToCompare);
|
|
9084
9094
|
return before;
|
|
9085
9095
|
};
|
|
9086
|
-
/**
|
|
9087
|
-
*
|
|
9088
|
-
* @param date - the date that should be after the other one to return true
|
|
9089
|
-
* @param dateToCompare -the date to compare with
|
|
9090
|
-
*
|
|
9091
|
-
* @returns the first date is after the second date
|
|
9096
|
+
/**
|
|
9097
|
+
*
|
|
9098
|
+
* @param date - the date that should be after the other one to return true
|
|
9099
|
+
* @param dateToCompare -the date to compare with
|
|
9100
|
+
*
|
|
9101
|
+
* @returns the first date is after the second date
|
|
9092
9102
|
*/
|
|
9093
9103
|
const isAfter = (date, dateToCompare) => {
|
|
9094
9104
|
return isAfter$1(date, dateToCompare);
|
|
9095
9105
|
};
|
|
9096
|
-
/**
|
|
9097
|
-
* Gracefully parsing string to a date, setting tz to UTC even if it's missing or input is invalid
|
|
9098
|
-
* Note: use getUtcFromString() to convert a string to a date with stricter returns
|
|
9099
|
-
* @param dateStr - string containing date
|
|
9100
|
-
* @returns {Date} - Date in UTC, or current date when something invalid is passed.
|
|
9106
|
+
/**
|
|
9107
|
+
* Gracefully parsing string to a date, setting tz to UTC even if it's missing or input is invalid
|
|
9108
|
+
* Note: use getUtcFromString() to convert a string to a date with stricter returns
|
|
9109
|
+
* @param dateStr - string containing date
|
|
9110
|
+
* @returns {Date} - Date in UTC, or current date when something invalid is passed.
|
|
9101
9111
|
*/
|
|
9102
9112
|
const utc = dateStr => {
|
|
9103
9113
|
if (!dateStr) {
|
|
@@ -9108,10 +9118,10 @@ const utc = dateStr => {
|
|
|
9108
9118
|
}
|
|
9109
9119
|
return isoStringToDate(dateStr) || createDate();
|
|
9110
9120
|
};
|
|
9111
|
-
/**
|
|
9112
|
-
* Parsing string to a date. Stricter check, will return undefined when dateString is invalid.
|
|
9113
|
-
* @param dateStr - string containing date
|
|
9114
|
-
* @returns {Date} - Date in UTC, undefined when not valid
|
|
9121
|
+
/**
|
|
9122
|
+
* Parsing string to a date. Stricter check, will return undefined when dateString is invalid.
|
|
9123
|
+
* @param dateStr - string containing date
|
|
9124
|
+
* @returns {Date} - Date in UTC, undefined when not valid
|
|
9115
9125
|
*/
|
|
9116
9126
|
const getUtcFromString = dateStr => {
|
|
9117
9127
|
if (!dateStr || typeof dateStr !== 'string') {
|
|
@@ -9130,26 +9140,26 @@ const getOffsetStr = dateStr => {
|
|
|
9130
9140
|
const groups = dateStr.match(offsetMatcher);
|
|
9131
9141
|
return groups ? groups[1] : null;
|
|
9132
9142
|
};
|
|
9133
|
-
/**
|
|
9134
|
-
* Check if a date object is valid
|
|
9135
|
-
* @param {Date | number} date - date to be checked
|
|
9136
|
-
* @returns {boolean} - True if valid
|
|
9143
|
+
/**
|
|
9144
|
+
* Check if a date object is valid
|
|
9145
|
+
* @param {Date | number} date - date to be checked
|
|
9146
|
+
* @returns {boolean} - True if valid
|
|
9137
9147
|
*/
|
|
9138
9148
|
const isValid = date => {
|
|
9139
9149
|
return isValid$1(date);
|
|
9140
9150
|
};
|
|
9141
|
-
/**
|
|
9142
|
-
* Get the seconds timestamp of the given date
|
|
9143
|
-
* @param {Date} date - the given date
|
|
9144
|
-
* @returns the timestamp
|
|
9151
|
+
/**
|
|
9152
|
+
* Get the seconds timestamp of the given date
|
|
9153
|
+
* @param {Date} date - the given date
|
|
9154
|
+
* @returns the timestamp
|
|
9145
9155
|
*/
|
|
9146
9156
|
const unix = date => {
|
|
9147
9157
|
return getUnixTime(date);
|
|
9148
9158
|
};
|
|
9149
|
-
/**
|
|
9150
|
-
* Return the Date object for a given timestamp
|
|
9151
|
-
* @param {number} unixTime - timestamp
|
|
9152
|
-
* @returns the timestamp
|
|
9159
|
+
/**
|
|
9160
|
+
* Return the Date object for a given timestamp
|
|
9161
|
+
* @param {number} unixTime - timestamp
|
|
9162
|
+
* @returns the timestamp
|
|
9153
9163
|
*/
|
|
9154
9164
|
const fromUnix = unixTime => {
|
|
9155
9165
|
return fromUnixTime(unixTime);
|
|
@@ -9175,30 +9185,30 @@ const parseCustomDateString = dateStr => {
|
|
|
9175
9185
|
}
|
|
9176
9186
|
return new Date(dateStr);
|
|
9177
9187
|
};
|
|
9178
|
-
/**
|
|
9179
|
-
* Returns Date in UTC
|
|
9180
|
-
* @returns {Date} - Date in UTC
|
|
9188
|
+
/**
|
|
9189
|
+
* Returns Date in UTC
|
|
9190
|
+
* @returns {Date} - Date in UTC
|
|
9181
9191
|
*/
|
|
9182
9192
|
const getNowUtc = () => {
|
|
9183
9193
|
return createDate();
|
|
9184
9194
|
};
|
|
9185
|
-
/**
|
|
9186
|
-
* Returns current time as string
|
|
9187
|
-
* @param {string} strFormat - [default: "yyyy-MM-dd'T'HH:mm:ss'Z'"] format of string
|
|
9188
|
-
* @param {boolean} utc - [default: true] true to return in utc otherwise return in local timezone
|
|
9189
|
-
*
|
|
9190
|
-
* @returns {string} - formatted date string
|
|
9195
|
+
/**
|
|
9196
|
+
* Returns current time as string
|
|
9197
|
+
* @param {string} strFormat - [default: "yyyy-MM-dd'T'HH:mm:ss'Z'"] format of string
|
|
9198
|
+
* @param {boolean} utc - [default: true] true to return in utc otherwise return in local timezone
|
|
9199
|
+
*
|
|
9200
|
+
* @returns {string} - formatted date string
|
|
9191
9201
|
*/
|
|
9192
9202
|
const getCurrentTimeAsString = (strFormat = DATE_FORMAT_UTC, utc = true) => {
|
|
9193
9203
|
return dateToString(getNowUtc(), strFormat, utc);
|
|
9194
9204
|
};
|
|
9195
|
-
/**
|
|
9196
|
-
* Set date values to a given date (by default it is assumed you are passing the new values in UTC).
|
|
9197
|
-
* Note that months start at 0!
|
|
9198
|
-
* @param date - the dater to be changed
|
|
9199
|
-
* @param values - an object with options
|
|
9200
|
-
* @param useLocalTimeZone - boolean true if you are passing the values in local timezone
|
|
9201
|
-
* @returns the new date with options set
|
|
9205
|
+
/**
|
|
9206
|
+
* Set date values to a given date (by default it is assumed you are passing the new values in UTC).
|
|
9207
|
+
* Note that months start at 0!
|
|
9208
|
+
* @param date - the dater to be changed
|
|
9209
|
+
* @param values - an object with options
|
|
9210
|
+
* @param useLocalTimeZone - boolean true if you are passing the values in local timezone
|
|
9211
|
+
* @returns the new date with options set
|
|
9202
9212
|
*/
|
|
9203
9213
|
const set = (date, values, useLocalTimeZone = false) => {
|
|
9204
9214
|
if (useLocalTimeZone) {
|
|
@@ -9228,11 +9238,11 @@ const set = (date, values, useLocalTimeZone = false) => {
|
|
|
9228
9238
|
}
|
|
9229
9239
|
return newDate;
|
|
9230
9240
|
};
|
|
9231
|
-
/**
|
|
9232
|
-
* Get hours of a passed date in UTC (or local timezone if passed false)
|
|
9233
|
-
* @param date - the date of which to extract hours
|
|
9234
|
-
* @param utc - boolean true - whether to get UTC hours
|
|
9235
|
-
* @returns the hour number
|
|
9241
|
+
/**
|
|
9242
|
+
* Get hours of a passed date in UTC (or local timezone if passed false)
|
|
9243
|
+
* @param date - the date of which to extract hours
|
|
9244
|
+
* @param utc - boolean true - whether to get UTC hours
|
|
9245
|
+
* @returns the hour number
|
|
9236
9246
|
*/
|
|
9237
9247
|
const getHours = (date, utc = true) => {
|
|
9238
9248
|
if (utc) {
|
|
@@ -9240,10 +9250,10 @@ const getHours = (date, utc = true) => {
|
|
|
9240
9250
|
}
|
|
9241
9251
|
return getHours$1(date);
|
|
9242
9252
|
};
|
|
9243
|
-
/**
|
|
9244
|
-
* Return the start of hour for the given date. The result will be in UTC.
|
|
9245
|
-
* @param date - the date of which to retrieve the start of the hour
|
|
9246
|
-
* @returns the new date
|
|
9253
|
+
/**
|
|
9254
|
+
* Return the start of hour for the given date. The result will be in UTC.
|
|
9255
|
+
* @param date - the date of which to retrieve the start of the hour
|
|
9256
|
+
* @returns the new date
|
|
9247
9257
|
*/
|
|
9248
9258
|
const startOfHourUTC = date => {
|
|
9249
9259
|
const hourNum = date.getUTCHours();
|
|
@@ -9254,10 +9264,10 @@ const startOfHourUTC = date => {
|
|
|
9254
9264
|
milliseconds: 0
|
|
9255
9265
|
});
|
|
9256
9266
|
};
|
|
9257
|
-
/**
|
|
9258
|
-
* Return the start of a day for the given date. The result will be in UTC.
|
|
9259
|
-
* @param date - the date of which to retrieve the start of day
|
|
9260
|
-
* @returns the new date
|
|
9267
|
+
/**
|
|
9268
|
+
* Return the start of a day for the given date. The result will be in UTC.
|
|
9269
|
+
* @param date - the date of which to retrieve the start of day
|
|
9270
|
+
* @returns the new date
|
|
9261
9271
|
*/
|
|
9262
9272
|
const startOfDayUTC = date => {
|
|
9263
9273
|
const dateNum = date.getUTCDate();
|
|
@@ -9269,10 +9279,10 @@ const startOfDayUTC = date => {
|
|
|
9269
9279
|
milliseconds: 0
|
|
9270
9280
|
});
|
|
9271
9281
|
};
|
|
9272
|
-
/**
|
|
9273
|
-
* Return the start of a week for the given date. The result will be in UTC.
|
|
9274
|
-
* @param date - the date of which to retrieve the start of the week
|
|
9275
|
-
* @returns the new date
|
|
9282
|
+
/**
|
|
9283
|
+
* Return the start of a week for the given date. The result will be in UTC.
|
|
9284
|
+
* @param date - the date of which to retrieve the start of the week
|
|
9285
|
+
* @returns the new date
|
|
9276
9286
|
*/
|
|
9277
9287
|
const startOfWeekUTC = date => {
|
|
9278
9288
|
const dateNum = date.getUTCDate();
|
|
@@ -9286,10 +9296,10 @@ const startOfWeekUTC = date => {
|
|
|
9286
9296
|
milliseconds: 0
|
|
9287
9297
|
});
|
|
9288
9298
|
};
|
|
9289
|
-
/**
|
|
9290
|
-
* Return the start of a month for the given date. The result will be in UTC.
|
|
9291
|
-
* @param date - the date of which to retrieve the start of the month
|
|
9292
|
-
* @returns the new date
|
|
9299
|
+
/**
|
|
9300
|
+
* Return the start of a month for the given date. The result will be in UTC.
|
|
9301
|
+
* @param date - the date of which to retrieve the start of the month
|
|
9302
|
+
* @returns the new date
|
|
9293
9303
|
*/
|
|
9294
9304
|
const startOfMonthUTC = date => {
|
|
9295
9305
|
return set(new Date(date), {
|
|
@@ -9300,10 +9310,10 @@ const startOfMonthUTC = date => {
|
|
|
9300
9310
|
milliseconds: 0
|
|
9301
9311
|
});
|
|
9302
9312
|
};
|
|
9303
|
-
/**
|
|
9304
|
-
* Return the start of a year for the given date. The result will be in UTC.
|
|
9305
|
-
* @param date - the date of which to retrieve the start of the year
|
|
9306
|
-
* @returns the new date
|
|
9313
|
+
/**
|
|
9314
|
+
* Return the start of a year for the given date. The result will be in UTC.
|
|
9315
|
+
* @param date - the date of which to retrieve the start of the year
|
|
9316
|
+
* @returns the new date
|
|
9307
9317
|
*/
|
|
9308
9318
|
const startOfYearUTC = date => {
|
|
9309
9319
|
const yearNum = date.getUTCFullYear();
|
|
@@ -9319,10 +9329,10 @@ const startOfYearUTC = date => {
|
|
|
9319
9329
|
};
|
|
9320
9330
|
// TODO - IF TODAY time is going to be used, we need to edit this to handle the time.
|
|
9321
9331
|
// - now.getTimezoneOffset(); by subtracting the timezone offset, this can be used to convert the time to similar to UTC, because startOfDay retuns values in local time with offset
|
|
9322
|
-
/**
|
|
9323
|
-
* Parse custom time format of NOW+current time | current date in UTC. The result will be in UTC.
|
|
9324
|
-
* @param timeValue - string value
|
|
9325
|
-
* @returns Time in UTC format
|
|
9332
|
+
/**
|
|
9333
|
+
* Parse custom time format of NOW+current time | current date in UTC. The result will be in UTC.
|
|
9334
|
+
* @param timeValue - string value
|
|
9335
|
+
* @returns Time in UTC format
|
|
9326
9336
|
*/
|
|
9327
9337
|
const convertNOWFormatToUTC = timeValue => {
|
|
9328
9338
|
const now = new Date();
|
|
@@ -9338,10 +9348,10 @@ const convertNOWFormatToUTC = timeValue => {
|
|
|
9338
9348
|
}
|
|
9339
9349
|
throw new Error('Invalid endTime format');
|
|
9340
9350
|
};
|
|
9341
|
-
/**
|
|
9342
|
-
* Parse custom time format of NOW+-hours and minutes || TODAY+-hours and minutes into UTC. The result will be in UTC.
|
|
9343
|
-
* @param timeValue - string value
|
|
9344
|
-
* @returns Time in UTC format
|
|
9351
|
+
/**
|
|
9352
|
+
* Parse custom time format of NOW+-hours and minutes || TODAY+-hours and minutes into UTC. The result will be in UTC.
|
|
9353
|
+
* @param timeValue - string value
|
|
9354
|
+
* @returns Time in UTC format
|
|
9345
9355
|
*/
|
|
9346
9356
|
const convertNOWandTODAYFormatsToUTC = timeValue => {
|
|
9347
9357
|
const now = new Date();
|
|
@@ -9358,22 +9368,22 @@ const convertNOWandTODAYFormatsToUTC = timeValue => {
|
|
|
9358
9368
|
throw new Error('Invalid endTime format');
|
|
9359
9369
|
};
|
|
9360
9370
|
|
|
9361
|
-
/* *
|
|
9362
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
9363
|
-
* you may not use this file except in compliance with the License.
|
|
9364
|
-
* You may obtain a copy of the License at
|
|
9365
|
-
*
|
|
9366
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9367
|
-
*
|
|
9368
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
9369
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
9370
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
9371
|
-
* See the License for the specific language governing permissions and
|
|
9372
|
-
* limitations under the License.
|
|
9373
|
-
*
|
|
9374
|
-
* Copyright 2022 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
|
|
9375
|
-
* Copyright 2022 - Finnish Meteorological Institute (FMI)
|
|
9376
|
-
* Copyright 2024 - The Norwegian Meteorological Institute (MET Norway)
|
|
9371
|
+
/* *
|
|
9372
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
9373
|
+
* you may not use this file except in compliance with the License.
|
|
9374
|
+
* You may obtain a copy of the License at
|
|
9375
|
+
*
|
|
9376
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9377
|
+
*
|
|
9378
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
9379
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
9380
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
9381
|
+
* See the License for the specific language governing permissions and
|
|
9382
|
+
* limitations under the License.
|
|
9383
|
+
*
|
|
9384
|
+
* Copyright 2022 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
|
|
9385
|
+
* Copyright 2022 - Finnish Meteorological Institute (FMI)
|
|
9386
|
+
* Copyright 2024 - The Norwegian Meteorological Institute (MET Norway)
|
|
9377
9387
|
* */
|
|
9378
9388
|
|
|
9379
9389
|
var index = /*#__PURE__*/Object.freeze({
|
|
@@ -9432,22 +9442,22 @@ var index = /*#__PURE__*/Object.freeze({
|
|
|
9432
9442
|
utc: utc
|
|
9433
9443
|
});
|
|
9434
9444
|
|
|
9435
|
-
/* *
|
|
9436
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
9437
|
-
* you may not use this file except in compliance with the License.
|
|
9438
|
-
* You may obtain a copy of the License at
|
|
9439
|
-
*
|
|
9440
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9441
|
-
*
|
|
9442
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
9443
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
9444
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
9445
|
-
* See the License for the specific language governing permissions and
|
|
9446
|
-
* limitations under the License.
|
|
9447
|
-
*
|
|
9448
|
-
* Copyright 2023 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
|
|
9449
|
-
* Copyright 2023 - Finnish Meteorological Institute (FMI)
|
|
9450
|
-
* Copyright 2024 - The Norwegian Meteorological Institute (MET Norway)
|
|
9445
|
+
/* *
|
|
9446
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
9447
|
+
* you may not use this file except in compliance with the License.
|
|
9448
|
+
* You may obtain a copy of the License at
|
|
9449
|
+
*
|
|
9450
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9451
|
+
*
|
|
9452
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
9453
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
9454
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
9455
|
+
* See the License for the specific language governing permissions and
|
|
9456
|
+
* limitations under the License.
|
|
9457
|
+
*
|
|
9458
|
+
* Copyright 2023 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
|
|
9459
|
+
* Copyright 2023 - Finnish Meteorological Institute (FMI)
|
|
9460
|
+
* Copyright 2024 - The Norwegian Meteorological Institute (MET Norway)
|
|
9451
9461
|
* */
|
|
9452
9462
|
const createMockStoreWithEggs = mockState => {
|
|
9453
9463
|
const mockStore = configureStore();
|
|
@@ -9468,22 +9478,22 @@ const createToolkitMockStoreWithEggs = storeConfig => {
|
|
|
9468
9478
|
return store;
|
|
9469
9479
|
};
|
|
9470
9480
|
|
|
9471
|
-
/* *
|
|
9472
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
9473
|
-
* you may not use this file except in compliance with the License.
|
|
9474
|
-
* You may obtain a copy of the License at
|
|
9475
|
-
*
|
|
9476
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9477
|
-
*
|
|
9478
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
9479
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
9480
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
9481
|
-
* See the License for the specific language governing permissions and
|
|
9482
|
-
* limitations under the License.
|
|
9483
|
-
*
|
|
9484
|
-
* Copyright 2024 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
|
|
9485
|
-
* Copyright 2024 - Finnish Meteorological Institute (FMI)
|
|
9486
|
-
* Copyright 2024 - The Norwegian Meteorological Institute (MET Norway)
|
|
9481
|
+
/* *
|
|
9482
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
9483
|
+
* you may not use this file except in compliance with the License.
|
|
9484
|
+
* You may obtain a copy of the License at
|
|
9485
|
+
*
|
|
9486
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9487
|
+
*
|
|
9488
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
9489
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
9490
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
9491
|
+
* See the License for the specific language governing permissions and
|
|
9492
|
+
* limitations under the License.
|
|
9493
|
+
*
|
|
9494
|
+
* Copyright 2024 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
|
|
9495
|
+
* Copyright 2024 - Finnish Meteorological Institute (FMI)
|
|
9496
|
+
* Copyright 2024 - The Norwegian Meteorological Institute (MET Norway)
|
|
9487
9497
|
* */
|
|
9488
9498
|
const PROJECTION = {
|
|
9489
9499
|
EPSG_3035: {
|
|
@@ -9560,34 +9570,34 @@ const PROJECTION = {
|
|
|
9560
9570
|
}
|
|
9561
9571
|
};
|
|
9562
9572
|
|
|
9563
|
-
/* *
|
|
9564
|
-
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
9565
|
-
* you may not use this file except in compliance with the License.
|
|
9566
|
-
* You may obtain a copy of the License at
|
|
9567
|
-
*
|
|
9568
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9569
|
-
*
|
|
9570
|
-
* Unless required by applicable law or agreed to in writing, software
|
|
9571
|
-
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
9572
|
-
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
9573
|
-
* See the License for the specific language governing permissions and
|
|
9574
|
-
* limitations under the License.
|
|
9575
|
-
*
|
|
9576
|
-
* Copyright 2024 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
|
|
9577
|
-
* Copyright 2024 - Finnish Meteorological Institute (FMI)
|
|
9578
|
-
* Copyright 2024 - The Norwegian Meteorological Institute (MET Norway)
|
|
9573
|
+
/* *
|
|
9574
|
+
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
9575
|
+
* you may not use this file except in compliance with the License.
|
|
9576
|
+
* You may obtain a copy of the License at
|
|
9577
|
+
*
|
|
9578
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
9579
|
+
*
|
|
9580
|
+
* Unless required by applicable law or agreed to in writing, software
|
|
9581
|
+
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
9582
|
+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
9583
|
+
* See the License for the specific language governing permissions and
|
|
9584
|
+
* limitations under the License.
|
|
9585
|
+
*
|
|
9586
|
+
* Copyright 2024 - Koninklijk Nederlands Meteorologisch Instituut (KNMI)
|
|
9587
|
+
* Copyright 2024 - Finnish Meteorological Institute (FMI)
|
|
9588
|
+
* Copyright 2024 - The Norwegian Meteorological Institute (MET Norway)
|
|
9579
9589
|
* */
|
|
9580
|
-
/**
|
|
9581
|
-
* Utility function to keep track of number of renders by a react component
|
|
9582
|
-
*
|
|
9583
|
-
* Usage:
|
|
9584
|
-
* 1) reset all counters to zero by:
|
|
9585
|
-
* renderCounter.reset()
|
|
9586
|
-
* 2) in the render function of the functional component do:
|
|
9587
|
-
* renderCounter.count(<your react functional component>.name);
|
|
9588
|
-
* 3) in the test do:
|
|
9589
|
-
* expect(renderCounter.get(<your react functional component>.name)).toBe(1);
|
|
9590
|
-
*
|
|
9590
|
+
/**
|
|
9591
|
+
* Utility function to keep track of number of renders by a react component
|
|
9592
|
+
*
|
|
9593
|
+
* Usage:
|
|
9594
|
+
* 1) reset all counters to zero by:
|
|
9595
|
+
* renderCounter.reset()
|
|
9596
|
+
* 2) in the render function of the functional component do:
|
|
9597
|
+
* renderCounter.count(<your react functional component>.name);
|
|
9598
|
+
* 3) in the test do:
|
|
9599
|
+
* expect(renderCounter.get(<your react functional component>.name)).toBe(1);
|
|
9600
|
+
*
|
|
9591
9601
|
*/
|
|
9592
9602
|
class RenderCounter {
|
|
9593
9603
|
constructor() {
|