@aguacerowx/react-native 0.0.53 → 0.0.54

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 (261) hide show
  1. package/LICENSE +21 -0
  2. package/android/src/main/java/com/aguacerowx/reactnative/NexradRadarLayerView.java +14 -2
  3. package/android/src/main/java/com/aguacerowx/reactnative/WeatherFrameProcessorModule.java +77 -0
  4. package/index.js +1 -1
  5. package/ios/WeatherFrameProcessorModule.m +19 -15
  6. package/ios/WeatherFrameProcessorModule.swift +65 -0
  7. package/lib/commonjs/AguaceroContext.js +0 -4
  8. package/lib/commonjs/AguaceroContext.js.map +1 -1
  9. package/lib/commonjs/GridRenderLayer.js +62 -76
  10. package/lib/commonjs/GridRenderLayer.js.map +1 -1
  11. package/lib/commonjs/MapManager.js +110 -224
  12. package/lib/commonjs/MapManager.js.map +1 -1
  13. package/lib/commonjs/MapRegistry.js +21 -33
  14. package/lib/commonjs/MapRegistry.js.map +1 -1
  15. package/lib/commonjs/NexradRadarLayer.android.js +28 -100
  16. package/lib/commonjs/NexradRadarLayer.android.js.map +1 -1
  17. package/lib/commonjs/NexradRadarLayer.ios.js +26 -97
  18. package/lib/commonjs/NexradRadarLayer.ios.js.map +1 -1
  19. package/lib/commonjs/NexradSitesMapLayer.js +41 -61
  20. package/lib/commonjs/NexradSitesMapLayer.js.map +1 -1
  21. package/lib/commonjs/SatelliteLayer.android.js +26 -38
  22. package/lib/commonjs/SatelliteLayer.android.js.map +1 -1
  23. package/lib/commonjs/SatelliteLayer.ios.js +30 -42
  24. package/lib/commonjs/SatelliteLayer.ios.js.map +1 -1
  25. package/lib/commonjs/StyleApplicator.js +129 -175
  26. package/lib/commonjs/StyleApplicator.js.map +1 -1
  27. package/lib/commonjs/WeatherLayerManager.js +995 -1646
  28. package/lib/commonjs/WeatherLayerManager.js.map +1 -1
  29. package/lib/commonjs/aguaceroCoreDebugHooks.js +58 -130
  30. package/lib/commonjs/aguaceroCoreDebugHooks.js.map +1 -1
  31. package/lib/commonjs/aguaceroRnDebug.js +147 -288
  32. package/lib/commonjs/aguaceroRnDebug.js.map +1 -1
  33. package/lib/commonjs/cdnAuthenticatedFetch.js +104 -0
  34. package/lib/commonjs/cdnAuthenticatedFetch.js.map +1 -0
  35. package/lib/commonjs/dispatchViewManagerCommandCompat.js +51 -88
  36. package/lib/commonjs/dispatchViewManagerCommandCompat.js.map +1 -1
  37. package/lib/commonjs/gridCdnAuth.js +41 -50
  38. package/lib/commonjs/gridCdnAuth.js.map +1 -1
  39. package/lib/commonjs/index.js +14 -0
  40. package/lib/commonjs/index.js.map +1 -1
  41. package/lib/commonjs/nexrad/nexradAndroidController.js +851 -863
  42. package/lib/commonjs/nexrad/nexradAndroidController.js.map +1 -1
  43. package/lib/commonjs/nexrad/nexradCrossSectionSampleAtLatLon.bundled.js +62 -85
  44. package/lib/commonjs/nexrad/nexradCrossSectionSampleAtLatLon.bundled.js.map +1 -1
  45. package/lib/commonjs/nexrad/nexradDiag.js +32 -148
  46. package/lib/commonjs/nexrad/nexradDiag.js.map +1 -1
  47. package/lib/commonjs/nexrad/nexradLevel2Keys.js +261 -0
  48. package/lib/commonjs/nexrad/nexradLevel2Keys.js.map +1 -0
  49. package/lib/commonjs/nexrad/nexradLutBuild.js +64 -111
  50. package/lib/commonjs/nexrad/nexradLutBuild.js.map +1 -1
  51. package/lib/commonjs/nexrad/nexradMapboxFrameOpts.bundled.js +136 -164
  52. package/lib/commonjs/nexrad/nexradMapboxFrameOpts.bundled.js.map +1 -1
  53. package/lib/commonjs/nexrad/nexradSdkImports.js +51 -0
  54. package/lib/commonjs/nexrad/nexradSdkImports.js.map +1 -0
  55. package/lib/commonjs/nexrad/radarArchiveCore.bundled.js +2848 -4455
  56. package/lib/commonjs/nexrad/radarArchiveCore.bundled.js.map +1 -1
  57. package/lib/commonjs/nexrad/radarDecode.worker.bundled.js +445 -648
  58. package/lib/commonjs/nexrad/radarDecode.worker.bundled.js.map +1 -1
  59. package/lib/commonjs/nexrad/radarFrameGpuMatch.bundled.js +52 -68
  60. package/lib/commonjs/nexrad/radarFrameGpuMatch.bundled.js.map +1 -1
  61. package/lib/commonjs/nexradNativeCommandIds.js +24 -0
  62. package/lib/commonjs/nexradNativeCommandIds.js.map +1 -0
  63. package/lib/commonjs/nws/NwsAlertsOverlay.android.js.map +1 -1
  64. package/lib/commonjs/nws/NwsAlertsOverlay.ios.js.map +1 -1
  65. package/lib/commonjs/nws/NwsAlertsOverlay.js +3 -3
  66. package/lib/commonjs/nws/NwsAlertsOverlay.js.map +1 -1
  67. package/lib/commonjs/nws/NwsAlertsOverlay.native.js +235 -361
  68. package/lib/commonjs/nws/NwsAlertsOverlay.native.js.map +1 -1
  69. package/lib/commonjs/nws/eventSourceRnPolyfill.js +92 -146
  70. package/lib/commonjs/nws/eventSourceRnPolyfill.js.map +1 -1
  71. package/lib/commonjs/nws/nwsAndroidConstants.js +2 -8
  72. package/lib/commonjs/nws/nwsAndroidConstants.js.map +1 -1
  73. package/lib/commonjs/satellite/satelliteAndroidController.js +117 -202
  74. package/lib/commonjs/satellite/satelliteAndroidController.js.map +1 -1
  75. package/lib/commonjs/satelliteBridgeDiag.js +3 -13
  76. package/lib/commonjs/satelliteBridgeDiag.js.map +1 -1
  77. package/lib/commonjs/satelliteRnDebug.js +117 -218
  78. package/lib/commonjs/satelliteRnDebug.js.map +1 -1
  79. package/lib/module/AguaceroContext.js +2 -7
  80. package/lib/module/AguaceroContext.js.map +1 -1
  81. package/lib/module/GridRenderLayer.js +66 -80
  82. package/lib/module/GridRenderLayer.js.map +1 -1
  83. package/lib/module/MapManager.js +125 -239
  84. package/lib/module/MapManager.js.map +1 -1
  85. package/lib/module/MapRegistry.js +21 -33
  86. package/lib/module/MapRegistry.js.map +1 -1
  87. package/lib/module/NexradRadarLayer.android.js +32 -104
  88. package/lib/module/NexradRadarLayer.android.js.map +1 -1
  89. package/lib/module/NexradRadarLayer.ios.js +30 -101
  90. package/lib/module/NexradRadarLayer.ios.js.map +1 -1
  91. package/lib/module/NexradSitesMapLayer.js +44 -63
  92. package/lib/module/NexradSitesMapLayer.js.map +1 -1
  93. package/lib/module/SatelliteLayer.android.js +32 -44
  94. package/lib/module/SatelliteLayer.android.js.map +1 -1
  95. package/lib/module/SatelliteLayer.ios.js +36 -48
  96. package/lib/module/SatelliteLayer.ios.js.map +1 -1
  97. package/lib/module/StyleApplicator.js +144 -191
  98. package/lib/module/StyleApplicator.js.map +1 -1
  99. package/lib/module/WeatherLayerManager.js +1024 -1675
  100. package/lib/module/WeatherLayerManager.js.map +1 -1
  101. package/lib/module/aguaceroCoreDebugHooks.js +59 -130
  102. package/lib/module/aguaceroCoreDebugHooks.js.map +1 -1
  103. package/lib/module/aguaceroRnDebug.js +151 -292
  104. package/lib/module/aguaceroRnDebug.js.map +1 -1
  105. package/lib/module/cdnAuthenticatedFetch.js +97 -0
  106. package/lib/module/cdnAuthenticatedFetch.js.map +1 -0
  107. package/lib/module/dispatchViewManagerCommandCompat.js +52 -90
  108. package/lib/module/dispatchViewManagerCommandCompat.js.map +1 -1
  109. package/lib/module/gridCdnAuth.js +38 -50
  110. package/lib/module/gridCdnAuth.js.map +1 -1
  111. package/lib/module/index.js +9 -7
  112. package/lib/module/index.js.map +1 -1
  113. package/lib/module/nexrad/nexradAndroidController.js +865 -876
  114. package/lib/module/nexrad/nexradAndroidController.js.map +1 -1
  115. package/lib/module/nexrad/nexradCrossSectionSampleAtLatLon.bundled.js +62 -85
  116. package/lib/module/nexrad/nexradCrossSectionSampleAtLatLon.bundled.js.map +1 -1
  117. package/lib/module/nexrad/nexradDiag.js +31 -145
  118. package/lib/module/nexrad/nexradDiag.js.map +1 -1
  119. package/lib/module/nexrad/nexradLevel2Keys.js +245 -0
  120. package/lib/module/nexrad/nexradLevel2Keys.js.map +1 -0
  121. package/lib/module/nexrad/nexradLutBuild.js +64 -110
  122. package/lib/module/nexrad/nexradLutBuild.js.map +1 -1
  123. package/lib/module/nexrad/nexradMapboxFrameOpts.bundled.js +136 -163
  124. package/lib/module/nexrad/nexradMapboxFrameOpts.bundled.js.map +1 -1
  125. package/lib/module/nexrad/nexradSdkImports.js +4 -0
  126. package/lib/module/nexrad/nexradSdkImports.js.map +1 -0
  127. package/lib/module/nexrad/radarArchiveCore.bundled.js +2839 -4448
  128. package/lib/module/nexrad/radarArchiveCore.bundled.js.map +1 -1
  129. package/lib/module/nexrad/radarDecode.worker.bundled.js +445 -648
  130. package/lib/module/nexrad/radarDecode.worker.bundled.js.map +1 -1
  131. package/lib/module/nexrad/radarFrameGpuMatch.bundled.js +50 -66
  132. package/lib/module/nexrad/radarFrameGpuMatch.bundled.js.map +1 -1
  133. package/lib/module/nexradNativeCommandIds.js +18 -0
  134. package/lib/module/nexradNativeCommandIds.js.map +1 -0
  135. package/lib/module/nws/NwsAlertsOverlay.android.js +1 -1
  136. package/lib/module/nws/NwsAlertsOverlay.android.js.map +1 -1
  137. package/lib/module/nws/NwsAlertsOverlay.ios.js +1 -1
  138. package/lib/module/nws/NwsAlertsOverlay.ios.js.map +1 -1
  139. package/lib/module/nws/NwsAlertsOverlay.js +5 -5
  140. package/lib/module/nws/NwsAlertsOverlay.js.map +1 -1
  141. package/lib/module/nws/NwsAlertsOverlay.native.js +248 -373
  142. package/lib/module/nws/NwsAlertsOverlay.native.js.map +1 -1
  143. package/lib/module/nws/eventSourceRnPolyfill.js +92 -146
  144. package/lib/module/nws/eventSourceRnPolyfill.js.map +1 -1
  145. package/lib/module/nws/nwsAndroidConstants.js +2 -8
  146. package/lib/module/nws/nwsAndroidConstants.js.map +1 -1
  147. package/lib/module/satellite/satelliteAndroidController.js +123 -208
  148. package/lib/module/satellite/satelliteAndroidController.js.map +1 -1
  149. package/lib/module/satelliteBridgeDiag.js +3 -13
  150. package/lib/module/satelliteBridgeDiag.js.map +1 -1
  151. package/lib/module/satelliteRnDebug.js +123 -223
  152. package/lib/module/satelliteRnDebug.js.map +1 -1
  153. package/lib/typescript/AguaceroContext.d.ts +0 -4
  154. package/lib/typescript/AguaceroContext.d.ts.map +1 -1
  155. package/lib/typescript/GridRenderLayer.d.ts.map +1 -1
  156. package/lib/typescript/MapManager.d.ts +0 -12
  157. package/lib/typescript/MapManager.d.ts.map +1 -1
  158. package/lib/typescript/MapRegistry.d.ts +10 -12
  159. package/lib/typescript/MapRegistry.d.ts.map +1 -1
  160. package/lib/typescript/NexradRadarLayer.android.d.ts.map +1 -1
  161. package/lib/typescript/NexradRadarLayer.ios.d.ts.map +1 -1
  162. package/lib/typescript/NexradSitesMapLayer.d.ts +4 -10
  163. package/lib/typescript/NexradSitesMapLayer.d.ts.map +1 -1
  164. package/lib/typescript/SatelliteLayer.android.d.ts.map +1 -1
  165. package/lib/typescript/SatelliteLayer.ios.d.ts.map +1 -1
  166. package/lib/typescript/StyleApplicator.d.ts +1 -1
  167. package/lib/typescript/StyleApplicator.d.ts.map +1 -1
  168. package/lib/typescript/WeatherLayerManager.d.ts.map +1 -1
  169. package/lib/typescript/aguaceroCoreDebugHooks.d.ts +2 -9
  170. package/lib/typescript/aguaceroCoreDebugHooks.d.ts.map +1 -1
  171. package/lib/typescript/aguaceroRnDebug.d.ts +47 -66
  172. package/lib/typescript/aguaceroRnDebug.d.ts.map +1 -1
  173. package/lib/typescript/cdnAuthenticatedFetch.d.ts +10 -0
  174. package/lib/typescript/cdnAuthenticatedFetch.d.ts.map +1 -0
  175. package/lib/typescript/dispatchViewManagerCommandCompat.d.ts +1 -17
  176. package/lib/typescript/dispatchViewManagerCommandCompat.d.ts.map +1 -1
  177. package/lib/typescript/gridCdnAuth.d.ts +16 -21
  178. package/lib/typescript/gridCdnAuth.d.ts.map +1 -1
  179. package/lib/typescript/index.d.ts +1 -0
  180. package/lib/typescript/nexrad/nexradAndroidController.d.ts +39 -89
  181. package/lib/typescript/nexrad/nexradAndroidController.d.ts.map +1 -1
  182. package/lib/typescript/nexrad/nexradCrossSectionSampleAtLatLon.bundled.d.ts +2 -1
  183. package/lib/typescript/nexrad/nexradCrossSectionSampleAtLatLon.bundled.d.ts.map +1 -1
  184. package/lib/typescript/nexrad/nexradDiag.d.ts +13 -101
  185. package/lib/typescript/nexrad/nexradDiag.d.ts.map +1 -1
  186. package/lib/typescript/nexrad/nexradLevel2Keys.d.ts +36 -0
  187. package/lib/typescript/nexrad/nexradLevel2Keys.d.ts.map +1 -0
  188. package/lib/typescript/nexrad/nexradLutBuild.d.ts +3 -10
  189. package/lib/typescript/nexrad/nexradLutBuild.d.ts.map +1 -1
  190. package/lib/typescript/nexrad/nexradMapboxFrameOpts.bundled.d.ts +4 -3
  191. package/lib/typescript/nexrad/nexradMapboxFrameOpts.bundled.d.ts.map +1 -1
  192. package/lib/typescript/nexrad/nexradSdkImports.d.ts +2 -0
  193. package/lib/typescript/nexrad/nexradSdkImports.d.ts.map +1 -0
  194. package/lib/typescript/nexrad/radarArchiveCore.bundled.d.ts +12 -7
  195. package/lib/typescript/nexrad/radarArchiveCore.bundled.d.ts.map +1 -1
  196. package/lib/typescript/nexrad/radarDecode.worker.bundled.d.ts +20 -20
  197. package/lib/typescript/nexrad/radarDecode.worker.bundled.d.ts.map +1 -1
  198. package/lib/typescript/nexrad/radarFrameGpuMatch.bundled.d.ts +4 -3
  199. package/lib/typescript/nexrad/radarFrameGpuMatch.bundled.d.ts.map +1 -1
  200. package/lib/typescript/nexradNativeCommandIds.d.ts +2 -0
  201. package/lib/typescript/nexradNativeCommandIds.d.ts.map +1 -0
  202. package/lib/typescript/nws/NwsAlertsOverlay.native.d.ts +6 -17
  203. package/lib/typescript/nws/NwsAlertsOverlay.native.d.ts.map +1 -1
  204. package/lib/typescript/nws/eventSourceRnPolyfill.d.ts +0 -3
  205. package/lib/typescript/nws/eventSourceRnPolyfill.d.ts.map +1 -1
  206. package/lib/typescript/nws/nwsAndroidConstants.d.ts +0 -5
  207. package/lib/typescript/nws/nwsAndroidConstants.d.ts.map +1 -1
  208. package/lib/typescript/satellite/satelliteAndroidController.d.ts +9 -47
  209. package/lib/typescript/satellite/satelliteAndroidController.d.ts.map +1 -1
  210. package/lib/typescript/satelliteBridgeDiag.d.ts +1 -5
  211. package/lib/typescript/satelliteBridgeDiag.d.ts.map +1 -1
  212. package/lib/typescript/satelliteRnDebug.d.ts +24 -30
  213. package/lib/typescript/satelliteRnDebug.d.ts.map +1 -1
  214. package/package.json +75 -74
  215. package/src/AguaceroContext.js +1 -7
  216. package/src/GridRenderLayer.js +1 -128
  217. package/src/MapManager.js +1 -277
  218. package/src/MapRegistry.js +1 -56
  219. package/src/NexradRadarLayer.android.js +1 -121
  220. package/src/NexradRadarLayer.ios.js +1 -115
  221. package/src/NexradSitesMapLayer.js +1 -75
  222. package/src/SatelliteLayer.android.js +1 -63
  223. package/src/SatelliteLayer.ios.js +1 -70
  224. package/src/StyleApplicator.js +1 -241
  225. package/src/WeatherLayerManager.js +1 -2045
  226. package/src/aguaceroCoreDebugHooks.js +1 -142
  227. package/src/aguaceroRnDebug.js +1 -336
  228. package/src/cdnAuthenticatedFetch.js +1 -0
  229. package/src/dispatchViewManagerCommandCompat.js +1 -100
  230. package/src/gridCdnAuth.js +1 -56
  231. package/src/index.js +1 -27
  232. package/src/nexrad/nexradAndroidController.js +1 -1078
  233. package/src/nexrad/nexradCrossSectionSampleAtLatLon.bundled.js +1 -91
  234. package/src/nexrad/nexradDiag.js +1 -150
  235. package/src/nexrad/nexradLevel2Keys.js +1 -0
  236. package/src/nexrad/nexradLutBuild.js +1 -126
  237. package/src/nexrad/nexradMapboxFrameOpts.bundled.js +1 -245
  238. package/src/nexrad/nexradSdkImports.js +1 -0
  239. package/src/nexrad/radarArchiveCore.bundled.js +1 -7085
  240. package/src/nexrad/radarDecode.worker.bundled.js +1 -813
  241. package/src/nexrad/radarFrameGpuMatch.bundled.js +1 -79
  242. package/src/nexradNativeCommandIds.js +1 -0
  243. package/src/nws/NwsAlertsOverlay.android.js +1 -1
  244. package/src/nws/NwsAlertsOverlay.ios.js +1 -1
  245. package/src/nws/NwsAlertsOverlay.js +1 -7
  246. package/src/nws/NwsAlertsOverlay.native.js +1 -463
  247. package/src/nws/eventSourceRnPolyfill.js +7 -193
  248. package/src/nws/nwsAndroidConstants.js +1 -8
  249. package/src/satellite/satelliteAndroidController.js +1 -257
  250. package/src/satelliteBridgeDiag.js +1 -15
  251. package/src/satelliteRnDebug.js +1 -269
  252. package/lib/commonjs/nexrad/nexradNativeCommandIds.js +0 -51
  253. package/lib/commonjs/nexrad/nexradNativeCommandIds.js.map +0 -1
  254. package/lib/module/nexrad/nexradNativeCommandIds.js +0 -44
  255. package/lib/module/nexrad/nexradNativeCommandIds.js.map +0 -1
  256. package/lib/typescript/nexrad/nexradNativeCommandIds.d.ts +0 -9
  257. package/lib/typescript/nexrad/nexradNativeCommandIds.d.ts.map +0 -1
  258. package/src/nexrad/nexradNativeCommandIds.js +0 -44
  259. /package/lib/commonjs/{nexrad/nexradSitesUs.json → nexradSitesUs.json} +0 -0
  260. /package/lib/module/{nexrad/nexradSitesUs.json → nexradSitesUs.json} +0 -0
  261. /package/src/{nexrad/nexradSitesUs.json → nexradSitesUs.json} +0 -0
