react-native-google-maps-plus 1.3.0-dev.4 → 1.3.0-dev.5

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 (42) hide show
  1. package/android/src/main/java/com/rngooglemapsplus/GoogleMapsViewImpl.kt +15 -23
  2. package/android/src/main/java/com/rngooglemapsplus/MapCircleBuilder.kt +4 -3
  3. package/android/src/main/java/com/rngooglemapsplus/MapMarkerBuilder.kt +10 -6
  4. package/android/src/main/java/com/rngooglemapsplus/MapPolygonBuilder.kt +18 -10
  5. package/android/src/main/java/com/rngooglemapsplus/MapPolylineBuilder.kt.kt +6 -4
  6. package/android/src/main/java/com/rngooglemapsplus/RNGoogleMapsPlusView.kt +8 -5
  7. package/android/src/main/java/com/rngooglemapsplus/extensions/LatLngExtension.kt +6 -0
  8. package/android/src/main/java/com/rngooglemapsplus/extensions/RNCameraExtension.kt +1 -2
  9. package/android/src/main/java/com/rngooglemapsplus/extensions/RNLatLngExtension.kt +6 -0
  10. package/ios/GoogleMapViewImpl.swift +18 -49
  11. package/ios/MapCircleBuilder.swift +2 -10
  12. package/ios/MapMarkerBuilder.swift +11 -9
  13. package/ios/MapPolygonBuilder.swift +17 -2
  14. package/ios/MapPolylineBuilder.swift +4 -2
  15. package/ios/RNGoogleMapsPlusView.swift +7 -5
  16. package/ios/extensions/CLLocationCoordinate2D+Extension.swift +7 -0
  17. package/ios/extensions/RNLatLng+Extension.swift +7 -0
  18. package/lib/module/types.js.map +1 -1
  19. package/lib/typescript/src/types.d.ts +8 -0
  20. package/lib/typescript/src/types.d.ts.map +1 -1
  21. package/nitrogen/generated/android/c++/JHybridRNGoogleMapsPlusViewSpec.cpp +4 -0
  22. package/nitrogen/generated/android/c++/JRNMarker.hpp +8 -0
  23. package/nitrogen/generated/android/c++/JRNPolygon.hpp +29 -2
  24. package/nitrogen/generated/android/c++/JRNPolygonHole.hpp +72 -0
  25. package/nitrogen/generated/android/c++/JRNPolyline.hpp +4 -0
  26. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNMarker.kt +6 -0
  27. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNPolygon.kt +7 -1
  28. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNPolygonHole.kt +29 -0
  29. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNPolyline.kt +3 -0
  30. package/nitrogen/generated/ios/RNGoogleMapsPlus-Swift-Cxx-Bridge.hpp +29 -0
  31. package/nitrogen/generated/ios/RNGoogleMapsPlus-Swift-Cxx-Umbrella.hpp +3 -0
  32. package/nitrogen/generated/ios/c++/HybridRNGoogleMapsPlusViewSpecSwift.hpp +3 -0
  33. package/nitrogen/generated/ios/swift/RNMarker.swift +54 -1
  34. package/nitrogen/generated/ios/swift/RNPolygon.swift +66 -1
  35. package/nitrogen/generated/ios/swift/RNPolygonHole.swift +47 -0
  36. package/nitrogen/generated/ios/swift/RNPolyline.swift +24 -1
  37. package/nitrogen/generated/shared/c++/RNMarker.hpp +9 -1
  38. package/nitrogen/generated/shared/c++/RNPolygon.hpp +13 -2
  39. package/nitrogen/generated/shared/c++/RNPolygonHole.hpp +69 -0
  40. package/nitrogen/generated/shared/c++/RNPolyline.hpp +5 -1
  41. package/package.json +1 -1
  42. package/src/types.ts +9 -0
@@ -34,11 +34,13 @@ final class RNGoogleMapsPlusView: HybridRNGoogleMapsPlusViewSpec {
34
34
  if !propsInitialized {
35
35
  propsInitialized = true
36
36
  Task { @MainActor in
37
- impl.initMapView(
38
- mapId: self.initialProps?.mapId,
39
- liteMode: self.initialProps?.liteMode,
40
- camera: self.initialProps?.camera?.toGMSCameraPosition(current: nil)
41
- )
37
+ let options = GMSMapViewOptions()
38
+ initialProps?.mapId.map { options.mapID = GMSMapID(identifier: $0) }
39
+ initialProps?.liteMode.map { _ in /* not supported */ }
40
+ initialProps?.camera.map {
41
+ options.camera = $0.toGMSCameraPosition(current: nil)
42
+ }
43
+ impl.initMapView(googleMapOptions: options)
42
44
  }
43
45
  }
44
46
  }
