react-native-google-maps-plus 0.1.0 → 1.0.0-dev.2

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 (197) hide show
  1. package/LICENSE +20 -0
  2. package/README.md +156 -0
  3. package/RNGoogleMapsPlus.podspec +34 -0
  4. package/android/CMakeLists.txt +32 -0
  5. package/android/build.gradle +135 -0
  6. package/android/fix-prefab.gradle +51 -0
  7. package/android/gradle.properties +8 -0
  8. package/android/src/main/AndroidManifest.xml +2 -0
  9. package/android/src/main/cpp/cpp-adapter.cpp +6 -0
  10. package/android/src/main/java/com/rngooglemapsplus/Color.kt +65 -0
  11. package/android/src/main/java/com/rngooglemapsplus/GoogleMapsViewImpl.kt +847 -0
  12. package/android/src/main/java/com/rngooglemapsplus/LocationHandler.kt +205 -0
  13. package/android/src/main/java/com/rngooglemapsplus/MapCircle.kt +29 -0
  14. package/android/src/main/java/com/rngooglemapsplus/MapMarker.kt +146 -0
  15. package/android/src/main/java/com/rngooglemapsplus/MapPolygon.kt +38 -0
  16. package/android/src/main/java/com/rngooglemapsplus/MapPolyline.kt +61 -0
  17. package/android/src/main/java/com/rngooglemapsplus/PermissionHandler.kt +116 -0
  18. package/android/src/main/java/com/rngooglemapsplus/PlayServicesHandler.kt +25 -0
  19. package/android/src/main/java/com/rngooglemapsplus/RNGoogleMapsPlusModule.kt +22 -0
  20. package/android/src/main/java/com/rngooglemapsplus/RNGoogleMapsPlusPackage.kt +35 -0
  21. package/android/src/main/java/com/rngooglemapsplus/RNGoogleMapsPlusView.kt +364 -0
  22. package/ios/Color.swift +109 -0
  23. package/ios/GoogleMapViewImpl.swift +645 -0
  24. package/ios/LocationHandler.swift +205 -0
  25. package/ios/MapCircle.swift +43 -0
  26. package/ios/MapHelper.swift +18 -0
  27. package/ios/MapMarker.swift +200 -0
  28. package/ios/MapPolygon.swift +58 -0
  29. package/ios/MapPolyline.swift +85 -0
  30. package/ios/PermissionHandler.swift +73 -0
  31. package/ios/RNGoogleMapsPlusModule.swift +27 -0
  32. package/ios/RNGoogleMapsPlusView.swift +391 -0
  33. package/lib/module/RNGoogleMapsPlusModule.nitro.js +4 -0
  34. package/lib/module/RNGoogleMapsPlusModule.nitro.js.map +1 -0
  35. package/lib/module/RNGoogleMapsPlusView.nitro.js +4 -0
  36. package/lib/module/RNGoogleMapsPlusView.nitro.js.map +1 -0
  37. package/lib/module/index.js +8 -0
  38. package/lib/module/index.js.map +1 -0
  39. package/lib/module/package.json +1 -0
  40. package/lib/module/types.js +78 -0
  41. package/lib/module/types.js.map +1 -0
  42. package/lib/typescript/package.json +1 -0
  43. package/lib/typescript/src/RNGoogleMapsPlusModule.nitro.d.ts +12 -0
  44. package/lib/typescript/src/RNGoogleMapsPlusModule.nitro.d.ts.map +1 -0
  45. package/lib/typescript/src/RNGoogleMapsPlusView.nitro.d.ts +39 -0
  46. package/lib/typescript/src/RNGoogleMapsPlusView.nitro.d.ts.map +1 -0
  47. package/lib/typescript/src/index.d.ts +7 -0
  48. package/lib/typescript/src/index.d.ts.map +1 -0
  49. package/lib/typescript/src/types.d.ts +131 -0
  50. package/lib/typescript/src/types.d.ts.map +1 -0
  51. package/nitro.json +28 -0
  52. package/nitrogen/generated/.gitattributes +1 -0
  53. package/nitrogen/generated/android/RNGoogleMapsPlus+autolinking.cmake +85 -0
  54. package/nitrogen/generated/android/RNGoogleMapsPlus+autolinking.gradle +27 -0
  55. package/nitrogen/generated/android/RNGoogleMapsPlusOnLoad.cpp +70 -0
  56. package/nitrogen/generated/android/RNGoogleMapsPlusOnLoad.hpp +25 -0
  57. package/nitrogen/generated/android/c++/JFunc_void_RNLatLng.hpp +76 -0
  58. package/nitrogen/generated/android/c++/JFunc_void_RNLocation.hpp +78 -0
  59. package/nitrogen/generated/android/c++/JFunc_void_RNLocationErrorCode.hpp +76 -0
  60. package/nitrogen/generated/android/c++/JFunc_void_RNMapErrorCode.hpp +76 -0
  61. package/nitrogen/generated/android/c++/JFunc_void_RNRegion_RNCamera_bool.hpp +81 -0
  62. package/nitrogen/generated/android/c++/JFunc_void_bool.hpp +74 -0
  63. package/nitrogen/generated/android/c++/JFunc_void_std__string.hpp +75 -0
  64. package/nitrogen/generated/android/c++/JHybridRNGoogleMapsPlusModuleSpec.cpp +83 -0
  65. package/nitrogen/generated/android/c++/JHybridRNGoogleMapsPlusModuleSpec.hpp +67 -0
  66. package/nitrogen/generated/android/c++/JHybridRNGoogleMapsPlusViewSpec.cpp +589 -0
  67. package/nitrogen/generated/android/c++/JHybridRNGoogleMapsPlusViewSpec.hpp +118 -0
  68. package/nitrogen/generated/android/c++/JRNAndroidLocationPermissionResult.hpp +62 -0
  69. package/nitrogen/generated/android/c++/JRNCamera.hpp +67 -0
  70. package/nitrogen/generated/android/c++/JRNCircle.hpp +84 -0
  71. package/nitrogen/generated/android/c++/JRNIOSPermissionResult.hpp +59 -0
  72. package/nitrogen/generated/android/c++/JRNInitialProps.hpp +66 -0
  73. package/nitrogen/generated/android/c++/JRNLatLng.hpp +57 -0
  74. package/nitrogen/generated/android/c++/JRNLineCapType.hpp +62 -0
  75. package/nitrogen/generated/android/c++/JRNLineJoinType.hpp +62 -0
  76. package/nitrogen/generated/android/c++/JRNLocation.hpp +58 -0
  77. package/nitrogen/generated/android/c++/JRNLocationErrorCode.hpp +71 -0
  78. package/nitrogen/generated/android/c++/JRNLocationPermissionResult.hpp +61 -0
  79. package/nitrogen/generated/android/c++/JRNMapErrorCode.hpp +74 -0
  80. package/nitrogen/generated/android/c++/JRNMapPadding.hpp +65 -0
  81. package/nitrogen/generated/android/c++/JRNMapType.hpp +68 -0
  82. package/nitrogen/generated/android/c++/JRNMarker.hpp +82 -0
  83. package/nitrogen/generated/android/c++/JRNPolygon.hpp +98 -0
  84. package/nitrogen/generated/android/c++/JRNPolyline.hpp +106 -0
  85. package/nitrogen/generated/android/c++/JRNPosition.hpp +57 -0
  86. package/nitrogen/generated/android/c++/JRNRegion.hpp +62 -0
  87. package/nitrogen/generated/android/c++/JRNUserInterfaceStyle.hpp +62 -0
  88. package/nitrogen/generated/android/c++/views/JHybridRNGoogleMapsPlusViewStateUpdater.cpp +152 -0
  89. package/nitrogen/generated/android/c++/views/JHybridRNGoogleMapsPlusViewStateUpdater.hpp +49 -0
  90. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/Func_void_RNLatLng.kt +81 -0
  91. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/Func_void_RNLocation.kt +81 -0
  92. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/Func_void_RNLocationErrorCode.kt +81 -0
  93. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/Func_void_RNMapErrorCode.kt +81 -0
  94. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/Func_void_RNRegion_RNCamera_bool.kt +81 -0
  95. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/Func_void_bool.kt +81 -0
  96. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/Func_void_std__string.kt +81 -0
  97. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/HybridRNGoogleMapsPlusModuleSpec.kt +64 -0
  98. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/HybridRNGoogleMapsPlusViewSpec.kt +317 -0
  99. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNAndroidLocationPermissionResult.kt +22 -0
  100. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNCamera.kt +38 -0
  101. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNCircle.kt +50 -0
  102. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNGoogleMapsPlusOnLoad.kt +35 -0
  103. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNIOSPermissionResult.kt +21 -0
  104. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNInitialProps.kt +35 -0
  105. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNLatLng.kt +32 -0
  106. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNLineCapType.kt +22 -0
  107. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNLineJoinType.kt +22 -0
  108. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNLocation.kt +32 -0
  109. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNLocationErrorCode.kt +25 -0
  110. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNLocationPermissionResult.kt +32 -0
  111. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNMapErrorCode.kt +26 -0
  112. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNMapPadding.kt +38 -0
  113. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNMapType.kt +24 -0
  114. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNMarker.kt +47 -0
  115. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNPolygon.kt +47 -0
  116. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNPolyline.kt +50 -0
  117. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNPosition.kt +32 -0
  118. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNRegion.kt +35 -0
  119. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNUserInterfaceStyle.kt +22 -0
  120. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/views/HybridRNGoogleMapsPlusViewManager.kt +56 -0
  121. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/views/HybridRNGoogleMapsPlusViewStateUpdater.kt +23 -0
  122. package/nitrogen/generated/ios/RNGoogleMapsPlus+autolinking.rb +60 -0
  123. package/nitrogen/generated/ios/RNGoogleMapsPlus-Swift-Cxx-Bridge.cpp +121 -0
  124. package/nitrogen/generated/ios/RNGoogleMapsPlus-Swift-Cxx-Bridge.hpp +792 -0
  125. package/nitrogen/generated/ios/RNGoogleMapsPlus-Swift-Cxx-Umbrella.hpp +113 -0
  126. package/nitrogen/generated/ios/RNGoogleMapsPlusAutolinking.mm +41 -0
  127. package/nitrogen/generated/ios/RNGoogleMapsPlusAutolinking.swift +40 -0
  128. package/nitrogen/generated/ios/c++/HybridRNGoogleMapsPlusModuleSpecSwift.cpp +11 -0
  129. package/nitrogen/generated/ios/c++/HybridRNGoogleMapsPlusModuleSpecSwift.hpp +102 -0
  130. package/nitrogen/generated/ios/c++/HybridRNGoogleMapsPlusViewSpecSwift.cpp +11 -0
  131. package/nitrogen/generated/ios/c++/HybridRNGoogleMapsPlusViewSpecSwift.hpp +342 -0
  132. package/nitrogen/generated/ios/c++/views/HybridRNGoogleMapsPlusViewComponent.mm +216 -0
  133. package/nitrogen/generated/ios/swift/Func_void_RNLatLng.swift +47 -0
  134. package/nitrogen/generated/ios/swift/Func_void_RNLocation.swift +47 -0
  135. package/nitrogen/generated/ios/swift/Func_void_RNLocationErrorCode.swift +47 -0
  136. package/nitrogen/generated/ios/swift/Func_void_RNLocationPermissionResult.swift +47 -0
  137. package/nitrogen/generated/ios/swift/Func_void_RNMapErrorCode.swift +47 -0
  138. package/nitrogen/generated/ios/swift/Func_void_RNRegion_RNCamera_bool.swift +47 -0
  139. package/nitrogen/generated/ios/swift/Func_void_bool.swift +47 -0
  140. package/nitrogen/generated/ios/swift/Func_void_std__exception_ptr.swift +47 -0
  141. package/nitrogen/generated/ios/swift/Func_void_std__string.swift +47 -0
  142. package/nitrogen/generated/ios/swift/HybridRNGoogleMapsPlusModuleSpec.swift +52 -0
  143. package/nitrogen/generated/ios/swift/HybridRNGoogleMapsPlusModuleSpec_cxx.swift +164 -0
  144. package/nitrogen/generated/ios/swift/HybridRNGoogleMapsPlusViewSpec.swift +78 -0
  145. package/nitrogen/generated/ios/swift/HybridRNGoogleMapsPlusViewSpec_cxx.swift +881 -0
  146. package/nitrogen/generated/ios/swift/RNAndroidLocationPermissionResult.swift +44 -0
  147. package/nitrogen/generated/ios/swift/RNCamera.swift +123 -0
  148. package/nitrogen/generated/ios/swift/RNCircle.swift +198 -0
  149. package/nitrogen/generated/ios/swift/RNIOSPermissionResult.swift +40 -0
  150. package/nitrogen/generated/ios/swift/RNInitialProps.swift +107 -0
  151. package/nitrogen/generated/ios/swift/RNLatLng.swift +46 -0
  152. package/nitrogen/generated/ios/swift/RNLineCapType.swift +44 -0
  153. package/nitrogen/generated/ios/swift/RNLineJoinType.swift +44 -0
  154. package/nitrogen/generated/ios/swift/RNLocation.swift +46 -0
  155. package/nitrogen/generated/ios/swift/RNLocationErrorCode.swift +56 -0
  156. package/nitrogen/generated/ios/swift/RNLocationPermissionResult.swift +70 -0
  157. package/nitrogen/generated/ios/swift/RNMapErrorCode.swift +60 -0
  158. package/nitrogen/generated/ios/swift/RNMapPadding.swift +68 -0
  159. package/nitrogen/generated/ios/swift/RNMapType.swift +52 -0
  160. package/nitrogen/generated/ios/swift/RNMarker.swift +132 -0
  161. package/nitrogen/generated/ios/swift/RNPolygon.swift +187 -0
  162. package/nitrogen/generated/ios/swift/RNPolyline.swift +203 -0
  163. package/nitrogen/generated/ios/swift/RNPosition.swift +46 -0
  164. package/nitrogen/generated/ios/swift/RNRegion.swift +57 -0
  165. package/nitrogen/generated/ios/swift/RNUserInterfaceStyle.swift +44 -0
  166. package/nitrogen/generated/shared/c++/HybridRNGoogleMapsPlusModuleSpec.cpp +24 -0
  167. package/nitrogen/generated/shared/c++/HybridRNGoogleMapsPlusModuleSpec.hpp +67 -0
  168. package/nitrogen/generated/shared/c++/HybridRNGoogleMapsPlusViewSpec.cpp +76 -0
  169. package/nitrogen/generated/shared/c++/HybridRNGoogleMapsPlusViewSpec.hpp +164 -0
  170. package/nitrogen/generated/shared/c++/RNAndroidLocationPermissionResult.hpp +67 -0
  171. package/nitrogen/generated/shared/c++/RNCamera.hpp +81 -0
  172. package/nitrogen/generated/shared/c++/RNCircle.hpp +98 -0
  173. package/nitrogen/generated/shared/c++/RNIOSPermissionResult.hpp +65 -0
  174. package/nitrogen/generated/shared/c++/RNInitialProps.hpp +78 -0
  175. package/nitrogen/generated/shared/c++/RNLatLng.hpp +71 -0
  176. package/nitrogen/generated/shared/c++/RNLineCapType.hpp +80 -0
  177. package/nitrogen/generated/shared/c++/RNLineJoinType.hpp +80 -0
  178. package/nitrogen/generated/shared/c++/RNLocation.hpp +72 -0
  179. package/nitrogen/generated/shared/c++/RNLocationErrorCode.hpp +73 -0
  180. package/nitrogen/generated/shared/c++/RNLocationPermissionResult.hpp +76 -0
  181. package/nitrogen/generated/shared/c++/RNMapErrorCode.hpp +67 -0
  182. package/nitrogen/generated/shared/c++/RNMapPadding.hpp +79 -0
  183. package/nitrogen/generated/shared/c++/RNMapType.hpp +88 -0
  184. package/nitrogen/generated/shared/c++/RNMarker.hpp +97 -0
  185. package/nitrogen/generated/shared/c++/RNPolygon.hpp +95 -0
  186. package/nitrogen/generated/shared/c++/RNPolyline.hpp +105 -0
  187. package/nitrogen/generated/shared/c++/RNPosition.hpp +71 -0
  188. package/nitrogen/generated/shared/c++/RNRegion.hpp +76 -0
  189. package/nitrogen/generated/shared/c++/RNUserInterfaceStyle.hpp +80 -0
  190. package/nitrogen/generated/shared/c++/views/HybridRNGoogleMapsPlusViewComponent.cpp +375 -0
  191. package/nitrogen/generated/shared/c++/views/HybridRNGoogleMapsPlusViewComponent.hpp +147 -0
  192. package/nitrogen/generated/shared/json/RNGoogleMapsPlusViewConfig.json +34 -0
  193. package/package.json +24 -8
  194. package/src/RNGoogleMapsPlusModule.nitro.ts +13 -0
  195. package/src/RNGoogleMapsPlusView.nitro.ts +86 -0
  196. package/src/index.tsx +24 -0
  197. package/src/types.ts +195 -0
