@aguacerowx/react-native 0.0.52 → 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 (265) hide show
  1. package/LICENSE +21 -0
  2. package/android/src/main/cpp/satellite_ktx_jni.cpp +6 -1
  3. package/android/src/main/java/com/aguacerowx/reactnative/NexradRadarLayerView.java +14 -2
  4. package/android/src/main/java/com/aguacerowx/reactnative/SatelliteLayer.java +121 -1
  5. package/android/src/main/java/com/aguacerowx/reactnative/SatelliteLayerView.java +556 -392
  6. package/android/src/main/java/com/aguacerowx/reactnative/WeatherFrameProcessorModule.java +77 -0
  7. package/index.js +1 -1
  8. package/ios/SatelliteLayerView.swift +517 -517
  9. package/ios/WeatherFrameProcessorModule.m +19 -15
  10. package/ios/WeatherFrameProcessorModule.swift +65 -0
  11. package/lib/commonjs/AguaceroContext.js +0 -4
  12. package/lib/commonjs/AguaceroContext.js.map +1 -1
  13. package/lib/commonjs/GridRenderLayer.js +62 -76
  14. package/lib/commonjs/GridRenderLayer.js.map +1 -1
  15. package/lib/commonjs/MapManager.js +110 -224
  16. package/lib/commonjs/MapManager.js.map +1 -1
  17. package/lib/commonjs/MapRegistry.js +21 -33
  18. package/lib/commonjs/MapRegistry.js.map +1 -1
  19. package/lib/commonjs/NexradRadarLayer.android.js +28 -100
  20. package/lib/commonjs/NexradRadarLayer.android.js.map +1 -1
  21. package/lib/commonjs/NexradRadarLayer.ios.js +26 -97
  22. package/lib/commonjs/NexradRadarLayer.ios.js.map +1 -1
  23. package/lib/commonjs/NexradSitesMapLayer.js +41 -61
  24. package/lib/commonjs/NexradSitesMapLayer.js.map +1 -1
  25. package/lib/commonjs/SatelliteLayer.android.js +26 -38
  26. package/lib/commonjs/SatelliteLayer.android.js.map +1 -1
  27. package/lib/commonjs/SatelliteLayer.ios.js +30 -42
  28. package/lib/commonjs/SatelliteLayer.ios.js.map +1 -1
  29. package/lib/commonjs/StyleApplicator.js +129 -175
  30. package/lib/commonjs/StyleApplicator.js.map +1 -1
  31. package/lib/commonjs/WeatherLayerManager.js +996 -1627
  32. package/lib/commonjs/WeatherLayerManager.js.map +1 -1
  33. package/lib/commonjs/aguaceroCoreDebugHooks.js +58 -130
  34. package/lib/commonjs/aguaceroCoreDebugHooks.js.map +1 -1
  35. package/lib/commonjs/aguaceroRnDebug.js +147 -287
  36. package/lib/commonjs/aguaceroRnDebug.js.map +1 -1
  37. package/lib/commonjs/cdnAuthenticatedFetch.js +104 -0
  38. package/lib/commonjs/cdnAuthenticatedFetch.js.map +1 -0
  39. package/lib/commonjs/dispatchViewManagerCommandCompat.js +51 -88
  40. package/lib/commonjs/dispatchViewManagerCommandCompat.js.map +1 -1
  41. package/lib/commonjs/gridCdnAuth.js +41 -50
  42. package/lib/commonjs/gridCdnAuth.js.map +1 -1
  43. package/lib/commonjs/index.js +51 -0
  44. package/lib/commonjs/index.js.map +1 -1
  45. package/lib/commonjs/nexrad/nexradAndroidController.js +851 -863
  46. package/lib/commonjs/nexrad/nexradAndroidController.js.map +1 -1
  47. package/lib/commonjs/nexrad/nexradCrossSectionSampleAtLatLon.bundled.js +62 -85
  48. package/lib/commonjs/nexrad/nexradCrossSectionSampleAtLatLon.bundled.js.map +1 -1
  49. package/lib/commonjs/nexrad/nexradDiag.js +32 -148
  50. package/lib/commonjs/nexrad/nexradDiag.js.map +1 -1
  51. package/lib/commonjs/nexrad/nexradLevel2Keys.js +261 -0
  52. package/lib/commonjs/nexrad/nexradLevel2Keys.js.map +1 -0
  53. package/lib/commonjs/nexrad/nexradLutBuild.js +64 -111
  54. package/lib/commonjs/nexrad/nexradLutBuild.js.map +1 -1
  55. package/lib/commonjs/nexrad/nexradMapboxFrameOpts.bundled.js +136 -164
  56. package/lib/commonjs/nexrad/nexradMapboxFrameOpts.bundled.js.map +1 -1
  57. package/lib/commonjs/nexrad/nexradSdkImports.js +51 -0
  58. package/lib/commonjs/nexrad/nexradSdkImports.js.map +1 -0
  59. package/lib/commonjs/nexrad/radarArchiveCore.bundled.js +2848 -4455
  60. package/lib/commonjs/nexrad/radarArchiveCore.bundled.js.map +1 -1
  61. package/lib/commonjs/nexrad/radarDecode.worker.bundled.js +445 -648
  62. package/lib/commonjs/nexrad/radarDecode.worker.bundled.js.map +1 -1
  63. package/lib/commonjs/nexrad/radarFrameGpuMatch.bundled.js +52 -68
  64. package/lib/commonjs/nexrad/radarFrameGpuMatch.bundled.js.map +1 -1
  65. package/lib/commonjs/nexradNativeCommandIds.js +24 -0
  66. package/lib/commonjs/nexradNativeCommandIds.js.map +1 -0
  67. package/lib/commonjs/nws/NwsAlertsOverlay.android.js.map +1 -1
  68. package/lib/commonjs/nws/NwsAlertsOverlay.ios.js.map +1 -1
  69. package/lib/commonjs/nws/NwsAlertsOverlay.js +3 -3
  70. package/lib/commonjs/nws/NwsAlertsOverlay.js.map +1 -1
  71. package/lib/commonjs/nws/NwsAlertsOverlay.native.js +235 -361
  72. package/lib/commonjs/nws/NwsAlertsOverlay.native.js.map +1 -1
  73. package/lib/commonjs/nws/eventSourceRnPolyfill.js +92 -146
  74. package/lib/commonjs/nws/eventSourceRnPolyfill.js.map +1 -1
  75. package/lib/commonjs/nws/nwsAndroidConstants.js +2 -8
  76. package/lib/commonjs/nws/nwsAndroidConstants.js.map +1 -1
  77. package/lib/commonjs/satellite/satelliteAndroidController.js +122 -199
  78. package/lib/commonjs/satellite/satelliteAndroidController.js.map +1 -1
  79. package/lib/commonjs/satelliteBridgeDiag.js +3 -13
  80. package/lib/commonjs/satelliteBridgeDiag.js.map +1 -1
  81. package/lib/commonjs/satelliteRnDebug.js +160 -0
  82. package/lib/commonjs/satelliteRnDebug.js.map +1 -0
  83. package/lib/module/AguaceroContext.js +2 -7
  84. package/lib/module/AguaceroContext.js.map +1 -1
  85. package/lib/module/GridRenderLayer.js +66 -80
  86. package/lib/module/GridRenderLayer.js.map +1 -1
  87. package/lib/module/MapManager.js +125 -239
  88. package/lib/module/MapManager.js.map +1 -1
  89. package/lib/module/MapRegistry.js +21 -33
  90. package/lib/module/MapRegistry.js.map +1 -1
  91. package/lib/module/NexradRadarLayer.android.js +32 -104
  92. package/lib/module/NexradRadarLayer.android.js.map +1 -1
  93. package/lib/module/NexradRadarLayer.ios.js +30 -101
  94. package/lib/module/NexradRadarLayer.ios.js.map +1 -1
  95. package/lib/module/NexradSitesMapLayer.js +44 -63
  96. package/lib/module/NexradSitesMapLayer.js.map +1 -1
  97. package/lib/module/SatelliteLayer.android.js +32 -44
  98. package/lib/module/SatelliteLayer.android.js.map +1 -1
  99. package/lib/module/SatelliteLayer.ios.js +36 -48
  100. package/lib/module/SatelliteLayer.ios.js.map +1 -1
  101. package/lib/module/StyleApplicator.js +144 -191
  102. package/lib/module/StyleApplicator.js.map +1 -1
  103. package/lib/module/WeatherLayerManager.js +1024 -1655
  104. package/lib/module/WeatherLayerManager.js.map +1 -1
  105. package/lib/module/aguaceroCoreDebugHooks.js +59 -130
  106. package/lib/module/aguaceroCoreDebugHooks.js.map +1 -1
  107. package/lib/module/aguaceroRnDebug.js +151 -291
  108. package/lib/module/aguaceroRnDebug.js.map +1 -1
  109. package/lib/module/cdnAuthenticatedFetch.js +97 -0
  110. package/lib/module/cdnAuthenticatedFetch.js.map +1 -0
  111. package/lib/module/dispatchViewManagerCommandCompat.js +52 -90
  112. package/lib/module/dispatchViewManagerCommandCompat.js.map +1 -1
  113. package/lib/module/gridCdnAuth.js +38 -50
  114. package/lib/module/gridCdnAuth.js.map +1 -1
  115. package/lib/module/index.js +9 -6
  116. package/lib/module/index.js.map +1 -1
  117. package/lib/module/nexrad/nexradAndroidController.js +865 -876
  118. package/lib/module/nexrad/nexradAndroidController.js.map +1 -1
  119. package/lib/module/nexrad/nexradCrossSectionSampleAtLatLon.bundled.js +62 -85
  120. package/lib/module/nexrad/nexradCrossSectionSampleAtLatLon.bundled.js.map +1 -1
  121. package/lib/module/nexrad/nexradDiag.js +31 -145
  122. package/lib/module/nexrad/nexradDiag.js.map +1 -1
  123. package/lib/module/nexrad/nexradLevel2Keys.js +245 -0
  124. package/lib/module/nexrad/nexradLevel2Keys.js.map +1 -0
  125. package/lib/module/nexrad/nexradLutBuild.js +64 -110
  126. package/lib/module/nexrad/nexradLutBuild.js.map +1 -1
  127. package/lib/module/nexrad/nexradMapboxFrameOpts.bundled.js +136 -163
  128. package/lib/module/nexrad/nexradMapboxFrameOpts.bundled.js.map +1 -1
  129. package/lib/module/nexrad/nexradSdkImports.js +4 -0
  130. package/lib/module/nexrad/nexradSdkImports.js.map +1 -0
  131. package/lib/module/nexrad/radarArchiveCore.bundled.js +2839 -4448
  132. package/lib/module/nexrad/radarArchiveCore.bundled.js.map +1 -1
  133. package/lib/module/nexrad/radarDecode.worker.bundled.js +445 -648
  134. package/lib/module/nexrad/radarDecode.worker.bundled.js.map +1 -1
  135. package/lib/module/nexrad/radarFrameGpuMatch.bundled.js +50 -66
  136. package/lib/module/nexrad/radarFrameGpuMatch.bundled.js.map +1 -1
  137. package/lib/module/nexradNativeCommandIds.js +18 -0
  138. package/lib/module/nexradNativeCommandIds.js.map +1 -0
  139. package/lib/module/nws/NwsAlertsOverlay.android.js +1 -1
  140. package/lib/module/nws/NwsAlertsOverlay.android.js.map +1 -1
  141. package/lib/module/nws/NwsAlertsOverlay.ios.js +1 -1
  142. package/lib/module/nws/NwsAlertsOverlay.ios.js.map +1 -1
  143. package/lib/module/nws/NwsAlertsOverlay.js +5 -5
  144. package/lib/module/nws/NwsAlertsOverlay.js.map +1 -1
  145. package/lib/module/nws/NwsAlertsOverlay.native.js +248 -373
  146. package/lib/module/nws/NwsAlertsOverlay.native.js.map +1 -1
  147. package/lib/module/nws/eventSourceRnPolyfill.js +92 -146
  148. package/lib/module/nws/eventSourceRnPolyfill.js.map +1 -1
  149. package/lib/module/nws/nwsAndroidConstants.js +2 -8
  150. package/lib/module/nws/nwsAndroidConstants.js.map +1 -1
  151. package/lib/module/satellite/satelliteAndroidController.js +125 -202
  152. package/lib/module/satellite/satelliteAndroidController.js.map +1 -1
  153. package/lib/module/satelliteBridgeDiag.js +3 -13
  154. package/lib/module/satelliteBridgeDiag.js.map +1 -1
  155. package/lib/module/satelliteRnDebug.js +148 -0
  156. package/lib/module/satelliteRnDebug.js.map +1 -0
  157. package/lib/typescript/AguaceroContext.d.ts +0 -4
  158. package/lib/typescript/AguaceroContext.d.ts.map +1 -1
  159. package/lib/typescript/GridRenderLayer.d.ts.map +1 -1
  160. package/lib/typescript/MapManager.d.ts +0 -12
  161. package/lib/typescript/MapManager.d.ts.map +1 -1
  162. package/lib/typescript/MapRegistry.d.ts +10 -12
  163. package/lib/typescript/MapRegistry.d.ts.map +1 -1
  164. package/lib/typescript/NexradRadarLayer.android.d.ts.map +1 -1
  165. package/lib/typescript/NexradRadarLayer.ios.d.ts.map +1 -1
  166. package/lib/typescript/NexradSitesMapLayer.d.ts +4 -10
  167. package/lib/typescript/NexradSitesMapLayer.d.ts.map +1 -1
  168. package/lib/typescript/SatelliteLayer.android.d.ts.map +1 -1
  169. package/lib/typescript/SatelliteLayer.ios.d.ts.map +1 -1
  170. package/lib/typescript/StyleApplicator.d.ts +1 -1
  171. package/lib/typescript/StyleApplicator.d.ts.map +1 -1
  172. package/lib/typescript/WeatherLayerManager.d.ts.map +1 -1
  173. package/lib/typescript/aguaceroCoreDebugHooks.d.ts +2 -9
  174. package/lib/typescript/aguaceroCoreDebugHooks.d.ts.map +1 -1
  175. package/lib/typescript/aguaceroRnDebug.d.ts +47 -66
  176. package/lib/typescript/aguaceroRnDebug.d.ts.map +1 -1
  177. package/lib/typescript/cdnAuthenticatedFetch.d.ts +10 -0
  178. package/lib/typescript/cdnAuthenticatedFetch.d.ts.map +1 -0
  179. package/lib/typescript/dispatchViewManagerCommandCompat.d.ts +1 -17
  180. package/lib/typescript/dispatchViewManagerCommandCompat.d.ts.map +1 -1
  181. package/lib/typescript/gridCdnAuth.d.ts +16 -21
  182. package/lib/typescript/gridCdnAuth.d.ts.map +1 -1
  183. package/lib/typescript/index.d.ts +2 -0
  184. package/lib/typescript/nexrad/nexradAndroidController.d.ts +39 -89
  185. package/lib/typescript/nexrad/nexradAndroidController.d.ts.map +1 -1
  186. package/lib/typescript/nexrad/nexradCrossSectionSampleAtLatLon.bundled.d.ts +2 -1
  187. package/lib/typescript/nexrad/nexradCrossSectionSampleAtLatLon.bundled.d.ts.map +1 -1
  188. package/lib/typescript/nexrad/nexradDiag.d.ts +13 -101
  189. package/lib/typescript/nexrad/nexradDiag.d.ts.map +1 -1
  190. package/lib/typescript/nexrad/nexradLevel2Keys.d.ts +36 -0
  191. package/lib/typescript/nexrad/nexradLevel2Keys.d.ts.map +1 -0
  192. package/lib/typescript/nexrad/nexradLutBuild.d.ts +3 -10
  193. package/lib/typescript/nexrad/nexradLutBuild.d.ts.map +1 -1
  194. package/lib/typescript/nexrad/nexradMapboxFrameOpts.bundled.d.ts +4 -3
  195. package/lib/typescript/nexrad/nexradMapboxFrameOpts.bundled.d.ts.map +1 -1
  196. package/lib/typescript/nexrad/nexradSdkImports.d.ts +2 -0
  197. package/lib/typescript/nexrad/nexradSdkImports.d.ts.map +1 -0
  198. package/lib/typescript/nexrad/radarArchiveCore.bundled.d.ts +12 -7
  199. package/lib/typescript/nexrad/radarArchiveCore.bundled.d.ts.map +1 -1
  200. package/lib/typescript/nexrad/radarDecode.worker.bundled.d.ts +20 -20
  201. package/lib/typescript/nexrad/radarDecode.worker.bundled.d.ts.map +1 -1
  202. package/lib/typescript/nexrad/radarFrameGpuMatch.bundled.d.ts +4 -3
  203. package/lib/typescript/nexrad/radarFrameGpuMatch.bundled.d.ts.map +1 -1
  204. package/lib/typescript/nexradNativeCommandIds.d.ts +2 -0
  205. package/lib/typescript/nexradNativeCommandIds.d.ts.map +1 -0
  206. package/lib/typescript/nws/NwsAlertsOverlay.native.d.ts +6 -17
  207. package/lib/typescript/nws/NwsAlertsOverlay.native.d.ts.map +1 -1
  208. package/lib/typescript/nws/eventSourceRnPolyfill.d.ts +0 -3
  209. package/lib/typescript/nws/eventSourceRnPolyfill.d.ts.map +1 -1
  210. package/lib/typescript/nws/nwsAndroidConstants.d.ts +0 -5
  211. package/lib/typescript/nws/nwsAndroidConstants.d.ts.map +1 -1
  212. package/lib/typescript/satellite/satelliteAndroidController.d.ts +9 -47
  213. package/lib/typescript/satellite/satelliteAndroidController.d.ts.map +1 -1
  214. package/lib/typescript/satelliteBridgeDiag.d.ts +1 -5
  215. package/lib/typescript/satelliteBridgeDiag.d.ts.map +1 -1
  216. package/lib/typescript/satelliteRnDebug.d.ts +75 -0
  217. package/lib/typescript/satelliteRnDebug.d.ts.map +1 -0
  218. package/package.json +75 -74
  219. package/src/AguaceroContext.js +1 -7
  220. package/src/GridRenderLayer.js +1 -128
  221. package/src/MapManager.js +1 -277
  222. package/src/MapRegistry.js +1 -56
  223. package/src/NexradRadarLayer.android.js +1 -121
  224. package/src/NexradRadarLayer.ios.js +1 -115
  225. package/src/NexradSitesMapLayer.js +1 -75
  226. package/src/SatelliteLayer.android.js +1 -63
  227. package/src/SatelliteLayer.ios.js +1 -70
  228. package/src/StyleApplicator.js +1 -241
  229. package/src/WeatherLayerManager.js +1 -2025
  230. package/src/aguaceroCoreDebugHooks.js +1 -142
  231. package/src/aguaceroRnDebug.js +1 -335
  232. package/src/cdnAuthenticatedFetch.js +1 -0
  233. package/src/dispatchViewManagerCommandCompat.js +1 -100
  234. package/src/gridCdnAuth.js +1 -56
  235. package/src/index.js +1 -19
  236. package/src/nexrad/nexradAndroidController.js +1 -1078
  237. package/src/nexrad/nexradCrossSectionSampleAtLatLon.bundled.js +1 -91
  238. package/src/nexrad/nexradDiag.js +1 -150
  239. package/src/nexrad/nexradLevel2Keys.js +1 -0
  240. package/src/nexrad/nexradLutBuild.js +1 -126
  241. package/src/nexrad/nexradMapboxFrameOpts.bundled.js +1 -245
  242. package/src/nexrad/nexradSdkImports.js +1 -0
  243. package/src/nexrad/radarArchiveCore.bundled.js +1 -7085
  244. package/src/nexrad/radarDecode.worker.bundled.js +1 -813
  245. package/src/nexrad/radarFrameGpuMatch.bundled.js +1 -79
  246. package/src/nexradNativeCommandIds.js +1 -0
  247. package/src/nws/NwsAlertsOverlay.android.js +1 -1
  248. package/src/nws/NwsAlertsOverlay.ios.js +1 -1
  249. package/src/nws/NwsAlertsOverlay.js +1 -7
  250. package/src/nws/NwsAlertsOverlay.native.js +1 -463
  251. package/src/nws/eventSourceRnPolyfill.js +7 -193
  252. package/src/nws/nwsAndroidConstants.js +1 -8
  253. package/src/satellite/satelliteAndroidController.js +1 -245
  254. package/src/satelliteBridgeDiag.js +1 -15
  255. package/src/satelliteRnDebug.js +1 -0
  256. package/lib/commonjs/nexrad/nexradNativeCommandIds.js +0 -51
  257. package/lib/commonjs/nexrad/nexradNativeCommandIds.js.map +0 -1
  258. package/lib/module/nexrad/nexradNativeCommandIds.js +0 -44
  259. package/lib/module/nexrad/nexradNativeCommandIds.js.map +0 -1
  260. package/lib/typescript/nexrad/nexradNativeCommandIds.d.ts +0 -9
  261. package/lib/typescript/nexrad/nexradNativeCommandIds.d.ts.map +0 -1
  262. package/src/nexrad/nexradNativeCommandIds.js +0 -44
  263. /package/lib/commonjs/{nexrad/nexradSitesUs.json → nexradSitesUs.json} +0 -0
  264. /package/lib/module/{nexrad/nexradSitesUs.json → nexradSitesUs.json} +0 -0
  265. /package/src/{nexrad/nexradSitesUs.json → nexradSitesUs.json} +0 -0
