@atmosx/event-product-parser 3.0.51 → 3.0.53

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.
Files changed (140) hide show
  1. package/{CODE_OF_CONDUCT.md → .github/CODE_OF_CONDUCT.md} +9 -9
  2. package/{CONTRIBUTING.md → .github/CONTRIBUTING.md} +29 -29
  3. package/{LICENSE → .github/LICENSE} +17 -17
  4. package/{README.md → .github/README.md} +466 -444
  5. package/{SECURITY.md → .github/SECURITY.md} +20 -20
  6. package/{SUPPORTED_EVENTS.md → .github/SUPPORTED_EVENTS.md} +369 -368
  7. package/.vscode/settings.json +3 -3
  8. package/dist/cjs/index.cjs +243 -213
  9. package/dist/esm/index.mjs +242 -212
  10. package/package.json +52 -52
  11. package/src/@building/building.attachments.ts +82 -82
  12. package/src/@building/building.clean.ts +29 -29
  13. package/src/@building/building.create.ts +55 -55
  14. package/src/@building/building.enhance.ts +59 -59
  15. package/src/@building/building.geometry.ts +47 -47
  16. package/src/@building/building.headers.ts +36 -36
  17. package/src/@building/building.office.ts +42 -42
  18. package/src/@building/building.polygon.ts +69 -69
  19. package/src/@building/building.properties.ts +95 -95
  20. package/src/@building/building.signature.ts +60 -60
  21. package/src/@building/building.tags.ts +23 -23
  22. package/src/@building/building.tracking.ts +67 -67
  23. package/src/@building/building.validate.ts +152 -151
  24. package/src/@core/core.clearEvents.ts +30 -30
  25. package/src/@core/core.createListener.ts +23 -23
  26. package/src/@core/core.getEvents.ts +23 -23
  27. package/src/@core/core.getNodes.ts +23 -23
  28. package/src/@core/core.getRandomEvent.ts +23 -23
  29. package/src/@core/core.getVersion.ts +23 -23
  30. package/src/@core/core.manualEvent.ts +38 -0
  31. package/src/@core/core.query.ts +38 -38
  32. package/src/@core/core.setNode.ts +80 -80
  33. package/src/@core/core.start.ts +60 -60
  34. package/src/@core/core.stop.ts +31 -31
  35. package/src/@dictionaries/dictionaries.actions.ts +27 -27
  36. package/src/@dictionaries/dictionaries.awips.ts +363 -363
  37. package/src/@dictionaries/dictionaries.cancellation.ts +30 -30
  38. package/src/@dictionaries/dictionaries.causes.ts +35 -35
  39. package/src/@dictionaries/dictionaries.correlations.ts +42 -42
  40. package/src/@dictionaries/dictionaries.enhanced.ts +66 -109
  41. package/src/@dictionaries/dictionaries.events.ts +82 -82
  42. package/src/@dictionaries/dictionaries.expressions.ts +28 -28
  43. package/src/@dictionaries/dictionaries.global.ts +24 -0
  44. package/src/@dictionaries/dictionaries.hail.ts +35 -35
  45. package/src/@dictionaries/dictionaries.icao.ts +258 -258
  46. package/src/@dictionaries/dictionaries.matches.ts +54 -35
  47. package/src/@dictionaries/dictionaries.products.ts +24 -24
  48. package/src/@dictionaries/dictionaries.records.ts +25 -25
  49. package/src/@dictionaries/dictionaries.severity.ts +27 -27
  50. package/src/@dictionaries/dictionaries.shapefiles.ts +35 -35
  51. package/src/@dictionaries/dictionaries.states.ts +71 -71
  52. package/src/@dictionaries/dictionaries.status.ts +30 -30
  53. package/src/@dictionaries/dictionaries.tags.ts +92 -92
  54. package/src/@dictionaries/dictionaries.testing.ts +24 -24
  55. package/src/@events/events.api.ts +116 -116
  56. package/src/@events/events.text.ts +84 -80
  57. package/src/@events/events.ugc.ts +89 -85
  58. package/src/@events/events.vtec.ts +86 -86
  59. package/src/@manager/manager.mkEvent.ts +97 -93
  60. package/src/@manager/manager.rmEvent.ts +56 -51
  61. package/src/@manager/manager.setHash.ts +35 -35
  62. package/src/@manager/manager.updateEvents.ts +32 -32
  63. package/src/@manager/manager.updateListener.ts +179 -154
  64. package/src/@manager/manager.updateNodes.ts +53 -53
  65. package/src/@modules/@database/database.broadcastify.ts +66 -66
  66. package/src/@modules/@database/database.cache.ts +49 -49
  67. package/src/@modules/@database/database.init.ts +58 -58
  68. package/src/@modules/@database/database.shapefiles.ts +92 -92
  69. package/src/@modules/@database/database.stanza.ts +46 -46
  70. package/src/@modules/@eas/eas.getCleanDescription.ts +91 -91
  71. package/src/@modules/@eas/eas.getFloatPCM16.ts +29 -29
  72. package/src/@modules/@eas/eas.getMergedPCM16.ts +32 -32
  73. package/src/@modules/@eas/eas.getPCM16.ts +52 -52
  74. package/src/@modules/@eas/eas.getPCMToFloat.ts +26 -26
  75. package/src/@modules/@eas/eas.getSampledPCM16.ts +36 -36
  76. package/src/@modules/@eas/eas.getTTS.ts +54 -54
  77. package/src/@modules/@eas/eas.getWavPCM16.ts +52 -52
  78. package/src/@modules/@eas/eas.setAFSK.ts +51 -51
  79. package/src/@modules/@eas/eas.setAsciiToBits.ts +31 -31
  80. package/src/@modules/@eas/eas.setAttentionTone.ts +40 -40
  81. package/src/@modules/@eas/eas.setEasTone.ts +151 -151
  82. package/src/@modules/@eas/eas.setNoise.ts +32 -32
  83. package/src/@modules/@eas/eas.setRadioEffect.ts +50 -50
  84. package/src/@modules/@eas/eas.setSameHeader.ts +44 -44
  85. package/src/@modules/@stanza/stanza.getAwipsType.ts +45 -45
  86. package/src/@modules/@stanza/stanza.validate.ts +49 -49
  87. package/src/@modules/@utilities/utilities.createHttp.ts +83 -70
  88. package/src/@modules/@utilities/utilities.getFormattedTime.ts +43 -43
  89. package/src/@modules/@utilities/utilities.getLatestIssuance.ts +32 -32
  90. package/src/@modules/@utilities/utilities.getMatched.ts +33 -33
  91. package/src/@modules/@utilities/utilities.getSettings.ts +25 -25
  92. package/src/@modules/@utilities/utilities.getShapeNearestPoint.ts +114 -114
  93. package/src/@modules/@utilities/utilities.setCronSchedule.ts +94 -94
  94. package/src/@modules/@utilities/utilities.setDebug.ts +38 -38
  95. package/src/@modules/@utilities/utilities.setEventEmit.ts +41 -41
  96. package/src/@modules/@utilities/utilities.setListener.ts +30 -30
  97. package/src/@modules/@utilities/utilities.setSettings.ts +42 -42
  98. package/src/@modules/@utilities/utilities.setSleep.ts +33 -33
  99. package/src/@modules/@utilities/utilities.setTimeoutAction.ts +62 -62
  100. package/src/@modules/@utilities/utilities.setWarning.ts +34 -34
  101. package/src/@modules/@xmpp/xmpp.xDeploy.ts +57 -57
  102. package/src/@modules/@xmpp/xmpp.xError.ts +26 -26
  103. package/src/@modules/@xmpp/xmpp.xOffline.ts +36 -36
  104. package/src/@modules/@xmpp/xmpp.xOnline.ts +45 -44
  105. package/src/@modules/@xmpp/xmpp.xReconnect.ts +64 -64
  106. package/src/@modules/@xmpp/xmpp.xStanza.ts +62 -62
  107. package/src/@parsers/@hvtec/hvtec.extract.ts +39 -39
  108. package/src/@parsers/@pvtec/pvtec.expires.ts +25 -25
  109. package/src/@parsers/@pvtec/pvtec.extract.ts +48 -48
  110. package/src/@parsers/@text/text.getDescriptionFromProduct.ts +52 -52
  111. package/src/@parsers/@text/text.getEmbed.ts +55 -55
  112. package/src/@parsers/@text/text.getPolygonFromProduct.ts +53 -32
  113. package/src/@parsers/@text/text.getRaw.ts +54 -0
  114. package/src/@parsers/@text/text.getTextFromProduct.ts +42 -42
  115. package/src/@parsers/@text/text.getXML.ts +60 -60
  116. package/src/@parsers/@ugc/ugc.coordinates.ts +110 -110
  117. package/src/@parsers/@ugc/ugc.expiry.ts +31 -31
  118. package/src/@parsers/@ugc/ugc.extract.ts +36 -36
  119. package/src/@parsers/@ugc/ugc.getCache.ts +23 -23
  120. package/src/@parsers/@ugc/ugc.header.ts +29 -29
  121. package/src/@parsers/@ugc/ugc.locations.ts +56 -56
  122. package/src/@parsers/@ugc/ugc.setCache.ts +27 -27
  123. package/src/@parsers/@ugc/ugc.zones.ts +51 -51
  124. package/src/@types/type.attributes.ts +28 -28
  125. package/src/@types/type.compiled.ts +34 -34
  126. package/src/@types/type.event.ts +69 -69
  127. package/src/@types/type.hash.ts +24 -24
  128. package/src/@types/type.hvtec.ts +25 -25
  129. package/src/@types/type.listener.ts +37 -32
  130. package/src/@types/type.properties.ts +77 -77
  131. package/src/@types/type.pvtec.ts +30 -30
  132. package/src/@types/type.settings.ts +93 -84
  133. package/src/@types/type.stanza.ts +37 -37
  134. package/src/@types/type.ugc.ts +24 -24
  135. package/src/bootstrap.ts +124 -115
  136. package/src/index.ts +74 -74
  137. package/{test.js → testing/init.js} +105 -92
  138. package/tsconfig.json +13 -13
  139. package/tsup.config.ts +15 -15
  140. package/src/@core/core.createEvent.ts +0 -82
