@aguacerowx/react-native 0.0.7 → 0.0.9

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 (274) hide show
  1. package/android/build/.transforms/78b892a9dae44f36e51ff0649e9c6e36/transformed/classes/classes_dex/classes.dex +0 -0
  2. package/android/build/.transforms/f4de14556a82e99f0d27ddcab762b219/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/aguacerowx/reactnative/GridRenderLayer$VertexInfo.dex +0 -0
  3. package/android/build/.transforms/f4de14556a82e99f0d27ddcab762b219/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/aguacerowx/reactnative/GridRenderLayer.dex +0 -0
  4. package/android/build/.transforms/f4de14556a82e99f0d27ddcab762b219/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/aguacerowx/reactnative/GridRenderLayerView.dex +0 -0
  5. package/android/build/.transforms/f4de14556a82e99f0d27ddcab762b219/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/aguacerowx/reactnative/InspectorModule.dex +0 -0
  6. package/android/build/.transforms/f4de14556a82e99f0d27ddcab762b219/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/aguacerowx/reactnative/WeatherFrameProcessorModule.dex +0 -0
  7. package/android/build/intermediates/compile_library_classes_jar/debug/bundleLibCompileToJarDebug/classes.jar +0 -0
  8. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/GridRenderLayer$VertexInfo.class +0 -0
  9. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/GridRenderLayer.class +0 -0
  10. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/GridRenderLayerView.class +0 -0
  11. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/InspectorModule.class +0 -0
  12. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/WeatherFrameProcessorModule.class +0 -0
  13. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/GridRenderLayer$VertexInfo.class +0 -0
  14. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/GridRenderLayer.class +0 -0
  15. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/GridRenderLayerView.class +0 -0
  16. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/InspectorModule.class +0 -0
  17. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/WeatherFrameProcessorModule.class +0 -0
  18. package/android/build/intermediates/runtime_library_classes_jar/debug/bundleLibRuntimeToJarDebug/classes.jar +0 -0
  19. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayerView.class.uniqueId2 +0 -0
  20. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/InspectorModule.class.uniqueId0 +0 -0
  21. package/android/build/tmp/compileDebugJavaWithJavac/previous-compilation-data.bin +0 -0
  22. package/android/src/main/java/com/aguacerowx/reactnative/GridRenderLayer.java +126 -122
  23. package/android/src/main/java/com/aguacerowx/reactnative/GridRenderLayerView.java +3 -1
  24. package/android/src/main/java/com/aguacerowx/reactnative/InspectorModule.java +13 -5
  25. package/android/src/main/java/com/aguacerowx/reactnative/WeatherFrameProcessorModule.java +4 -18
  26. package/ios/AguaceroPackage.m +19 -0
  27. package/ios/FragmentUniforms.swift +14 -0
  28. package/ios/GridRenderLayer.swift +959 -59
  29. package/ios/GridRenderLayerBridge.swift +30 -0
  30. package/ios/GridRenderLayerManager.mm +104 -98
  31. package/ios/GridRenderLayerView.h +23 -0
  32. package/ios/GridRenderLayerView.m +199 -0
  33. package/ios/InspectorDataCache.swift +66 -0
  34. package/ios/InspectorModule.m +10 -0
  35. package/ios/InspectorModule.swift +64 -0
  36. package/ios/Shaders.metal +131 -0
  37. package/ios/WeatherFrameProcessorModule.m +16 -0
  38. package/ios/WeatherFrameProcessorModule.swift +104 -0
  39. package/ios/aguacerowx-react-native.podspec +21 -14
  40. package/lib/commonjs/android/build/intermediates/compile_library_classes_jar/debug/bundleLibCompileToJarDebug/classes.jar +0 -0
  41. package/lib/commonjs/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/GridRenderLayer$VertexInfo.class +0 -0
  42. package/lib/commonjs/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/GridRenderLayer.class +0 -0
  43. package/lib/commonjs/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/GridRenderLayerView.class +0 -0
  44. package/lib/commonjs/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/InspectorModule.class +0 -0
  45. package/lib/commonjs/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/WeatherFrameProcessorModule.class +0 -0
  46. package/lib/commonjs/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/GridRenderLayer$VertexInfo.class +0 -0
  47. package/lib/commonjs/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/GridRenderLayer.class +0 -0
  48. package/lib/commonjs/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/GridRenderLayerView.class +0 -0
  49. package/lib/commonjs/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/InspectorModule.class +0 -0
  50. package/lib/commonjs/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/WeatherFrameProcessorModule.class +0 -0
  51. package/lib/commonjs/android/build/intermediates/runtime_library_classes_jar/debug/bundleLibRuntimeToJarDebug/classes.jar +0 -0
  52. package/lib/commonjs/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayerView.class.uniqueId2 +0 -0
  53. package/lib/commonjs/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/InspectorModule.class.uniqueId0 +0 -0
  54. package/lib/commonjs/android/build/tmp/compileDebugJavaWithJavac/previous-compilation-data.bin +0 -0
  55. package/lib/commonjs/android/src/main/java/com/aguacerowx/reactnative/GridRenderLayer.java +126 -122
  56. package/lib/commonjs/android/src/main/java/com/aguacerowx/reactnative/GridRenderLayerView.java +3 -1
  57. package/lib/commonjs/android/src/main/java/com/aguacerowx/reactnative/InspectorModule.java +13 -5
  58. package/lib/commonjs/android/src/main/java/com/aguacerowx/reactnative/WeatherFrameProcessorModule.java +4 -18
  59. package/lib/commonjs/ios/AguaceroPackage.m +19 -0
  60. package/lib/commonjs/ios/FragmentUniforms.swift +14 -0
  61. package/lib/commonjs/ios/GridRenderLayer.swift +962 -0
  62. package/lib/commonjs/ios/GridRenderLayerBridge.swift +30 -0
  63. package/lib/commonjs/ios/GridRenderLayerManager.mm +146 -0
  64. package/lib/commonjs/ios/GridRenderLayerView.h +23 -0
  65. package/lib/commonjs/ios/GridRenderLayerView.m +199 -0
  66. package/lib/commonjs/ios/InspectorDataCache.swift +66 -0
  67. package/lib/commonjs/ios/InspectorModule.m +10 -0
  68. package/lib/commonjs/ios/InspectorModule.swift +64 -0
  69. package/lib/commonjs/ios/Shaders.metal +131 -0
  70. package/lib/commonjs/ios/WeatherFrameProcessorModule.m +16 -0
  71. package/lib/commonjs/ios/WeatherFrameProcessorModule.swift +104 -0
  72. package/lib/commonjs/ios/aguacerowx-react-native.podspec +36 -0
  73. package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/AguaceroCore.js +1003 -0
  74. package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/AguaceroCore.js.map +1 -0
  75. package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/coordinate_configs.js +381 -0
  76. package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/coordinate_configs.js.map +1 -0
  77. package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/default-colormaps.js +1229 -0
  78. package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/default-colormaps.js.map +1 -0
  79. package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/dictionaries.js +4023 -0
  80. package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/dictionaries.js.map +1 -0
  81. package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/events.js +38 -0
  82. package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/events.js.map +1 -0
  83. package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/fill-layer-worker.js +30 -0
  84. package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/fill-layer-worker.js.map +1 -0
  85. package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/getBundleId.js +27 -0
  86. package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/getBundleId.js.map +1 -0
  87. package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/index.js +47 -0
  88. package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/index.js.map +1 -0
  89. package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/map-styles.js +301 -0
  90. package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/map-styles.js.map +1 -0
  91. package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/unitConversions.js +126 -0
  92. package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/unitConversions.js.map +1 -0
  93. package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/package.json +48 -0
  94. package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/AguaceroCore.js +1029 -0
  95. package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/AguaceroCore.js.map +1 -0
  96. package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/coordinate_configs.js +381 -0
  97. package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/coordinate_configs.js.map +1 -0
  98. package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/default-colormaps.js +1229 -0
  99. package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/default-colormaps.js.map +1 -0
  100. package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/dictionaries.js +4023 -0
  101. package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/dictionaries.js.map +1 -0
  102. package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/events.js +38 -0
  103. package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/events.js.map +1 -0
  104. package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/fill-layer-worker.js +30 -0
  105. package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/fill-layer-worker.js.map +1 -0
  106. package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/getBundleId.js +27 -0
  107. package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/getBundleId.js.map +1 -0
  108. package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/index.js +41 -0
  109. package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/index.js.map +1 -0
  110. package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/map-styles.js +301 -0
  111. package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/map-styles.js.map +1 -0
  112. package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/unitConversions.js +126 -0
  113. package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/unitConversions.js.map +1 -0
  114. package/lib/commonjs/package.json +9 -17
  115. package/lib/commonjs/src/GridRenderLayer.js +32 -7
  116. package/lib/commonjs/src/GridRenderLayer.js.map +1 -1
  117. package/lib/commonjs/src/MapManager.js +1 -4
  118. package/lib/commonjs/src/MapManager.js.map +1 -1
  119. package/lib/commonjs/src/WeatherLayerManager.js +236 -210
  120. package/lib/commonjs/src/WeatherLayerManager.js.map +1 -1
  121. package/lib/module/android/build/intermediates/compile_library_classes_jar/debug/bundleLibCompileToJarDebug/classes.jar +0 -0
  122. package/lib/module/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/GridRenderLayer$VertexInfo.class +0 -0
  123. package/lib/module/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/GridRenderLayer.class +0 -0
  124. package/lib/module/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/GridRenderLayerView.class +0 -0
  125. package/lib/module/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/InspectorModule.class +0 -0
  126. package/lib/module/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/WeatherFrameProcessorModule.class +0 -0
  127. package/lib/module/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/GridRenderLayer$VertexInfo.class +0 -0
  128. package/lib/module/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/GridRenderLayer.class +0 -0
  129. package/lib/module/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/GridRenderLayerView.class +0 -0
  130. package/lib/module/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/InspectorModule.class +0 -0
  131. package/lib/module/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/WeatherFrameProcessorModule.class +0 -0
  132. package/lib/module/android/build/intermediates/runtime_library_classes_jar/debug/bundleLibRuntimeToJarDebug/classes.jar +0 -0
  133. package/lib/module/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayerView.class.uniqueId2 +0 -0
  134. package/lib/module/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/InspectorModule.class.uniqueId0 +0 -0
  135. package/lib/module/android/build/tmp/compileDebugJavaWithJavac/previous-compilation-data.bin +0 -0
  136. package/lib/module/android/src/main/java/com/aguacerowx/reactnative/GridRenderLayer.java +126 -122
  137. package/lib/module/android/src/main/java/com/aguacerowx/reactnative/GridRenderLayerView.java +3 -1
  138. package/lib/module/android/src/main/java/com/aguacerowx/reactnative/InspectorModule.java +13 -5
  139. package/lib/module/android/src/main/java/com/aguacerowx/reactnative/WeatherFrameProcessorModule.java +4 -18
  140. package/lib/module/ios/AguaceroPackage.m +19 -0
  141. package/lib/module/ios/FragmentUniforms.swift +14 -0
  142. package/lib/module/ios/GridRenderLayer.swift +962 -0
  143. package/lib/module/ios/GridRenderLayerBridge.swift +30 -0
  144. package/lib/module/ios/GridRenderLayerManager.mm +146 -0
  145. package/lib/module/ios/GridRenderLayerView.h +23 -0
  146. package/lib/module/ios/GridRenderLayerView.m +199 -0
  147. package/lib/module/ios/InspectorDataCache.swift +66 -0
  148. package/lib/module/ios/InspectorModule.m +10 -0
  149. package/lib/module/ios/InspectorModule.swift +64 -0
  150. package/lib/module/ios/Shaders.metal +131 -0
  151. package/lib/module/ios/WeatherFrameProcessorModule.m +16 -0
  152. package/lib/module/ios/WeatherFrameProcessorModule.swift +104 -0
  153. package/lib/module/ios/aguacerowx-react-native.podspec +36 -0
  154. package/lib/module/lib/commonjs/ios/AguaceroPackage.m +19 -0
  155. package/lib/module/lib/commonjs/ios/FragmentUniforms.swift +14 -0
  156. package/lib/module/lib/commonjs/ios/GridRenderLayer.swift +962 -0
  157. package/lib/module/lib/commonjs/ios/GridRenderLayerBridge.swift +30 -0
  158. package/lib/module/lib/commonjs/ios/GridRenderLayerManager.mm +146 -0
  159. package/lib/module/lib/commonjs/ios/GridRenderLayerView.h +23 -0
  160. package/lib/module/lib/commonjs/ios/GridRenderLayerView.m +199 -0
  161. package/lib/module/lib/commonjs/ios/InspectorDataCache.swift +66 -0
  162. package/lib/module/lib/commonjs/ios/InspectorModule.m +10 -0
  163. package/lib/module/lib/commonjs/ios/InspectorModule.swift +64 -0
  164. package/lib/module/lib/commonjs/ios/Shaders.metal +131 -0
  165. package/lib/module/lib/commonjs/ios/WeatherFrameProcessorModule.m +16 -0
  166. package/lib/module/lib/commonjs/ios/WeatherFrameProcessorModule.swift +104 -0
  167. package/lib/module/lib/commonjs/ios/aguacerowx-react-native.podspec +36 -0
  168. package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/AguaceroCore.js +1003 -0
  169. package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/AguaceroCore.js.map +1 -0
  170. package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/coordinate_configs.js +381 -0
  171. package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/coordinate_configs.js.map +1 -0
  172. package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/default-colormaps.js +1229 -0
  173. package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/default-colormaps.js.map +1 -0
  174. package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/dictionaries.js +4023 -0
  175. package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/dictionaries.js.map +1 -0
  176. package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/events.js +38 -0
  177. package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/events.js.map +1 -0
  178. package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/fill-layer-worker.js +30 -0
  179. package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/fill-layer-worker.js.map +1 -0
  180. package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/getBundleId.js +27 -0
  181. package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/getBundleId.js.map +1 -0
  182. package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/index.js +47 -0
  183. package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/index.js.map +1 -0
  184. package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/map-styles.js +301 -0
  185. package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/map-styles.js.map +1 -0
  186. package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/unitConversions.js +126 -0
  187. package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/unitConversions.js.map +1 -0
  188. package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/package.json +48 -0
  189. package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/AguaceroCore.js +1033 -0
  190. package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/AguaceroCore.js.map +1 -0
  191. package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/coordinate_configs.js +381 -0
  192. package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/coordinate_configs.js.map +1 -0
  193. package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/default-colormaps.js +1229 -0
  194. package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/default-colormaps.js.map +1 -0
  195. package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/dictionaries.js +4023 -0
  196. package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/dictionaries.js.map +1 -0
  197. package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/events.js +38 -0
  198. package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/events.js.map +1 -0
  199. package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/fill-layer-worker.js +30 -0
  200. package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/fill-layer-worker.js.map +1 -0
  201. package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/getBundleId.js +27 -0
  202. package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/getBundleId.js.map +1 -0
  203. package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/index.js +41 -0
  204. package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/index.js.map +1 -0
  205. package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/map-styles.js +301 -0
  206. package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/map-styles.js.map +1 -0
  207. package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/unitConversions.js +126 -0
  208. package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/unitConversions.js.map +1 -0
  209. package/lib/module/lib/commonjs/package.json +9 -17
  210. package/lib/module/lib/commonjs/src/GridRenderLayer.js +32 -7
  211. package/lib/module/lib/commonjs/src/GridRenderLayer.js.map +1 -1
  212. package/lib/module/lib/commonjs/src/MapManager.js +1 -4
  213. package/lib/module/lib/commonjs/src/MapManager.js.map +1 -1
  214. package/lib/module/lib/commonjs/src/WeatherLayerManager.js +236 -210
  215. package/lib/module/lib/commonjs/src/WeatherLayerManager.js.map +1 -1
  216. package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/AguaceroCore.js +1003 -0
  217. package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/AguaceroCore.js.map +1 -0
  218. package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/coordinate_configs.js +381 -0
  219. package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/coordinate_configs.js.map +1 -0
  220. package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/default-colormaps.js +1229 -0
  221. package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/default-colormaps.js.map +1 -0
  222. package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/dictionaries.js +4023 -0
  223. package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/dictionaries.js.map +1 -0
  224. package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/events.js +38 -0
  225. package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/events.js.map +1 -0
  226. package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/fill-layer-worker.js +30 -0
  227. package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/fill-layer-worker.js.map +1 -0
  228. package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/getBundleId.js +27 -0
  229. package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/getBundleId.js.map +1 -0
  230. package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/index.js +47 -0
  231. package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/index.js.map +1 -0
  232. package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/map-styles.js +301 -0
  233. package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/map-styles.js.map +1 -0
  234. package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/unitConversions.js +126 -0
  235. package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/unitConversions.js.map +1 -0
  236. package/lib/module/node_modules/@aguacerowx/javascript-sdk/package.json +48 -0
  237. package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/AguaceroCore.js +1021 -0
  238. package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/AguaceroCore.js.map +1 -0
  239. package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/coordinate_configs.js +375 -0
  240. package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/coordinate_configs.js.map +1 -0
  241. package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/default-colormaps.js +1223 -0
  242. package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/default-colormaps.js.map +1 -0
  243. package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/dictionaries.js +4017 -0
  244. package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/dictionaries.js.map +1 -0
  245. package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/events.js +31 -0
  246. package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/events.js.map +1 -0
  247. package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/fill-layer-worker.js +29 -0
  248. package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/fill-layer-worker.js.map +1 -0
  249. package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/getBundleId.js +21 -0
  250. package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/getBundleId.js.map +1 -0
  251. package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/index.js +12 -0
  252. package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/index.js.map +1 -0
  253. package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/map-styles.js +295 -0
  254. package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/map-styles.js.map +1 -0
  255. package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/unitConversions.js +119 -0
  256. package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/unitConversions.js.map +1 -0
  257. package/lib/module/package.json +9 -17
  258. package/lib/module/src/GridRenderLayer.js +32 -7
  259. package/lib/module/src/GridRenderLayer.js.map +1 -1
  260. package/lib/module/src/MapManager.js +1 -4
  261. package/lib/module/src/MapManager.js.map +1 -1
  262. package/lib/module/src/WeatherLayerManager.js +237 -211
  263. package/lib/module/src/WeatherLayerManager.js.map +1 -1
  264. package/lib/typescript/src/GridRenderLayer.d.ts.map +1 -1
  265. package/lib/typescript/src/MapManager.d.ts.map +1 -1
  266. package/lib/typescript/src/WeatherLayerManager.d.ts.map +1 -1
  267. package/package.json +9 -17
  268. package/src/AguaceroContext.js +4 -0
  269. package/src/GridRenderLayer.js +205 -0
  270. package/src/GridRenderLayerNativeComponent.ts +16 -0
  271. package/src/MapManager.js +156 -0
  272. package/src/MapRegistry.js +35 -0
  273. package/src/StyleApplicator.js +241 -0
  274. package/src/WeatherLayerManager.js +873 -0
