react-native-google-maps-plus 1.1.0-dev.2 → 1.1.0-dev.3

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 (57) hide show
  1. package/android/src/main/java/com/rngooglemapsplus/GoogleMapsViewImpl.kt +37 -102
  2. package/android/src/main/java/com/rngooglemapsplus/LocationHandler.kt +3 -3
  3. package/android/src/main/java/com/rngooglemapsplus/MapCircleBuilder.kt +16 -2
  4. package/android/src/main/java/com/rngooglemapsplus/MapMarkerBuilder.kt +25 -0
  5. package/android/src/main/java/com/rngooglemapsplus/MapPolygonBuilder.kt +18 -1
  6. package/android/src/main/java/com/rngooglemapsplus/MapPolylineBuilder.kt.kt +26 -9
  7. package/android/src/main/java/com/rngooglemapsplus/RNGoogleMapsPlusView.kt +46 -72
  8. package/ios/GoogleMapViewImpl.swift +94 -212
  9. package/ios/LocationHandler.swift +2 -10
  10. package/ios/MapCircleBuilder.swift +23 -8
  11. package/ios/MapHelper.swift +6 -4
  12. package/ios/MapMarkerBuilder.swift +39 -41
  13. package/ios/MapPolygonBuilder.swift +25 -7
  14. package/ios/MapPolylineBuilder.swift +27 -11
  15. package/ios/RNGoogleMapsPlusView.swift +9 -14
  16. package/ios/extensions/RNCircle+Extension.swift +0 -13
  17. package/ios/extensions/RNPolygon+Extension.swift.swift +2 -19
  18. package/ios/extensions/RNPolyline+Extension.swift.swift +1 -26
  19. package/lib/module/types.js.map +1 -1
  20. package/lib/typescript/src/RNGoogleMapsPlusView.nitro.d.ts +2 -3
  21. package/lib/typescript/src/RNGoogleMapsPlusView.nitro.d.ts.map +1 -1
  22. package/lib/typescript/src/types.d.ts +5 -1
  23. package/lib/typescript/src/types.d.ts.map +1 -1
  24. package/nitrogen/generated/android/c++/JHybridRNGoogleMapsPlusViewSpec.cpp +10 -15
  25. package/nitrogen/generated/android/c++/JHybridRNGoogleMapsPlusViewSpec.hpp +2 -4
  26. package/nitrogen/generated/android/c++/JRNCircle.hpp +4 -4
  27. package/nitrogen/generated/android/c++/JRNMapZoomConfig.hpp +57 -0
  28. package/nitrogen/generated/android/c++/views/JHybridRNGoogleMapsPlusViewStateUpdater.cpp +2 -6
  29. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/HybridRNGoogleMapsPlusViewSpec.kt +1 -7
  30. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNCircle.kt +1 -1
  31. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNMapZoomConfig.kt +32 -0
  32. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/views/HybridRNGoogleMapsPlusViewManager.kt +1 -1
  33. package/nitrogen/generated/ios/RNGoogleMapsPlus-Swift-Cxx-Bridge.cpp +13 -13
  34. package/nitrogen/generated/ios/RNGoogleMapsPlus-Swift-Cxx-Bridge.hpp +57 -33
  35. package/nitrogen/generated/ios/RNGoogleMapsPlus-Swift-Cxx-Umbrella.hpp +3 -0
  36. package/nitrogen/generated/ios/c++/HybridRNGoogleMapsPlusViewSpecSwift.hpp +8 -12
  37. package/nitrogen/generated/ios/c++/views/HybridRNGoogleMapsPlusViewComponent.mm +4 -9
  38. package/nitrogen/generated/ios/swift/HybridRNGoogleMapsPlusViewSpec.swift +1 -2
  39. package/nitrogen/generated/ios/swift/HybridRNGoogleMapsPlusViewSpec_cxx.swift +46 -94
  40. package/nitrogen/generated/ios/swift/RNCamera.swift +1 -8
  41. package/nitrogen/generated/ios/swift/RNCircle.swift +5 -17
  42. package/nitrogen/generated/ios/swift/RNInitialProps.swift +1 -8
  43. package/nitrogen/generated/ios/swift/RNLocationConfig.swift +2 -16
  44. package/nitrogen/generated/ios/swift/RNMapZoomConfig.swift +70 -0
  45. package/nitrogen/generated/ios/swift/RNMarker.swift +2 -16
  46. package/nitrogen/generated/ios/swift/RNPolygon.swift +11 -15
  47. package/nitrogen/generated/ios/swift/RNPolyline.swift +11 -15
  48. package/nitrogen/generated/shared/c++/HybridRNGoogleMapsPlusViewSpec.cpp +2 -4
  49. package/nitrogen/generated/shared/c++/HybridRNGoogleMapsPlusViewSpec.hpp +5 -4
  50. package/nitrogen/generated/shared/c++/RNCircle.hpp +5 -5
  51. package/nitrogen/generated/shared/c++/RNMapZoomConfig.hpp +71 -0
  52. package/nitrogen/generated/shared/c++/views/HybridRNGoogleMapsPlusViewComponent.cpp +7 -19
  53. package/nitrogen/generated/shared/c++/views/HybridRNGoogleMapsPlusViewComponent.hpp +2 -2
  54. package/nitrogen/generated/shared/json/RNGoogleMapsPlusViewConfig.json +1 -2
  55. package/package.json +13 -13
  56. package/src/RNGoogleMapsPlusView.nitro.ts +2 -2
  57. package/src/types.ts +6 -1