@@ -1,31 +1,31 @@
1
- /*
2
- _ _ _ __ __
3
- /\ | | | | (_) \ \ / /
4
- / \ | |_ _ __ ___ ___ ___ _ __ | |__ ___ _ __ _ ___ \ V /
5
- / /\ \| __| '_ ` _ \ / _ \/ __| '_ \| '_ \ / _ \ '__| |/ __| > <
6
- / ____ \ |_| | | | | | (_) \__ \ |_) | | | | __/ | | | (__ / . \
7
- /_/ \_\__|_| |_| |_|\___/|___/ .__/|_| |_|\___|_| |_|\___/_/ \_\
8
- | |
9
- |_|
10
-
11
- Created with ♥ by the AtmosphericX Team (KiyoWx, StarflightWx, & CJ Ziegler)
12
- Discord: https://atmosphericx-discord.scriptkitty.cafe
13
- Ko-Fi: https://ko-fi.com/k3yomi
14
- Documentation: http://localhost/documentation | https://atmosphericx.scriptkitty.cafe/documentation
15
-
16
- Internal Package: @atmosx/event-product-parser
17
-
18
- */
19
-
20
- export const dict_cancellation: string[] = [
21
- "has been cancelled",
22
- "subsided sufficiently for the advisory to be cancelled",
23
- "has been cancelled",
24
- "no tsunami threat from a nearby earthquake",
25
- "will be allowed to expire",
26
- "has diminished",
27
- "and no longer",
28
- "has been replaced",
29
- "The threat has ended",
30
- "has weakened below severe"
1
+ /*
2
+ _ _ _ __ __
3
+ /\ | | | | (_) \ \ / /
4
+ / \ | |_ _ __ ___ ___ ___ _ __ | |__ ___ _ __ _ ___ \ V /
5
+ / /\ \| __| '_ ` _ \ / _ \/ __| '_ \| '_ \ / _ \ '__| |/ __| > <
6
+ / ____ \ |_| | | | | | (_) \__ \ |_) | | | | __/ | | | (__ / . \
7
+ /_/ \_\__|_| |_| |_|\___/|___/ .__/|_| |_|\___|_| |_|\___/_/ \_\
8
+ | |
9
+ |_|
10
+
11
+ Created with ♥ by the AtmosphericX Team (KiyoWx, StarflightWx, & CJ Ziegler)
12
+ Discord: https://atmosphericx-discord.scriptkitty.cafe
13
+ Ko-Fi: https://ko-fi.com/k3yomi
14
+ Documentation: http://localhost/documentation | https://atmosphericx.scriptkitty.cafe/documentation
15
+
16
+ Internal Package: @atmosx/event-product-parser
17
+
18
+ */
19
+
20
+ export const dict_cancellation: string[] = [
21
+ "has been cancelled",
22
+ "subsided sufficiently for the advisory to be cancelled",
23
+ "has been cancelled",
24
+ "no tsunami threat from a nearby earthquake",
25
+ "will be allowed to expire",
26
+ "has diminished",
27
+ "and no longer",
28
+ "has been replaced",
29
+ "The threat has ended",
30
+ "has weakened below severe"
31
31
  ]
@@ -1,36 +1,36 @@
1
- /*
2
- _ _ _ __ __
3
- /\ | | | | (_) \ \ / /
4
- / \ | |_ _ __ ___ ___ ___ _ __ | |__ ___ _ __ _ ___ \ V /
5
- / /\ \| __| '_ ` _ \ / _ \/ __| '_ \| '_ \ / _ \ '__| |/ __| > <
6
- / ____ \ |_| | | | | | (_) \__ \ |_) | | | | __/ | | | (__ / . \
7
- /_/ \_\__|_| |_| |_|\___/|___/ .__/|_| |_|\___|_| |_|\___/_/ \_\
8
- | |
9
- |_|
10
-
11
- Created with ♥ by the AtmosphericX Team (KiyoWx, StarflightWx, & CJ Ziegler)
12
- Discord: https://atmosphericx-discord.scriptkitty.cafe
13
- Ko-Fi: https://ko-fi.com/k3yomi
14
- Documentation: http://localhost/documentation | https://atmosphericx.scriptkitty.cafe/documentation
15
-
16
- Internal Package: @atmosx/event-product-parser
17
-
18
- */
19
-
20
- export const dict_causes: Record<string, string> = {
21
- "SM": "Snow Melt",
22
- "RS": "Rain/Snow Melt",
23
- "ER": "Excessive Rain",
24
- "DM": "Dam/Levee Failure",
25
- "IJ": "Ice Jam",
26
- "GO": "Glacier Lake Outburst",
27
- "IC": "Ice",
28
- "FS": "Flash Flood / Storm Surge",
29
- "FT": "Tidal Effects",
30
- "ET": "Elevated Upstream Flow",
31
- "MC": "Other Multiple Causes",
32
- "WT": "Wind and/or Tidal Effects",
33
- "DR": "Reservoir Release",
34
- "UU": "Unknown",
35
- "OT": "Other Effects"
1
+ /*
2
+ _ _ _ __ __
3
+ /\ | | | | (_) \ \ / /
4
+ / \ | |_ _ __ ___ ___ ___ _ __ | |__ ___ _ __ _ ___ \ V /
5
+ / /\ \| __| '_ ` _ \ / _ \/ __| '_ \| '_ \ / _ \ '__| |/ __| > <
6
+ / ____ \ |_| | | | | | (_) \__ \ |_) | | | | __/ | | | (__ / . \
7
+ /_/ \_\__|_| |_| |_|\___/|___/ .__/|_| |_|\___|_| |_|\___/_/ \_\
8
+ | |
9
+ |_|
10
+
11
+ Created with ♥ by the AtmosphericX Team (KiyoWx, StarflightWx, & CJ Ziegler)
12
+ Discord: https://atmosphericx-discord.scriptkitty.cafe
13
+ Ko-Fi: https://ko-fi.com/k3yomi
14
+ Documentation: http://localhost/documentation | https://atmosphericx.scriptkitty.cafe/documentation
15
+
16
+ Internal Package: @atmosx/event-product-parser
17
+
18
+ */
19
+
20
+ export const dict_causes: Record<string, string> = {
21
+ "SM": "Snow Melt",
22
+ "RS": "Rain/Snow Melt",
23
+ "ER": "Excessive Rain",
24
+ "DM": "Dam/Levee Failure",
25
+ "IJ": "Ice Jam",
26
+ "GO": "Glacier Lake Outburst",
27
+ "IC": "Ice",
28
+ "FS": "Flash Flood / Storm Surge",
29
+ "FT": "Tidal Effects",
30
+ "ET": "Elevated Upstream Flow",
31
+ "MC": "Other Multiple Causes",
32
+ "WT": "Wind and/or Tidal Effects",
33
+ "DR": "Reservoir Release",
34
+ "UU": "Unknown",
35
+ "OT": "Other Effects"
36
36
  }
@@ -1,42 +1,42 @@
1
- /*
2
- _ _ _ __ __
3
- /\ | | | | (_) \ \ / /
4
- / \ | |_ _ __ ___ ___ ___ _ __ | |__ ___ _ __ _ ___ \ V /
5
- / /\ \| __| '_ ` _ \ / _ \/ __| '_ \| '_ \ / _ \ '__| |/ __| > <
6
- / ____ \ |_| | | | | | (_) \__ \ |_) | | | | __/ | | | (__ / . \
7
- /_/ \_\__|_| |_| |_|\___/|___/ .__/|_| |_|\___|_| |_|\___/_/ \_\
8
- | |
9
- |_|
10
-
11
- Created with ♥ by the AtmosphericX Team (KiyoWx, StarflightWx, & CJ Ziegler)
12
- Discord: https://atmosphericx-discord.scriptkitty.cafe
13
- Ko-Fi: https://ko-fi.com/k3yomi
14
- Documentation: http://localhost/documentation | https://atmosphericx.scriptkitty.cafe/documentation
15
-
16
- Internal Package: @atmosx/event-product-parser
17
-
18
- */
19
-
20
- type TypeCorrelations = {
21
- type: string
22
- name: string
23
- isCancel: boolean
24
- isUpdate: boolean
25
- isIssued: boolean
26
- isStatement: boolean
27
- }
28
-
29
- export const dict_correlations: TypeCorrelations[] = [
30
- {type: "Statement", name: "Statement", isCancel: false, isUpdate: false, isIssued: true, isStatement: true},
31
- {type: "Update", name: "Updated", isCancel: false, isUpdate: true, isIssued: false, isStatement: false},
32
- {type: "Cancel", name: "Cancelled", isCancel: true, isUpdate: false, isIssued: false, isStatement: false},
33
- {type: "Alert", name: "Issued", isCancel: false, isUpdate: false, isIssued: true, isStatement: false},
34
- {type: "Updated", name: "Updated", isCancel: false, isUpdate: true, isIssued: false, isStatement: false},
35
- {type: "Expired", name: "Expired", isCancel: true, isUpdate: false, isIssued: false, isStatement: false},
36
- {type: "Issued", name: "Issued", isCancel: false, isUpdate: false, isIssued: true, isStatement: false},
37
- {type: "Extended", name: "Extended", isCancel: false, isUpdate: true, isIssued: false, isStatement: false},
38
- {type: "Correction", name: "Correction", isCancel: false, isUpdate: true, isIssued: false, isStatement: false},
39
- {type: "Upgraded", name: "Upgraded", isCancel: false, isUpdate: true, isIssued: false, isStatement: false},
40
- {type: "Cancelled", name: "Cancelled", isCancel: true, isUpdate: false, isIssued: false, isStatement: false},
41
- {type: "Routine", name: "Routine", isCancel: false, isUpdate: true, isIssued: false, isStatement: false},
42
- ]
1
+ /*
2
+ _ _ _ __ __
3
+ /\ | | | | (_) \ \ / /
4
+ / \ | |_ _ __ ___ ___ ___ _ __ | |__ ___ _ __ _ ___ \ V /
5
+ / /\ \| __| '_ ` _ \ / _ \/ __| '_ \| '_ \ / _ \ '__| |/ __| > <
6
+ / ____ \ |_| | | | | | (_) \__ \ |_) | | | | __/ | | | (__ / . \
7
+ /_/ \_\__|_| |_| |_|\___/|___/ .__/|_| |_|\___|_| |_|\___/_/ \_\
8
+ | |
9
+ |_|
10
+
11
+ Created with ♥ by the AtmosphericX Team (KiyoWx, StarflightWx, & CJ Ziegler)
12
+ Discord: https://atmosphericx-discord.scriptkitty.cafe
13
+ Ko-Fi: https://ko-fi.com/k3yomi
14
+ Documentation: http://localhost/documentation | https://atmosphericx.scriptkitty.cafe/documentation
15
+
16
+ Internal Package: @atmosx/event-product-parser
17
+
18
+ */
19
+
20
+ type TypeCorrelations = {
21
+ type: string
22
+ name: string
23
+ isCancel: boolean
24
+ isUpdate: boolean
25
+ isIssued: boolean
26
+ isStatement: boolean
27
+ }
28
+
29
+ export const dict_correlations: TypeCorrelations[] = [
30
+ {type: "Statement", name: "Statement", isCancel: false, isUpdate: false, isIssued: true, isStatement: true},
31
+ {type: "Update", name: "Updated", isCancel: false, isUpdate: true, isIssued: false, isStatement: false},
32
+ {type: "Cancel", name: "Cancelled", isCancel: true, isUpdate: false, isIssued: false, isStatement: false},
33
+ {type: "Alert", name: "Issued", isCancel: false, isUpdate: false, isIssued: true, isStatement: false},
34
+ {type: "Updated", name: "Updated", isCancel: false, isUpdate: true, isIssued: false, isStatement: false},
35
+ {type: "Expired", name: "Expired", isCancel: true, isUpdate: false, isIssued: false, isStatement: false},
36
+ {type: "Issued", name: "Issued", isCancel: false, isUpdate: false, isIssued: true, isStatement: false},
37
+ {type: "Extended", name: "Extended", isCancel: false, isUpdate: true, isIssued: false, isStatement: false},
38
+ {type: "Correction", name: "Correction", isCancel: false, isUpdate: true, isIssued: false, isStatement: false},
39
+ {type: "Upgraded", name: "Upgraded", isCancel: false, isUpdate: true, isIssued: false, isStatement: false},
40
+ {type: "Cancelled", name: "Cancelled", isCancel: true, isUpdate: false, isIssued: false, isStatement: false},
41
+ {type: "Routine", name: "Routine", isCancel: false, isUpdate: true, isIssued: false, isStatement: false},
42
+ ]
@@ -1,110 +1,67 @@
1
- /*
2
- _ _ _ __ __
3
- /\ | | | | (_) \ \ / /
4
- / \ | |_ _ __ ___ ___ ___ _ __ | |__ ___ _ __ _ ___ \ V /
5
- / /\ \| __| '_ ` _ \ / _ \/ __| '_ \| '_ \ / _ \ '__| |/ __| > <
6
- / ____ \ |_| | | | | | (_) \__ \ |_) | | | | __/ | | | (__ / . \
7
- /_/ \_\__|_| |_| |_|\___/|___/ .__/|_| |_|\___|_| |_|\___/_/ \_\
8
- | |
9
- |_|
10
-
11
- Created with ♥ by the AtmosphericX Team (KiyoWx, StarflightWx, & CJ Ziegler)
12
- Discord: https://atmosphericx-discord.scriptkitty.cafe
13
- Ko-Fi: https://ko-fi.com/k3yomi
14
- Documentation: http://localhost/documentation | https://atmosphericx.scriptkitty.cafe/documentation
15
-
16
- Internal Package: @atmosx/event-product-parser
17
-
18
- */
19
-
20
- type EnhancedEventType = {
21
- description?: string
22
- append?: boolean
23
- tornado?: string
24
- damage?: string
25
- pdswatch?: boolean
26
- }
27
-
28
- export const dict_enhanced: Record<string, Record<string, EnhancedEventType>> = {
29
- "Tornado Warning": {
30
- "Tornado Emergency": {
31
- description: "tornado emergency"
32
- },
33
- "PDS Tornado Warning": {
34
- description: "particularly dangerous situation",
35
- damage: `CONSIDERABLE`
36
- },
37
- "Radar Confirmed Tornado Warning": {
38
- description: "source...radar confirmed tornado.",
39
- tornado: `OBSERVED`
40
- },
41
- "Confirmed Tornado Warning": {
42
- tornado: `OBSERVED`
43
- },
44
- "Radar Indicated Tornado Warning": { },
45
- },
46
- "Fire Weather Warning": {
47
- "PDS Fire Weather Warning": {
48
- description: "particularly dangerous situation",
49
- },
50
- },
51
- "Blizzard Warning": {
52
- "PDS Blizzard Warning": {
53
- description: "particularly dangerous situation",
54
- },
55
- },
56
- "Ice Storm Warning": {
57
- "PDS Ice Storm Warning": {
58
- description: "particularly dangerous situation",
59
- },
60
- },
61
- "Special Marine Warning": {
62
- "Special Marine Warning (TPROB)": {
63
- tornado: `POSSIBLE`
64
- },
65
- },
66
- "Tornado Watch": {
67
- "PDS Tornado Watch": {
68
- pdswatch: true,
69
- }
70
- },
71
- "Severe Thunderstorm Watch": {
72
- "PDS Severe Thunderstorm Watch": {
73
- pdswatch: true
74
- }
75
- },
76
- "Flash Flood Warning": {
77
- "Flash Flood Emergency": {
78
- description: "flash flood emergency"
79
- },
80
- "Considerable Flash Flood Warning": {
81
- damage: `CONSIDERABLE`
82
- },
83
- },
84
- "Severe Thunderstorm Warning": {
85
- "EDS Severe Thunderstorm Warning (TPROB)": {
86
- description: "extremely dangerous situation",
87
- tornado: "POSSIBLE"
88
- },
89
- "EDS Severe Thunderstorm Warning": {
90
- description: "extremely dangerous situation"
91
- },
92
- "Destructive Severe Thunderstorm Warning (TPROB)": {
93
- damage: `DESTRUCTIVE`,
94
- tornado: `POSSIBLE`
95
- },
96
- "Destructive Severe Thunderstorm Warning": {
97
- damage: `DESTRUCTIVE`
98
- },
99
- "Considerable Severe Thunderstorm Warning (TPROB)": {
100
- damage: `CONSIDERABLE`,
101
- tornado: `POSSIBLE`
102
- },
103
- "Considerable Severe Thunderstorm Warning": {
104
- damage: `CONSIDERABLE`
105
- },
106
- "Severe Thunderstorm Warning (TPROB)": {
107
- tornado: `POSSIBLE`
108
- },
109
- },
1
+ /*
2
+ _ _ _ __ __
3
+ /\ | | | | (_) \ \ / /
4
+ / \ | |_ _ __ ___ ___ ___ _ __ | |__ ___ _ __ _ ___ \ V /
5
+ / /\ \| __| '_ ` _ \ / _ \/ __| '_ \| '_ \ / _ \ '__| |/ __| > <
6
+ / ____ \ |_| | | | | | (_) \__ \ |_) | | | | __/ | | | (__ / . \
7
+ /_/ \_\__|_| |_| |_|\___/|___/ .__/|_| |_|\___|_| |_|\___/_/ \_\
8
+ | |
9
+ |_|
10
+
11
+ Created with ♥ by the AtmosphericX Team (KiyoWx, StarflightWx, & CJ Ziegler)
12
+ Discord: https://atmosphericx-discord.scriptkitty.cafe
13
+ Ko-Fi: https://ko-fi.com/k3yomi
14
+ Documentation: http://localhost/documentation | https://atmosphericx.scriptkitty.cafe/documentation
15
+
16
+ Internal Package: @atmosx/event-product-parser
17
+
18
+ */
19
+
20
+ type EnhancedEventType = {
21
+ description?: string
22
+ append?: boolean
23
+ tornado?: string
24
+ damage?: string
25
+ pdswatch?: boolean
26
+ }
27
+
28
+ export const dict_enhanced: Record<string, Record<string, EnhancedEventType>> = {
29
+ "Tornado Warning": {
30
+ "Tornado Emergency": { description: "tornado emergency" },
31
+ "PDS Tornado Warning": { description: "particularly dangerous situation", damage: `CONSIDERABLE` },
32
+ "Radar Confirmed Tornado Warning": { description: "source...radar confirmed tornado.", tornado: `OBSERVED` },
33
+ "Confirmed Tornado Warning": { tornado: `OBSERVED` },
34
+ "Radar Indicated Tornado Warning": { },
35
+ },
36
+ "Fire Weather Warning": {
37
+ "PDS Fire Weather Warning": { description: "particularly dangerous situation" },
38
+ },
39
+ "Blizzard Warning": {
40
+ "PDS Blizzard Warning": { description: "particularly dangerous situation" },
41
+ },
42
+ "Ice Storm Warning": {
43
+ "PDS Ice Storm Warning": { description: "particularly dangerous situation" },
44
+ },
45
+ "Special Marine Warning": {
46
+ "Special Marine Warning (TPROB)": { tornado: `POSSIBLE` },
47
+ },
48
+ "Tornado Watch": {
49
+ "PDS Tornado Watch": { pdswatch: true }
50
+ },
51
+ "Severe Thunderstorm Watch": {
52
+ "PDS Severe Thunderstorm Watch": { pdswatch: true }
53
+ },
54
+ "Flash Flood Warning": {
55
+ "Flash Flood Emergency": { description: "flash flood emergency" },
56
+ "Considerable Flash Flood Warning": { damage: `CONSIDERABLE` },
57
+ },
58
+ "Severe Thunderstorm Warning": {
59
+ "EDS Severe Thunderstorm Warning (TPROB)": { description: "extremely dangerous situation", tornado: "POSSIBLE" },
60
+ "EDS Severe Thunderstorm Warning": { description: "extremely dangerous situation" },
61
+ "Destructive Severe Thunderstorm Warning (TPROB)": { damage: `DESTRUCTIVE`, tornado: `POSSIBLE` },
62
+ "Destructive Severe Thunderstorm Warning": { damage: `DESTRUCTIVE` },
63
+ "Considerable Severe Thunderstorm Warning (TPROB)": { damage: `CONSIDERABLE`, tornado: `POSSIBLE` },
64
+ "Considerable Severe Thunderstorm Warning": { damage: `CONSIDERABLE` },
65
+ "Severe Thunderstorm Warning (TPROB)": { tornado: `POSSIBLE` },
66
+ },
110
67
  }
@@ -1,82 +1,82 @@
1
- /*
2
- _ _ _ __ __
3
- /\ | | | | (_) \ \ / /
4
- / \ | |_ _ __ ___ ___ ___ _ __ | |__ ___ _ __ _ ___ \ V /
5
- / /\ \| __| '_ ` _ \ / _ \/ __| '_ \| '_ \ / _ \ '__| |/ __| > <
6
- / ____ \ |_| | | | | | (_) \__ \ |_) | | | | __/ | | | (__ / . \
7
- /_/ \_\__|_| |_| |_|\___/|___/ .__/|_| |_|\___|_| |_|\___/_/ \_\
8
- | |
9
- |_|
10
-
11
- Created with ♥ by the AtmosphericX Team (KiyoWx, StarflightWx, & CJ Ziegler)
12
- Discord: https://atmosphericx-discord.scriptkitty.cafe
13
- Ko-Fi: https://ko-fi.com/k3yomi
14
- Documentation: http://localhost/documentation | https://atmosphericx.scriptkitty.cafe/documentation
15
-
16
- Internal Package: @atmosx/event-product-parser
17
-
18
- */
19
-
20
- export const dict_events: Record<string, string> = {
21
- "AF": "Ashfall",
22
- "AS": "Air Stagnation",
23
- "BH": "Beach Hazard",
24
- "BW": "Brisk Wind",
25
- "BZ": "Blizzard",
26
- "CF": "Coastal Flood",
27
- "DF": "Debris Flow",
28
- "DS": "Dust Storm",
29
- "EC": "Extreme Cold",
30
- "EH": "Excessive Heat",
31
- "XH": "Extreme Heat",
32
- "EW": "Extreme Wind",
33
- "FA": "Areal Flood",
34
- "FF": "Flash Flood",
35
- "FG": "Dense Fog",
36
- "FL": "Flood",
37
- "FR": "Frost",
38
- "FW": "Fire Weather",
39
- "FZ": "Freeze",
40
- "GL": "Gale",
41
- "HF": "Hurricane Force Wind",
42
- "HT": "Heat",
43
- "HU": "Hurricane",
44
- "HW": "High Wind",
45
- "HY": "Hydrologic",
46
- "HZ": "Hard Freeze",
47
- "IS": "Ice Storm",
48
- "LE": "Lake Effect Snow",
49
- "LO": "Low Water",
50
- "LS": "Lakeshore Flood",
51
- "LW": "Lake Wind",
52
- "MA": "Special Marine",
53
- "EQ": "Earthquake",
54
- "MF": "Dense Fog",
55
- "MH": "Ashfall",
56
- "MS": "Dense Smoke",
57
- "RB": "Small Craft for Rough Bar",
58
- "RP": "Rip Current Risk",
59
- "SC": "Small Craft",
60
- "SE": "Hazardous Seas",
61
- "SI": "Small Craft for Winds",
62
- "SM": "Dense Smoke",
63
- "SQ": "Snow Squall",
64
- "SR": "Storm",
65
- "SS": "Storm Surge",
66
- "SU": "High Surf",
67
- "SV": "Severe Thunderstorm",
68
- "SW": "Small Craft for Hazardous Seas",
69
- "TO": "Tornado",
70
- "TR": "Tropical Storm",
71
- "TS": "Tsunami",
72
- "TY": "Typhoon",
73
- "SP": "Special Weather",
74
- "UP": "Heavy Freezing Spray",
75
- "WC": "Wind Chill",
76
- "WI": "Wind",
77
- "WS": "Winter Storm",
78
- "WW": "Winter Weather",
79
- "ZF": "Freezing Fog",
80
- "ZR": "Freezing Rain",
81
- "ZY": "Freezing Spray"
82
- };
1
+ /*
2
+ _ _ _ __ __
3
+ /\ | | | | (_) \ \ / /
4
+ / \ | |_ _ __ ___ ___ ___ _ __ | |__ ___ _ __ _ ___ \ V /
5
+ / /\ \| __| '_ ` _ \ / _ \/ __| '_ \| '_ \ / _ \ '__| |/ __| > <
6
+ / ____ \ |_| | | | | | (_) \__ \ |_) | | | | __/ | | | (__ / . \
7
+ /_/ \_\__|_| |_| |_|\___/|___/ .__/|_| |_|\___|_| |_|\___/_/ \_\
8
+ | |
9
+ |_|
10
+
11
+ Created with ♥ by the AtmosphericX Team (KiyoWx, StarflightWx, & CJ Ziegler)
12
+ Discord: https://atmosphericx-discord.scriptkitty.cafe
13
+ Ko-Fi: https://ko-fi.com/k3yomi
14
+ Documentation: http://localhost/documentation | https://atmosphericx.scriptkitty.cafe/documentation
15
+
16
+ Internal Package: @atmosx/event-product-parser
17
+
18
+ */
19
+
20
+ export const dict_events: Record<string, string> = {
21
+ "AF": "Ashfall",
22
+ "AS": "Air Stagnation",
23
+ "BH": "Beach Hazard",
24
+ "BW": "Brisk Wind",
25
+ "BZ": "Blizzard",
26
+ "CF": "Coastal Flood",
27
+ "DF": "Debris Flow",
28
+ "DS": "Dust Storm",
29
+ "EC": "Extreme Cold",
30
+ "EH": "Excessive Heat",
31
+ "XH": "Extreme Heat",
32
+ "EW": "Extreme Wind",
33
+ "FA": "Areal Flood",
34
+ "FF": "Flash Flood",
35
+ "FG": "Dense Fog",
36
+ "FL": "Flood",
37
+ "FR": "Frost",
38
+ "FW": "Fire Weather",
39
+ "FZ": "Freeze",
40
+ "GL": "Gale",
41
+ "HF": "Hurricane Force Wind",
42
+ "HT": "Heat",
43
+ "HU": "Hurricane",
44
+ "HW": "High Wind",
45
+ "HY": "Hydrologic",
46
+ "HZ": "Hard Freeze",
47
+ "IS": "Ice Storm",
48
+ "LE": "Lake Effect Snow",
49
+ "LO": "Low Water",
50
+ "LS": "Lakeshore Flood",
51
+ "LW": "Lake Wind",
52
+ "MA": "Special Marine",
53
+ "EQ": "Earthquake",
54
+ "MF": "Dense Fog",
55
+ "MH": "Ashfall",
56
+ "MS": "Dense Smoke",
57
+ "RB": "Small Craft for Rough Bar",
58
+ "RP": "Rip Current Risk",
59
+ "SC": "Small Craft",
60
+ "SE": "Hazardous Seas",
61
+ "SI": "Small Craft for Winds",
62
+ "SM": "Dense Smoke",
63
+ "SQ": "Snow Squall",
64
+ "SR": "Storm",
65
+ "SS": "Storm Surge",
66
+ "SU": "High Surf",
67
+ "SV": "Severe Thunderstorm",
68
+ "SW": "Small Craft for Hazardous Seas",
69
+ "TO": "Tornado",
70
+ "TR": "Tropical Storm",
71
+ "TS": "Tsunami",
72
+ "TY": "Typhoon",
73
+ "SP": "Special Weather",
74
+ "UP": "Heavy Freezing Spray",
75
+ "WC": "Wind Chill",
76
+ "WI": "Wind",
77
+ "WS": "Winter Storm",
78
+ "WW": "Winter Weather",
79
+ "ZF": "Freezing Fog",
80
+ "ZR": "Freezing Rain",
81
+ "ZY": "Freezing Spray"
82
+ };
@@ -1,29 +1,29 @@
1
- /*
2
- _ _ _ __ __
3
- /\ | | | | (_) \ \ / /
4
- / \ | |_ _ __ ___ ___ ___ _ __ | |__ ___ _ __ _ ___ \ V /
5
- / /\ \| __| '_ ` _ \ / _ \/ __| '_ \| '_ \ / _ \ '__| |/ __| > <
6
- / ____ \ |_| | | | | | (_) \__ \ |_) | | | | __/ | | | (__ / . \
7
- /_/ \_\__|_| |_| |_|\___/|___/ .__/|_| |_|\___|_| |_|\___/_/ \_\
8
- | |
9
- |_|
10
-
11
- Created with ♥ by the AtmosphericX Team (KiyoWx, StarflightWx, & CJ Ziegler)
12
- Discord: https://atmosphericx-discord.scriptkitty.cafe
13
- Ko-Fi: https://ko-fi.com/k3yomi
14
- Documentation: http://localhost/documentation | https://atmosphericx.scriptkitty.cafe/documentation
15
-
16
- Internal Package: @atmosx/event-product-parser
17
-
18
- */
19
-
20
- export const dict_expressions: { [key: string]: RegExp } = {
21
- location: new RegExp(/^([A-Za-z.\-' ]+),\s*([A-Z]{2})$/),
22
- pvtec: new RegExp(`[OTEX].(NEW|CON|EXT|EXA|EXB|UPG|CAN|EXP|COR|ROU).[A-Z]{4}.[A-Z]{2}.[WAYSFON].[0-9]{4}.[0-9]{6}T[0-9]{4}Z-[0-9]{6}T[0-9]{4}Z`, "g"),
23
- hvtec: new RegExp(`[a-zA-Z0-9]{4}.[A-Z0-9].[A-Z]{2}.[0-9]{6}T[0-9]{4}Z.[0-9]{6}T[0-9]{4}Z.[0-9]{6}T[0-9]{4}Z.[A-Z]{2}`, "imu"),
24
- wmo: new RegExp(`[A-Z0-9]{6}\\s[A-Z]{4}\\s\\d{6}`, "imu"),
25
- ugc1: new RegExp(`(\\w{2}[CZ](\\d{3}((-|>)\\s?(\\n\\n)?))+)`, "imu"),
26
- ugc2: new RegExp(`(\\d{6}(-|>)\\s?(\\n\\n)?)`, "imu"),
27
- ugc3: new RegExp(`(\\d{6})(?=-|$)`, "imu"),
28
- dateline: new RegExp(`\\d{3,4}\\s*(AM|PM)?\\s*[A-Z]{2,4}\\s+[A-Z]{3,}\\s+[A-Z]{3,}\\s+\\d{1,2}\\s+\\d{4}`, "gim"),
1
+ /*
2
+ _ _ _ __ __
3
+ /\ | | | | (_) \ \ / /
4
+ / \ | |_ _ __ ___ ___ ___ _ __ | |__ ___ _ __ _ ___ \ V /
5
+ / /\ \| __| '_ ` _ \ / _ \/ __| '_ \| '_ \ / _ \ '__| |/ __| > <
6
+ / ____ \ |_| | | | | | (_) \__ \ |_) | | | | __/ | | | (__ / . \
7
+ /_/ \_\__|_| |_| |_|\___/|___/ .__/|_| |_|\___|_| |_|\___/_/ \_\
8
+ | |
9
+ |_|
10
+
11
+ Created with ♥ by the AtmosphericX Team (KiyoWx, StarflightWx, & CJ Ziegler)
12
+ Discord: https://atmosphericx-discord.scriptkitty.cafe
13
+ Ko-Fi: https://ko-fi.com/k3yomi
14
+ Documentation: http://localhost/documentation | https://atmosphericx.scriptkitty.cafe/documentation
15
+
16
+ Internal Package: @atmosx/event-product-parser
17
+
18
+ */
19
+
20
+ export const dict_expressions: { [key: string]: RegExp } = {
21
+ location: new RegExp(/^([A-Za-z.\-' ]+),\s*([A-Z]{2})$/),
22
+ pvtec: new RegExp(`[OTEX].(NEW|CON|EXT|EXA|EXB|UPG|CAN|EXP|COR|ROU).[A-Z]{4}.[A-Z]{2}.[WAYSFON].[0-9]{4}.[0-9]{6}T[0-9]{4}Z-[0-9]{6}T[0-9]{4}Z`, "g"),
23
+ hvtec: new RegExp(`[a-zA-Z0-9]{4}.[A-Z0-9].[A-Z]{2}.[0-9]{6}T[0-9]{4}Z.[0-9]{6}T[0-9]{4}Z.[0-9]{6}T[0-9]{4}Z.[A-Z]{2}`, "imu"),
24
+ wmo: new RegExp(`[A-Z0-9]{6}\\s[A-Z]{4}\\s\\d{6}`, "imu"),
25
+ ugc1: new RegExp(`(\\w{2}[CZ](\\d{3}((-|>)\\s?(\\n\\n)?))+)`, "imu"),
26
+ ugc2: new RegExp(`(\\d{6}(-|>)\\s?(\\n\\n)?)`, "imu"),
27
+ ugc3: new RegExp(`(\\d{6})(?=-|$)`, "imu"),
28
+ dateline: new RegExp(`\\d{3,4}\\s*(AM|PM)?\\s*[A-Z]{2,4}\\s+[A-Z]{3,}\\s+[A-Z]{3,}\\s+\\d{1,2}\\s+\\d{4}`, "gim"),
29
29
  }