@aguacerowx/react-native 0.0.34 → 0.0.36

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 (403) hide show
  1. package/README.md +126 -126
  2. package/aguacerowx-react-native.podspec +38 -38
  3. package/android/build/.transforms/42e9b8fa82d77a1c205db5bf0d0ed519/results.bin +1 -0
  4. package/android/build/.transforms/42e9b8fa82d77a1c205db5bf0d0ed519/transformed/classes/classes_dex/classes.dex +0 -0
  5. package/android/build/.transforms/c8ab78b63f2cc835ac936d58e29a17ab/results.bin +1 -0
  6. package/android/build/.transforms/c8ab78b63f2cc835ac936d58e29a17ab/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/aguacerowx/reactnative/AguaceroPackage.dex +0 -0
  7. package/android/build/.transforms/c8ab78b63f2cc835ac936d58e29a17ab/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/aguacerowx/reactnative/BuildConfig.dex +0 -0
  8. package/android/build/.transforms/c8ab78b63f2cc835ac936d58e29a17ab/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/aguacerowx/reactnative/GridRenderLayer$VertexInfo.dex +0 -0
  9. package/android/build/.transforms/c8ab78b63f2cc835ac936d58e29a17ab/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/aguacerowx/reactnative/GridRenderLayer.dex +0 -0
  10. package/android/build/.transforms/c8ab78b63f2cc835ac936d58e29a17ab/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/aguacerowx/reactnative/GridRenderLayerView.dex +0 -0
  11. package/android/build/.transforms/c8ab78b63f2cc835ac936d58e29a17ab/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/aguacerowx/reactnative/GridRenderManager.dex +0 -0
  12. package/android/build/.transforms/c8ab78b63f2cc835ac936d58e29a17ab/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/aguacerowx/reactnative/InspectorModule.dex +0 -0
  13. package/android/build/.transforms/c8ab78b63f2cc835ac936d58e29a17ab/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/aguacerowx/reactnative/ShaderUtils.dex +0 -0
  14. package/android/build/.transforms/c8ab78b63f2cc835ac936d58e29a17ab/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/aguacerowx/reactnative/WeatherFrameProcessorModule.dex +0 -0
  15. package/android/build/.transforms/c8ab78b63f2cc835ac936d58e29a17ab/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/facebook/react/viewmanagers/GridRenderLayerManagerDelegate.dex +0 -0
  16. package/android/build/.transforms/c8ab78b63f2cc835ac936d58e29a17ab/transformed/bundleLibRuntimeToDirDebug/bundleLibRuntimeToDirDebug_dex/com/facebook/react/viewmanagers/GridRenderLayerManagerInterface.dex +0 -0
  17. package/android/build/.transforms/c8ab78b63f2cc835ac936d58e29a17ab/transformed/bundleLibRuntimeToDirDebug/desugar_graph.bin +0 -0
  18. package/android/build/generated/source/buildConfig/debug/com/aguacerowx/reactnative/BuildConfig.java +10 -0
  19. package/android/build/generated/source/codegen/java/com/facebook/react/viewmanagers/GridRenderLayerManagerDelegate.java +43 -0
  20. package/android/build/generated/source/codegen/java/com/facebook/react/viewmanagers/GridRenderLayerManagerInterface.java +22 -0
  21. package/android/build/generated/source/codegen/jni/AguaceroWxReactNativeSpec-generated.cpp +22 -0
  22. package/android/build/generated/source/codegen/jni/AguaceroWxReactNativeSpec.h +24 -0
  23. package/android/build/generated/source/codegen/jni/CMakeLists.txt +28 -0
  24. package/android/build/generated/source/codegen/jni/react/renderer/components/AguaceroWxReactNativeSpec/AguaceroWxReactNativeSpecJSI-generated.cpp +17 -0
  25. package/android/build/generated/source/codegen/jni/react/renderer/components/AguaceroWxReactNativeSpec/AguaceroWxReactNativeSpecJSI.h +19 -0
  26. package/android/build/generated/source/codegen/jni/react/renderer/components/AguaceroWxReactNativeSpec/ComponentDescriptors.cpp +22 -0
  27. package/android/build/generated/source/codegen/jni/react/renderer/components/AguaceroWxReactNativeSpec/ComponentDescriptors.h +24 -0
  28. package/android/build/generated/source/codegen/jni/react/renderer/components/AguaceroWxReactNativeSpec/EventEmitters.cpp +16 -0
  29. package/android/build/generated/source/codegen/jni/react/renderer/components/AguaceroWxReactNativeSpec/EventEmitters.h +23 -0
  30. package/android/build/generated/source/codegen/jni/react/renderer/components/AguaceroWxReactNativeSpec/Props.cpp +62 -0
  31. package/android/build/generated/source/codegen/jni/react/renderer/components/AguaceroWxReactNativeSpec/Props.h +40 -0
  32. package/android/build/generated/source/codegen/jni/react/renderer/components/AguaceroWxReactNativeSpec/ShadowNodes.cpp +17 -0
  33. package/android/build/generated/source/codegen/jni/react/renderer/components/AguaceroWxReactNativeSpec/ShadowNodes.h +32 -0
  34. package/android/build/generated/source/codegen/jni/react/renderer/components/AguaceroWxReactNativeSpec/States.cpp +16 -0
  35. package/android/build/generated/source/codegen/jni/react/renderer/components/AguaceroWxReactNativeSpec/States.h +20 -0
  36. package/android/build/generated/source/codegen/schema.json +1 -0
  37. package/android/build/intermediates/aapt_friendly_merged_manifests/debug/processDebugManifest/aapt/AndroidManifest.xml +8 -0
  38. package/android/build/intermediates/aapt_friendly_merged_manifests/debug/processDebugManifest/aapt/output-metadata.json +18 -0
  39. package/android/build/intermediates/aar_metadata/debug/writeDebugAarMetadata/aar-metadata.properties +6 -0
  40. package/android/build/intermediates/annotation_processor_list/debug/javaPreCompileDebug/annotationProcessors.json +1 -0
  41. package/android/build/intermediates/compile_library_classes_jar/debug/bundleLibCompileToJarDebug/classes.jar +0 -0
  42. package/android/build/intermediates/compile_r_class_jar/debug/generateDebugRFile/R.jar +0 -0
  43. package/android/build/intermediates/compile_symbol_list/debug/generateDebugRFile/R.txt +4 -0
  44. package/android/build/intermediates/compiled_local_resources/debug/compileDebugLibraryResources/out/raw_debug_fragment_shader.glsl.flat +0 -0
  45. package/android/build/intermediates/compiled_local_resources/debug/compileDebugLibraryResources/out/raw_debug_vertex_shader.glsl.flat +0 -0
  46. package/android/build/intermediates/compiled_local_resources/debug/compileDebugLibraryResources/out/raw_fragment_shader.glsl.flat +0 -0
  47. package/android/build/intermediates/compiled_local_resources/debug/compileDebugLibraryResources/out/raw_vertex_shader.glsl.flat +0 -0
  48. package/android/build/intermediates/incremental/debug/packageDebugResources/compile-file-map.properties +5 -0
  49. package/android/build/intermediates/incremental/debug/packageDebugResources/merger.xml +2 -0
  50. package/android/build/intermediates/incremental/mergeDebugAssets/merger.xml +2 -0
  51. package/android/build/intermediates/incremental/mergeDebugJniLibFolders/merger.xml +2 -0
  52. package/android/build/intermediates/incremental/mergeDebugShaders/merger.xml +2 -0
  53. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/AguaceroPackage.class +0 -0
  54. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/BuildConfig.class +0 -0
  55. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/GridRenderLayer$VertexInfo.class +0 -0
  56. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/GridRenderLayer.class +0 -0
  57. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/GridRenderLayerView.class +0 -0
  58. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/GridRenderManager.class +0 -0
  59. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/InspectorModule.class +0 -0
  60. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/ShaderUtils.class +0 -0
  61. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/WeatherFrameProcessorModule.class +0 -0
  62. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/facebook/react/viewmanagers/GridRenderLayerManagerDelegate.class +0 -0
  63. package/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/facebook/react/viewmanagers/GridRenderLayerManagerInterface.class +0 -0
  64. package/android/build/intermediates/local_only_symbol_list/debug/parseDebugLocalResources/R-def.txt +6 -0
  65. package/android/build/intermediates/manifest_merge_blame_file/debug/processDebugManifest/manifest-merger-blame-debug-report.txt +8 -0
  66. package/android/build/intermediates/merged_manifest/debug/processDebugManifest/AndroidManifest.xml +8 -0
  67. package/android/build/intermediates/navigation_json/debug/extractDeepLinksDebug/navigation.json +1 -0
  68. package/android/build/intermediates/nested_resources_validation_report/debug/generateDebugResources/nestedResourcesValidationReport.txt +1 -0
  69. package/android/build/intermediates/packaged_res/debug/packageDebugResources/raw/debug_fragment_shader.glsl +13 -0
  70. package/android/build/intermediates/packaged_res/debug/packageDebugResources/raw/debug_vertex_shader.glsl +13 -0
  71. package/android/build/intermediates/packaged_res/debug/packageDebugResources/raw/fragment_shader.glsl +181 -0
  72. package/android/build/intermediates/packaged_res/debug/packageDebugResources/raw/vertex_shader.glsl +20 -0
  73. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/AguaceroPackage.class +0 -0
  74. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/BuildConfig.class +0 -0
  75. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/GridRenderLayer$VertexInfo.class +0 -0
  76. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/GridRenderLayer.class +0 -0
  77. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/GridRenderLayerView.class +0 -0
  78. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/GridRenderManager.class +0 -0
  79. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/InspectorModule.class +0 -0
  80. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/ShaderUtils.class +0 -0
  81. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/WeatherFrameProcessorModule.class +0 -0
  82. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/facebook/react/viewmanagers/GridRenderLayerManagerDelegate.class +0 -0
  83. package/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/facebook/react/viewmanagers/GridRenderLayerManagerInterface.class +0 -0
  84. package/android/build/intermediates/runtime_library_classes_jar/debug/bundleLibRuntimeToJarDebug/classes.jar +0 -0
  85. package/android/build/intermediates/symbol_list_with_package_name/debug/generateDebugRFile/package-aware-r.txt +5 -0
  86. package/android/build/outputs/logs/manifest-merger-debug-report.txt +17 -0
  87. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayer$VertexInfo.class.uniqueId0 +0 -0
  88. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayer.class.uniqueId1 +0 -0
  89. package/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayerView.class.uniqueId2 +0 -0
  90. package/android/build/tmp/compileDebugJavaWithJavac/previous-compilation-data.bin +0 -0
  91. package/android/build.gradle +107 -107
  92. package/android/src/main/AndroidManifest.xml +6 -6
  93. package/android/src/main/java/com/aguacerowx/reactnative/AguaceroPackage.java +33 -33
  94. package/android/src/main/java/com/aguacerowx/reactnative/GridRenderLayer.java +688 -688
  95. package/android/src/main/java/com/aguacerowx/reactnative/GridRenderLayerView.java +304 -304
  96. package/android/src/main/java/com/aguacerowx/reactnative/GridRenderManager.java +125 -125
  97. package/android/src/main/java/com/aguacerowx/reactnative/InspectorModule.java +71 -71
  98. package/android/src/main/java/com/aguacerowx/reactnative/ShaderUtils.java +106 -106
  99. package/android/src/main/java/com/aguacerowx/reactnative/WeatherFrameProcessorModule.java +151 -151
  100. package/android/src/main/res/raw/debug_fragment_shader.glsl +12 -12
  101. package/android/src/main/res/raw/debug_vertex_shader.glsl +12 -12
  102. package/android/src/main/res/raw/fragment_shader.glsl +180 -188
  103. package/android/src/main/res/raw/vertex_shader.glsl +19 -19
  104. package/index.js +2 -2
  105. package/ios/AguaceroPackage.m +18 -18
  106. package/ios/FragmentUniforms.swift +15 -15
  107. package/ios/GridRenderLayer.swift +1004 -1004
  108. package/ios/GridRenderLayerBridge.swift +36 -36
  109. package/ios/GridRenderLayerManager.mm +157 -157
  110. package/ios/GridRenderLayerView.h +30 -30
  111. package/ios/GridRenderLayerView.m +216 -216
  112. package/ios/InspectorDataCache.swift +65 -65
  113. package/ios/InspectorModule.m +9 -9
  114. package/ios/InspectorModule.swift +63 -63
  115. package/ios/Shaders.metal +319 -327
  116. package/ios/WeatherFrameProcessorModule.m +15 -15
  117. package/ios/WeatherFrameProcessorModule.swift +103 -103
  118. package/ios/compiled-shaders/Shaders-device.metallib +0 -0
  119. package/ios/compiled-shaders/Shaders-simulator.metallib +0 -0
  120. package/lib/commonjs/README.md +126 -126
  121. package/lib/commonjs/aguacerowx-react-native.podspec +38 -38
  122. package/lib/commonjs/android/build/generated/source/buildConfig/debug/com/aguacerowx/reactnative/BuildConfig.java +10 -0
  123. package/lib/commonjs/android/build/generated/source/codegen/java/com/facebook/react/viewmanagers/GridRenderLayerManagerDelegate.java +43 -0
  124. package/lib/commonjs/android/build/generated/source/codegen/java/com/facebook/react/viewmanagers/GridRenderLayerManagerInterface.java +22 -0
  125. package/lib/commonjs/android/build/generated/source/codegen/jni/AguaceroWxReactNativeSpec-generated.cpp +22 -0
  126. package/lib/commonjs/android/build/generated/source/codegen/jni/AguaceroWxReactNativeSpec.h +24 -0
  127. package/lib/commonjs/android/build/generated/source/codegen/jni/CMakeLists.txt +28 -0
  128. package/lib/commonjs/android/build/generated/source/codegen/jni/react/renderer/components/AguaceroWxReactNativeSpec/AguaceroWxReactNativeSpecJSI-generated.cpp +17 -0
  129. package/lib/commonjs/android/build/generated/source/codegen/jni/react/renderer/components/AguaceroWxReactNativeSpec/AguaceroWxReactNativeSpecJSI.h +19 -0
  130. package/lib/commonjs/android/build/generated/source/codegen/jni/react/renderer/components/AguaceroWxReactNativeSpec/ComponentDescriptors.cpp +22 -0
  131. package/lib/commonjs/android/build/generated/source/codegen/jni/react/renderer/components/AguaceroWxReactNativeSpec/ComponentDescriptors.h +24 -0
  132. package/lib/commonjs/android/build/generated/source/codegen/jni/react/renderer/components/AguaceroWxReactNativeSpec/EventEmitters.cpp +16 -0
  133. package/lib/commonjs/android/build/generated/source/codegen/jni/react/renderer/components/AguaceroWxReactNativeSpec/EventEmitters.h +23 -0
  134. package/lib/commonjs/android/build/generated/source/codegen/jni/react/renderer/components/AguaceroWxReactNativeSpec/Props.cpp +62 -0
  135. package/lib/commonjs/android/build/generated/source/codegen/jni/react/renderer/components/AguaceroWxReactNativeSpec/Props.h +40 -0
  136. package/lib/commonjs/android/build/generated/source/codegen/jni/react/renderer/components/AguaceroWxReactNativeSpec/ShadowNodes.cpp +17 -0
  137. package/lib/commonjs/android/build/generated/source/codegen/jni/react/renderer/components/AguaceroWxReactNativeSpec/ShadowNodes.h +32 -0
  138. package/lib/commonjs/android/build/generated/source/codegen/jni/react/renderer/components/AguaceroWxReactNativeSpec/States.cpp +16 -0
  139. package/lib/commonjs/android/build/generated/source/codegen/jni/react/renderer/components/AguaceroWxReactNativeSpec/States.h +20 -0
  140. package/lib/commonjs/android/build/generated/source/codegen/schema.json +1 -0
  141. package/lib/commonjs/android/build/intermediates/aapt_friendly_merged_manifests/debug/processDebugManifest/aapt/AndroidManifest.xml +8 -0
  142. package/lib/commonjs/android/build/intermediates/aapt_friendly_merged_manifests/debug/processDebugManifest/aapt/output-metadata.json +18 -0
  143. package/lib/commonjs/android/build/intermediates/aar_metadata/debug/writeDebugAarMetadata/aar-metadata.properties +6 -0
  144. package/lib/commonjs/android/build/intermediates/annotation_processor_list/debug/javaPreCompileDebug/annotationProcessors.json +1 -0
  145. package/lib/commonjs/android/build/intermediates/compile_library_classes_jar/debug/bundleLibCompileToJarDebug/classes.jar +0 -0
  146. package/lib/commonjs/android/build/intermediates/compile_r_class_jar/debug/generateDebugRFile/R.jar +0 -0
  147. package/lib/commonjs/android/build/intermediates/compile_symbol_list/debug/generateDebugRFile/R.txt +4 -0
  148. package/lib/commonjs/android/build/intermediates/compiled_local_resources/debug/compileDebugLibraryResources/out/raw_debug_fragment_shader.glsl.flat +0 -0
  149. package/lib/commonjs/android/build/intermediates/compiled_local_resources/debug/compileDebugLibraryResources/out/raw_debug_vertex_shader.glsl.flat +0 -0
  150. package/lib/commonjs/android/build/intermediates/compiled_local_resources/debug/compileDebugLibraryResources/out/raw_fragment_shader.glsl.flat +0 -0
  151. package/lib/commonjs/android/build/intermediates/compiled_local_resources/debug/compileDebugLibraryResources/out/raw_vertex_shader.glsl.flat +0 -0
  152. package/lib/commonjs/android/build/intermediates/incremental/debug/packageDebugResources/compile-file-map.properties +5 -0
  153. package/lib/commonjs/android/build/intermediates/incremental/debug/packageDebugResources/merger.xml +2 -0
  154. package/lib/commonjs/android/build/intermediates/incremental/mergeDebugAssets/merger.xml +2 -0
  155. package/lib/commonjs/android/build/intermediates/incremental/mergeDebugJniLibFolders/merger.xml +2 -0
  156. package/lib/commonjs/android/build/intermediates/incremental/mergeDebugShaders/merger.xml +2 -0
  157. package/lib/commonjs/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/AguaceroPackage.class +0 -0
  158. package/lib/commonjs/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/BuildConfig.class +0 -0
  159. package/lib/commonjs/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/GridRenderLayer$VertexInfo.class +0 -0
  160. package/lib/commonjs/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/GridRenderLayer.class +0 -0
  161. package/lib/commonjs/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/GridRenderLayerView.class +0 -0
  162. package/lib/commonjs/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/GridRenderManager.class +0 -0
  163. package/lib/commonjs/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/InspectorModule.class +0 -0
  164. package/lib/commonjs/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/ShaderUtils.class +0 -0
  165. package/lib/commonjs/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/WeatherFrameProcessorModule.class +0 -0
  166. package/lib/commonjs/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/facebook/react/viewmanagers/GridRenderLayerManagerDelegate.class +0 -0
  167. package/lib/commonjs/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/facebook/react/viewmanagers/GridRenderLayerManagerInterface.class +0 -0
  168. package/lib/commonjs/android/build/intermediates/local_only_symbol_list/debug/parseDebugLocalResources/R-def.txt +6 -0
  169. package/lib/commonjs/android/build/intermediates/manifest_merge_blame_file/debug/processDebugManifest/manifest-merger-blame-debug-report.txt +8 -0
  170. package/lib/commonjs/android/build/intermediates/merged_manifest/debug/processDebugManifest/AndroidManifest.xml +8 -0
  171. package/lib/commonjs/android/build/intermediates/navigation_json/debug/extractDeepLinksDebug/navigation.json +1 -0
  172. package/lib/commonjs/android/build/intermediates/nested_resources_validation_report/debug/generateDebugResources/nestedResourcesValidationReport.txt +1 -0
  173. package/lib/commonjs/android/build/intermediates/packaged_res/debug/packageDebugResources/raw/debug_fragment_shader.glsl +13 -0
  174. package/lib/commonjs/android/build/intermediates/packaged_res/debug/packageDebugResources/raw/debug_vertex_shader.glsl +13 -0
  175. package/lib/commonjs/android/build/intermediates/packaged_res/debug/packageDebugResources/raw/fragment_shader.glsl +181 -0
  176. package/lib/commonjs/android/build/intermediates/packaged_res/debug/packageDebugResources/raw/vertex_shader.glsl +20 -0
  177. package/lib/commonjs/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/AguaceroPackage.class +0 -0
  178. package/lib/commonjs/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/BuildConfig.class +0 -0
  179. package/lib/commonjs/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/GridRenderLayer$VertexInfo.class +0 -0
  180. package/lib/commonjs/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/GridRenderLayer.class +0 -0
  181. package/lib/commonjs/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/GridRenderLayerView.class +0 -0
  182. package/lib/commonjs/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/GridRenderManager.class +0 -0
  183. package/lib/commonjs/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/InspectorModule.class +0 -0
  184. package/lib/commonjs/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/ShaderUtils.class +0 -0
  185. package/lib/commonjs/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/WeatherFrameProcessorModule.class +0 -0
  186. package/lib/commonjs/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/facebook/react/viewmanagers/GridRenderLayerManagerDelegate.class +0 -0
  187. package/lib/commonjs/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/facebook/react/viewmanagers/GridRenderLayerManagerInterface.class +0 -0
  188. package/lib/commonjs/android/build/intermediates/runtime_library_classes_jar/debug/bundleLibRuntimeToJarDebug/classes.jar +0 -0
  189. package/lib/commonjs/android/build/intermediates/symbol_list_with_package_name/debug/generateDebugRFile/package-aware-r.txt +5 -0
  190. package/lib/commonjs/android/build/outputs/logs/manifest-merger-debug-report.txt +17 -0
  191. package/lib/commonjs/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayer$VertexInfo.class.uniqueId0 +0 -0
  192. package/lib/commonjs/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayer.class.uniqueId1 +0 -0
  193. package/lib/commonjs/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayerView.class.uniqueId2 +0 -0
  194. package/lib/commonjs/android/build/tmp/compileDebugJavaWithJavac/previous-compilation-data.bin +0 -0
  195. package/lib/commonjs/android/build.gradle +107 -107
  196. package/lib/commonjs/android/src/main/AndroidManifest.xml +6 -6
  197. package/lib/commonjs/android/src/main/java/com/aguacerowx/reactnative/AguaceroPackage.java +33 -33
  198. package/lib/commonjs/android/src/main/java/com/aguacerowx/reactnative/GridRenderLayer.java +688 -688
  199. package/lib/commonjs/android/src/main/java/com/aguacerowx/reactnative/GridRenderLayerView.java +304 -304
  200. package/lib/commonjs/android/src/main/java/com/aguacerowx/reactnative/GridRenderManager.java +125 -125
  201. package/lib/commonjs/android/src/main/java/com/aguacerowx/reactnative/InspectorModule.java +71 -71
  202. package/lib/commonjs/android/src/main/java/com/aguacerowx/reactnative/ShaderUtils.java +106 -106
  203. package/lib/commonjs/android/src/main/java/com/aguacerowx/reactnative/WeatherFrameProcessorModule.java +151 -151
  204. package/lib/commonjs/android/src/main/res/raw/debug_fragment_shader.glsl +12 -12
  205. package/lib/commonjs/android/src/main/res/raw/debug_vertex_shader.glsl +12 -12
  206. package/lib/commonjs/android/src/main/res/raw/fragment_shader.glsl +180 -188
  207. package/lib/commonjs/android/src/main/res/raw/vertex_shader.glsl +19 -19
  208. package/lib/commonjs/babel.config.js.map +1 -1
  209. package/lib/commonjs/index.js.map +1 -1
  210. package/lib/commonjs/ios/AguaceroPackage.m +18 -18
  211. package/lib/commonjs/ios/FragmentUniforms.swift +15 -15
  212. package/lib/commonjs/ios/GridRenderLayer.swift +1004 -1004
  213. package/lib/commonjs/ios/GridRenderLayerBridge.swift +36 -36
  214. package/lib/commonjs/ios/GridRenderLayerManager.mm +157 -157
  215. package/lib/commonjs/ios/GridRenderLayerView.h +30 -30
  216. package/lib/commonjs/ios/GridRenderLayerView.m +216 -216
  217. package/lib/commonjs/ios/InspectorDataCache.swift +65 -65
  218. package/lib/commonjs/ios/InspectorModule.m +9 -9
  219. package/lib/commonjs/ios/InspectorModule.swift +63 -63
  220. package/lib/commonjs/ios/Shaders.metal +319 -327
  221. package/lib/commonjs/ios/WeatherFrameProcessorModule.m +15 -15
  222. package/lib/commonjs/ios/WeatherFrameProcessorModule.swift +103 -103
  223. package/lib/commonjs/ios/compiled-shaders/Shaders-device.metallib +0 -0
  224. package/lib/commonjs/ios/compiled-shaders/Shaders-simulator.metallib +0 -0
  225. package/lib/commonjs/package.json +72 -72
  226. package/lib/commonjs/react-native-builder-bob.config.js.map +1 -1
  227. package/lib/commonjs/scripts/compile-shaders.js.map +1 -1
  228. package/lib/commonjs/scripts/compile-shaders.sh +38 -38
  229. package/lib/commonjs/src/AguaceroContext.js.map +1 -1
  230. package/lib/commonjs/src/GridRenderLayer.js.map +1 -1
  231. package/lib/commonjs/src/GridRenderLayerNativeComponent.js.map +1 -1
  232. package/lib/commonjs/src/MapManager.js.map +1 -1
  233. package/lib/commonjs/src/MapRegistry.js.map +1 -1
  234. package/lib/commonjs/src/StyleApplicator.js +6 -6
  235. package/lib/commonjs/src/StyleApplicator.js.map +1 -1
  236. package/lib/commonjs/src/WeatherLayerManager.js +5 -18
  237. package/lib/commonjs/src/WeatherLayerManager.js.map +1 -1
  238. package/lib/commonjs/tsconfig.json +23 -23
  239. package/lib/module/README.md +126 -126
  240. package/lib/module/aguacerowx-react-native.podspec +38 -38
  241. package/lib/module/android/build/generated/source/buildConfig/debug/com/aguacerowx/reactnative/BuildConfig.java +10 -0
  242. package/lib/module/android/build/generated/source/codegen/java/com/facebook/react/viewmanagers/GridRenderLayerManagerDelegate.java +43 -0
  243. package/lib/module/android/build/generated/source/codegen/java/com/facebook/react/viewmanagers/GridRenderLayerManagerInterface.java +22 -0
  244. package/lib/module/android/build/generated/source/codegen/jni/AguaceroWxReactNativeSpec-generated.cpp +22 -0
  245. package/lib/module/android/build/generated/source/codegen/jni/AguaceroWxReactNativeSpec.h +24 -0
  246. package/lib/module/android/build/generated/source/codegen/jni/CMakeLists.txt +28 -0
  247. package/lib/module/android/build/generated/source/codegen/jni/react/renderer/components/AguaceroWxReactNativeSpec/AguaceroWxReactNativeSpecJSI-generated.cpp +17 -0
  248. package/lib/module/android/build/generated/source/codegen/jni/react/renderer/components/AguaceroWxReactNativeSpec/AguaceroWxReactNativeSpecJSI.h +19 -0
  249. package/lib/module/android/build/generated/source/codegen/jni/react/renderer/components/AguaceroWxReactNativeSpec/ComponentDescriptors.cpp +22 -0
  250. package/lib/module/android/build/generated/source/codegen/jni/react/renderer/components/AguaceroWxReactNativeSpec/ComponentDescriptors.h +24 -0
  251. package/lib/module/android/build/generated/source/codegen/jni/react/renderer/components/AguaceroWxReactNativeSpec/EventEmitters.cpp +16 -0
  252. package/lib/module/android/build/generated/source/codegen/jni/react/renderer/components/AguaceroWxReactNativeSpec/EventEmitters.h +23 -0
  253. package/lib/module/android/build/generated/source/codegen/jni/react/renderer/components/AguaceroWxReactNativeSpec/Props.cpp +62 -0
  254. package/lib/module/android/build/generated/source/codegen/jni/react/renderer/components/AguaceroWxReactNativeSpec/Props.h +40 -0
  255. package/lib/module/android/build/generated/source/codegen/jni/react/renderer/components/AguaceroWxReactNativeSpec/ShadowNodes.cpp +17 -0
  256. package/lib/module/android/build/generated/source/codegen/jni/react/renderer/components/AguaceroWxReactNativeSpec/ShadowNodes.h +32 -0
  257. package/lib/module/android/build/generated/source/codegen/jni/react/renderer/components/AguaceroWxReactNativeSpec/States.cpp +16 -0
  258. package/lib/module/android/build/generated/source/codegen/jni/react/renderer/components/AguaceroWxReactNativeSpec/States.h +20 -0
  259. package/lib/module/android/build/generated/source/codegen/schema.json +1 -0
  260. package/lib/module/android/build/intermediates/aapt_friendly_merged_manifests/debug/processDebugManifest/aapt/AndroidManifest.xml +8 -0
  261. package/lib/module/android/build/intermediates/aapt_friendly_merged_manifests/debug/processDebugManifest/aapt/output-metadata.json +18 -0
  262. package/lib/module/android/build/intermediates/aar_metadata/debug/writeDebugAarMetadata/aar-metadata.properties +6 -0
  263. package/lib/module/android/build/intermediates/annotation_processor_list/debug/javaPreCompileDebug/annotationProcessors.json +1 -0
  264. package/lib/module/android/build/intermediates/compile_library_classes_jar/debug/bundleLibCompileToJarDebug/classes.jar +0 -0
  265. package/lib/module/android/build/intermediates/compile_r_class_jar/debug/generateDebugRFile/R.jar +0 -0
  266. package/lib/module/android/build/intermediates/compile_symbol_list/debug/generateDebugRFile/R.txt +4 -0
  267. package/lib/module/android/build/intermediates/compiled_local_resources/debug/compileDebugLibraryResources/out/raw_debug_fragment_shader.glsl.flat +0 -0
  268. package/lib/module/android/build/intermediates/compiled_local_resources/debug/compileDebugLibraryResources/out/raw_debug_vertex_shader.glsl.flat +0 -0
  269. package/lib/module/android/build/intermediates/compiled_local_resources/debug/compileDebugLibraryResources/out/raw_fragment_shader.glsl.flat +0 -0
  270. package/lib/module/android/build/intermediates/compiled_local_resources/debug/compileDebugLibraryResources/out/raw_vertex_shader.glsl.flat +0 -0
  271. package/lib/module/android/build/intermediates/incremental/debug/packageDebugResources/compile-file-map.properties +5 -0
  272. package/lib/module/android/build/intermediates/incremental/debug/packageDebugResources/merger.xml +2 -0
  273. package/lib/module/android/build/intermediates/incremental/mergeDebugAssets/merger.xml +2 -0
  274. package/lib/module/android/build/intermediates/incremental/mergeDebugJniLibFolders/merger.xml +2 -0
  275. package/lib/module/android/build/intermediates/incremental/mergeDebugShaders/merger.xml +2 -0
  276. package/lib/module/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/AguaceroPackage.class +0 -0
  277. package/lib/module/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/BuildConfig.class +0 -0
  278. package/lib/module/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/GridRenderLayer$VertexInfo.class +0 -0
  279. package/lib/module/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/GridRenderLayer.class +0 -0
  280. package/lib/module/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/GridRenderLayerView.class +0 -0
  281. package/lib/module/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/GridRenderManager.class +0 -0
  282. package/lib/module/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/InspectorModule.class +0 -0
  283. package/lib/module/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/ShaderUtils.class +0 -0
  284. package/lib/module/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/aguacerowx/reactnative/WeatherFrameProcessorModule.class +0 -0
  285. package/lib/module/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/facebook/react/viewmanagers/GridRenderLayerManagerDelegate.class +0 -0
  286. package/lib/module/android/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes/com/facebook/react/viewmanagers/GridRenderLayerManagerInterface.class +0 -0
  287. package/lib/module/android/build/intermediates/local_only_symbol_list/debug/parseDebugLocalResources/R-def.txt +6 -0
  288. package/lib/module/android/build/intermediates/manifest_merge_blame_file/debug/processDebugManifest/manifest-merger-blame-debug-report.txt +8 -0
  289. package/lib/module/android/build/intermediates/merged_manifest/debug/processDebugManifest/AndroidManifest.xml +8 -0
  290. package/lib/module/android/build/intermediates/navigation_json/debug/extractDeepLinksDebug/navigation.json +1 -0
  291. package/lib/module/android/build/intermediates/nested_resources_validation_report/debug/generateDebugResources/nestedResourcesValidationReport.txt +1 -0
  292. package/lib/module/android/build/intermediates/packaged_res/debug/packageDebugResources/raw/debug_fragment_shader.glsl +13 -0
  293. package/lib/module/android/build/intermediates/packaged_res/debug/packageDebugResources/raw/debug_vertex_shader.glsl +13 -0
  294. package/lib/module/android/build/intermediates/packaged_res/debug/packageDebugResources/raw/fragment_shader.glsl +181 -0
  295. package/lib/module/android/build/intermediates/packaged_res/debug/packageDebugResources/raw/vertex_shader.glsl +20 -0
  296. package/lib/module/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/AguaceroPackage.class +0 -0
  297. package/lib/module/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/BuildConfig.class +0 -0
  298. package/lib/module/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/GridRenderLayer$VertexInfo.class +0 -0
  299. package/lib/module/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/GridRenderLayer.class +0 -0
  300. package/lib/module/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/GridRenderLayerView.class +0 -0
  301. package/lib/module/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/GridRenderManager.class +0 -0
  302. package/lib/module/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/InspectorModule.class +0 -0
  303. package/lib/module/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/ShaderUtils.class +0 -0
  304. package/lib/module/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/aguacerowx/reactnative/WeatherFrameProcessorModule.class +0 -0
  305. package/lib/module/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/facebook/react/viewmanagers/GridRenderLayerManagerDelegate.class +0 -0
  306. package/lib/module/android/build/intermediates/runtime_library_classes_dir/debug/bundleLibRuntimeToDirDebug/com/facebook/react/viewmanagers/GridRenderLayerManagerInterface.class +0 -0
  307. package/lib/module/android/build/intermediates/runtime_library_classes_jar/debug/bundleLibRuntimeToJarDebug/classes.jar +0 -0
  308. package/lib/module/android/build/intermediates/symbol_list_with_package_name/debug/generateDebugRFile/package-aware-r.txt +5 -0
  309. package/lib/module/android/build/outputs/logs/manifest-merger-debug-report.txt +17 -0
  310. package/lib/module/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayer$VertexInfo.class.uniqueId0 +0 -0
  311. package/lib/module/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayer.class.uniqueId1 +0 -0
  312. package/lib/module/android/build/tmp/compileDebugJavaWithJavac/compileTransaction/stash-dir/GridRenderLayerView.class.uniqueId2 +0 -0
  313. package/lib/module/android/build/tmp/compileDebugJavaWithJavac/previous-compilation-data.bin +0 -0
  314. package/lib/module/android/build.gradle +107 -107
  315. package/lib/module/android/src/main/AndroidManifest.xml +6 -6
  316. package/lib/module/android/src/main/java/com/aguacerowx/reactnative/AguaceroPackage.java +33 -33
  317. package/lib/module/android/src/main/java/com/aguacerowx/reactnative/GridRenderLayer.java +688 -688
  318. package/lib/module/android/src/main/java/com/aguacerowx/reactnative/GridRenderLayerView.java +304 -304
  319. package/lib/module/android/src/main/java/com/aguacerowx/reactnative/GridRenderManager.java +125 -125
  320. package/lib/module/android/src/main/java/com/aguacerowx/reactnative/InspectorModule.java +71 -71
  321. package/lib/module/android/src/main/java/com/aguacerowx/reactnative/ShaderUtils.java +106 -106
  322. package/lib/module/android/src/main/java/com/aguacerowx/reactnative/WeatherFrameProcessorModule.java +151 -151
  323. package/lib/module/android/src/main/res/raw/debug_fragment_shader.glsl +12 -12
  324. package/lib/module/android/src/main/res/raw/debug_vertex_shader.glsl +12 -12
  325. package/lib/module/android/src/main/res/raw/fragment_shader.glsl +180 -188
  326. package/lib/module/android/src/main/res/raw/vertex_shader.glsl +19 -19
  327. package/lib/module/babel.config.js.map +1 -1
  328. package/lib/module/index.js.map +1 -1
  329. package/lib/module/ios/AguaceroPackage.m +18 -18
  330. package/lib/module/ios/FragmentUniforms.swift +15 -15
  331. package/lib/module/ios/GridRenderLayer.swift +1004 -1004
  332. package/lib/module/ios/GridRenderLayerBridge.swift +36 -36
  333. package/lib/module/ios/GridRenderLayerManager.mm +157 -157
  334. package/lib/module/ios/GridRenderLayerView.h +30 -30
  335. package/lib/module/ios/GridRenderLayerView.m +216 -216
  336. package/lib/module/ios/InspectorDataCache.swift +65 -65
  337. package/lib/module/ios/InspectorModule.m +9 -9
  338. package/lib/module/ios/InspectorModule.swift +63 -63
  339. package/lib/module/ios/Shaders.metal +319 -327
  340. package/lib/module/ios/WeatherFrameProcessorModule.m +15 -15
  341. package/lib/module/ios/WeatherFrameProcessorModule.swift +103 -103
  342. package/lib/module/ios/compiled-shaders/Shaders-device.metallib +0 -0
  343. package/lib/module/ios/compiled-shaders/Shaders-simulator.metallib +0 -0
  344. package/lib/module/lib/commonjs/README.md +126 -126
  345. package/lib/module/lib/commonjs/aguacerowx-react-native.podspec +38 -38
  346. package/lib/module/lib/commonjs/android/build.gradle +108 -0
  347. package/lib/module/lib/commonjs/android/src/main/AndroidManifest.xml +7 -0
  348. package/lib/module/lib/commonjs/babel.config.js.map +1 -1
  349. package/lib/module/lib/commonjs/index.js.map +1 -1
  350. package/lib/module/lib/commonjs/ios/AguaceroPackage.m +19 -0
  351. package/lib/module/lib/commonjs/ios/FragmentUniforms.swift +16 -0
  352. package/lib/module/lib/commonjs/ios/GridRenderLayer.swift +1004 -0
  353. package/lib/module/lib/commonjs/ios/GridRenderLayerBridge.swift +37 -0
  354. package/lib/module/lib/commonjs/ios/GridRenderLayerManager.mm +158 -0
  355. package/lib/module/lib/commonjs/ios/GridRenderLayerView.h +31 -0
  356. package/lib/module/lib/commonjs/ios/GridRenderLayerView.m +217 -0
  357. package/lib/module/lib/commonjs/ios/InspectorDataCache.swift +66 -0
  358. package/lib/module/lib/commonjs/ios/InspectorModule.m +10 -0
  359. package/lib/module/lib/commonjs/ios/InspectorModule.swift +64 -0
  360. package/lib/module/lib/commonjs/ios/Shaders.metal +320 -0
  361. package/lib/module/lib/commonjs/ios/WeatherFrameProcessorModule.m +16 -0
  362. package/lib/module/lib/commonjs/ios/WeatherFrameProcessorModule.swift +104 -0
  363. package/lib/module/lib/commonjs/ios/compiled-shaders/Shaders-device.metallib +0 -0
  364. package/lib/module/lib/commonjs/ios/compiled-shaders/Shaders-simulator.metallib +0 -0
  365. package/lib/module/lib/commonjs/ios/generated/AguaceroWxReactNativeSpec-generated.mm +0 -0
  366. package/lib/module/lib/commonjs/ios/generated/AguaceroWxReactNativeSpec.h +0 -0
  367. package/lib/module/lib/commonjs/package.json +72 -72
  368. package/lib/module/lib/commonjs/react-native-builder-bob.config.js.map +1 -1
  369. package/lib/module/lib/commonjs/scripts/compile-shaders.js.map +1 -1
  370. package/lib/module/lib/commonjs/scripts/compile-shaders.sh +39 -0
  371. package/lib/module/lib/commonjs/src/AguaceroContext.js.map +1 -1
  372. package/lib/module/lib/commonjs/src/GridRenderLayer.js.map +1 -1
  373. package/lib/module/lib/commonjs/src/GridRenderLayerNativeComponent.js.map +1 -1
  374. package/lib/module/lib/commonjs/src/MapManager.js.map +1 -1
  375. package/lib/module/lib/commonjs/src/MapRegistry.js.map +1 -1
  376. package/lib/module/lib/commonjs/src/StyleApplicator.js +6 -6
  377. package/lib/module/lib/commonjs/src/StyleApplicator.js.map +1 -1
  378. package/lib/module/lib/commonjs/src/WeatherLayerManager.js +5 -18
  379. package/lib/module/lib/commonjs/src/WeatherLayerManager.js.map +1 -1
  380. package/lib/module/lib/commonjs/tsconfig.json +23 -23
  381. package/lib/module/package.json +72 -72
  382. package/lib/module/react-native-builder-bob.config.js.map +1 -1
  383. package/lib/module/scripts/compile-shaders.js.map +1 -1
  384. package/lib/module/scripts/compile-shaders.sh +38 -38
  385. package/lib/module/src/AguaceroContext.js.map +1 -1
  386. package/lib/module/src/GridRenderLayer.js.map +1 -1
  387. package/lib/module/src/GridRenderLayerNativeComponent.js.map +1 -1
  388. package/lib/module/src/MapManager.js.map +1 -1
  389. package/lib/module/src/MapRegistry.js.map +1 -1
  390. package/lib/module/src/StyleApplicator.js +6 -6
  391. package/lib/module/src/StyleApplicator.js.map +1 -1
  392. package/lib/module/src/WeatherLayerManager.js +5 -18
  393. package/lib/module/src/WeatherLayerManager.js.map +1 -1
  394. package/lib/module/tsconfig.json +23 -23
  395. package/lib/typescript/src/WeatherLayerManager.d.ts.map +1 -1
  396. package/package.json +72 -72
  397. package/src/AguaceroContext.js +3 -3
  398. package/src/GridRenderLayer.js +215 -215
  399. package/src/GridRenderLayerNativeComponent.ts +15 -15
  400. package/src/MapManager.js +218 -218
  401. package/src/MapRegistry.js +34 -34
  402. package/src/StyleApplicator.js +240 -240
  403. package/src/WeatherLayerManager.js +1137 -1151