@@ -0,0 +1,7 @@
1
+ import CoreLocation
2
+
3
+ extension CLLocationCoordinate2D {
4
+ func toRNLatLng() -> RNLatLng {
5
+ RNLatLng(latitude: latitude, longitude: longitude)
6
+ }
7
+ }
@@ -0,0 +1,7 @@
1
+ import CoreLocation
2
+
3
+ extension RNLatLng {
4
+ func toCLLocationCoordinate2D() -> CLLocationCoordinate2D {
5
+ CLLocationCoordinate2D(latitude: latitude, longitude: longitude)
6
+ }
7
+ }
@@ -1 +1 @@
1
- {"version":3,"names":["RNAndroidLocationPriority","RNIOSLocationAccuracy","RNAndroidLocationPermissionResult","RNIOSPermissionResult","RNLocationErrorCode","RNMapErrorCode"],"sourceRoot":"../../src","sources":["types.ts"],"mappings":";;AAgEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAIA;AACA;AACA;;AAmJA,WAAYA,yBAAyB,0BAAzBA,yBAAyB;EAAzBA,yBAAyB,CAAzBA,yBAAyB;EAAzBA,yBAAyB,CAAzBA,yBAAyB;EAAzBA,yBAAyB,CAAzBA,yBAAyB;EAAzBA,yBAAyB,CAAzBA,yBAAyB;EAAA,OAAzBA,yBAAyB;AAAA;AAYrC,WAAYC,qBAAqB,0BAArBA,qBAAqB;EAArBA,qBAAqB,CAArBA,qBAAqB;EAArBA,qBAAqB,CAArBA,qBAAqB;EAArBA,qBAAqB,CAArBA,qBAAqB;EAArBA,qBAAqB,CAArBA,qBAAqB;EAAA,OAArBA,qBAAqB;AAAA;AAYjC,WAAYC,iCAAiC,0BAAjCA,iCAAiC;EAAjCA,iCAAiC,CAAjCA,iCAAiC;EAAjCA,iCAAiC,CAAjCA,iCAAiC;EAAjCA,iCAAiC,CAAjCA,iCAAiC;EAAA,OAAjCA,iCAAiC;AAAA;AAM7C,WAAYC,qBAAqB,0BAArBA,qBAAqB;EAArBA,qBAAqB,CAArBA,qBAAqB;EAArBA,qBAAqB,CAArBA,qBAAqB;EAAA,OAArBA,qBAAqB;AAAA;AAUjC,WAAYC,mBAAmB,0BAAnBA,mBAAmB;EAAnBA,mBAAmB,CAAnBA,mBAAmB;EAAnBA,mBAAmB,CAAnBA,mBAAmB;EAAnBA,mBAAmB,CAAnBA,mBAAmB;EAAnBA,mBAAmB,CAAnBA,mBAAmB;EAAnBA,mBAAmB,CAAnBA,mBAAmB;EAAnBA,mBAAmB,CAAnBA,mBAAmB;EAAA,OAAnBA,mBAAmB;AAAA;AAS/B,WAAYC,cAAc,0BAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAA,OAAdA,cAAc;AAAA","ignoreList":[]}
1
+ {"version":3,"names":["RNAndroidLocationPriority","RNIOSLocationAccuracy","RNAndroidLocationPermissionResult","RNIOSPermissionResult","RNLocationErrorCode","RNMapErrorCode"],"sourceRoot":"../../src","sources":["types.ts"],"mappings":";;AAgEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAIA;AACA;AACA;;AA4JA,WAAYA,yBAAyB,0BAAzBA,yBAAyB;EAAzBA,yBAAyB,CAAzBA,yBAAyB;EAAzBA,yBAAyB,CAAzBA,yBAAyB;EAAzBA,yBAAyB,CAAzBA,yBAAyB;EAAzBA,yBAAyB,CAAzBA,yBAAyB;EAAA,OAAzBA,yBAAyB;AAAA;AAYrC,WAAYC,qBAAqB,0BAArBA,qBAAqB;EAArBA,qBAAqB,CAArBA,qBAAqB;EAArBA,qBAAqB,CAArBA,qBAAqB;EAArBA,qBAAqB,CAArBA,qBAAqB;EAArBA,qBAAqB,CAArBA,qBAAqB;EAAA,OAArBA,qBAAqB;AAAA;AAYjC,WAAYC,iCAAiC,0BAAjCA,iCAAiC;EAAjCA,iCAAiC,CAAjCA,iCAAiC;EAAjCA,iCAAiC,CAAjCA,iCAAiC;EAAjCA,iCAAiC,CAAjCA,iCAAiC;EAAA,OAAjCA,iCAAiC;AAAA;AAM7C,WAAYC,qBAAqB,0BAArBA,qBAAqB;EAArBA,qBAAqB,CAArBA,qBAAqB;EAArBA,qBAAqB,CAArBA,qBAAqB;EAAA,OAArBA,qBAAqB;AAAA;AAUjC,WAAYC,mBAAmB,0BAAnBA,mBAAmB;EAAnBA,mBAAmB,CAAnBA,mBAAmB;EAAnBA,mBAAmB,CAAnBA,mBAAmB;EAAnBA,mBAAmB,CAAnBA,mBAAmB;EAAnBA,mBAAmB,CAAnBA,mBAAmB;EAAnBA,mBAAmB,CAAnBA,mBAAmB;EAAnBA,mBAAmB,CAAnBA,mBAAmB;EAAA,OAAnBA,mBAAmB;AAAA;AAS/B,WAAYC,cAAc,0BAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAA,OAAdA,cAAc;AAAA","ignoreList":[]}
@@ -96,6 +96,8 @@ export type RNMarker = {
96
96
  opacity?: number;
97
97
  flat?: boolean;
98
98
  draggable?: boolean;
99
+ rotation?: number;
100
+ infoWindowAnchor?: RNPosition;
99
101
  iconSvg?: RNMarkerSvg;
100
102
  };