@@ -0,0 +1,106 @@
1
+ ///
2
+ /// JRNPolyline.hpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © 2025 Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #pragma once
9
+
10
+ #include <fbjni/fbjni.h>
11
+ #include "RNPolyline.hpp"
12
+
13
+ #include "JRNLatLng.hpp"
14
+ #include "JRNLineCapType.hpp"
15
+ #include "JRNLineJoinType.hpp"
16
+ #include "RNLatLng.hpp"
17
+ #include "RNLineCapType.hpp"
18
+ #include "RNLineJoinType.hpp"
19
+ #include <optional>
20
+ #include <string>
21
+ #include <vector>
22
+
23
+ namespace margelo::nitro::rngooglemapsplus {
24
+
25
+ using namespace facebook;
26
+
27
+ /**
28
+ * The C++ JNI bridge between the C++ struct "RNPolyline" and the the Kotlin data class "RNPolyline".
29
+ */
30
+ struct JRNPolyline final: public jni::JavaClass<JRNPolyline> {
31
+ public:
32
+ static auto constexpr kJavaDescriptor = "Lcom/rngooglemapsplus/RNPolyline;";
33
+
34
+ public:
35
+ /**
36
+ * Convert this Java/Kotlin-based struct to the C++ struct RNPolyline by copying all values to C++.
37
+ */
38
+ [[maybe_unused]]
39
+ [[nodiscard]]
40
+ RNPolyline toCpp() const {
41
+ static const auto clazz = javaClassStatic();
42
+ static const auto fieldId = clazz->getField<jni::JString>("id");
43
+ jni::local_ref<jni::JString> id = this->getFieldValue(fieldId);
44
+ static const auto fieldZIndex = clazz->getField<jni::JDouble>("zIndex");
45
+ jni::local_ref<jni::JDouble> zIndex = this->getFieldValue(fieldZIndex);
46
+ static const auto fieldPressable = clazz->getField<jni::JBoolean>("pressable");
47
+ jni::local_ref<jni::JBoolean> pressable = this->getFieldValue(fieldPressable);
48
+ static const auto fieldCoordinates = clazz->getField<jni::JArrayClass<JRNLatLng>>("coordinates");
49
+ jni::local_ref<jni::JArrayClass<JRNLatLng>> coordinates = this->getFieldValue(fieldCoordinates);
50
+ static const auto fieldLineCap = clazz->getField<JRNLineCapType>("lineCap");
51
+ jni::local_ref<JRNLineCapType> lineCap = this->getFieldValue(fieldLineCap);
52
+ static const auto fieldLineJoin = clazz->getField<JRNLineJoinType>("lineJoin");
53
+ jni::local_ref<JRNLineJoinType> lineJoin = this->getFieldValue(fieldLineJoin);
54
+ static const auto fieldColor = clazz->getField<jni::JString>("color");
55
+ jni::local_ref<jni::JString> color = this->getFieldValue(fieldColor);
56
+ static const auto fieldWidth = clazz->getField<jni::JDouble>("width");
57
+ jni::local_ref<jni::JDouble> width = this->getFieldValue(fieldWidth);
58
+ return RNPolyline(
59
+ id->toStdString(),
60
+ zIndex != nullptr ? std::make_optional(zIndex->value()) : std::nullopt,
61
+ pressable != nullptr ? std::make_optional(static_cast<bool>(pressable->value())) : std::nullopt,
62
+ [&]() {
63
+ size_t __size = coordinates->size();
64
+ std::vector<RNLatLng> __vector;
65
+ __vector.reserve(__size);
66
+ for (size_t __i = 0; __i < __size; __i++) {
67
+ auto __element = coordinates->getElement(__i);
68
+ __vector.push_back(__element->toCpp());
69
+ }
70
+ return __vector;
71
+ }(),
72
+ lineCap != nullptr ? std::make_optional(lineCap->toCpp()) : std::nullopt,
73
+ lineJoin != nullptr ? std::make_optional(lineJoin->toCpp()) : std::nullopt,
74
+ color != nullptr ? std::make_optional(color->toStdString()) : std::nullopt,
75
+ width != nullptr ? std::make_optional(width->value()) : std::nullopt
76
+ );
77
+ }
78
+
79
+ public:
80
+ /**
81
+ * Create a Java/Kotlin-based struct by copying all values from the given C++ struct to Java.
82
+ */
83
+ [[maybe_unused]]
84
+ static jni::local_ref<JRNPolyline::javaobject> fromCpp(const RNPolyline& value) {
85
+ return newInstance(
86
+ jni::make_jstring(value.id),
87
+ value.zIndex.has_value() ? jni::JDouble::valueOf(value.zIndex.value()) : nullptr,
88
+ value.pressable.has_value() ? jni::JBoolean::valueOf(value.pressable.value()) : nullptr,
89
+ [&]() {
90
+ size_t __size = value.coordinates.size();
91
+ jni::local_ref<jni::JArrayClass<JRNLatLng>> __array = jni::JArrayClass<JRNLatLng>::newArray(__size);
92
+ for (size_t __i = 0; __i < __size; __i++) {
93
+ const auto& __element = value.coordinates[__i];
94
+ __array->setElement(__i, *JRNLatLng::fromCpp(__element));
95
+ }
96
+ return __array;
97
+ }(),
98
+ value.lineCap.has_value() ? JRNLineCapType::fromCpp(value.lineCap.value()) : nullptr,
99
+ value.lineJoin.has_value() ? JRNLineJoinType::fromCpp(value.lineJoin.value()) : nullptr,
100
+ value.color.has_value() ? jni::make_jstring(value.color.value()) : nullptr,
101
+ value.width.has_value() ? jni::JDouble::valueOf(value.width.value()) : nullptr
102
+ );
103
+ }
104
+ };
105
+
106
+ } // namespace margelo::nitro::rngooglemapsplus
@@ -0,0 +1,57 @@
1
+ ///
2
+ /// JRNPosition.hpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © 2025 Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #pragma once
9
+
10
+ #include <fbjni/fbjni.h>
11
+ #include "RNPosition.hpp"
12
+
13
+
14
+
15
+ namespace margelo::nitro::rngooglemapsplus {
16
+
17
+ using namespace facebook;
18
+
19
+ /**
20
+ * The C++ JNI bridge between the C++ struct "RNPosition" and the the Kotlin data class "RNPosition".
21
+ */
22
+ struct JRNPosition final: public jni::JavaClass<JRNPosition> {
23
+ public:
24
+ static auto constexpr kJavaDescriptor = "Lcom/rngooglemapsplus/RNPosition;";
25
+
26
+ public:
27
+ /**
28
+ * Convert this Java/Kotlin-based struct to the C++ struct RNPosition by copying all values to C++.
29
+ */
30
+ [[maybe_unused]]
31
+ [[nodiscard]]
32
+ RNPosition toCpp() const {
33
+ static const auto clazz = javaClassStatic();
34
+ static const auto fieldX = clazz->getField<double>("x");
35
+ double x = this->getFieldValue(fieldX);
36
+ static const auto fieldY = clazz->getField<double>("y");
37
+ double y = this->getFieldValue(fieldY);
38
+ return RNPosition(
39
+ x,
40
+ y
41
+ );
42
+ }
43
+
44
+ public:
45
+ /**
46
+ * Create a Java/Kotlin-based struct by copying all values from the given C++ struct to Java.
47
+ */
48
+ [[maybe_unused]]
49
+ static jni::local_ref<JRNPosition::javaobject> fromCpp(const RNPosition& value) {
50
+ return newInstance(
51
+ value.x,
52
+ value.y
53
+ );
54
+ }
55
+ };
56
+
57
+ } // namespace margelo::nitro::rngooglemapsplus
@@ -0,0 +1,62 @@
1
+ ///
2
+ /// JRNRegion.hpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © 2025 Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #pragma once
9
+
10
+ #include <fbjni/fbjni.h>
11
+ #include "RNRegion.hpp"
12
+
13
+ #include "JRNLatLng.hpp"
14
+ #include "RNLatLng.hpp"
15
+
16
+ namespace margelo::nitro::rngooglemapsplus {
17
+
18
+ using namespace facebook;
19
+
20
+ /**
21
+ * The C++ JNI bridge between the C++ struct "RNRegion" and the the Kotlin data class "RNRegion".
22
+ */
23
+ struct JRNRegion final: public jni::JavaClass<JRNRegion> {
24
+ public:
25
+ static auto constexpr kJavaDescriptor = "Lcom/rngooglemapsplus/RNRegion;";
26
+
27
+ public:
28
+ /**
29
+ * Convert this Java/Kotlin-based struct to the C++ struct RNRegion by copying all values to C++.
30
+ */
31
+ [[maybe_unused]]
32
+ [[nodiscard]]
33
+ RNRegion toCpp() const {
34
+ static const auto clazz = javaClassStatic();
35
+ static const auto fieldCenter = clazz->getField<JRNLatLng>("center");
36
+ jni::local_ref<JRNLatLng> center = this->getFieldValue(fieldCenter);
37
+ static const auto fieldLatitudeDelta = clazz->getField<double>("latitudeDelta");
38
+ double latitudeDelta = this->getFieldValue(fieldLatitudeDelta);
39
+ static const auto fieldLongitudeDelta = clazz->getField<double>("longitudeDelta");
40
+ double longitudeDelta = this->getFieldValue(fieldLongitudeDelta);
41
+ return RNRegion(
42
+ center->toCpp(),
43
+ latitudeDelta,
44
+ longitudeDelta
45
+ );
46
+ }
47
+
48
+ public:
49
+ /**
50
+ * Create a Java/Kotlin-based struct by copying all values from the given C++ struct to Java.
51
+ */
52
+ [[maybe_unused]]
53
+ static jni::local_ref<JRNRegion::javaobject> fromCpp(const RNRegion& value) {
54
+ return newInstance(
55
+ JRNLatLng::fromCpp(value.center),
56
+ value.latitudeDelta,
57
+ value.longitudeDelta
58
+ );
59
+ }
60
+ };
61
+
62
+ } // namespace margelo::nitro::rngooglemapsplus
@@ -0,0 +1,62 @@
1
+ ///
2
+ /// JRNUserInterfaceStyle.hpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © 2025 Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #pragma once
9
+
10
+ #include <fbjni/fbjni.h>
11
+ #include "RNUserInterfaceStyle.hpp"
12
+
13
+ namespace margelo::nitro::rngooglemapsplus {
14
+
15
+ using namespace facebook;
16
+
17
+ /**
18
+ * The C++ JNI bridge between the C++ enum "RNUserInterfaceStyle" and the the Kotlin enum "RNUserInterfaceStyle".
19
+ */
20
+ struct JRNUserInterfaceStyle final: public jni::JavaClass<JRNUserInterfaceStyle> {
21
+ public:
22
+ static auto constexpr kJavaDescriptor = "Lcom/rngooglemapsplus/RNUserInterfaceStyle;";
23
+
24
+ public:
25
+ /**
26
+ * Convert this Java/Kotlin-based enum to the C++ enum RNUserInterfaceStyle.
27
+ */
28
+ [[maybe_unused]]
29
+ [[nodiscard]]
30
+ RNUserInterfaceStyle toCpp() const {
31
+ static const auto clazz = javaClassStatic();
32
+ static const auto fieldOrdinal = clazz->getField<int>("value");
33
+ int ordinal = this->getFieldValue(fieldOrdinal);
34
+ return static_cast<RNUserInterfaceStyle>(ordinal);
35
+ }
36
+
37
+ public:
38
+ /**
39
+ * Create a Java/Kotlin-based enum with the given C++ enum's value.
40
+ */
41
+ [[maybe_unused]]
42
+ static jni::alias_ref<JRNUserInterfaceStyle> fromCpp(RNUserInterfaceStyle value) {
43
+ static const auto clazz = javaClassStatic();
44
+ static const auto fieldLIGHT = clazz->getStaticField<JRNUserInterfaceStyle>("LIGHT");
45
+ static const auto fieldDARK = clazz->getStaticField<JRNUserInterfaceStyle>("DARK");
46
+ static const auto fieldDEFAULT = clazz->getStaticField<JRNUserInterfaceStyle>("DEFAULT");
47
+
48
+ switch (value) {
49
+ case RNUserInterfaceStyle::LIGHT:
50
+ return clazz->getStaticFieldValue(fieldLIGHT);
51
+ case RNUserInterfaceStyle::DARK:
52
+ return clazz->getStaticFieldValue(fieldDARK);
53
+ case RNUserInterfaceStyle::DEFAULT:
54
+ return clazz->getStaticFieldValue(fieldDEFAULT);
55
+ default:
56
+ std::string stringValue = std::to_string(static_cast<int>(value));
57
+ throw std::invalid_argument("Invalid enum value (" + stringValue + "!");
58
+ }
59
+ }
60
+ };
61
+
62
+ } // namespace margelo::nitro::rngooglemapsplus
@@ -0,0 +1,152 @@
1
+ ///
2
+ /// JHybridRNGoogleMapsPlusViewStateUpdater.cpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © 2025 Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #include "JHybridRNGoogleMapsPlusViewStateUpdater.hpp"
9
+ #include "views/HybridRNGoogleMapsPlusViewComponent.hpp"
10
+ #include <NitroModules/NitroDefines.hpp>
11
+
12
+ namespace margelo::nitro::rngooglemapsplus::views {
13
+
14
+ using namespace facebook;
15
+ using ConcreteStateData = react::ConcreteState<HybridRNGoogleMapsPlusViewState>;
16
+
17
+ void JHybridRNGoogleMapsPlusViewStateUpdater::updateViewProps(jni::alias_ref<jni::JClass> /* class */,
18
+ jni::alias_ref<JHybridRNGoogleMapsPlusViewSpec::javaobject> javaView,
19
+ jni::alias_ref<JStateWrapper::javaobject> stateWrapperInterface) {
20
+ JHybridRNGoogleMapsPlusViewSpec* view = javaView->cthis();
21
+
22
+ // Get concrete StateWrapperImpl from passed StateWrapper interface object
23
+ jobject rawStateWrapper = stateWrapperInterface.get();
24
+ if (!stateWrapperInterface->isInstanceOf(react::StateWrapperImpl::javaClassStatic())) {
25
+ throw std::runtime_error("StateWrapper is not a StateWrapperImpl");
26
+ }
27
+ auto stateWrapper = jni::alias_ref<react::StateWrapperImpl::javaobject>{
28
+ static_cast<react::StateWrapperImpl::javaobject>(rawStateWrapper)};
29
+
30
+ std::shared_ptr<const react::State> state = stateWrapper->cthis()->getState();
31
+ auto concreteState = std::dynamic_pointer_cast<const ConcreteStateData>(state);
32
+ const HybridRNGoogleMapsPlusViewState& data = concreteState->getData();
33
+ const std::optional<HybridRNGoogleMapsPlusViewProps>& maybeProps = data.getProps();
34
+ if (!maybeProps.has_value()) {
35
+ // Props aren't set yet!
36
+ throw std::runtime_error("HybridRNGoogleMapsPlusViewState's data doesn't contain any props!");
37
+ }
38
+ const HybridRNGoogleMapsPlusViewProps& props = maybeProps.value();
39
+ if (props.initialProps.isDirty) {
40
+ view->setInitialProps(props.initialProps.value);
41
+ // TODO: Set isDirty = false
42
+ }
43
+ if (props.buildingEnabled.isDirty) {
44
+ view->setBuildingEnabled(props.buildingEnabled.value);
45
+ // TODO: Set isDirty = false
46
+ }
47
+ if (props.trafficEnabled.isDirty) {
48
+ view->setTrafficEnabled(props.trafficEnabled.value);
49
+ // TODO: Set isDirty = false
50
+ }
51
+ if (props.customMapStyle.isDirty) {
52
+ view->setCustomMapStyle(props.customMapStyle.value);
53
+ // TODO: Set isDirty = false
54
+ }
55
+ if (props.userInterfaceStyle.isDirty) {
56
+ view->setUserInterfaceStyle(props.userInterfaceStyle.value);
57
+ // TODO: Set isDirty = false
58
+ }
59
+ if (props.minZoomLevel.isDirty) {
60
+ view->setMinZoomLevel(props.minZoomLevel.value);
61
+ // TODO: Set isDirty = false
62
+ }
63
+ if (props.maxZoomLevel.isDirty) {
64
+ view->setMaxZoomLevel(props.maxZoomLevel.value);
65
+ // TODO: Set isDirty = false
66
+ }
67
+ if (props.mapPadding.isDirty) {
68
+ view->setMapPadding(props.mapPadding.value);
69
+ // TODO: Set isDirty = false
70
+ }
71
+ if (props.mapType.isDirty) {
72
+ view->setMapType(props.mapType.value);
73
+ // TODO: Set isDirty = false
74
+ }
75
+ if (props.markers.isDirty) {
76
+ view->setMarkers(props.markers.value);
77
+ // TODO: Set isDirty = false
78
+ }
79
+ if (props.polygons.isDirty) {
80
+ view->setPolygons(props.polygons.value);
81
+ // TODO: Set isDirty = false
82
+ }
83
+ if (props.polylines.isDirty) {
84
+ view->setPolylines(props.polylines.value);
85
+ // TODO: Set isDirty = false
86
+ }
87
+ if (props.circles.isDirty) {
88
+ view->setCircles(props.circles.value);
89
+ // TODO: Set isDirty = false
90
+ }
91
+ if (props.onMapError.isDirty) {
92
+ view->setOnMapError(props.onMapError.value);
93
+ // TODO: Set isDirty = false
94
+ }
95
+ if (props.onMapReady.isDirty) {
96
+ view->setOnMapReady(props.onMapReady.value);
97
+ // TODO: Set isDirty = false
98
+ }
99
+ if (props.onLocationUpdate.isDirty) {
100
+ view->setOnLocationUpdate(props.onLocationUpdate.value);
101
+ // TODO: Set isDirty = false
102
+ }
103
+ if (props.onLocationError.isDirty) {
104
+ view->setOnLocationError(props.onLocationError.value);
105
+ // TODO: Set isDirty = false
106
+ }
107
+ if (props.onMapPress.isDirty) {
108
+ view->setOnMapPress(props.onMapPress.value);
109
+ // TODO: Set isDirty = false
110
+ }
111
+ if (props.onMarkerPress.isDirty) {
112
+ view->setOnMarkerPress(props.onMarkerPress.value);
113
+ // TODO: Set isDirty = false
114
+ }
115
+ if (props.onPolylinePress.isDirty) {
116
+ view->setOnPolylinePress(props.onPolylinePress.value);
117
+ // TODO: Set isDirty = false
118
+ }
119
+ if (props.onPolygonPress.isDirty) {
120
+ view->setOnPolygonPress(props.onPolygonPress.value);
121
+ // TODO: Set isDirty = false
122
+ }
123
+ if (props.onCirclePress.isDirty) {
124
+ view->setOnCirclePress(props.onCirclePress.value);
125
+ // TODO: Set isDirty = false
126
+ }
127
+ if (props.onCameraChangeStart.isDirty) {
128
+ view->setOnCameraChangeStart(props.onCameraChangeStart.value);
129
+ // TODO: Set isDirty = false
130
+ }
131
+ if (props.onCameraChange.isDirty) {
132
+ view->setOnCameraChange(props.onCameraChange.value);
133
+ // TODO: Set isDirty = false
134
+ }
135
+ if (props.onCameraChangeComplete.isDirty) {
136
+ view->setOnCameraChangeComplete(props.onCameraChangeComplete.value);
137
+ // TODO: Set isDirty = false
138
+ }
139
+
140
+ // Update hybridRef if it changed
141
+ if (props.hybridRef.isDirty) {
142
+ // hybridRef changed - call it with new this
143
+ const auto& maybeFunc = props.hybridRef.value;
144
+ if (maybeFunc.has_value()) {
145
+ std::shared_ptr<JHybridRNGoogleMapsPlusViewSpec> shared = javaView->cthis()->shared_cast<JHybridRNGoogleMapsPlusViewSpec>();
146
+ maybeFunc.value()(shared);
147
+ }
148
+ // TODO: Set isDirty = false
149
+ }
150
+ }
151
+
152
+ } // namespace margelo::nitro::rngooglemapsplus::views
@@ -0,0 +1,49 @@
1
+ ///
2
+ /// JHybridRNGoogleMapsPlusViewStateUpdater.hpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © 2025 Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #pragma once
9
+
10
+ #ifndef RN_SERIALIZABLE_STATE
11
+ #error RNGoogleMapsPlus was compiled without the 'RN_SERIALIZABLE_STATE' flag. This flag is required for Nitro Views - set it in your CMakeLists!
12
+ #endif
13
+
14
+ #include <fbjni/fbjni.h>
15
+ #include <react/fabric/StateWrapperImpl.h>
16
+ #include <react/fabric/CoreComponentsRegistry.h>
17
+ #include <react/renderer/core/ConcreteComponentDescriptor.h>
18
+ #include <NitroModules/NitroDefines.hpp>
19
+ #include <NitroModules/JStateWrapper.hpp>
20
+ #include "JHybridRNGoogleMapsPlusViewSpec.hpp"
21
+ #include "views/HybridRNGoogleMapsPlusViewComponent.hpp"
22
+
23
+ namespace margelo::nitro::rngooglemapsplus::views {
24
+
25
+ using namespace facebook;
26
+
27
+ class JHybridRNGoogleMapsPlusViewStateUpdater: public jni::JavaClass<JHybridRNGoogleMapsPlusViewStateUpdater> {
28
+ public:
29
+ static constexpr auto kJavaDescriptor = "Lcom/rngooglemapsplus/views/HybridRNGoogleMapsPlusViewStateUpdater;";
30
+
31
+ public:
32
+ static void updateViewProps(jni::alias_ref<jni::JClass> /* class */,
33
+ jni::alias_ref<JHybridRNGoogleMapsPlusViewSpec::javaobject> view,
34
+ jni::alias_ref<JStateWrapper::javaobject> stateWrapperInterface);
35
+
36
+ public:
37
+ static void registerNatives() {
38
+ // Register JNI calls
39
+ javaClassStatic()->registerNatives({
40
+ makeNativeMethod("updateViewProps", JHybridRNGoogleMapsPlusViewStateUpdater::updateViewProps),
41
+ });
42
+ // Register React Native view component descriptor
43
+ auto provider = react::concreteComponentDescriptorProvider<HybridRNGoogleMapsPlusViewComponentDescriptor>();
44
+ auto providerRegistry = react::CoreComponentsRegistry::sharedProviderRegistry();
45
+ providerRegistry->add(provider);
46
+ }
47
+ };
48
+
49
+ } // namespace margelo::nitro::rngooglemapsplus::views
@@ -0,0 +1,81 @@
1
+ ///
2
+ /// Func_void_RNLatLng.kt
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © 2025 Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ package com.rngooglemapsplus
9
+
10
+ import androidx.annotation.Keep
11
+ import com.facebook.jni.HybridData
12
+ import com.facebook.proguard.annotations.DoNotStrip
13
+ import com.margelo.nitro.core.*
14
+ import dalvik.annotation.optimization.FastNative
15
+
16
+
17
+ /**
18
+ * Represents the JavaScript callback `(coordinate: struct) => void`.
19
+ * This can be either implemented in C++ (in which case it might be a callback coming from JS),
20
+ * or in Kotlin/Java (in which case it is a native callback).
21
+ */
22
+ @DoNotStrip
23
+ @Keep
24
+ @Suppress("ClassName", "RedundantUnitReturnType")
25
+ fun interface Func_void_RNLatLng: (RNLatLng) -> Unit {
26
+ /**
27
+ * Call the given JS callback.
28
+ * @throws Throwable if the JS function itself throws an error, or if the JS function/runtime has already been deleted.
29
+ */
30
+ @DoNotStrip
31
+ @Keep
32
+ override fun invoke(coordinate: RNLatLng): Unit
33
+ }
34
+
35
+ /**
36
+ * Represents the JavaScript callback `(coordinate: struct) => void`.
37
+ * This is implemented in C++, via a `std::function<...>`.
38
+ * The callback might be coming from JS.
39
+ */
40
+ @DoNotStrip
41
+ @Keep
42
+ @Suppress(
43
+ "KotlinJniMissingFunction", "unused",
44
+ "RedundantSuppression", "RedundantUnitReturnType", "FunctionName",
45
+ "ConvertSecondaryConstructorToPrimary", "ClassName", "LocalVariableName",
46
+ )
47
+ class Func_void_RNLatLng_cxx: Func_void_RNLatLng {
48
+ @DoNotStrip
49
+ @Keep
50
+ private val mHybridData: HybridData
51
+
52
+ @DoNotStrip
53
+ @Keep
54
+ private constructor(hybridData: HybridData) {
55
+ mHybridData = hybridData
56
+ }
57
+
58
+ @DoNotStrip
59
+ @Keep
60
+ override fun invoke(coordinate: RNLatLng): Unit
61
+ = invoke_cxx(coordinate)
62
+
63
+ @FastNative
64
+ private external fun invoke_cxx(coordinate: RNLatLng): Unit
65
+ }
66
+
67
+ /**
68
+ * Represents the JavaScript callback `(coordinate: struct) => void`.
69
+ * This is implemented in Java/Kotlin, via a `(RNLatLng) -> Unit`.
70
+ * The callback is always coming from native.
71
+ */
72
+ @DoNotStrip
73
+ @Keep
74
+ @Suppress("ClassName", "RedundantUnitReturnType", "unused")
75
+ class Func_void_RNLatLng_java(private val function: (RNLatLng) -> Unit): Func_void_RNLatLng {
76
+ @DoNotStrip
77
+ @Keep
78
+ override fun invoke(coordinate: RNLatLng): Unit {
79
+ return this.function(coordinate)
80
+ }
81
+ }
@@ -0,0 +1,81 @@
1
+ ///
2
+ /// Func_void_RNLocation.kt
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © 2025 Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ package com.rngooglemapsplus
9
+
10
+ import androidx.annotation.Keep
11
+ import com.facebook.jni.HybridData
12
+ import com.facebook.proguard.annotations.DoNotStrip
13
+ import com.margelo.nitro.core.*
14
+ import dalvik.annotation.optimization.FastNative
15
+
16
+
17
+ /**
18
+ * Represents the JavaScript callback `(location: struct) => void`.
19
+ * This can be either implemented in C++ (in which case it might be a callback coming from JS),
20
+ * or in Kotlin/Java (in which case it is a native callback).
21
+ */
22
+ @DoNotStrip
23
+ @Keep
24
+ @Suppress("ClassName", "RedundantUnitReturnType")
25
+ fun interface Func_void_RNLocation: (RNLocation) -> Unit {
26
+ /**
27
+ * Call the given JS callback.
28
+ * @throws Throwable if the JS function itself throws an error, or if the JS function/runtime has already been deleted.
29
+ */
30
+ @DoNotStrip
31
+ @Keep
32
+ override fun invoke(location: RNLocation): Unit
33
+ }
34
+
35
+ /**
36
+ * Represents the JavaScript callback `(location: struct) => void`.
37
+ * This is implemented in C++, via a `std::function<...>`.
38
+ * The callback might be coming from JS.
39
+ */
40
+ @DoNotStrip
41
+ @Keep
42
+ @Suppress(
43
+ "KotlinJniMissingFunction", "unused",
44
+ "RedundantSuppression", "RedundantUnitReturnType", "FunctionName",
45
+ "ConvertSecondaryConstructorToPrimary", "ClassName", "LocalVariableName",
46
+ )
47
+ class Func_void_RNLocation_cxx: Func_void_RNLocation {
48
+ @DoNotStrip
49
+ @Keep
50
+ private val mHybridData: HybridData
51
+
52
+ @DoNotStrip
53
+ @Keep
54
+ private constructor(hybridData: HybridData) {
55
+ mHybridData = hybridData
56
+ }
57
+
58
+ @DoNotStrip
59
+ @Keep
60
+ override fun invoke(location: RNLocation): Unit
61
+ = invoke_cxx(location)
62
+
63
+ @FastNative
64
+ private external fun invoke_cxx(location: RNLocation): Unit
65
+ }
66
+
67
+ /**
68
+ * Represents the JavaScript callback `(location: struct) => void`.
69
+ * This is implemented in Java/Kotlin, via a `(RNLocation) -> Unit`.
70
+ * The callback is always coming from native.
71
+ */
72
+ @DoNotStrip
73
+ @Keep
74
+ @Suppress("ClassName", "RedundantUnitReturnType", "unused")
75
+ class Func_void_RNLocation_java(private val function: (RNLocation) -> Unit): Func_void_RNLocation {
76
+ @DoNotStrip
77
+ @Keep
78
+ override fun invoke(location: RNLocation): Unit {
79
+ return this.function(location)
80
+ }
81
+ }