@@ -1,328 +1,320 @@
1
- #include <metal_stdlib>
2
- using namespace metal;
3
-
4
- // Struct to match the vertex buffer layout in Swift
5
- struct Vertex {
6
- float2 position [[attribute(0)]];
7
- float2 texCoord [[attribute(1)]];
8
- };
9
-
10
- // Struct for passing data from vertex to fragment shader
11
- struct RasterizerData {
12
- float4 position [[position]];
13
- float2 texCoord;
14
- };
15
-
16
- // Uniforms passed from the CPU to the fragment shader
17
- struct FragmentUniforms {
18
- float opacity;
19
- float2 dataRange;
20
- float scale;
21
- float offset;
22
- float missingQuantized;
23
- float2 textureSize;
24
- int smoothing;
25
- int scaleType;
26
- int isPtype;
27
- int isMRMS;
28
- };
29
-
30
- // --- Vertex Shader (Unchanged) ---
31
- vertex RasterizerData vertex_main(const Vertex in [[stage_in]],
32
- constant float4x4 &mvp [[buffer(1)]]) {
33
- RasterizerData out;
34
- out.position = mvp * float4(in.position, 0.0, 1.0);
35
- out.texCoord = in.texCoord;
36
- return out;
37
- }
38
-
39
-
40
- // --- HELPER FUNCTIONS FOR FRAGMENT SHADER ---
41
-
42
- // Dequantizes a signed value (-127 to 127) into a physical value
43
- float dequantize_val(float q_val, constant FragmentUniforms &uniforms) {
44
- if (abs(q_val - uniforms.missingQuantized) < 0.5) {
45
- return -9999.0;
46
- }
47
- float intermediate = q_val * uniforms.scale + uniforms.offset;
48
- if (uniforms.scaleType == 1) { // 1 = sqrt
49
- return intermediate * abs(intermediate);
50
- }
51
- return intermediate;
52
- }
53
-
54
- // Samples texture, converts 0-255 to signed -128-127 range.
55
- // Returns a quantized value, or a large positive sentinel for missing data.
56
- float get_value(texture2d<float, access::sample> dataTexture, sampler dataSampler, float2 coord, constant FragmentUniforms &uniforms) {
57
- // Note: The sampler should be set to 'nearest' when calling this for ptype logic.
58
- float value_0_to_255 = dataTexture.sample(dataSampler, coord).r * 255.0;
59
- float val = value_0_to_255 - 128.0;
60
- float missing_in_texture_range_0_255 = uniforms.missingQuantized + 128.0;
61
- if (abs(value_0_to_255 - missing_in_texture_range_0_255) < 0.5) {
62
- return 99999.0; // Sentinel for "missing"
63
- }
64
- return val;
65
- }
66
-
67
- // Maps a physical value to a precipitation type category
68
- // Maps a physical value to a precipitation type category
69
- float get_ptype_from_physical(float val, constant FragmentUniforms &uniforms) { // ADD uniforms parameter
70
- if (val < 0.0) return -1.0;
71
-
72
- if (uniforms.isMRMS == 1) { // ADD THIS BRANCH
73
- // MRMS: 0-100 rain, 100-200 snow, 200-300 freezing rain
74
- if (val < 100.0) return 0.0;
75
- if (val < 200.0) return 1.0;
76
- if (val < 300.0) return 2.0;
77
- return -1.0;
78
- } else {
79
- // Models: 0-100 rain, 100-200 snow, 200-300 freezing rain, 300-400 ice pellets
80
- if (val < 100.0) return 0.0;
81
- if (val < 200.0) return 1.0;
82
- if (val < 300.0) return 2.0;
83
- if (val < 400.0) return 3.0;
84
- return -1.0;
85
- }
86
- }
87
-
88
- // --- Main Fragment Shader ---
89
- fragment float4 fragment_main(RasterizerData in [[stage_in]],
90
- constant FragmentUniforms &uniforms [[buffer(0)]],
91
- texture2d<float, access::sample> dataTexture [[texture(0)]],
92
- texture2d<float, access::sample> colormapTexture [[texture(1)]],
93
- sampler dataSampler [[sampler(0)]],
94
- sampler colormapSampler [[sampler(1)]])
95
- {
96
- float raw_value;
97
- float alpha_multiplier = 1.0; // Used for alpha feathering at data edges
98
-
99
- if (uniforms.smoothing == 0) { // Nearest neighbor
100
- float quantized_value = get_value(dataTexture, dataSampler, in.texCoord, uniforms);
101
- if (quantized_value >= 99999.0) {
102
- discard_fragment();
103
- }
104
- raw_value = dequantize_val(quantized_value, uniforms);
105
-
106
- } else { // Bilinear interpolation
107
- float2 texel_size = 1.0 / uniforms.textureSize;
108
- float2 tex_coord_in_texels = in.texCoord * uniforms.textureSize;
109
- float2 bl_texel_index = floor(tex_coord_in_texels - 0.5);
110
- float2 f = fract(tex_coord_in_texels - 0.5); // Interpolation factors
111
-
112
- // Coordinates of the 4 neighboring texels
113
- float2 v00_coord = (bl_texel_index + float2(0.5, 0.5)) * texel_size;
114
- float2 v10_coord = (bl_texel_index + float2(1.5, 0.5)) * texel_size;
115
- float2 v01_coord = (bl_texel_index + float2(0.5, 1.5)) * texel_size;
116
- float2 v11_coord = (bl_texel_index + float2(1.5, 1.5)) * texel_size;
117
-
118
- if (uniforms.isPtype == 1) {
119
- // --- ENHANCED PTYPE-SPECIFIC INTERPOLATION ---
120
- float v00 = dequantize_val(get_value(dataTexture, dataSampler, v00_coord, uniforms), uniforms);
121
- float v10 = dequantize_val(get_value(dataTexture, dataSampler, v10_coord, uniforms), uniforms);
122
- float v01 = dequantize_val(get_value(dataTexture, dataSampler, v01_coord, uniforms), uniforms);
123
- float v11 = dequantize_val(get_value(dataTexture, dataSampler, v11_coord, uniforms), uniforms);
124
-
125
- float p00 = get_ptype_from_physical(v00, uniforms);
126
- float p10 = get_ptype_from_physical(v10, uniforms);
127
- float p01 = get_ptype_from_physical(v01, uniforms);
128
- float p11 = get_ptype_from_physical(v11, uniforms);
129
-
130
- // Count unique valid precipitation types
131
- bool has_type_0 = false;
132
- bool has_type_1 = false;
133
- bool has_type_2 = false;
134
- bool has_type_3 = false;
135
- int valid_count = 0;
136
-
137
- if (p00 >= 0.0) {
138
- int ptype = int(p00);
139
- if (ptype == 0) has_type_0 = true;
140
- else if (ptype == 1) has_type_1 = true;
141
- else if (ptype == 2) has_type_2 = true;
142
- else if (ptype == 3) has_type_3 = true;
143
- valid_count++;
144
- }
145
- if (p10 >= 0.0) {
146
- int ptype = int(p10);
147
- if (ptype == 0) has_type_0 = true;
148
- else if (ptype == 1) has_type_1 = true;
149
- else if (ptype == 2) has_type_2 = true;
150
- else if (ptype == 3) has_type_3 = true;
151
- valid_count++;
152
- }
153
- if (p01 >= 0.0) {
154
- int ptype = int(p01);
155
- if (ptype == 0) has_type_0 = true;
156
- else if (ptype == 1) has_type_1 = true;
157
- else if (ptype == 2) has_type_2 = true;
158
- else if (ptype == 3) has_type_3 = true;
159
- valid_count++;
160
- }
161
- if (p11 >= 0.0) {
162
- int ptype = int(p11);
163
- if (ptype == 0) has_type_0 = true;
164
- else if (ptype == 1) has_type_1 = true;
165
- else if (ptype == 2) has_type_2 = true;
166
- else if (ptype == 3) has_type_3 = true;
167
- valid_count++;
168
- }
169
-
170
- if (valid_count == 0) discard_fragment();
171
-
172
- // Count how many unique types we have
173
- int unique_types = 0;
174
- if (has_type_0) unique_types++;
175
- if (has_type_1) unique_types++;
176
- if (has_type_2) unique_types++;
177
- if (has_type_3) unique_types++;
178
-
179
- if (unique_types == 1) {
180
- // ALL SAME TYPE - smooth interpolation across all valid pixels
181
- float total_value = 0.0;
182
- float total_weight = 0.0;
183
-
184
- if (p00 >= 0.0) {
185
- float weight = (1.0 - f.x) * (1.0 - f.y);
186
- total_value += v00 * weight;
187
- total_weight += weight;
188
- }
189
- if (p10 >= 0.0) {
190
- float weight = f.x * (1.0 - f.y);
191
- total_value += v10 * weight;
192
- total_weight += weight;
193
- }
194
- if (p01 >= 0.0) {
195
- float weight = (1.0 - f.x) * f.y;
196
- total_value += v01 * weight;
197
- total_weight += weight;
198
- }
199
- if (p11 >= 0.0) {
200
- float weight = f.x * f.y;
201
- total_value += v11 * weight;
202
- total_weight += weight;
203
- }
204
-
205
- if (total_weight <= 0.0) discard_fragment();
206
- raw_value = total_value / total_weight;
207
-
208
- } else {
209
- // MULTIPLE TYPES - weighted voting to determine dominant type
210
- float type_weight_0 = 0.0;
211
- float type_weight_1 = 0.0;
212
- float type_weight_2 = 0.0;
213
- float type_weight_3 = 0.0;
214
-
215
- if (p00 >= 0.0) {
216
- float w = (1.0 - f.x) * (1.0 - f.y);
217
- int ptype = int(p00);
218
- if (ptype == 0) type_weight_0 += w;
219
- else if (ptype == 1) type_weight_1 += w;
220
- else if (ptype == 2) type_weight_2 += w;
221
- else if (ptype == 3) type_weight_3 += w;
222
- }
223
- if (p10 >= 0.0) {
224
- float w = f.x * (1.0 - f.y);
225
- int ptype = int(p10);
226
- if (ptype == 0) type_weight_0 += w;
227
- else if (ptype == 1) type_weight_1 += w;
228
- else if (ptype == 2) type_weight_2 += w;
229
- else if (ptype == 3) type_weight_3 += w;
230
- }
231
- if (p01 >= 0.0) {
232
- float w = (1.0 - f.x) * f.y;
233
- int ptype = int(p01);
234
- if (ptype == 0) type_weight_0 += w;
235
- else if (ptype == 1) type_weight_1 += w;
236
- else if (ptype == 2) type_weight_2 += w;
237
- else if (ptype == 3) type_weight_3 += w;
238
- }
239
- if (p11 >= 0.0) {
240
- float w = f.x * f.y;
241
- int ptype = int(p11);
242
- if (ptype == 0) type_weight_0 += w;
243
- else if (ptype == 1) type_weight_1 += w;
244
- else if (ptype == 2) type_weight_2 += w;
245
- else if (ptype == 3) type_weight_3 += w;
246
- }
247
-
248
- // Find the type with the highest weight at this pixel location
249
- float max_type_weight = 0.0;
250
- float winning_type = -1.0;
251
- if (type_weight_0 > max_type_weight) { max_type_weight = type_weight_0; winning_type = 0.0; }
252
- if (type_weight_1 > max_type_weight) { max_type_weight = type_weight_1; winning_type = 1.0; }
253
- if (type_weight_2 > max_type_weight) { max_type_weight = type_weight_2; winning_type = 2.0; }
254
- if (type_weight_3 > max_type_weight) { max_type_weight = type_weight_3; winning_type = 3.0; }
255
-
256
- if (winning_type == -1.0) discard_fragment();
257
-
258
- // Now smoothly interpolate only among pixels of the winning type
259
- float total_value = 0.0;
260
- float total_weight = 0.0;
261
-
262
- if (p00 == winning_type) {
263
- float weight = (1.0 - f.x) * (1.0 - f.y);
264
- total_value += v00 * weight;
265
- total_weight += weight;
266
- }
267
- if (p10 == winning_type) {
268
- float weight = f.x * (1.0 - f.y);
269
- total_value += v10 * weight;
270
- total_weight += weight;
271
- }
272
- if (p01 == winning_type) {
273
- float weight = (1.0 - f.x) * f.y;
274
- total_value += v01 * weight;
275
- total_weight += weight;
276
- }
277
- if (p11 == winning_type) {
278
- float weight = f.x * f.y;
279
- total_value += v11 * weight;
280
- total_weight += weight;
281
- }
282
-
283
- if (total_weight <= 0.0) discard_fragment();
284
- raw_value = total_value / total_weight;
285
- }
286
-
287
- // Force full alpha to prevent dark borders between ptype regions
288
- alpha_multiplier = 1.0;
289
-
290
- } else {
291
- // --- STANDARD INTERPOLATION (CONTINUOUS) ---
292
- float v00_q = get_value(dataTexture, dataSampler, v00_coord, uniforms);
293
- float v10_q = get_value(dataTexture, dataSampler, v10_coord, uniforms);
294
- float v01_q = get_value(dataTexture, dataSampler, v01_coord, uniforms);
295
- float v11_q = get_value(dataTexture, dataSampler, v11_coord, uniforms);
296
-
297
- float total_value_q = 0.0;
298
- float total_weight = 0.0;
299
- if (v00_q < 99999.0) { float w = (1.0-f.x)*(1.0-f.y); total_value_q+=v00_q*w; total_weight+=w; }
300
- if (v10_q < 99999.0) { float w = f.x*(1.0-f.y); total_value_q+=v10_q*w; total_weight+=w; }
301
- if (v01_q < 99999.0) { float w = (1.0-f.x)*f.y; total_value_q+=v01_q*w; total_weight+=w; }
302
- if (v11_q < 99999.0) { float w = f.x*f.y; total_value_q+=v11_q*w; total_weight+=w; }
303
-
304
- if (total_weight <= 0.0) discard_fragment();
305
- raw_value = dequantize_val(total_value_q / total_weight, uniforms);
306
- alpha_multiplier = total_weight; // Feather the edges of the data
307
- }
308
- }
309
-
310
- // --- COMMON FINAL STEPS ---
311
-
312
- if (raw_value < uniforms.dataRange.x) {
313
- discard_fragment();
314
- }
315
-
316
- float colormap_coord = (raw_value - uniforms.dataRange.x) / (uniforms.dataRange.y - uniforms.dataRange.x);
317
- colormap_coord = clamp(colormap_coord, 0.0, 1.0);
318
-
319
- float4 color = colormapTexture.sample(colormapSampler, float2(colormap_coord, 0.5));
320
-
321
- // Discard if the colormap specifies transparency
322
- if (color.a < 0.1) {
323
- discard_fragment();
324
- }
325
-
326
- float final_alpha = color.a * uniforms.opacity * alpha_multiplier;
327
- return float4(color.rgb * final_alpha, final_alpha);
1
+ #include <metal_stdlib>
2
+ using namespace metal;
3
+
4
+ // Struct to match the vertex buffer layout in Swift
5
+ struct Vertex {
6
+ float2 position [[attribute(0)]];
7
+ float2 texCoord [[attribute(1)]];
8
+ };
9
+
10
+ // Struct for passing data from vertex to fragment shader
11
+ struct RasterizerData {
12
+ float4 position [[position]];
13
+ float2 texCoord;
14
+ };
15
+
16
+ // Uniforms passed from the CPU to the fragment shader
17
+ struct FragmentUniforms {
18
+ float opacity;
19
+ float2 dataRange;
20
+ float scale;
21
+ float offset;
22
+ float missingQuantized;
23
+ float2 textureSize;
24
+ int smoothing;
25
+ int scaleType;
26
+ int isPtype;
27
+ int isMRMS;
28
+ };
29
+
30
+ // --- Vertex Shader (Unchanged) ---
31
+ vertex RasterizerData vertex_main(const Vertex in [[stage_in]],
32
+ constant float4x4 &mvp [[buffer(1)]]) {
33
+ RasterizerData out;
34
+ out.position = mvp * float4(in.position, 0.0, 1.0);
35
+ out.texCoord = in.texCoord;
36
+ return out;
37
+ }
38
+
39
+
40
+ // --- HELPER FUNCTIONS FOR FRAGMENT SHADER ---
41
+
42
+ // Dequantizes a signed value (-127 to 127) into a physical value
43
+ float dequantize_val(float q_val, constant FragmentUniforms &uniforms) {
44
+ if (abs(q_val - uniforms.missingQuantized) < 0.5) {
45
+ return -9999.0;
46
+ }
47
+ float intermediate = q_val * uniforms.scale + uniforms.offset;
48
+ if (uniforms.scaleType == 1) { // 1 = sqrt
49
+ return intermediate * abs(intermediate);
50
+ }
51
+ return intermediate;
52
+ }
53
+
54
+ // Samples texture, converts 0-255 to signed -128-127 range.
55
+ // Returns a quantized value, or a large positive sentinel for missing data.
56
+ float get_value(texture2d<float, access::sample> dataTexture, sampler dataSampler, float2 coord, constant FragmentUniforms &uniforms) {
57
+ // Note: The sampler should be set to 'nearest' when calling this for ptype logic.
58
+ float value_0_to_255 = dataTexture.sample(dataSampler, coord).r * 255.0;
59
+ float val = value_0_to_255 - 128.0;
60
+ float missing_in_texture_range_0_255 = uniforms.missingQuantized + 128.0;
61
+ if (abs(value_0_to_255 - missing_in_texture_range_0_255) < 0.5) {
62
+ return 99999.0; // Sentinel for "missing"
63
+ }
64
+ return val;
65
+ }
66
+
67
+ // Maps a physical value to a precipitation type category
68
+ // Maps a physical value to a precipitation type category
69
+ float get_ptype_from_physical(float val, constant FragmentUniforms &uniforms) { // ADD uniforms parameter
70
+ if (val < 0.0) return -1.0;
71
+
72
+ // Models: 0-100 rain, 100-200 snow, 200-300 freezing rain, 300-400 ice pellets
73
+ if (val < 100.0) return 0.0;
74
+ if (val < 200.0) return 1.0;
75
+ if (val < 300.0) return 2.0;
76
+ if (val < 400.0) return 3.0;
77
+ return -1.0;
78
+ }
79
+
80
+ // --- Main Fragment Shader ---
81
+ fragment float4 fragment_main(RasterizerData in [[stage_in]],
82
+ constant FragmentUniforms &uniforms [[buffer(0)]],
83
+ texture2d<float, access::sample> dataTexture [[texture(0)]],
84
+ texture2d<float, access::sample> colormapTexture [[texture(1)]],
85
+ sampler dataSampler [[sampler(0)]],
86
+ sampler colormapSampler [[sampler(1)]])
87
+ {
88
+ float raw_value;
89
+ float alpha_multiplier = 1.0; // Used for alpha feathering at data edges
90
+
91
+ if (uniforms.smoothing == 0) { // Nearest neighbor
92
+ float quantized_value = get_value(dataTexture, dataSampler, in.texCoord, uniforms);
93
+ if (quantized_value >= 99999.0) {
94
+ discard_fragment();
95
+ }
96
+ raw_value = dequantize_val(quantized_value, uniforms);
97
+
98
+ } else { // Bilinear interpolation
99
+ float2 texel_size = 1.0 / uniforms.textureSize;
100
+ float2 tex_coord_in_texels = in.texCoord * uniforms.textureSize;
101
+ float2 bl_texel_index = floor(tex_coord_in_texels - 0.5);
102
+ float2 f = fract(tex_coord_in_texels - 0.5); // Interpolation factors
103
+
104
+ // Coordinates of the 4 neighboring texels
105
+ float2 v00_coord = (bl_texel_index + float2(0.5, 0.5)) * texel_size;
106
+ float2 v10_coord = (bl_texel_index + float2(1.5, 0.5)) * texel_size;
107
+ float2 v01_coord = (bl_texel_index + float2(0.5, 1.5)) * texel_size;
108
+ float2 v11_coord = (bl_texel_index + float2(1.5, 1.5)) * texel_size;
109
+
110
+ if (uniforms.isPtype == 1) {
111
+ // --- ENHANCED PTYPE-SPECIFIC INTERPOLATION ---
112
+ float v00 = dequantize_val(get_value(dataTexture, dataSampler, v00_coord, uniforms), uniforms);
113
+ float v10 = dequantize_val(get_value(dataTexture, dataSampler, v10_coord, uniforms), uniforms);
114
+ float v01 = dequantize_val(get_value(dataTexture, dataSampler, v01_coord, uniforms), uniforms);
115
+ float v11 = dequantize_val(get_value(dataTexture, dataSampler, v11_coord, uniforms), uniforms);
116
+
117
+ float p00 = get_ptype_from_physical(v00, uniforms);
118
+ float p10 = get_ptype_from_physical(v10, uniforms);
119
+ float p01 = get_ptype_from_physical(v01, uniforms);
120
+ float p11 = get_ptype_from_physical(v11, uniforms);
121
+
122
+ // Count unique valid precipitation types
123
+ bool has_type_0 = false;
124
+ bool has_type_1 = false;
125
+ bool has_type_2 = false;
126
+ bool has_type_3 = false;
127
+ int valid_count = 0;
128
+
129
+ if (p00 >= 0.0) {
130
+ int ptype = int(p00);
131
+ if (ptype == 0) has_type_0 = true;
132
+ else if (ptype == 1) has_type_1 = true;
133
+ else if (ptype == 2) has_type_2 = true;
134
+ else if (ptype == 3) has_type_3 = true;
135
+ valid_count++;
136
+ }
137
+ if (p10 >= 0.0) {
138
+ int ptype = int(p10);
139
+ if (ptype == 0) has_type_0 = true;
140
+ else if (ptype == 1) has_type_1 = true;
141
+ else if (ptype == 2) has_type_2 = true;
142
+ else if (ptype == 3) has_type_3 = true;
143
+ valid_count++;
144
+ }
145
+ if (p01 >= 0.0) {
146
+ int ptype = int(p01);
147
+ if (ptype == 0) has_type_0 = true;
148
+ else if (ptype == 1) has_type_1 = true;
149
+ else if (ptype == 2) has_type_2 = true;
150
+ else if (ptype == 3) has_type_3 = true;
151
+ valid_count++;
152
+ }
153
+ if (p11 >= 0.0) {
154
+ int ptype = int(p11);
155
+ if (ptype == 0) has_type_0 = true;
156
+ else if (ptype == 1) has_type_1 = true;
157
+ else if (ptype == 2) has_type_2 = true;
158
+ else if (ptype == 3) has_type_3 = true;
159
+ valid_count++;
160
+ }
161
+
162
+ if (valid_count == 0) discard_fragment();
163
+
164
+ // Count how many unique types we have
165
+ int unique_types = 0;
166
+ if (has_type_0) unique_types++;
167
+ if (has_type_1) unique_types++;
168
+ if (has_type_2) unique_types++;
169
+ if (has_type_3) unique_types++;
170
+
171
+ if (unique_types == 1) {
172
+ // ALL SAME TYPE - smooth interpolation across all valid pixels
173
+ float total_value = 0.0;
174
+ float total_weight = 0.0;
175
+
176
+ if (p00 >= 0.0) {
177
+ float weight = (1.0 - f.x) * (1.0 - f.y);
178
+ total_value += v00 * weight;
179
+ total_weight += weight;
180
+ }
181
+ if (p10 >= 0.0) {
182
+ float weight = f.x * (1.0 - f.y);
183
+ total_value += v10 * weight;
184
+ total_weight += weight;
185
+ }
186
+ if (p01 >= 0.0) {
187
+ float weight = (1.0 - f.x) * f.y;
188
+ total_value += v01 * weight;
189
+ total_weight += weight;
190
+ }
191
+ if (p11 >= 0.0) {
192
+ float weight = f.x * f.y;
193
+ total_value += v11 * weight;
194
+ total_weight += weight;
195
+ }
196
+
197
+ if (total_weight <= 0.0) discard_fragment();
198
+ raw_value = total_value / total_weight;
199
+
200
+ } else {
201
+ // MULTIPLE TYPES - weighted voting to determine dominant type
202
+ float type_weight_0 = 0.0;
203
+ float type_weight_1 = 0.0;
204
+ float type_weight_2 = 0.0;
205
+ float type_weight_3 = 0.0;
206
+
207
+ if (p00 >= 0.0) {
208
+ float w = (1.0 - f.x) * (1.0 - f.y);
209
+ int ptype = int(p00);
210
+ if (ptype == 0) type_weight_0 += w;
211
+ else if (ptype == 1) type_weight_1 += w;
212
+ else if (ptype == 2) type_weight_2 += w;
213
+ else if (ptype == 3) type_weight_3 += w;
214
+ }
215
+ if (p10 >= 0.0) {
216
+ float w = f.x * (1.0 - f.y);
217
+ int ptype = int(p10);
218
+ if (ptype == 0) type_weight_0 += w;
219
+ else if (ptype == 1) type_weight_1 += w;
220
+ else if (ptype == 2) type_weight_2 += w;
221
+ else if (ptype == 3) type_weight_3 += w;
222
+ }
223
+ if (p01 >= 0.0) {
224
+ float w = (1.0 - f.x) * f.y;
225
+ int ptype = int(p01);
226
+ if (ptype == 0) type_weight_0 += w;
227
+ else if (ptype == 1) type_weight_1 += w;
228
+ else if (ptype == 2) type_weight_2 += w;
229
+ else if (ptype == 3) type_weight_3 += w;
230
+ }
231
+ if (p11 >= 0.0) {
232
+ float w = f.x * f.y;
233
+ int ptype = int(p11);
234
+ if (ptype == 0) type_weight_0 += w;
235
+ else if (ptype == 1) type_weight_1 += w;
236
+ else if (ptype == 2) type_weight_2 += w;
237
+ else if (ptype == 3) type_weight_3 += w;
238
+ }
239
+
240
+ // Find the type with the highest weight at this pixel location
241
+ float max_type_weight = 0.0;
242
+ float winning_type = -1.0;
243
+ if (type_weight_0 > max_type_weight) { max_type_weight = type_weight_0; winning_type = 0.0; }
244
+ if (type_weight_1 > max_type_weight) { max_type_weight = type_weight_1; winning_type = 1.0; }
245
+ if (type_weight_2 > max_type_weight) { max_type_weight = type_weight_2; winning_type = 2.0; }
246
+ if (type_weight_3 > max_type_weight) { max_type_weight = type_weight_3; winning_type = 3.0; }
247
+
248
+ if (winning_type == -1.0) discard_fragment();
249
+
250
+ // Now smoothly interpolate only among pixels of the winning type
251
+ float total_value = 0.0;
252
+ float total_weight = 0.0;
253
+
254
+ if (p00 == winning_type) {
255
+ float weight = (1.0 - f.x) * (1.0 - f.y);
256
+ total_value += v00 * weight;
257
+ total_weight += weight;
258
+ }
259
+ if (p10 == winning_type) {
260
+ float weight = f.x * (1.0 - f.y);
261
+ total_value += v10 * weight;
262
+ total_weight += weight;
263
+ }
264
+ if (p01 == winning_type) {
265
+ float weight = (1.0 - f.x) * f.y;
266
+ total_value += v01 * weight;
267
+ total_weight += weight;
268
+ }
269
+ if (p11 == winning_type) {
270
+ float weight = f.x * f.y;
271
+ total_value += v11 * weight;
272
+ total_weight += weight;
273
+ }
274
+
275
+ if (total_weight <= 0.0) discard_fragment();
276
+ raw_value = total_value / total_weight;
277
+ }
278
+
279
+ // Force full alpha to prevent dark borders between ptype regions
280
+ alpha_multiplier = 1.0;
281
+
282
+ } else {
283
+ // --- STANDARD INTERPOLATION (CONTINUOUS) ---
284
+ float v00_q = get_value(dataTexture, dataSampler, v00_coord, uniforms);
285
+ float v10_q = get_value(dataTexture, dataSampler, v10_coord, uniforms);
286
+ float v01_q = get_value(dataTexture, dataSampler, v01_coord, uniforms);
287
+ float v11_q = get_value(dataTexture, dataSampler, v11_coord, uniforms);
288
+
289
+ float total_value_q = 0.0;
290
+ float total_weight = 0.0;
291
+ if (v00_q < 99999.0) { float w = (1.0-f.x)*(1.0-f.y); total_value_q+=v00_q*w; total_weight+=w; }
292
+ if (v10_q < 99999.0) { float w = f.x*(1.0-f.y); total_value_q+=v10_q*w; total_weight+=w; }
293
+ if (v01_q < 99999.0) { float w = (1.0-f.x)*f.y; total_value_q+=v01_q*w; total_weight+=w; }
294
+ if (v11_q < 99999.0) { float w = f.x*f.y; total_value_q+=v11_q*w; total_weight+=w; }
295
+
296
+ if (total_weight <= 0.0) discard_fragment();
297
+ raw_value = dequantize_val(total_value_q / total_weight, uniforms);
298
+ alpha_multiplier = total_weight; // Feather the edges of the data
299
+ }
300
+ }
301
+
302
+ // --- COMMON FINAL STEPS ---
303
+
304
+ if (raw_value < uniforms.dataRange.x) {
305
+ discard_fragment();
306
+ }
307
+
308
+ float colormap_coord = (raw_value - uniforms.dataRange.x) / (uniforms.dataRange.y - uniforms.dataRange.x);
309
+ colormap_coord = clamp(colormap_coord, 0.0, 1.0);
310
+
311
+ float4 color = colormapTexture.sample(colormapSampler, float2(colormap_coord, 0.5));
312
+
313
+ // Discard if the colormap specifies transparency
314
+ if (color.a < 0.1) {
315
+ discard_fragment();
316
+ }
317
+
318
+ float final_alpha = color.a * uniforms.opacity * alpha_multiplier;
319
+ return float4(color.rgb * final_alpha, final_alpha);
328
320
  }