101
103
  export type RNMarkerSvg = {
@@ -111,6 +113,11 @@ export type RNPolygon = {
111
113
  fillColor?: string;
112
114
  strokeColor?: string;
113
115
  strokeWidth?: number;
116
+ holes?: RNPolygonHole[];
117
+ geodesic?: boolean;
118
+ };
119
+ export type RNPolygonHole = {
120
+ coordinates: RNLatLng[];
114
121
  };
115
122
  export type RNPolyline = {
116
123
  id: string;
@@ -119,6 +126,7 @@ export type RNPolyline = {
119
126
  coordinates: RNLatLng[];
120
127
  lineCap?: RNLineCapType;
121
128
  lineJoin?: RNLineJoinType;
129
+ geodesic?: boolean;
122
130
  color?: string;
123
131
  width?: number;
124
132
  };
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/types.ts"],"names":[],"mappings":"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"}
@@ -31,6 +31,8 @@ namespace margelo::nitro::rngooglemapsplus { struct RNPosition; }
31
31
  namespace margelo::nitro::rngooglemapsplus { struct RNMarkerSvg; }
32
32
  // Forward declaration of `RNPolygon` to properly resolve imports.
33
33
  namespace margelo::nitro::rngooglemapsplus { struct RNPolygon; }
34
+ // Forward declaration of `RNPolygonHole` to properly resolve imports.
35
+ namespace margelo::nitro::rngooglemapsplus { struct RNPolygonHole; }
34
36
  // Forward declaration of `RNPolyline` to properly resolve imports.
35
37
  namespace margelo::nitro::rngooglemapsplus { struct RNPolyline; }
36
38
  // Forward declaration of `RNLineCapType` to properly resolve imports.
@@ -113,6 +115,8 @@ namespace margelo::nitro::rngooglemapsplus { enum class RNSnapshotResultType; }
113
115
  #include "JRNMarkerSvg.hpp"
114
116
  #include "RNPolygon.hpp"
115
117
  #include "JRNPolygon.hpp"
118
+ #include "RNPolygonHole.hpp"
119
+ #include "JRNPolygonHole.hpp"
116
120
  #include "RNPolyline.hpp"
117
121
  #include "JRNPolyline.hpp"
118
122
  #include "RNLineCapType.hpp"
@@ -58,6 +58,10 @@ namespace margelo::nitro::rngooglemapsplus {
58
58
  jni::local_ref<jni::JBoolean> flat = this->getFieldValue(fieldFlat);
59
59
  static const auto fieldDraggable = clazz->getField<jni::JBoolean>("draggable");
60
60
  jni::local_ref<jni::JBoolean> draggable = this->getFieldValue(fieldDraggable);
61
+ static const auto fieldRotation = clazz->getField<jni::JDouble>("rotation");
62
+ jni::local_ref<jni::JDouble> rotation = this->getFieldValue(fieldRotation);
63
+ static const auto fieldInfoWindowAnchor = clazz->getField<JRNPosition>("infoWindowAnchor");
64
+ jni::local_ref<JRNPosition> infoWindowAnchor = this->getFieldValue(fieldInfoWindowAnchor);
61
65
  static const auto fieldIconSvg = clazz->getField<JRNMarkerSvg>("iconSvg");
62
66
  jni::local_ref<JRNMarkerSvg> iconSvg = this->getFieldValue(fieldIconSvg);
63
67
  return RNMarker(
@@ -71,6 +75,8 @@ namespace margelo::nitro::rngooglemapsplus {
71
75
  opacity != nullptr ? std::make_optional(opacity->value()) : std::nullopt,
72
76
  flat != nullptr ? std::make_optional(static_cast<bool>(flat->value())) : std::nullopt,
73
77
  draggable != nullptr ? std::make_optional(static_cast<bool>(draggable->value())) : std::nullopt,
78
+ rotation != nullptr ? std::make_optional(rotation->value()) : std::nullopt,
79
+ infoWindowAnchor != nullptr ? std::make_optional(infoWindowAnchor->toCpp()) : std::nullopt,
74
80
  iconSvg != nullptr ? std::make_optional(iconSvg->toCpp()) : std::nullopt
75
81
  );
76
82
  }
@@ -92,6 +98,8 @@ namespace margelo::nitro::rngooglemapsplus {
92
98
  value.opacity.has_value() ? jni::JDouble::valueOf(value.opacity.value()) : nullptr,
93
99
  value.flat.has_value() ? jni::JBoolean::valueOf(value.flat.value()) : nullptr,
94
100
  value.draggable.has_value() ? jni::JBoolean::valueOf(value.draggable.value()) : nullptr,
101
+ value.rotation.has_value() ? jni::JDouble::valueOf(value.rotation.value()) : nullptr,
102
+ value.infoWindowAnchor.has_value() ? JRNPosition::fromCpp(value.infoWindowAnchor.value()) : nullptr,
95
103
  value.iconSvg.has_value() ? JRNMarkerSvg::fromCpp(value.iconSvg.value()) : nullptr
96
104
  );
97
105
  }
@@ -11,7 +11,9 @@
11
11
  #include "RNPolygon.hpp"
12
12
 
13
13
  #include "JRNLatLng.hpp"
14
+ #include "JRNPolygonHole.hpp"
14
15
  #include "RNLatLng.hpp"
16
+ #include "RNPolygonHole.hpp"
15
17
  #include <optional>
16
18
  #include <string>
17
19
  #include <vector>
@@ -49,6 +51,10 @@ namespace margelo::nitro::rngooglemapsplus {
49
51
  jni::local_ref<jni::JString> strokeColor = this->getFieldValue(fieldStrokeColor);
50
52
  static const auto fieldStrokeWidth = clazz->getField<jni::JDouble>("strokeWidth");
51
53
  jni::local_ref<jni::JDouble> strokeWidth = this->getFieldValue(fieldStrokeWidth);
54
+ static const auto fieldHoles = clazz->getField<jni::JArrayClass<JRNPolygonHole>>("holes");
55
+ jni::local_ref<jni::JArrayClass<JRNPolygonHole>> holes = this->getFieldValue(fieldHoles);
56
+ static const auto fieldGeodesic = clazz->getField<jni::JBoolean>("geodesic");
57
+ jni::local_ref<jni::JBoolean> geodesic = this->getFieldValue(fieldGeodesic);
52
58
  return RNPolygon(
53
59
  id->toStdString(),
54
60
  zIndex != nullptr ? std::make_optional(zIndex->value()) : std::nullopt,
@@ -65,7 +71,18 @@ namespace margelo::nitro::rngooglemapsplus {
65
71
  }(),
66
72
  fillColor != nullptr ? std::make_optional(fillColor->toStdString()) : std::nullopt,
67
73
  strokeColor != nullptr ? std::make_optional(strokeColor->toStdString()) : std::nullopt,
68
- strokeWidth != nullptr ? std::make_optional(strokeWidth->value()) : std::nullopt
74
+ strokeWidth != nullptr ? std::make_optional(strokeWidth->value()) : std::nullopt,
75
+ holes != nullptr ? std::make_optional([&]() {
76
+ size_t __size = holes->size();
77
+ std::vector<RNPolygonHole> __vector;
78
+ __vector.reserve(__size);
79
+ for (size_t __i = 0; __i < __size; __i++) {
80
+ auto __element = holes->getElement(__i);
81
+ __vector.push_back(__element->toCpp());
82
+ }
83
+ return __vector;
84
+ }()) : std::nullopt,
85
+ geodesic != nullptr ? std::make_optional(static_cast<bool>(geodesic->value())) : std::nullopt
69
86
  );
70
87
  }
71
88
 
@@ -90,7 +107,17 @@ namespace margelo::nitro::rngooglemapsplus {
90
107
  }(),
91
108
  value.fillColor.has_value() ? jni::make_jstring(value.fillColor.value()) : nullptr,
92
109
  value.strokeColor.has_value() ? jni::make_jstring(value.strokeColor.value()) : nullptr,
93
- value.strokeWidth.has_value() ? jni::JDouble::valueOf(value.strokeWidth.value()) : nullptr
110
+ value.strokeWidth.has_value() ? jni::JDouble::valueOf(value.strokeWidth.value()) : nullptr,
111
+ value.holes.has_value() ? [&]() {
112
+ size_t __size = value.holes.value().size();
113
+ jni::local_ref<jni::JArrayClass<JRNPolygonHole>> __array = jni::JArrayClass<JRNPolygonHole>::newArray(__size);
114
+ for (size_t __i = 0; __i < __size; __i++) {
115
+ const auto& __element = value.holes.value()[__i];
116
+ __array->setElement(__i, *JRNPolygonHole::fromCpp(__element));
117
+ }
118
+ return __array;
119
+ }() : nullptr,
120
+ value.geodesic.has_value() ? jni::JBoolean::valueOf(value.geodesic.value()) : nullptr
94
121
  );
95
122
  }