@@ -1 +1 @@
1
- {"version":3,"names":["ab","ArrayBuffer","u8","Uint8Array","u16","Uint16Array","i16","Int16Array","i32","Int32Array","slc","v","s","e","prototype","slice","call","length","n","set","subarray","fill","cpw","t","copyWithin","ec","err","ind","msg","nt","Error","code","captureStackTrace","rb","d","b","i","o","b4","rzfh","dat","w","n3","flg","ss","cc","df","fcf","bt","db","di","fsb","fss","ws","wb","buf","y","l","buffer","u","c","m","Math","min","msb","val","bits","rfse","mal","tpos","al","sz","probs","sym","re","ht","freq","dstate","nstate","bb1","syms","nbits","cbt","msk","msk1fb","msv","sval","rbt","sympos","sstep","smask","sf","ns","nb","rhu","wc","hb","hw","rc","ri","_a","ebt","fdt","epos","lb","st1","st2","btr1","btr2","fpos","byte","wes","wt","mb","ts","rem","hbuf","pv","dllt","dmlt","doct","b2bl","len","bl","llb","llbl","mlb","mlbl","dhu","out","hu","eb","st","btr","pos","dhu4","sz1","sz2","sz3","rzb","b0","btype","b3","lbt","lss","lcs","s4","spl","h","hud","scm","dts","md","rbuf","_b","mlt","oct","llt","spos","oubt","lst","ost","mst","llc","lbtr","mlc","mbtr","ofc","obtr","ofp","off","ml","ll","idx","stin","bs","cct","bufs","ol","chk","decompress","push","blk","SLOT_HDR_BYTES","isZstd","bytes","parseObjectKey","objectKey","parts","split","stationId","buildRayBoundariesDeg","azimuths","nRays","boundaries","Float32Array","totalSpacing","validCount","diff","absDiff","abs","avgSpacing","isNaN","decodeRadarSlotMessage","data","requestId","slotBuffer","nGates","firstGateKm","gateWidthKm","azimuthsBuffer","sites","compressed","type","gateData","error","decompressed","byteOffset","byteLength","view","DataView","valueScale","getFloat32","valueOffset","present","getUint32","slotNRays","getUint16","slotNGates","gateBytes","expectedGates","bytesPerGate","keyParts","site","find","id","azView","headerNRays","prevAz","rayBoundariesDeg","gateCount","gateDataCopy","outView","raw","ray","prev","g","delta","setInt16","rawBytes","hi","lo","stationLat","lat","stationLon","lon","self","onmessage","event","response","postMessage","message"],"sourceRoot":"..\\..\\..\\src","sources":["nexrad/radarDecode.worker.bundled.js"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["ab","ArrayBuffer","u8","Uint8Array","u16","Uint16Array","i16","Int16Array","i32","Int32Array","slc","t","e","a","prototype","slice","call","length","n","set","subarray","fill","cpw","copyWithin","ec","err","Error","code","captureStackTrace","rb","r","b4","rzfh","s","o","l","y","d","p","v","g","h","U","b","w","buffer","u","c","m","Math","min","msb","rfse","L","D","A","I","S","F","O","_","q","k","i","f","E","rhu","dllt","dmlt","doct","b2bl","llb","llbl","mlb","mlbl","dhu","dhu4","rzb","K","T","$","M","H","G","R","W","X","Y","z","B","J","Q","C","N","Z","cct","decompress","push","SLOT_HDR_BYTES","isZstd","parseObjectKey","split","stationId","buildRayBoundariesDeg","Float32Array","abs","isNaN","decodeRadarSlotMessage","requestId","objectKey","slotBuffer","nRays","nGates","firstGateKm","gateWidthKm","azimuthsBuffer","sites","type","gateData","error","byteOffset","byteLength","DataView","getFloat32","getUint32","getUint16","find","id","setInt16","stationLat","lat","stationLon","lon","valueScale","valueOffset","rayBoundariesDeg","self","onmessage","data","postMessage","message"],"sourceRoot":"..\\..\\..\\src","sources":["nexrad/radarDecode.worker.bundled.js"],"mappings":"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","ignoreList":[]}
@@ -1,78 +1,62 @@
1
- function angularDistanceDeg(a, b) {
2
- let d = Math.abs(a - b) % 360;
3
- if (d > 180) d = 360 - d;
4
- return d;
1
+ function A(a, r) {
2
+ let o = Math.abs(a - r) % 360;
3
+ return o > 180 && (o = 360 - o), o;
5
4
  }
6
- function canonicalBinsRadarFrame(frame) {
7
- const nRays = frame.nRays;
8
- const nGates = frame.nGates;
9
- if (nRays <= 0 || nGates <= 0) return frame;
10
- if (frame.rayBoundariesDeg.length < nRays + 1) return frame;
11
- const degPerBin = 360 / nRays;
12
- const bytesPerRay = nGates * 2;
13
- const centers = new Float32Array(nRays);
14
- for (let r = 0; r < nRays; r++) {
15
- const lower = frame.rayBoundariesDeg[r];
16
- const upper = frame.rayBoundariesDeg[r + 1];
17
- const center = (lower + upper) * 0.5;
18
- centers[r] = (center % 360 + 360) % 360;
5
+ function f(a) {
6
+ const r = a.nRays,
7
+ o = a.nGates;
8
+ if (r <= 0 || o <= 0 || a.rayBoundariesDeg.length < r + 1) return a;
9
+ const s = 360 / r,
10
+ u = o * 2,
11
+ i = new Float32Array(r);
12
+ for (let e = 0; e < r; e++) {
13
+ const c = a.rayBoundariesDeg[e],
14
+ y = a.rayBoundariesDeg[e + 1],
15
+ l = (c + y) * .5;
16
+ i[e] = (l % 360 + 360) % 360;
19
17
  }
20
- const canonicalGateData = new Uint8Array(nRays * bytesPerRay);
21
- for (let i = 0; i < canonicalGateData.length; i += 2) {
22
- canonicalGateData[i] = 128;
23
- }
24
- const used = new Array(nRays).fill(false);
25
- for (let bin = 0; bin < nRays; bin++) {
26
- const targetDeg = ((bin + 0.5) * degPerBin % 360 + 360) % 360;
27
- let bestR = -1;
28
- let bestDist = Infinity;
29
- for (let r = 0; r < nRays; r++) {
30
- if (used[r]) continue;
31
- const dist = angularDistanceDeg(centers[r], targetDeg);
32
- if (dist < bestDist) {
33
- bestDist = dist;
34
- bestR = r;
35
- }
36
- }
37
- if (bestR >= 0) {
38
- used[bestR] = true;
39
- canonicalGateData.set(frame.gateData.subarray(bestR * bytesPerRay, (bestR + 1) * bytesPerRay), bin * bytesPerRay);
18
+ const n = new Uint8Array(r * u);
19
+ for (let e = 0; e < n.length; e += 2) n[e] = 128;
20
+ const t = new Array(r).fill(!1);
21
+ for (let e = 0; e < r; e++) {
22
+ const c = ((e + .5) * s % 360 + 360) % 360;
23
+ let y = -1,
24
+ l = 1 / 0;
25
+ for (let g = 0; g < r; g++) {
26
+ if (t[g]) continue;
27
+ const D = A(i[g], c);
28
+ D < l && (l = D, y = g);
40
29
  }
30
+ y >= 0 && (t[y] = !0, n.set(a.gateData.subarray(y * u, (y + 1) * u), e * u));
41
31
  }
42
- const canonicalBoundaries = new Float32Array(nRays + 1);
43
- for (let i = 0; i <= nRays; i++) {
44
- canonicalBoundaries[i] = i * degPerBin;
45
- }
32
+ const d = new Float32Array(r + 1);
33
+ for (let e = 0; e <= r; e++) d[e] = e * s;
46
34
  return {
47
- ...frame,
48
- gateData: canonicalGateData,
49
- rayBoundariesDeg: canonicalBoundaries
35
+ ...a,
36
+ gateData: n,
37
+ rayBoundariesDeg: d
50
38
  };
51
39
  }
52
- function sortRadarFrameByAzimuth(frame) {
53
- const nRays = frame.nRays;
54
- const nGates = frame.nGates;
55
- const bytesPerRay = nGates * 2;
56
- const rayOrder = Array.from({
57
- length: nRays
58
- }, (_, i) => i).sort((a, b) => frame.rayBoundariesDeg[a] - frame.rayBoundariesDeg[b]);
59
- const sortedGateData = new Uint8Array(nRays * bytesPerRay);
60
- const sortedBoundaries = new Float32Array(nRays + 1);
61
- for (let newIdx = 0; newIdx < nRays; newIdx++) {
62
- const oldIdx = rayOrder[newIdx];
63
- sortedGateData.set(frame.gateData.subarray(oldIdx * bytesPerRay, (oldIdx + 1) * bytesPerRay), newIdx * bytesPerRay);
64
- sortedBoundaries[newIdx] = frame.rayBoundariesDeg[oldIdx];
40
+ function B(a) {
41
+ const r = a.nRays,
42
+ o = a.nGates * 2,
43
+ s = Array.from({
44
+ length: r
45
+ }, (n, t) => t).sort((n, t) => a.rayBoundariesDeg[n] - a.rayBoundariesDeg[t]),
46
+ u = new Uint8Array(r * o),
47
+ i = new Float32Array(r + 1);
48
+ for (let n = 0; n < r; n++) {
49
+ const t = s[n];
50
+ u.set(a.gateData.subarray(t * o, (t + 1) * o), n * o), i[n] = a.rayBoundariesDeg[t];
65
51
  }
66
- sortedBoundaries[nRays] = frame.rayBoundariesDeg[rayOrder[nRays - 1]] + (frame.rayBoundariesDeg[rayOrder[1]] - frame.rayBoundariesDeg[rayOrder[0]]);
67
- return {
68
- ...frame,
69
- gateData: sortedGateData,
70
- rayBoundariesDeg: sortedBoundaries
52
+ return i[r] = a.rayBoundariesDeg[s[r - 1]] + (a.rayBoundariesDeg[s[1]] - a.rayBoundariesDeg[s[0]]), {
53
+ ...a,
54
+ gateData: u,
55
+ rayBoundariesDeg: i
71
56
  };
72
57
  }
73
- function prepareRadarFrameForGpuReadout(frame, options) {
74
- const hasLayoutKey = options?.geometryLayoutKey != null && options.geometryLayoutKey !== "";
75
- return hasLayoutKey ? canonicalBinsRadarFrame(frame) : sortRadarFrameByAzimuth(frame);
58
+ function m(a, r) {
59
+ return r?.geometryLayoutKey != null && r.geometryLayoutKey !== "" ? f(a) : B(a);
76
60
  }
77
- export { canonicalBinsRadarFrame, prepareRadarFrameForGpuReadout, sortRadarFrameByAzimuth };
61
+ export { f as canonicalBinsRadarFrame, m as prepareRadarFrameForGpuReadout, B as sortRadarFrameByAzimuth };
78
62
  //# sourceMappingURL=radarFrameGpuMatch.bundled.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["angularDistanceDeg","a","b","d","Math","abs","canonicalBinsRadarFrame","frame","nRays","nGates","rayBoundariesDeg","length","degPerBin","bytesPerRay","centers","Float32Array","r","lower","upper","center","canonicalGateData","Uint8Array","i","used","Array","fill","bin","targetDeg","bestR","bestDist","Infinity","dist","set","gateData","subarray","canonicalBoundaries","sortRadarFrameByAzimuth","rayOrder","from","_","sort","sortedGateData","sortedBoundaries","newIdx","oldIdx","prepareRadarFrameForGpuReadout","options","hasLayoutKey","geometryLayoutKey"],"sourceRoot":"..\\..\\..\\src","sources":["nexrad/radarFrameGpuMatch.bundled.js"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["A","a","r","o","Math","abs","f","nRays","nGates","rayBoundariesDeg","length","s","u","i","Float32Array","e","c","y","l","n","Uint8Array","t","Array","fill","g","D","set","gateData","subarray","d","B","from","sort","m","geometryLayoutKey","canonicalBinsRadarFrame","prepareRadarFrameForGpuReadout","sortRadarFrameByAzimuth"],"sourceRoot":"..\\..\\..\\src","sources":["nexrad/radarFrameGpuMatch.bundled.js"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,18 @@
1
+ import { Platform as o, UIManager as t } from "react-native";
2
+ const n = "NexradRadarLayer",
3
+ d = Object.freeze({
4
+ uploadNexradFrame: 1,
5
+ uploadNexradStyleOnly: 2,
6
+ clearNexrad: 3,
7
+ activateNexradCachedFrame: 4
8
+ });
9
+ export function resolveNexradCommandId(a) {
10
+ if (o.OS === "ios") return a;
11
+ try {
12
+ const r = t.getViewManagerConfig(n)?.Commands?.[a];
13
+ if (r != null && r !== void 0) return r;
14
+ } catch {}
15
+ const e = d[a];
16
+ return e !== void 0 ? e : null;
17
+ }
18
+ //# sourceMappingURL=nexradNativeCommandIds.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Platform","o","UIManager","t","n","d","Object","freeze","uploadNexradFrame","uploadNexradStyleOnly","clearNexrad","activateNexradCachedFrame","resolveNexradCommandId","a","OS","r","getViewManagerConfig","Commands","e"],"sourceRoot":"..\\..\\src","sources":["nexradNativeCommandIds.js"],"mappings":"AAAA,SAAOA,QAAQ,IAAIC,CAAC,EAACC,SAAS,IAAIC,CAAC,QAAK,cAAc;AAAC,MAAMC,CAAC,GAAC,kBAAkB;EAACC,CAAC,GAACC,MAAM,CAACC,MAAM,CAAC;IAACC,iBAAiB,EAAC,CAAC;IAACC,qBAAqB,EAAC,CAAC;IAACC,WAAW,EAAC,CAAC;IAACC,yBAAyB,EAAC;EAAC,CAAC,CAAC;AAAC,OAAO,SAASC,sBAAsBA,CAACC,CAAC,EAAC;EAAC,IAAGZ,CAAC,CAACa,EAAE,KAAG,KAAK,EAAC,OAAOD,CAAC;EAAC,IAAG;IAAC,MAAME,CAAC,GAACZ,CAAC,CAACa,oBAAoB,CAACZ,CAAC,CAAC,EAAEa,QAAQ,GAAGJ,CAAC,CAAC;IAAC,IAAGE,CAAC,IAAE,IAAI,IAAEA,CAAC,KAAG,KAAK,CAAC,EAAC,OAAOA,CAAC;EAAA,CAAC,OAAK,CAAC;EAAC,MAAMG,CAAC,GAACb,CAAC,CAACQ,CAAC,CAAC;EAAC,OAAOK,CAAC,KAAG,KAAK,CAAC,GAACA,CAAC,GAAC,IAAI;AAAA","ignoreList":[]}
@@ -1,2 +1,2 @@
1
- export { default, resolveNwsAndroidLayerAnchors } from './NwsAlertsOverlay.native.js';
1
+ export { default, resolveNwsAndroidLayerAnchors } from "./NwsAlertsOverlay.native.js";
2
2
  //# sourceMappingURL=NwsAlertsOverlay.android.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["default","resolveNwsAndroidLayerAnchors"],"sourceRoot":"..\\..\\..\\src","sources":["nws/NwsAlertsOverlay.android.js"],"mappings":"AAAA,SAASA,OAAO,EAAEC,6BAA6B,QAAQ,8BAA8B","ignoreList":[]}
1
+ {"version":3,"names":["default","resolveNwsAndroidLayerAnchors"],"sourceRoot":"..\\..\\..\\src","sources":["nws/NwsAlertsOverlay.android.js"],"mappings":"AAAA,SAAOA,OAAO,EAACC,6BAA6B,QAAK,8BAA8B","ignoreList":[]}
@@ -1,2 +1,2 @@
1
- export { default, resolveNwsAndroidLayerAnchors } from './NwsAlertsOverlay.native.js';
1
+ export { default, resolveNwsAndroidLayerAnchors } from "./NwsAlertsOverlay.native.js";
2
2
  //# sourceMappingURL=NwsAlertsOverlay.ios.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["default","resolveNwsAndroidLayerAnchors"],"sourceRoot":"..\\..\\..\\src","sources":["nws/NwsAlertsOverlay.ios.js"],"mappings":"AAAA,SAASA,OAAO,EAAEC,6BAA6B,QAAQ,8BAA8B","ignoreList":[]}
1
+ {"version":3,"names":["default","resolveNwsAndroidLayerAnchors"],"sourceRoot":"..\\..\\..\\src","sources":["nws/NwsAlertsOverlay.ios.js"],"mappings":"AAAA,SAAOA,OAAO,EAACC,6BAA6B,QAAK,8BAA8B","ignoreList":[]}
@@ -1,7 +1,7 @@
1
- import { Platform } from 'react-native';
2
- export default Platform.select({
3
- android: require('./NwsAlertsOverlay.android.js').default,
4
- ios: require('./NwsAlertsOverlay.ios.js').default,
5
- default: require('./NwsAlertsOverlay.ios.js').default
1
+ import { Platform as e } from "react-native";
2
+ export default e.select({
3
+ android: require("./NwsAlertsOverlay.android.js").default,
4
+ ios: require("./NwsAlertsOverlay.ios.js").default,
5
+ default: require("./NwsAlertsOverlay.ios.js").default
6
6
  });
7
7
  //# sourceMappingURL=NwsAlertsOverlay.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Platform","select","android","require","default","ios"],"sourceRoot":"..\\..\\..\\src","sources":["nws/NwsAlertsOverlay.js"],"mappings":"AAAA,SAASA,QAAQ,QAAQ,cAAc;AAEvC,eAAeA,QAAQ,CAACC,MAAM,CAAC;EAC3BC,OAAO,EAAEC,OAAO,CAAC,+BAA+B,CAAC,CAACC,OAAO;EACzDC,GAAG,EAAEF,OAAO,CAAC,2BAA2B,CAAC,CAACC,OAAO;EACjDA,OAAO,EAAED,OAAO,CAAC,2BAA2B,CAAC,CAACC;AAClD,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["Platform","e","select","android","require","default","ios"],"sourceRoot":"..\\..\\..\\src","sources":["nws/NwsAlertsOverlay.js"],"mappings":"AAAA,SAAOA,QAAQ,IAAIC,CAAC,QAAK,cAAc;AAAC,eAAeA,CAAC,CAACC,MAAM,CAAC;EAACC,OAAO,EAACC,OAAO,CAAC,+BAA+B,CAAC,CAACC,OAAO;EAACC,GAAG,EAACF,OAAO,CAAC,2BAA2B,CAAC,CAACC,OAAO;EAACA,OAAO,EAACD,OAAO,CAAC,2BAA2B,CAAC,CAACC;AAAO,CAAC,CAAC","ignoreList":[]}