@opengeoweb/warnings 11.1.0 → 12.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opengeoweb/warnings",
3
- "version": "11.1.0",
3
+ "version": "12.1.0",
4
4
  "description": "GeoWeb warinings library for the opengeoweb project",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {
@@ -8,28 +8,29 @@
8
8
  "url": "git@gitlab.com:opengeoweb/opengeoweb.git"
9
9
  },
10
10
  "dependencies": {
11
- "@opengeoweb/api": "*",
12
- "@opengeoweb/shared": "*",
13
- "@opengeoweb/store": "*",
14
- "@opengeoweb/webmap-react": "*",
11
+ "@opengeoweb/api": "12.1.0",
12
+ "@opengeoweb/shared": "12.1.0",
13
+ "@opengeoweb/store": "12.1.0",
14
+ "@opengeoweb/webmap-react": "12.1.0",
15
15
  "@tanstack/react-query": "^5.52.1",
16
16
  "react-redux": "^8.1.3",
17
- "@opengeoweb/theme": "*",
18
- "@opengeoweb/form-fields": "*",
17
+ "@opengeoweb/theme": "12.1.0",
18
+ "@opengeoweb/form-fields": "12.1.0",
19
19
  "react-hook-form": "^7.50.1",
20
20
  "lodash": "^4.17.21",
21
21
  "@reduxjs/toolkit": "^1.9.7",
22
- "@opengeoweb/snackbar": "*",
22
+ "@opengeoweb/snackbar": "12.1.0",
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": "*",
27
- "@opengeoweb/webmap": "*",
28
- "@opengeoweb/authentication": "*",
29
- "@opengeoweb/sigmet-airmet": "*",
26
+ "@opengeoweb/core": "12.1.0",
27
+ "@opengeoweb/webmap": "12.1.0",
28
+ "@opengeoweb/authentication": "12.1.0",
29
+ "@opengeoweb/sigmet-airmet": "12.1.0",
30
30
  "react-i18next": "^15.1.1",
31
31
  "i18next": "^23.11.5",
32
32
  "@mui/material": "^6.1.1",
33
+ "ol": "^10.4.0",
33
34
  "msw": "^2.7.3"
34
35
  },