96
123
  };
@@ -0,0 +1,72 @@
1
+ ///
2
+ /// JRNPolygonHole.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 "RNPolygonHole.hpp"
12
+
13
+ #include "JRNLatLng.hpp"
14
+ #include "RNLatLng.hpp"
15
+ #include <vector>
16
+
17
+ namespace margelo::nitro::rngooglemapsplus {
18
+
19
+ using namespace facebook;
20
+
21
+ /**
22
+ * The C++ JNI bridge between the C++ struct "RNPolygonHole" and the the Kotlin data class "RNPolygonHole".
23
+ */
24
+ struct JRNPolygonHole final: public jni::JavaClass<JRNPolygonHole> {
25
+ public:
26
+ static auto constexpr kJavaDescriptor = "Lcom/rngooglemapsplus/RNPolygonHole;";
27
+
28
+ public:
29
+ /**
30
+ * Convert this Java/Kotlin-based struct to the C++ struct RNPolygonHole by copying all values to C++.
31
+ */
32
+ [[maybe_unused]]
33
+ [[nodiscard]]
34
+ RNPolygonHole toCpp() const {
35
+ static const auto clazz = javaClassStatic();
36
+ static const auto fieldCoordinates = clazz->getField<jni::JArrayClass<JRNLatLng>>("coordinates");
37
+ jni::local_ref<jni::JArrayClass<JRNLatLng>> coordinates = this->getFieldValue(fieldCoordinates);
38
+ return RNPolygonHole(
39
+ [&]() {
40
+ size_t __size = coordinates->size();
41
+ std::vector<RNLatLng> __vector;
42
+ __vector.reserve(__size);
43
+ for (size_t __i = 0; __i < __size; __i++) {
44
+ auto __element = coordinates->getElement(__i);
45
+ __vector.push_back(__element->toCpp());
46
+ }
47
+ return __vector;
48
+ }()
49
+ );
50
+ }
51
+
52
+ public:
53
+ /**
54
+ * Create a Java/Kotlin-based struct by copying all values from the given C++ struct to Java.
55
+ */
56
+ [[maybe_unused]]
57
+ static jni::local_ref<JRNPolygonHole::javaobject> fromCpp(const RNPolygonHole& value) {
58
+ return newInstance(
59
+ [&]() {
60
+ size_t __size = value.coordinates.size();
61
+ jni::local_ref<jni::JArrayClass<JRNLatLng>> __array = jni::JArrayClass<JRNLatLng>::newArray(__size);
62
+ for (size_t __i = 0; __i < __size; __i++) {
63
+ const auto& __element = value.coordinates[__i];
64
+ __array->setElement(__i, *JRNLatLng::fromCpp(__element));
65
+ }
66
+ return __array;
67
+ }()
68
+ );
69
+ }
70
+ };
71
+
72
+ } // namespace margelo::nitro::rngooglemapsplus
@@ -51,6 +51,8 @@ namespace margelo::nitro::rngooglemapsplus {
51
51
  jni::local_ref<JRNLineCapType> lineCap = this->getFieldValue(fieldLineCap);
52
52
  static const auto fieldLineJoin = clazz->getField<JRNLineJoinType>("lineJoin");
53
53
  jni::local_ref<JRNLineJoinType> lineJoin = this->getFieldValue(fieldLineJoin);
54
+ static const auto fieldGeodesic = clazz->getField<jni::JBoolean>("geodesic");
55
+ jni::local_ref<jni::JBoolean> geodesic = this->getFieldValue(fieldGeodesic);
54
56
  static const auto fieldColor = clazz->getField<jni::JString>("color");
55
57
  jni::local_ref<jni::JString> color = this->getFieldValue(fieldColor);
56
58
  static const auto fieldWidth = clazz->getField<jni::JDouble>("width");
@@ -71,6 +73,7 @@ namespace margelo::nitro::rngooglemapsplus {
71
73
  }(),
72
74
  lineCap != nullptr ? std::make_optional(lineCap->toCpp()) : std::nullopt,
73
75
  lineJoin != nullptr ? std::make_optional(lineJoin->toCpp()) : std::nullopt,
76
+ geodesic != nullptr ? std::make_optional(static_cast<bool>(geodesic->value())) : std::nullopt,
74
77
  color != nullptr ? std::make_optional(color->toStdString()) : std::nullopt,
75
78
  width != nullptr ? std::make_optional(width->value()) : std::nullopt
76
79
  );
