react-native-google-maps-plus 1.0.0 → 1.0.1

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 (130) hide show
  1. package/nitrogen/generated/.gitattributes +1 -0
  2. package/nitrogen/generated/android/GoogleMapsNitro+autolinking.cmake +85 -0
  3. package/nitrogen/generated/android/GoogleMapsNitro+autolinking.gradle +27 -0
  4. package/nitrogen/generated/android/GoogleMapsNitroOnLoad.cpp +70 -0
  5. package/nitrogen/generated/android/GoogleMapsNitroOnLoad.hpp +25 -0
  6. package/nitrogen/generated/android/c++/JFunc_void_RNLatLng.hpp +76 -0
  7. package/nitrogen/generated/android/c++/JFunc_void_RNLocation.hpp +78 -0
  8. package/nitrogen/generated/android/c++/JFunc_void_RNLocationErrorCode.hpp +76 -0
  9. package/nitrogen/generated/android/c++/JFunc_void_RNMapErrorCode.hpp +76 -0
  10. package/nitrogen/generated/android/c++/JFunc_void_RNRegion_RNCamera_bool.hpp +81 -0
  11. package/nitrogen/generated/android/c++/JFunc_void_bool.hpp +74 -0
  12. package/nitrogen/generated/android/c++/JFunc_void_std__string.hpp +75 -0
  13. package/nitrogen/generated/android/c++/JHybridGoogleMapsNitroModuleSpec.cpp +83 -0
  14. package/nitrogen/generated/android/c++/JHybridGoogleMapsNitroModuleSpec.hpp +67 -0
  15. package/nitrogen/generated/android/c++/JHybridGoogleMapsNitroViewSpec.cpp +485 -0
  16. package/nitrogen/generated/android/c++/JHybridGoogleMapsNitroViewSpec.hpp +108 -0
  17. package/nitrogen/generated/android/c++/JRNAndroidLocationPermissionResult.hpp +62 -0
  18. package/nitrogen/generated/android/c++/JRNCamera.hpp +67 -0
  19. package/nitrogen/generated/android/c++/JRNIOSPermissionResult.hpp +59 -0
  20. package/nitrogen/generated/android/c++/JRNLatLng.hpp +57 -0
  21. package/nitrogen/generated/android/c++/JRNLineCapType.hpp +62 -0
  22. package/nitrogen/generated/android/c++/JRNLineJoinType.hpp +62 -0
  23. package/nitrogen/generated/android/c++/JRNLocation.hpp +58 -0
  24. package/nitrogen/generated/android/c++/JRNLocationErrorCode.hpp +71 -0
  25. package/nitrogen/generated/android/c++/JRNLocationPermissionResult.hpp +61 -0
  26. package/nitrogen/generated/android/c++/JRNMapErrorCode.hpp +74 -0
  27. package/nitrogen/generated/android/c++/JRNMapPadding.hpp +65 -0
  28. package/nitrogen/generated/android/c++/JRNMarker.hpp +82 -0
  29. package/nitrogen/generated/android/c++/JRNPolygon.hpp +94 -0
  30. package/nitrogen/generated/android/c++/JRNPolyline.hpp +102 -0
  31. package/nitrogen/generated/android/c++/JRNPosition.hpp +57 -0
  32. package/nitrogen/generated/android/c++/JRNRegion.hpp +62 -0
  33. package/nitrogen/generated/android/c++/JRNUserInterfaceStyle.hpp +62 -0
  34. package/nitrogen/generated/android/c++/views/JHybridGoogleMapsNitroViewStateUpdater.cpp +132 -0
  35. package/nitrogen/generated/android/c++/views/JHybridGoogleMapsNitroViewStateUpdater.hpp +49 -0
  36. package/nitrogen/generated/android/kotlin/com/margelo/nitro/googlemapsnitro/Func_void_RNLatLng.kt +81 -0
  37. package/nitrogen/generated/android/kotlin/com/margelo/nitro/googlemapsnitro/Func_void_RNLocation.kt +81 -0
  38. package/nitrogen/generated/android/kotlin/com/margelo/nitro/googlemapsnitro/Func_void_RNLocationErrorCode.kt +81 -0
  39. package/nitrogen/generated/android/kotlin/com/margelo/nitro/googlemapsnitro/Func_void_RNMapErrorCode.kt +81 -0
  40. package/nitrogen/generated/android/kotlin/com/margelo/nitro/googlemapsnitro/Func_void_RNRegion_RNCamera_bool.kt +81 -0
  41. package/nitrogen/generated/android/kotlin/com/margelo/nitro/googlemapsnitro/Func_void_bool.kt +81 -0
  42. package/nitrogen/generated/android/kotlin/com/margelo/nitro/googlemapsnitro/Func_void_std__string.kt +81 -0
  43. package/nitrogen/generated/android/kotlin/com/margelo/nitro/googlemapsnitro/GoogleMapsNitroOnLoad.kt +35 -0
  44. package/nitrogen/generated/android/kotlin/com/margelo/nitro/googlemapsnitro/HybridGoogleMapsNitroModuleSpec.kt +64 -0
  45. package/nitrogen/generated/android/kotlin/com/margelo/nitro/googlemapsnitro/HybridGoogleMapsNitroViewSpec.kt +263 -0
  46. package/nitrogen/generated/android/kotlin/com/margelo/nitro/googlemapsnitro/RNAndroidLocationPermissionResult.kt +22 -0
  47. package/nitrogen/generated/android/kotlin/com/margelo/nitro/googlemapsnitro/RNCamera.kt +38 -0
  48. package/nitrogen/generated/android/kotlin/com/margelo/nitro/googlemapsnitro/RNIOSPermissionResult.kt +21 -0
  49. package/nitrogen/generated/android/kotlin/com/margelo/nitro/googlemapsnitro/RNLatLng.kt +32 -0
  50. package/nitrogen/generated/android/kotlin/com/margelo/nitro/googlemapsnitro/RNLineCapType.kt +22 -0
  51. package/nitrogen/generated/android/kotlin/com/margelo/nitro/googlemapsnitro/RNLineJoinType.kt +22 -0
  52. package/nitrogen/generated/android/kotlin/com/margelo/nitro/googlemapsnitro/RNLocation.kt +32 -0
  53. package/nitrogen/generated/android/kotlin/com/margelo/nitro/googlemapsnitro/RNLocationErrorCode.kt +25 -0
  54. package/nitrogen/generated/android/kotlin/com/margelo/nitro/googlemapsnitro/RNLocationPermissionResult.kt +32 -0
  55. package/nitrogen/generated/android/kotlin/com/margelo/nitro/googlemapsnitro/RNMapErrorCode.kt +26 -0
  56. package/nitrogen/generated/android/kotlin/com/margelo/nitro/googlemapsnitro/RNMapPadding.kt +38 -0
  57. package/nitrogen/generated/android/kotlin/com/margelo/nitro/googlemapsnitro/RNMarker.kt +47 -0
  58. package/nitrogen/generated/android/kotlin/com/margelo/nitro/googlemapsnitro/RNPolygon.kt +44 -0
  59. package/nitrogen/generated/android/kotlin/com/margelo/nitro/googlemapsnitro/RNPolyline.kt +47 -0
  60. package/nitrogen/generated/android/kotlin/com/margelo/nitro/googlemapsnitro/RNPosition.kt +32 -0
  61. package/nitrogen/generated/android/kotlin/com/margelo/nitro/googlemapsnitro/RNRegion.kt +35 -0
  62. package/nitrogen/generated/android/kotlin/com/margelo/nitro/googlemapsnitro/RNUserInterfaceStyle.kt +22 -0
  63. package/nitrogen/generated/android/kotlin/com/margelo/nitro/googlemapsnitro/views/HybridGoogleMapsNitroViewManager.kt +50 -0
  64. package/nitrogen/generated/android/kotlin/com/margelo/nitro/googlemapsnitro/views/HybridGoogleMapsNitroViewStateUpdater.kt +23 -0
  65. package/nitrogen/generated/ios/GoogleMapsNitro+autolinking.rb +60 -0
  66. package/nitrogen/generated/ios/GoogleMapsNitro-Swift-Cxx-Bridge.cpp +121 -0
  67. package/nitrogen/generated/ios/GoogleMapsNitro-Swift-Cxx-Bridge.hpp +649 -0
  68. package/nitrogen/generated/ios/GoogleMapsNitro-Swift-Cxx-Umbrella.hpp +104 -0
  69. package/nitrogen/generated/ios/GoogleMapsNitroAutolinking.mm +41 -0
  70. package/nitrogen/generated/ios/GoogleMapsNitroAutolinking.swift +40 -0
  71. package/nitrogen/generated/ios/c++/HybridGoogleMapsNitroModuleSpecSwift.cpp +11 -0
  72. package/nitrogen/generated/ios/c++/HybridGoogleMapsNitroModuleSpecSwift.hpp +102 -0
  73. package/nitrogen/generated/ios/c++/HybridGoogleMapsNitroViewSpecSwift.cpp +11 -0
  74. package/nitrogen/generated/ios/c++/HybridGoogleMapsNitroViewSpecSwift.hpp +294 -0
  75. package/nitrogen/generated/ios/c++/views/HybridGoogleMapsNitroViewComponent.mm +191 -0
  76. package/nitrogen/generated/ios/swift/Func_void_RNLatLng.swift +47 -0
  77. package/nitrogen/generated/ios/swift/Func_void_RNLocation.swift +47 -0
  78. package/nitrogen/generated/ios/swift/Func_void_RNLocationErrorCode.swift +47 -0
  79. package/nitrogen/generated/ios/swift/Func_void_RNLocationPermissionResult.swift +47 -0
  80. package/nitrogen/generated/ios/swift/Func_void_RNMapErrorCode.swift +47 -0
  81. package/nitrogen/generated/ios/swift/Func_void_RNRegion_RNCamera_bool.swift +47 -0
  82. package/nitrogen/generated/ios/swift/Func_void_bool.swift +47 -0
  83. package/nitrogen/generated/ios/swift/Func_void_std__exception_ptr.swift +47 -0
  84. package/nitrogen/generated/ios/swift/Func_void_std__string.swift +47 -0
  85. package/nitrogen/generated/ios/swift/HybridGoogleMapsNitroModuleSpec.swift +52 -0
  86. package/nitrogen/generated/ios/swift/HybridGoogleMapsNitroModuleSpec_cxx.swift +164 -0
  87. package/nitrogen/generated/ios/swift/HybridGoogleMapsNitroViewSpec.swift +73 -0
  88. package/nitrogen/generated/ios/swift/HybridGoogleMapsNitroViewSpec_cxx.swift +630 -0
  89. package/nitrogen/generated/ios/swift/RNAndroidLocationPermissionResult.swift +44 -0
  90. package/nitrogen/generated/ios/swift/RNCamera.swift +123 -0
  91. package/nitrogen/generated/ios/swift/RNIOSPermissionResult.swift +40 -0
  92. package/nitrogen/generated/ios/swift/RNLatLng.swift +46 -0
  93. package/nitrogen/generated/ios/swift/RNLineCapType.swift +44 -0
  94. package/nitrogen/generated/ios/swift/RNLineJoinType.swift +44 -0
  95. package/nitrogen/generated/ios/swift/RNLocation.swift +46 -0
  96. package/nitrogen/generated/ios/swift/RNLocationErrorCode.swift +56 -0
  97. package/nitrogen/generated/ios/swift/RNLocationPermissionResult.swift +70 -0
  98. package/nitrogen/generated/ios/swift/RNMapErrorCode.swift +60 -0
  99. package/nitrogen/generated/ios/swift/RNMapPadding.swift +68 -0
  100. package/nitrogen/generated/ios/swift/RNMarker.swift +120 -0
  101. package/nitrogen/generated/ios/swift/RNPolygon.swift +152 -0
  102. package/nitrogen/generated/ios/swift/RNPolyline.swift +168 -0
  103. package/nitrogen/generated/ios/swift/RNPosition.swift +46 -0
  104. package/nitrogen/generated/ios/swift/RNRegion.swift +57 -0
  105. package/nitrogen/generated/ios/swift/RNUserInterfaceStyle.swift +44 -0
  106. package/nitrogen/generated/shared/c++/HybridGoogleMapsNitroModuleSpec.cpp +24 -0
  107. package/nitrogen/generated/shared/c++/HybridGoogleMapsNitroModuleSpec.hpp +67 -0
  108. package/nitrogen/generated/shared/c++/HybridGoogleMapsNitroViewSpec.cpp +66 -0
  109. package/nitrogen/generated/shared/c++/HybridGoogleMapsNitroViewSpec.hpp +145 -0
  110. package/nitrogen/generated/shared/c++/RNAndroidLocationPermissionResult.hpp +67 -0
  111. package/nitrogen/generated/shared/c++/RNCamera.hpp +81 -0
  112. package/nitrogen/generated/shared/c++/RNIOSPermissionResult.hpp +65 -0
  113. package/nitrogen/generated/shared/c++/RNLatLng.hpp +71 -0
  114. package/nitrogen/generated/shared/c++/RNLineCapType.hpp +80 -0
  115. package/nitrogen/generated/shared/c++/RNLineJoinType.hpp +80 -0
  116. package/nitrogen/generated/shared/c++/RNLocation.hpp +72 -0
  117. package/nitrogen/generated/shared/c++/RNLocationErrorCode.hpp +73 -0
  118. package/nitrogen/generated/shared/c++/RNLocationPermissionResult.hpp +76 -0
  119. package/nitrogen/generated/shared/c++/RNMapErrorCode.hpp +67 -0
  120. package/nitrogen/generated/shared/c++/RNMapPadding.hpp +79 -0
  121. package/nitrogen/generated/shared/c++/RNMarker.hpp +97 -0
  122. package/nitrogen/generated/shared/c++/RNPolygon.hpp +91 -0
  123. package/nitrogen/generated/shared/c++/RNPolyline.hpp +101 -0
  124. package/nitrogen/generated/shared/c++/RNPosition.hpp +71 -0
  125. package/nitrogen/generated/shared/c++/RNRegion.hpp +76 -0
  126. package/nitrogen/generated/shared/c++/RNUserInterfaceStyle.hpp +80 -0
  127. package/nitrogen/generated/shared/c++/views/HybridGoogleMapsNitroViewComponent.cpp +315 -0
  128. package/nitrogen/generated/shared/c++/views/HybridGoogleMapsNitroViewComponent.hpp +139 -0
  129. package/nitrogen/generated/shared/json/GoogleMapsNitroViewConfig.json +29 -0
  130. package/package.json +1 -1