35
36
  "peerDependencies": {
@@ -1,6 +1,8 @@
1
- import { Credentials } from '@opengeoweb/authentication';
2
1
  import { AirmetConfig, AirmetFromBackend, SigmetConfig, SigmetFromBackend } from '@opengeoweb/api';
3
- import { AviationProduct } from '@opengeoweb/sigmet-airmet';
2
+ import { Credentials } from '@opengeoweb/authentication';
3
+ import { AirmetFromFrontend, AviationProduct, SigmetFromFrontend } from '@opengeoweb/sigmet-airmet';
4
+ export declare const airmetBaseUrl: string;
5
+ export declare const sigmetBaseUrl: string;
4
6
  export declare const getAirmetList: (auth: Credentials) => Promise<AirmetFromBackend[]>;
5
7
  export declare const getSigmetList: (auth: Credentials) => Promise<SigmetFromBackend[]>;
6
8
  export declare const getAirmetConfig: (auth: Credentials) => Promise<AirmetConfig>;
@@ -11,3 +13,5 @@ export declare const getAirmetTAC: (auth: Credentials, product: AviationProduct)
11
13
  export declare const getSigmetTAC: (auth: Credentials, product: AviationProduct) => Promise<{
12
14
  data: string;
13
15
  }>;
16
+ export declare const postSigmet: (auth: Credentials, data: SigmetFromFrontend) => Promise<Headers | null>;
17
+ export declare const postAirmet: (auth: Credentials, data: AirmetFromFrontend) => Promise<Headers | null>;
@@ -1,6 +1,6 @@
1
- import { UseQueryResult } from '@tanstack/react-query';
2
1
  import { AirmetConfig, AirmetFromBackend, SigmetConfig, SigmetFromBackend } from '@opengeoweb/api';
3
- import { AviationProduct } from '@opengeoweb/sigmet-airmet';
2
+ import { AirmetFromFrontend, AviationProduct, SigmetFromFrontend } from '@opengeoweb/sigmet-airmet';
3
+ import { UseMutationResult, UseQueryResult } from '@tanstack/react-query';
4
4
  import { WarningType } from '../../store/publicWarningForm/types';
5
5
  export declare const useAirmetList: (disabled?: boolean) => UseQueryResult<AirmetFromBackend[]>;
6
6
  export declare const useSigmetList: (disabled?: boolean) => UseQueryResult<SigmetFromBackend[]>;
@@ -12,4 +12,23 @@ export declare const useTACApi: () => {
12
12
  fetchSigmetTAC: (product: AviationProduct) => FetchTACData;
13
13
  fetchAirmetTAC: (product: AviationProduct) => FetchTACData;
14
14
  };
15
+ type MutationReturnType<T> = UseMutationResult<Headers | null, Error, T, {
16
+ oldData: AirmetFromFrontend[] | SigmetFromFrontend[] | undefined;
17
+ }>;
18
+ /**
19
+ * Hook for posting a SIGMET, with feedback.
20
+ *
21
+ * @param snackBarMessage - Message to show on success.
22
+ * @param onDialogClose - Optional callback to close a dialog.
23
+ * @returns A mutation result for posting a SIGMET.
24
+ */
25
+ export declare const usePostSigmet: (snackBarMessage: string) => MutationReturnType<SigmetFromFrontend>;
26
+ /**
27
+ * Hook for posting an AIRMET, with feedback.
28
+ *
29
+ * @param snackBarMessage - Message to show on success.
30
+ * @param onDialogClose - Optional callback to close a dialog.
31
+ * @returns A mutation result for posting an AIRMET.
32
+ */
33
+ export declare const usePostAirmet: (snackBarMessage: string) => MutationReturnType<AirmetFromFrontend>;
15
34
  export {};
@@ -1,11 +1,12 @@
1
+ import { AviationProduct, FormMode, ProductStatus } from '@opengeoweb/sigmet-airmet';
1
2
  import * as React from 'react';
2
- import { AviationProduct, FormMode } from '@opengeoweb/sigmet-airmet';
3
- import { FeatureCollection, GeoJsonProperties, Geometry } from 'geojson';
3
+ import { FieldValues } from 'react-hook-form';
4
4
  import { MapPreset } from '@opengeoweb/store';
5
+ import { FeatureCollection, GeoJsonProperties, Geometry } from 'geojson';
6
+ import { FormError } from '../../store/publicWarningForm/reducer';
5
7
  import { Area, PublicWarningDetail, WarningType } from '../../store/publicWarningForm/types';
6
8
  import { BaseDrawingListItem, DrawingListItem } from '../../store/warningsDrawings/types';
7
9
  import { WarningLevel } from './LevelField';
8
- import { FormError } from '../../store/publicWarningForm/reducer';
9
10
  export declare const useScrollTopOnError: (error: FormError) => React.RefObject<HTMLDivElement>;
10
11
  export declare const getEmptyPublicWarning: () => PublicWarningDetail;
11
12
  export declare const getFormData: (publicWarningsDetails: PublicWarningDetail | undefined, object?: DrawingListItem) => FormData;
@@ -20,6 +21,7 @@ export interface FormProps {
20
21
  onSaveForm?: (formValues: PublicWarningDetail) => Promise<Headers | null>;
21
22
  onPublishForm?: (formValues: PublicWarningDetail) => Promise<Headers | null>;
22
23
  onClearForm?: () => void;
24
+ onSaveAviationForm?: (formValues: FieldValues, newStatus: ProductStatus, warningType: 'sigmet' | 'airmet') => Promise<Headers | null>;
23
25
  object?: DrawingListItem;
24
26
  publicWarningDetails?: PublicWarningDetail;
25
27
  error?: FormError;
@@ -1,5 +1,5 @@
1
- import * as React from 'react';
2
1
  import type { Meta, StoryObj } from '@storybook/react';
2
+ import * as React from 'react';
3
3
  import { FormProps } from './PublicWarningsForm';
4
4
  interface DemoProps {
5
5
  formProps: FormProps;
@@ -1,7 +1,6 @@
1
1
  import * as React from 'react';
2
2
  import { FeatureCollection } from 'geojson';
3
3
  import { MapPreset } from '@opengeoweb/store';
4
- export declare const zoomToFeature: (mapId: string, geojsonFeature: FeatureCollection | undefined) => void;
5
4
  interface WarningsMapViewProps {
6
5
  geojsonFeature: FeatureCollection | undefined;
7
6
  defaultMapPreset?: MapPreset;
@@ -1,8 +1,9 @@
1
1
  import { SnackbarModuleStore } from '@opengeoweb/snackbar';
2
- import { WebMapStateModuleState, UIModuleState, DrawtoolModuleStore } from '@opengeoweb/store';
2
+ import { DrawtoolModuleStore, UIModuleState, WebMapStateModuleState } from '@opengeoweb/store';
3
3
  import { ToolkitStore } from '@reduxjs/toolkit/dist/configureStore';
4
4
  import { WarningModuleStore } from './types';
5
5
  export declare const warningsReducersMap: {
6
+ webmap: import("redux").Reducer<import("dist/libs/store/src/store/map/types").WebMapState, import("redux").AnyAction>;
6
7
  layers: import("redux").Reducer<import("dist/libs/store/src/store/map/types").LayerState, import("redux").AnyAction>;
7
8
  ui: import("redux").Reducer<import("dist/libs/store/src/store/ui/types").UIStoreType, import("redux").AnyAction>;
8
9
  drawingtools: import("redux").Reducer<import("dist/libs/store/src/store/drawingTool/reducer").DrawingToolState, import("redux").AnyAction>;
@@ -10,6 +11,7 @@ export declare const warningsReducersMap: {
10
11
  publicWarningForm: import("redux").Reducer<import("./publicWarningForm/reducer").WarningFormState>;
11
12
  publicWarnings: import("redux").Reducer<import("./publicWarnings/types").PublicWarningsState>;
12
13
  snackbar: import("redux").Reducer<import("dist/libs/snackbar/src/lib/store/types").SnackbarState, import("redux").AnyAction>;
14
+ syncGroups: import("redux").Reducer<import("dist/libs/store/src/store/generic/syncGroups/types").SynchronizationGroupState, import("redux").AnyAction>;
13
15
  };
14
16
  export declare const warningsMiddlewares: (import("@reduxjs/toolkit").ListenerMiddleware<WarningModuleStore, import("@reduxjs/toolkit").ThunkDispatch<WarningModuleStore, unknown, import("redux").AnyAction>, unknown> | import("@reduxjs/toolkit").ListenerMiddleware<SnackbarModuleStore, import("@reduxjs/toolkit").ThunkDispatch<SnackbarModuleStore, unknown, import("redux").AnyAction>, unknown>)[];
15
17
  export declare const createMockStore: (mockState?: WebMapStateModuleState | DrawtoolModuleStore | UIModuleState | WarningModuleStore | SnackbarModuleStore) => ToolkitStore;
@@ -1,5 +1,9 @@
1
+ import { Airmet, CancelAirmet, CancelSigmet, Sigmet } from '@opengeoweb/sigmet-airmet';
1
2
  import { PublicWarning } from '../store/publicWarningForm/types';
2
3
  export declare const testGeoJSON: GeoJSON.FeatureCollection;
3
4
  export declare function fakeErrorRequest<ReturnType>(error: string): Promise<ReturnType>;
4
5
  export declare const fakePostError = "2 validation errors for Request\nbody -> warningDetail -> phenomenon\n value is not a valid enumeration member; permitted: 'wind', 'fog', 'thunderstorm', 'snowIce', 'rain', 'highTemp', 'funnelCloud', 'lowTemp', 'coastalEvent' (type=type_error.enum; enum_values=[<PhenomenonEnum.WIND: 'wind'>, <PhenomenonEnum.FOG: 'fog'>, <PhenomenonEnum.THUNDERSTORM: 'thunderstorm'>, <PhenomenonEnum.SNOW_ICE: 'snowIce'>, <PhenomenonEnum.RAIN: 'rain'>, <PhenomenonEnum.HIGH_TEMP: 'highTemp'>, <PhenomenonEnum.FUNNEL_CLD: 'funnelCloud'>, <PhenomenonEnum.LOW_TEMP: 'lowTemp'>, <PhenomenonEnum.COASTAL_EVENT: 'coastalEvent'>])\nbody -> warningDetail -> level\n value is not a valid enumeration member; permitted: 'moderate', 'severe', 'extreme' (type=type_error.enum; enum_values=[<LevelEnum.MODERATE: 'moderate'>, <LevelEnum.SEVERE: 'severe'>, <LevelEnum.EXTREME: 'extreme'>])";
5
6
  export declare const testPublicWarning: PublicWarning;
7
+ export declare const testDraftAirmet: Airmet | CancelAirmet;
8
+ export declare const testDraftAirmet2: Sigmet | CancelSigmet;
9
+ export declare const testDraftSigmet: Sigmet | CancelSigmet;