@@ -97,6 +100,7 @@ namespace margelo::nitro::rngooglemapsplus {
97
100
  }(),
98
101
  value.lineCap.has_value() ? JRNLineCapType::fromCpp(value.lineCap.value()) : nullptr,
99
102
  value.lineJoin.has_value() ? JRNLineJoinType::fromCpp(value.lineJoin.value()) : nullptr,
103
+ value.geodesic.has_value() ? jni::JBoolean::valueOf(value.geodesic.value()) : nullptr,
100
104
  value.color.has_value() ? jni::make_jstring(value.color.value()) : nullptr,
101
105
  value.width.has_value() ? jni::JDouble::valueOf(value.width.value()) : nullptr
102
106
  );
@@ -53,6 +53,12 @@ data class RNMarker
53
53
  val draggable: Boolean?,
54
54
  @DoNotStrip
55
55
  @Keep
56
+ val rotation: Double?,
57
+ @DoNotStrip
58
+ @Keep
59
+ val infoWindowAnchor: RNPosition?,
60
+ @DoNotStrip
61
+ @Keep
56
62
  val iconSvg: RNMarkerSvg?
57
63
  ) {
58
64
  /* main constructor */
@@ -41,7 +41,13 @@ data class RNPolygon
41
41
  val strokeColor: String?,
42
42
  @DoNotStrip
43
43
  @Keep
44
- val strokeWidth: Double?
44
+ val strokeWidth: Double?,
45
+ @DoNotStrip
46
+ @Keep
47
+ val holes: Array<RNPolygonHole>?,
48
+ @DoNotStrip
49
+ @Keep
50
+ val geodesic: Boolean?
45
51
  ) {
46
52
  /* main constructor */
47
53
  }
