@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,61 +1,61 @@
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
- import { TypeSettings } from "../@types/type.settings";
21
- import { bootstrap } from "../bootstrap";
22
- import { setWarning } from "../@modules/@utilities/utilities.setWarning"
23
- import { setSettings } from "../@modules/@utilities/utilities.setSettings"
24
- import { xDeploy } from "../@modules/@xmpp/xmpp.xDeploy"
25
- import { initializeDatabase } from "../@modules/@database/database.init";
26
- import { getCachedEvents } from "../@modules/@database/database.cache";
27
- import { setCronSchedule } from "../@modules/@utilities/utilities.setCronSchedule";
28
- import { updateNode } from "../@manager/manager.updateNodes";
29
- import { updateEvents } from "../@manager/manager.updateEvents";
30
- import { Cron } from "croner";
31
-
32
- export const startService = async (configurations: TypeSettings): Promise<void> => {
33
- if (!bootstrap.isReady) {
34
- return setWarning({
35
- message: `You can not create another instance without shutting down the current one first, please make sure to call the stop() method first!`
36
- })
37
- }
38
- const settings = setSettings(configurations);
39
- bootstrap.isReady = true;
40
- await initializeDatabase();
41
- if (settings.EnableWireService) {
42
- (async () => {
43
- await getCachedEvents();
44
- await xDeploy()
45
- })();
46
- }
47
- await setCronSchedule()
48
- let scheduleInterval = !settings.EnableWireService ? settings.NationalWeatherServiceSettings.CallbackInterval : 1;
49
- if (!settings.EnableWireService && scheduleInterval < 15) {
50
- setWarning({ message: `Schedule interval of ${scheduleInterval} seconds is too low, setting to 15 seconds` })
51
- bootstrap.settings.NationalWeatherServiceSettings.CallbackInterval = 15;
52
- scheduleInterval = 15;
53
- }
54
- bootstrap.cron = new Cron(`*/${scheduleInterval} * * * * *`, async () => {
55
- await setCronSchedule();
56
- })
57
- bootstrap.cron = new Cron(`* * * * * *`, async () => {
58
- await updateNode();
59
- await updateEvents();
60
- })
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
+ import { TypeSettings } from "../@types/type.settings";
21
+ import { bootstrap } from "../bootstrap";
22
+ import { setWarning } from "../@modules/@utilities/utilities.setWarning"
23
+ import { setSettings } from "../@modules/@utilities/utilities.setSettings"
24
+ import { xDeploy } from "../@modules/@xmpp/xmpp.xDeploy"
25
+ import { initializeDatabase } from "../@modules/@database/database.init";
26
+ import { getCachedEvents } from "../@modules/@database/database.cache";
27
+ import { setCronSchedule } from "../@modules/@utilities/utilities.setCronSchedule";
28
+ import { updateNode } from "../@manager/manager.updateNodes";
29
+ import { updateEvents } from "../@manager/manager.updateEvents";
30
+ import { Cron } from "croner";
31
+
32
+ export const startService = async (configurations: TypeSettings): Promise<void> => {
33
+ if (!bootstrap.isReady) {
34
+ return setWarning({
35
+ message: `You can not create another instance without shutting down the current one first, please make sure to call the stop() method first!`
36
+ })
37
+ }
38
+ const settings = setSettings(configurations);
39
+ bootstrap.isReady = true;
40
+ await initializeDatabase();
41
+ if (settings.EnableWireService) {
42
+ (async () => {
43
+ await getCachedEvents();
44
+ await xDeploy()
45
+ })();
46
+ }
47
+ await setCronSchedule()
48
+ let scheduleInterval = !settings.EnableWireService ? settings.NationalWeatherServiceSettings.CallbackInterval : 1;
49
+ if (!settings.EnableWireService && scheduleInterval < 15) {
50
+ setWarning({ message: `Schedule interval of ${scheduleInterval} seconds is too low, setting to 15 seconds` })
51
+ bootstrap.settings.NationalWeatherServiceSettings.CallbackInterval = 15;
52
+ scheduleInterval = 15;
53
+ }
54
+ bootstrap.cron = new Cron(`*/${scheduleInterval} * * * * *`, async () => {
55
+ await setCronSchedule();
56
+ })
57
+ bootstrap.cron = new Cron(`* * * * * *`, async () => {
58
+ await updateNode();
59
+ await updateEvents();
60
+ })
61
61
  }
@@ -1,32 +1,32 @@
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
- import { bootstrap } from "../bootstrap";
21
-
22
- export const stopService = async (): Promise<void> => {
23
- if (bootstrap.isReady) {
24
- bootstrap.isReady = false;
25
- if (bootstrap.session_xmpp) {
26
- try { await bootstrap.session_xmpp.stop(); } catch {}
27
- bootstrap.cache.isConnected = false;
28
- bootstrap.cache.sigHault = true;
29
- bootstrap.session_xmpp = null;
30
- }
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
+ import { bootstrap } from "../bootstrap";
21
+
22
+ export const stopService = async (): Promise<void> => {
23
+ if (bootstrap.isReady) {
24
+ bootstrap.isReady = false;
25
+ if (bootstrap.session_xmpp) {
26
+ try { await bootstrap.session_xmpp.stop(); } catch {}
27
+ bootstrap.cache.isConnected = false;
28
+ bootstrap.cache.sigHault = true;
29
+ bootstrap.session_xmpp = null;
30
+ }
31
+ }
32
32
  }
@@ -1,28 +1,28 @@
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_actions: Record<string, string> = {
21
- "W": "Warning",
22
- "F": "Forecast",
23
- "A": "Watch",
24
- "O": "Outlook",
25
- "Y": "Advisory",
26
- "N": "Synopsis",
27
- "S": "Statement"
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_actions: Record<string, string> = {
21
+ "W": "Warning",
22
+ "F": "Forecast",
23
+ "A": "Watch",
24
+ "O": "Outlook",
25
+ "Y": "Advisory",
26
+ "N": "Synopsis",
27
+ "S": "Statement"
28
28
  }