@aguacerowx/react-native 0.0.9 → 0.0.12
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.
- package/README.md +60 -60
- package/android/build.gradle +83 -84
- package/android/src/main/AndroidManifest.xml +6 -6
- package/android/src/main/java/com/aguacerowx/reactnative/AguaceroPackage.java +33 -33
- package/android/src/main/java/com/aguacerowx/reactnative/GridRenderLayer.java +611 -611
- package/android/src/main/java/com/aguacerowx/reactnative/GridRenderLayerView.java +299 -299
- package/android/src/main/java/com/aguacerowx/reactnative/GridRenderManager.java +117 -117
- package/android/src/main/java/com/aguacerowx/reactnative/InspectorModule.java +71 -71
- package/android/src/main/java/com/aguacerowx/reactnative/ShaderUtils.java +106 -106
- package/android/src/main/java/com/aguacerowx/reactnative/WeatherFrameProcessorModule.java +151 -151
- package/android/src/main/java/com/facebook/react/viewmanagers/.gitkeep +0 -0
- package/android/src/main/java/com/facebook/react/viewmanagers/GridRenderLayerManagerDelegate.java +0 -0
- package/android/src/main/java/com/facebook/react/viewmanagers/GridRenderLayerManagerInterface.java +0 -0
- package/android/src/main/res/raw/debug_fragment_shader.glsl +12 -12
- package/android/src/main/res/raw/debug_vertex_shader.glsl +12 -12
- package/android/src/main/res/raw/fragment_shader.glsl +97 -97
- package/android/src/main/res/raw/vertex_shader.glsl +19 -19
- package/index.js +1 -1
- package/ios/AguaceroPackage.m +18 -18
- package/ios/FragmentUniforms.swift +13 -13
- package/ios/GridRenderLayer.swift +962 -962
- package/ios/GridRenderLayerBridge.swift +29 -29
- package/ios/GridRenderLayerManager.mm +145 -145
- package/ios/GridRenderLayerView.h +22 -22
- package/ios/GridRenderLayerView.m +199 -199
- package/ios/InspectorDataCache.swift +65 -65
- package/ios/InspectorModule.m +9 -9
- package/ios/InspectorModule.swift +63 -63
- package/ios/Shaders.metal +130 -130
- package/ios/WeatherFrameProcessorModule.m +15 -15
- package/ios/WeatherFrameProcessorModule.swift +103 -103
- package/ios/aguacerowx-react-native.podspec +36 -35
- package/ios/generated/.gitkeep +0 -0
- package/ios/generated/AguaceroWxReactNativeSpec-generated.mm +0 -0
- package/ios/generated/AguaceroWxReactNativeSpec.h +0 -0
- package/lib/commonjs/README.md +60 -60
- package/lib/commonjs/android/build.gradle +83 -84
- package/lib/commonjs/android/src/main/AndroidManifest.xml +6 -6
- package/lib/commonjs/android/src/main/java/com/aguacerowx/reactnative/AguaceroPackage.java +33 -33
- package/lib/commonjs/android/src/main/java/com/aguacerowx/reactnative/GridRenderLayer.java +611 -611
- package/lib/commonjs/android/src/main/java/com/aguacerowx/reactnative/GridRenderLayerView.java +299 -299
- package/lib/commonjs/android/src/main/java/com/aguacerowx/reactnative/GridRenderManager.java +117 -117
- package/lib/commonjs/android/src/main/java/com/aguacerowx/reactnative/InspectorModule.java +71 -71
- package/lib/commonjs/android/src/main/java/com/aguacerowx/reactnative/ShaderUtils.java +106 -106
- package/lib/commonjs/android/src/main/java/com/aguacerowx/reactnative/WeatherFrameProcessorModule.java +151 -151
- package/lib/commonjs/android/src/main/java/com/facebook/react/viewmanagers/GridRenderLayerManagerDelegate.java +0 -0
- package/lib/commonjs/android/src/main/java/com/facebook/react/viewmanagers/GridRenderLayerManagerInterface.java +0 -0
- package/lib/commonjs/android/src/main/res/raw/debug_fragment_shader.glsl +12 -12
- package/lib/commonjs/android/src/main/res/raw/debug_vertex_shader.glsl +12 -12
- package/lib/commonjs/android/src/main/res/raw/fragment_shader.glsl +97 -97
- package/lib/commonjs/android/src/main/res/raw/vertex_shader.glsl +19 -19
- package/lib/commonjs/babel.config.js.map +1 -1
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/ios/AguaceroPackage.m +18 -18
- package/lib/commonjs/ios/FragmentUniforms.swift +13 -13
- package/lib/commonjs/ios/GridRenderLayer.swift +962 -962
- package/lib/commonjs/ios/GridRenderLayerBridge.swift +29 -29
- package/lib/commonjs/ios/GridRenderLayerManager.mm +145 -145
- package/lib/commonjs/ios/GridRenderLayerView.h +22 -22
- package/lib/commonjs/ios/GridRenderLayerView.m +199 -199
- package/lib/commonjs/ios/InspectorDataCache.swift +65 -65
- package/lib/commonjs/ios/InspectorModule.m +9 -9
- package/lib/commonjs/ios/InspectorModule.swift +63 -63
- package/lib/commonjs/ios/Shaders.metal +130 -130
- package/lib/commonjs/ios/WeatherFrameProcessorModule.m +15 -15
- package/lib/commonjs/ios/WeatherFrameProcessorModule.swift +103 -103
- package/lib/commonjs/ios/aguacerowx-react-native.podspec +36 -35
- package/lib/commonjs/ios/generated/AguaceroWxReactNativeSpec-generated.mm +0 -0
- package/lib/commonjs/ios/generated/AguaceroWxReactNativeSpec.h +0 -0
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/AguaceroCore.js.map +1 -1
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/coordinate_configs.js.map +1 -1
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/default-colormaps.js.map +1 -1
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/dictionaries.js.map +1 -1
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/events.js.map +1 -1
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/fill-layer-worker.js.map +1 -1
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/getBundleId.js.map +1 -1
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/index.js.map +1 -1
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/map-styles.js.map +1 -1
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/unitConversions.js.map +1 -1
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/package.json +1 -1
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/AguaceroCore.js.map +1 -1
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/coordinate_configs.js.map +1 -1
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/default-colormaps.js.map +1 -1
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/dictionaries.js.map +1 -1
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/events.js.map +1 -1
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/fill-layer-worker.js.map +1 -1
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/getBundleId.js.map +1 -1
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/index.js.map +1 -1
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/map-styles.js.map +1 -1
- package/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/unitConversions.js.map +1 -1
- package/lib/commonjs/package.json +71 -65
- package/lib/commonjs/react-native-builder-bob.config.js.map +1 -1
- package/lib/commonjs/src/AguaceroContext.js.map +1 -1
- package/lib/commonjs/src/GridRenderLayer.js.map +1 -1
- package/lib/commonjs/src/GridRenderLayerNativeComponent.js.map +1 -1
- package/lib/commonjs/src/MapManager.js.map +1 -1
- package/lib/commonjs/src/MapRegistry.js.map +1 -1
- package/lib/commonjs/src/StyleApplicator.js +6 -6
- package/lib/commonjs/src/StyleApplicator.js.map +1 -1
- package/lib/commonjs/src/WeatherLayerManager.js +2 -2
- package/lib/commonjs/src/WeatherLayerManager.js.map +1 -1
- package/lib/commonjs/tsconfig.json +23 -23
- package/lib/module/README.md +60 -60
- package/lib/module/android/build.gradle +83 -84
- package/lib/module/android/src/main/AndroidManifest.xml +6 -6
- package/lib/module/android/src/main/java/com/aguacerowx/reactnative/AguaceroPackage.java +33 -33
- package/lib/module/android/src/main/java/com/aguacerowx/reactnative/GridRenderLayer.java +611 -611
- package/lib/module/android/src/main/java/com/aguacerowx/reactnative/GridRenderLayerView.java +299 -299
- package/lib/module/android/src/main/java/com/aguacerowx/reactnative/GridRenderManager.java +117 -117
- package/lib/module/android/src/main/java/com/aguacerowx/reactnative/InspectorModule.java +71 -71
- package/lib/module/android/src/main/java/com/aguacerowx/reactnative/ShaderUtils.java +106 -106
- package/lib/module/android/src/main/java/com/aguacerowx/reactnative/WeatherFrameProcessorModule.java +151 -151
- package/lib/module/android/src/main/java/com/facebook/react/viewmanagers/GridRenderLayerManagerDelegate.java +0 -0
- package/lib/module/android/src/main/java/com/facebook/react/viewmanagers/GridRenderLayerManagerInterface.java +0 -0
- package/lib/module/android/src/main/res/raw/debug_fragment_shader.glsl +12 -12
- package/lib/module/android/src/main/res/raw/debug_vertex_shader.glsl +12 -12
- package/lib/module/android/src/main/res/raw/fragment_shader.glsl +97 -97
- package/lib/module/android/src/main/res/raw/vertex_shader.glsl +19 -19
- package/lib/module/babel.config.js.map +1 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/ios/AguaceroPackage.m +18 -18
- package/lib/module/ios/FragmentUniforms.swift +13 -13
- package/lib/module/ios/GridRenderLayer.swift +962 -962
- package/lib/module/ios/GridRenderLayerBridge.swift +29 -29
- package/lib/module/ios/GridRenderLayerManager.mm +145 -145
- package/lib/module/ios/GridRenderLayerView.h +22 -22
- package/lib/module/ios/GridRenderLayerView.m +199 -199
- package/lib/module/ios/InspectorDataCache.swift +65 -65
- package/lib/module/ios/InspectorModule.m +9 -9
- package/lib/module/ios/InspectorModule.swift +63 -63
- package/lib/module/ios/Shaders.metal +130 -130
- package/lib/module/ios/WeatherFrameProcessorModule.m +15 -15
- package/lib/module/ios/WeatherFrameProcessorModule.swift +103 -103
- package/lib/module/ios/aguacerowx-react-native.podspec +36 -35
- package/lib/module/ios/generated/AguaceroWxReactNativeSpec-generated.mm +0 -0
- package/lib/module/ios/generated/AguaceroWxReactNativeSpec.h +0 -0
- package/lib/module/lib/commonjs/README.md +60 -60
- package/lib/module/lib/commonjs/android/build.gradle +83 -84
- package/lib/module/lib/commonjs/android/src/main/AndroidManifest.xml +6 -6
- package/lib/module/lib/commonjs/babel.config.js.map +1 -1
- package/lib/module/lib/commonjs/index.js.map +1 -1
- package/lib/module/lib/commonjs/ios/AguaceroPackage.m +18 -18
- package/lib/module/lib/commonjs/ios/FragmentUniforms.swift +13 -13
- package/lib/module/lib/commonjs/ios/GridRenderLayer.swift +962 -962
- package/lib/module/lib/commonjs/ios/GridRenderLayerBridge.swift +29 -29
- package/lib/module/lib/commonjs/ios/GridRenderLayerManager.mm +145 -145
- package/lib/module/lib/commonjs/ios/GridRenderLayerView.h +22 -22
- package/lib/module/lib/commonjs/ios/GridRenderLayerView.m +199 -199
- package/lib/module/lib/commonjs/ios/InspectorDataCache.swift +65 -65
- package/lib/module/lib/commonjs/ios/InspectorModule.m +9 -9
- package/lib/module/lib/commonjs/ios/InspectorModule.swift +63 -63
- package/lib/module/lib/commonjs/ios/Shaders.metal +130 -130
- package/lib/module/lib/commonjs/ios/WeatherFrameProcessorModule.m +15 -15
- package/lib/module/lib/commonjs/ios/WeatherFrameProcessorModule.swift +103 -103
- package/lib/module/lib/commonjs/ios/aguacerowx-react-native.podspec +36 -35
- package/lib/module/lib/commonjs/ios/generated/AguaceroWxReactNativeSpec-generated.mm +0 -0
- package/lib/module/lib/commonjs/ios/generated/AguaceroWxReactNativeSpec.h +0 -0
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/AguaceroCore.js.map +1 -1
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/coordinate_configs.js.map +1 -1
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/default-colormaps.js.map +1 -1
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/dictionaries.js.map +1 -1
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/events.js.map +1 -1
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/fill-layer-worker.js.map +1 -1
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/getBundleId.js.map +1 -1
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/index.js.map +1 -1
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/map-styles.js.map +1 -1
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/dist/unitConversions.js.map +1 -1
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/package.json +1 -1
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/AguaceroCore.js.map +1 -1
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/coordinate_configs.js.map +1 -1
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/default-colormaps.js.map +1 -1
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/dictionaries.js.map +1 -1
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/events.js.map +1 -1
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/fill-layer-worker.js.map +1 -1
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/getBundleId.js.map +1 -1
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/index.js.map +1 -1
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/map-styles.js.map +1 -1
- package/lib/module/lib/commonjs/node_modules/@aguacerowx/javascript-sdk/src/unitConversions.js.map +1 -1
- package/lib/module/lib/commonjs/package.json +71 -65
- package/lib/module/lib/commonjs/react-native-builder-bob.config.js.map +1 -1
- package/lib/module/lib/commonjs/src/AguaceroContext.js.map +1 -1
- package/lib/module/lib/commonjs/src/GridRenderLayer.js.map +1 -1
- package/lib/module/lib/commonjs/src/GridRenderLayerNativeComponent.js.map +1 -1
- package/lib/module/lib/commonjs/src/MapManager.js.map +1 -1
- package/lib/module/lib/commonjs/src/MapRegistry.js.map +1 -1
- package/lib/module/lib/commonjs/src/StyleApplicator.js +6 -6
- package/lib/module/lib/commonjs/src/StyleApplicator.js.map +1 -1
- package/lib/module/lib/commonjs/src/WeatherLayerManager.js +2 -2
- package/lib/module/lib/commonjs/src/WeatherLayerManager.js.map +1 -1
- package/lib/module/lib/commonjs/tsconfig.json +23 -23
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/AguaceroCore.js.map +1 -1
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/coordinate_configs.js.map +1 -1
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/default-colormaps.js.map +1 -1
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/dictionaries.js.map +1 -1
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/events.js.map +1 -1
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/fill-layer-worker.js.map +1 -1
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/getBundleId.js.map +1 -1
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/index.js.map +1 -1
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/map-styles.js.map +1 -1
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/dist/unitConversions.js.map +1 -1
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/package.json +1 -1
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/AguaceroCore.js.map +1 -1
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/coordinate_configs.js.map +1 -1
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/default-colormaps.js.map +1 -1
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/dictionaries.js.map +1 -1
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/events.js.map +1 -1
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/fill-layer-worker.js.map +1 -1
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/getBundleId.js.map +1 -1
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/index.js.map +1 -1
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/map-styles.js.map +1 -1
- package/lib/module/node_modules/@aguacerowx/javascript-sdk/src/unitConversions.js.map +1 -1
- package/lib/module/package.json +71 -65
- package/lib/module/react-native-builder-bob.config.js.map +1 -1
- package/lib/module/src/AguaceroContext.js.map +1 -1
- package/lib/module/src/GridRenderLayer.js.map +1 -1
- package/lib/module/src/GridRenderLayerNativeComponent.js.map +1 -1
- package/lib/module/src/MapManager.js.map +1 -1
- package/lib/module/src/MapRegistry.js.map +1 -1
- package/lib/module/src/StyleApplicator.js +6 -6
- package/lib/module/src/StyleApplicator.js.map +1 -1
- package/lib/module/src/WeatherLayerManager.js +2 -2
- package/lib/module/src/WeatherLayerManager.js.map +1 -1
- package/lib/module/tsconfig.json +23 -23
- package/package.json +71 -65
- package/src/AguaceroContext.js +3 -3
- package/src/GridRenderLayer.js +204 -204
- package/src/GridRenderLayerNativeComponent.ts +15 -15
- package/src/MapManager.js +155 -155
- package/src/MapRegistry.js +34 -34
- package/src/StyleApplicator.js +240 -240
- package/src/WeatherLayerManager.js +872 -872
- package/android/build/.transforms/78b892a9dae44f36e51ff0649e9c6e36/results.bin +0 -1
- package/android/build/.transforms/78b892a9dae44f36e51ff0649e9c6e36/transformed/classes/classes_dex/classes.dex +0 -0
- package/android/build/.transforms/f4de14556a82e99f0d27ddcab762b219/results.bin +0 -1
- package/android/build/.transforms/f4de14556a82e99f0d27ddcab762b219/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/aguacerowx/reactnative/AguaceroPackage.dex +0 -0
- package/android/build/.transforms/f4de14556a82e99f0d27ddcab762b219/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/aguacerowx/reactnative/BuildConfig.dex +0 -0
- package/android/build/.transforms/f4de14556a82e99f0d27ddcab762b219/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/aguacerowx/reactnative/GridRenderLayer$VertexInfo.dex +0 -0
- package/android/build/.transforms/f4de14556a82e99f0d27ddcab762b219/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/aguacerowx/reactnative/GridRenderLayer.dex +0 -0
- package/android/build/.transforms/f4de14556a82e99f0d27ddcab762b219/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/aguacerowx/reactnative/GridRenderLayerView.dex +0 -0
- package/android/build/.transforms/f4de14556a82e99f0d27ddcab762b219/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/aguacerowx/reactnative/GridRenderManager.dex +0 -0
- package/android/build/.transforms/f4de14556a82e99f0d27ddcab762b219/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/aguacerowx/reactnative/InspectorModule.dex +0 -0
- package/android/build/.transforms/f4de14556a82e99f0d27ddcab762b219/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/aguacerowx/reactnative/ShaderUtils.dex +0 -0
- package/android/build/.transforms/f4de14556a82e99f0d27ddcab762b219/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/aguacerowx/reactnative/WeatherFrameProcessorModule.dex +0 -0
- package/android/build/.transforms/f4de14556a82e99f0d27ddcab762b219/transformed/bundleLibRuntimeToDirDebug/desugar_graph.bin +0 -0
- package/android/build/generated/source/buildConfig/debug/com/aguacerowx/reactnative/BuildConfig.java +0 -10
- package/android/build/intermediates/aapt_friendly_merged_manifests/debug/processDebugManifest/aapt/AndroidManifest.xml +0 -8
- package/android/build/intermediates/aapt_friendly_merged_manifests/debug/processDebugManifest/aapt/output-metadata.json +0 -18
- package/android/build/intermediates/aar_metadata/debug/writeDebugAarMetadata/aar-metadata.properties +0 -6
- package/android/build/intermediates/annotation_processor_list/debug/javaPreCompileDebug/annotationProcessors.json +0 -1
- package/android/build/intermediates/compile_library_classes_jar/debug/bundleLibCompileToJarDebug/classes.jar +0 -0
- package/android/build/intermediates/compile_r_class_jar/debug/generateDebugRFile/R.jar +0 -0
- package/android/build/intermediates/compile_symbol_list/debug/generateDebugRFile/R.txt +0 -4
- package/android/build/intermediates/compiled_local_resources/debug/compileDebugLibraryResources/out/raw_debug_fragment_shader.glsl.flat +0 -0
- package/android/build/intermediates/compiled_local_resources/debug/compileDebugLibraryResources/out/raw_debug_vertex_shader.glsl.flat +0 -0
- package/android/build/intermediates/compiled_local_resources/debug/compileDebugLibraryResources/out/raw_fragment_shader.glsl.flat +0 -0
- package/android/build/intermediates/compiled_local_resources/debug/compileDebugLibraryResources/out/raw_vertex_shader.glsl.flat +0 -0
- package/android/build/intermediates/incremental/debug/packageDebugResources/compile-file-map.properties +0 -5
- package/android/build/intermediates/incremental/debug/packageDebugResources/merger.xml +0 -2
- package/android/build/intermediates/incremental/mergeDebugAssets/merger.xml +0 -2
- package/android/build/intermediates/incremental/mergeDebugJniLibFolders/merger.xml +0 -2
- package/android/build/intermediates/incremental/mergeDebugShaders/merger.xml +0 -2
- package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/AguaceroPackage.class +0 -0
- package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/BuildConfig.class +0 -0
- package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/GridRenderLayer$VertexInfo.class +0 -0
- package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/GridRenderLayer.class +0 -0
- package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/GridRenderLayerView.class +0 -0
- package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/GridRenderManager.class +0 -0
- package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/InspectorModule.class +0 -0
- package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/ShaderUtils.class +0 -0
- package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/WeatherFrameProcessorModule.class +0 -0
- package/android/build/intermediates/local_only_symbol_list/debug/parseDebugLocalResources/R-def.txt +0 -6
- package/android/build/intermediates/manifest_merge_blame_file/debug/processDebugManifest/manifest-merger-blame-debug-report.txt +0 -8
- package/android/build/intermediates/merged_manifest/debug/processDebugManifest/AndroidManifest.xml +0 -8
- package/android/build/intermediates/navigation_json/debug/extractDeepLinksDebug/navigation.json +0 -1
- package/android/build/intermediates/nested_resources_validation_report/debug/generateDebugResources/nestedResourcesValidationReport.txt +0 -1
- package/android/build/intermediates/packaged_res/debug/packageDebugResources/raw/debug_fragment_shader.glsl +0 -13
- package/android/build/intermediates/packaged_res/debug/packageDebugResources/raw/debug_vertex_shader.glsl +0 -13
- package/android/build/intermediates/packaged_res/debug/packageDebugResources/raw/fragment_shader.glsl +0 -98
- package/android/build/intermediates/packaged_res/debug/packageDebugResources/raw/vertex_shader.glsl +0 -20
- package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/AguaceroPackage.class +0 -0
- package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/BuildConfig.class +0 -0
- package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/GridRenderLayer$VertexInfo.class +0 -0
- package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/GridRenderLayer.class +0 -0
- package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/GridRenderLayerView.class +0 -0
- package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/GridRenderManager.class +0 -0
- package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/InspectorModule.class +0 -0
- package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/ShaderUtils.class +0 -0
- package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/WeatherFrameProcessorModule.class +0 -0
- package/android/build/intermediates/runtime_library_classes_jar/debug/bundleLibRuntimeToJarDebug/classes.jar +0 -0
- package/android/build/intermediates/symbol_list_with_package_name/debug/generateDebugRFile/package-aware-r.txt +0 -5
- package/android/build/outputs/logs/manifest-merger-debug-report.txt +0 -17
- package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/AguaceroPackage.class.uniqueId1 +0 -0
- package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayerView.class.uniqueId2 +0 -0
- package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderManager.class.uniqueId3 +0 -0
- package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/InspectorModule.class.uniqueId0 +0 -0
- package/android/build/tmp/compileDebugJavaWithJavac/previous-compilation-data.bin +0 -0
- package/lib/commonjs/android/build/generated/source/buildConfig/debug/com/aguacerowx/reactnative/BuildConfig.java +0 -10
- package/lib/commonjs/android/build/intermediates/aapt_friendly_merged_manifests/debug/processDebugManifest/aapt/AndroidManifest.xml +0 -8
- package/lib/commonjs/android/build/intermediates/aapt_friendly_merged_manifests/debug/processDebugManifest/aapt/output-metadata.json +0 -18
- package/lib/commonjs/android/build/intermediates/aar_metadata/debug/writeDebugAarMetadata/aar-metadata.properties +0 -6
- package/lib/commonjs/android/build/intermediates/annotation_processor_list/debug/javaPreCompileDebug/annotationProcessors.json +0 -1
- package/lib/commonjs/android/build/intermediates/compile_library_classes_jar/debug/bundleLibCompileToJarDebug/classes.jar +0 -0
- package/lib/commonjs/android/build/intermediates/compile_r_class_jar/debug/generateDebugRFile/R.jar +0 -0
- package/lib/commonjs/android/build/intermediates/compile_symbol_list/debug/generateDebugRFile/R.txt +0 -4
- package/lib/commonjs/android/build/intermediates/compiled_local_resources/debug/compileDebugLibraryResources/out/raw_debug_fragment_shader.glsl.flat +0 -0
- package/lib/commonjs/android/build/intermediates/compiled_local_resources/debug/compileDebugLibraryResources/out/raw_debug_vertex_shader.glsl.flat +0 -0
- package/lib/commonjs/android/build/intermediates/compiled_local_resources/debug/compileDebugLibraryResources/out/raw_fragment_shader.glsl.flat +0 -0
- package/lib/commonjs/android/build/intermediates/compiled_local_resources/debug/compileDebugLibraryResources/out/raw_vertex_shader.glsl.flat +0 -0
- package/lib/commonjs/android/build/intermediates/incremental/debug/packageDebugResources/compile-file-map.properties +0 -5
- package/lib/commonjs/android/build/intermediates/incremental/debug/packageDebugResources/merger.xml +0 -2
- package/lib/commonjs/android/build/intermediates/incremental/mergeDebugAssets/merger.xml +0 -2
- package/lib/commonjs/android/build/intermediates/incremental/mergeDebugJniLibFolders/merger.xml +0 -2
- package/lib/commonjs/android/build/intermediates/incremental/mergeDebugShaders/merger.xml +0 -2
- package/lib/commonjs/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/AguaceroPackage.class +0 -0
- package/lib/commonjs/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/BuildConfig.class +0 -0
- package/lib/commonjs/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/GridRenderLayer$VertexInfo.class +0 -0
- package/lib/commonjs/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/GridRenderLayer.class +0 -0
- package/lib/commonjs/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/GridRenderLayerView.class +0 -0
- package/lib/commonjs/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/GridRenderManager.class +0 -0
- package/lib/commonjs/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/InspectorModule.class +0 -0
- package/lib/commonjs/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/ShaderUtils.class +0 -0
- package/lib/commonjs/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/WeatherFrameProcessorModule.class +0 -0
- package/lib/commonjs/android/build/intermediates/local_only_symbol_list/debug/parseDebugLocalResources/R-def.txt +0 -6
- package/lib/commonjs/android/build/intermediates/manifest_merge_blame_file/debug/processDebugManifest/manifest-merger-blame-debug-report.txt +0 -8
- package/lib/commonjs/android/build/intermediates/merged_manifest/debug/processDebugManifest/AndroidManifest.xml +0 -8
- package/lib/commonjs/android/build/intermediates/navigation_json/debug/extractDeepLinksDebug/navigation.json +0 -1
- package/lib/commonjs/android/build/intermediates/nested_resources_validation_report/debug/generateDebugResources/nestedResourcesValidationReport.txt +0 -1
- package/lib/commonjs/android/build/intermediates/packaged_res/debug/packageDebugResources/raw/debug_fragment_shader.glsl +0 -13
- package/lib/commonjs/android/build/intermediates/packaged_res/debug/packageDebugResources/raw/debug_vertex_shader.glsl +0 -13
- package/lib/commonjs/android/build/intermediates/packaged_res/debug/packageDebugResources/raw/fragment_shader.glsl +0 -98
- package/lib/commonjs/android/build/intermediates/packaged_res/debug/packageDebugResources/raw/vertex_shader.glsl +0 -20
- package/lib/commonjs/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/AguaceroPackage.class +0 -0
- package/lib/commonjs/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/BuildConfig.class +0 -0
- package/lib/commonjs/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/GridRenderLayer$VertexInfo.class +0 -0
- package/lib/commonjs/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/GridRenderLayer.class +0 -0
- package/lib/commonjs/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/GridRenderLayerView.class +0 -0
- package/lib/commonjs/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/GridRenderManager.class +0 -0
- package/lib/commonjs/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/InspectorModule.class +0 -0
- package/lib/commonjs/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/ShaderUtils.class +0 -0
- package/lib/commonjs/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/WeatherFrameProcessorModule.class +0 -0
- package/lib/commonjs/android/build/intermediates/runtime_library_classes_jar/debug/bundleLibRuntimeToJarDebug/classes.jar +0 -0
- package/lib/commonjs/android/build/intermediates/symbol_list_with_package_name/debug/generateDebugRFile/package-aware-r.txt +0 -5
- package/lib/commonjs/android/build/outputs/logs/manifest-merger-debug-report.txt +0 -17
- package/lib/commonjs/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/AguaceroPackage.class.uniqueId1 +0 -0
- package/lib/commonjs/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayerView.class.uniqueId2 +0 -0
- package/lib/commonjs/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderManager.class.uniqueId3 +0 -0
- package/lib/commonjs/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/InspectorModule.class.uniqueId0 +0 -0
- package/lib/commonjs/android/build/tmp/compileDebugJavaWithJavac/previous-compilation-data.bin +0 -0
- package/lib/module/android/build/generated/source/buildConfig/debug/com/aguacerowx/reactnative/BuildConfig.java +0 -10
- package/lib/module/android/build/intermediates/aapt_friendly_merged_manifests/debug/processDebugManifest/aapt/AndroidManifest.xml +0 -8
- package/lib/module/android/build/intermediates/aapt_friendly_merged_manifests/debug/processDebugManifest/aapt/output-metadata.json +0 -18
- package/lib/module/android/build/intermediates/aar_metadata/debug/writeDebugAarMetadata/aar-metadata.properties +0 -6
- package/lib/module/android/build/intermediates/annotation_processor_list/debug/javaPreCompileDebug/annotationProcessors.json +0 -1
- package/lib/module/android/build/intermediates/compile_library_classes_jar/debug/bundleLibCompileToJarDebug/classes.jar +0 -0
- package/lib/module/android/build/intermediates/compile_r_class_jar/debug/generateDebugRFile/R.jar +0 -0
- package/lib/module/android/build/intermediates/compile_symbol_list/debug/generateDebugRFile/R.txt +0 -4
- package/lib/module/android/build/intermediates/compiled_local_resources/debug/compileDebugLibraryResources/out/raw_debug_fragment_shader.glsl.flat +0 -0
- package/lib/module/android/build/intermediates/compiled_local_resources/debug/compileDebugLibraryResources/out/raw_debug_vertex_shader.glsl.flat +0 -0
- package/lib/module/android/build/intermediates/compiled_local_resources/debug/compileDebugLibraryResources/out/raw_fragment_shader.glsl.flat +0 -0
- package/lib/module/android/build/intermediates/compiled_local_resources/debug/compileDebugLibraryResources/out/raw_vertex_shader.glsl.flat +0 -0
- package/lib/module/android/build/intermediates/incremental/debug/packageDebugResources/compile-file-map.properties +0 -5
- package/lib/module/android/build/intermediates/incremental/debug/packageDebugResources/merger.xml +0 -2
- package/lib/module/android/build/intermediates/incremental/mergeDebugAssets/merger.xml +0 -2
- package/lib/module/android/build/intermediates/incremental/mergeDebugJniLibFolders/merger.xml +0 -2
- package/lib/module/android/build/intermediates/incremental/mergeDebugShaders/merger.xml +0 -2
- package/lib/module/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/AguaceroPackage.class +0 -0
- package/lib/module/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/BuildConfig.class +0 -0
- package/lib/module/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/GridRenderLayer$VertexInfo.class +0 -0
- package/lib/module/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/GridRenderLayer.class +0 -0
- package/lib/module/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/GridRenderLayerView.class +0 -0
- package/lib/module/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/GridRenderManager.class +0 -0
- package/lib/module/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/InspectorModule.class +0 -0
- package/lib/module/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/ShaderUtils.class +0 -0
- package/lib/module/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/WeatherFrameProcessorModule.class +0 -0
- package/lib/module/android/build/intermediates/local_only_symbol_list/debug/parseDebugLocalResources/R-def.txt +0 -6
- package/lib/module/android/build/intermediates/manifest_merge_blame_file/debug/processDebugManifest/manifest-merger-blame-debug-report.txt +0 -8
- package/lib/module/android/build/intermediates/merged_manifest/debug/processDebugManifest/AndroidManifest.xml +0 -8
- package/lib/module/android/build/intermediates/navigation_json/debug/extractDeepLinksDebug/navigation.json +0 -1
- package/lib/module/android/build/intermediates/nested_resources_validation_report/debug/generateDebugResources/nestedResourcesValidationReport.txt +0 -1
- package/lib/module/android/build/intermediates/packaged_res/debug/packageDebugResources/raw/debug_fragment_shader.glsl +0 -13
- package/lib/module/android/build/intermediates/packaged_res/debug/packageDebugResources/raw/debug_vertex_shader.glsl +0 -13
- package/lib/module/android/build/intermediates/packaged_res/debug/packageDebugResources/raw/fragment_shader.glsl +0 -98
- package/lib/module/android/build/intermediates/packaged_res/debug/packageDebugResources/raw/vertex_shader.glsl +0 -20
- package/lib/module/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/AguaceroPackage.class +0 -0
- package/lib/module/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/BuildConfig.class +0 -0
- package/lib/module/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/GridRenderLayer$VertexInfo.class +0 -0
- package/lib/module/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/GridRenderLayer.class +0 -0
- package/lib/module/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/GridRenderLayerView.class +0 -0
- package/lib/module/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/GridRenderManager.class +0 -0
- package/lib/module/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/InspectorModule.class +0 -0
- package/lib/module/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/ShaderUtils.class +0 -0
- package/lib/module/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/WeatherFrameProcessorModule.class +0 -0
- package/lib/module/android/build/intermediates/runtime_library_classes_jar/debug/bundleLibRuntimeToJarDebug/classes.jar +0 -0
- package/lib/module/android/build/intermediates/symbol_list_with_package_name/debug/generateDebugRFile/package-aware-r.txt +0 -5
- package/lib/module/android/build/outputs/logs/manifest-merger-debug-report.txt +0 -17
- package/lib/module/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/AguaceroPackage.class.uniqueId1 +0 -0
- package/lib/module/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayerView.class.uniqueId2 +0 -0
- package/lib/module/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderManager.class.uniqueId3 +0 -0
- package/lib/module/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/InspectorModule.class.uniqueId0 +0 -0
- package/lib/module/android/build/tmp/compileDebugJavaWithJavac/previous-compilation-data.bin +0 -0
|
@@ -1,152 +1,152 @@
|
|
|
1
|
-
package com.aguacerowx.reactnative;
|
|
2
|
-
|
|
3
|
-
import androidx.annotation.NonNull;
|
|
4
|
-
import android.util.Base64;
|
|
5
|
-
|
|
6
|
-
import com.facebook.react.bridge.Arguments;
|
|
7
|
-
import com.facebook.react.bridge.Promise; // CHANGED: Import Promise instead of Callback
|
|
8
|
-
import com.facebook.react.bridge.ReactApplicationContext;
|
|
9
|
-
import com.facebook.react.bridge.ReactContextBaseJavaModule;
|
|
10
|
-
import com.facebook.react.bridge.ReactMethod;
|
|
11
|
-
import com.facebook.react.bridge.ReadableMap;
|
|
12
|
-
import com.facebook.react.bridge.WritableMap;
|
|
13
|
-
import com.facebook.react.modules.network.OkHttpClientProvider;
|
|
14
|
-
import android.util.Log;
|
|
15
|
-
|
|
16
|
-
import org.json.JSONObject;
|
|
17
|
-
|
|
18
|
-
import java.io.ByteArrayOutputStream;
|
|
19
|
-
import java.io.File;
|
|
20
|
-
import java.io.FileOutputStream;
|
|
21
|
-
import java.io.IOException;
|
|
22
|
-
|
|
23
|
-
import java.nio.charset.StandardCharsets;
|
|
24
|
-
import java.util.concurrent.ExecutorService;
|
|
25
|
-
import java.util.concurrent.Executors;
|
|
26
|
-
|
|
27
|
-
import okhttp3.OkHttpClient;
|
|
28
|
-
import okhttp3.Request;
|
|
29
|
-
import okhttp3.Response;
|
|
30
|
-
import okhttp3.ResponseBody;
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
public class WeatherFrameProcessorModule extends ReactContextBaseJavaModule {
|
|
34
|
-
|
|
35
|
-
private final ExecutorService executorService;
|
|
36
|
-
private volatile int currentRunToken = 0;
|
|
37
|
-
private final ReactApplicationContext reactContext;
|
|
38
|
-
|
|
39
|
-
WeatherFrameProcessorModule(ReactApplicationContext context) {
|
|
40
|
-
super(context);
|
|
41
|
-
this.reactContext = context;
|
|
42
|
-
|
|
43
|
-
int coreCount = Runtime.getRuntime().availableProcessors();
|
|
44
|
-
int optimalWorkerCount = Math.max(4, Math.min(coreCount - 1, 8));
|
|
45
|
-
|
|
46
|
-
this.executorService = Executors.newFixedThreadPool(optimalWorkerCount);
|
|
47
|
-
android.util.Log.d("AguaceroWX", "Initialized with " + optimalWorkerCount + " workers (" + coreCount + " cores available)");
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
@ReactMethod
|
|
51
|
-
public void cancelAllFrames() {
|
|
52
|
-
currentRunToken++;
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
@NonNull
|
|
56
|
-
@Override
|
|
57
|
-
public String getName() {
|
|
58
|
-
return "WeatherFrameProcessorModule";
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
@ReactMethod
|
|
62
|
-
public void processFrame(ReadableMap options, Promise promise) { // CHANGED: Use Promise instead of Callback
|
|
63
|
-
final int taskToken = this.currentRunToken;
|
|
64
|
-
executorService.execute(() -> {
|
|
65
|
-
FileOutputStream fos = null;
|
|
66
|
-
try {
|
|
67
|
-
if (taskToken != this.currentRunToken) {
|
|
68
|
-
return; // Task was cancelled
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
OkHttpClient client = OkHttpClientProvider.getOkHttpClient();
|
|
72
|
-
|
|
73
|
-
String urlString = options.getString("url");
|
|
74
|
-
String apiKey = options.getString("apiKey");
|
|
75
|
-
String bundleId = options.getString("bundleId");
|
|
76
|
-
|
|
77
|
-
Request.Builder requestBuilder = new Request.Builder()
|
|
78
|
-
.url(urlString)
|
|
79
|
-
.header("x-api-key", apiKey);
|
|
80
|
-
|
|
81
|
-
if (bundleId != null) {
|
|
82
|
-
requestBuilder.header("x-app-identifier", bundleId);
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
Request request = requestBuilder.build();
|
|
86
|
-
|
|
87
|
-
String responseString;
|
|
88
|
-
try (Response response = client.newCall(request).execute()) {
|
|
89
|
-
if (!response.isSuccessful()) {
|
|
90
|
-
throw new IOException("HTTP Error: " + response.code());
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
ResponseBody body = response.body();
|
|
94
|
-
if (body == null) {
|
|
95
|
-
throw new IOException("Response body was null");
|
|
96
|
-
}
|
|
97
|
-
responseString = body.string();
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
JSONObject jsonResponse = new JSONObject(responseString);
|
|
101
|
-
if (!jsonResponse.has("data") || !jsonResponse.has("encoding")) {
|
|
102
|
-
throw new IOException("Invalid API response. 'data' or 'encoding' key is missing. Response: " + responseString);
|
|
103
|
-
}
|
|
104
|
-
|
|
105
|
-
String b64CompressedData = jsonResponse.getString("data");
|
|
106
|
-
JSONObject encoding = jsonResponse.getJSONObject("encoding");
|
|
107
|
-
|
|
108
|
-
if (!encoding.has("scale") || !encoding.has("offset") || !encoding.has("missing_quantized")) {
|
|
109
|
-
throw new IOException("Invalid 'encoding' object in API response. Required keys are missing. Response: " + responseString);
|
|
110
|
-
}
|
|
111
|
-
|
|
112
|
-
byte[] compressedData = Base64.decode(b64CompressedData, Base64.DEFAULT);
|
|
113
|
-
|
|
114
|
-
File cacheDir = reactContext.getCacheDir();
|
|
115
|
-
String fileName = "frame_" + urlString.hashCode() + ".zst";
|
|
116
|
-
File dataFile = new File(cacheDir, fileName);
|
|
117
|
-
|
|
118
|
-
fos = new FileOutputStream(dataFile);
|
|
119
|
-
fos.write(compressedData);
|
|
120
|
-
fos.flush();
|
|
121
|
-
fos.close();
|
|
122
|
-
fos = null;
|
|
123
|
-
|
|
124
|
-
WritableMap responseMap = Arguments.createMap();
|
|
125
|
-
responseMap.putString("filePath", dataFile.getAbsolutePath());
|
|
126
|
-
responseMap.putDouble("scale", encoding.getDouble("scale"));
|
|
127
|
-
responseMap.putDouble("offset", encoding.getDouble("offset"));
|
|
128
|
-
responseMap.putDouble("missing", encoding.getDouble("missing_quantized"));
|
|
129
|
-
if (encoding.has("scale_type")) {
|
|
130
|
-
responseMap.putString("scaleType", encoding.getString("scale_type"));
|
|
131
|
-
}
|
|
132
|
-
responseMap.putString("dataAsBase64", b64CompressedData);
|
|
133
|
-
|
|
134
|
-
promise.resolve(responseMap); // CHANGED: Use promise.resolve() instead of callback
|
|
135
|
-
|
|
136
|
-
} catch (Exception e) {
|
|
137
|
-
if (taskToken == this.currentRunToken) {
|
|
138
|
-
android.util.Log.e("AguaceroWX", "Error processing frame", e);
|
|
139
|
-
promise.reject("PROCESSING_ERROR", e.getMessage(), e); // CHANGED: Use promise.reject() instead of callback
|
|
140
|
-
}
|
|
141
|
-
} finally {
|
|
142
|
-
if (fos != null) {
|
|
143
|
-
try {
|
|
144
|
-
fos.close();
|
|
145
|
-
} catch (IOException e) {
|
|
146
|
-
android.util.Log.e("AguaceroWX", "Error closing file stream", e);
|
|
147
|
-
}
|
|
148
|
-
}
|
|
149
|
-
}
|
|
150
|
-
});
|
|
151
|
-
}
|
|
1
|
+
package com.aguacerowx.reactnative;
|
|
2
|
+
|
|
3
|
+
import androidx.annotation.NonNull;
|
|
4
|
+
import android.util.Base64;
|
|
5
|
+
|
|
6
|
+
import com.facebook.react.bridge.Arguments;
|
|
7
|
+
import com.facebook.react.bridge.Promise; // CHANGED: Import Promise instead of Callback
|
|
8
|
+
import com.facebook.react.bridge.ReactApplicationContext;
|
|
9
|
+
import com.facebook.react.bridge.ReactContextBaseJavaModule;
|
|
10
|
+
import com.facebook.react.bridge.ReactMethod;
|
|
11
|
+
import com.facebook.react.bridge.ReadableMap;
|
|
12
|
+
import com.facebook.react.bridge.WritableMap;
|
|
13
|
+
import com.facebook.react.modules.network.OkHttpClientProvider;
|
|
14
|
+
import android.util.Log;
|
|
15
|
+
|
|
16
|
+
import org.json.JSONObject;
|
|
17
|
+
|
|
18
|
+
import java.io.ByteArrayOutputStream;
|
|
19
|
+
import java.io.File;
|
|
20
|
+
import java.io.FileOutputStream;
|
|
21
|
+
import java.io.IOException;
|
|
22
|
+
|
|
23
|
+
import java.nio.charset.StandardCharsets;
|
|
24
|
+
import java.util.concurrent.ExecutorService;
|
|
25
|
+
import java.util.concurrent.Executors;
|
|
26
|
+
|
|
27
|
+
import okhttp3.OkHttpClient;
|
|
28
|
+
import okhttp3.Request;
|
|
29
|
+
import okhttp3.Response;
|
|
30
|
+
import okhttp3.ResponseBody;
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
public class WeatherFrameProcessorModule extends ReactContextBaseJavaModule {
|
|
34
|
+
|
|
35
|
+
private final ExecutorService executorService;
|
|
36
|
+
private volatile int currentRunToken = 0;
|
|
37
|
+
private final ReactApplicationContext reactContext;
|
|
38
|
+
|
|
39
|
+
WeatherFrameProcessorModule(ReactApplicationContext context) {
|
|
40
|
+
super(context);
|
|
41
|
+
this.reactContext = context;
|
|
42
|
+
|
|
43
|
+
int coreCount = Runtime.getRuntime().availableProcessors();
|
|
44
|
+
int optimalWorkerCount = Math.max(4, Math.min(coreCount - 1, 8));
|
|
45
|
+
|
|
46
|
+
this.executorService = Executors.newFixedThreadPool(optimalWorkerCount);
|
|
47
|
+
android.util.Log.d("AguaceroWX", "Initialized with " + optimalWorkerCount + " workers (" + coreCount + " cores available)");
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
@ReactMethod
|
|
51
|
+
public void cancelAllFrames() {
|
|
52
|
+
currentRunToken++;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
@NonNull
|
|
56
|
+
@Override
|
|
57
|
+
public String getName() {
|
|
58
|
+
return "WeatherFrameProcessorModule";
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
@ReactMethod
|
|
62
|
+
public void processFrame(ReadableMap options, Promise promise) { // CHANGED: Use Promise instead of Callback
|
|
63
|
+
final int taskToken = this.currentRunToken;
|
|
64
|
+
executorService.execute(() -> {
|
|
65
|
+
FileOutputStream fos = null;
|
|
66
|
+
try {
|
|
67
|
+
if (taskToken != this.currentRunToken) {
|
|
68
|
+
return; // Task was cancelled
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
OkHttpClient client = OkHttpClientProvider.getOkHttpClient();
|
|
72
|
+
|
|
73
|
+
String urlString = options.getString("url");
|
|
74
|
+
String apiKey = options.getString("apiKey");
|
|
75
|
+
String bundleId = options.getString("bundleId");
|
|
76
|
+
|
|
77
|
+
Request.Builder requestBuilder = new Request.Builder()
|
|
78
|
+
.url(urlString)
|
|
79
|
+
.header("x-api-key", apiKey);
|
|
80
|
+
|
|
81
|
+
if (bundleId != null) {
|
|
82
|
+
requestBuilder.header("x-app-identifier", bundleId);
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
Request request = requestBuilder.build();
|
|
86
|
+
|
|
87
|
+
String responseString;
|
|
88
|
+
try (Response response = client.newCall(request).execute()) {
|
|
89
|
+
if (!response.isSuccessful()) {
|
|
90
|
+
throw new IOException("HTTP Error: " + response.code());
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
ResponseBody body = response.body();
|
|
94
|
+
if (body == null) {
|
|
95
|
+
throw new IOException("Response body was null");
|
|
96
|
+
}
|
|
97
|
+
responseString = body.string();
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
JSONObject jsonResponse = new JSONObject(responseString);
|
|
101
|
+
if (!jsonResponse.has("data") || !jsonResponse.has("encoding")) {
|
|
102
|
+
throw new IOException("Invalid API response. 'data' or 'encoding' key is missing. Response: " + responseString);
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
String b64CompressedData = jsonResponse.getString("data");
|
|
106
|
+
JSONObject encoding = jsonResponse.getJSONObject("encoding");
|
|
107
|
+
|
|
108
|
+
if (!encoding.has("scale") || !encoding.has("offset") || !encoding.has("missing_quantized")) {
|
|
109
|
+
throw new IOException("Invalid 'encoding' object in API response. Required keys are missing. Response: " + responseString);
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
byte[] compressedData = Base64.decode(b64CompressedData, Base64.DEFAULT);
|
|
113
|
+
|
|
114
|
+
File cacheDir = reactContext.getCacheDir();
|
|
115
|
+
String fileName = "frame_" + urlString.hashCode() + ".zst";
|
|
116
|
+
File dataFile = new File(cacheDir, fileName);
|
|
117
|
+
|
|
118
|
+
fos = new FileOutputStream(dataFile);
|
|
119
|
+
fos.write(compressedData);
|
|
120
|
+
fos.flush();
|
|
121
|
+
fos.close();
|
|
122
|
+
fos = null;
|
|
123
|
+
|
|
124
|
+
WritableMap responseMap = Arguments.createMap();
|
|
125
|
+
responseMap.putString("filePath", dataFile.getAbsolutePath());
|
|
126
|
+
responseMap.putDouble("scale", encoding.getDouble("scale"));
|
|
127
|
+
responseMap.putDouble("offset", encoding.getDouble("offset"));
|
|
128
|
+
responseMap.putDouble("missing", encoding.getDouble("missing_quantized"));
|
|
129
|
+
if (encoding.has("scale_type")) {
|
|
130
|
+
responseMap.putString("scaleType", encoding.getString("scale_type"));
|
|
131
|
+
}
|
|
132
|
+
responseMap.putString("dataAsBase64", b64CompressedData);
|
|
133
|
+
|
|
134
|
+
promise.resolve(responseMap); // CHANGED: Use promise.resolve() instead of callback
|
|
135
|
+
|
|
136
|
+
} catch (Exception e) {
|
|
137
|
+
if (taskToken == this.currentRunToken) {
|
|
138
|
+
android.util.Log.e("AguaceroWX", "Error processing frame", e);
|
|
139
|
+
promise.reject("PROCESSING_ERROR", e.getMessage(), e); // CHANGED: Use promise.reject() instead of callback
|
|
140
|
+
}
|
|
141
|
+
} finally {
|
|
142
|
+
if (fos != null) {
|
|
143
|
+
try {
|
|
144
|
+
fos.close();
|
|
145
|
+
} catch (IOException e) {
|
|
146
|
+
android.util.Log.e("AguaceroWX", "Error closing file stream", e);
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
});
|
|
151
|
+
}
|
|
152
152
|
}
|
|
File without changes
|
package/android/src/main/java/com/facebook/react/viewmanagers/GridRenderLayerManagerDelegate.java
ADDED
|
File without changes
|
package/android/src/main/java/com/facebook/react/viewmanagers/GridRenderLayerManagerInterface.java
ADDED
|
File without changes
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
precision highp float;
|
|
2
|
-
|
|
3
|
-
varying vec2 v_texCoord;
|
|
4
|
-
uniform sampler2D u_data_texture;
|
|
5
|
-
|
|
6
|
-
void main() {
|
|
7
|
-
// Read the raw normalized value [0.0, 1.0] from the texture's alpha channel.
|
|
8
|
-
float raw_normalized_value = texture2D(u_data_texture, v_texCoord).a;
|
|
9
|
-
|
|
10
|
-
// Output this value directly as a grayscale color.
|
|
11
|
-
// If the data is valid, this will produce a black and white weather map.
|
|
12
|
-
gl_FragColor = vec4(raw_normalized_value, raw_normalized_value, raw_normalized_value, 1.0);
|
|
1
|
+
precision highp float;
|
|
2
|
+
|
|
3
|
+
varying vec2 v_texCoord;
|
|
4
|
+
uniform sampler2D u_data_texture;
|
|
5
|
+
|
|
6
|
+
void main() {
|
|
7
|
+
// Read the raw normalized value [0.0, 1.0] from the texture's alpha channel.
|
|
8
|
+
float raw_normalized_value = texture2D(u_data_texture, v_texCoord).a;
|
|
9
|
+
|
|
10
|
+
// Output this value directly as a grayscale color.
|
|
11
|
+
// If the data is valid, this will produce a black and white weather map.
|
|
12
|
+
gl_FragColor = vec4(raw_normalized_value, raw_normalized_value, raw_normalized_value, 1.0);
|
|
13
13
|
}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
attribute vec2 a_position; // Vertex position in Mercator coordinates (0.0 to 1.0)
|
|
2
|
-
attribute vec2 a_texCoord;
|
|
3
|
-
|
|
4
|
-
varying vec2 v_texCoord;
|
|
5
|
-
|
|
6
|
-
void main() {
|
|
7
|
-
// This is a "passthrough" shader. It IGNORES the u_matrix from the map camera.
|
|
8
|
-
// It converts the input position (0..1) directly to OpenGL clip space (-1..1).
|
|
9
|
-
// This should paint a giant square over the entire screen, regardless of map pan/zoom.
|
|
10
|
-
gl_Position = vec4(a_position.x * 2.0 - 1.0, (1.0 - a_position.y) * 2.0 - 1.0, 0.0, 1.0);
|
|
11
|
-
|
|
12
|
-
v_texCoord = a_texCoord;
|
|
1
|
+
attribute vec2 a_position; // Vertex position in Mercator coordinates (0.0 to 1.0)
|
|
2
|
+
attribute vec2 a_texCoord;
|
|
3
|
+
|
|
4
|
+
varying vec2 v_texCoord;
|
|
5
|
+
|
|
6
|
+
void main() {
|
|
7
|
+
// This is a "passthrough" shader. It IGNORES the u_matrix from the map camera.
|
|
8
|
+
// It converts the input position (0..1) directly to OpenGL clip space (-1..1).
|
|
9
|
+
// This should paint a giant square over the entire screen, regardless of map pan/zoom.
|
|
10
|
+
gl_Position = vec4(a_position.x * 2.0 - 1.0, (1.0 - a_position.y) * 2.0 - 1.0, 0.0, 1.0);
|
|
11
|
+
|
|
12
|
+
v_texCoord = a_texCoord;
|
|
13
13
|
}
|
|
@@ -1,98 +1,98 @@
|
|
|
1
|
-
// packages/react-native/android/src/main/res/raw/fragment_shader.glsl
|
|
2
|
-
|
|
3
|
-
precision highp float;
|
|
4
|
-
varying vec2 v_texCoord;
|
|
5
|
-
|
|
6
|
-
uniform sampler2D u_data_texture;
|
|
7
|
-
uniform sampler2D u_colormap_texture;
|
|
8
|
-
uniform float u_scale;
|
|
9
|
-
uniform float u_offset;
|
|
10
|
-
uniform float u_missing_quantized;
|
|
11
|
-
uniform float u_opacity;
|
|
12
|
-
uniform vec2 u_data_range;
|
|
13
|
-
uniform vec2 u_texture_size;
|
|
14
|
-
uniform int u_smoothing;
|
|
15
|
-
|
|
16
|
-
// --- START OF FIX: Add the new uniform ---
|
|
17
|
-
uniform int u_scale_type; // 0 for linear, 1 for sqrt
|
|
18
|
-
// --- END OF FIX ---
|
|
19
|
-
|
|
20
|
-
// Custom bilinear filtering that respects NaN boundaries
|
|
21
|
-
float sampleDataTextureSmooth(vec2 uv) {
|
|
22
|
-
float missing_in_texture_range = u_missing_quantized + 128.0;
|
|
23
|
-
|
|
24
|
-
// Get the four corner samples for bilinear interpolation
|
|
25
|
-
vec2 pixel_coord = uv * u_texture_size;
|
|
26
|
-
vec2 pixel_floor = floor(pixel_coord - 0.5) + 0.5;
|
|
27
|
-
vec2 f = pixel_coord - pixel_floor;
|
|
28
|
-
|
|
29
|
-
// Sample the 2x2 grid
|
|
30
|
-
float s00 = texture2D(u_data_texture, (pixel_floor + vec2(0.0, 0.0)) / u_texture_size).a * 255.0;
|
|
31
|
-
float s10 = texture2D(u_data_texture, (pixel_floor + vec2(1.0, 0.0)) / u_texture_size).a * 255.0;
|
|
32
|
-
float s01 = texture2D(u_data_texture, (pixel_floor + vec2(0.0, 1.0)) / u_texture_size).a * 255.0;
|
|
33
|
-
float s11 = texture2D(u_data_texture, (pixel_floor + vec2(1.0, 1.0)) / u_texture_size).a * 255.0;
|
|
34
|
-
|
|
35
|
-
// Check which samples are valid (not NaN)
|
|
36
|
-
bool valid00 = abs(s00 - missing_in_texture_range) >= 0.5;
|
|
37
|
-
bool valid10 = abs(s10 - missing_in_texture_range) >= 0.5;
|
|
38
|
-
bool valid01 = abs(s01 - missing_in_texture_range) >= 0.5;
|
|
39
|
-
bool valid11 = abs(s11 - missing_in_texture_range) >= 0.5;
|
|
40
|
-
|
|
41
|
-
// If ANY sample is NaN, return NaN (this pixel is on an edge)
|
|
42
|
-
if (!valid00 || !valid10 || !valid01 || !valid11) {
|
|
43
|
-
return missing_in_texture_range;
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
// All samples are valid - do proper bilinear interpolation
|
|
47
|
-
float s0 = mix(s00, s10, f.x);
|
|
48
|
-
float s1 = mix(s01, s11, f.x);
|
|
49
|
-
return mix(s0, s1, f.y);
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
// Simple nearest-neighbor sampling
|
|
53
|
-
float sampleDataTextureNearest(vec2 uv) {
|
|
54
|
-
// Snap to exact pixel center
|
|
55
|
-
vec2 snapped_coord = floor(uv * u_texture_size + 0.5) / u_texture_size;
|
|
56
|
-
return texture2D(u_data_texture, snapped_coord).a * 255.0;
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
void main() {
|
|
60
|
-
// Choose sampling method based on smoothing setting
|
|
61
|
-
float value_in_texture;
|
|
62
|
-
if (u_smoothing == 1) {
|
|
63
|
-
value_in_texture = sampleDataTextureSmooth(v_texCoord);
|
|
64
|
-
} else {
|
|
65
|
-
value_in_texture = sampleDataTextureNearest(v_texCoord);
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
float missing_in_texture_range = u_missing_quantized + 128.0;
|
|
69
|
-
|
|
70
|
-
// Check if this pixel is a predefined missing value
|
|
71
|
-
if (abs(value_in_texture - missing_in_texture_range) < 0.5) {
|
|
72
|
-
discard;
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
// Step 1: Standard linear dequantization
|
|
76
|
-
float quantized_value = value_in_texture - 128.0;
|
|
77
|
-
float intermediate_value = quantized_value * u_scale + u_offset;
|
|
78
|
-
float raw_value = intermediate_value; // Default to linear
|
|
79
|
-
|
|
80
|
-
// Step 2: Apply non-linear inverse scaling if specified
|
|
81
|
-
if (u_scale_type == 1) { // 1 represents 'sqrt'
|
|
82
|
-
// Square the intermediate value while preserving its sign
|
|
83
|
-
raw_value = intermediate_value * abs(intermediate_value);
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
// If the data is below the specified minimum range, make it invisible.
|
|
87
|
-
if (raw_value < u_data_range.x) {
|
|
88
|
-
discard;
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
// Normalize the value to a 0-1 coordinate for colormap lookup
|
|
92
|
-
float colormap_coord = (raw_value - u_data_range.x) / (u_data_range.y - u_data_range.x);
|
|
93
|
-
colormap_coord = clamp(colormap_coord, 0.0, 1.0);
|
|
94
|
-
|
|
95
|
-
// Sample the colormap and apply opacity
|
|
96
|
-
vec4 color = texture2D(u_colormap_texture, vec2(colormap_coord, 0.5));
|
|
97
|
-
gl_FragColor = vec4(color.rgb, color.a * u_opacity);
|
|
1
|
+
// packages/react-native/android/src/main/res/raw/fragment_shader.glsl
|
|
2
|
+
|
|
3
|
+
precision highp float;
|
|
4
|
+
varying vec2 v_texCoord;
|
|
5
|
+
|
|
6
|
+
uniform sampler2D u_data_texture;
|
|
7
|
+
uniform sampler2D u_colormap_texture;
|
|
8
|
+
uniform float u_scale;
|
|
9
|
+
uniform float u_offset;
|
|
10
|
+
uniform float u_missing_quantized;
|
|
11
|
+
uniform float u_opacity;
|
|
12
|
+
uniform vec2 u_data_range;
|
|
13
|
+
uniform vec2 u_texture_size;
|
|
14
|
+
uniform int u_smoothing;
|
|
15
|
+
|
|
16
|
+
// --- START OF FIX: Add the new uniform ---
|
|
17
|
+
uniform int u_scale_type; // 0 for linear, 1 for sqrt
|
|
18
|
+
// --- END OF FIX ---
|
|
19
|
+
|
|
20
|
+
// Custom bilinear filtering that respects NaN boundaries
|
|
21
|
+
float sampleDataTextureSmooth(vec2 uv) {
|
|
22
|
+
float missing_in_texture_range = u_missing_quantized + 128.0;
|
|
23
|
+
|
|
24
|
+
// Get the four corner samples for bilinear interpolation
|
|
25
|
+
vec2 pixel_coord = uv * u_texture_size;
|
|
26
|
+
vec2 pixel_floor = floor(pixel_coord - 0.5) + 0.5;
|
|
27
|
+
vec2 f = pixel_coord - pixel_floor;
|
|
28
|
+
|
|
29
|
+
// Sample the 2x2 grid
|
|
30
|
+
float s00 = texture2D(u_data_texture, (pixel_floor + vec2(0.0, 0.0)) / u_texture_size).a * 255.0;
|
|
31
|
+
float s10 = texture2D(u_data_texture, (pixel_floor + vec2(1.0, 0.0)) / u_texture_size).a * 255.0;
|
|
32
|
+
float s01 = texture2D(u_data_texture, (pixel_floor + vec2(0.0, 1.0)) / u_texture_size).a * 255.0;
|
|
33
|
+
float s11 = texture2D(u_data_texture, (pixel_floor + vec2(1.0, 1.0)) / u_texture_size).a * 255.0;
|
|
34
|
+
|
|
35
|
+
// Check which samples are valid (not NaN)
|
|
36
|
+
bool valid00 = abs(s00 - missing_in_texture_range) >= 0.5;
|
|
37
|
+
bool valid10 = abs(s10 - missing_in_texture_range) >= 0.5;
|
|
38
|
+
bool valid01 = abs(s01 - missing_in_texture_range) >= 0.5;
|
|
39
|
+
bool valid11 = abs(s11 - missing_in_texture_range) >= 0.5;
|
|
40
|
+
|
|
41
|
+
// If ANY sample is NaN, return NaN (this pixel is on an edge)
|
|
42
|
+
if (!valid00 || !valid10 || !valid01 || !valid11) {
|
|
43
|
+
return missing_in_texture_range;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
// All samples are valid - do proper bilinear interpolation
|
|
47
|
+
float s0 = mix(s00, s10, f.x);
|
|
48
|
+
float s1 = mix(s01, s11, f.x);
|
|
49
|
+
return mix(s0, s1, f.y);
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
// Simple nearest-neighbor sampling
|
|
53
|
+
float sampleDataTextureNearest(vec2 uv) {
|
|
54
|
+
// Snap to exact pixel center
|
|
55
|
+
vec2 snapped_coord = floor(uv * u_texture_size + 0.5) / u_texture_size;
|
|
56
|
+
return texture2D(u_data_texture, snapped_coord).a * 255.0;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
void main() {
|
|
60
|
+
// Choose sampling method based on smoothing setting
|
|
61
|
+
float value_in_texture;
|
|
62
|
+
if (u_smoothing == 1) {
|
|
63
|
+
value_in_texture = sampleDataTextureSmooth(v_texCoord);
|
|
64
|
+
} else {
|
|
65
|
+
value_in_texture = sampleDataTextureNearest(v_texCoord);
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
float missing_in_texture_range = u_missing_quantized + 128.0;
|
|
69
|
+
|
|
70
|
+
// Check if this pixel is a predefined missing value
|
|
71
|
+
if (abs(value_in_texture - missing_in_texture_range) < 0.5) {
|
|
72
|
+
discard;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
// Step 1: Standard linear dequantization
|
|
76
|
+
float quantized_value = value_in_texture - 128.0;
|
|
77
|
+
float intermediate_value = quantized_value * u_scale + u_offset;
|
|
78
|
+
float raw_value = intermediate_value; // Default to linear
|
|
79
|
+
|
|
80
|
+
// Step 2: Apply non-linear inverse scaling if specified
|
|
81
|
+
if (u_scale_type == 1) { // 1 represents 'sqrt'
|
|
82
|
+
// Square the intermediate value while preserving its sign
|
|
83
|
+
raw_value = intermediate_value * abs(intermediate_value);
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
// If the data is below the specified minimum range, make it invisible.
|
|
87
|
+
if (raw_value < u_data_range.x) {
|
|
88
|
+
discard;
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
// Normalize the value to a 0-1 coordinate for colormap lookup
|
|
92
|
+
float colormap_coord = (raw_value - u_data_range.x) / (u_data_range.y - u_data_range.x);
|
|
93
|
+
colormap_coord = clamp(colormap_coord, 0.0, 1.0);
|
|
94
|
+
|
|
95
|
+
// Sample the colormap and apply opacity
|
|
96
|
+
vec4 color = texture2D(u_colormap_texture, vec2(colormap_coord, 0.5));
|
|
97
|
+
gl_FragColor = vec4(color.rgb, color.a * u_opacity);
|
|
98
98
|
}
|
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
// The view-projection matrix from the Mapbox camera
|
|
2
|
-
uniform mat4 u_matrix;
|
|
3
|
-
|
|
4
|
-
// Attributes passed from the vertex buffer
|
|
5
|
-
attribute vec2 a_position; // Vertex position in Mercator coordinates (0.0 to 1.0)
|
|
6
|
-
attribute vec2 a_texCoord; // Texture coordinate (0.0 to 1.0)
|
|
7
|
-
|
|
8
|
-
// Passed to the fragment shader
|
|
9
|
-
varying vec2 v_texCoord;
|
|
10
|
-
|
|
11
|
-
void main() {
|
|
12
|
-
// This is the intended use.
|
|
13
|
-
// The u_matrix correctly transforms the 2D Mercator coordinate (a_position)
|
|
14
|
-
// into the final 4D clip space position for the GPU.
|
|
15
|
-
// We construct a vec4 with z=0.0 and w=1.0 to treat it as a point on the map's surface.
|
|
16
|
-
gl_Position = u_matrix * vec4(a_position, 0.0, 1.0);
|
|
17
|
-
|
|
18
|
-
// Pass the texture coordinate to the fragment shader
|
|
19
|
-
v_texCoord = a_texCoord;
|
|
1
|
+
// The view-projection matrix from the Mapbox camera
|
|
2
|
+
uniform mat4 u_matrix;
|
|
3
|
+
|
|
4
|
+
// Attributes passed from the vertex buffer
|
|
5
|
+
attribute vec2 a_position; // Vertex position in Mercator coordinates (0.0 to 1.0)
|
|
6
|
+
attribute vec2 a_texCoord; // Texture coordinate (0.0 to 1.0)
|
|
7
|
+
|
|
8
|
+
// Passed to the fragment shader
|
|
9
|
+
varying vec2 v_texCoord;
|
|
10
|
+
|
|
11
|
+
void main() {
|
|
12
|
+
// This is the intended use.
|
|
13
|
+
// The u_matrix correctly transforms the 2D Mercator coordinate (a_position)
|
|
14
|
+
// into the final 4D clip space position for the GPU.
|
|
15
|
+
// We construct a vec4 with z=0.0 and w=1.0 to treat it as a point on the map's surface.
|
|
16
|
+
gl_Position = u_matrix * vec4(a_position, 0.0, 1.0);
|
|
17
|
+
|
|
18
|
+
// Pass the texture coordinate to the fragment shader
|
|
19
|
+
v_texCoord = a_texCoord;
|
|
20
20
|
}
|
package/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { MapManager } from './src/MapManager';
|
|
1
|
+
export { MapManager } from './src/MapManager';
|
|
2
2
|
export { WeatherLayerManager } from './src/WeatherLayerManager';
|
package/ios/AguaceroPackage.m
CHANGED
|
@@ -1,19 +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)
|
|
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
19
|
@end
|