@@ -3,164 +3,48 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.nexradDiag = nexradDiag;
7
6
  exports.nexradDiagBootSnapshot = nexradDiagBootSnapshot;
8
- exports.nexradDiagEnabled = nexradDiagEnabled;
9
7
  exports.nexradDiagGateTextureSummary = nexradDiagGateTextureSummary;
10
8
  exports.nexradPerfSpan = nexradPerfSpan;
11
- exports.nexradPipeTrace = nexradPipeTrace;
12
- /**
13
- * NEXRAD pipeline diagnostics (Android / Metro).
14
- *
15
- * Verbose phases / perf: off unless {@code global.__AGUACERO_NEXRAD_DEBUG = true}
16
- * (filter {@code [Aguacero][NEXRAD]} and {@code [Aguacero][NEXRAD][PERF]}).
17
- *
18
- * Legacy pipe line-by-line bridge logs: only if {@code global.__AGUACERO_NEXRAD_PIPE_TRACE = true}.
19
- */
20
-
21
- function nexradDiagEnabled() {
22
- if (typeof globalThis !== 'undefined' && globalThis.__AGUACERO_NEXRAD_DEBUG === true) {
23
- return true;
24
- }
25
- if (typeof globalThis !== 'undefined' && globalThis.__AGUACERO_DEBUG__ === true) {
26
- return true;
27
- }
28
- return false;
29
- }
30
-
31
- /**
32
- * Opt-in only — line-by-line bridge logs.
33
- * @param {string} tag
34
- * @param {Record<string, unknown>} [detail]
35
- */
36
- function nexradPipeTrace(tag, detail) {
37
- if (typeof globalThis === 'undefined' || globalThis.__AGUACERO_NEXRAD_PIPE_TRACE !== true) {
38
- return;
39
- }
9
+ exports.nexradPipelineLog = nexradPipelineLog;
10
+ var _aguaceroRnDebug = require("../aguaceroRnDebug");
11
+ const a = "[Aguacero][NEXRAD][pipeline]",
12
+ c = "[Aguacero][NEXRAD][perf]";
13
+ function r() {
40
14
  try {
41
- const msg = detail !== undefined && detail !== null && typeof detail === 'object' ? JSON.stringify(detail) : detail === undefined || detail === null ? '' : String(detail);
42
- console.warn(`[Aguacero][NEXRAD][PIPE] ${tag}`, msg);
43
- } catch {
44
- console.warn(`[Aguacero][NEXRAD][PIPE] ${tag}`, '(unserializable detail)');
45
- }
15
+ if (typeof __DEV__ < "u" && __DEV__) return !0;
16
+ } catch {}
17
+ return (0, _aguaceroRnDebug.isAguaceroRnDebugEnabled)();
46
18
  }
