metar-taf-parser 1.2.0 → 2.0.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/README.md +85 -12
- package/dist/command/common.js +13 -10
- package/dist/command/metar/AltimeterCommand.d.ts +7 -0
- package/dist/command/metar/AltimeterCommand.js +26 -0
- package/dist/command/metar/AltimeterMercuryCommand.d.ts +7 -0
- package/dist/command/metar/AltimeterMercuryCommand.js +51 -0
- package/dist/command/metar/RunwayCommand.d.ts +7 -0
- package/dist/command/metar/RunwayCommand.js +60 -0
- package/dist/command/metar/TemperatureCommand.d.ts +7 -0
- package/dist/command/metar/TemperatureCommand.js +51 -0
- package/dist/command/metar.d.ts +1 -22
- package/dist/command/metar.js +10 -113
- package/dist/command/remark/CeilingHeightCommand.d.ts +18 -0
- package/dist/command/remark/CeilingHeightCommand.js +40 -0
- package/dist/command/remark/CeilingSecondLocationCommand.d.ts +12 -0
- package/dist/command/remark/CeilingSecondLocationCommand.js +40 -0
- package/dist/command/remark/Command.d.ts +8 -0
- package/dist/command/remark/Command.js +9 -0
- package/dist/command/remark/DefaultCommand.d.ts +11 -0
- package/dist/command/remark/DefaultCommand.js +38 -0
- package/dist/command/remark/HailSizeCommand.d.ts +11 -0
- package/dist/command/remark/HailSizeCommand.js +37 -0
- package/dist/command/remark/HourlyMaximumMinimumTemperatureCommand.d.ts +18 -0
- package/dist/command/remark/HourlyMaximumMinimumTemperatureCommand.js +39 -0
- package/dist/command/remark/HourlyMaximumTemperatureCommand.d.ts +14 -0
- package/dist/command/remark/HourlyMaximumTemperatureCommand.js +38 -0
- package/dist/command/remark/HourlyMinimumTemperatureCommand.d.ts +14 -0
- package/dist/command/remark/HourlyMinimumTemperatureCommand.js +38 -0
- package/dist/command/remark/HourlyPrecipitationAmountCommand.d.ts +14 -0
- package/dist/command/remark/HourlyPrecipitationAmountCommand.js +38 -0
- package/dist/command/remark/HourlyPressureCommand.d.ts +32 -0
- package/dist/command/remark/HourlyPressureCommand.js +40 -0
- package/dist/command/remark/HourlyTemperatureDewPointCommand.d.ts +18 -0
- package/dist/command/remark/HourlyTemperatureDewPointCommand.js +52 -0
- package/dist/command/remark/IceAccretionCommand.d.ts +15 -0
- package/dist/command/remark/IceAccretionCommand.js +38 -0
- package/dist/command/remark/ObscurationCommand.d.ts +14 -0
- package/dist/command/remark/ObscurationCommand.js +44 -0
- package/dist/command/remark/PrecipitationAmount24HourCommand.d.ts +14 -0
- package/dist/command/remark/PrecipitationAmount24HourCommand.js +39 -0
- package/dist/command/remark/PrecipitationAmount36HourCommand.d.ts +15 -0
- package/dist/command/remark/PrecipitationAmount36HourCommand.js +41 -0
- package/dist/command/remark/PrecipitationBegCommand.d.ts +15 -0
- package/dist/command/remark/PrecipitationBegCommand.js +45 -0
- package/dist/command/remark/PrecipitationBegEndCommand.d.ts +17 -0
- package/dist/command/remark/PrecipitationBegEndCommand.js +46 -0
- package/dist/command/remark/PrecipitationEndCommand.d.ts +15 -0
- package/dist/command/remark/PrecipitationEndCommand.js +45 -0
- package/dist/command/remark/PrevailingVisibilityCommand.d.ts +12 -0
- package/dist/command/remark/PrevailingVisibilityCommand.js +40 -0
- package/dist/command/remark/SeaLevelPressureCommand.d.ts +11 -0
- package/dist/command/remark/SeaLevelPressureCommand.js +39 -0
- package/dist/command/remark/SecondLocationVisibilityCommand.d.ts +12 -0
- package/dist/command/remark/SecondLocationVisibilityCommand.js +40 -0
- package/dist/command/remark/SectorVisibilityCommand.d.ts +13 -0
- package/dist/command/remark/SectorVisibilityCommand.js +41 -0
- package/dist/command/remark/SmallHailSizeCommand.d.ts +11 -0
- package/dist/command/remark/SmallHailSizeCommand.js +37 -0
- package/dist/command/remark/SnowDepthCommand.d.ts +11 -0
- package/dist/command/remark/SnowDepthCommand.js +38 -0
- package/dist/command/remark/SnowIncreaseCommand.d.ts +12 -0
- package/dist/command/remark/SnowIncreaseCommand.js +40 -0
- package/dist/command/remark/SnowPelletsCommand.d.ts +11 -0
- package/dist/command/remark/SnowPelletsCommand.js +37 -0
- package/dist/command/remark/SunshineDurationCommand.d.ts +11 -0
- package/dist/command/remark/SunshineDurationCommand.js +38 -0
- package/dist/command/remark/SurfaceVisibilityCommand.d.ts +11 -0
- package/dist/command/remark/SurfaceVisibilityCommand.js +38 -0
- package/dist/command/remark/ThunderStormLocationCommand.d.ts +12 -0
- package/dist/command/remark/ThunderStormLocationCommand.js +40 -0
- package/dist/command/remark/ThunderStormLocationMovingCommand.d.ts +19 -0
- package/dist/command/remark/ThunderStormLocationMovingCommand.js +42 -0
- package/dist/command/remark/TornadicActivityBegCommand.d.ts +16 -0
- package/dist/command/remark/TornadicActivityBegCommand.js +44 -0
- package/dist/command/remark/TornadicActivityBegEndCommand.d.ts +18 -0
- package/dist/command/remark/TornadicActivityBegEndCommand.js +46 -0
- package/dist/command/remark/TornadicActivityEndCommand.d.ts +16 -0
- package/dist/command/remark/TornadicActivityEndCommand.js +44 -0
- package/dist/command/remark/TowerVisibilityCommand.d.ts +11 -0
- package/dist/command/remark/TowerVisibilityCommand.js +38 -0
- package/dist/command/remark/VariableSkyCommand.d.ts +12 -0
- package/dist/command/remark/VariableSkyCommand.js +41 -0
- package/dist/command/remark/VariableSkyHeightCommand.d.ts +13 -0
- package/dist/command/remark/VariableSkyHeightCommand.js +43 -0
- package/dist/command/remark/VirgaDirectionCommand.d.ts +12 -0
- package/dist/command/remark/VirgaDirectionCommand.js +40 -0
- package/dist/command/remark/WaterEquivalentSnowCommand.d.ts +11 -0
- package/dist/command/remark/WaterEquivalentSnowCommand.js +38 -0
- package/dist/command/remark/WindPeakCommandCommand.d.ts +17 -0
- package/dist/command/remark/WindPeakCommandCommand.js +42 -0
- package/dist/command/remark/WindShiftCommand.d.ts +12 -0
- package/dist/command/remark/WindShiftCommand.js +38 -0
- package/dist/command/remark/WindShiftFropaCommand.d.ts +12 -0
- package/dist/command/remark/WindShiftFropaCommand.js +38 -0
- package/dist/command/remark.d.ts +100 -194
- package/dist/command/remark.js +135 -753
- package/dist/commons/converter.d.ts +14 -2
- package/dist/commons/converter.js +53 -5
- package/dist/commons/errors.d.ts +6 -2
- package/dist/commons/errors.js +15 -8
- package/dist/commons/i18n.d.ts +2 -2
- package/dist/commons/i18n.js +9 -3
- package/dist/dates/metar.d.ts +5 -0
- package/dist/dates/metar.js +8 -0
- package/dist/dates/taf.d.ts +28 -0
- package/dist/dates/taf.js +17 -0
- package/dist/forecast/forecast.d.ts +36 -0
- package/dist/forecast/forecast.js +73 -0
- package/dist/helpers/date.d.ts +11 -0
- package/dist/helpers/date.js +56 -0
- package/dist/helpers/helpers.d.ts +7 -0
- package/dist/helpers/helpers.js +14 -1
- package/dist/index.d.ts +23 -2
- package/dist/index.js +24 -7
- package/dist/model/enum.d.ts +44 -0
- package/dist/model/enum.js +50 -1
- package/dist/model/model.d.ts +84 -19
- package/dist/model/model.js +3 -1
- package/dist/parser/parser.d.ts +13 -6
- package/dist/parser/parser.js +63 -29
- package/package.json +3 -3
package/dist/command/remark.js
CHANGED
|
@@ -1,762 +1,90 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
3
|
-
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
4
|
-
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
5
|
-
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
6
|
-
};
|
|
7
|
-
var _CeilingHeightCommand_regex, _CeilingSecondLocationCommand_regex, _HailSizeCommand_regex, _HourlyMaximumMinimumTemperatureCommand_regex, _HourlyMaximumTemperatureCommand_regex, _HourlyMinimumTemperatureCommand_regex, _HourlyPrecipitationAmountCommand_regex, _HourlyPressureCommand_regex, _HourlyTemperatureDewPointCommand_regex, _IceAccretionCommand_regex, _ObscurationCommand_regex, _PrecipitationAmount24HourCommand_regex, _PrecipitationAmount36HourCommand_regex, _PrecipitationBegEndCommand_regex, _PrevailingVisibilityCommand_regex, _SeaLevelPressureCommand_regex, _SecondLocationVisibilityCommand_regex, _SectorVisibilityCommand_regex, _SmallHailSizeCommand_regex, _SnowDepthCommand_regex, _SnowIncreaseCommand_regex, _SnowPelletsCommand_regex, _SunshineDurationCommand_regex, _SurfaceVisibilityCommand_regex, _ThunderStormLocationCommand_regex, _ThunderStormLocationMovingCommand_regex, _TornadicActivityBegCommand_regex, _TornadicActivityBegEndCommand_regex, _TornadicActivityEndCommand_regex, _TowerVisibilityCommand_regex, _VariableSkyCommand_regex, _VariableSkyHeightCommand_regex, _VirgaDirectionCommand_regex, _WaterEquivalentSnowCommand_regex, _WindPeakCommand_regex, _WindShiftCommand_regex, _WindShiftFropaCommand_regex;
|
|
8
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
-
exports.
|
|
10
|
-
const
|
|
11
|
-
const
|
|
12
|
-
const
|
|
13
|
-
const
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
if (!matches)
|
|
51
|
-
throw new errors_1.UnexpectedParseError("Match not found");
|
|
52
|
-
const height = +matches[1] * 100;
|
|
53
|
-
remark.push((0, i18n_1.format)((0, i18n_1._)("Remark.Ceiling.Second.Location", this.locale), height, matches[2]));
|
|
54
|
-
return [code.replace(__classPrivateFieldGet(this, _CeilingSecondLocationCommand_regex, "f"), "").trim(), remark];
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
exports.CeilingSecondLocationCommand = CeilingSecondLocationCommand;
|
|
58
|
-
_CeilingSecondLocationCommand_regex = new WeakMap();
|
|
59
|
-
class HailSizeCommand extends Command {
|
|
60
|
-
constructor() {
|
|
61
|
-
super(...arguments);
|
|
62
|
-
_HailSizeCommand_regex.set(this, /^GR ((\d\/\d)|((\d) ?(\d\/\d)?))/);
|
|
63
|
-
}
|
|
64
|
-
canParse(code) {
|
|
65
|
-
return __classPrivateFieldGet(this, _HailSizeCommand_regex, "f").test(code);
|
|
66
|
-
}
|
|
67
|
-
execute(code, remark) {
|
|
68
|
-
const matches = code.match(__classPrivateFieldGet(this, _HailSizeCommand_regex, "f"));
|
|
69
|
-
if (!matches)
|
|
70
|
-
throw new errors_1.UnexpectedParseError("Match not found");
|
|
71
|
-
remark.push((0, i18n_1.format)((0, i18n_1._)("Remark.Hail.0", this.locale), matches[1]));
|
|
72
|
-
return [code.replace(__classPrivateFieldGet(this, _HailSizeCommand_regex, "f"), "").trim(), remark];
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
exports.HailSizeCommand = HailSizeCommand;
|
|
76
|
-
_HailSizeCommand_regex = new WeakMap();
|
|
77
|
-
class HourlyMaximumMinimumTemperatureCommand extends Command {
|
|
78
|
-
constructor() {
|
|
79
|
-
super(...arguments);
|
|
80
|
-
_HourlyMaximumMinimumTemperatureCommand_regex.set(this, /^4([01])(\d{3})([01])(\d{3})\b/);
|
|
81
|
-
}
|
|
82
|
-
canParse(code) {
|
|
83
|
-
return __classPrivateFieldGet(this, _HourlyMaximumMinimumTemperatureCommand_regex, "f").test(code);
|
|
84
|
-
}
|
|
85
|
-
execute(code, remark) {
|
|
86
|
-
const matches = code.match(__classPrivateFieldGet(this, _HourlyMaximumMinimumTemperatureCommand_regex, "f"));
|
|
87
|
-
if (!matches)
|
|
88
|
-
throw new errors_1.UnexpectedParseError("Match not found");
|
|
89
|
-
remark.push((0, i18n_1.format)((0, i18n_1._)("Remark.Hourly.Maximum.Minimum.Temperature", this.locale), (0, converter_1.convertTemperatureRemarks)(matches[1], matches[2]), (0, converter_1.convertTemperatureRemarks)(matches[3], matches[4])));
|
|
90
|
-
return [code.replace(__classPrivateFieldGet(this, _HourlyMaximumMinimumTemperatureCommand_regex, "f"), "").trim(), remark];
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
exports.HourlyMaximumMinimumTemperatureCommand = HourlyMaximumMinimumTemperatureCommand;
|
|
94
|
-
_HourlyMaximumMinimumTemperatureCommand_regex = new WeakMap();
|
|
95
|
-
class HourlyMaximumTemperatureCommand extends Command {
|
|
96
|
-
constructor() {
|
|
97
|
-
super(...arguments);
|
|
98
|
-
_HourlyMaximumTemperatureCommand_regex.set(this, /^1([01])(\d{3})\b/);
|
|
99
|
-
}
|
|
100
|
-
canParse(code) {
|
|
101
|
-
return __classPrivateFieldGet(this, _HourlyMaximumTemperatureCommand_regex, "f").test(code);
|
|
102
|
-
}
|
|
103
|
-
execute(code, remark) {
|
|
104
|
-
const matches = code.match(__classPrivateFieldGet(this, _HourlyMaximumTemperatureCommand_regex, "f"));
|
|
105
|
-
if (!matches)
|
|
106
|
-
throw new errors_1.UnexpectedParseError("Match not found");
|
|
107
|
-
remark.push((0, i18n_1.format)((0, i18n_1._)("Remark.Hourly.Maximum.Temperature", this.locale), (0, converter_1.convertTemperatureRemarks)(matches[1], matches[2])));
|
|
108
|
-
return [code.replace(__classPrivateFieldGet(this, _HourlyMaximumTemperatureCommand_regex, "f"), "").trim(), remark];
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
exports.HourlyMaximumTemperatureCommand = HourlyMaximumTemperatureCommand;
|
|
112
|
-
_HourlyMaximumTemperatureCommand_regex = new WeakMap();
|
|
113
|
-
class HourlyMinimumTemperatureCommand extends Command {
|
|
114
|
-
constructor() {
|
|
115
|
-
super(...arguments);
|
|
116
|
-
_HourlyMinimumTemperatureCommand_regex.set(this, /^2([01])(\d{3})\b/);
|
|
117
|
-
}
|
|
118
|
-
canParse(code) {
|
|
119
|
-
return __classPrivateFieldGet(this, _HourlyMinimumTemperatureCommand_regex, "f").test(code);
|
|
120
|
-
}
|
|
121
|
-
execute(code, remark) {
|
|
122
|
-
const matches = code.match(__classPrivateFieldGet(this, _HourlyMinimumTemperatureCommand_regex, "f"));
|
|
123
|
-
if (!matches)
|
|
124
|
-
throw new errors_1.UnexpectedParseError("Match not found");
|
|
125
|
-
remark.push((0, i18n_1.format)((0, i18n_1._)("Remark.Hourly.Minimum.Temperature", this.locale), (0, converter_1.convertTemperatureRemarks)(matches[1], matches[2])));
|
|
126
|
-
return [code.replace(__classPrivateFieldGet(this, _HourlyMinimumTemperatureCommand_regex, "f"), "").trim(), remark];
|
|
127
|
-
}
|
|
128
|
-
}
|
|
129
|
-
exports.HourlyMinimumTemperatureCommand = HourlyMinimumTemperatureCommand;
|
|
130
|
-
_HourlyMinimumTemperatureCommand_regex = new WeakMap();
|
|
131
|
-
class HourlyPrecipitationAmountCommand extends Command {
|
|
132
|
-
constructor() {
|
|
133
|
-
super(...arguments);
|
|
134
|
-
_HourlyPrecipitationAmountCommand_regex.set(this, /^P(\d{4})\b/);
|
|
135
|
-
}
|
|
136
|
-
canParse(code) {
|
|
137
|
-
return __classPrivateFieldGet(this, _HourlyPrecipitationAmountCommand_regex, "f").test(code);
|
|
138
|
-
}
|
|
139
|
-
execute(code, remark) {
|
|
140
|
-
const matches = code.match(__classPrivateFieldGet(this, _HourlyPrecipitationAmountCommand_regex, "f"));
|
|
141
|
-
if (!matches)
|
|
142
|
-
throw new errors_1.UnexpectedParseError("Match not found");
|
|
143
|
-
remark.push((0, i18n_1.format)((0, i18n_1._)("Remark.Precipitation.Amount.Hourly", this.locale), +matches[1]));
|
|
144
|
-
return [code.replace(__classPrivateFieldGet(this, _HourlyPrecipitationAmountCommand_regex, "f"), "").trim(), remark];
|
|
145
|
-
}
|
|
146
|
-
}
|
|
147
|
-
exports.HourlyPrecipitationAmountCommand = HourlyPrecipitationAmountCommand;
|
|
148
|
-
_HourlyPrecipitationAmountCommand_regex = new WeakMap();
|
|
149
|
-
class HourlyPressureCommand extends Command {
|
|
150
|
-
constructor() {
|
|
151
|
-
super(...arguments);
|
|
152
|
-
_HourlyPressureCommand_regex.set(this, /^5(\d)(\d{3})\b/);
|
|
153
|
-
}
|
|
154
|
-
canParse(code) {
|
|
155
|
-
return __classPrivateFieldGet(this, _HourlyPressureCommand_regex, "f").test(code);
|
|
156
|
-
}
|
|
157
|
-
execute(code, remark) {
|
|
158
|
-
const matches = code.match(__classPrivateFieldGet(this, _HourlyPressureCommand_regex, "f"));
|
|
159
|
-
if (!matches)
|
|
160
|
-
throw new errors_1.UnexpectedParseError("Match not found");
|
|
161
|
-
remark.push(`${(0, i18n_1._)(`Remark.Barometer.${+matches[1]}`, this.locale)} ${(0, i18n_1.format)((0, i18n_1._)("Remark.Pressure.Tendency", this.locale), +matches[2] / 10)}`);
|
|
162
|
-
return [code.replace(__classPrivateFieldGet(this, _HourlyPressureCommand_regex, "f"), "").trim(), remark];
|
|
163
|
-
}
|
|
164
|
-
}
|
|
165
|
-
exports.HourlyPressureCommand = HourlyPressureCommand;
|
|
166
|
-
_HourlyPressureCommand_regex = new WeakMap();
|
|
167
|
-
class HourlyTemperatureDewPointCommand extends Command {
|
|
168
|
-
constructor() {
|
|
169
|
-
super(...arguments);
|
|
170
|
-
_HourlyTemperatureDewPointCommand_regex.set(this, /^T([01])(\d{3})(([01])(\d{3}))?/);
|
|
171
|
-
}
|
|
172
|
-
canParse(code) {
|
|
173
|
-
return __classPrivateFieldGet(this, _HourlyTemperatureDewPointCommand_regex, "f").test(code);
|
|
174
|
-
}
|
|
175
|
-
execute(code, remark) {
|
|
176
|
-
const matches = code.match(__classPrivateFieldGet(this, _HourlyTemperatureDewPointCommand_regex, "f"));
|
|
177
|
-
if (!matches)
|
|
178
|
-
throw new errors_1.UnexpectedParseError("Match not found");
|
|
179
|
-
if (!matches[3]) {
|
|
180
|
-
remark.push((0, i18n_1.format)((0, i18n_1._)("Remark.Hourly.Temperature.0", this.locale), (0, converter_1.convertTemperatureRemarks)(matches[1], matches[2])));
|
|
181
|
-
}
|
|
182
|
-
else {
|
|
183
|
-
remark.push((0, i18n_1.format)((0, i18n_1._)("Remark.Hourly.Temperature.Dew.Point", this.locale), (0, converter_1.convertTemperatureRemarks)(matches[1], matches[2]), (0, converter_1.convertTemperatureRemarks)(matches[4], matches[5])));
|
|
184
|
-
}
|
|
185
|
-
return [code.replace(__classPrivateFieldGet(this, _HourlyTemperatureDewPointCommand_regex, "f"), "").trim(), remark];
|
|
186
|
-
}
|
|
187
|
-
}
|
|
188
|
-
exports.HourlyTemperatureDewPointCommand = HourlyTemperatureDewPointCommand;
|
|
189
|
-
_HourlyTemperatureDewPointCommand_regex = new WeakMap();
|
|
190
|
-
class IceAccretionCommand extends Command {
|
|
191
|
-
constructor() {
|
|
192
|
-
super(...arguments);
|
|
193
|
-
_IceAccretionCommand_regex.set(this, /^l(\d)(\d{3})\b/);
|
|
194
|
-
}
|
|
195
|
-
canParse(code) {
|
|
196
|
-
return __classPrivateFieldGet(this, _IceAccretionCommand_regex, "f").test(code);
|
|
197
|
-
}
|
|
198
|
-
execute(code, remark) {
|
|
199
|
-
const matches = code.match(__classPrivateFieldGet(this, _IceAccretionCommand_regex, "f"));
|
|
200
|
-
if (!matches)
|
|
201
|
-
throw new errors_1.UnexpectedParseError("Match not found");
|
|
202
|
-
remark.push((0, i18n_1.format)((0, i18n_1._)("Remark.Ice.Accretion.Amount", this.locale), +matches[2], +matches[1]));
|
|
203
|
-
return [code.replace(__classPrivateFieldGet(this, _IceAccretionCommand_regex, "f"), "").trim(), remark];
|
|
204
|
-
}
|
|
205
|
-
}
|
|
206
|
-
exports.IceAccretionCommand = IceAccretionCommand;
|
|
207
|
-
_IceAccretionCommand_regex = new WeakMap();
|
|
208
|
-
class ObscurationCommand extends Command {
|
|
209
|
-
constructor() {
|
|
210
|
-
super(...arguments);
|
|
211
|
-
_ObscurationCommand_regex.set(this, /^([A-Z]{2}) ([A-Z]{3})(\d{3})/);
|
|
212
|
-
}
|
|
213
|
-
canParse(code) {
|
|
214
|
-
return __classPrivateFieldGet(this, _ObscurationCommand_regex, "f").test(code);
|
|
215
|
-
}
|
|
216
|
-
execute(code, remark) {
|
|
217
|
-
const matches = code.match(__classPrivateFieldGet(this, _ObscurationCommand_regex, "f"));
|
|
218
|
-
if (!matches)
|
|
219
|
-
throw new errors_1.UnexpectedParseError("Match not found");
|
|
220
|
-
const layer = (0, i18n_1._)(`CloudQuantity.${matches[2]}`, this.locale);
|
|
221
|
-
const height = 100 * +matches[3];
|
|
222
|
-
const detail = (0, i18n_1._)(`Phenomenon.${matches[1]}`, this.locale);
|
|
223
|
-
remark.push((0, i18n_1.format)((0, i18n_1._)("Remark.Obscuration", this.locale), layer, height, detail));
|
|
224
|
-
return [code.replace(__classPrivateFieldGet(this, _ObscurationCommand_regex, "f"), "").trim(), remark];
|
|
225
|
-
}
|
|
226
|
-
}
|
|
227
|
-
exports.ObscurationCommand = ObscurationCommand;
|
|
228
|
-
_ObscurationCommand_regex = new WeakMap();
|
|
229
|
-
class PrecipitationAmount24HourCommand extends Command {
|
|
230
|
-
constructor() {
|
|
231
|
-
super(...arguments);
|
|
232
|
-
_PrecipitationAmount24HourCommand_regex.set(this, /^7(\d{4})\b/);
|
|
233
|
-
}
|
|
234
|
-
canParse(code) {
|
|
235
|
-
return __classPrivateFieldGet(this, _PrecipitationAmount24HourCommand_regex, "f").test(code);
|
|
236
|
-
}
|
|
237
|
-
execute(code, remark) {
|
|
238
|
-
const matches = code.match(__classPrivateFieldGet(this, _PrecipitationAmount24HourCommand_regex, "f"));
|
|
239
|
-
if (!matches)
|
|
240
|
-
throw new errors_1.UnexpectedParseError("Match not found");
|
|
241
|
-
remark.push((0, i18n_1.format)((0, i18n_1._)("Remark.Precipitation.Amount.24", this.locale), (0, converter_1.convertPrecipitationAmount)(matches[1])));
|
|
242
|
-
return [code.replace(__classPrivateFieldGet(this, _PrecipitationAmount24HourCommand_regex, "f"), "").trim(), remark];
|
|
243
|
-
}
|
|
244
|
-
}
|
|
245
|
-
exports.PrecipitationAmount24HourCommand = PrecipitationAmount24HourCommand;
|
|
246
|
-
_PrecipitationAmount24HourCommand_regex = new WeakMap();
|
|
247
|
-
class PrecipitationAmount36HourCommand extends Command {
|
|
248
|
-
constructor() {
|
|
249
|
-
super(...arguments);
|
|
250
|
-
_PrecipitationAmount36HourCommand_regex.set(this, /^([36])(\d{4})\b/);
|
|
251
|
-
}
|
|
252
|
-
canParse(code) {
|
|
253
|
-
return __classPrivateFieldGet(this, _PrecipitationAmount36HourCommand_regex, "f").test(code);
|
|
254
|
-
}
|
|
255
|
-
execute(code, remark) {
|
|
256
|
-
const matches = code.match(__classPrivateFieldGet(this, _PrecipitationAmount36HourCommand_regex, "f"));
|
|
257
|
-
if (!matches)
|
|
258
|
-
throw new errors_1.UnexpectedParseError("Match not found");
|
|
259
|
-
remark.push((0, i18n_1.format)((0, i18n_1._)("Remark.Precipitation.Amount.3.6", this.locale), matches[1], (0, converter_1.convertPrecipitationAmount)(matches[2])));
|
|
260
|
-
return [code.replace(__classPrivateFieldGet(this, _PrecipitationAmount36HourCommand_regex, "f"), "").trim(), remark];
|
|
261
|
-
}
|
|
262
|
-
}
|
|
263
|
-
exports.PrecipitationAmount36HourCommand = PrecipitationAmount36HourCommand;
|
|
264
|
-
_PrecipitationAmount36HourCommand_regex = new WeakMap();
|
|
265
|
-
class PrecipitationBegEndCommand extends Command {
|
|
266
|
-
constructor() {
|
|
267
|
-
super(...arguments);
|
|
268
|
-
_PrecipitationBegEndCommand_regex.set(this, /^(([A-Z]{2})?([A-Z]{2})B(\d{2})?(\d{2})E(\d{2})?(\d{2}))/);
|
|
269
|
-
}
|
|
270
|
-
canParse(code) {
|
|
271
|
-
return __classPrivateFieldGet(this, _PrecipitationBegEndCommand_regex, "f").test(code);
|
|
272
|
-
}
|
|
273
|
-
execute(code, remark) {
|
|
274
|
-
const matches = code.match(__classPrivateFieldGet(this, _PrecipitationBegEndCommand_regex, "f"));
|
|
275
|
-
if (!matches)
|
|
276
|
-
throw new errors_1.UnexpectedParseError("Match not found");
|
|
277
|
-
remark.push((0, i18n_1.format)((0, i18n_1._)("Remark.Precipitation.Beg.End", this.locale), matches[2] ? (0, i18n_1._)(`Descriptive.${matches[2]}`, this.locale) : "", (0, i18n_1._)(`Phenomenon.${matches[3]}`, this.locale), matches[4] || "", matches[5], matches[6] || "", matches[7]));
|
|
278
|
-
return [code.replace(__classPrivateFieldGet(this, _PrecipitationBegEndCommand_regex, "f"), "").trim(), remark];
|
|
279
|
-
}
|
|
280
|
-
}
|
|
281
|
-
exports.PrecipitationBegEndCommand = PrecipitationBegEndCommand;
|
|
282
|
-
_PrecipitationBegEndCommand_regex = new WeakMap();
|
|
283
|
-
class PrevailingVisibilityCommand extends Command {
|
|
284
|
-
constructor() {
|
|
285
|
-
super(...arguments);
|
|
286
|
-
_PrevailingVisibilityCommand_regex.set(this, /^VIS ((\d)*( )?(\d?\/?\d))V((\d)*( )?(\d?\/?\d))/);
|
|
287
|
-
}
|
|
288
|
-
canParse(code) {
|
|
289
|
-
return __classPrivateFieldGet(this, _PrevailingVisibilityCommand_regex, "f").test(code);
|
|
290
|
-
}
|
|
291
|
-
execute(code, remark) {
|
|
292
|
-
const matches = code.match(__classPrivateFieldGet(this, _PrevailingVisibilityCommand_regex, "f"));
|
|
293
|
-
if (!matches)
|
|
294
|
-
throw new errors_1.UnexpectedParseError("Match not found");
|
|
295
|
-
remark.push((0, i18n_1.format)((0, i18n_1._)("Remark.Variable.Prevailing.Visibility", this.locale), matches[1], matches[5]));
|
|
296
|
-
return [code.replace(__classPrivateFieldGet(this, _PrevailingVisibilityCommand_regex, "f"), "").trim(), remark];
|
|
297
|
-
}
|
|
298
|
-
}
|
|
299
|
-
exports.PrevailingVisibilityCommand = PrevailingVisibilityCommand;
|
|
300
|
-
_PrevailingVisibilityCommand_regex = new WeakMap();
|
|
301
|
-
class SeaLevelPressureCommand extends Command {
|
|
302
|
-
constructor() {
|
|
303
|
-
super(...arguments);
|
|
304
|
-
_SeaLevelPressureCommand_regex.set(this, /^SLP(\d{2})(\d)/);
|
|
305
|
-
}
|
|
306
|
-
canParse(code) {
|
|
307
|
-
return __classPrivateFieldGet(this, _SeaLevelPressureCommand_regex, "f").test(code);
|
|
308
|
-
}
|
|
309
|
-
execute(code, remark) {
|
|
310
|
-
const matches = code.match(__classPrivateFieldGet(this, _SeaLevelPressureCommand_regex, "f"));
|
|
311
|
-
if (!matches)
|
|
312
|
-
throw new errors_1.UnexpectedParseError("Match not found");
|
|
313
|
-
let pressure = matches[1].startsWith("9") ? "9" : "10";
|
|
314
|
-
pressure += matches[1] + "." + matches[2];
|
|
315
|
-
remark.push((0, i18n_1.format)((0, i18n_1._)("Remark.Sea.Level.Pressure", this.locale), pressure));
|
|
316
|
-
return [code.replace(__classPrivateFieldGet(this, _SeaLevelPressureCommand_regex, "f"), "").trim(), remark];
|
|
317
|
-
}
|
|
318
|
-
}
|
|
319
|
-
exports.SeaLevelPressureCommand = SeaLevelPressureCommand;
|
|
320
|
-
_SeaLevelPressureCommand_regex = new WeakMap();
|
|
321
|
-
class SecondLocationVisibilityCommand extends Command {
|
|
322
|
-
constructor() {
|
|
323
|
-
super(...arguments);
|
|
324
|
-
_SecondLocationVisibilityCommand_regex.set(this, /^VIS ((\d)*( )?(\d?\/?\d)) (\w+)/);
|
|
325
|
-
}
|
|
326
|
-
canParse(code) {
|
|
327
|
-
return __classPrivateFieldGet(this, _SecondLocationVisibilityCommand_regex, "f").test(code);
|
|
328
|
-
}
|
|
329
|
-
execute(code, remark) {
|
|
330
|
-
const matches = code.match(__classPrivateFieldGet(this, _SecondLocationVisibilityCommand_regex, "f"));
|
|
331
|
-
if (!matches)
|
|
332
|
-
throw new errors_1.UnexpectedParseError("Match not found");
|
|
333
|
-
remark.push((0, i18n_1.format)((0, i18n_1._)("Remark.Second.Location.Visibility", this.locale), matches[1], matches[5]));
|
|
334
|
-
return [code.replace(__classPrivateFieldGet(this, _SecondLocationVisibilityCommand_regex, "f"), "").trim(), remark];
|
|
335
|
-
}
|
|
336
|
-
}
|
|
337
|
-
exports.SecondLocationVisibilityCommand = SecondLocationVisibilityCommand;
|
|
338
|
-
_SecondLocationVisibilityCommand_regex = new WeakMap();
|
|
339
|
-
class SectorVisibilityCommand extends Command {
|
|
340
|
-
constructor() {
|
|
341
|
-
super(...arguments);
|
|
342
|
-
_SectorVisibilityCommand_regex.set(this, /^VIS ([A-Z]{1,2}) ((\d)*( )?(\d?\/?\d))/);
|
|
343
|
-
}
|
|
344
|
-
canParse(code) {
|
|
345
|
-
return __classPrivateFieldGet(this, _SectorVisibilityCommand_regex, "f").test(code);
|
|
346
|
-
}
|
|
347
|
-
execute(code, remark) {
|
|
348
|
-
const matches = code.match(__classPrivateFieldGet(this, _SectorVisibilityCommand_regex, "f"));
|
|
349
|
-
if (!matches)
|
|
350
|
-
throw new errors_1.UnexpectedParseError("Match not found");
|
|
351
|
-
remark.push((0, i18n_1.format)((0, i18n_1._)("Remark.Sector.Visibility", this.locale), (0, i18n_1._)(`Converter.${matches[1]}`, this.locale), matches[2]));
|
|
352
|
-
return [code.replace(__classPrivateFieldGet(this, _SectorVisibilityCommand_regex, "f"), "").trim(), remark];
|
|
353
|
-
}
|
|
354
|
-
}
|
|
355
|
-
exports.SectorVisibilityCommand = SectorVisibilityCommand;
|
|
356
|
-
_SectorVisibilityCommand_regex = new WeakMap();
|
|
357
|
-
class SmallHailSizeCommand extends Command {
|
|
358
|
-
constructor() {
|
|
359
|
-
super(...arguments);
|
|
360
|
-
_SmallHailSizeCommand_regex.set(this, /^GR LESS THAN ((\d )?(\d\/\d)?)/);
|
|
361
|
-
}
|
|
362
|
-
canParse(code) {
|
|
363
|
-
return __classPrivateFieldGet(this, _SmallHailSizeCommand_regex, "f").test(code);
|
|
364
|
-
}
|
|
365
|
-
execute(code, remark) {
|
|
366
|
-
const matches = code.match(__classPrivateFieldGet(this, _SmallHailSizeCommand_regex, "f"));
|
|
367
|
-
if (!matches)
|
|
368
|
-
throw new errors_1.UnexpectedParseError("Match not found");
|
|
369
|
-
remark.push((0, i18n_1.format)((0, i18n_1._)("Remark.Hail.LesserThan", this.locale), matches[1]));
|
|
370
|
-
return [code.replace(__classPrivateFieldGet(this, _SmallHailSizeCommand_regex, "f"), "").trim(), remark];
|
|
371
|
-
}
|
|
372
|
-
}
|
|
373
|
-
exports.SmallHailSizeCommand = SmallHailSizeCommand;
|
|
374
|
-
_SmallHailSizeCommand_regex = new WeakMap();
|
|
375
|
-
class SnowDepthCommand extends Command {
|
|
376
|
-
constructor() {
|
|
377
|
-
super(...arguments);
|
|
378
|
-
_SnowDepthCommand_regex.set(this, /^4\/(\d{3})/);
|
|
379
|
-
}
|
|
380
|
-
canParse(code) {
|
|
381
|
-
return __classPrivateFieldGet(this, _SnowDepthCommand_regex, "f").test(code);
|
|
382
|
-
}
|
|
383
|
-
execute(code, remark) {
|
|
384
|
-
const matches = code.match(__classPrivateFieldGet(this, _SnowDepthCommand_regex, "f"));
|
|
385
|
-
if (!matches)
|
|
386
|
-
throw new errors_1.UnexpectedParseError("Match not found");
|
|
387
|
-
remark.push((0, i18n_1.format)((0, i18n_1._)("Remark.Snow.Depth", this.locale), +matches[1]));
|
|
388
|
-
return [code.replace(__classPrivateFieldGet(this, _SnowDepthCommand_regex, "f"), "").trim(), remark];
|
|
389
|
-
}
|
|
390
|
-
}
|
|
391
|
-
exports.SnowDepthCommand = SnowDepthCommand;
|
|
392
|
-
_SnowDepthCommand_regex = new WeakMap();
|
|
393
|
-
class SnowIncreaseCommand extends Command {
|
|
394
|
-
constructor() {
|
|
395
|
-
super(...arguments);
|
|
396
|
-
_SnowIncreaseCommand_regex.set(this, /^SNINCR (\d+)\/(\d+)/);
|
|
397
|
-
}
|
|
398
|
-
canParse(code) {
|
|
399
|
-
return __classPrivateFieldGet(this, _SnowIncreaseCommand_regex, "f").test(code);
|
|
400
|
-
}
|
|
401
|
-
execute(code, remark) {
|
|
402
|
-
const matches = code.match(__classPrivateFieldGet(this, _SnowIncreaseCommand_regex, "f"));
|
|
403
|
-
if (!matches)
|
|
404
|
-
throw new errors_1.UnexpectedParseError("Match not found");
|
|
405
|
-
remark.push((0, i18n_1.format)((0, i18n_1._)("Remark.Snow.Increasing.Rapidly", this.locale), matches[1], matches[2]));
|
|
406
|
-
return [code.replace(__classPrivateFieldGet(this, _SnowIncreaseCommand_regex, "f"), "").trim(), remark];
|
|
407
|
-
}
|
|
408
|
-
}
|
|
409
|
-
exports.SnowIncreaseCommand = SnowIncreaseCommand;
|
|
410
|
-
_SnowIncreaseCommand_regex = new WeakMap();
|
|
411
|
-
class SnowPelletsCommand extends Command {
|
|
412
|
-
constructor() {
|
|
413
|
-
super(...arguments);
|
|
414
|
-
_SnowPelletsCommand_regex.set(this, /^GS (LGT|MOD|HVY)/);
|
|
415
|
-
}
|
|
416
|
-
canParse(code) {
|
|
417
|
-
return __classPrivateFieldGet(this, _SnowPelletsCommand_regex, "f").test(code);
|
|
418
|
-
}
|
|
419
|
-
execute(code, remark) {
|
|
420
|
-
const matches = code.match(__classPrivateFieldGet(this, _SnowPelletsCommand_regex, "f"));
|
|
421
|
-
if (!matches)
|
|
422
|
-
throw new errors_1.UnexpectedParseError("Match not found");
|
|
423
|
-
remark.push((0, i18n_1.format)((0, i18n_1._)("Remark.Snow.Pellets", this.locale), (0, i18n_1._)(`Remark.${matches[1]}`, this.locale)));
|
|
424
|
-
return [code.replace(__classPrivateFieldGet(this, _SnowPelletsCommand_regex, "f"), "").trim(), remark];
|
|
425
|
-
}
|
|
426
|
-
}
|
|
427
|
-
exports.SnowPelletsCommand = SnowPelletsCommand;
|
|
428
|
-
_SnowPelletsCommand_regex = new WeakMap();
|
|
429
|
-
class SunshineDurationCommand extends Command {
|
|
430
|
-
constructor() {
|
|
431
|
-
super(...arguments);
|
|
432
|
-
_SunshineDurationCommand_regex.set(this, /^98(\d{3})/);
|
|
433
|
-
}
|
|
434
|
-
canParse(code) {
|
|
435
|
-
return __classPrivateFieldGet(this, _SunshineDurationCommand_regex, "f").test(code);
|
|
436
|
-
}
|
|
437
|
-
execute(code, remark) {
|
|
438
|
-
const matches = code.match(__classPrivateFieldGet(this, _SunshineDurationCommand_regex, "f"));
|
|
439
|
-
if (!matches)
|
|
440
|
-
throw new errors_1.UnexpectedParseError("Match not found");
|
|
441
|
-
remark.push((0, i18n_1.format)((0, i18n_1._)("Remark.Sunshine.Duration", this.locale), +matches[1]));
|
|
442
|
-
return [code.replace(__classPrivateFieldGet(this, _SunshineDurationCommand_regex, "f"), "").trim(), remark];
|
|
443
|
-
}
|
|
444
|
-
}
|
|
445
|
-
exports.SunshineDurationCommand = SunshineDurationCommand;
|
|
446
|
-
_SunshineDurationCommand_regex = new WeakMap();
|
|
447
|
-
class SurfaceVisibilityCommand extends Command {
|
|
448
|
-
constructor() {
|
|
449
|
-
super(...arguments);
|
|
450
|
-
_SurfaceVisibilityCommand_regex.set(this, /^SFC VIS ((\d)*( )?(\d?\/?\d))/);
|
|
451
|
-
}
|
|
452
|
-
canParse(code) {
|
|
453
|
-
return __classPrivateFieldGet(this, _SurfaceVisibilityCommand_regex, "f").test(code);
|
|
454
|
-
}
|
|
455
|
-
execute(code, remark) {
|
|
456
|
-
const matches = code.match(__classPrivateFieldGet(this, _SurfaceVisibilityCommand_regex, "f"));
|
|
457
|
-
if (!matches)
|
|
458
|
-
throw new errors_1.UnexpectedParseError("Match not found");
|
|
459
|
-
remark.push((0, i18n_1.format)((0, i18n_1._)("Remark.Surface.Visibility", this.locale), matches[1]));
|
|
460
|
-
return [code.replace(__classPrivateFieldGet(this, _SurfaceVisibilityCommand_regex, "f"), "").trim(), remark];
|
|
461
|
-
}
|
|
462
|
-
}
|
|
463
|
-
exports.SurfaceVisibilityCommand = SurfaceVisibilityCommand;
|
|
464
|
-
_SurfaceVisibilityCommand_regex = new WeakMap();
|
|
465
|
-
class ThunderStormLocationCommand extends Command {
|
|
466
|
-
constructor() {
|
|
467
|
-
super(...arguments);
|
|
468
|
-
_ThunderStormLocationCommand_regex.set(this, /^TS ([A-Z]{2})/);
|
|
469
|
-
}
|
|
470
|
-
canParse(code) {
|
|
471
|
-
return __classPrivateFieldGet(this, _ThunderStormLocationCommand_regex, "f").test(code);
|
|
472
|
-
}
|
|
473
|
-
execute(code, remark) {
|
|
474
|
-
const matches = code.match(__classPrivateFieldGet(this, _ThunderStormLocationCommand_regex, "f"));
|
|
475
|
-
if (!matches)
|
|
476
|
-
throw new errors_1.UnexpectedParseError("Match not found");
|
|
477
|
-
remark.push((0, i18n_1.format)((0, i18n_1._)("Remark.Thunderstorm.Location.0", this.locale), (0, i18n_1._)(`Converter.${matches[1]}`, this.locale)));
|
|
478
|
-
return [code.replace(__classPrivateFieldGet(this, _ThunderStormLocationCommand_regex, "f"), "").trim(), remark];
|
|
479
|
-
}
|
|
480
|
-
}
|
|
481
|
-
exports.ThunderStormLocationCommand = ThunderStormLocationCommand;
|
|
482
|
-
_ThunderStormLocationCommand_regex = new WeakMap();
|
|
483
|
-
class ThunderStormLocationMovingCommand extends Command {
|
|
484
|
-
constructor() {
|
|
485
|
-
super(...arguments);
|
|
486
|
-
_ThunderStormLocationMovingCommand_regex.set(this, /^TS ([A-Z]{2}) MOV ([A-Z]{2})/);
|
|
487
|
-
}
|
|
488
|
-
canParse(code) {
|
|
489
|
-
return __classPrivateFieldGet(this, _ThunderStormLocationMovingCommand_regex, "f").test(code);
|
|
490
|
-
}
|
|
491
|
-
execute(code, remark) {
|
|
492
|
-
const matches = code.match(__classPrivateFieldGet(this, _ThunderStormLocationMovingCommand_regex, "f"));
|
|
493
|
-
if (!matches)
|
|
494
|
-
throw new errors_1.UnexpectedParseError("Match not found");
|
|
495
|
-
remark.push((0, i18n_1.format)((0, i18n_1._)("Remark.Thunderstorm.Location.Moving", this.locale), (0, i18n_1._)(`Converter.${matches[1]}`, this.locale), (0, i18n_1._)(`Converter.${matches[2]}`, this.locale)));
|
|
496
|
-
return [code.replace(__classPrivateFieldGet(this, _ThunderStormLocationMovingCommand_regex, "f"), "").trim(), remark];
|
|
497
|
-
}
|
|
498
|
-
}
|
|
499
|
-
exports.ThunderStormLocationMovingCommand = ThunderStormLocationMovingCommand;
|
|
500
|
-
_ThunderStormLocationMovingCommand_regex = new WeakMap();
|
|
501
|
-
class TornadicActivityBegCommand extends Command {
|
|
502
|
-
constructor() {
|
|
503
|
-
super(...arguments);
|
|
504
|
-
_TornadicActivityBegCommand_regex.set(this, /^(TORNADO|FUNNEL CLOUD|WATERSPOUT) (B(\d{2})?(\d{2}))( (\d+)? ([A-Z]{1,2})?)?/);
|
|
505
|
-
}
|
|
506
|
-
canParse(code) {
|
|
507
|
-
return __classPrivateFieldGet(this, _TornadicActivityBegCommand_regex, "f").test(code);
|
|
508
|
-
}
|
|
509
|
-
execute(code, remark) {
|
|
510
|
-
const matches = code.match(__classPrivateFieldGet(this, _TornadicActivityBegCommand_regex, "f"));
|
|
511
|
-
if (!matches)
|
|
512
|
-
throw new errors_1.UnexpectedParseError("Match not found");
|
|
513
|
-
remark.push((0, i18n_1.format)((0, i18n_1._)("Remark.Tornadic.Activity.Beginning", this.locale), (0, i18n_1._)(`Remark.${matches[1].replace(" ", "")}`, this.locale), matches[3] || "", matches[4], matches[6], (0, i18n_1._)(`Converter.${matches[7]}`, this.locale)));
|
|
514
|
-
return [code.replace(__classPrivateFieldGet(this, _TornadicActivityBegCommand_regex, "f"), "").trim(), remark];
|
|
515
|
-
}
|
|
516
|
-
}
|
|
517
|
-
exports.TornadicActivityBegCommand = TornadicActivityBegCommand;
|
|
518
|
-
_TornadicActivityBegCommand_regex = new WeakMap();
|
|
519
|
-
class TornadicActivityBegEndCommand extends Command {
|
|
520
|
-
constructor() {
|
|
521
|
-
super(...arguments);
|
|
522
|
-
_TornadicActivityBegEndCommand_regex.set(this, /^(TORNADO|FUNNEL CLOUD|WATERSPOUT) (B(\d{2})?(\d{2}))(E(\d{2})?(\d{2}))( (\d+)? ([A-Z]{1,2})?)?/);
|
|
523
|
-
}
|
|
524
|
-
canParse(code) {
|
|
525
|
-
return __classPrivateFieldGet(this, _TornadicActivityBegEndCommand_regex, "f").test(code);
|
|
526
|
-
}
|
|
527
|
-
execute(code, remark) {
|
|
528
|
-
const matches = code.match(__classPrivateFieldGet(this, _TornadicActivityBegEndCommand_regex, "f"));
|
|
529
|
-
if (!matches)
|
|
530
|
-
throw new errors_1.UnexpectedParseError("Match not found");
|
|
531
|
-
remark.push((0, i18n_1.format)((0, i18n_1._)("Remark.Tornadic.Activity.BegEnd", this.locale), (0, i18n_1._)(`Remark.${matches[1].replace(" ", "")}`, this.locale), matches[3] || "", matches[4], matches[6] || "", matches[7], matches[9], (0, i18n_1._)(`Converter.${matches[10]}`, this.locale)));
|
|
532
|
-
return [code.replace(__classPrivateFieldGet(this, _TornadicActivityBegEndCommand_regex, "f"), "").trim(), remark];
|
|
533
|
-
}
|
|
534
|
-
}
|
|
535
|
-
exports.TornadicActivityBegEndCommand = TornadicActivityBegEndCommand;
|
|
536
|
-
_TornadicActivityBegEndCommand_regex = new WeakMap();
|
|
537
|
-
class TornadicActivityEndCommand extends Command {
|
|
538
|
-
constructor() {
|
|
539
|
-
super(...arguments);
|
|
540
|
-
_TornadicActivityEndCommand_regex.set(this, /^(TORNADO|FUNNEL CLOUD|WATERSPOUT) (E(\d{2})?(\d{2}))( (\d+)? ([A-Z]{1,2})?)?/);
|
|
541
|
-
}
|
|
542
|
-
canParse(code) {
|
|
543
|
-
return __classPrivateFieldGet(this, _TornadicActivityEndCommand_regex, "f").test(code);
|
|
544
|
-
}
|
|
545
|
-
execute(code, remark) {
|
|
546
|
-
const matches = code.match(__classPrivateFieldGet(this, _TornadicActivityEndCommand_regex, "f"));
|
|
547
|
-
if (!matches)
|
|
548
|
-
throw new errors_1.UnexpectedParseError("Match not found");
|
|
549
|
-
remark.push((0, i18n_1.format)((0, i18n_1._)("Remark.Tornadic.Activity.Ending", this.locale), (0, i18n_1._)(`Remark.${matches[1].replace(" ", "")}`, this.locale), matches[3] || "", matches[4], matches[6], (0, i18n_1._)(`Converter.${matches[7]}`, this.locale)));
|
|
550
|
-
return [code.replace(__classPrivateFieldGet(this, _TornadicActivityEndCommand_regex, "f"), "").trim(), remark];
|
|
551
|
-
}
|
|
552
|
-
}
|
|
553
|
-
exports.TornadicActivityEndCommand = TornadicActivityEndCommand;
|
|
554
|
-
_TornadicActivityEndCommand_regex = new WeakMap();
|
|
555
|
-
class TowerVisibilityCommand extends Command {
|
|
556
|
-
constructor() {
|
|
557
|
-
super(...arguments);
|
|
558
|
-
_TowerVisibilityCommand_regex.set(this, /^TWR VIS ((\d)*( )?(\d?\/?\d))/);
|
|
559
|
-
}
|
|
560
|
-
canParse(code) {
|
|
561
|
-
return __classPrivateFieldGet(this, _TowerVisibilityCommand_regex, "f").test(code);
|
|
562
|
-
}
|
|
563
|
-
execute(code, remark) {
|
|
564
|
-
const matches = code.match(__classPrivateFieldGet(this, _TowerVisibilityCommand_regex, "f"));
|
|
565
|
-
if (!matches)
|
|
566
|
-
throw new errors_1.UnexpectedParseError("Match not found");
|
|
567
|
-
remark.push((0, i18n_1.format)((0, i18n_1._)("Remark.Tower.Visibility", this.locale), matches[1]));
|
|
568
|
-
return [code.replace(__classPrivateFieldGet(this, _TowerVisibilityCommand_regex, "f"), "").trim(), remark];
|
|
569
|
-
}
|
|
570
|
-
}
|
|
571
|
-
exports.TowerVisibilityCommand = TowerVisibilityCommand;
|
|
572
|
-
_TowerVisibilityCommand_regex = new WeakMap();
|
|
573
|
-
class VariableSkyCommand extends Command {
|
|
574
|
-
constructor() {
|
|
575
|
-
super(...arguments);
|
|
576
|
-
_VariableSkyCommand_regex.set(this, /^([A-Z]{3}) V ([A-Z]{3})/);
|
|
577
|
-
}
|
|
578
|
-
canParse(code) {
|
|
579
|
-
return __classPrivateFieldGet(this, _VariableSkyCommand_regex, "f").test(code);
|
|
580
|
-
}
|
|
581
|
-
execute(code, remark) {
|
|
582
|
-
const matches = code.match(__classPrivateFieldGet(this, _VariableSkyCommand_regex, "f"));
|
|
583
|
-
if (!matches)
|
|
584
|
-
throw new errors_1.UnexpectedParseError("Match not found");
|
|
585
|
-
remark.push((0, i18n_1.format)((0, i18n_1._)("Remark.Variable.Sky.Condition.0", this.locale), (0, i18n_1._)(`CloudQuantity.${matches[1]}`, this.locale), (0, i18n_1._)(`CloudQuantity.${matches[2]}`, this.locale)));
|
|
586
|
-
return [code.replace(__classPrivateFieldGet(this, _VariableSkyCommand_regex, "f"), "").trim(), remark];
|
|
587
|
-
}
|
|
588
|
-
}
|
|
589
|
-
exports.VariableSkyCommand = VariableSkyCommand;
|
|
590
|
-
_VariableSkyCommand_regex = new WeakMap();
|
|
591
|
-
class VariableSkyHeightCommand extends Command {
|
|
592
|
-
constructor() {
|
|
593
|
-
super(...arguments);
|
|
594
|
-
_VariableSkyHeightCommand_regex.set(this, /^([A-Z]{3})(\d{3}) V ([A-Z]{3})/);
|
|
595
|
-
}
|
|
596
|
-
canParse(code) {
|
|
597
|
-
return __classPrivateFieldGet(this, _VariableSkyHeightCommand_regex, "f").test(code);
|
|
598
|
-
}
|
|
599
|
-
execute(code, remark) {
|
|
600
|
-
const matches = code.match(__classPrivateFieldGet(this, _VariableSkyHeightCommand_regex, "f"));
|
|
601
|
-
if (!matches)
|
|
602
|
-
throw new errors_1.UnexpectedParseError("Match not found");
|
|
603
|
-
remark.push((0, i18n_1.format)((0, i18n_1._)("Remark.Variable.Sky.Condition.Height", this.locale), 100 * +matches[2], (0, i18n_1._)(`CloudQuantity.${matches[1]}`, this.locale), (0, i18n_1._)(`CloudQuantity.${matches[3]}`, this.locale)));
|
|
604
|
-
return [code.replace(__classPrivateFieldGet(this, _VariableSkyHeightCommand_regex, "f"), "").trim(), remark];
|
|
605
|
-
}
|
|
606
|
-
}
|
|
607
|
-
exports.VariableSkyHeightCommand = VariableSkyHeightCommand;
|
|
608
|
-
_VariableSkyHeightCommand_regex = new WeakMap();
|
|
609
|
-
class VirgaDirectionCommand extends Command {
|
|
610
|
-
constructor() {
|
|
611
|
-
super(...arguments);
|
|
612
|
-
_VirgaDirectionCommand_regex.set(this, /^VIRGA ([A-Z]{2})/);
|
|
613
|
-
}
|
|
614
|
-
canParse(code) {
|
|
615
|
-
return __classPrivateFieldGet(this, _VirgaDirectionCommand_regex, "f").test(code);
|
|
616
|
-
}
|
|
617
|
-
execute(code, remark) {
|
|
618
|
-
const matches = code.match(__classPrivateFieldGet(this, _VirgaDirectionCommand_regex, "f"));
|
|
619
|
-
if (!matches)
|
|
620
|
-
throw new errors_1.UnexpectedParseError("Match not found");
|
|
621
|
-
remark.push((0, i18n_1.format)((0, i18n_1._)("Remark.Virga.Direction", this.locale), (0, i18n_1._)(`Converter.${matches[1]}`, this.locale)));
|
|
622
|
-
return [code.replace(__classPrivateFieldGet(this, _VirgaDirectionCommand_regex, "f"), "").trim(), remark];
|
|
623
|
-
}
|
|
624
|
-
}
|
|
625
|
-
exports.VirgaDirectionCommand = VirgaDirectionCommand;
|
|
626
|
-
_VirgaDirectionCommand_regex = new WeakMap();
|
|
627
|
-
class WaterEquivalentSnowCommand extends Command {
|
|
628
|
-
constructor() {
|
|
629
|
-
super(...arguments);
|
|
630
|
-
_WaterEquivalentSnowCommand_regex.set(this, /^933(\d{3})\b/);
|
|
631
|
-
}
|
|
632
|
-
canParse(code) {
|
|
633
|
-
return __classPrivateFieldGet(this, _WaterEquivalentSnowCommand_regex, "f").test(code);
|
|
634
|
-
}
|
|
635
|
-
execute(code, remark) {
|
|
636
|
-
const matches = code.match(__classPrivateFieldGet(this, _WaterEquivalentSnowCommand_regex, "f"));
|
|
637
|
-
if (!matches)
|
|
638
|
-
throw new errors_1.UnexpectedParseError("Match not found");
|
|
639
|
-
remark.push((0, i18n_1.format)((0, i18n_1._)("Remark.Water.Equivalent.Snow.Ground", this.locale), +matches[1] / 10));
|
|
640
|
-
return [code.replace(__classPrivateFieldGet(this, _WaterEquivalentSnowCommand_regex, "f"), "").trim(), remark];
|
|
641
|
-
}
|
|
642
|
-
}
|
|
643
|
-
exports.WaterEquivalentSnowCommand = WaterEquivalentSnowCommand;
|
|
644
|
-
_WaterEquivalentSnowCommand_regex = new WeakMap();
|
|
645
|
-
class WindPeakCommand extends Command {
|
|
646
|
-
constructor() {
|
|
647
|
-
super(...arguments);
|
|
648
|
-
_WindPeakCommand_regex.set(this, /^PK WND (\d{3})(\d{2,3})\/(\d{2})?(\d{2})/);
|
|
649
|
-
}
|
|
650
|
-
canParse(code) {
|
|
651
|
-
return __classPrivateFieldGet(this, _WindPeakCommand_regex, "f").test(code);
|
|
652
|
-
}
|
|
653
|
-
execute(code, remark) {
|
|
654
|
-
const matches = code.match(__classPrivateFieldGet(this, _WindPeakCommand_regex, "f"));
|
|
655
|
-
if (!matches)
|
|
656
|
-
throw new errors_1.UnexpectedParseError("Match not found");
|
|
657
|
-
remark.push((0, i18n_1.format)((0, i18n_1._)("Remark.PeakWind", this.locale), matches[1], matches[2], matches[3] || "", matches[4]));
|
|
658
|
-
return [code.replace(__classPrivateFieldGet(this, _WindPeakCommand_regex, "f"), "").trim(), remark];
|
|
659
|
-
}
|
|
660
|
-
}
|
|
661
|
-
exports.WindPeakCommand = WindPeakCommand;
|
|
662
|
-
_WindPeakCommand_regex = new WeakMap();
|
|
663
|
-
class WindShiftCommand extends Command {
|
|
664
|
-
constructor() {
|
|
665
|
-
super(...arguments);
|
|
666
|
-
_WindShiftCommand_regex.set(this, /^WSHFT (\d{2})?(\d{2})/);
|
|
667
|
-
}
|
|
668
|
-
canParse(code) {
|
|
669
|
-
return __classPrivateFieldGet(this, _WindShiftCommand_regex, "f").test(code);
|
|
670
|
-
}
|
|
671
|
-
execute(code, remark) {
|
|
672
|
-
const matches = code.match(__classPrivateFieldGet(this, _WindShiftCommand_regex, "f"));
|
|
673
|
-
if (!matches)
|
|
674
|
-
throw new errors_1.UnexpectedParseError("Match not found");
|
|
675
|
-
remark.push((0, i18n_1.format)((0, i18n_1._)("Remark.WindShift.0", this.locale), matches[1] || "", matches[2]));
|
|
676
|
-
return [code.replace(__classPrivateFieldGet(this, _WindShiftCommand_regex, "f"), "").trim(), remark];
|
|
677
|
-
}
|
|
678
|
-
}
|
|
679
|
-
exports.WindShiftCommand = WindShiftCommand;
|
|
680
|
-
_WindShiftCommand_regex = new WeakMap();
|
|
681
|
-
class WindShiftFropaCommand extends Command {
|
|
682
|
-
constructor() {
|
|
683
|
-
super(...arguments);
|
|
684
|
-
_WindShiftFropaCommand_regex.set(this, /^WSHFT (\d{2})?(\d{2}) FROPA/);
|
|
685
|
-
}
|
|
686
|
-
canParse(code) {
|
|
687
|
-
return __classPrivateFieldGet(this, _WindShiftFropaCommand_regex, "f").test(code);
|
|
688
|
-
}
|
|
689
|
-
execute(code, remark) {
|
|
690
|
-
const matches = code.match(__classPrivateFieldGet(this, _WindShiftFropaCommand_regex, "f"));
|
|
691
|
-
if (!matches)
|
|
692
|
-
throw new errors_1.UnexpectedParseError("Match not found");
|
|
693
|
-
remark.push((0, i18n_1.format)((0, i18n_1._)("Remark.WindShift.FROPA", this.locale), matches[1] || "", matches[2]));
|
|
694
|
-
return [code.replace(__classPrivateFieldGet(this, _WindShiftFropaCommand_regex, "f"), "").trim(), remark];
|
|
695
|
-
}
|
|
696
|
-
}
|
|
697
|
-
exports.WindShiftFropaCommand = WindShiftFropaCommand;
|
|
698
|
-
_WindShiftFropaCommand_regex = new WeakMap();
|
|
699
|
-
class DefaultCommand extends Command {
|
|
700
|
-
canParse() {
|
|
701
|
-
return true;
|
|
702
|
-
}
|
|
703
|
-
execute(code, remark) {
|
|
704
|
-
const rmkSplit = (0, helpers_1.pySplit)(code, " ", 1);
|
|
705
|
-
try {
|
|
706
|
-
const rem = (0, i18n_1._)(`Remark.${rmkSplit[0]}`, this.locale);
|
|
707
|
-
remark.push(rem);
|
|
708
|
-
}
|
|
709
|
-
catch (error) {
|
|
710
|
-
if (!(error instanceof errors_1.TranslationError))
|
|
711
|
-
throw error;
|
|
712
|
-
remark.push(rmkSplit[0]);
|
|
713
|
-
}
|
|
714
|
-
return [rmkSplit.length === 1 ? "" : rmkSplit[1], remark];
|
|
715
|
-
}
|
|
716
|
-
}
|
|
717
|
-
exports.DefaultCommand = DefaultCommand;
|
|
3
|
+
exports.RemarkType = exports.RemarkCommandSupplier = void 0;
|
|
4
|
+
const CeilingHeightCommand_1 = require("./remark/CeilingHeightCommand");
|
|
5
|
+
const CeilingSecondLocationCommand_1 = require("./remark/CeilingSecondLocationCommand");
|
|
6
|
+
const HailSizeCommand_1 = require("./remark/HailSizeCommand");
|
|
7
|
+
const HourlyMaximumMinimumTemperatureCommand_1 = require("./remark/HourlyMaximumMinimumTemperatureCommand");
|
|
8
|
+
const HourlyMaximumTemperatureCommand_1 = require("./remark/HourlyMaximumTemperatureCommand");
|
|
9
|
+
const HourlyMinimumTemperatureCommand_1 = require("./remark/HourlyMinimumTemperatureCommand");
|
|
10
|
+
const HourlyPrecipitationAmountCommand_1 = require("./remark/HourlyPrecipitationAmountCommand");
|
|
11
|
+
const HourlyPressureCommand_1 = require("./remark/HourlyPressureCommand");
|
|
12
|
+
const HourlyTemperatureDewPointCommand_1 = require("./remark/HourlyTemperatureDewPointCommand");
|
|
13
|
+
const IceAccretionCommand_1 = require("./remark/IceAccretionCommand");
|
|
14
|
+
const ObscurationCommand_1 = require("./remark/ObscurationCommand");
|
|
15
|
+
const PrecipitationAmount24HourCommand_1 = require("./remark/PrecipitationAmount24HourCommand");
|
|
16
|
+
const PrecipitationAmount36HourCommand_1 = require("./remark/PrecipitationAmount36HourCommand");
|
|
17
|
+
const PrecipitationBegEndCommand_1 = require("./remark/PrecipitationBegEndCommand");
|
|
18
|
+
const PrevailingVisibilityCommand_1 = require("./remark/PrevailingVisibilityCommand");
|
|
19
|
+
const SeaLevelPressureCommand_1 = require("./remark/SeaLevelPressureCommand");
|
|
20
|
+
const SecondLocationVisibilityCommand_1 = require("./remark/SecondLocationVisibilityCommand");
|
|
21
|
+
const SectorVisibilityCommand_1 = require("./remark/SectorVisibilityCommand");
|
|
22
|
+
const SmallHailSizeCommand_1 = require("./remark/SmallHailSizeCommand");
|
|
23
|
+
const SnowDepthCommand_1 = require("./remark/SnowDepthCommand");
|
|
24
|
+
const SnowIncreaseCommand_1 = require("./remark/SnowIncreaseCommand");
|
|
25
|
+
const SnowPelletsCommand_1 = require("./remark/SnowPelletsCommand");
|
|
26
|
+
const SunshineDurationCommand_1 = require("./remark/SunshineDurationCommand");
|
|
27
|
+
const SurfaceVisibilityCommand_1 = require("./remark/SurfaceVisibilityCommand");
|
|
28
|
+
const ThunderStormLocationCommand_1 = require("./remark/ThunderStormLocationCommand");
|
|
29
|
+
const ThunderStormLocationMovingCommand_1 = require("./remark/ThunderStormLocationMovingCommand");
|
|
30
|
+
const TornadicActivityBegCommand_1 = require("./remark/TornadicActivityBegCommand");
|
|
31
|
+
const TornadicActivityBegEndCommand_1 = require("./remark/TornadicActivityBegEndCommand");
|
|
32
|
+
const TornadicActivityEndCommand_1 = require("./remark/TornadicActivityEndCommand");
|
|
33
|
+
const TowerVisibilityCommand_1 = require("./remark/TowerVisibilityCommand");
|
|
34
|
+
const VariableSkyCommand_1 = require("./remark/VariableSkyCommand");
|
|
35
|
+
const VariableSkyHeightCommand_1 = require("./remark/VariableSkyHeightCommand");
|
|
36
|
+
const VirgaDirectionCommand_1 = require("./remark/VirgaDirectionCommand");
|
|
37
|
+
const WaterEquivalentSnowCommand_1 = require("./remark/WaterEquivalentSnowCommand");
|
|
38
|
+
const WindPeakCommandCommand_1 = require("./remark/WindPeakCommandCommand");
|
|
39
|
+
const WindShiftCommand_1 = require("./remark/WindShiftCommand");
|
|
40
|
+
const WindShiftFropaCommand_1 = require("./remark/WindShiftFropaCommand");
|
|
41
|
+
const DefaultCommand_1 = require("./remark/DefaultCommand");
|
|
42
|
+
const PrecipitationBegCommand_1 = require("./remark/PrecipitationBegCommand");
|
|
43
|
+
const PrecipitationEndCommand_1 = require("./remark/PrecipitationEndCommand");
|
|
718
44
|
class RemarkCommandSupplier {
|
|
719
45
|
constructor(locale) {
|
|
720
46
|
this.locale = locale;
|
|
721
|
-
this.defaultCommand = new DefaultCommand(locale);
|
|
47
|
+
this.defaultCommand = new DefaultCommand_1.DefaultCommand(locale);
|
|
722
48
|
this.commandList = [
|
|
723
|
-
new WindPeakCommand(locale),
|
|
724
|
-
new WindShiftFropaCommand(locale),
|
|
725
|
-
new WindShiftCommand(locale),
|
|
726
|
-
new TowerVisibilityCommand(locale),
|
|
727
|
-
new SurfaceVisibilityCommand(locale),
|
|
728
|
-
new PrevailingVisibilityCommand(locale),
|
|
729
|
-
new SecondLocationVisibilityCommand(locale),
|
|
730
|
-
new SectorVisibilityCommand(locale),
|
|
731
|
-
new TornadicActivityBegEndCommand(locale),
|
|
732
|
-
new TornadicActivityBegCommand(locale),
|
|
733
|
-
new TornadicActivityEndCommand(locale),
|
|
734
|
-
new PrecipitationBegEndCommand(locale),
|
|
735
|
-
new
|
|
736
|
-
new
|
|
737
|
-
new
|
|
738
|
-
new
|
|
739
|
-
new
|
|
740
|
-
new
|
|
741
|
-
new
|
|
742
|
-
new
|
|
743
|
-
new
|
|
744
|
-
new
|
|
745
|
-
new
|
|
746
|
-
new
|
|
747
|
-
new
|
|
748
|
-
new
|
|
749
|
-
new
|
|
750
|
-
new
|
|
751
|
-
new
|
|
752
|
-
new
|
|
753
|
-
new
|
|
754
|
-
new
|
|
755
|
-
new
|
|
756
|
-
new
|
|
757
|
-
new
|
|
758
|
-
new
|
|
759
|
-
new
|
|
49
|
+
new WindPeakCommandCommand_1.WindPeakCommand(locale),
|
|
50
|
+
new WindShiftFropaCommand_1.WindShiftFropaCommand(locale),
|
|
51
|
+
new WindShiftCommand_1.WindShiftCommand(locale),
|
|
52
|
+
new TowerVisibilityCommand_1.TowerVisibilityCommand(locale),
|
|
53
|
+
new SurfaceVisibilityCommand_1.SurfaceVisibilityCommand(locale),
|
|
54
|
+
new PrevailingVisibilityCommand_1.PrevailingVisibilityCommand(locale),
|
|
55
|
+
new SecondLocationVisibilityCommand_1.SecondLocationVisibilityCommand(locale),
|
|
56
|
+
new SectorVisibilityCommand_1.SectorVisibilityCommand(locale),
|
|
57
|
+
new TornadicActivityBegEndCommand_1.TornadicActivityBegEndCommand(locale),
|
|
58
|
+
new TornadicActivityBegCommand_1.TornadicActivityBegCommand(locale),
|
|
59
|
+
new TornadicActivityEndCommand_1.TornadicActivityEndCommand(locale),
|
|
60
|
+
new PrecipitationBegEndCommand_1.PrecipitationBegEndCommand(locale),
|
|
61
|
+
new PrecipitationBegCommand_1.PrecipitationBegCommand(locale),
|
|
62
|
+
new PrecipitationEndCommand_1.PrecipitationEndCommand(locale),
|
|
63
|
+
new ThunderStormLocationMovingCommand_1.ThunderStormLocationMovingCommand(locale),
|
|
64
|
+
new ThunderStormLocationCommand_1.ThunderStormLocationCommand(locale),
|
|
65
|
+
new SmallHailSizeCommand_1.SmallHailSizeCommand(locale),
|
|
66
|
+
new HailSizeCommand_1.HailSizeCommand(locale),
|
|
67
|
+
new SnowPelletsCommand_1.SnowPelletsCommand(locale),
|
|
68
|
+
new VirgaDirectionCommand_1.VirgaDirectionCommand(locale),
|
|
69
|
+
new CeilingHeightCommand_1.CeilingHeightCommand(locale),
|
|
70
|
+
new ObscurationCommand_1.ObscurationCommand(locale),
|
|
71
|
+
new VariableSkyHeightCommand_1.VariableSkyHeightCommand(locale),
|
|
72
|
+
new VariableSkyCommand_1.VariableSkyCommand(locale),
|
|
73
|
+
new CeilingSecondLocationCommand_1.CeilingSecondLocationCommand(locale),
|
|
74
|
+
new SeaLevelPressureCommand_1.SeaLevelPressureCommand(locale),
|
|
75
|
+
new SnowIncreaseCommand_1.SnowIncreaseCommand(locale),
|
|
76
|
+
new HourlyMaximumMinimumTemperatureCommand_1.HourlyMaximumMinimumTemperatureCommand(locale),
|
|
77
|
+
new HourlyMaximumTemperatureCommand_1.HourlyMaximumTemperatureCommand(locale),
|
|
78
|
+
new HourlyMinimumTemperatureCommand_1.HourlyMinimumTemperatureCommand(locale),
|
|
79
|
+
new HourlyPrecipitationAmountCommand_1.HourlyPrecipitationAmountCommand(locale),
|
|
80
|
+
new HourlyTemperatureDewPointCommand_1.HourlyTemperatureDewPointCommand(locale),
|
|
81
|
+
new HourlyPressureCommand_1.HourlyPressureCommand(locale),
|
|
82
|
+
new IceAccretionCommand_1.IceAccretionCommand(locale),
|
|
83
|
+
new PrecipitationAmount36HourCommand_1.PrecipitationAmount36HourCommand(locale),
|
|
84
|
+
new PrecipitationAmount24HourCommand_1.PrecipitationAmount24HourCommand(locale),
|
|
85
|
+
new SnowDepthCommand_1.SnowDepthCommand(locale),
|
|
86
|
+
new SunshineDurationCommand_1.SunshineDurationCommand(locale),
|
|
87
|
+
new WaterEquivalentSnowCommand_1.WaterEquivalentSnowCommand(locale),
|
|
760
88
|
];
|
|
761
89
|
}
|
|
762
90
|
get(code) {
|
|
@@ -769,3 +97,57 @@ class RemarkCommandSupplier {
|
|
|
769
97
|
}
|
|
770
98
|
}
|
|
771
99
|
exports.RemarkCommandSupplier = RemarkCommandSupplier;
|
|
100
|
+
var RemarkType;
|
|
101
|
+
(function (RemarkType) {
|
|
102
|
+
// Unknown processed with default command
|
|
103
|
+
RemarkType["Unknown"] = "Unknown";
|
|
104
|
+
// Processed with default command
|
|
105
|
+
RemarkType["AO1"] = "AO1";
|
|
106
|
+
RemarkType["AO2"] = "AO2";
|
|
107
|
+
RemarkType["PRESFR"] = "PRESFR";
|
|
108
|
+
RemarkType["PRESRR"] = "PRESRR";
|
|
109
|
+
RemarkType["TORNADO"] = "TORNADO";
|
|
110
|
+
RemarkType["FUNNELCLOUD"] = "FUNNELCLOUD";
|
|
111
|
+
RemarkType["WATERSPOUT"] = "WATERSPOUT";
|
|
112
|
+
RemarkType["VIRGA"] = "VIRGA";
|
|
113
|
+
// Regular commands below
|
|
114
|
+
RemarkType["WindPeak"] = "WindPeak";
|
|
115
|
+
RemarkType["WindShiftFropa"] = "WindShiftFropa";
|
|
116
|
+
RemarkType["WindShift"] = "WindShift";
|
|
117
|
+
RemarkType["TowerVisibility"] = "TowerVisibility";
|
|
118
|
+
RemarkType["SurfaceVisibility"] = "SurfaceVisibility";
|
|
119
|
+
RemarkType["PrevailingVisibility"] = "PrevailingVisibility";
|
|
120
|
+
RemarkType["SecondLocationVisibility"] = "SecondLocationVisibility";
|
|
121
|
+
RemarkType["SectorVisibility"] = "SectorVisibility";
|
|
122
|
+
RemarkType["TornadicActivityBegEnd"] = "TornadicActivityBegEnd";
|
|
123
|
+
RemarkType["TornadicActivityBeg"] = "TornadicActivityBeg";
|
|
124
|
+
RemarkType["TornadicActivityEnd"] = "TornadicActivityEnd";
|
|
125
|
+
RemarkType["PrecipitationBeg"] = "PrecipitationBeg";
|
|
126
|
+
RemarkType["PrecipitationBegEnd"] = "PrecipitationBegEnd";
|
|
127
|
+
RemarkType["PrecipitationEnd"] = "PrecipitationEnd";
|
|
128
|
+
RemarkType["ThunderStormLocationMoving"] = "ThunderStormLocationMoving";
|
|
129
|
+
RemarkType["ThunderStormLocation"] = "ThunderStormLocation";
|
|
130
|
+
RemarkType["SmallHailSize"] = "SmallHailSize";
|
|
131
|
+
RemarkType["HailSize"] = "HailSize";
|
|
132
|
+
RemarkType["SnowPellets"] = "SnowPellets";
|
|
133
|
+
RemarkType["VirgaDirection"] = "VirgaDirection";
|
|
134
|
+
RemarkType["CeilingHeight"] = "CeilingHeight";
|
|
135
|
+
RemarkType["Obscuration"] = "Obscuration";
|
|
136
|
+
RemarkType["VariableSkyHeight"] = "VariableSkyHeight";
|
|
137
|
+
RemarkType["VariableSky"] = "VariableSky";
|
|
138
|
+
RemarkType["CeilingSecondLocation"] = "CeilingSecondLocation";
|
|
139
|
+
RemarkType["SeaLevelPressure"] = "SeaLevelPressure";
|
|
140
|
+
RemarkType["SnowIncrease"] = "SnowIncrease";
|
|
141
|
+
RemarkType["HourlyMaximumMinimumTemperature"] = "HourlyMaximumMinimumTemperature";
|
|
142
|
+
RemarkType["HourlyMaximumTemperature"] = "HourlyMaximumTemperature";
|
|
143
|
+
RemarkType["HourlyMinimumTemperature"] = "HourlyMinimumTemperature";
|
|
144
|
+
RemarkType["HourlyPrecipitationAmount"] = "HourlyPrecipitationAmount";
|
|
145
|
+
RemarkType["HourlyTemperatureDewPoint"] = "HourlyTemperatureDewPoint";
|
|
146
|
+
RemarkType["HourlyPressure"] = "HourlyPressure";
|
|
147
|
+
RemarkType["IceAccretion"] = "IceAccretion";
|
|
148
|
+
RemarkType["PrecipitationAmount36Hour"] = "PrecipitationAmount36Hour";
|
|
149
|
+
RemarkType["PrecipitationAmount24Hour"] = "PrecipitationAmount24Hour";
|
|
150
|
+
RemarkType["SnowDepth"] = "SnowDepth";
|
|
151
|
+
RemarkType["SunshineDuration"] = "SunshineDuration";
|
|
152
|
+
RemarkType["WaterEquivalentSnow"] = "WaterEquivalentSnow";
|
|
153
|
+
})(RemarkType = exports.RemarkType || (exports.RemarkType = {}));
|