@opengeoweb/warnings 14.1.0 → 14.2.2
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 +1074 -567
- package/package.json +14 -13
- package/src/lib/api/api-utils.d.ts +2 -1
- package/src/lib/api/aviation-api/api.d.ts +2 -2
- package/src/lib/api/aviation-api/hooks.d.ts +3 -2
- package/src/lib/components/FilterList/ExpandableFilterChip.d.ts +2 -2
- package/src/lib/components/FilterList/FilterList.d.ts +5 -2
- package/src/lib/components/FilterList/TimeFilterChip.d.ts +7 -0
- package/src/lib/components/FilterList/filter-hooks.d.ts +7 -2
- package/src/lib/components/FilterList/filter-utils.d.ts +22 -7
- package/src/lib/components/Providers/Providers.d.ts +2 -0
- package/src/lib/components/PublicWarningList/PublicWarningList.d.ts +3 -3
- package/src/lib/components/PublicWarningList/WarningListItemSeperator.d.ts +2 -0
- package/src/lib/utils/i18n.d.ts +1 -1
- package/src/lib/components/PublicWarningList/PublicWarningListConnect.aviation.createAndEdit.integration.spec.d.ts +0 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@opengeoweb/warnings",
|
|
3
|
-
"version": "14.
|
|
3
|
+
"version": "14.2.2",
|
|
4
4
|
"description": "GeoWeb warinings library for the opengeoweb project",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"repository": {
|
|
@@ -8,32 +8,33 @@
|
|
|
8
8
|
"url": "git@gitlab.com:opengeoweb/opengeoweb.git"
|
|
9
9
|
},
|
|
10
10
|
"dependencies": {
|
|
11
|
-
"@opengeoweb/api": "14.
|
|
12
|
-
"@opengeoweb/shared": "14.
|
|
13
|
-
"@opengeoweb/store": "14.
|
|
14
|
-
"@opengeoweb/webmap-react": "14.
|
|
11
|
+
"@opengeoweb/api": "14.2.2",
|
|
12
|
+
"@opengeoweb/shared": "14.2.2",
|
|
13
|
+
"@opengeoweb/store": "14.2.2",
|
|
14
|
+
"@opengeoweb/webmap-react": "14.2.2",
|
|
15
15
|
"@tanstack/react-query": "^5.85.5",
|
|
16
16
|
"react-redux": "^9.2.0",
|
|
17
|
-
"@opengeoweb/theme": "14.
|
|
18
|
-
"@opengeoweb/form-fields": "14.
|
|
17
|
+
"@opengeoweb/theme": "14.2.2",
|
|
18
|
+
"@opengeoweb/form-fields": "14.2.2",
|
|
19
19
|
"react-hook-form": "^7.50.1",
|
|
20
20
|
"lodash": "^4.17.21",
|
|
21
21
|
"@reduxjs/toolkit": "^2.6.1",
|
|
22
|
-
"@opengeoweb/snackbar": "14.
|
|
22
|
+
"@opengeoweb/snackbar": "14.2.2",
|
|
23
23
|
"react-window": "^1.8.10",
|
|
24
24
|
"react-virtualized-auto-sizer": "^1.0.20",
|
|
25
25
|
"axios": "^1.7.7",
|
|
26
|
-
"@opengeoweb/core": "14.
|
|
27
|
-
"@opengeoweb/webmap": "14.
|
|
28
|
-
"@opengeoweb/authentication": "14.
|
|
29
|
-
"@opengeoweb/sigmet-airmet": "14.
|
|
26
|
+
"@opengeoweb/core": "14.2.2",
|
|
27
|
+
"@opengeoweb/webmap": "14.2.2",
|
|
28
|
+
"@opengeoweb/authentication": "14.2.2",
|
|
29
|
+
"@opengeoweb/sigmet-airmet": "14.2.2",
|
|
30
30
|
"react-i18next": "^15.1.1",
|
|
31
31
|
"i18next": "^25.0.1",
|
|
32
32
|
"@mui/material": "^7.0.1",
|
|
33
33
|
"ol": "^10.4.0",
|
|
34
34
|
"msw": "^2.7.3",
|
|
35
35
|
"@types/geojson": "^7946.0.14",
|
|
36
|
-
"react-sortablejs": "^6.1.4"
|
|
36
|
+
"react-sortablejs": "^6.1.4",
|
|
37
|
+
"@mui/x-date-pickers": "^8.15.0"
|
|
37
38
|
},
|
|
38
39
|
"peerDependencies": {
|
|
39
40
|
"react": "18",
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { Warning } from '../store/publicWarningForm/types';
|
|
2
|
+
import type { TimeFilter } from '../components/FilterList/filter-utils';
|
|
2
3
|
interface WarningsResponse {
|
|
3
4
|
combinedWarnings: Warning[];
|
|
4
5
|
refetchWarnings: () => void;
|
|
@@ -6,6 +7,6 @@ interface WarningsResponse {
|
|
|
6
7
|
error?: Error;
|
|
7
8
|
dataUpdatedAt: number;
|
|
8
9
|
}
|
|
9
|
-
export declare const useWarnings: (disabled?: boolean) => WarningsResponse;
|
|
10
|
+
export declare const useWarnings: (disabled?: boolean, timeFilter?: TimeFilter) => WarningsResponse;
|
|
10
11
|
export declare function useAutoRefetchOnExpiry(combinedWarnings: Warning[], refetchWarnings: () => void): void;
|
|
11
12
|
export {};
|
|
@@ -3,8 +3,8 @@ import { Credentials } from '@opengeoweb/authentication';
|
|
|
3
3
|
import { AirmetFromFrontend, AviationProduct, SigmetFromFrontend } from '@opengeoweb/sigmet-airmet';
|
|
4
4
|
export declare const airmetBaseUrl: string;
|
|
5
5
|
export declare const sigmetBaseUrl: string;
|
|
6
|
-
export declare const getAirmetList: (auth: Credentials) => Promise<AirmetFromBackend[]>;
|
|
7
|
-
export declare const getSigmetList: (auth: Credentials) => Promise<SigmetFromBackend[]>;
|
|
6
|
+
export declare const getAirmetList: (auth: Credentials, params?: Record<string, string>) => Promise<AirmetFromBackend[]>;
|
|
7
|
+
export declare const getSigmetList: (auth: Credentials, params?: Record<string, string>) => Promise<SigmetFromBackend[]>;
|
|
8
8
|
export declare const getAirmetConfig: (auth: Credentials) => Promise<AirmetConfig>;
|
|
9
9
|
export declare const getSigmetConfig: (auth: Credentials) => Promise<SigmetConfig>;
|
|
10
10
|
export declare const getAirmetTAC: (product: AviationProduct, auth?: Credentials) => Promise<{
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { UseMutationResult, UseQueryResult } from '@tanstack/react-query';
|
|
2
2
|
import type { AirmetConfig, AirmetFromBackend, SigmetConfig, SigmetFromBackend } from '@opengeoweb/api';
|
|
3
3
|
import type { AirmetFromFrontend, AviationProduct, SigmetFromFrontend } from '@opengeoweb/sigmet-airmet';
|
|
4
|
+
import { TimeFilter } from '../../components/FilterList/filter-utils';
|
|
4
5
|
import type { WarningType } from '../../store/publicWarningForm/types';
|
|
5
6
|
interface TACData {
|
|
6
7
|
data: string;
|
|
@@ -8,8 +9,8 @@ interface TACData {
|
|
|
8
9
|
type TACResult = UseQueryResult<{
|
|
9
10
|
data: string;
|
|
10
11
|
}>;
|
|
11
|
-
export declare const useAirmetList: (disabled?: boolean) => UseQueryResult<AirmetFromBackend[]>;
|
|
12
|
-
export declare const useSigmetList: (disabled?: boolean) => UseQueryResult<SigmetFromBackend[]>;
|
|
12
|
+
export declare const useAirmetList: (disabled?: boolean, timeFilter?: TimeFilter) => UseQueryResult<AirmetFromBackend[]>;
|
|
13
|
+
export declare const useSigmetList: (disabled?: boolean, timeFilter?: TimeFilter) => UseQueryResult<SigmetFromBackend[]>;
|
|
13
14
|
export declare const useAviationWarnings: () => (SigmetFromBackend | AirmetFromBackend)[];
|
|
14
15
|
export declare const useProductConfig: (warningType?: WarningType, disabled?: boolean) => UseQueryResult<SigmetConfig | AirmetConfig>;
|
|
15
16
|
export declare const useFetchSigmetTAC: (product: AviationProduct, enabled?: boolean) => TACResult;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { PickedFilterState, UpdateFilter } from './filter-hooks';
|
|
2
|
-
type IdType = keyof PickedFilterState
|
|
1
|
+
import type { PickedFilterState, UpdateFilter } from './filter-hooks';
|
|
2
|
+
type IdType = Exclude<keyof PickedFilterState, 'time'>;
|
|
3
3
|
export interface ExpandableFilterChipProps {
|
|
4
4
|
id: IdType;
|
|
5
5
|
options: PickedFilterState[IdType];
|
|
@@ -1,10 +1,13 @@
|
|
|
1
|
-
import { FC } from 'react';
|
|
2
|
-
import { PickedFilterState, UpdateFilter } from './filter-hooks';
|
|
1
|
+
import type { FC } from 'react';
|
|
2
|
+
import type { PickedFilterState, UpdateFilter } from './filter-hooks';
|
|
3
|
+
import type { TimeFilter } from './filter-utils';
|
|
3
4
|
interface FilterListProps {
|
|
4
5
|
onClickAll?: (isChecked: boolean) => void;
|
|
5
6
|
isAllSelected?: boolean;
|
|
6
7
|
filterState: PickedFilterState;
|
|
7
8
|
updateFilter: UpdateFilter;
|
|
9
|
+
timeFilter: TimeFilter;
|
|
10
|
+
onUpdateTimeFilter: (timeFilter: TimeFilter) => void;
|
|
8
11
|
}
|
|
9
12
|
declare const FilterList: FC<FilterListProps>;
|
|
10
13
|
export default FilterList;
|
|
@@ -1,16 +1,19 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { AllPhenomenaKeys,
|
|
1
|
+
import type { defaultDomainFilter, defaultPhenomenonFilter, TimeFilter } from './filter-utils';
|
|
2
|
+
import { AllPhenomenaKeys, defaultEmptyFilter, defaultLevelFilter, Domain } from './filter-utils';
|
|
3
|
+
import type { Warning } from '../../store/publicWarningForm/types';
|
|
3
4
|
export interface PickedFilterState {
|
|
4
5
|
source: Partial<typeof defaultEmptyFilter>;
|
|
5
6
|
domain: Partial<typeof defaultDomainFilter>;
|
|
6
7
|
phenomenon: Partial<typeof defaultPhenomenonFilter>;
|
|
7
8
|
level: Partial<typeof defaultLevelFilter>;
|
|
9
|
+
time: TimeFilter;
|
|
8
10
|
}
|
|
9
11
|
export interface FilterState extends PickedFilterState {
|
|
10
12
|
source: typeof defaultEmptyFilter;
|
|
11
13
|
domain: typeof defaultDomainFilter;
|
|
12
14
|
phenomenon: typeof defaultPhenomenonFilter;
|
|
13
15
|
level: typeof defaultLevelFilter;
|
|
16
|
+
time: TimeFilter;
|
|
14
17
|
}
|
|
15
18
|
export type FilterKeyType = keyof FilterState;
|
|
16
19
|
export type OptionKey<T extends FilterKeyType> = keyof FilterState[T];
|
|
@@ -18,8 +21,10 @@ export type UpdateFilter = <T extends FilterKeyType>(filterKey: T | 'ALL', optio
|
|
|
18
21
|
export interface FilterHookState {
|
|
19
22
|
allSelected: boolean;
|
|
20
23
|
updateFilter: UpdateFilter;
|
|
24
|
+
updateTimeFilter: (timeFilter: TimeFilter) => void;
|
|
21
25
|
byFilterState: (warning: Warning) => boolean;
|
|
22
26
|
filterState: PickedFilterState;
|
|
27
|
+
timeFilter: TimeFilter;
|
|
23
28
|
}
|
|
24
29
|
export declare const getPhenomenaForDomainFilter: (domainFilter: Record<Domain, boolean>) => (keyof typeof AllPhenomenaKeys)[];
|
|
25
30
|
export declare const useWarningFilters: (warnings: Warning[], onUpdateFilters: (filterState: Partial<FilterState>, systemUpdate?: boolean) => void, savedFilterState: FilterState, presetFilterState?: PickedFilterState) => FilterHookState;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { AirmetPhenomena, SigmetPhenomena } from '@opengeoweb/api';
|
|
2
|
-
import { Warning } from '../../store/publicWarningForm/types';
|
|
2
|
+
import type { Warning } from '../../store/publicWarningForm/types';
|
|
3
3
|
export declare enum Domain {
|
|
4
4
|
aviation = "aviation",
|
|
5
5
|
maritime = "maritime",
|
|
@@ -75,12 +75,6 @@ declare const AllPhenomena: {
|
|
|
75
75
|
export declare const AllPhenomenaKeys: Record<keyof typeof AllPhenomena, keyof typeof AllPhenomena>;
|
|
76
76
|
export declare const domainPhenomena: Record<Domain, Partial<keyof typeof AllPhenomenaKeys>[]>;
|
|
77
77
|
export declare const defaultPhenomenonFilter: Record<string, boolean>;
|
|
78
|
-
export declare const initialFilters: {
|
|
79
|
-
source: Record<string, boolean>;
|
|
80
|
-
domain: Record<Domain, boolean>;
|
|
81
|
-
phenomenon: Record<string, boolean>;
|
|
82
|
-
level: Record<"unspecified" | Level, boolean>;
|
|
83
|
-
};
|
|
84
78
|
type OptionsType = Partial<Record<Domain | Level | Phenomenon, boolean>>;
|
|
85
79
|
interface OptionsMetadata {
|
|
86
80
|
/** The number of selected options */
|
|
@@ -93,4 +87,25 @@ export declare const updateState: <T extends string>(state: Record<T, boolean>,
|
|
|
93
87
|
/** Make sure our value is in the filter */
|
|
94
88
|
export declare const getValue: <T>(values: Record<string, T>, value: string) => T | "unspecified";
|
|
95
89
|
export declare const getFiltersFromWarnings: (warnings: Warning[], filterKey: string) => string[];
|
|
90
|
+
export declare enum TimeFilterMode {
|
|
91
|
+
all = "all",
|
|
92
|
+
today = "today",
|
|
93
|
+
tomorrow = "tomorrow",
|
|
94
|
+
custom = "custom"
|
|
95
|
+
}
|
|
96
|
+
export interface TimeFilter {
|
|
97
|
+
mode: TimeFilterMode;
|
|
98
|
+
customStart?: string;
|
|
99
|
+
customEnd?: string;
|
|
100
|
+
}
|
|
101
|
+
export declare const defaultTimeFilter: TimeFilter;
|
|
102
|
+
export declare const isWarningWithinInterval: (warning: Warning, timeFilter: TimeFilter) => boolean;
|
|
103
|
+
export declare const getApiParams: (timeFilter: TimeFilter) => Record<string, string>;
|
|
104
|
+
export declare const initialFilters: {
|
|
105
|
+
source: Record<string, boolean>;
|
|
106
|
+
domain: Record<Domain, boolean>;
|
|
107
|
+
phenomenon: Record<string, boolean>;
|
|
108
|
+
level: Record<"unspecified" | Level, boolean>;
|
|
109
|
+
time: TimeFilter;
|
|
110
|
+
};
|
|
96
111
|
export {};
|
|
@@ -13,11 +13,13 @@ export declare const WarningsThemeProvider: React.FC<WarningsThemeProviderProps>
|
|
|
13
13
|
interface WarningStoreProviderProps {
|
|
14
14
|
store?: Store;
|
|
15
15
|
optionalQueryClient?: QueryClient;
|
|
16
|
+
isLoggedIn?: boolean;
|
|
16
17
|
}
|
|
17
18
|
export declare const WarningsStoreProvider: React.FC<WarningStoreProviderProps & WarningsClientProviderProps>;
|
|
18
19
|
export interface WarningsThemeStoreProviderProps extends WarningsThemeProviderProps {
|
|
19
20
|
store?: Store;
|
|
20
21
|
optionalQueryClient?: QueryClient;
|
|
22
|
+
isLoggedIn?: boolean;
|
|
21
23
|
}
|
|
22
24
|
export declare const WarningsThemeStoreProvider: React.FC<WarningsThemeStoreProviderProps>;
|
|
23
25
|
interface WarningsTranslationsWrapperProps {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
2
|
+
import type { WarningListItemActions } from './WarningListItemMenu';
|
|
3
|
+
import type { Warning } from '../../store/publicWarningForm/types';
|
|
4
|
+
import type { FilterHookState } from '../FilterList/filter-hooks';
|
|
5
5
|
export interface PublicWarningListProps extends WarningListItemActions {
|
|
6
6
|
warnings: Warning[];
|
|
7
7
|
onSelectWarning?: (warning: Warning) => void;
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import { ListItemProps } from '@mui/material';
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import { PublicWarningStatus } from '../../store/publicWarningForm/types';
|
|
4
|
+
import type { TimeFilter } from '../FilterList/filter-utils';
|
|
4
5
|
declare const WarningListItemSeperator: React.FC<{
|
|
5
6
|
totalWarnings: number;
|
|
6
7
|
status: PublicWarningStatus;
|
|
7
8
|
isExpanded: boolean;
|
|
9
|
+
timeFilter: TimeFilter;
|
|
8
10
|
} & ListItemProps>;
|
|
9
11
|
export default WarningListItemSeperator;
|
package/src/lib/utils/i18n.d.ts
CHANGED
|
@@ -2,6 +2,6 @@ import i18n from 'i18next';
|
|
|
2
2
|
import { UseTranslationResponse } from 'react-i18next';
|
|
3
3
|
export declare const WARN_NAMESPACE = "warn";
|
|
4
4
|
export declare const initWarnI18n: () => void;
|
|
5
|
-
export declare const
|
|
5
|
+
export declare const translateInTestsAndStories: (key: string, params?: Record<string, string | number> | undefined) => string;
|
|
6
6
|
export declare const useWarningsTranslation: () => UseTranslationResponse<typeof WARN_NAMESPACE, typeof i18n>;
|
|
7
7
|
export { i18n };
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|