47
- function nexradDiag(phase, detail) {
48
- if (!nexradDiagEnabled()) return;
49
- if (detail !== undefined) {
50
- console.warn(`[Aguacero][NEXRAD] ${phase}`, detail);
51
- } else {
52
- console.warn(`[Aguacero][NEXRAD] ${phase}`);
53
- }
19
+ function nexradDiagBootSnapshot(e) {
20
+ r() && console.warn(`${a} boot`, e);
54
21
  }
55
-
56
- /**
57
- * @param {string} label
58
- * @returns {{ elapsedMs: () => number, end: (detail?: Record<string, unknown>) => number }}
59
- */
60
- function nexradPerfSpan(label) {
61
- const hasPerf = typeof performance !== 'undefined' && typeof performance.now === 'function';
62
- const t0 = hasPerf ? performance.now() : Date.now();
22
+ function nexradPipelineLog(e, n) {
23
+ r() && (n !== void 0 ? console.warn(`${a} ${e}`, n) : console.warn(`${a} ${e}`));
24
+ }
25
+ function nexradPerfSpan(e) {
26
+ if (!r()) return {
27
+ end() {}
28
+ };
29
+ const n = Date.now();
63
30
  return {
64
- elapsedMs() {
65
- const t1 = hasPerf ? performance.now() : Date.now();
66
- return t1 - t0;
67
- },
68
- end(detail) {
69
- const msActual = hasPerf ? performance.now() - t0 : Date.now() - t0;
70
- if (!nexradDiagEnabled()) {
71
- return msActual;
72
- }
73
- const payload = detail !== undefined && detail !== null && typeof detail === 'object' ? {
74
- ms: msActual,
75
- ...detail
76
- } : {
77
- ms: msActual
78
- };
79
- console.warn(`[Aguacero][NEXRAD][PERF] ${label}`, payload);
80
- return msActual;
31
+ end(o) {
32
+ const t = Date.now() - n;
33
+ o !== void 0 ? console.warn(`${c} ${e} ${t}ms`, o) : console.warn(`${c} ${e} ${t}ms`);
81
34
  }
82
35
  };
83
36
  }
84
-
85
- /**
86
- * @param {Record<string, unknown>} [extra]
87
- */
88
- function nexradDiagBootSnapshot(extra = {}) {
89
- if (!nexradDiagEnabled()) return;
90
- const g = typeof globalThis !== 'undefined' ? globalThis : {};
91
- nexradDiag('boot.snapshot', {
92
- ...extra,
93
- workerType: typeof Worker,
94
- navigatorProduct: typeof navigator !== 'undefined' ? navigator.product : undefined,
95
- hermesInternal: typeof g.HermesInternal !== 'undefined'
96
- });
97
- }
98
-
99
- /**
100
- * @param {Uint8Array} gateData
101
- * @param {number} nGates
102
- * @param {number} nRays
103
- * @param {number} valueScale
104
- * @param {number} valueOffset
105
- * @param {number} lutMin
106
- * @param {number} lutMax
107
- */
108
- function nexradDiagGateTextureSummary(gateData, nGates, nRays, valueScale, valueOffset, lutMin, lutMax) {
109
- if (!nexradDiagEnabled()) {
110
- return {
111
- skipped: true
112
- };
113
- }
114
- if (!gateData?.length) return {
115
- error: 'empty'
116
- };
117
- const pairCount = nGates * nRays;
118
- const expected = pairCount * 2;
119
- if (gateData.length < expected) {
120
- return {
121
- error: 'shortBuffer',
122
- len: gateData.length,
123
- expected
124
- };
125
- }
126
- let sampleN = 0;
127
- let nodataN = 0;
128
- let inLutN = 0;
129
- let minRaw = 32767;
130
- let maxRaw = -32768;
131
- let minPhys = Infinity;
132
- let maxPhys = -Infinity;
133
- const stride = Math.max(1, Math.floor(pairCount / 25000));
134
- for (let p = 0; p < pairCount; p += stride) {
135
- const o = p * 2;
136
- const lo = gateData[o];
137
- const hi = gateData[o + 1];
138
- let raw = lo + hi * 256;
139
- if (raw >= 32768) raw -= 65536;
140
- sampleN++;
141
- if (raw <= -32768) {
142
- nodataN++;
143
- continue;
144
- }
145
- if (raw < minRaw) minRaw = raw;
146
- if (raw > maxRaw) maxRaw = raw;
147
- const phys = raw * valueScale + valueOffset;
148
- if (phys < minPhys) minPhys = phys;
149
- if (phys > maxPhys) maxPhys = phys;
150
- if (phys >= lutMin && phys <= lutMax) inLutN++;
151
- }
152
- return {
153
- samples: sampleN,
154
- nodataSamples: nodataN,
155
- inLutSamples: inLutN,
156
- minRaw: minRaw <= maxRaw ? minRaw : null,
157
- maxRaw: minRaw <= maxRaw ? maxRaw : null,
158
- minPhys: Number.isFinite(minPhys) ? minPhys : null,
159
- maxPhys: Number.isFinite(maxPhys) ? maxPhys : null,
160
- lutMin,
161
- lutMax,
162
- valueScale,
163
- valueOffset
37
+ function nexradDiagGateTextureSummary(e, n, o, t, i, s, l) {
38
+ if (!r() || !e) return null;
39
+ const u = {
40
+ nGates: n,
41
+ nRays: o,
42
+ gateBytes: e?.length ?? 0,
43
+ valueScale: t,
44
+ valueOffset: i,
45
+ lutMin: s,
46
+ lutMax: l
164
47
  };
48
+ return nexradPipelineLog("gateTexture.summary", u), u;
165
49
  }
166
50
  //# sourceMappingURL=nexradDiag.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["nexradDiagEnabled","globalThis","__AGUACERO_NEXRAD_DEBUG","__AGUACERO_DEBUG__","nexradPipeTrace","tag","detail","__AGUACERO_NEXRAD_PIPE_TRACE","msg","undefined","JSON","stringify","String","console","warn","nexradDiag","phase","nexradPerfSpan","label","hasPerf","performance","now","t0","Date","elapsedMs","t1","end","msActual","payload","ms","nexradDiagBootSnapshot","extra","g","workerType","Worker","navigatorProduct","navigator","product","hermesInternal","HermesInternal","nexradDiagGateTextureSummary","gateData","nGates","nRays","valueScale","valueOffset","lutMin","lutMax","skipped","length","error","pairCount","expected","len","sampleN","nodataN","inLutN","minRaw","maxRaw","minPhys","Infinity","maxPhys","stride","Math","max","floor","p","o","lo","hi","raw","phys","samples","nodataSamples","inLutSamples","Number","isFinite"],"sourceRoot":"..\\..\\..\\src","sources":["nexrad/nexradDiag.js"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_aguaceroRnDebug","require","a","c","r","__DEV__","f","nexradDiagBootSnapshot","e","console","warn","nexradPipelineLog","n","nexradPerfSpan","end","Date","now","o","t","nexradDiagGateTextureSummary","i","s","l","u","nGates","nRays","gateBytes","length","valueScale","valueOffset","lutMin","lutMax"],"sourceRoot":"..\\..\\..\\src","sources":["nexrad/nexradDiag.js"],"mappings":";;;;;;;;;AAAA,IAAAA,gBAAA,GAAAC,OAAA;AAA8D,MAAMC,CAAC,GAAC,8BAA8B;EAACC,CAAC,GAAC,0BAA0B;AAAC,SAASC,CAACA,CAAA,EAAE;EAAC,IAAG;IAAC,IAAG,OAAOC,OAAO,GAAC,GAAG,IAAEA,OAAO,EAAC,OAAM,CAAC,CAAC;EAAA,CAAC,OAAK,CAAC;EAAC,OAAO,IAAAC,yCAAC,EAAC,CAAC;AAAA;AAAQ,SAASC,sBAAsBA,CAACC,CAAC,EAAC;EAACJ,CAAC,CAAC,CAAC,IAAEK,OAAO,CAACC,IAAI,CAAC,GAAGR,CAAC,OAAO,EAACM,CAAC,CAAC;AAAA;AAAQ,SAASG,iBAAiBA,CAACH,CAAC,EAACI,CAAC,EAAC;EAACR,CAAC,CAAC,CAAC,KAAGQ,CAAC,KAAG,KAAK,CAAC,GAACH,OAAO,CAACC,IAAI,CAAC,GAAGR,CAAC,IAAIM,CAAC,EAAE,EAACI,CAAC,CAAC,GAACH,OAAO,CAACC,IAAI,CAAC,GAAGR,CAAC,IAAIM,CAAC,EAAE,CAAC,CAAC;AAAA;AAAQ,SAASK,cAAcA,CAACL,CAAC,EAAC;EAAC,IAAG,CAACJ,CAAC,CAAC,CAAC,EAAC,OAAM;IAACU,GAAGA,CAAA,EAAE,CAAC;EAAC,CAAC;EAAC,MAAMF,CAAC,GAACG,IAAI,CAACC,GAAG,CAAC,CAAC;EAAC,OAAM;IAACF,GAAGA,CAACG,CAAC,EAAC;MAAC,MAAMC,CAAC,GAACH,IAAI,CAACC,GAAG,CAAC,CAAC,GAACJ,CAAC;MAACK,CAAC,KAAG,KAAK,CAAC,GAACR,OAAO,CAACC,IAAI,CAAC,GAAGP,CAAC,IAAIK,CAAC,IAAIU,CAAC,IAAI,EAACD,CAAC,CAAC,GAACR,OAAO,CAACC,IAAI,CAAC,GAAGP,CAAC,IAAIK,CAAC,IAAIU,CAAC,IAAI,CAAC;IAAA;EAAC,CAAC;AAAA;AAAQ,SAASC,4BAA4BA,CAACX,CAAC,EAACI,CAAC,EAACK,CAAC,EAACC,CAAC,EAACE,CAAC,EAACC,CAAC,EAACC,CAAC,EAAC;EAAC,IAAG,CAAClB,CAAC,CAAC,CAAC,IAAE,CAACI,CAAC,EAAC,OAAO,IAAI;EAAC,MAAMe,CAAC,GAAC;IAACC,MAAM,EAACZ,CAAC;IAACa,KAAK,EAACR,CAAC;IAACS,SAAS,EAAClB,CAAC,EAAEmB,MAAM,IAAE,CAAC;IAACC,UAAU,EAACV,CAAC;IAACW,WAAW,EAACT,CAAC;IAACU,MAAM,EAACT,CAAC;IAACU,MAAM,EAACT;EAAC,CAAC;EAAC,OAAOX,iBAAiB,CAAC,qBAAqB,EAACY,CAAC,CAAC,EAACA,CAAC;AAAA","ignoreList":[]}
@@ -0,0 +1,261 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.buildLevel2SweepObjectKey = buildLevel2SweepObjectKey;
7
+ exports.fetchAndApplyLevel2ListingToCore = fetchAndApplyLevel2ListingToCore;
8
+ exports.isValidLevel2SweepObjectKey = isValidLevel2SweepObjectKey;
9
+ exports.level2ListingCacheNeedsRefresh = level2ListingCacheNeedsRefresh;
10
+ exports.level2ListingEmptyHint = level2ListingEmptyHint;
11
+ exports.listingContextParams = listingContextParams;
12
+ exports.lookupClenForUnix = lookupClenForUnix;
13
+ exports.mergeLevel2NexradListingEntry = mergeLevel2NexradListingEntry;
14
+ exports.rebuildLevel2TimeToKeyMap = rebuildLevel2TimeToKeyMap;
15
+ exports.resolveLevel2ObjectKeyForFetch = resolveLevel2ObjectKeyForFetch;
16
+ exports.resolveLevel2SweepObjectKeyForFetch = resolveLevel2SweepObjectKeyForFetch;
17
+ var _nexradSdkImports = require("./nexradSdkImports.js");
18
+ const K = /^[A-Z][A-Z0-9]{3}_\d+\.\d+_\d+_\d+_g[12]\.bin$/,
19
+ F = 4,
20
+ O = 12;
21
+ function M(e) {
22
+ const t = Number(e),
23
+ n = Number.isFinite(t) && t > 0 ? t : 1;
24
+ return Math.min(O, Math.max(n, F));
25
+ }
26
+ function isValidLevel2SweepObjectKey(e) {
27
+ return typeof e != "string" || !e ? !1 : K.test(e);
28
+ }
29
+ function _(e) {
30
+ return e === "g1" ? 1 : 2;
31
+ }
32
+ function buildLevel2SweepObjectKey(e, t, n, r, o) {
33
+ const i = _(r);
34
+ return `${e}_${t}_${n}_${o}_g${i}.bin`;
35
+ }
36
+ function lookupClenForUnix(e, t) {
37
+ if (!e || typeof e != "object") return null;
38
+ const n = Number(t);
39
+ if (!Number.isFinite(n)) return null;
40
+ const r = [String(n), String(Math.floor(n)), String(n * 1e3), String(Math.floor(n * 1e3))];
41
+ for (const o of r) {
42
+ const i = e[o];
43
+ if (i == null || i === "") continue;
44
+ const l = Number(i);
45
+ if (Number.isFinite(l) && l > 0) return Math.floor(l);
46
+ }
47
+ return null;
48
+ }
49
+ function listingContextParams(e) {
50
+ const t = e?.nexradSite,
51
+ n = (e?.nexradProduct || "REF").toUpperCase(),
52
+ r = Number.isFinite(e?.nexradTilt) ? e.nexradTilt : (0, _nexradSdkImports.getDefaultRadarTilt)(t),
53
+ o = (0, _nexradSdkImports.formatTiltForApi)((0, _nexradSdkImports.clampNexradTiltForVariable)(t, n, r)),
54
+ i = (0, _nexradSdkImports.variableToNexradGroup)(n);
55
+ return {
56
+ site: t,
57
+ elevNorm: o,
58
+ group: i,
59
+ radarVarU: n
60
+ };
61
+ }
62
+ function rebuildLevel2TimeToKeyMap({
63
+ stationId: e,
64
+ elevNorm: t,
65
+ group: n,
66
+ timeToKeyMap: r = {},
67
+ level2Clens: o,
68
+ unixTimes: i
69
+ }) {
70
+ if (!e || !o || typeof o != "object") return {
71
+ ...r
72
+ };
73
+ const l = Array.isArray(i) && i.length > 0 ? i.map(Number).filter(a => Number.isFinite(a)) : Object.keys(r || {}).map(Number).filter(a => Number.isFinite(a)),
74
+ s = {};
75
+ for (const a of l) {
76
+ const m = String(a),
77
+ f = r[m];
78
+ if (typeof f == "string" && isValidLevel2SweepObjectKey(f)) {
79
+ s[m] = f;
80
+ continue;
81
+ }
82
+ const p = lookupClenForUnix(o, a);
83
+ if (p == null) continue;
84
+ const y = buildLevel2SweepObjectKey(e, t, a, n, p);
85
+ isValidLevel2SweepObjectKey(y) && (s[m] = y);
86
+ }
87
+ return s;
88
+ }
89
+ function C(e) {
90
+ return e.map(t => typeof t == "number" && t > 10 ** 10 ? Math.floor(t / 1e3) : t);
91
+ }
92
+ function A(e) {
93
+ let t = [],
94
+ n = {};
95
+ if (Array.isArray(e?.times)) t = C(e.times), n = e?.clens && typeof e.clens == "object" ? e.clens : {};else if (e?.body) {
96
+ const r = typeof e.body == "string" ? JSON.parse(e.body) : e.body;
97
+ t = Array.isArray(r?.times) ? C(r.times) : [], n = r?.clens && typeof r.clens == "object" ? r.clens : {};
98
+ }
99
+ return {
100
+ times: t,
101
+ clens: n
102
+ };
103
+ }
104
+ function mergeLevel2NexradListingEntry(e, t, n, r = {}) {
105
+ const o = Array.isArray(t?.unixTimes) ? t.unixTimes : [],
106
+ i = t?.timeToKeyMap && typeof t.timeToKeyMap == "object" ? t.timeToKeyMap : {},
107
+ l = {
108
+ ...(e?.level2Clens && typeof e.level2Clens == "object" ? e.level2Clens : {}),
109
+ ...(t?.level2Clens && typeof t.level2Clens == "object" ? t.level2Clens : {})
110
+ };
111
+ let s = [...new Set([...o, ...(e?.unixTimes ?? [])])].sort((c, u) => c - u);
112
+ if (n > 0 && s.length > 0) {
113
+ const c = s[s.length - 1] - n * 3600;
114
+ s = s.filter(u => u >= c);
115
+ }
116
+ const a = {},
117
+ m = !r.forceRefresh;
118
+ for (const c of s) {
119
+ const u = String(c),
120
+ g = e?.timeToKeyMap?.[u],
121
+ v = i[u],
122
+ T = m && g ? g : v || g;
123
+ T && (a[u] = T);
124
+ }
125
+ let f = s.filter(c => a[String(c)]),
126
+ p = a;
127
+ const {
128
+ stationId: y,
129
+ elevNorm: b,
130
+ group: x
131
+ } = r;
132
+ if (y && b && x && Object.keys(l).length > 0) {
133
+ const c = rebuildLevel2TimeToKeyMap({
134
+ stationId: y,
135
+ elevNorm: b,
136
+ group: x,
137
+ timeToKeyMap: a,
138
+ level2Clens: l,
139
+ unixTimes: f.length > 0 ? f : s
140
+ });
141
+ Object.keys(c).length > 0 && (p = c, f = Object.keys(c).map(u => Number(u)).filter(u => Number.isFinite(u)).sort((u, g) => u - g));
142
+ }
143
+ return {
144
+ unixTimes: f,
145
+ timeToKeyMap: p,
146
+ level2Clens: l,
147
+ listWindowHours: n,
148
+ level2ListingEmpty: f.length === 0
149
+ };
150
+ }
151
+ const k = "https://ddknicwcw2wyov7v5bzxmbqu440tzntf.lambda-url.us-east-2.on.aws/";
152
+ async function fetchAndApplyLevel2ListingToCore(e, t, n = {}) {
153
+ const r = e?._nexradTimesCacheKey?.();
154
+ if (!r || !t?.nexradSite) return !1;
155
+ const o = typeof n.listingHours == "number" ? n.listingHours : typeof e._nexradListingWindowHours == "function" ? e._nexradListingWindowHours() : 1,
156
+ {
157
+ site: i,
158
+ elevNorm: l,
159
+ group: s
160
+ } = listingContextParams(t),
161
+ a = M(o),
162
+ m = new URLSearchParams({
163
+ station: i,
164
+ field: s,
165
+ elev: l,
166
+ hours: String(a)
167
+ }),
168
+ f = `${k}?${m.toString()}`,
169
+ p = {},
170
+ y = typeof n.siteOrigin == "string" ? n.siteOrigin.trim() : "";
171
+ y && (p.Origin = y);
172
+ const b = await fetch(f, {
173
+ headers: p
174
+ });
175
+ if (!b.ok) return !1;
176
+ const x = await b.json(),
177
+ {
178
+ times: c,
179
+ clens: u
180
+ } = A(x);
181
+ if (!c.length && (!u || !Object.keys(u).length)) {
182
+ const d = e.nexradTimesByStation[r];
183
+ return e.nexradTimesByStation[r] = mergeLevel2NexradListingEntry(d, {
184
+ unixTimes: [],
185
+ timeToKeyMap: {},
186
+ level2Clens: {}
187
+ }, o), typeof e._emitStateChange == "function" && e._emitStateChange(), !0;
188
+ }
189
+ if (!u || !Object.keys(u).length) return !1;
190
+ const g = rebuildLevel2TimeToKeyMap({
191
+ stationId: i,
192
+ elevNorm: l,
193
+ group: s,
194
+ level2Clens: u,
195
+ unixTimes: c
196
+ }),
197
+ v = Object.keys(g).map(d => Number(d)).filter(d => Number.isFinite(d)).sort((d, w) => d - w);
198
+ if (!v.length) return !1;
199
+ const T = e.nexradTimesByStation[r];
200
+ return e.nexradTimesByStation[r] = mergeLevel2NexradListingEntry(T, {
201
+ unixTimes: v,
202
+ timeToKeyMap: g,
203
+ level2Clens: u
204
+ }, o, {
205
+ stationId: i,
206
+ elevNorm: l,
207
+ group: s
208
+ }), typeof e._emitStateChange == "function" && e._emitStateChange(), !0;
209
+ }
210
+ function level2ListingCacheNeedsRefresh(e) {
211
+ if (!e) return !0;
212
+ if (e.level2ListingEmpty === !0) return !1;
213
+ const t = e.level2Clens,
214
+ n = t && typeof t == "object" && Object.keys(t).length > 0,
215
+ r = e.timeToKeyMap;
216
+ if (!n || !r || typeof r != "object" || Object.keys(r).length === 0) return !0;
217
+ const o = Object.values(r).find(i => typeof i == "string" && i.length > 0);
218
+ return !o || !isValidLevel2SweepObjectKey(o);
219
+ }
220
+ function resolveLevel2SweepObjectKeyForFetch(e, t) {
221
+ const {
222
+ stationId: n,
223
+ elevNorm: r,
224
+ group: o,
225
+ unixSec: i,
226
+ clens: l
227
+ } = t || {};
228
+ if (typeof e == "string" && isValidLevel2SweepObjectKey(e)) return e;
229
+ if (!n || !r || !o || i == null || !l) return null;
230
+ const s = lookupClenForUnix(l, i);
231
+ if (s == null) return null;
232
+ const a = buildLevel2SweepObjectKey(n, r, i, o, s);
233
+ return isValidLevel2SweepObjectKey(a) ? a : null;
234
+ }
235
+ function resolveLevel2ObjectKeyForFetch({
236
+ state: e,
237
+ listingEntry: t,
238
+ unix: n,
239
+ radarVar: r,
240
+ rawKey: o
241
+ }) {
242
+ if (typeof o == "string" && isValidLevel2SweepObjectKey(o)) return o;
243
+ const i = e?.nexradSite,
244
+ l = t?.level2Clens;
245
+ if (!i || !l || typeof l != "object") return null;
246
+ const s = (r || e.nexradProduct || "REF").toUpperCase(),
247
+ a = Number.isFinite(e.nexradTilt) ? e.nexradTilt : (0, _nexradSdkImports.getDefaultRadarTilt)(i),
248
+ m = (0, _nexradSdkImports.formatTiltForApi)((0, _nexradSdkImports.clampNexradTiltForVariable)(i, s, a)),
249
+ f = (0, _nexradSdkImports.variableToNexradGroup)(s);
250
+ return resolveLevel2SweepObjectKeyForFetch(o, {
251
+ stationId: i,
252
+ elevNorm: m,
253
+ group: f,
254
+ unixSec: n,
255
+ clens: l
256
+ });
257
+ }
258
+ function level2ListingEmptyHint(e) {
259
+ return (0, _nexradSdkImports.isNexradTdwrSiteId)(e) ? "TDWR site: Level-II sweep lambda returned no volumes. Try a WSR-88D site (K*) such as KSHV or KTLX." : "Level-II sweep lambda returned no volumes for this site/tilt/window.";
260
+ }
261
+ //# sourceMappingURL=nexradLevel2Keys.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_nexradSdkImports","require","K","F","O","M","e","t","Number","n","isFinite","Math","min","max","isValidLevel2SweepObjectKey","test","_","buildLevel2SweepObjectKey","r","o","i","lookupClenForUnix","String","floor","l","listingContextParams","nexradSite","nexradProduct","toUpperCase","nexradTilt","S","N","h","j","site","elevNorm","group","radarVarU","rebuildLevel2TimeToKeyMap","stationId","timeToKeyMap","level2Clens","unixTimes","Array","isArray","length","map","filter","a","Object","keys","s","m","f","p","y","C","A","times","clens","body","JSON","parse","mergeLevel2NexradListingEntry","Set","sort","c","u","forceRefresh","g","v","T","b","x","listWindowHours","level2ListingEmpty","k","fetchAndApplyLevel2ListingToCore","_nexradTimesCacheKey","listingHours","_nexradListingWindowHours","URLSearchParams","station","field","elev","hours","toString","siteOrigin","trim","Origin","fetch","headers","ok","json","d","nexradTimesByStation","_emitStateChange","w","level2ListingCacheNeedsRefresh","values","find","resolveLevel2SweepObjectKeyForFetch","unixSec","resolveLevel2ObjectKeyForFetch","state","listingEntry","unix","radarVar","rawKey","level2ListingEmptyHint","L"],"sourceRoot":"..\\..\\..\\src","sources":["nexrad/nexradLevel2Keys.js"],"mappings":"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","ignoreList":[]}