@@ -0,0 +1,29 @@
1
+ ///
2
+ /// RNPolygonHole.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.proguard.annotations.DoNotStrip
12
+ import com.margelo.nitro.core.*
13
+
14
+
15
+ /**
16
+ * Represents the JavaScript object/struct "RNPolygonHole".
17
+ */
18
+ @DoNotStrip
19
+ @Keep
20
+ data class RNPolygonHole
21
+ @DoNotStrip
22
+ @Keep
23
+ constructor(
24
+ @DoNotStrip
25
+ @Keep
26
+ val coordinates: Array<RNLatLng>
27
+ ) {
28
+ /* main constructor */
29
+ }
@@ -41,6 +41,9 @@ data class RNPolyline
41
41
  val lineJoin: RNLineJoinType?,
42
42
  @DoNotStrip
43
43
  @Keep
44
+ val geodesic: Boolean?,
45
+ @DoNotStrip
46
+ @Keep
44
47
  val color: String?,
45
48
  @DoNotStrip
46
49
  @Keep
@@ -72,6 +72,8 @@ namespace margelo::nitro::rngooglemapsplus { struct RNMapZoomConfig; }
72
72
  namespace margelo::nitro::rngooglemapsplus { struct RNMarkerSvg; }
73
73
  // Forward declaration of `RNMarker` to properly resolve imports.
74
74
  namespace margelo::nitro::rngooglemapsplus { struct RNMarker; }
75
+ // Forward declaration of `RNPolygonHole` to properly resolve imports.
76
+ namespace margelo::nitro::rngooglemapsplus { struct RNPolygonHole; }
75
77
  // Forward declaration of `RNPolygon` to properly resolve imports.
76
78
  namespace margelo::nitro::rngooglemapsplus { struct RNPolygon; }
77
79
  // Forward declaration of `RNPolyline` to properly resolve imports.
@@ -125,6 +127,7 @@ namespace RNGoogleMapsPlus { class HybridRNGoogleMapsPlusViewSpec_cxx; }
125
127
  #include "RNMarker.hpp"
126
128
  #include "RNMarkerSvg.hpp"
127
129
  #include "RNPolygon.hpp"
130
+ #include "RNPolygonHole.hpp"
128
131
  #include "RNPolyline.hpp"
129
132
  #include "RNPosition.hpp"
130
133
  #include "RNRegion.hpp"
@@ -503,6 +506,32 @@ namespace margelo::nitro::rngooglemapsplus::bridge::swift {
503
506
  return vector;
504
507
  }
505
508
 
509
+ // pragma MARK: std::vector<RNPolygonHole>
510
+ /**
511
+ * Specialized version of `std::vector<RNPolygonHole>`.
512
+ */
513
+ using std__vector_RNPolygonHole_ = std::vector<RNPolygonHole>;
514
+ inline std::vector<RNPolygonHole> create_std__vector_RNPolygonHole_(size_t size) noexcept {
515
+ std::vector<RNPolygonHole> vector;
516
+ vector.reserve(size);
517
+ return vector;
518
+ }
519
+
520
+ // pragma MARK: std::optional<std::vector<RNPolygonHole>>
521
+ /**
522
+ * Specialized version of `std::optional<std::vector<RNPolygonHole>>`.
523
+ */
524
+ using std__optional_std__vector_RNPolygonHole__ = std::optional<std::vector<RNPolygonHole>>;
525
+ inline std::optional<std::vector<RNPolygonHole>> create_std__optional_std__vector_RNPolygonHole__(const std::vector<RNPolygonHole>& value) noexcept {
526
+ return std::optional<std::vector<RNPolygonHole>>(value);
527
+ }
528
+ inline bool has_value_std__optional_std__vector_RNPolygonHole__(const std::optional<std::vector<RNPolygonHole>>& optional) noexcept {
529
+ return optional.has_value();
530
+ }
531
+ inline std::vector<RNPolygonHole> get_std__optional_std__vector_RNPolygonHole__(const std::optional<std::vector<RNPolygonHole>>& optional) noexcept {
532
+ return *optional;
533
+ }
534
+
506
535
  // pragma MARK: std::vector<RNPolygon>