@@ -0,0 +1,82 @@
1
+ ///
2
+ /// JRNMarker.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 "RNMarker.hpp"
12
+
13
+ #include "JRNLatLng.hpp"
14
+ #include "JRNPosition.hpp"
15
+ #include "RNLatLng.hpp"
16
+ #include "RNPosition.hpp"
17
+ #include <optional>
18
+ #include <string>
19
+
20
+ namespace margelo::nitro::googlemapsnitro {
21
+
22
+ using namespace facebook;
23
+
24
+ /**
25
+ * The C++ JNI bridge between the C++ struct "RNMarker" and the the Kotlin data class "RNMarker".
26
+ */
27
+ struct JRNMarker final: public jni::JavaClass<JRNMarker> {
28
+ public:
29
+ static auto constexpr kJavaDescriptor = "Lcom/googlemapsnitro/RNMarker;";
30
+
31
+ public:
32
+ /**
33
+ * Convert this Java/Kotlin-based struct to the C++ struct RNMarker by copying all values to C++.
34
+ */
35
+ [[maybe_unused]]
36
+ [[nodiscard]]
37
+ RNMarker toCpp() const {
38
+ static const auto clazz = javaClassStatic();
39
+ static const auto fieldId = clazz->getField<jni::JString>("id");
40
+ jni::local_ref<jni::JString> id = this->getFieldValue(fieldId);
41
+ static const auto fieldZIndex = clazz->getField<double>("zIndex");
42
+ double zIndex = this->getFieldValue(fieldZIndex);
43
+ static const auto fieldCoordinate = clazz->getField<JRNLatLng>("coordinate");
44
+ jni::local_ref<JRNLatLng> coordinate = this->getFieldValue(fieldCoordinate);
45
+ static const auto fieldAnchor = clazz->getField<JRNPosition>("anchor");
46
+ jni::local_ref<JRNPosition> anchor = this->getFieldValue(fieldAnchor);
47
+ static const auto fieldWidth = clazz->getField<double>("width");
48
+ double width = this->getFieldValue(fieldWidth);
49
+ static const auto fieldHeight = clazz->getField<double>("height");
50
+ double height = this->getFieldValue(fieldHeight);
51
+ static const auto fieldIconSvg = clazz->getField<jni::JString>("iconSvg");
52
+ jni::local_ref<jni::JString> iconSvg = this->getFieldValue(fieldIconSvg);
53
+ return RNMarker(
54
+ id->toStdString(),
55
+ zIndex,
56
+ coordinate->toCpp(),
57
+ anchor != nullptr ? std::make_optional(anchor->toCpp()) : std::nullopt,
58
+ width,
59
+ height,
60
+ iconSvg->toStdString()
61
+ );
62
+ }
63
+
64
+ public:
65
+ /**
66
+ * Create a Java/Kotlin-based struct by copying all values from the given C++ struct to Java.
67
+ */
68
+ [[maybe_unused]]
69
+ static jni::local_ref<JRNMarker::javaobject> fromCpp(const RNMarker& value) {
70
+ return newInstance(
71
+ jni::make_jstring(value.id),
72
+ value.zIndex,
73
+ JRNLatLng::fromCpp(value.coordinate),
74
+ value.anchor.has_value() ? JRNPosition::fromCpp(value.anchor.value()) : nullptr,
75
+ value.width,
76
+ value.height,
77
+ jni::make_jstring(value.iconSvg)
78
+ );
79
+ }
80
+ };
81
+
82
+ } // namespace margelo::nitro::googlemapsnitro
@@ -0,0 +1,94 @@
1
+ ///
2
+ /// JRNPolygon.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 "RNPolygon.hpp"
12
+
13
+ #include "JRNLatLng.hpp"
14
+ #include "RNLatLng.hpp"
15
+ #include <optional>
16
+ #include <string>
17
+ #include <vector>
18
+
19
+ namespace margelo::nitro::googlemapsnitro {
20
+
21
+ using namespace facebook;
22
+
23
+ /**
24
+ * The C++ JNI bridge between the C++ struct "RNPolygon" and the the Kotlin data class "RNPolygon".
25
+ */
26
+ struct JRNPolygon final: public jni::JavaClass<JRNPolygon> {
27
+ public:
28
+ static auto constexpr kJavaDescriptor = "Lcom/googlemapsnitro/RNPolygon;";
29
+
30
+ public:
31
+ /**
32
+ * Convert this Java/Kotlin-based struct to the C++ struct RNPolygon by copying all values to C++.
33
+ */
34
+ [[maybe_unused]]
35
+ [[nodiscard]]
36
+ RNPolygon toCpp() const {
37
+ static const auto clazz = javaClassStatic();
38
+ static const auto fieldId = clazz->getField<jni::JString>("id");
39
+ jni::local_ref<jni::JString> id = this->getFieldValue(fieldId);
40
+ static const auto fieldZIndex = clazz->getField<double>("zIndex");
41
+ double zIndex = this->getFieldValue(fieldZIndex);
42
+ static const auto fieldCoordinates = clazz->getField<jni::JArrayClass<JRNLatLng>>("coordinates");
43
+ jni::local_ref<jni::JArrayClass<JRNLatLng>> coordinates = this->getFieldValue(fieldCoordinates);
44
+ static const auto fieldFillColor = clazz->getField<jni::JString>("fillColor");
45
+ jni::local_ref<jni::JString> fillColor = this->getFieldValue(fieldFillColor);
46
+ static const auto fieldStrokeColor = clazz->getField<jni::JString>("strokeColor");
47
+ jni::local_ref<jni::JString> strokeColor = this->getFieldValue(fieldStrokeColor);
48
+ static const auto fieldStrokeWidth = clazz->getField<jni::JDouble>("strokeWidth");
49
+ jni::local_ref<jni::JDouble> strokeWidth = this->getFieldValue(fieldStrokeWidth);
50
+ return RNPolygon(
51
+ id->toStdString(),
52
+ zIndex,
53
+ [&]() {
54
+ size_t __size = coordinates->size();
55
+ std::vector<RNLatLng> __vector;
56
+ __vector.reserve(__size);
57
+ for (size_t __i = 0; __i < __size; __i++) {
58
+ auto __element = coordinates->getElement(__i);
59
+ __vector.push_back(__element->toCpp());
60
+ }
61
+ return __vector;
62
+ }(),
63
+ fillColor != nullptr ? std::make_optional(fillColor->toStdString()) : std::nullopt,
64
+ strokeColor != nullptr ? std::make_optional(strokeColor->toStdString()) : std::nullopt,
65
+ strokeWidth != nullptr ? std::make_optional(strokeWidth->value()) : std::nullopt
66
+ );
67
+ }
68
+
69
+ public:
70
+ /**
71
+ * Create a Java/Kotlin-based struct by copying all values from the given C++ struct to Java.
72
+ */
73
+ [[maybe_unused]]
74
+ static jni::local_ref<JRNPolygon::javaobject> fromCpp(const RNPolygon& value) {
75
+ return newInstance(
76
+ jni::make_jstring(value.id),
77
+ value.zIndex,
78
+ [&]() {
79
+ size_t __size = value.coordinates.size();
80
+ jni::local_ref<jni::JArrayClass<JRNLatLng>> __array = jni::JArrayClass<JRNLatLng>::newArray(__size);
81
+ for (size_t __i = 0; __i < __size; __i++) {
82
+ const auto& __element = value.coordinates[__i];
83
+ __array->setElement(__i, *JRNLatLng::fromCpp(__element));
84
+ }
85
+ return __array;
86
+ }(),
87
+ value.fillColor.has_value() ? jni::make_jstring(value.fillColor.value()) : nullptr,
88
+ value.strokeColor.has_value() ? jni::make_jstring(value.strokeColor.value()) : nullptr,
89
+ value.strokeWidth.has_value() ? jni::JDouble::valueOf(value.strokeWidth.value()) : nullptr
90
+ );
91
+ }
92
+ };
93
+
94
+ } // namespace margelo::nitro::googlemapsnitro
@@ -0,0 +1,102 @@
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::googlemapsnitro {
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/googlemapsnitro/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<double>("zIndex");
45
+ double zIndex = this->getFieldValue(fieldZIndex);
46
+ static const auto fieldCoordinates = clazz->getField<jni::JArrayClass<JRNLatLng>>("coordinates");
47
+ jni::local_ref<jni::JArrayClass<JRNLatLng>> coordinates = this->getFieldValue(fieldCoordinates);
48
+ static const auto fieldLineCap = clazz->getField<JRNLineCapType>("lineCap");
49
+ jni::local_ref<JRNLineCapType> lineCap = this->getFieldValue(fieldLineCap);
50
+ static const auto fieldLineJoin = clazz->getField<JRNLineJoinType>("lineJoin");
51
+ jni::local_ref<JRNLineJoinType> lineJoin = this->getFieldValue(fieldLineJoin);
52
+ static const auto fieldColor = clazz->getField<jni::JString>("color");
53
+ jni::local_ref<jni::JString> color = this->getFieldValue(fieldColor);
54
+ static const auto fieldWidth = clazz->getField<jni::JDouble>("width");
55
+ jni::local_ref<jni::JDouble> width = this->getFieldValue(fieldWidth);
56
+ return RNPolyline(
57
+ id->toStdString(),
58
+ zIndex,
59
+ [&]() {
60
+ size_t __size = coordinates->size();
61
+ std::vector<RNLatLng> __vector;
62
+ __vector.reserve(__size);
63
+ for (size_t __i = 0; __i < __size; __i++) {
64
+ auto __element = coordinates->getElement(__i);
65
+ __vector.push_back(__element->toCpp());
66
+ }
67
+ return __vector;
68
+ }(),
69
+ lineCap != nullptr ? std::make_optional(lineCap->toCpp()) : std::nullopt,
70
+ lineJoin != nullptr ? std::make_optional(lineJoin->toCpp()) : std::nullopt,
71
+ color != nullptr ? std::make_optional(color->toStdString()) : std::nullopt,
72
+ width != nullptr ? std::make_optional(width->value()) : std::nullopt
73
+ );
74
+ }
75
+
76
+ public:
77
+ /**
78
+ * Create a Java/Kotlin-based struct by copying all values from the given C++ struct to Java.
79
+ */
80
+ [[maybe_unused]]
81
+ static jni::local_ref<JRNPolyline::javaobject> fromCpp(const RNPolyline& value) {
82
+ return newInstance(
83
+ jni::make_jstring(value.id),
84
+ value.zIndex,
85
+ [&]() {
86
+ size_t __size = value.coordinates.size();
87
+ jni::local_ref<jni::JArrayClass<JRNLatLng>> __array = jni::JArrayClass<JRNLatLng>::newArray(__size);
88
+ for (size_t __i = 0; __i < __size; __i++) {
89
+ const auto& __element = value.coordinates[__i];
90
+ __array->setElement(__i, *JRNLatLng::fromCpp(__element));
91
+ }
92
+ return __array;
93
+ }(),
94
+ value.lineCap.has_value() ? JRNLineCapType::fromCpp(value.lineCap.value()) : nullptr,
95
+ value.lineJoin.has_value() ? JRNLineJoinType::fromCpp(value.lineJoin.value()) : nullptr,
96
+ value.color.has_value() ? jni::make_jstring(value.color.value()) : nullptr,
97
+ value.width.has_value() ? jni::JDouble::valueOf(value.width.value()) : nullptr
98
+ );
99
+ }
100
+ };
101
+
102
+ } // namespace margelo::nitro::googlemapsnitro
@@ -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::googlemapsnitro {
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/googlemapsnitro/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::googlemapsnitro
@@ -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::googlemapsnitro {
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/googlemapsnitro/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::googlemapsnitro
@@ -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::googlemapsnitro {
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/googlemapsnitro/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::googlemapsnitro
@@ -0,0 +1,132 @@
1
+ ///
2
+ /// JHybridGoogleMapsNitroViewStateUpdater.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 "JHybridGoogleMapsNitroViewStateUpdater.hpp"
9
+ #include "views/HybridGoogleMapsNitroViewComponent.hpp"
10
+ #include <NitroModules/NitroDefines.hpp>
11
+
12
+ namespace margelo::nitro::googlemapsnitro::views {
13
+
14
+ using namespace facebook;
15
+ using ConcreteStateData = react::ConcreteState<HybridGoogleMapsNitroViewState>;
16
+
17
+ void JHybridGoogleMapsNitroViewStateUpdater::updateViewProps(jni::alias_ref<jni::JClass> /* class */,
18
+ jni::alias_ref<JHybridGoogleMapsNitroViewSpec::javaobject> javaView,
19
+ jni::alias_ref<JStateWrapper::javaobject> stateWrapperInterface) {
20
+ JHybridGoogleMapsNitroViewSpec* 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 HybridGoogleMapsNitroViewState& data = concreteState->getData();
33
+ const std::optional<HybridGoogleMapsNitroViewProps>& maybeProps = data.getProps();
34
+ if (!maybeProps.has_value()) {
35
+ // Props aren't set yet!
36
+ throw std::runtime_error("HybridGoogleMapsNitroViewState's data doesn't contain any props!");
37
+ }
38
+ const HybridGoogleMapsNitroViewProps& props = maybeProps.value();
39
+ if (props.buildingEnabled.isDirty) {
40
+ view->setBuildingEnabled(props.buildingEnabled.value);
41
+ // TODO: Set isDirty = false
42
+ }
43
+ if (props.trafficEnabled.isDirty) {
44
+ view->setTrafficEnabled(props.trafficEnabled.value);
45
+ // TODO: Set isDirty = false
46
+ }
47
+ if (props.customMapStyle.isDirty) {
48
+ view->setCustomMapStyle(props.customMapStyle.value);
49
+ // TODO: Set isDirty = false
50
+ }
51
+ if (props.initialCamera.isDirty) {
52
+ view->setInitialCamera(props.initialCamera.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.markers.isDirty) {
72
+ view->setMarkers(props.markers.value);
73
+ // TODO: Set isDirty = false
74
+ }
75
+ if (props.polygons.isDirty) {
76
+ view->setPolygons(props.polygons.value);
77
+ // TODO: Set isDirty = false
78
+ }
79
+ if (props.polylines.isDirty) {
80
+ view->setPolylines(props.polylines.value);
81
+ // TODO: Set isDirty = false
82
+ }
83
+ if (props.onMapError.isDirty) {
84
+ view->setOnMapError(props.onMapError.value);
85
+ // TODO: Set isDirty = false
86
+ }
87
+ if (props.onMapReady.isDirty) {
88
+ view->setOnMapReady(props.onMapReady.value);
89
+ // TODO: Set isDirty = false
90
+ }
91
+ if (props.onLocationUpdate.isDirty) {
92
+ view->setOnLocationUpdate(props.onLocationUpdate.value);
93
+ // TODO: Set isDirty = false
94
+ }
95
+ if (props.onLocationError.isDirty) {
96
+ view->setOnLocationError(props.onLocationError.value);
97
+ // TODO: Set isDirty = false
98
+ }
99
+ if (props.onMapPress.isDirty) {
100
+ view->setOnMapPress(props.onMapPress.value);
101
+ // TODO: Set isDirty = false
102
+ }
103
+ if (props.onMarkerPress.isDirty) {
104
+ view->setOnMarkerPress(props.onMarkerPress.value);
105
+ // TODO: Set isDirty = false
106
+ }
107
+ if (props.onCameraChangeStart.isDirty) {
108
+ view->setOnCameraChangeStart(props.onCameraChangeStart.value);
109
+ // TODO: Set isDirty = false
110
+ }
111
+ if (props.onCameraChange.isDirty) {
112
+ view->setOnCameraChange(props.onCameraChange.value);
113
+ // TODO: Set isDirty = false
114
+ }
115
+ if (props.onCameraChangeComplete.isDirty) {
116
+ view->setOnCameraChangeComplete(props.onCameraChangeComplete.value);
117
+ // TODO: Set isDirty = false
118
+ }
119
+
120
+ // Update hybridRef if it changed
121
+ if (props.hybridRef.isDirty) {
122
+ // hybridRef changed - call it with new this
123
+ const auto& maybeFunc = props.hybridRef.value;
124
+ if (maybeFunc.has_value()) {
125
+ std::shared_ptr<JHybridGoogleMapsNitroViewSpec> shared = javaView->cthis()->shared_cast<JHybridGoogleMapsNitroViewSpec>();
126
+ maybeFunc.value()(shared);
127
+ }
128
+ // TODO: Set isDirty = false
129
+ }
130
+ }
131
+
132
+ } // namespace margelo::nitro::googlemapsnitro::views
@@ -0,0 +1,49 @@
1
+ ///
2
+ /// JHybridGoogleMapsNitroViewStateUpdater.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 GoogleMapsNitro 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 "JHybridGoogleMapsNitroViewSpec.hpp"
21
+ #include "views/HybridGoogleMapsNitroViewComponent.hpp"
22
+
23
+ namespace margelo::nitro::googlemapsnitro::views {
24
+
25
+ using namespace facebook;
26
+
27
+ class JHybridGoogleMapsNitroViewStateUpdater: public jni::JavaClass<JHybridGoogleMapsNitroViewStateUpdater> {
28
+ public:
29
+ static constexpr auto kJavaDescriptor = "Lcom/googlemapsnitro/views/HybridGoogleMapsNitroViewStateUpdater;";
30
+
31
+ public:
32
+ static void updateViewProps(jni::alias_ref<jni::JClass> /* class */,
33
+ jni::alias_ref<JHybridGoogleMapsNitroViewSpec::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", JHybridGoogleMapsNitroViewStateUpdater::updateViewProps),
41
+ });
42
+ // Register React Native view component descriptor
43
+ auto provider = react::concreteComponentDescriptorProvider<HybridGoogleMapsNitroViewComponentDescriptor>();
44
+ auto providerRegistry = react::CoreComponentsRegistry::sharedProviderRegistry();
45
+ providerRegistry->add(provider);
46
+ }
47
+ };
48
+
49
+ } // namespace margelo::nitro::googlemapsnitro::views