@@ -1,20 +1,38 @@
1
1
  import GoogleMaps
2
2
 
3
3
  final class MapPolygonBuilder {
4
-
5
- func buildPolygon(_ p: RNPolygon) -> GMSPolygon {
4
+ func build(_ p: RNPolygon) -> GMSPolygon {
6
5
  let path = GMSMutablePath()
7
6
  p.coordinates.forEach {
8
7
  path.add(
9
8
  CLLocationCoordinate2D(latitude: $0.latitude, longitude: $0.longitude)
10
9
  )
11
10
  }
11
+
12
12
  let pg = GMSPolygon(path: path)
13
- if let fc = p.fillColor?.toUIColor() { pg.fillColor = fc }
14
- if let sc = p.strokeColor?.toUIColor() { pg.strokeColor = sc }
15
- if let sw = p.strokeWidth { pg.strokeWidth = CGFloat(sw) }
16
- if let pr = p.pressable { pg.isTappable = pr }
17
- if let zi = p.zIndex { pg.zIndex = Int32(zi) }
13
+
14
+ p.fillColor.map { pg.fillColor = $0.toUIColor() }
15
+ p.strokeColor.map { pg.strokeColor = $0.toUIColor() }
16
+ p.strokeWidth.map { pg.strokeWidth = CGFloat($0) }
17
+ p.pressable.map { pg.isTappable = $0 }
18
+ p.zIndex.map { pg.zIndex = Int32($0) }
19
+
18
20
  return pg
19
21
  }
22
+
23
+ func update(_ next: RNPolygon, _ pg: GMSPolygon) {
24
+ let path = GMSMutablePath()
25
+ next.coordinates.forEach {
26
+ path.add(
27
+ CLLocationCoordinate2D(latitude: $0.latitude, longitude: $0.longitude)
28
+ )
29
+ }
30
+ pg.path = path
31
+
32
+ pg.fillColor = next.fillColor?.toUIColor() ?? .clear
33
+ pg.strokeColor = next.strokeColor?.toUIColor() ?? .black
34
+ pg.strokeWidth = CGFloat(next.strokeWidth ?? 1.0)
35
+ pg.isTappable = next.pressable ?? false
36
+ pg.zIndex = Int32(next.zIndex ?? 0)
37
+ }
20
38
  }
@@ -1,24 +1,40 @@
1
1
  import GoogleMaps
2
2
 
3
3
  final class MapPolylineBuilder {
4
- func buildPolyline(_ p: RNPolyline) -> GMSPolyline {
4
+ func build(_ p: RNPolyline) -> GMSPolyline {
5
5
  let path = GMSMutablePath()
6
6
  p.coordinates.forEach {
7
7
  path.add(
8
8
  CLLocationCoordinate2D(latitude: $0.latitude, longitude: $0.longitude)
9
9
  )
10
10
  }
11
+
11
12
  let pl = GMSPolyline(path: path)
12
- if let w = p.width { pl.strokeWidth = CGFloat(w) }
13
- if let c = p.color?.toUIColor() { pl.strokeColor = c }
14
- if let cap = p.lineCap {
15
- /// pl.lineCap = mapLineCap(cap)
16
- }
17
- if let join = p.lineJoin {
18
- /// pl.strokeJoin = mapLineJoin(join)
19
- }
20
- if let pr = p.pressable { pl.isTappable = pr }
21
- if let zi = p.zIndex { pl.zIndex = Int32(zi) }
13
+
14
+ p.width.map { pl.strokeWidth = CGFloat($0) }
15
+ p.color.map { pl.strokeColor = $0.toUIColor() }
16
+ p.lineCap.map { _ in /* not supported */ }
17
+ p.lineJoin.map { _ in /* not supported */ }
18
+ p.pressable.map { pl.isTappable = $0 }
19
+ p.zIndex.map { pl.zIndex = Int32($0) }
20
+
22
21
  return pl
23
22
  }
23
+
24
+ func update(_ next: RNPolyline, _ pl: GMSPolyline) {
25
+ let path = GMSMutablePath()
26
+ next.coordinates.forEach {
27
+ path.add(
28
+ CLLocationCoordinate2D(latitude: $0.latitude, longitude: $0.longitude)
29
+ )
30
+ }
31
+ pl.path = path
32
+
33
+ /* lineCap not supported */
34
+ /* lineJoin not supported */
35
+ pl.strokeWidth = CGFloat(next.width ?? 1.0)
36
+ pl.strokeColor = next.color?.toUIColor() ?? .black
37
+ pl.isTappable = next.pressable ?? false
38
+ pl.zIndex = Int32(next.zIndex ?? 0)
39
+ }
24
40
  }
@@ -88,13 +88,8 @@ final class RNGoogleMapsPlusView: HybridRNGoogleMapsPlusViewSpec {
88
88
  }
89
89
 
90
90
  @MainActor
91
- var minZoomLevel: Double? {
92
- didSet { impl.minZoomLevel = minZoomLevel }
93
- }
94
-
95
- @MainActor
96
- var maxZoomLevel: Double? {
97
- didSet { impl.maxZoomLevel = maxZoomLevel }
91
+ var mapZoomConfig: RNMapZoomConfig? {
92
+ didSet { impl.mapZoomConfig = mapZoomConfig }
98
93
  }
99
94
 
100
95
  @MainActor
@@ -135,7 +130,7 @@ final class RNGoogleMapsPlusView: HybridRNGoogleMapsPlusViewSpec {
135
130
  if let prev = prevById[id] {
136
131
  if !prev.markerEquals(next) {
137
132
  impl.updateMarker(id: id) { m in
138
- self.markerBuilder.updateMarker(prev, next, m)
133
+ self.markerBuilder.update(prev, next, m)
139
134
  }
140
135
  }
141
136
  } else {
@@ -168,13 +163,13 @@ final class RNGoogleMapsPlusView: HybridRNGoogleMapsPlusViewSpec {
168
163
  if let prev = prevById[id] {
169
164
  if !prev.polylineEquals(next) {
170
165
  impl.updatePolyline(id: id) { pl in
171
- prev.updatePolyline(next, pl)
166
+ self.polylineBuilder.update(next, pl)
172
167
  }
173
168
  }
174
169
  } else {
175
170
  impl.addPolyline(
176
171
  id: id,
177
- polyline: polylineBuilder.buildPolyline(next)
172
+ polyline: polylineBuilder.build(next)
178
173
  )
179
174
  }
180
175
  }
@@ -200,11 +195,11 @@ final class RNGoogleMapsPlusView: HybridRNGoogleMapsPlusViewSpec {
200
195
  if let prev = prevById[id] {
201
196
  if !prev.polygonEquals(next) {
202
197
  impl.updatePolygon(id: id) { pg in
203
- prev.updatePolygon(next, pg)
198
+ self.polygonBuilder.update(next, pg)
204
199
  }
205
200
  }
206
201
  } else {
207
- impl.addPolygon(id: id, polygon: polygonBuilder.buildPolygon(next))
202
+ impl.addPolygon(id: id, polygon: polygonBuilder.build(next))
208
203
  }
209
204
  }
210
205
  }
@@ -229,11 +224,11 @@ final class RNGoogleMapsPlusView: HybridRNGoogleMapsPlusViewSpec {
229
224
  if let prev = prevById[id] {
230
225
  if !prev.circleEquals(next) {
231
226
  impl.updateCircle(id: id) { circle in
232
- prev.updateCircle(next, circle)
227
+ self.circleBuilder.update(next, circle)
233
228
  }
234
229
  }
235
230
  } else {
236
- impl.addCircle(id: id, circle: circleBuilder.buildCircle(next))
231
+ impl.addCircle(id: id, circle: circleBuilder.build(next))
237
232
  }
238
233
  }
239
234
  }
@@ -1,19 +1,6 @@
1
1
  import GoogleMaps
2
2
 
3
3
  extension RNCircle {
4
- func updateCircle(_ next: RNCircle, _ c: GMSCircle) {
5
- c.position = CLLocationCoordinate2D(
6
- latitude: next.center.latitude,
7
- longitude: next.center.longitude
8
- )
9
- if let r = next.radius { c.radius = r }
10
- if let fc = next.fillColor?.toUIColor() { c.fillColor = fc }
11
- if let sc = next.strokeColor?.toUIColor() { c.strokeColor = sc }
12
- if let sw = next.strokeWidth { c.strokeWidth = CGFloat(sw) }
13
- if let pr = next.pressable { c.isTappable = pr }
14
- if let zi = next.zIndex { c.zIndex = Int32(zi) }
15
- }
16
-
17
4
  func circleEquals(_ b: RNCircle) -> Bool {
18
5
  zIndex == b.zIndex && pressable == b.pressable
19
6
  && center.latitude == b.center.latitude
@@ -1,25 +1,6 @@
1
1
  import GoogleMaps
2
2
 
3
3
  extension RNPolygon {
4
- func updatePolygon(_ next: RNPolygon, _ pg: GMSPolygon) {
5
- let path = GMSMutablePath()
6
- next.coordinates.forEach {
7
- path.add(
8
- CLLocationCoordinate2D(
9
- latitude: $0.latitude,
10
- longitude: $0.longitude
11
- )
12
- )
13
- }
14
- pg.path = path
15
-
16
- if let fc = next.fillColor?.toUIColor() { pg.fillColor = fc }
17
- if let sc = next.strokeColor?.toUIColor() { pg.strokeColor = sc }
18
- if let sw = next.strokeWidth { pg.strokeWidth = CGFloat(sw) }
19
- if let pr = next.pressable { pg.isTappable = pr }
20
- if let zi = next.zIndex { pg.zIndex = Int32(zi) }
21
- }
22
-
23
4
  func polygonEquals(_ b: RNPolygon) -> Bool {
24
5
  guard zIndex == b.zIndex,
25
6
  pressable == b.pressable,
@@ -28,12 +9,14 @@ extension RNPolygon {
28
9
  strokeColor == b.strokeColor,
29
10
  coordinates.count == b.coordinates.count
30
11
  else { return false }
12
+
31
13
  for i in 0..<coordinates.count {
32
14
  if coordinates[i].latitude != b.coordinates[i].latitude
33
15
  || coordinates[i].longitude != b.coordinates[i].longitude {
34
16
  return false
35
17
  }
36
18
  }
19
+
37
20
  return true
38
21
  }
39
22
  }
@@ -1,32 +1,6 @@
1
1
  import GoogleMaps
2
2
 
3
3
  extension RNPolyline {
4
- func updatePolyline(_ next: RNPolyline, _ pl: GMSPolyline) {
5
- let path = GMSMutablePath()
6
- next.coordinates.forEach {
7
- path.add(
8
- CLLocationCoordinate2D(
9
- latitude: $0.latitude,
10
- longitude: $0.longitude
11
- )
12
- )
13
- }
14
- pl.path = path
15
- if let w = next.width { pl.strokeWidth = CGFloat(w) }
16
- if let cap = next.lineCap {
17
- pl.spans = nil
18
- /// gms.lineCap = mapLineCap(cap)
19
- }
20
- if let join = next.lineJoin {
21
- /// gms.strokeJoin = mapLineJoin(join)
22
- }
23
- if let c = next.color?.toUIColor() {
24
- pl.strokeColor = c
25
- }
26
- if let pr = next.pressable { pl.isTappable = pr }
27
- if let zi = next.zIndex { pl.zIndex = Int32(zi) }
28
- }
29
-
30
4
  func polylineEquals(_ b: RNPolyline) -> Bool {
31
5
  guard zIndex == b.zIndex,
32
6
  (width ?? 0) == (b.width ?? 0),
@@ -35,6 +9,7 @@ extension RNPolyline {
35
9
  color == b.color,
36
10
  coordinates.count == b.coordinates.count
37
11
  else { return false }
12
+
38
13
  for i in 0..<coordinates.count {
39
14
  if coordinates[i].latitude != b.coordinates[i].latitude
40
15
  || coordinates[i].longitude != b.coordinates[i].longitude {
@@ -1 +1 @@
1
- {"version":3,"names":["RNAndroidLocationPriority","RNIOSLocationAccuracy","RNAndroidLocationPermissionResult","RNIOSPermissionResult","RNLocationErrorCode","RNMapErrorCode"],"sourceRoot":"../../src","sources":["types.ts"],"mappings":";;AA0CA;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;;AA+FA,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":";;AA0CA;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;;AAoGA,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,5 +1,5 @@
1
1
  import type { HybridView, HybridViewMethods, HybridViewProps } from 'react-native-nitro-modules';
2
- import type { RNCamera, RNLatLng, RNMapPadding, RNPolygon, RNPolyline, RNUserInterfaceStyle, RNLocationErrorCode, RNMarker, RNLocationPermissionResult, RNRegion, RNLocation, RNMapErrorCode, RNMapType, RNInitialProps, RNCircle, RNMapUiSettings, RNLocationConfig } from './types';
2
+ import type { RNCamera, RNLatLng, RNMapPadding, RNPolygon, RNPolyline, RNUserInterfaceStyle, RNLocationErrorCode, RNMarker, RNLocationPermissionResult, RNRegion, RNLocation, RNMapErrorCode, RNMapType, RNInitialProps, RNCircle, RNMapUiSettings, RNLocationConfig, RNMapZoomConfig } from './types';
3
3
  export interface RNGoogleMapsPlusViewProps extends HybridViewProps {
4
4
  initialProps?: RNInitialProps;
5
5
  uiSettings?: RNMapUiSettings;
@@ -9,8 +9,7 @@ export interface RNGoogleMapsPlusViewProps extends HybridViewProps {
9
9
  indoorEnabled?: boolean;
10
10
  customMapStyle?: string;
11
11
  userInterfaceStyle?: RNUserInterfaceStyle;
12
- minZoomLevel?: number;
13
- maxZoomLevel?: number;
12
+ mapZoomConfig?: RNMapZoomConfig;
14
13
  mapPadding?: RNMapPadding;
15
14
  mapType?: RNMapType;
16
15
  markers?: RNMarker[];
@@ -1 +1 @@
1
- {"version":3,"file":"RNGoogleMapsPlusView.nitro.d.ts","sourceRoot":"","sources":["../../../src/RNGoogleMapsPlusView.nitro.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RNGoogleMapsPlusView.nitro.d.ts","sourceRoot":"","sources":["../../../src/RNGoogleMapsPlusView.nitro.ts"],"names":[],"mappings":"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"}
@@ -67,6 +67,10 @@ export type RNPosition = {
67
67
  x: number;
68
68
  y: number;
69
69
  };
70
+ export type RNMapZoomConfig = {
71
+ min?: number;
72
+ max?: number;
73
+ };
70
74
  export type RNLineCapType = 'butt' | 'round' | 'square';
71
75
  export type RNLineJoinType = 'miter' | 'round' | 'bevel';
72
76
  export type RNMarker = {
@@ -105,7 +109,7 @@ export type RNCircle = {
105
109
  pressable?: boolean;
106
110
  zIndex?: number;
107
111
  center: RNLatLng;
108
- radius?: number;
112
+ radius: number;
109
113
  strokeWidth?: number;
110
114
  strokeColor?: string;
111
115
  fillColor?: string;
@@ -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":"AAAA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,8BAA8B,CAAC;AAChF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAE7D,MAAM,MAAM,iBAAiB,GAAG,UAAU,CAAC,2BAA2B,CAAC,CAAC;AAExE,MAAM,MAAM,cAAc,GAAG;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,QAAQ,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,+BAA+B,CAAC,EAAE,OAAO,CAAC;IAC1C,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC;AAE/D,MAAM,MAAM,aAAa,GAAG;IAAE,SAAS,EAAE,QAAQ,CAAC;IAAC,SAAS,EAAE,QAAQ,CAAA;CAAE,CAAC;AAEzE,MAAM,MAAM,YAAY,GAAG;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,GAAG,WAAW,GAAG,SAAS,CAAC;AAE/E,MAAM,MAAM,oBAAoB,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,CAAC;AAEhE,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC;AA+BnC,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC;AAcnC,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC;AAMlC,MAAM,WAAW,WAAW;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,YAAY,CAAC;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,WAAW,iBAAiB;IAChC,WAAW,CAAC,EAAE,aAAa,CAAC;IAC5B,WAAW,CAAC,EAAE,aAAa,CAAC;IAC5B,OAAO,EAAE,WAAW,EAAE,CAAC;CACxB;AAED,MAAM,MAAM,QAAQ,GAAG;IACrB,MAAM,CAAC,EAAE,QAAQ,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG;IACrB,MAAM,EAAE,QAAQ,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;AACxD,MAAM,MAAM,cAAc,GAAG,OAAO,GAAG,OAAO,GAAG,OAAO,CAAC;AAEzD,MAAM,MAAM,QAAQ,GAAG;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,QAAQ,CAAC;IACrB,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,OAAO,CAAC,EAAE,WAAW,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,EAAE,QAAQ,EAAE,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,EAAE,QAAQ,EAAE,CAAC;IACxB,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,QAAQ,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,OAAO,CAAC,EAAE,uBAAuB,CAAC;IAClC,GAAG,CAAC,EAAE,mBAAmB,CAAC;CAC3B,CAAC;AACF,MAAM,MAAM,uBAAuB,GAAG;IACpC,QAAQ,CAAC,EAAE,yBAAyB,CAAC;IACrC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B,CAAC;AAEF,oBAAY,yBAAyB;IACnC,sBAAsB,IAAI;IAC1B,gCAAgC,IAAI;IACpC,kBAAkB,IAAI;IACtB,gBAAgB,IAAI;CACrB;AAED,MAAM,MAAM,mBAAmB,GAAG;IAChC,eAAe,CAAC,EAAE,qBAAqB,CAAC;IACxC,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B,CAAC;AAEF,oBAAY,qBAAqB;IAC/B,aAAa,IAAI;IACjB,0BAA0B,IAAI;IAC9B,8BAA8B,IAAI;IAClC,kBAAkB,IAAI;CACvB;AAED,MAAM,MAAM,0BAA0B,GAAG;IACvC,OAAO,CAAC,EAAE,iCAAiC,CAAC;IAC5C,GAAG,CAAC,EAAE,qBAAqB,CAAC;CAC7B,CAAC;AAEF,oBAAY,iCAAiC;IAC3C,OAAO,IAAI;IACX,MAAM,KAAK;IACX,eAAe,KAAK;CACrB;AAED,oBAAY,qBAAqB;IAC/B,MAAM,KAAK;IACX,UAAU,IAAI;CACf;AAED,MAAM,MAAM,UAAU,GAAG;IACvB,MAAM,EAAE,QAAQ,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,oBAAY,mBAAmB;IAC7B,iBAAiB,IAAI;IACrB,oBAAoB,IAAI;IACxB,OAAO,IAAI;IACX,0BAA0B,IAAI;IAC9B,sBAAsB,IAAI;IAC1B,cAAc,KAAK;CACpB;AAED,oBAAY,cAAc;IACxB,qBAAqB,IAAI;IACzB,qBAAqB,IAAI;IACzB,sBAAsB,IAAI;IAC1B,sBAAsB,IAAI;IAC1B,6BAA6B,IAAI;IACjC,qBAAqB,IAAI;IACzB,OAAO,IAAI;CACZ"}
@@ -17,6 +17,8 @@ namespace margelo::nitro::rngooglemapsplus { struct RNLatLng; }
17
17
  namespace margelo::nitro::rngooglemapsplus { struct RNMapUiSettings; }
18
18
  // Forward declaration of `RNUserInterfaceStyle` to properly resolve imports.
19
19
  namespace margelo::nitro::rngooglemapsplus { enum class RNUserInterfaceStyle; }
20
+ // Forward declaration of `RNMapZoomConfig` to properly resolve imports.
21
+ namespace margelo::nitro::rngooglemapsplus { struct RNMapZoomConfig; }
20
22
  // Forward declaration of `RNMapPadding` to properly resolve imports.
21
23
  namespace margelo::nitro::rngooglemapsplus { struct RNMapPadding; }
22
24
  // Forward declaration of `RNMapType` to properly resolve imports.
@@ -74,6 +76,8 @@ namespace margelo::nitro::rngooglemapsplus { enum class RNIOSPermissionResult; }
74
76
  #include "JRNMapUiSettings.hpp"
75
77
  #include "RNUserInterfaceStyle.hpp"
76
78
  #include "JRNUserInterfaceStyle.hpp"
79
+ #include "RNMapZoomConfig.hpp"
80
+ #include "JRNMapZoomConfig.hpp"
77
81
  #include "RNMapPadding.hpp"
78
82
  #include "JRNMapPadding.hpp"
79
83
  #include "RNMapType.hpp"
@@ -225,23 +229,14 @@ namespace margelo::nitro::rngooglemapsplus {
225
229
  static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JRNUserInterfaceStyle> /* userInterfaceStyle */)>("setUserInterfaceStyle");
226
230
  method(_javaPart, userInterfaceStyle.has_value() ? JRNUserInterfaceStyle::fromCpp(userInterfaceStyle.value()) : nullptr);
227
231
  }
228
- std::optional<double> JHybridRNGoogleMapsPlusViewSpec::getMinZoomLevel() {
229
- static const auto method = javaClassStatic()->getMethod<jni::local_ref<jni::JDouble>()>("getMinZoomLevel");
232
+ std::optional<RNMapZoomConfig> JHybridRNGoogleMapsPlusViewSpec::getMapZoomConfig() {
233
+ static const auto method = javaClassStatic()->getMethod<jni::local_ref<JRNMapZoomConfig>()>("getMapZoomConfig");
230
234
  auto __result = method(_javaPart);
231
- return __result != nullptr ? std::make_optional(__result->value()) : std::nullopt;
232
- }
233
- void JHybridRNGoogleMapsPlusViewSpec::setMinZoomLevel(std::optional<double> minZoomLevel) {
234
- static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<jni::JDouble> /* minZoomLevel */)>("setMinZoomLevel");
235
- method(_javaPart, minZoomLevel.has_value() ? jni::JDouble::valueOf(minZoomLevel.value()) : nullptr);
236
- }
237
- std::optional<double> JHybridRNGoogleMapsPlusViewSpec::getMaxZoomLevel() {
238
- static const auto method = javaClassStatic()->getMethod<jni::local_ref<jni::JDouble>()>("getMaxZoomLevel");
239
- auto __result = method(_javaPart);
240
- return __result != nullptr ? std::make_optional(__result->value()) : std::nullopt;
235
+ return __result != nullptr ? std::make_optional(__result->toCpp()) : std::nullopt;
241
236
  }
242
- void JHybridRNGoogleMapsPlusViewSpec::setMaxZoomLevel(std::optional<double> maxZoomLevel) {
243
- static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<jni::JDouble> /* maxZoomLevel */)>("setMaxZoomLevel");
244
- method(_javaPart, maxZoomLevel.has_value() ? jni::JDouble::valueOf(maxZoomLevel.value()) : nullptr);
237
+ void JHybridRNGoogleMapsPlusViewSpec::setMapZoomConfig(const std::optional<RNMapZoomConfig>& mapZoomConfig) {
238
+ static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JRNMapZoomConfig> /* mapZoomConfig */)>("setMapZoomConfig");
239
+ method(_javaPart, mapZoomConfig.has_value() ? JRNMapZoomConfig::fromCpp(mapZoomConfig.value()) : nullptr);
245
240
  }
246
241
  std::optional<RNMapPadding> JHybridRNGoogleMapsPlusViewSpec::getMapPadding() {
247
242
  static const auto method = javaClassStatic()->getMethod<jni::local_ref<JRNMapPadding>()>("getMapPadding");
@@ -65,10 +65,8 @@ namespace margelo::nitro::rngooglemapsplus {
65
65
  void setCustomMapStyle(const std::optional<std::string>& customMapStyle) override;
66
66
  std::optional<RNUserInterfaceStyle> getUserInterfaceStyle() override;
67
67
  void setUserInterfaceStyle(std::optional<RNUserInterfaceStyle> userInterfaceStyle) override;
68
- std::optional<double> getMinZoomLevel() override;
69
- void setMinZoomLevel(std::optional<double> minZoomLevel) override;
70
- std::optional<double> getMaxZoomLevel() override;
71
- void setMaxZoomLevel(std::optional<double> maxZoomLevel) override;
68
+ std::optional<RNMapZoomConfig> getMapZoomConfig() override;
69
+ void setMapZoomConfig(const std::optional<RNMapZoomConfig>& mapZoomConfig) override;
72
70
  std::optional<RNMapPadding> getMapPadding() override;
73
71
  void setMapPadding(const std::optional<RNMapPadding>& mapPadding) override;
74
72
  std::optional<RNMapType> getMapType() override;
@@ -42,8 +42,8 @@ namespace margelo::nitro::rngooglemapsplus {
42
42
  jni::local_ref<jni::JDouble> zIndex = this->getFieldValue(fieldZIndex);
43
43
  static const auto fieldCenter = clazz->getField<JRNLatLng>("center");
44
44
  jni::local_ref<JRNLatLng> center = this->getFieldValue(fieldCenter);
45
- static const auto fieldRadius = clazz->getField<jni::JDouble>("radius");
46
- jni::local_ref<jni::JDouble> radius = this->getFieldValue(fieldRadius);
45
+ static const auto fieldRadius = clazz->getField<double>("radius");
46
+ double radius = this->getFieldValue(fieldRadius);
47
47
  static const auto fieldStrokeWidth = clazz->getField<jni::JDouble>("strokeWidth");
48
48
  jni::local_ref<jni::JDouble> strokeWidth = this->getFieldValue(fieldStrokeWidth);
49
49
  static const auto fieldStrokeColor = clazz->getField<jni::JString>("strokeColor");
@@ -55,7 +55,7 @@ namespace margelo::nitro::rngooglemapsplus {
55
55
  pressable != nullptr ? std::make_optional(static_cast<bool>(pressable->value())) : std::nullopt,
56
56
  zIndex != nullptr ? std::make_optional(zIndex->value()) : std::nullopt,
57
57
  center->toCpp(),
58
- radius != nullptr ? std::make_optional(radius->value()) : std::nullopt,
58
+ radius,
59
59
  strokeWidth != nullptr ? std::make_optional(strokeWidth->value()) : std::nullopt,
60
60
  strokeColor != nullptr ? std::make_optional(strokeColor->toStdString()) : std::nullopt,
61
61
  fillColor != nullptr ? std::make_optional(fillColor->toStdString()) : std::nullopt
@@ -73,7 +73,7 @@ namespace margelo::nitro::rngooglemapsplus {
73
73
  value.pressable.has_value() ? jni::JBoolean::valueOf(value.pressable.value()) : nullptr,
74
74
  value.zIndex.has_value() ? jni::JDouble::valueOf(value.zIndex.value()) : nullptr,
75
75
  JRNLatLng::fromCpp(value.center),
76
- value.radius.has_value() ? jni::JDouble::valueOf(value.radius.value()) : nullptr,
76
+ value.radius,
77
77
  value.strokeWidth.has_value() ? jni::JDouble::valueOf(value.strokeWidth.value()) : nullptr,
78
78
  value.strokeColor.has_value() ? jni::make_jstring(value.strokeColor.value()) : nullptr,
79
79
  value.fillColor.has_value() ? jni::make_jstring(value.fillColor.value()) : nullptr
@@ -0,0 +1,57 @@
1
+ ///
2
+ /// JRNMapZoomConfig.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 "RNMapZoomConfig.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 "RNMapZoomConfig" and the the Kotlin data class "RNMapZoomConfig".
21
+ */
22
+ struct JRNMapZoomConfig final: public jni::JavaClass<JRNMapZoomConfig> {
23
+ public:
24
+ static auto constexpr kJavaDescriptor = "Lcom/rngooglemapsplus/RNMapZoomConfig;";
25
+
26
+ public:
27
+ /**
28
+ * Convert this Java/Kotlin-based struct to the C++ struct RNMapZoomConfig by copying all values to C++.
29
+ */
30
+ [[maybe_unused]]
31
+ [[nodiscard]]
32
+ RNMapZoomConfig toCpp() const {
33
+ static const auto clazz = javaClassStatic();
34
+ static const auto fieldMin = clazz->getField<jni::JDouble>("min");
35
+ jni::local_ref<jni::JDouble> min = this->getFieldValue(fieldMin);
36
+ static const auto fieldMax = clazz->getField<jni::JDouble>("max");
37
+ jni::local_ref<jni::JDouble> max = this->getFieldValue(fieldMax);
38
+ return RNMapZoomConfig(
39
+ min != nullptr ? std::make_optional(min->value()) : std::nullopt,
40
+ max != nullptr ? std::make_optional(max->value()) : std::nullopt
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<JRNMapZoomConfig::javaobject> fromCpp(const RNMapZoomConfig& value) {
50
+ return newInstance(
51
+ value.min.has_value() ? jni::JDouble::valueOf(value.min.value()) : nullptr,
52
+ value.max.has_value() ? jni::JDouble::valueOf(value.max.value()) : nullptr
53
+ );
54
+ }
55
+ };
56
+
57
+ } // namespace margelo::nitro::rngooglemapsplus
@@ -68,12 +68,8 @@ void JHybridRNGoogleMapsPlusViewStateUpdater::updateViewProps(jni::alias_ref<jni
68
68
  view->setUserInterfaceStyle(props.userInterfaceStyle.value);
69
69
  // TODO: Set isDirty = false
70
70
  }
71
- if (props.minZoomLevel.isDirty) {
72
- view->setMinZoomLevel(props.minZoomLevel.value);
73
- // TODO: Set isDirty = false
74
- }
75
- if (props.maxZoomLevel.isDirty) {
76
- view->setMaxZoomLevel(props.maxZoomLevel.value);
71
+ if (props.mapZoomConfig.isDirty) {
72
+ view->setMapZoomConfig(props.mapZoomConfig.value);
77
73
  // TODO: Set isDirty = false
78
74
  }
79
75
  if (props.mapPadding.isDirty) {
@@ -90,13 +90,7 @@ abstract class HybridRNGoogleMapsPlusViewSpec: HybridView() {
90
90
  @get:Keep
91
91
  @set:DoNotStrip
92
92
  @set:Keep
93
- abstract var minZoomLevel: Double?
94
-
95
- @get:DoNotStrip
96
- @get:Keep
97
- @set:DoNotStrip
98
- @set:Keep
99
- abstract var maxZoomLevel: Double?
93
+ abstract var mapZoomConfig: RNMapZoomConfig?
100
94
 
101
95
  @get:DoNotStrip
102
96
  @get:Keep
@@ -35,7 +35,7 @@ data class RNCircle
35
35
  val center: RNLatLng,
36
36
  @DoNotStrip
37
37
  @Keep
38
- val radius: Double?,
38
+ val radius: Double,
39
39
  @DoNotStrip
40
40
  @Keep
41
41
  val strokeWidth: Double?,
@@ -0,0 +1,32 @@
1
+ ///
2
+ /// RNMapZoomConfig.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 "RNMapZoomConfig".
17
+ */
18
+ @DoNotStrip
19
+ @Keep
20
+ data class RNMapZoomConfig
21
+ @DoNotStrip
22
+ @Keep
23
+ constructor(
24
+ @DoNotStrip
25
+ @Keep
26
+ val min: Double?,
27
+ @DoNotStrip
28
+ @Keep
29
+ val max: Double?
30
+ ) {
31
+ /* main constructor */
32
+ }
@@ -17,7 +17,7 @@ import com.rngooglemapsplus.*
17
17
  /**
18
18
  * Represents the React Native `ViewManager` for the "RNGoogleMapsPlusView" Nitro HybridView.
19
19
  */
20
- class HybridRNGoogleMapsPlusViewManager: SimpleViewManager<View>() {
20
+ open class HybridRNGoogleMapsPlusViewManager: SimpleViewManager<View>() {
21
21
  private val views = hashMapOf<View, RNGoogleMapsPlusView>()
22
22
 
23
23
  override fun getName(): String {