@opengeoweb/sigmet-airmet 8.4.0 → 8.4.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 +43 -19
- package/package.json +10 -10
package/index.esm.js
CHANGED
|
@@ -945,7 +945,7 @@ var getMaxCloudLowerLevelValue = function getMaxCloudLowerLevelValue(unit, selec
|
|
|
945
945
|
// Return max value for selected unit - if not present in list, return null
|
|
946
946
|
return cloud_lower_level_max !== undefined && cloud_lower_level_max[unit] ? cloud_lower_level_max[unit] : null;
|
|
947
947
|
};
|
|
948
|
-
// Retrieve
|
|
948
|
+
// Retrieve max value from config - if not set, there is no max value for this unit so we return null
|
|
949
949
|
var getMaxLevelValue = function getMaxLevelValue(unit, selectedFIR, productConfig) {
|
|
950
950
|
// Use first FIR in list if no FIR selected
|
|
951
951
|
var _getActiveFIRArea5 = getActiveFIRArea(selectedFIR, productConfig),
|
|
@@ -1496,17 +1496,25 @@ var Levels = function Levels(_ref) {
|
|
|
1496
1496
|
unregister = _useFormContext.unregister;
|
|
1497
1497
|
var _useDraftFormHelpers = useDraftFormHelpers(),
|
|
1498
1498
|
isRequired = _useDraftFormHelpers.isRequired;
|
|
1499
|
+
var level = watch('level.value');
|
|
1499
1500
|
var levelInfoMode = watch('levelInfoMode');
|
|
1501
|
+
var isRadioactiveCloud = watch('phenomenon') === 'RDOACT_CLD';
|
|
1500
1502
|
var getFIRValue = function getFIRValue() {
|
|
1501
1503
|
return getValues('locationIndicatorATSR');
|
|
1502
1504
|
};
|
|
1503
1505
|
// Get allowed level units based on selected FIR - if no FIR selected, allow all default units
|
|
1504
1506
|
var allowedLevelUnitsForFir = getAllowedUnits(getFIRValue(), productConfig, 'level_unit', LevelUnits);
|
|
1507
|
+
var radioactiveCloudLevel = getMaxLevelValue(LevelUnits.FL, getFIRValue(), productConfig);
|
|
1505
1508
|
React__default.useEffect(function () {
|
|
1506
1509
|
if (levelInfoMode !== 'BETW') {
|
|
1507
1510
|
unregister('lowerLevel');
|
|
1508
1511
|
}
|
|
1509
|
-
|
|
1512
|
+
if (isRadioactiveCloud) {
|
|
1513
|
+
setValue('level.unit', 'FL');
|
|
1514
|
+
setValue('level.value', radioactiveCloudLevel);
|
|
1515
|
+
triggerValidations(['level.value'], getValues, trigger);
|
|
1516
|
+
}
|
|
1517
|
+
}, [getValues, isRadioactiveCloud, levelInfoMode, radioactiveCloudLevel, setValue, trigger, unregister]);
|
|
1510
1518
|
return /*#__PURE__*/React__default.createElement(ProductFormFieldLayout, {
|
|
1511
1519
|
title: "Levels",
|
|
1512
1520
|
sx: styles$2.containerItem
|
|
@@ -1520,7 +1528,7 @@ var Levels = function Levels(_ref) {
|
|
|
1520
1528
|
isRequired: isRequired
|
|
1521
1529
|
}
|
|
1522
1530
|
},
|
|
1523
|
-
disabled: isDisabled,
|
|
1531
|
+
disabled: isDisabled || isRadioactiveCloud,
|
|
1524
1532
|
isReadOnly: isReadOnly,
|
|
1525
1533
|
onChange: function onChange() {
|
|
1526
1534
|
// Reset default value for the level value to '' so when it rerenders it uses this empty default value
|
|
@@ -1534,8 +1542,8 @@ var Levels = function Levels(_ref) {
|
|
|
1534
1542
|
label: "At",
|
|
1535
1543
|
checked: levelInfoMode === 'AT' || levelInfoMode === 'TOPS',
|
|
1536
1544
|
"data-testid": "levels-AT",
|
|
1537
|
-
disabled: isDisabled
|
|
1538
|
-
}), levelInfoMode === 'AT' || levelInfoMode === 'TOPS' ? /*#__PURE__*/React__default.createElement(Grid, {
|
|
1545
|
+
disabled: isDisabled || isRadioactiveCloud
|
|
1546
|
+
}), (levelInfoMode === 'AT' || levelInfoMode === 'TOPS') && !isRadioactiveCloud ? /*#__PURE__*/React__default.createElement(Grid, {
|
|
1539
1547
|
item: true,
|
|
1540
1548
|
xs: 12,
|
|
1541
1549
|
container: true,
|
|
@@ -1626,7 +1634,7 @@ var Levels = function Levels(_ref) {
|
|
|
1626
1634
|
label: "Between",
|
|
1627
1635
|
checked: levelInfoMode === 'BETW' || levelInfoMode === 'BETW_SFC',
|
|
1628
1636
|
"data-testid": "levels-BETW",
|
|
1629
|
-
disabled: isDisabled
|
|
1637
|
+
disabled: isDisabled || isRadioactiveCloud
|
|
1630
1638
|
}), levelInfoMode === 'BETW' || levelInfoMode === 'BETW_SFC' ? /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(Grid, {
|
|
1631
1639
|
item: true,
|
|
1632
1640
|
xs: 12,
|
|
@@ -1656,7 +1664,7 @@ var Levels = function Levels(_ref) {
|
|
|
1656
1664
|
},
|
|
1657
1665
|
size: "small",
|
|
1658
1666
|
sx: styles$2.unit,
|
|
1659
|
-
disabled: isDisabled,
|
|
1667
|
+
disabled: isDisabled || isRadioactiveCloud,
|
|
1660
1668
|
isReadOnly: isReadOnly,
|
|
1661
1669
|
defaultValue: 'FL',
|
|
1662
1670
|
onChange: function onChange() {
|
|
@@ -1673,6 +1681,7 @@ var Levels = function Levels(_ref) {
|
|
|
1673
1681
|
xs: 8,
|
|
1674
1682
|
md: 6
|
|
1675
1683
|
}, /*#__PURE__*/React__default.createElement(ReactHookFormNumberField, {
|
|
1684
|
+
value: level || '',
|
|
1676
1685
|
name: "level.value",
|
|
1677
1686
|
label: "Upper level",
|
|
1678
1687
|
sx: styles$2.levelField,
|
|
@@ -1701,7 +1710,7 @@ var Levels = function Levels(_ref) {
|
|
|
1701
1710
|
}
|
|
1702
1711
|
}
|
|
1703
1712
|
},
|
|
1704
|
-
disabled: isDisabled,
|
|
1713
|
+
disabled: isDisabled || isRadioactiveCloud,
|
|
1705
1714
|
isReadOnly: isReadOnly,
|
|
1706
1715
|
onChange: function onChange() {
|
|
1707
1716
|
triggerValidations(['lowerLevel.value'], getValues, trigger);
|
|
@@ -1729,7 +1738,7 @@ var Levels = function Levels(_ref) {
|
|
|
1729
1738
|
},
|
|
1730
1739
|
name: "checkedF",
|
|
1731
1740
|
color: "secondary",
|
|
1732
|
-
disabled: isDisabled
|
|
1741
|
+
disabled: isDisabled || isRadioactiveCloud
|
|
1733
1742
|
}),
|
|
1734
1743
|
"data-testid": "levels-SFC",
|
|
1735
1744
|
label: "SFC"
|
|
@@ -1808,7 +1817,7 @@ var Levels = function Levels(_ref) {
|
|
|
1808
1817
|
}))))) : null, /*#__PURE__*/React__default.createElement(RadioButtonAndLabel, {
|
|
1809
1818
|
value: "ABV",
|
|
1810
1819
|
label: "Above",
|
|
1811
|
-
disabled: isDisabled,
|
|
1820
|
+
disabled: isDisabled || isRadioactiveCloud,
|
|
1812
1821
|
checked: levelInfoMode === 'ABV' || levelInfoMode === 'TOPS_ABV',
|
|
1813
1822
|
"data-testid": "levels-ABV"
|
|
1814
1823
|
}), levelInfoMode === 'ABV' || levelInfoMode === 'TOPS_ABV' ? /*#__PURE__*/React__default.createElement(Grid, {
|
|
@@ -2006,7 +2015,8 @@ var ObservationForecastTime = function ObservationForecastTime(_ref) {
|
|
|
2006
2015
|
onChange: function onChange() {
|
|
2007
2016
|
return _onChange();
|
|
2008
2017
|
},
|
|
2009
|
-
sx: styles$2.helperText
|
|
2018
|
+
sx: styles$2.helperText,
|
|
2019
|
+
"data-testid": "obs-fcst-time"
|
|
2010
2020
|
})) : null;
|
|
2011
2021
|
};
|
|
2012
2022
|
|
|
@@ -2054,6 +2064,12 @@ var Phenomenon = function Phenomenon(_ref) {
|
|
|
2054
2064
|
onChange: function onChange() {
|
|
2055
2065
|
if (getValues('movementType') === 'NO_VA_EXP') {
|
|
2056
2066
|
setValue('movementType', null);
|
|
2067
|
+
} else if (getValues('phenomenon') === 'RDOACT_CLD') {
|
|
2068
|
+
// By definition, phenomenon 'RDOACT_CLD'shall not ever move but stay stationary
|
|
2069
|
+
setValue('movementType', 'STATIONARY');
|
|
2070
|
+
// Also by definition, phenomenon 'RDOACT_CLD' is strictly defined to always span from surface to upper level
|
|
2071
|
+
// with no lower explicit level values defined, hence level mode shall be set to 'BETW_SFC' instead of 'BETW'.
|
|
2072
|
+
setValue('levelInfoMode', 'BETW_SFC');
|
|
2057
2073
|
}
|
|
2058
2074
|
triggerValidations(['validDateStart', 'validDateEnd'], getValues, trigger);
|
|
2059
2075
|
_onChange();
|
|
@@ -2233,6 +2249,9 @@ var Progress = function Progress(_ref) {
|
|
|
2233
2249
|
unregister('endGeometryIntersect');
|
|
2234
2250
|
}
|
|
2235
2251
|
}, [movementType, unregister]);
|
|
2252
|
+
var isSigmet = productType === 'sigmet';
|
|
2253
|
+
var isRadioactiveCloud = watch('phenomenon') === 'RDOACT_CLD';
|
|
2254
|
+
var isVolcanicCloud = watch('phenomenon') === 'VA_CLD';
|
|
2236
2255
|
return /*#__PURE__*/React__default.createElement(ProductFormFieldLayout, {
|
|
2237
2256
|
title: "Progress",
|
|
2238
2257
|
sx: styles$2.containerItem
|
|
@@ -2256,22 +2275,27 @@ var Progress = function Progress(_ref) {
|
|
|
2256
2275
|
onChangeTool(deleteTool);
|
|
2257
2276
|
}
|
|
2258
2277
|
}
|
|
2259
|
-
},
|
|
2278
|
+
}, isVolcanicCloud && /*#__PURE__*/React__default.createElement(RadioButtonAndLabel, {
|
|
2260
2279
|
value: "NO_VA_EXP",
|
|
2261
2280
|
label: "No volcanic ash expected",
|
|
2262
2281
|
disabled: isDisabled,
|
|
2263
2282
|
"data-testid": "movementType-NO_VA_EXP"
|
|
2264
|
-
}), /*#__PURE__*/React__default.createElement(RadioButtonAndLabel, {
|
|
2283
|
+
}), /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(RadioButtonAndLabel, {
|
|
2265
2284
|
value: "STATIONARY",
|
|
2266
2285
|
label: "Stationary",
|
|
2267
|
-
disabled: isDisabled,
|
|
2286
|
+
disabled: isDisabled || isRadioactiveCloud,
|
|
2268
2287
|
"data-testid": "movementType-STATIONARY"
|
|
2269
2288
|
}), /*#__PURE__*/React__default.createElement(RadioButtonAndLabel, {
|
|
2270
2289
|
value: "MOVEMENT",
|
|
2271
2290
|
label: "Movement",
|
|
2272
|
-
disabled: isDisabled,
|
|
2291
|
+
disabled: isDisabled || isRadioactiveCloud,
|
|
2273
2292
|
"data-testid": "movementType-MOVEMENT"
|
|
2274
|
-
}),
|
|
2293
|
+
}), isSigmet && isRadioactiveCloud && /*#__PURE__*/React__default.createElement(RadioButtonAndLabel, {
|
|
2294
|
+
value: "FORECAST_POSITION",
|
|
2295
|
+
label: "End position",
|
|
2296
|
+
disabled: isDisabled || isRadioactiveCloud,
|
|
2297
|
+
"data-testid": "movementType-FORECAST_POSITION"
|
|
2298
|
+
})), movementType === 'MOVEMENT' && !isRadioactiveCloud && /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(Grid, {
|
|
2275
2299
|
item: true,
|
|
2276
2300
|
xs: 12
|
|
2277
2301
|
}, /*#__PURE__*/React__default.createElement(ReactHookFormSelect, {
|
|
@@ -2361,12 +2385,12 @@ var Progress = function Progress(_ref) {
|
|
|
2361
2385
|
onChange: function onChange(event) {
|
|
2362
2386
|
return event && event.stopPropagation();
|
|
2363
2387
|
}
|
|
2364
|
-
})))),
|
|
2388
|
+
})))), isSigmet && !isRadioactiveCloud && /*#__PURE__*/React__default.createElement(RadioButtonAndLabel, {
|
|
2365
2389
|
value: "FORECAST_POSITION",
|
|
2366
2390
|
label: "End position",
|
|
2367
2391
|
disabled: isDisabled,
|
|
2368
2392
|
"data-testid": "movementType-FORECAST_POSITION"
|
|
2369
|
-
})),
|
|
2393
|
+
})), isSigmet && !isRadioactiveCloud && movementType === 'FORECAST_POSITION' && /*#__PURE__*/React__default.createElement(Grid, {
|
|
2370
2394
|
item: true,
|
|
2371
2395
|
xs: 12,
|
|
2372
2396
|
"data-testid": "endGeometry",
|
|
@@ -15543,7 +15567,7 @@ var fakeSigmetList = [{
|
|
|
15543
15567
|
locationIndicatorATSR: 'EHAA',
|
|
15544
15568
|
locationIndicatorMWO: 'EHDB',
|
|
15545
15569
|
isObservationOrForecast: 'OBS',
|
|
15546
|
-
observationOrForecastTime: dateUtils.dateToString(dateUtils.
|
|
15570
|
+
observationOrForecastTime: dateUtils.dateToString(dateUtils.sub(dateUtils.utc(), {
|
|
15547
15571
|
hours: 1
|
|
15548
15572
|
})),
|
|
15549
15573
|
movementType: 'STATIONARY',
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@opengeoweb/sigmet-airmet",
|
|
3
|
-
"version": "8.4.
|
|
3
|
+
"version": "8.4.1",
|
|
4
4
|
"description": "GeoWeb Sigmet/Airmet library for the opengeoweb project",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"repository": {
|
|
@@ -13,15 +13,15 @@
|
|
|
13
13
|
"dependencies": {
|
|
14
14
|
"@mui/material": "5.12.0",
|
|
15
15
|
"@mui/system": "5.14.14",
|
|
16
|
-
"@opengeoweb/api": "8.4.
|
|
17
|
-
"@opengeoweb/authentication": "8.4.
|
|
18
|
-
"@opengeoweb/core": "8.4.
|
|
19
|
-
"@opengeoweb/form-fields": "8.4.
|
|
20
|
-
"@opengeoweb/shared": "8.4.
|
|
21
|
-
"@opengeoweb/store": "8.4.
|
|
22
|
-
"@opengeoweb/theme": "8.4.
|
|
23
|
-
"@opengeoweb/webmap": "8.4.
|
|
24
|
-
"@opengeoweb/webmap-react": "8.4.
|
|
16
|
+
"@opengeoweb/api": "8.4.1",
|
|
17
|
+
"@opengeoweb/authentication": "8.4.1",
|
|
18
|
+
"@opengeoweb/core": "8.4.1",
|
|
19
|
+
"@opengeoweb/form-fields": "8.4.1",
|
|
20
|
+
"@opengeoweb/shared": "8.4.1",
|
|
21
|
+
"@opengeoweb/store": "8.4.1",
|
|
22
|
+
"@opengeoweb/theme": "8.4.1",
|
|
23
|
+
"@opengeoweb/webmap": "8.4.1",
|
|
24
|
+
"@opengeoweb/webmap-react": "8.4.1",
|
|
25
25
|
"@redux-eggs/redux-toolkit": "2.2.0",
|
|
26
26
|
"@redux-eggs/saga-extension": "2.2.0",
|
|
27
27
|
"@reduxjs/toolkit": "1.9.7",
|