react-native-google-maps-plus 1.4.1 → 1.6.0-dev.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 (125) hide show
  1. package/README.md +21 -0
  2. package/android/src/main/java/com/rngooglemapsplus/GoogleMapsViewImpl.kt +41 -144
  3. package/android/src/main/java/com/rngooglemapsplus/LocationHandler.kt +38 -36
  4. package/android/src/main/java/com/rngooglemapsplus/extensions/CameraPositionExtension.kt +12 -0
  5. package/android/src/main/java/com/rngooglemapsplus/extensions/IntExtension.kt +28 -0
  6. package/android/src/main/java/com/rngooglemapsplus/extensions/LatLngBounds.kt +15 -0
  7. package/android/src/main/java/com/rngooglemapsplus/extensions/LocationExtension.kt +59 -0
  8. package/app.plugin.js +1 -0
  9. package/expoConfig/build/android/withAndroidGoogleMapsPlus.js +21 -0
  10. package/expoConfig/build/index.js +17 -0
  11. package/expoConfig/build/ios/withIosGoogleMapsPlus.js +91 -0
  12. package/expoConfig/build/types.js +2 -0
  13. package/ios/GoogleMapViewImpl.swift +28 -138
  14. package/ios/LocationHandler.swift +5 -13
  15. package/ios/MapHelper.swift +20 -0
  16. package/ios/MapMarkerBuilder.swift +44 -69
  17. package/ios/RNGoogleMapsPlusView.swift +12 -8
  18. package/ios/extensions/CLError+Extension.swift +14 -0
  19. package/ios/extensions/CLLocation+Extension.swift +27 -0
  20. package/ios/extensions/GMSCameraPosition+Extension.swift +12 -0
  21. package/ios/extensions/GMSCoordinateBounds+Extension.swift +19 -0
  22. package/ios/extensions/RNMarker+Extension.swift +2 -3
  23. package/lib/module/GoogleMapsPlus.js +7 -0
  24. package/lib/module/GoogleMapsPlus.js.map +1 -0
  25. package/lib/module/index.js +3 -5
  26. package/lib/module/index.js.map +1 -1
  27. package/lib/module/types.js.map +1 -1
  28. package/lib/nitrogen/generated/shared/json/RNGoogleMapsPlusViewConfig.json +44 -0
  29. package/lib/typescript/src/GoogleMapsPlus.d.ts +5 -0
  30. package/lib/typescript/src/GoogleMapsPlus.d.ts.map +1 -0
  31. package/lib/typescript/src/index.d.ts +3 -3
  32. package/lib/typescript/src/index.d.ts.map +1 -1
  33. package/lib/typescript/src/types.d.ts +25 -0
  34. package/lib/typescript/src/types.d.ts.map +1 -1
  35. package/nitrogen/generated/android/c++/JFunc_void_RNLocation.hpp +6 -0
  36. package/nitrogen/generated/android/c++/JHybridRNGoogleMapsPlusViewSpec.cpp +8 -0
  37. package/nitrogen/generated/android/c++/JRNAndroidLocationConfig.hpp +5 -1
  38. package/nitrogen/generated/android/c++/JRNCamera.hpp +5 -1
  39. package/nitrogen/generated/android/c++/JRNCircle.hpp +5 -1
  40. package/nitrogen/generated/android/c++/JRNHeatmap.hpp +5 -1
  41. package/nitrogen/generated/android/c++/JRNHeatmapGradient.hpp +5 -1
  42. package/nitrogen/generated/android/c++/JRNHeatmapPoint.hpp +5 -1
  43. package/nitrogen/generated/android/c++/JRNIOSLocationConfig.hpp +5 -1
  44. package/nitrogen/generated/android/c++/JRNIndoorBuilding.hpp +5 -1
  45. package/nitrogen/generated/android/c++/JRNIndoorLevel.hpp +5 -1
  46. package/nitrogen/generated/android/c++/JRNInitialProps.hpp +5 -1
  47. package/nitrogen/generated/android/c++/JRNKMLayer.hpp +5 -1
  48. package/nitrogen/generated/android/c++/JRNLatLng.hpp +5 -1
  49. package/nitrogen/generated/android/c++/JRNLatLngBounds.hpp +5 -1
  50. package/nitrogen/generated/android/c++/JRNLocation.hpp +37 -3
  51. package/nitrogen/generated/android/c++/JRNLocationAndroid.hpp +86 -0
  52. package/nitrogen/generated/android/c++/JRNLocationConfig.hpp +5 -1
  53. package/nitrogen/generated/android/c++/JRNLocationIOS.hpp +81 -0
  54. package/nitrogen/generated/android/c++/JRNLocationPermissionResult.hpp +5 -1
  55. package/nitrogen/generated/android/c++/JRNMapPadding.hpp +5 -1
  56. package/nitrogen/generated/android/c++/JRNMapUiSettings.hpp +5 -1
  57. package/nitrogen/generated/android/c++/JRNMapZoomConfig.hpp +5 -1
  58. package/nitrogen/generated/android/c++/JRNMarker.hpp +5 -1
  59. package/nitrogen/generated/android/c++/JRNMarkerSvg.hpp +5 -1
  60. package/nitrogen/generated/android/c++/JRNPolygon.hpp +5 -1
  61. package/nitrogen/generated/android/c++/JRNPolygonHole.hpp +5 -1
  62. package/nitrogen/generated/android/c++/JRNPolyline.hpp +5 -1
  63. package/nitrogen/generated/android/c++/JRNPosition.hpp +5 -1
  64. package/nitrogen/generated/android/c++/JRNRegion.hpp +5 -1
  65. package/nitrogen/generated/android/c++/JRNSize.hpp +5 -1
  66. package/nitrogen/generated/android/c++/JRNSnapshotOptions.hpp +5 -1
  67. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/HybridRNGoogleMapsPlusModuleSpec.kt +1 -1
  68. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/HybridRNGoogleMapsPlusViewSpec.kt +1 -1
  69. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNAndroidLocationConfig.kt +19 -11
  70. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNCamera.kt +22 -14
  71. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNCircle.kt +36 -28
  72. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNHeatmap.kt +31 -23
  73. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNHeatmapGradient.kt +19 -11
  74. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNHeatmapPoint.kt +19 -11
  75. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNIOSLocationConfig.kt +16 -8
  76. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNIndoorBuilding.kt +22 -14
  77. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNIndoorLevel.kt +22 -14
  78. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNInitialProps.kt +19 -11
  79. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNKMLayer.kt +16 -8
  80. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNLatLng.kt +16 -8
  81. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNLatLngBounds.kt +16 -8
  82. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNLocation.kt +34 -8
  83. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNLocationAndroid.kt +58 -0
  84. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNLocationConfig.kt +16 -8
  85. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNLocationIOS.kt +55 -0
  86. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNLocationPermissionResult.kt +16 -8
  87. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNMapPadding.kt +22 -14
  88. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNMapUiSettings.kt +43 -35
  89. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNMapZoomConfig.kt +16 -8
  90. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNMarker.kt +49 -41
  91. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNMarkerSvg.kt +19 -11
  92. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNPolygon.kt +39 -31
  93. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNPolygonHole.kt +13 -5
  94. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNPolyline.kt +39 -31
  95. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNPosition.kt +16 -8
  96. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNRegion.kt +19 -11
  97. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNSize.kt +16 -8
  98. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNSnapshotOptions.kt +22 -14
  99. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/views/HybridRNGoogleMapsPlusViewManager.kt +7 -2
  100. package/nitrogen/generated/ios/RNGoogleMapsPlus-Swift-Cxx-Bridge.hpp +36 -0
  101. package/nitrogen/generated/ios/RNGoogleMapsPlus-Swift-Cxx-Umbrella.hpp +6 -0
  102. package/nitrogen/generated/ios/c++/HybridRNGoogleMapsPlusViewSpecSwift.hpp +6 -0
  103. package/nitrogen/generated/ios/c++/views/HybridRNGoogleMapsPlusViewComponent.mm +8 -0
  104. package/nitrogen/generated/ios/swift/HybridRNGoogleMapsPlusViewSpec_cxx.swift +56 -7
  105. package/nitrogen/generated/ios/swift/RNCircle.swift +8 -1
  106. package/nitrogen/generated/ios/swift/RNHeatmap.swift +8 -1
  107. package/nitrogen/generated/ios/swift/RNIndoorBuilding.swift +8 -1
  108. package/nitrogen/generated/ios/swift/RNIndoorLevel.swift +8 -1
  109. package/nitrogen/generated/ios/swift/RNInitialProps.swift +8 -1
  110. package/nitrogen/generated/ios/swift/RNLocation.swift +92 -2
  111. package/nitrogen/generated/ios/swift/RNLocationAndroid.swift +222 -0
  112. package/nitrogen/generated/ios/swift/RNLocationIOS.swift +192 -0
  113. package/nitrogen/generated/ios/swift/RNMapUiSettings.swift +88 -11
  114. package/nitrogen/generated/ios/swift/RNMarker.swift +24 -3
  115. package/nitrogen/generated/ios/swift/RNPolygon.swift +16 -2
  116. package/nitrogen/generated/ios/swift/RNPolyline.swift +16 -2
  117. package/nitrogen/generated/shared/c++/RNLocation.hpp +33 -2
  118. package/nitrogen/generated/shared/c++/RNLocationAndroid.hpp +104 -0
  119. package/nitrogen/generated/shared/c++/RNLocationIOS.hpp +99 -0
  120. package/package.json +20 -17
  121. package/src/GoogleMapsPlus.tsx +20 -0
  122. package/src/index.tsx +6 -14
  123. package/src/types.ts +27 -0
  124. package/lib/module/package.json +0 -1
  125. package/lib/typescript/package.json +0 -1