@@ -297,6 +297,15 @@ public class GridRenderLayer implements CustomLayerHost {
297
297
  }
298
298
  }
299
299
 
300
+ // Add this method to GridRenderLayer.java (around line 270)
301
+ public void updateDataParameters(float scale, float offset, float missing) {
302
+ synchronized (dataLock) {
303
+ this.scale = scale;
304
+ this.offset = offset;
305
+ this.missingQuantized = missing;
306
+ }
307
+ }
308
+
300
309
  // This existing method is now used by both the old JS path and our new native path
301
310
  public void updateDataTexture(byte[] bytes, int nx, int ny, float scale, float offset, float missing, String scaleType) {
302
311
  ByteBuffer dataBuffer = ByteBuffer.allocateDirect(bytes.length);
@@ -470,139 +479,134 @@ public class GridRenderLayer implements CustomLayerHost {
470
479
  Math.abs(getDouble(gridParams, "lat_first", -1)) == 90.0;
471
480
  }
472
481
 
473
- // packages/react-native/android/src/main/java/com/aguacerowx/reactnative/GridRenderLayer.java
474
-
475
- // ... (keep the rest of the file the same, only replace this one method)
476
-
477
- private void generateGeometryData(ReadableMap gridDefMap, ArrayList<Float> vertices, ArrayList<Short> indices) {
478
- ReadableMap gridParams = gridDefMap.getMap("grid_params");
479
- if (gridParams == null) {
480
- Log.e(TAG, "❌ [Geometry] grid_params is null. Aborting mesh generation.");
481
- return;
482
- }
482
+ private void generateGeometryData(ReadableMap gridDefMap, ArrayList<Float> vertices, ArrayList<Short> indices) {
483
+ ReadableMap gridParams = gridDefMap.getMap("grid_params");
484
+ if (gridParams == null) {
485
+ Log.e(TAG, "❌ [Geometry] grid_params is null. Aborting mesh generation.");
486
+ return;
487
+ }
483
488
 
484
- // --- Path 1: Specialized GFS Global Grid Logic (Working Correctly) ---
485
- if (isGFSType(gridParams)) {
486
- // This proven logic remains unchanged.
487
- int subdivisions = 120;
488
- int verticesPerRow = (subdivisions * 3) + 1;
489
- final double TILE_SIZE = 512.0;
490
- for (int row = 0; row <= subdivisions; row++) {
491
- for (int col = 0; col <= subdivisions * 3; col++) {
492
- float v_interp = (float) row / subdivisions;
493
- float u_interp = (float) col / subdivisions;
494
- double lon = -540.0 + u_interp * 1080.0;
495
- double lat = -90.0 + v_interp * 180.0;
496
- double mercX_normalized = (lon + 180.0) / 360.0;
497
- double clampedLat = Math.max(-85.05112878, Math.min(85.05112878, lat));
498
- double sinLatitude = Math.sin(Math.toRadians(clampedLat));
499
- double mercY_normalized = 0.5 - Math.log((1 + sinLatitude) / (1 - sinLatitude)) / (4 * Math.PI);
500
- double mercX = mercX_normalized * TILE_SIZE;
501
- double mercY = mercY_normalized * TILE_SIZE;
502
- vertices.add((float) mercX);
503
- vertices.add((float) mercY);
504
- float tex_u = (float) ((lon + 180.0) / 360.0);
505
- float tex_v = 1.0f - v_interp;
506
- vertices.add(tex_u);
507
- vertices.add(tex_v);
489
+ // --- Path 1: Specialized GFS Global Grid Logic (Working Correctly) ---
490
+ if (isGFSType(gridParams)) {
491
+ // This proven logic remains unchanged.
492
+ int subdivisions = 120;
493
+ int verticesPerRow = (subdivisions * 3) + 1;
494
+ final double TILE_SIZE = 512.0;
495
+ for (int row = 0; row <= subdivisions; row++) {
496
+ for (int col = 0; col <= subdivisions * 3; col++) {
497
+ float v_interp = (float) row / subdivisions;
498
+ float u_interp = (float) col / subdivisions;
499
+ double lon = -540.0 + u_interp * 1080.0;
500
+ double lat = -90.0 + v_interp * 180.0;
501
+ double mercX_normalized = (lon + 180.0) / 360.0;
502
+ double clampedLat = Math.max(-85.05112878, Math.min(85.05112878, lat));
503
+ double sinLatitude = Math.sin(Math.toRadians(clampedLat));
504
+ double mercY_normalized = 0.5 - Math.log((1 + sinLatitude) / (1 - sinLatitude)) / (4 * Math.PI);
505
+ double mercX = mercX_normalized * TILE_SIZE;
506
+ double mercY = mercY_normalized * TILE_SIZE;
507
+ vertices.add((float) mercX);
508
+ vertices.add((float) mercY);
509
+ float tex_u = (float) ((lon + 180.0) / 360.0);
510
+ float tex_v = 1.0f - v_interp;
511
+ vertices.add(tex_u);
512
+ vertices.add(tex_v);
513
+ }
508
514
  }
509
- }
510
- for (short row = 0; row < subdivisions; row++) {
511
- for (short col = 0; col < subdivisions * 3; col++) {
512
- short tl = (short) (row * verticesPerRow + col);
513
- short tr = (short) (tl + 1);
514
- short bl = (short) ((row + 1) * verticesPerRow + col);
515
- short br = (short) (bl + 1);
516
- indices.add(tl); indices.add(bl); indices.add(tr);
517
- indices.add(tr); indices.add(bl); indices.add(br);
515
+ for (short row = 0; row < subdivisions; row++) {
516
+ for (short col = 0; col < subdivisions * 3; col++) {
517
+ short tl = (short) (row * verticesPerRow + col);
518
+ short tr = (short) (tl + 1);
519
+ short bl = (short) ((row + 1) * verticesPerRow + col);
520
+ short br = (short) (bl + 1);
521
+ indices.add(tl); indices.add(bl); indices.add(tr);
522
+ indices.add(tr); indices.add(bl); indices.add(br);
523
+ }
518
524
  }
525
+ return;
519
526
  }
520
- return;
521
- }
522
527
 
523
- // --- Path 2: LCC Grid Logic ---
524
- if (isLCCType(gridDefMap)) {
525
- generateLCCGeometry(gridDefMap, vertices, indices);
526
- return;
527
- }
528
-
529
- // Step 1: Extract grid parameters
530
- int nx = gridParams.getInt("nx");
531
- int ny = gridParams.getInt("ny");
532
- double lon_first = getDouble(gridParams, "lon_first", 0.0);
533
- double lat_first = getDouble(gridParams, "lat_first", 90.0);
534
- double dx = getDouble(gridParams, "dx_degrees", 0.0);
535
- double dy = getDouble(gridParams, "dy_degrees", 0.0);
536
- double lon_last = getDouble(gridParams, "lon_last", lon_first + (nx - 1) * dx);
537
- double lat_last = getDouble(gridParams, "lat_last", lat_first + (ny - 1) * dy);
538
- double lat_span = lat_last - lat_first;
539
- boolean isSouthToNorth = lat_span > 0;
540
-
541
- // Step 2: Normalize data longitudes to the -180 to +180 range for consistent placement.
542
- double data_lon_first_180 = lon_first > 180 ? lon_first - 360 : lon_first;
543
- double data_lon_last_180 = lon_last > 180 ? lon_last - 360 : lon_last;
544
- double data_lon_range = data_lon_last_180 - data_lon_first_180;
545
-
546
- // Step 3: Define mesh properties
547
- int subdivisions_x = 120; // Subdivisions for a single mesh instance
548
- int subdivisions_y = 60;
549
- int verticesPerMesh = (subdivisions_y + 1) * (subdivisions_x + 1);
550
- int verticesPerRow = subdivisions_x + 1;
551
- final double TILE_SIZE = 512.0;
552
-
553
- // Step 4: Generate three separate, non-connected meshes to prevent seam artifacts
554
- for (int world_copy = -1; world_copy <= 1; world_copy++) {
555
- short vertexStartIndex = (short) (vertices.size() / 4); // 4 floats per vertex (x,y,u,v)
556
- double lon_offset = world_copy * 360.0;
557
-
558
- // Generate vertices for this specific world copy
559
- for (int row = 0; row <= subdivisions_y; row++) {
560
- for (int col = 0; col <= subdivisions_x; col++) {
561
- float v_interp = (float) row / subdivisions_y;
562
- float u_interp = (float) col / subdivisions_x;
563
-
564
- // Vertex position is interpolated across the data's native bounds, then offset for the world copy
565
- double vertex_lon = data_lon_first_180 + (u_interp * data_lon_range);
566
- double vertex_lat = lat_first + (v_interp * lat_span);
567
-
568
- // Convert to map coordinates, adding the world copy offset
569
- double mercX_normalized = ((vertex_lon + lon_offset) + 180.0) / 360.0;
570
- double clampedLat = Math.max(-85.05112878, Math.min(85.05112878, vertex_lat));
571
- double sinLatitude = Math.sin(Math.toRadians(clampedLat));
572
- double mercY_normalized = 0.5 - Math.log((1 + sinLatitude) / (1 - sinLatitude)) / (4 * Math.PI);
573
- double mercX = mercX_normalized * TILE_SIZE;
574
- double mercY = mercY_normalized * TILE_SIZE;
528
+ // --- Path 2: LCC Grid Logic ---
529
+ if (isLCCType(gridDefMap)) {
530
+ generateLCCGeometry(gridDefMap, vertices, indices);
531
+ return;
532
+ }
575
533
 
576
- vertices.add((float) mercX);
577
- vertices.add((float) mercY);
534
+ // Step 1: Extract grid parameters
535
+ int nx = gridParams.getInt("nx");
536
+ int ny = gridParams.getInt("ny");
537
+ double lon_first = getDouble(gridParams, "lon_first", 0.0);
538
+ double lat_first = getDouble(gridParams, "lat_first", 90.0);
539
+ double dx = getDouble(gridParams, "dx_degrees", 0.0);
540
+ double dy = getDouble(gridParams, "dy_degrees", 0.0);
541
+ double lon_last = getDouble(gridParams, "lon_last", lon_first + (nx - 1) * dx);
542
+ double lat_last = getDouble(gridParams, "lat_last", lat_first + (ny - 1) * dy);
543
+ double lat_span = lat_last - lat_first;
544
+ boolean isSouthToNorth = lat_span > 0;
545
+
546
+ // Step 2: Normalize data longitudes to the -180 to +180 range for consistent placement.
547
+ double data_lon_first_180 = lon_first > 180 ? lon_first - 360 : lon_first;
548
+ double data_lon_last_180 = lon_last > 180 ? lon_last - 360 : lon_last;
549
+ double data_lon_range = data_lon_last_180 - data_lon_first_180;
550
+
551
+ // Step 3: Define mesh properties
552
+ int subdivisions_x = 120; // Subdivisions for a single mesh instance
553
+ int subdivisions_y = 60;
554
+ int verticesPerMesh = (subdivisions_y + 1) * (subdivisions_x + 1);
555
+ int verticesPerRow = subdivisions_x + 1;
556
+ final double TILE_SIZE = 512.0;
578
557
 
579
- // Texture coordinates are always a clean 0.0 to 1.0 for each mesh instance
580
- float tex_u = u_interp;
581
- float tex_v = isSouthToNorth ? (1.0f - v_interp) : v_interp;
582
-
583
- vertices.add(tex_u);
584
- vertices.add(tex_v);
558
+ // Step 4: Generate three separate, non-connected meshes to prevent seam artifacts
559
+ for (int world_copy = -1; world_copy <= 1; world_copy++) {
560
+ short vertexStartIndex = (short) (vertices.size() / 4); // 4 floats per vertex (x,y,u,v)
561
+ double lon_offset = world_copy * 360.0;
562
+
563
+ // Generate vertices for this specific world copy
564
+ for (int row = 0; row <= subdivisions_y; row++) {
565
+ for (int col = 0; col <= subdivisions_x; col++) {
566
+ float v_interp = (float) row / subdivisions_y;
567
+ float u_interp = (float) col / subdivisions_x;
568
+
569
+ // Vertex position is interpolated across the data's native bounds, then offset for the world copy
570
+ double vertex_lon = data_lon_first_180 + (u_interp * data_lon_range);
571
+ double vertex_lat = lat_first + (v_interp * lat_span);
572
+
573
+ // Convert to map coordinates, adding the world copy offset
574
+ double mercX_normalized = ((vertex_lon + lon_offset) + 180.0) / 360.0;
575
+ double clampedLat = Math.max(-85.05112878, Math.min(85.05112878, vertex_lat));
576
+ double sinLatitude = Math.sin(Math.toRadians(clampedLat));
577
+ double mercY_normalized = 0.5 - Math.log((1 + sinLatitude) / (1 - sinLatitude)) / (4 * Math.PI);
578
+ double mercX = mercX_normalized * TILE_SIZE;
579
+ double mercY = mercY_normalized * TILE_SIZE;
580
+
581
+ vertices.add((float) mercX);
582
+ vertices.add((float) mercY);
583
+
584
+ // Texture coordinates are always a clean 0.0 to 1.0 for each mesh instance
585
+ float tex_u = u_interp;
586
+ float tex_v = isSouthToNorth ? (1.0f - v_interp) : v_interp;
587
+
588
+ vertices.add(tex_u);
589
+ vertices.add(tex_v);
590
+ }
585
591
  }
586
- }
587
-
588
- // Generate indices for this specific world copy, offsetting by the starting index
589
- for (short row = 0; row < subdivisions_y; row++) {
590
- for (short col = 0; col < subdivisions_x; col++) {
591
- short tl = (short) (vertexStartIndex + row * verticesPerRow + col);
592
- short tr = (short) (tl + 1);
593
- short bl = (short) (vertexStartIndex + (row + 1) * verticesPerRow + col);
594
- short br = (short) (bl + 1);
595
592
 
596
- if (isSouthToNorth) {
597
- indices.add(tl); indices.add(bl); indices.add(tr);
598
- indices.add(tr); indices.add(bl); indices.add(br);
599
- } else { // North-to-South (MRMS)
600
- indices.add(tl); indices.add(tr); indices.add(bl);
601
- indices.add(bl); indices.add(tr); indices.add(br);
593
+ // Generate indices for this specific world copy, offsetting by the starting index
594
+ for (short row = 0; row < subdivisions_y; row++) {
595
+ for (short col = 0; col < subdivisions_x; col++) {
596
+ short tl = (short) (vertexStartIndex + row * verticesPerRow + col);
597
+ short tr = (short) (tl + 1);
598
+ short bl = (short) (vertexStartIndex + (row + 1) * verticesPerRow + col);
599
+ short br = (short) (bl + 1);
600
+
601
+ if (isSouthToNorth) {
602
+ indices.add(tl); indices.add(bl); indices.add(tr);
603
+ indices.add(tr); indices.add(bl); indices.add(br);
604
+ } else { // North-to-South (MRMS)
605
+ indices.add(tl); indices.add(tr); indices.add(bl);
606
+ indices.add(bl); indices.add(tr); indices.add(br);
607
+ }
602
608
  }
603
609
  }
604
610
  }
605
611
  }
606
- }
607
-
608
612
  }
@@ -241,7 +241,6 @@ public class GridRenderLayerView extends FrameLayout {
241
241
  colormapBuffer.put(bytes);
242
242
  colormapBuffer.position(0);
243
243
  gridLayerImplementation.updateColormapTexture(colormapBuffer);
244
- triggerRepaint();
245
244
  }
246
245
 
247
246
  public void updateGeometry(ReadableMap corners, ReadableMap gridDef) {
@@ -289,6 +288,9 @@ public class GridRenderLayerView extends FrameLayout {
289
288
  lastDataScale = scale;
290
289
  lastDataOffset = offset;
291
290
  lastDataMissing = missing;
291
+
292
+ // CRITICAL FIX: Also update the GridRenderLayer implementation
293
+ gridLayerImplementation.updateDataParameters(scale, offset, missing);
292
294
  }
293
295
 
294
296
  public void clearData() {
@@ -32,6 +32,7 @@ public class InspectorModule extends ReactContextBaseJavaModule {
32
32
  float scale = GridRenderLayerView.getLastDataScale();
33
33
  float offset = GridRenderLayerView.getLastDataOffset();
34
34
  float missing = GridRenderLayerView.getLastDataMissing();
35
+ String scaleType = GridRenderLayerView.getLastDataScaleType(); // ADD THIS
35
36
 
36
37
  // Calculate index
37
38
  int index = j * nx + i;
@@ -45,18 +46,25 @@ public class InspectorModule extends ReactContextBaseJavaModule {
45
46
  // Read byte value
46
47
  int byteValue = data[index] & 0xFF; // Convert to unsigned
47
48
  int signedQuantizedValue = byteValue - 128;
48
- int missingQuantized = Math.round(missing - 128);
49
+ int missingQuantized = Math.round(missing); // CHANGED: removed -128 since missing is already adjusted
49
50
 
50
51
  // Check for missing value
51
- if (signedQuantizedValue == missingQuantized) {
52
+ if (Math.abs(signedQuantizedValue - missingQuantized) < 0.5) { // CHANGED: use tolerance
52
53
  promise.resolve(null);
53
54
  return;
54
55
  }
55
56
 
56
- // Calculate actual value
57
- double value = signedQuantizedValue * scale + offset;
57
+ // Step 1: Linear dequantization
58
+ double intermediateValue = signedQuantizedValue * scale + offset;
59
+ double finalValue = intermediateValue;
58
60
 
59
- promise.resolve(value);
61
+ // Step 2: Apply sqrt inverse transformation if needed (matching the shader)
62
+ if ("sqrt".equals(scaleType)) {
63
+ // Square the intermediate value while preserving sign
64
+ finalValue = intermediateValue * Math.abs(intermediateValue);
65
+ }
66
+
67
+ promise.resolve(finalValue);
60
68
  } catch (Exception e) {
61
69
  promise.reject("ERROR", e.getMessage());
62
70
  }
@@ -1,12 +1,10 @@
1
- // packages/com/aguacerowx/reactnative/WeatherFrameProcessorModule.java
2
-
3
1
  package com.aguacerowx.reactnative;
4
2
 
5
3
  import androidx.annotation.NonNull;
6
4
  import android.util.Base64;
7
5
 
8
6
  import com.facebook.react.bridge.Arguments;
9
- import com.facebook.react.bridge.Callback;
7
+ import com.facebook.react.bridge.Promise; // CHANGED: Import Promise instead of Callback
10
8
  import com.facebook.react.bridge.ReactApplicationContext;
11
9
  import com.facebook.react.bridge.ReactContextBaseJavaModule;
12
10
  import com.facebook.react.bridge.ReactMethod;
@@ -61,7 +59,7 @@ public class WeatherFrameProcessorModule extends ReactContextBaseJavaModule {
61
59
  }
62
60
 
63
61
  @ReactMethod
64
- public void processFrame(ReadableMap options, Callback callback) {
62
+ public void processFrame(ReadableMap options, Promise promise) { // CHANGED: Use Promise instead of Callback
65
63
  final int taskToken = this.currentRunToken;
66
64
  executorService.execute(() -> {
67
65
  FileOutputStream fos = null;
@@ -70,17 +68,12 @@ public class WeatherFrameProcessorModule extends ReactContextBaseJavaModule {
70
68
  return; // Task was cancelled
71
69
  }
72
70
 
73
- // --- START OF REPLACEMENT ---
74
-
75
- // 1. Get the shared OkHttpClient instance from React Native
76
71
  OkHttpClient client = OkHttpClientProvider.getOkHttpClient();
77
72
 
78
- // 2. Get request details from options
79
73
  String urlString = options.getString("url");
80
74
  String apiKey = options.getString("apiKey");
81
75
  String bundleId = options.getString("bundleId");
82
76
 
83
- // 3. Build the OkHttp Request
84
77
  Request.Builder requestBuilder = new Request.Builder()
85
78
  .url(urlString)
86
79
  .header("x-api-key", apiKey);
@@ -92,7 +85,6 @@ public class WeatherFrameProcessorModule extends ReactContextBaseJavaModule {
92
85
  Request request = requestBuilder.build();
93
86
 
94
87
  String responseString;
95
- // 4. Execute the request and handle the response
96
88
  try (Response response = client.newCall(request).execute()) {
97
89
  if (!response.isSuccessful()) {
98
90
  throw new IOException("HTTP Error: " + response.code());
@@ -105,21 +97,15 @@ public class WeatherFrameProcessorModule extends ReactContextBaseJavaModule {
105
97
  responseString = body.string();
106
98
  }
107
99
 
108
- // --- END OF REPLACEMENT ---
109
-
110
- // The rest of your logic remains the same
111
100
  JSONObject jsonResponse = new JSONObject(responseString);
112
101
  if (!jsonResponse.has("data") || !jsonResponse.has("encoding")) {
113
- // If the core keys are missing, the response is invalid. Log it and fail.
114
102
  throw new IOException("Invalid API response. 'data' or 'encoding' key is missing. Response: " + responseString);
115
103
  }
116
104
 
117
105
  String b64CompressedData = jsonResponse.getString("data");
118
106
  JSONObject encoding = jsonResponse.getJSONObject("encoding");
119
107
 
120
-
121
108
  if (!encoding.has("scale") || !encoding.has("offset") || !encoding.has("missing_quantized")) {
122
- // If the encoding object is missing required values, fail with a clear error.
123
109
  throw new IOException("Invalid 'encoding' object in API response. Required keys are missing. Response: " + responseString);
124
110
  }
125
111
 
@@ -145,12 +131,12 @@ public class WeatherFrameProcessorModule extends ReactContextBaseJavaModule {
145
131
  }
146
132
  responseMap.putString("dataAsBase64", b64CompressedData);
147
133
 
148
- callback.invoke(null, responseMap);
134
+ promise.resolve(responseMap); // CHANGED: Use promise.resolve() instead of callback
149
135
 
150
136
  } catch (Exception e) {
151
137
  if (taskToken == this.currentRunToken) {
152
138
  android.util.Log.e("AguaceroWX", "Error processing frame", e);
153
- callback.invoke(e.getMessage(), null);
139
+ promise.reject("PROCESSING_ERROR", e.getMessage(), e); // CHANGED: Use promise.reject() instead of callback
154
140
  }
155
141
  } finally {
156
142
  if (fos != null) {
@@ -0,0 +1,19 @@
1
+ #import <React/RCTBridgeModule.h>
2
+ #import <React/RCTViewManager.h>
3
+
4
+ // This file acts as a central manifest for all your native code.
5
+ // The autolinker will find this and use it to register your modules.
6
+
7
+ // --- Make sure these module names match your Swift/Objective-C class names ---
8
+
9
+ // Exposing the Swift module to Objective-C
10
+ @interface RCT_EXTERN_MODULE(WeatherFrameProcessorModule, NSObject)
11
+ @end
12
+
13
+ // Exposing the Swift module to Objective-C
14
+ @interface RCT_EXTERN_MODULE(InspectorModule, NSObject)
15
+ @end
16
+
17
+ // Exposing the ViewManager to Objective-C
18
+ @interface RCT_EXTERN_MODULE(GridRenderLayerManager, RCTViewManager)
19
+ @end
@@ -0,0 +1,14 @@
1
+ import Foundation
2
+ import simd
3
+
4
+ // Must match the fragment shader's uniform structure
5
+ struct FragmentUniforms {
6
+ var opacity: Float
7
+ var dataRange: SIMD2<Float>
8
+ var scale: Float
9
+ var offset: Float
10
+ var missingQuantized: Float
11
+ var textureSize: SIMD2<Float>
12
+ var smoothing: Int32
13
+ var scaleType: Int32
14
+ }