507
536
  /**
508
537
  * Specialized version of `std::vector<RNPolygon>`.
@@ -72,6 +72,8 @@ namespace margelo::nitro::rngooglemapsplus { struct RNMapZoomConfig; }
72
72
  namespace margelo::nitro::rngooglemapsplus { struct RNMarkerSvg; }
73
73
  // Forward declaration of `RNMarker` to properly resolve imports.
74
74
  namespace margelo::nitro::rngooglemapsplus { struct RNMarker; }
75
+ // Forward declaration of `RNPolygonHole` to properly resolve imports.
76
+ namespace margelo::nitro::rngooglemapsplus { struct RNPolygonHole; }
75
77
  // Forward declaration of `RNPolygon` to properly resolve imports.
76
78
  namespace margelo::nitro::rngooglemapsplus { struct RNPolygon; }
77
79
  // Forward declaration of `RNPolyline` to properly resolve imports.
@@ -125,6 +127,7 @@ namespace margelo::nitro::rngooglemapsplus { enum class RNUserInterfaceStyle; }
125
127
  #include "RNMarker.hpp"
126
128
  #include "RNMarkerSvg.hpp"
127
129
  #include "RNPolygon.hpp"
130
+ #include "RNPolygonHole.hpp"
128
131
  #include "RNPolyline.hpp"
129
132
  #include "RNPosition.hpp"
130
133
  #include "RNRegion.hpp"
@@ -36,6 +36,8 @@ namespace margelo::nitro::rngooglemapsplus { struct RNPosition; }
36
36
  namespace margelo::nitro::rngooglemapsplus { struct RNMarkerSvg; }
37
37
  // Forward declaration of `RNPolygon` to properly resolve imports.
38
38
  namespace margelo::nitro::rngooglemapsplus { struct RNPolygon; }
39
+ // Forward declaration of `RNPolygonHole` to properly resolve imports.
40
+ namespace margelo::nitro::rngooglemapsplus { struct RNPolygonHole; }
39
41
  // Forward declaration of `RNPolyline` to properly resolve imports.
40
42
  namespace margelo::nitro::rngooglemapsplus { struct RNPolyline; }
41
43
  // Forward declaration of `RNLineCapType` to properly resolve imports.
@@ -106,6 +108,7 @@ namespace margelo::nitro::rngooglemapsplus { enum class RNIOSPermissionResult; }
106
108
  #include "RNPosition.hpp"
107
109
  #include "RNMarkerSvg.hpp"
108
110
  #include "RNPolygon.hpp"
111
+ #include "RNPolygonHole.hpp"
109
112
  #include "RNPolyline.hpp"
110
113
  #include "RNLineCapType.hpp"
111
114
  #include "RNLineJoinType.hpp"
@@ -18,7 +18,7 @@ public extension RNMarker {
18
18
  /**
19
19
  * Create a new instance of `RNMarker`.
20
20
  */