@@ -0,0 +1,81 @@
1
+ ///
2
+ /// JRNLocationIOS.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 "RNLocationIOS.hpp"
12
+
13
+ #include <optional>
14
+
15
+ namespace margelo::nitro::rngooglemapsplus {
16
+
17
+ using namespace facebook;
18
+
19
+ /**
20
+ * The C++ JNI bridge between the C++ struct "RNLocationIOS" and the the Kotlin data class "RNLocationIOS".
21
+ */
22
+ struct JRNLocationIOS final: public jni::JavaClass<JRNLocationIOS> {
23
+ public:
24
+ static auto constexpr kJavaDescriptor = "Lcom/rngooglemapsplus/RNLocationIOS;";
25
+
26
+ public:
27
+ /**
28
+ * Convert this Java/Kotlin-based struct to the C++ struct RNLocationIOS by copying all values to C++.
29
+ */
30
+ [[maybe_unused]]
31
+ [[nodiscard]]
32
+ RNLocationIOS toCpp() const {
33
+ static const auto clazz = javaClassStatic();
34
+ static const auto fieldHorizontalAccuracy = clazz->getField<jni::JDouble>("horizontalAccuracy");
35
+ jni::local_ref<jni::JDouble> horizontalAccuracy = this->getFieldValue(fieldHorizontalAccuracy);
36
+ static const auto fieldVerticalAccuracy = clazz->getField<jni::JDouble>("verticalAccuracy");
37
+ jni::local_ref<jni::JDouble> verticalAccuracy = this->getFieldValue(fieldVerticalAccuracy);
38
+ static const auto fieldSpeedAccuracy = clazz->getField<jni::JDouble>("speedAccuracy");
39
+ jni::local_ref<jni::JDouble> speedAccuracy = this->getFieldValue(fieldSpeedAccuracy);
40
+ static const auto fieldCourseAccuracy = clazz->getField<jni::JDouble>("courseAccuracy");
41
+ jni::local_ref<jni::JDouble> courseAccuracy = this->getFieldValue(fieldCourseAccuracy);
42
+ static const auto fieldFloor = clazz->getField<jni::JDouble>("floor");
43
+ jni::local_ref<jni::JDouble> floor = this->getFieldValue(fieldFloor);
44
+ static const auto fieldIsFromMockProvider = clazz->getField<jni::JBoolean>("isFromMockProvider");
45
+ jni::local_ref<jni::JBoolean> isFromMockProvider = this->getFieldValue(fieldIsFromMockProvider);
46
+ static const auto fieldTimestamp = clazz->getField<jni::JDouble>("timestamp");
47
+ jni::local_ref<jni::JDouble> timestamp = this->getFieldValue(fieldTimestamp);
48
+ return RNLocationIOS(
49
+ horizontalAccuracy != nullptr ? std::make_optional(horizontalAccuracy->value()) : std::nullopt,
50
+ verticalAccuracy != nullptr ? std::make_optional(verticalAccuracy->value()) : std::nullopt,
51
+ speedAccuracy != nullptr ? std::make_optional(speedAccuracy->value()) : std::nullopt,
52
+ courseAccuracy != nullptr ? std::make_optional(courseAccuracy->value()) : std::nullopt,
53
+ floor != nullptr ? std::make_optional(floor->value()) : std::nullopt,
54
+ isFromMockProvider != nullptr ? std::make_optional(static_cast<bool>(isFromMockProvider->value())) : std::nullopt,
55
+ timestamp != nullptr ? std::make_optional(timestamp->value()) : std::nullopt
56
+ );
57
+ }
58
+
59
+ public:
60
+ /**
61
+ * Create a Java/Kotlin-based struct by copying all values from the given C++ struct to Java.
62
+ */
63
+ [[maybe_unused]]
64
+ static jni::local_ref<JRNLocationIOS::javaobject> fromCpp(const RNLocationIOS& value) {
65
+ using JSignature = JRNLocationIOS(jni::alias_ref<jni::JDouble>, jni::alias_ref<jni::JDouble>, jni::alias_ref<jni::JDouble>, jni::alias_ref<jni::JDouble>, jni::alias_ref<jni::JDouble>, jni::alias_ref<jni::JBoolean>, jni::alias_ref<jni::JDouble>);
66
+ static const auto clazz = javaClassStatic();
67
+ static const auto create = clazz->getStaticMethod<JSignature>("fromCpp");
68
+ return create(
69
+ clazz,
70
+ value.horizontalAccuracy.has_value() ? jni::JDouble::valueOf(value.horizontalAccuracy.value()) : nullptr,
71
+ value.verticalAccuracy.has_value() ? jni::JDouble::valueOf(value.verticalAccuracy.value()) : nullptr,
72
+ value.speedAccuracy.has_value() ? jni::JDouble::valueOf(value.speedAccuracy.value()) : nullptr,
73
+ value.courseAccuracy.has_value() ? jni::JDouble::valueOf(value.courseAccuracy.value()) : nullptr,
74
+ value.floor.has_value() ? jni::JDouble::valueOf(value.floor.value()) : nullptr,
75
+ value.isFromMockProvider.has_value() ? jni::JBoolean::valueOf(value.isFromMockProvider.value()) : nullptr,
76
+ value.timestamp.has_value() ? jni::JDouble::valueOf(value.timestamp.value()) : nullptr
77
+ );
78
+ }
79
+ };
80
+
81
+ } // namespace margelo::nitro::rngooglemapsplus
@@ -51,7 +51,11 @@ namespace margelo::nitro::rngooglemapsplus {
51
51
  */
52
52
  [[maybe_unused]]
53
53
  static jni::local_ref<JRNLocationPermissionResult::javaobject> fromCpp(const RNLocationPermissionResult& value) {
54
- return newInstance(
54
+ using JSignature = JRNLocationPermissionResult(jni::alias_ref<JRNAndroidLocationPermissionResult>, jni::alias_ref<JRNIOSPermissionResult>);
55
+ static const auto clazz = javaClassStatic();
56
+ static const auto create = clazz->getStaticMethod<JSignature>("fromCpp");
57
+ return create(
58
+ clazz,
55
59
  value.android.has_value() ? JRNAndroidLocationPermissionResult::fromCpp(value.android.value()) : nullptr,
56
60
  value.ios.has_value() ? JRNIOSPermissionResult::fromCpp(value.ios.value()) : nullptr
57
61
  );
@@ -53,7 +53,11 @@ namespace margelo::nitro::rngooglemapsplus {
53
53
  */
54
54
  [[maybe_unused]]
55
55
  static jni::local_ref<JRNMapPadding::javaobject> fromCpp(const RNMapPadding& value) {
56
- return newInstance(
56
+ using JSignature = JRNMapPadding(double, double, double, double);
57
+ static const auto clazz = javaClassStatic();
58
+ static const auto create = clazz->getStaticMethod<JSignature>("fromCpp");
59
+ return create(
60
+ clazz,
57
61
  value.top,
58
62
  value.left,
59
63
  value.bottom,
@@ -74,7 +74,11 @@ namespace margelo::nitro::rngooglemapsplus {
74
74
  */
75
75
  [[maybe_unused]]
76
76
  static jni::local_ref<JRNMapUiSettings::javaobject> fromCpp(const RNMapUiSettings& value) {
77
- return newInstance(
77
+ using JSignature = JRNMapUiSettings(jni::alias_ref<jni::JBoolean>, jni::alias_ref<jni::JBoolean>, jni::alias_ref<jni::JBoolean>, jni::alias_ref<jni::JBoolean>, jni::alias_ref<jni::JBoolean>, jni::alias_ref<jni::JBoolean>, jni::alias_ref<jni::JBoolean>, jni::alias_ref<jni::JBoolean>, jni::alias_ref<jni::JBoolean>, jni::alias_ref<jni::JBoolean>, jni::alias_ref<jni::JBoolean>);
78
+ static const auto clazz = javaClassStatic();
79
+ static const auto create = clazz->getStaticMethod<JSignature>("fromCpp");
80
+ return create(
81
+ clazz,
78
82
  value.allGesturesEnabled.has_value() ? jni::JBoolean::valueOf(value.allGesturesEnabled.value()) : nullptr,
79
83
  value.compassEnabled.has_value() ? jni::JBoolean::valueOf(value.compassEnabled.value()) : nullptr,
80
84
  value.indoorLevelPickerEnabled.has_value() ? jni::JBoolean::valueOf(value.indoorLevelPickerEnabled.value()) : nullptr,
@@ -47,7 +47,11 @@ namespace margelo::nitro::rngooglemapsplus {
47
47
  */
48
48
  [[maybe_unused]]
49
49
  static jni::local_ref<JRNMapZoomConfig::javaobject> fromCpp(const RNMapZoomConfig& value) {
50
- return newInstance(
50
+ using JSignature = JRNMapZoomConfig(jni::alias_ref<jni::JDouble>, jni::alias_ref<jni::JDouble>);
51
+ static const auto clazz = javaClassStatic();
52
+ static const auto create = clazz->getStaticMethod<JSignature>("fromCpp");
53
+ return create(
54
+ clazz,
51
55
  value.min.has_value() ? jni::JDouble::valueOf(value.min.value()) : nullptr,
52
56
  value.max.has_value() ? jni::JDouble::valueOf(value.max.value()) : nullptr
53
57
  );
@@ -87,7 +87,11 @@ namespace margelo::nitro::rngooglemapsplus {
87
87
  */
88
88
  [[maybe_unused]]
89
89
  static jni::local_ref<JRNMarker::javaobject> fromCpp(const RNMarker& value) {
90
- return newInstance(
90
+ using JSignature = JRNMarker(jni::alias_ref<jni::JString>, jni::alias_ref<jni::JDouble>, jni::alias_ref<JRNLatLng>, jni::alias_ref<JRNPosition>, jni::alias_ref<jni::JBoolean>, jni::alias_ref<jni::JString>, jni::alias_ref<jni::JString>, jni::alias_ref<jni::JDouble>, jni::alias_ref<jni::JBoolean>, jni::alias_ref<jni::JBoolean>, jni::alias_ref<jni::JDouble>, jni::alias_ref<JRNPosition>, jni::alias_ref<JRNMarkerSvg>);
91
+ static const auto clazz = javaClassStatic();
92
+ static const auto create = clazz->getStaticMethod<JSignature>("fromCpp");
93
+ return create(
94
+ clazz,
91
95
  jni::make_jstring(value.id),
92
96
  value.zIndex.has_value() ? jni::JDouble::valueOf(value.zIndex.value()) : nullptr,
93
97
  JRNLatLng::fromCpp(value.coordinate),
@@ -50,7 +50,11 @@ namespace margelo::nitro::rngooglemapsplus {
50
50
  */
51
51
  [[maybe_unused]]
52
52
  static jni::local_ref<JRNMarkerSvg::javaobject> fromCpp(const RNMarkerSvg& value) {
53
- return newInstance(
53
+ using JSignature = JRNMarkerSvg(double, double, jni::alias_ref<jni::JString>);
54
+ static const auto clazz = javaClassStatic();
55
+ static const auto create = clazz->getStaticMethod<JSignature>("fromCpp");
56
+ return create(
57
+ clazz,
54
58
  value.width,
55
59
  value.height,
56
60
  jni::make_jstring(value.svgString)
@@ -92,7 +92,11 @@ namespace margelo::nitro::rngooglemapsplus {
92
92
  */
93
93
  [[maybe_unused]]
94
94
  static jni::local_ref<JRNPolygon::javaobject> fromCpp(const RNPolygon& value) {
95
- return newInstance(
95
+ using JSignature = JRNPolygon(jni::alias_ref<jni::JString>, jni::alias_ref<jni::JDouble>, jni::alias_ref<jni::JBoolean>, jni::alias_ref<jni::JArrayClass<JRNLatLng>>, jni::alias_ref<jni::JString>, jni::alias_ref<jni::JString>, jni::alias_ref<jni::JDouble>, jni::alias_ref<jni::JArrayClass<JRNPolygonHole>>, jni::alias_ref<jni::JBoolean>);
96
+ static const auto clazz = javaClassStatic();
97
+ static const auto create = clazz->getStaticMethod<JSignature>("fromCpp");
98
+ return create(
99
+ clazz,
96
100
  jni::make_jstring(value.id),
97
101
  value.zIndex.has_value() ? jni::JDouble::valueOf(value.zIndex.value()) : nullptr,
98
102
  value.pressable.has_value() ? jni::JBoolean::valueOf(value.pressable.value()) : nullptr,
@@ -55,7 +55,11 @@ namespace margelo::nitro::rngooglemapsplus {
55
55
  */
56
56
  [[maybe_unused]]
57
57
  static jni::local_ref<JRNPolygonHole::javaobject> fromCpp(const RNPolygonHole& value) {
58
- return newInstance(
58
+ using JSignature = JRNPolygonHole(jni::alias_ref<jni::JArrayClass<JRNLatLng>>);
59
+ static const auto clazz = javaClassStatic();
60
+ static const auto create = clazz->getStaticMethod<JSignature>("fromCpp");
61
+ return create(
62
+ clazz,
59
63
  [&]() {
60
64
  size_t __size = value.coordinates.size();
61
65
  jni::local_ref<jni::JArrayClass<JRNLatLng>> __array = jni::JArrayClass<JRNLatLng>::newArray(__size);
@@ -85,7 +85,11 @@ namespace margelo::nitro::rngooglemapsplus {
85
85
  */
86
86
  [[maybe_unused]]
87
87
  static jni::local_ref<JRNPolyline::javaobject> fromCpp(const RNPolyline& value) {
88
- return newInstance(
88
+ using JSignature = JRNPolyline(jni::alias_ref<jni::JString>, jni::alias_ref<jni::JDouble>, jni::alias_ref<jni::JBoolean>, jni::alias_ref<jni::JArrayClass<JRNLatLng>>, jni::alias_ref<JRNLineCapType>, jni::alias_ref<JRNLineJoinType>, jni::alias_ref<jni::JBoolean>, jni::alias_ref<jni::JString>, jni::alias_ref<jni::JDouble>);
89
+ static const auto clazz = javaClassStatic();
90
+ static const auto create = clazz->getStaticMethod<JSignature>("fromCpp");
91
+ return create(
92
+ clazz,
89
93
  jni::make_jstring(value.id),
90
94
  value.zIndex.has_value() ? jni::JDouble::valueOf(value.zIndex.value()) : nullptr,
91
95
  value.pressable.has_value() ? jni::JBoolean::valueOf(value.pressable.value()) : nullptr,
@@ -47,7 +47,11 @@ namespace margelo::nitro::rngooglemapsplus {
47
47
  */
48
48
  [[maybe_unused]]
49
49
  static jni::local_ref<JRNPosition::javaobject> fromCpp(const RNPosition& value) {
50
- return newInstance(
50
+ using JSignature = JRNPosition(double, double);
51
+ static const auto clazz = javaClassStatic();
52
+ static const auto create = clazz->getStaticMethod<JSignature>("fromCpp");
53
+ return create(
54
+ clazz,
51
55
  value.x,
52
56
  value.y
53
57
  );
@@ -51,7 +51,11 @@ namespace margelo::nitro::rngooglemapsplus {
51
51
  */
52
52
  [[maybe_unused]]
53
53
  static jni::local_ref<JRNRegion::javaobject> fromCpp(const RNRegion& value) {
54
- return newInstance(
54
+ using JSignature = JRNRegion(jni::alias_ref<JRNLatLng>, double, double);
55
+ static const auto clazz = javaClassStatic();
56
+ static const auto create = clazz->getStaticMethod<JSignature>("fromCpp");
57
+ return create(
58
+ clazz,
55
59
  JRNLatLng::fromCpp(value.center),
56
60
  value.latitudeDelta,
57
61
  value.longitudeDelta
@@ -47,7 +47,11 @@ namespace margelo::nitro::rngooglemapsplus {
47
47
  */
48
48
  [[maybe_unused]]
49
49
  static jni::local_ref<JRNSize::javaobject> fromCpp(const RNSize& value) {
50
- return newInstance(
50
+ using JSignature = JRNSize(double, double);
51
+ static const auto clazz = javaClassStatic();
52
+ static const auto create = clazz->getStaticMethod<JSignature>("fromCpp");
53
+ return create(
54
+ clazz,
51
55
  value.width,
52
56
  value.height
53
57
  );
@@ -59,7 +59,11 @@ namespace margelo::nitro::rngooglemapsplus {
59
59
  */
60
60
  [[maybe_unused]]
61
61
  static jni::local_ref<JRNSnapshotOptions::javaobject> fromCpp(const RNSnapshotOptions& value) {
62
- return newInstance(
62
+ using JSignature = JRNSnapshotOptions(jni::alias_ref<JRNSize>, jni::alias_ref<JRNSnapshotFormat>, double, jni::alias_ref<JRNSnapshotResultType>);
63
+ static const auto clazz = javaClassStatic();
64
+ static const auto create = clazz->getStaticMethod<JSignature>("fromCpp");
65
+ return create(
66
+ clazz,
63
67
  value.size.has_value() ? JRNSize::fromCpp(value.size.value()) : nullptr,
64
68
  JRNSnapshotFormat::fromCpp(value.format),
65
69
  value.quality,
@@ -59,6 +59,6 @@ abstract class HybridRNGoogleMapsPlusModuleSpec: HybridObject() {
59
59
  private external fun initHybrid(): HybridData
60
60
 
61
61
  companion object {
62
- private const val TAG = "HybridRNGoogleMapsPlusModuleSpec"
62
+ protected const val TAG = "HybridRNGoogleMapsPlusModuleSpec"
63
63
  }
64
64
  }
@@ -424,6 +424,6 @@ abstract class HybridRNGoogleMapsPlusViewSpec: HybridView() {
424
424
  private external fun initHybrid(): HybridData
425
425
 
426
426
  companion object {
427
- private const val TAG = "HybridRNGoogleMapsPlusViewSpec"
427
+ protected const val TAG = "HybridRNGoogleMapsPlusViewSpec"
428
428
  }
429
429
  }
@@ -17,19 +17,27 @@ import com.margelo.nitro.core.*
17
17
  */
18
18
  @DoNotStrip
19
19
  @Keep
20
- data class RNAndroidLocationConfig
20
+ data class RNAndroidLocationConfig(
21
21
  @DoNotStrip
22
22
  @Keep
23
- constructor(
24
- @DoNotStrip
25
- @Keep
26
- val priority: RNAndroidLocationPriority?,
27
- @DoNotStrip
28
- @Keep
29
- val interval: Double?,
23
+ val priority: RNAndroidLocationPriority?,
24
+ @DoNotStrip
25
+ @Keep
26
+ val interval: Double?,
27
+ @DoNotStrip
28
+ @Keep
29
+ val minUpdateInterval: Double?
30
+ ) {
31
+ private companion object {
32
+ /**
33
+ * Constructor called from C++
34
+ */
30
35
  @DoNotStrip
31
36
  @Keep
32
- val minUpdateInterval: Double?
33
- ) {
34
- /* main constructor */
37
+ @Suppress("unused")
38
+ @JvmStatic
39
+ private fun fromCpp(priority: RNAndroidLocationPriority?, interval: Double?, minUpdateInterval: Double?): RNAndroidLocationConfig {
40
+ return RNAndroidLocationConfig(priority, interval, minUpdateInterval)
41
+ }
42
+ }
35
43
  }
@@ -17,22 +17,30 @@ import com.margelo.nitro.core.*
17
17
  */
18
18
  @DoNotStrip
19
19
  @Keep
20
- data class RNCamera
20
+ data class RNCamera(
21
21
  @DoNotStrip
22
22
  @Keep
23
- constructor(
24
- @DoNotStrip
25
- @Keep
26
- val center: RNLatLng?,
27
- @DoNotStrip
28
- @Keep
29
- val zoom: Double?,
30
- @DoNotStrip
31
- @Keep
32
- val bearing: Double?,
23
+ val center: RNLatLng?,
24
+ @DoNotStrip
25
+ @Keep
26
+ val zoom: Double?,
27
+ @DoNotStrip
28
+ @Keep
29
+ val bearing: Double?,
30
+ @DoNotStrip
31
+ @Keep
32
+ val tilt: Double?
33
+ ) {
34
+ private companion object {
35
+ /**
36
+ * Constructor called from C++
37
+ */
33
38
  @DoNotStrip
34
39
  @Keep
35
- val tilt: Double?
36
- ) {
37
- /* main constructor */
40
+ @Suppress("unused")
41
+ @JvmStatic
42
+ private fun fromCpp(center: RNLatLng?, zoom: Double?, bearing: Double?, tilt: Double?): RNCamera {
43
+ return RNCamera(center, zoom, bearing, tilt)
44
+ }
45
+ }
38
46
  }
@@ -17,34 +17,42 @@ import com.margelo.nitro.core.*
17
17
  */
18
18
  @DoNotStrip
19
19
  @Keep
20
- data class RNCircle
20
+ data class RNCircle(
21
21
  @DoNotStrip
22
22
  @Keep
23
- constructor(
24
- @DoNotStrip
25
- @Keep
26
- val id: String,
27
- @DoNotStrip
28
- @Keep
29
- val pressable: Boolean?,
30
- @DoNotStrip
31
- @Keep
32
- val zIndex: Double?,
33
- @DoNotStrip
34
- @Keep
35
- val center: RNLatLng,
36
- @DoNotStrip
37
- @Keep
38
- val radius: Double,
39
- @DoNotStrip
40
- @Keep
41
- val strokeWidth: Double?,
42
- @DoNotStrip
43
- @Keep
44
- val strokeColor: String?,
45
- @DoNotStrip
46
- @Keep
47
- val fillColor: String?
48
- ) {
49
- /* main constructor */
23
+ val id: String,
24
+ @DoNotStrip
25
+ @Keep
26
+ val pressable: Boolean?,
27
+ @DoNotStrip
28
+ @Keep
29
+ val zIndex: Double?,
30
+ @DoNotStrip
31
+ @Keep
32
+ val center: RNLatLng,
33
+ @DoNotStrip
34
+ @Keep
35
+ val radius: Double,
36
+ @DoNotStrip
37
+ @Keep
38
+ val strokeWidth: Double?,
39
+ @DoNotStrip
40
+ @Keep
41
+ val strokeColor: String?,
42
+ @DoNotStrip
43
+ @Keep
44
+ val fillColor: String?
45
+ ) {
46
+ private companion object {
47
+ /**
48
+ * Constructor called from C++
49
+ */
50
+ @DoNotStrip
51
+ @Keep
52
+ @Suppress("unused")
53
+ @JvmStatic
54
+ private fun fromCpp(id: String, pressable: Boolean?, zIndex: Double?, center: RNLatLng, radius: Double, strokeWidth: Double?, strokeColor: String?, fillColor: String?): RNCircle {
55
+ return RNCircle(id, pressable, zIndex, center, radius, strokeWidth, strokeColor, fillColor)
56
+ }
57
+ }
50
58
  }
@@ -17,31 +17,39 @@ import com.margelo.nitro.core.*
17
17
  */
18
18
  @DoNotStrip
19
19
  @Keep
20
- data class RNHeatmap
20
+ data class RNHeatmap(
21
21
  @DoNotStrip
22
22
  @Keep
23
- constructor(
24
- @DoNotStrip
25
- @Keep
26
- val id: String,
27
- @DoNotStrip
28
- @Keep
29
- val pressable: Boolean?,
30
- @DoNotStrip
31
- @Keep
32
- val zIndex: Double?,
33
- @DoNotStrip
34
- @Keep
35
- val weightedData: Array<RNHeatmapPoint>,
36
- @DoNotStrip
37
- @Keep
38
- val radius: Double?,
39
- @DoNotStrip
40
- @Keep
41
- val opacity: Double?,
23
+ val id: String,
24
+ @DoNotStrip
25
+ @Keep
26
+ val pressable: Boolean?,
27
+ @DoNotStrip
28
+ @Keep
29
+ val zIndex: Double?,
30
+ @DoNotStrip
31
+ @Keep
32
+ val weightedData: Array<RNHeatmapPoint>,
33
+ @DoNotStrip
34
+ @Keep
35
+ val radius: Double?,
36
+ @DoNotStrip
37
+ @Keep
38
+ val opacity: Double?,
39
+ @DoNotStrip
40
+ @Keep
41
+ val gradient: RNHeatmapGradient?
42
+ ) {
43
+ private companion object {
44
+ /**
45
+ * Constructor called from C++
46
+ */
42
47
  @DoNotStrip
43
48
  @Keep
44
- val gradient: RNHeatmapGradient?
45
- ) {
46
- /* main constructor */
49
+ @Suppress("unused")
50
+ @JvmStatic
51
+ private fun fromCpp(id: String, pressable: Boolean?, zIndex: Double?, weightedData: Array<RNHeatmapPoint>, radius: Double?, opacity: Double?, gradient: RNHeatmapGradient?): RNHeatmap {
52
+ return RNHeatmap(id, pressable, zIndex, weightedData, radius, opacity, gradient)
53
+ }
54
+ }
47
55
  }
@@ -17,19 +17,27 @@ import com.margelo.nitro.core.*
17
17
  */
18
18
  @DoNotStrip
19
19
  @Keep
20
- data class RNHeatmapGradient
20
+ data class RNHeatmapGradient(
21
21
  @DoNotStrip
22
22
  @Keep
23
- constructor(
24
- @DoNotStrip
25
- @Keep
26
- val colors: Array<String>,
27
- @DoNotStrip
28
- @Keep
29
- val startPoints: DoubleArray,
23
+ val colors: Array<String>,
24
+ @DoNotStrip
25
+ @Keep
26
+ val startPoints: DoubleArray,
27
+ @DoNotStrip
28
+ @Keep
29
+ val colorMapSize: Double
30
+ ) {
31
+ private companion object {
32
+ /**
33
+ * Constructor called from C++
34
+ */
30
35
  @DoNotStrip
31
36
  @Keep
32
- val colorMapSize: Double
33
- ) {
34
- /* main constructor */
37
+ @Suppress("unused")
38
+ @JvmStatic
39
+ private fun fromCpp(colors: Array<String>, startPoints: DoubleArray, colorMapSize: Double): RNHeatmapGradient {
40
+ return RNHeatmapGradient(colors, startPoints, colorMapSize)
41
+ }
42
+ }
35
43
  }
@@ -17,19 +17,27 @@ import com.margelo.nitro.core.*
17
17
  */
18
18
  @DoNotStrip
19
19
  @Keep
20
- data class RNHeatmapPoint
20
+ data class RNHeatmapPoint(
21
21
  @DoNotStrip
22
22
  @Keep
23
- constructor(
24
- @DoNotStrip
25
- @Keep
26
- val latitude: Double,
27
- @DoNotStrip
28
- @Keep
29
- val longitude: Double,
23
+ val latitude: Double,
24
+ @DoNotStrip
25
+ @Keep
26
+ val longitude: Double,
27
+ @DoNotStrip
28
+ @Keep
29
+ val weight: Double
30
+ ) {
31
+ private companion object {
32
+ /**
33
+ * Constructor called from C++
34
+ */
30
35
  @DoNotStrip
31
36
  @Keep
32
- val weight: Double
33
- ) {
34
- /* main constructor */
37
+ @Suppress("unused")
38
+ @JvmStatic
39
+ private fun fromCpp(latitude: Double, longitude: Double, weight: Double): RNHeatmapPoint {
40
+ return RNHeatmapPoint(latitude, longitude, weight)
41
+ }
42
+ }
35
43
  }
@@ -17,16 +17,24 @@ import com.margelo.nitro.core.*
17
17
  */
18
18
  @DoNotStrip
19
19
  @Keep
20
- data class RNIOSLocationConfig
20
+ data class RNIOSLocationConfig(
21
21
  @DoNotStrip
22
22
  @Keep
23
- constructor(
24
- @DoNotStrip
25
- @Keep
26
- val desiredAccuracy: RNIOSLocationAccuracy?,
23
+ val desiredAccuracy: RNIOSLocationAccuracy?,
24
+ @DoNotStrip
25
+ @Keep
26
+ val distanceFilterMeters: Double?
27
+ ) {
28
+ private companion object {
29
+ /**
30
+ * Constructor called from C++
31
+ */
27
32
  @DoNotStrip
28
33
  @Keep
29
- val distanceFilterMeters: Double?
30
- ) {
31
- /* main constructor */
34
+ @Suppress("unused")
35
+ @JvmStatic
36
+ private fun fromCpp(desiredAccuracy: RNIOSLocationAccuracy?, distanceFilterMeters: Double?): RNIOSLocationConfig {
37
+ return RNIOSLocationConfig(desiredAccuracy, distanceFilterMeters)
38
+ }
39
+ }
32
40
  }