@opengeoweb/warnings 12.4.1 → 12.4.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
2
2
  import { useDispatch, useSelector } from 'react-redux';
3
3
  import { Polygons, ExitDomain, Share, Edit, Delete, DrawPolygon, Visibility, Add, CoastalEvent, TemperatureLow, TemperatureHigh, Rain, Snow, Lightning, Fog, Wind, Thunderstorm, VulcanicEruption, Haze, FreezingPrecipitation, ModerateAircraftIcing, SevereAircraftIcing, ModerateTurbulence, SevereTurbulence, SandStorm, RadioactiveMaterials, breakpoints, Options, Close, ChevronDown, ChevronUp, Copy, Update, Cancel, Success, Expire, Remove, ArrowUpCompact, ArrowDownCompact } from '@opengeoweb/theme';
4
- import { uiTypes, uiActions, getSingularDrawtoolDrawLayerId, drawingToolSelectors, layerSelectors, uiSelectors, drawingToolActions, layerActions, useSetupDialog, genericSelectors, selectorMemoizationOptions, useUpdateSharedData, mapListener, layersListener, drawingToolListener, syncGroupsListener, openlayersListener, syncGroupsReducer, drawingToolReducer, uiReducer, layerReducer, mapReducer } from '@opengeoweb/store';
4
+ import { uiTypes, uiActions, getSingularDrawtoolDrawLayerId, drawingToolSelectors, layerSelectors, uiSelectors, drawingToolActions, layerActions, useSetupDialog, genericSelectors, useUpdateSharedData, genericActions, selectorMemoizationOptions, mapListener, layersListener, drawingToolListener, syncGroupsListener, openlayersListener, syncGroupsReducer, drawingToolReducer, uiReducer, layerReducer, mapReducer } from '@opengeoweb/store';
5
5
  import { defaultPolygon, emptyGeoJSON, MapControlButton, getIcon, rewindGeometry, getGeoJSONPropertyValue, currentlySupportedDrawModes, defaultLayers, viewUtils, OpenLayersMapView, MapControls, OpenLayersZoomControl, OpenLayersLayer, OpenLayersFeatureLayer, genericOpenLayersFeatureStyle } from '@opengeoweb/webmap-react';
6
6
  import { SHARED_NAMESPACE, useConfirmationDialog, dateUtils, ToggleMenu, calculateStartSize, ToolContainerDraggable, AlertBanner, ConfirmationDialog, getAxiosErrorMessage, usePrevious, CustomIconButton, CustomTooltip, Avatar, getInitials, SwitchButton, sessionStorageProvider, CustomToggleButton, Filter, FilterChip, FilterOption, StatusTag, LastUpdateTime, ErrorBoundary, isAxiosError } from '@opengeoweb/shared';
7
7
  import { createEntityAdapter, createSlice, createSelector, current, createListenerMiddleware, combineReducers, configureStore } from '@reduxjs/toolkit';