21
- init(id: String, zIndex: Double?, coordinate: RNLatLng, anchor: RNPosition?, showInfoWindow: Bool?, title: String?, snippet: String?, opacity: Double?, flat: Bool?, draggable: Bool?, iconSvg: RNMarkerSvg?) {
21
+ init(id: String, zIndex: Double?, coordinate: RNLatLng, anchor: RNPosition?, showInfoWindow: Bool?, title: String?, snippet: String?, opacity: Double?, flat: Bool?, draggable: Bool?, rotation: Double?, infoWindowAnchor: RNPosition?, iconSvg: RNMarkerSvg?) {
22
22
  self.init(std.string(id), { () -> bridge.std__optional_double_ in
23
23
  if let __unwrappedValue = zIndex {
24
24
  return bridge.create_std__optional_double_(__unwrappedValue)
@@ -67,6 +67,18 @@ public extension RNMarker {
67
67
  } else {
68
68
  return .init()
69
69
  }
70
+ }(), { () -> bridge.std__optional_double_ in
71
+ if let __unwrappedValue = rotation {
72
+ return bridge.create_std__optional_double_(__unwrappedValue)
73
+ } else {
74
+ return .init()
75
+ }
76
+ }(), { () -> bridge.std__optional_RNPosition_ in
77
+ if let __unwrappedValue = infoWindowAnchor {
78
+ return bridge.create_std__optional_RNPosition_(__unwrappedValue)
79
+ } else {
80
+ return .init()
81
+ }
70
82
  }(), { () -> bridge.std__optional_RNMarkerSvg_ in
71
83
  if let __unwrappedValue = iconSvg {
72
84
  return bridge.create_std__optional_RNMarkerSvg_(__unwrappedValue)
@@ -255,6 +267,47 @@ public extension RNMarker {
255
267
  }
256
268
  }
257
269
 
270
+ var rotation: Double? {
271
+ @inline(__always)
272
+ get {
273
+ return self.__rotation.value
274
+ }
275
+ @inline(__always)
276
+ set {
277
+ self.__rotation = { () -> bridge.std__optional_double_ in
278
+ if let __unwrappedValue = newValue {
279
+ return bridge.create_std__optional_double_(__unwrappedValue)
280
+ } else {
281
+ return .init()
282
+ }
283
+ }()
284
+ }
285
+ }
286
+
287
+ var infoWindowAnchor: RNPosition? {
288
+ @inline(__always)
289
+ get {
290
+ return { () -> RNPosition? in
291
+ if bridge.has_value_std__optional_RNPosition_(self.__infoWindowAnchor) {
292
+ let __unwrapped = bridge.get_std__optional_RNPosition_(self.__infoWindowAnchor)
293
+ return __unwrapped
294
+ } else {
295
+ return nil
296
+ }
297
+ }()
298
+ }
299
+ @inline(__always)
300
+ set {
301
+ self.__infoWindowAnchor = { () -> bridge.std__optional_RNPosition_ in
302
+ if let __unwrappedValue = newValue {
303
+ return bridge.create_std__optional_RNPosition_(__unwrappedValue)
304
+ } else {
305
+ return .init()
306
+ }
307
+ }()
308
+ }
309
+ }
310
+
258
311
  var iconSvg: RNMarkerSvg? {
259
312
  @inline(__always)
260
313
  get {
@@ -18,7 +18,7 @@ public extension RNPolygon {
18
18
  /**
19
19
  * Create a new instance of `RNPolygon`.
20
20
  */
21
- init(id: String, zIndex: Double?, pressable: Bool?, coordinates: [RNLatLng], fillColor: String?, strokeColor: String?, strokeWidth: Double?) {
21
+ init(id: String, zIndex: Double?, pressable: Bool?, coordinates: [RNLatLng], fillColor: String?, strokeColor: String?, strokeWidth: Double?, holes: [RNPolygonHole]?, geodesic: Bool?) {
22
22
  self.init(std.string(id), { () -> bridge.std__optional_double_ in
23
23
  if let __unwrappedValue = zIndex {
24
24
  return bridge.create_std__optional_double_(__unwrappedValue)
@@ -55,6 +55,24 @@ public extension RNPolygon {
55
55
  } else {
56
56
  return .init()
57
57
  }
58
+ }(), { () -> bridge.std__optional_std__vector_RNPolygonHole__ in
59
+ if let __unwrappedValue = holes {
60
+ return bridge.create_std__optional_std__vector_RNPolygonHole__({ () -> bridge.std__vector_RNPolygonHole_ in
61
+ var __vector = bridge.create_std__vector_RNPolygonHole_(__unwrappedValue.count)
62
+ for __item in __unwrappedValue {
63
+ __vector.push_back(__item)
64
+ }
65
+ return __vector
66
+ }())
67
+ } else {
68
+ return .init()
69
+ }
70
+ }(), { () -> bridge.std__optional_bool_ in
71
+ if let __unwrappedValue = geodesic {
72
+ return bridge.create_std__optional_bool_(__unwrappedValue)
73
+ } else {
74
+ return .init()
75
+ }
58
76
  }())
59
77
  }
60
78
 
@@ -184,4 +202,51 @@ public extension RNPolygon {
184
202
  }()
185
203
  }
186
204
  }
205
+
206
+ var holes: [RNPolygonHole]? {
207
+ @inline(__always)
208
+ get {
209
+ return { () -> [RNPolygonHole]? in
210
+ if bridge.has_value_std__optional_std__vector_RNPolygonHole__(self.__holes) {
211
+ let __unwrapped = bridge.get_std__optional_std__vector_RNPolygonHole__(self.__holes)
212
+ return __unwrapped.map({ __item in __item })
213
+ } else {
214
+ return nil
215
+ }
216
+ }()
217
+ }
218
+ @inline(__always)
219
+ set {
220
+ self.__holes = { () -> bridge.std__optional_std__vector_RNPolygonHole__ in
221
+ if let __unwrappedValue = newValue {
222
+ return bridge.create_std__optional_std__vector_RNPolygonHole__({ () -> bridge.std__vector_RNPolygonHole_ in
223
+ var __vector = bridge.create_std__vector_RNPolygonHole_(__unwrappedValue.count)
224
+ for __item in __unwrappedValue {
225
+ __vector.push_back(__item)
226
+ }
227
+ return __vector
228
+ }())
229
+ } else {
230
+ return .init()
231
+ }
232
+ }()
233
+ }
234
+ }
235
+
236
+ var geodesic: Bool? {
237
+ @inline(__always)
238
+ get {
239
+ return self.__geodesic.value
240
+ }
241
+ @inline(__always)
242
+ set {
243
+ self.__geodesic = { () -> bridge.std__optional_bool_ in
244
+ if let __unwrappedValue = newValue {
245
+ return bridge.create_std__optional_bool_(__unwrappedValue)
246
+ } else {
247
+ return .init()
248
+ }
249
+ }()
250
+ }
251
+ }
187
252
  }