@@ -11229,6 +11229,9 @@ var getSelectedPublicIsFormDirty = createSelector(getPublicWarningStore, functio
11229
11229
  var getWarningType = createSelector(getPublicWarningStore, function (publicWarningStore) {
11230
11230
  return publicWarningStore == null ? void 0 : publicWarningStore.warningType;
11231
11231
  });
11232
+ var getPublicWarningPanelId = createSelector(getPublicWarningStore, function (publicWarningStore) {
11233
+ return (publicWarningStore == null ? void 0 : publicWarningStore.panelId) || '';
11234
+ });
11232
11235
 
11233
11236
  var PublicWarningsFormConnect = function PublicWarningsFormConnect(_ref) {
11234
11237
  var editor = _ref.editor,
@@ -11923,6 +11926,7 @@ var useAreaRequest = function useAreaRequest(warningsApi) {
11923
11926
  };
11924
11927
  };
11925
11928
  var AreaObjectLoaderConnect = function AreaObjectLoaderConnect(_ref) {
11929
+ var _selectedWarning$warn, _selectedWarning$warn2, _styledGeoJSON$featur;
11926
11930
  var bounds = _ref.bounds,
11927
11931
  _ref$source = _ref.source,
11928
11932
  source = _ref$source === void 0 ? 'app' : _ref$source;
@@ -11960,6 +11964,31 @@ var AreaObjectLoaderConnect = function AreaObjectLoaderConnect(_ref) {
11960
11964
  var warningStatus = useSelector(function (store) {
11961
11965
  return getPublicWarningStatus(store);
11962
11966
  });
11967
+ var selectedWarning = useSelector(function (store) {
11968
+ return getPublicWarning(store);
11969
+ });
11970
+ var isAviationWarning = (selectedWarning == null ? void 0 : selectedWarning.warningDetail.level) === 'SIG' || (selectedWarning == null ? void 0 : selectedWarning.warningDetail.level) === 'AIR';
11971
+ var styledGeoJSON = warningLevelFeatureColors(selectedWarning == null || (_selectedWarning$warn = selectedWarning.warningDetail) == null ? void 0 : _selectedWarning$warn.level, selectedWarning == null || (_selectedWarning$warn2 = selectedWarning.warningDetail) == null || (_selectedWarning$warn2 = _selectedWarning$warn2.areas) == null || (_selectedWarning$warn2 = _selectedWarning$warn2[0]) == null ? void 0 : _selectedWarning$warn2.geoJSON, isAviationWarning);
11972
+ // Inject warning level into feature properties to be read in OlMapViewConnect
11973
+ if (styledGeoJSON && (_styledGeoJSON$featur = styledGeoJSON.features) != null && _styledGeoJSON$featur.length) {
11974
+ styledGeoJSON.features.forEach(function (feature) {
11975
+ // eslint-disable-next-line no-param-reassign
11976
+ feature.properties = Object.assign({}, feature.properties, {
11977
+ warningLevel: selectedWarning == null ? void 0 : selectedWarning.warningDetail.level,
11978
+ hover: true
11979
+ });
11980
+ });
11981
+ }
11982
+ var sharedData = React__default.useMemo(function () {
11983
+ var _selectedWarning$warn3;
11984
+ return {
11985
+ features: [{
11986
+ id: (selectedWarning == null || (_selectedWarning$warn3 = selectedWarning.warningDetail.areas) == null || (_selectedWarning$warn3 = _selectedWarning$warn3[0]) == null ? void 0 : _selectedWarning$warn3.areaId) || '',
11987
+ geoJSON: styledGeoJSON
11988
+ }]
11989
+ };
11990
+ }, [selectedWarning, styledGeoJSON]);
11991
+ useUpdateSharedData(sharedData, 'warning-dialog');
11963
11992
  var fetchItems = function fetchItems() {
11964
11993
  dispatch(uiActions.setErrorDialog({
11965
11994
  error: '',
@@ -12219,6 +12248,21 @@ var PublicWarningsFormDialogConnect = function PublicWarningsFormDialogConnect(_
12219
12248
  return _ref3.apply(this, arguments);
12220
12249
  };
12221
12250
  }();
12251
+ var panelId = useSelector(function (store) {
12252
+ return getPublicWarningPanelId(store);
12253
+ });
12254
+ var linkedMaps = useSelector(function (store) {
12255
+ return genericSelectors.getLinkedMaps(store, panelId);
12256
+ });
12257
+ React__default.useEffect(function () {
12258
+ if (linkedMaps) {
12259
+ dispatch(genericActions.updateLinkedMap({
12260
+ panelId: 'warning-dialog',
12261
+ mapIds: linkedMaps
12262
+ }));
12263
+ }
12264
+ // eslint-disable-next-line react-hooks/exhaustive-deps
12265
+ }, [dispatch, linkedMaps == null ? void 0 : linkedMaps.join(',')]);
12222
12266
  React__default.useEffect(function () {
12223
12267
  if (editor !== (selectedWarning == null ? void 0 : selectedWarning.editor) && status !== 'TODO') {
12224
12268
  void setIsEditor(editor !== (auth == null ? void 0 : auth.username));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opengeoweb/warnings",
3
- "version": "12.4.1",
3
+ "version": "12.4.2",
4
4
  "description": "GeoWeb warinings library for the opengeoweb project",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {
@@ -8,25 +8,25 @@
8
8
  "url": "git@gitlab.com:opengeoweb/opengeoweb.git"
9
9
  },
10
10
  "dependencies": {
11
- "@opengeoweb/api": "12.4.1",
12
- "@opengeoweb/shared": "12.4.1",
13
- "@opengeoweb/store": "12.4.1",
14
- "@opengeoweb/webmap-react": "12.4.1",
11
+ "@opengeoweb/api": "12.4.2",
12
+ "@opengeoweb/shared": "12.4.2",
13
+ "@opengeoweb/store": "12.4.2",
14
+ "@opengeoweb/webmap-react": "12.4.2",
15
15
  "@tanstack/react-query": "^5.69.2",
16
16
  "react-redux": "^9.2.0",
17
- "@opengeoweb/theme": "12.4.1",
18
- "@opengeoweb/form-fields": "12.4.1",
17
+ "@opengeoweb/theme": "12.4.2",
18
+ "@opengeoweb/form-fields": "12.4.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": "12.4.1",
22
+ "@opengeoweb/snackbar": "12.4.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": "12.4.1",
27
- "@opengeoweb/webmap": "12.4.1",
28
- "@opengeoweb/authentication": "12.4.1",
29
- "@opengeoweb/sigmet-airmet": "12.4.1",
26
+ "@opengeoweb/core": "12.4.2",
27
+ "@opengeoweb/webmap": "12.4.2",
28
+ "@opengeoweb/authentication": "12.4.2",
29
+ "@opengeoweb/sigmet-airmet": "12.4.2",
30
30
  "react-i18next": "^15.1.1",
31
31
  "i18next": "^25.0.1",
32
32
  "@mui/material": "^7.0.1",
@@ -232,3 +232,24 @@ export declare const getWarningType: ((state: WarningModuleStore) => import("./t
232
232
  argsMemoize: typeof import("reselect").weakMapMemoize;
233
233
  memoize: typeof import("reselect").weakMapMemoize;
234
234
  };
235
+ export declare const getPublicWarningPanelId: ((state: WarningModuleStore) => string) & {
236
+ clearCache: () => void;
237
+ resultsCount: () => number;
238
+ resetResultsCount: () => void;
239
+ } & {
240
+ resultFunc: (resultFuncArgs_0: WarningFormState) => string;
241
+ memoizedResultFunc: ((resultFuncArgs_0: WarningFormState) => string) & {
242
+ clearCache: () => void;
243
+ resultsCount: () => number;
244
+ resetResultsCount: () => void;
245
+ };
246
+ lastResult: () => string;
247
+ dependencies: [(store: WarningModuleStore) => WarningFormState];
248
+ recomputations: () => number;
249
+ resetRecomputations: () => void;
250
+ dependencyRecomputations: () => number;
251
+ resetDependencyRecomputations: () => void;
252
+ } & {
253
+ argsMemoize: typeof import("reselect").weakMapMemoize;
254
+ memoize: typeof import("reselect").weakMapMemoize;
255
+ };