react-native-google-maps-plus 1.0.2 → 1.0.3-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 (64) hide show
  1. package/README.md +127 -11
  2. package/android/src/main/java/com/rngooglemapsplus/GoogleMapsViewImpl.kt +239 -112
  3. package/android/src/main/java/com/rngooglemapsplus/MapCircle.kt +29 -0
  4. package/android/src/main/java/com/rngooglemapsplus/MapMarker.kt +6 -5
  5. package/android/src/main/java/com/rngooglemapsplus/MapPolygon.kt +3 -1
  6. package/android/src/main/java/com/rngooglemapsplus/MapPolyline.kt +3 -1
  7. package/android/src/main/java/com/rngooglemapsplus/RNGoogleMapsPlusView.kt +115 -88
  8. package/ios/Color.swift +20 -20
  9. package/ios/GoogleMapViewImpl.swift +194 -139
  10. package/ios/MapCircle.swift +43 -0
  11. package/ios/MapMarker.swift +10 -17
  12. package/ios/MapPolygon.swift +9 -6
  13. package/ios/MapPolyline.swift +9 -7
  14. package/ios/PermissionHandler.swift +1 -1
  15. package/ios/RNGoogleMapsPlusModule.swift +1 -1
  16. package/ios/RNGoogleMapsPlusView.swift +148 -105
  17. package/lib/module/types.js.map +1 -1
  18. package/lib/typescript/src/RNGoogleMapsPlusView.nitro.d.ts +17 -12
  19. package/lib/typescript/src/RNGoogleMapsPlusView.nitro.d.ts.map +1 -1
  20. package/lib/typescript/src/types.d.ts +21 -3
  21. package/lib/typescript/src/types.d.ts.map +1 -1
  22. package/nitrogen/generated/android/c++/JHybridRNGoogleMapsPlusViewSpec.cpp +173 -69
  23. package/nitrogen/generated/android/c++/JHybridRNGoogleMapsPlusViewSpec.hpp +32 -22
  24. package/nitrogen/generated/android/c++/JRNCircle.hpp +84 -0
  25. package/nitrogen/generated/android/c++/JRNInitialProps.hpp +66 -0
  26. package/nitrogen/generated/android/c++/JRNMapType.hpp +68 -0
  27. package/nitrogen/generated/android/c++/JRNMarker.hpp +4 -4
  28. package/nitrogen/generated/android/c++/JRNPolygon.hpp +8 -4
  29. package/nitrogen/generated/android/c++/JRNPolyline.hpp +8 -4
  30. package/nitrogen/generated/android/c++/views/JHybridRNGoogleMapsPlusViewStateUpdater.cpp +24 -4
  31. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/HybridRNGoogleMapsPlusViewSpec.kt +65 -11
  32. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNCircle.kt +50 -0
  33. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNInitialProps.kt +35 -0
  34. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNMapType.kt +24 -0
  35. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNMarker.kt +1 -1
  36. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNPolygon.kt +4 -1
  37. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNPolyline.kt +4 -1
  38. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/views/HybridRNGoogleMapsPlusViewManager.kt +7 -1
  39. package/nitrogen/generated/ios/RNGoogleMapsPlus-Swift-Cxx-Bridge.hpp +188 -45
  40. package/nitrogen/generated/ios/RNGoogleMapsPlus-Swift-Cxx-Umbrella.hpp +9 -0
  41. package/nitrogen/generated/ios/c++/HybridRNGoogleMapsPlusViewSpecSwift.hpp +85 -37
  42. package/nitrogen/generated/ios/c++/views/HybridRNGoogleMapsPlusViewComponent.mm +41 -16
  43. package/nitrogen/generated/ios/swift/HybridRNGoogleMapsPlusViewSpec.swift +16 -11
  44. package/nitrogen/generated/ios/swift/HybridRNGoogleMapsPlusViewSpec_cxx.swift +296 -45
  45. package/nitrogen/generated/ios/swift/RNCircle.swift +198 -0
  46. package/nitrogen/generated/ios/swift/RNInitialProps.swift +107 -0
  47. package/nitrogen/generated/ios/swift/RNMapType.swift +52 -0
  48. package/nitrogen/generated/ios/swift/RNMarker.swift +17 -5
  49. package/nitrogen/generated/ios/swift/RNPolygon.swift +40 -5
  50. package/nitrogen/generated/ios/swift/RNPolyline.swift +40 -5
  51. package/nitrogen/generated/shared/c++/HybridRNGoogleMapsPlusViewSpec.cpp +12 -2
  52. package/nitrogen/generated/shared/c++/HybridRNGoogleMapsPlusViewSpec.hpp +45 -26
  53. package/nitrogen/generated/shared/c++/RNCircle.hpp +98 -0
  54. package/nitrogen/generated/shared/c++/RNInitialProps.hpp +78 -0
  55. package/nitrogen/generated/shared/c++/RNMapType.hpp +88 -0
  56. package/nitrogen/generated/shared/c++/RNMarker.hpp +6 -6
  57. package/nitrogen/generated/shared/c++/RNPolygon.hpp +10 -6
  58. package/nitrogen/generated/shared/c++/RNPolyline.hpp +10 -6
  59. package/nitrogen/generated/shared/c++/views/HybridRNGoogleMapsPlusViewComponent.cpp +92 -32
  60. package/nitrogen/generated/shared/c++/views/HybridRNGoogleMapsPlusViewComponent.hpp +21 -13
  61. package/nitrogen/generated/shared/json/RNGoogleMapsPlusViewConfig.json +6 -1
  62. package/package.json +5 -5
  63. package/src/RNGoogleMapsPlusView.nitro.ts +19 -11
  64. package/src/types.ts +24 -3
@@ -8,17 +8,17 @@ final class RNGoogleMapsPlusView: HybridRNGoogleMapsPlusViewSpec {
8
8
  private let permissionHandler: PermissionHandler
9
9
  private let locationHandler: LocationHandler
10
10
 
11
+ private let markerOptions = MapMarkerOptions()
12
+ private let polylineOptions = MapPolylineOptions()
13
+ private let polygonOptions = MapPolygonOptions()
14
+ private let circleOptions = MapCircleOptions()
15
+
11
16
  private let impl: GoogleMapsViewImpl
12
17
 
13
18
  var view: UIView {
14
19
  return impl
15
20
  }
16
21
 
17
- private var currentCustomMapStyle: String = ""
18
- private let markerOptions = MapMarkerOptions()
19
- private let polylineOptions = MapPolylineOptions()
20
- private let polygonOptions = MapPolygonOptions()
21
-
22
22
  override init() {
23
23
  self.permissionHandler = PermissionHandler()
24
24
  self.locationHandler = LocationHandler()
@@ -28,70 +28,85 @@ final class RNGoogleMapsPlusView: HybridRNGoogleMapsPlusViewSpec {
28
28
  )
29
29
  }
30
30
 
31
+ /*
32
+ /// TODO: prepareForRecycle
33
+ override func prepareForRecycle() {
34
+ impl.clearAll()
35
+ }
36
+ */
37
+
31
38
  @MainActor
32
- var buildingEnabled: Bool {
33
- get { impl.buildingEnabled }
34
- set { impl.buildingEnabled = newValue }
39
+ var initialProps: RNInitialProps? {
40
+ didSet {
41
+ impl.initMapView(
42
+ mapId: initialProps?.mapId,
43
+ liteMode: initialProps?.liteMode,
44
+ camera: mapCameraToGMSCamera(initialProps?.initialCamera)
45
+ )
46
+ }
35
47
  }
36
48
 
37
49
  @MainActor
38
- var trafficEnabled: Bool {
39
- get { impl.trafficEnabled }
40
- set { impl.trafficEnabled = newValue }
50
+ var buildingEnabled: Bool? {
51
+ didSet { impl.buildingEnabled = buildingEnabled }
41
52
  }
42
53
 
43
54
  @MainActor
44
- var customMapStyle: String {
45
- get { currentCustomMapStyle }
46
- set {
47
- currentCustomMapStyle = newValue
48
- impl.customMapStyle = try? GMSMapStyle(jsonString: newValue)
49
- }
55
+ var trafficEnabled: Bool? {
56
+ didSet { impl.trafficEnabled = trafficEnabled }
50
57
  }
51
58
 
52
59
  @MainActor
53
- var initialCamera: RNCamera {
54
- get { mapCameraPositionToCamera(impl.initialCamera) }
55
- set { impl.initialCamera = mapCameraToGMSCamera(newValue) }
60
+ var customMapStyle: String? {
61
+ didSet {
62
+ if let value = customMapStyle {
63
+ impl.customMapStyle = try? GMSMapStyle(jsonString: value)
64
+ }
65
+ }
56
66
  }
57
67
 
58
68
  @MainActor
59
- var userInterfaceStyle: RNUserInterfaceStyle {
60
- get { mapUIUserInterfaceStyletoUserInterfaceStyle(impl.userInterfaceStyle) }
61
- set {
69
+ var userInterfaceStyle: RNUserInterfaceStyle? {
70
+ didSet {
62
71
  impl.userInterfaceStyle = mapUserInterfaceStyleToUIUserInterfaceStyle(
63
- newValue
72
+ userInterfaceStyle
64
73
  )
65
74
  }
66
75
  }
67
76
 
68
77
  @MainActor
69
- var minZoomLevel: Double {
70
- get { impl.minZoomLevel }
71
- set { impl.minZoomLevel = newValue }
78
+ var minZoomLevel: Double? {
79
+ didSet { impl.minZoomLevel = minZoomLevel }
80
+ }
81
+
82
+ @MainActor
83
+ var maxZoomLevel: Double? {
84
+ didSet { impl.maxZoomLevel = maxZoomLevel }
72
85
  }
73
86
 
74
87
  @MainActor
75
- var maxZoomLevel: Double {
76
- get { impl.maxZoomLevel }
77
- set { impl.maxZoomLevel = newValue }
88
+ var mapPadding: RNMapPadding? {
89
+ didSet { impl.mapPadding = mapPadding }
78
90
  }
79
91
 
80
92
  @MainActor
81
- var mapPadding: RNMapPadding {
82
- get { impl.mapPadding }
83
- set { impl.mapPadding = newValue }
93
+ var mapType: RNMapType? {
94
+ didSet {
95
+ impl.mapType = mapType.map {
96
+ GMSMapViewType(rawValue: UInt($0.rawValue)) ?? .normal
97
+ }
98
+ }
84
99
  }
85
100
 
86
101
  @MainActor
87
- var markers: [RNMarker] = [] {
102
+ var markers: [RNMarker]? {
88
103
  didSet {
89
104
  let prevById = Dictionary(
90
- oldValue.map { ($0.id, $0) },
105
+ (oldValue ?? []).map { ($0.id, $0) },
91
106
  uniquingKeysWith: { _, new in new }
92
107
  )
93
108
  let nextById = Dictionary(
94
- markers.map { ($0.id, $0) },
109
+ (markers ?? []).map { ($0.id, $0) },
95
110
  uniquingKeysWith: { _, new in new }
96
111
  )
97
112
 
@@ -123,14 +138,14 @@ final class RNGoogleMapsPlusView: HybridRNGoogleMapsPlusViewSpec {
123
138
  }
124
139
 
125
140
  @MainActor
126
- var polylines: [RNPolyline] = [] {
141
+ var polylines: [RNPolyline]? {
127
142
  didSet {
128
143
  let prevById = Dictionary(
129
- oldValue.map { ($0.id, $0) },
144
+ (oldValue ?? []).map { ($0.id, $0) },
130
145
  uniquingKeysWith: { _, new in new }
131
146
  )
132
147
  let nextById = Dictionary(
133
- polylines.map { ($0.id, $0) },
148
+ (polylines ?? []).map { ($0.id, $0) },
134
149
  uniquingKeysWith: { _, new in new }
135
150
  )
136
151
 
@@ -140,29 +155,29 @@ final class RNGoogleMapsPlusView: HybridRNGoogleMapsPlusViewSpec {
140
155
  for (id, next) in nextById {
141
156
  if let prev = prevById[id] {
142
157
  if !prev.polylineEquals(next) {
143
- impl.updatePolyline(id: id) { gms in
144
- prev.updatePolyline(next, gms)
158
+ impl.updatePolyline(id: id) { pl in
159
+ prev.updatePolyline(next, pl)
145
160
  }
146
- } else {
147
- impl.addPolyline(
148
- id: id,
149
- polyline: polylineOptions.buildPolyline(next)
150
- )
151
161
  }
162
+ } else {
163
+ impl.addPolyline(
164
+ id: id,
165
+ polyline: polylineOptions.buildPolyline(next)
166
+ )
152
167
  }
153
168
  }
154
169
  }
155
170
  }
156
171
 
157
172
  @MainActor
158
- var polygons: [RNPolygon] = [] {
173
+ var polygons: [RNPolygon]? {
159
174
  didSet {
160
175
  let prevById = Dictionary(
161
- oldValue.map { ($0.id, $0) },
176
+ (oldValue ?? []).map { ($0.id, $0) },
162
177
  uniquingKeysWith: { _, new in new }
163
178
  )
164
179
  let nextById = Dictionary(
165
- polygons.map { ($0.id, $0) },
180
+ (polygons ?? []).map { ($0.id, $0) },
166
181
  uniquingKeysWith: { _, new in new }
167
182
  )
168
183
 
@@ -183,10 +198,56 @@ final class RNGoogleMapsPlusView: HybridRNGoogleMapsPlusViewSpec {
183
198
  }
184
199
  }
185
200
 
201
+ @MainActor
202
+ var circles: [RNCircle]? {
203
+ didSet {
204
+ let prevById = Dictionary(
205
+ (oldValue ?? []).map { ($0.id, $0) },
206
+ uniquingKeysWith: { _, new in new }
207
+ )
208
+ let nextById = Dictionary(
209
+ (circles ?? []).map { ($0.id, $0) },
210
+ uniquingKeysWith: { _, new in new }
211
+ )
212
+
213
+ let removed = Set(prevById.keys).subtracting(nextById.keys)
214
+ removed.forEach { impl.removeCircle(id: $0) }
215
+
216
+ for (id, next) in nextById {
217
+ if let prev = prevById[id] {
218
+ if !prev.circleEquals(next) {
219
+ impl.updateCircle(id: id) { circle in
220
+ prev.updateCircle(next, circle)
221
+ }
222
+ }
223
+ } else {
224
+ impl.addCircle(id: id, circle: circleOptions.buildCircle(next))
225
+ }
226
+ }
227
+ }
228
+ }
229
+
186
230
  func setCamera(camera: RNCamera, animated: Bool?, durationMS: Double?) {
231
+ let current = impl.currentCamera
232
+
233
+ let zoom = Float(camera.zoom ?? Double(current?.zoom ?? 0))
234
+ let bearing = camera.bearing ?? current?.bearing ?? 0
235
+ let viewingAngle = camera.bearing ?? current?.viewingAngle ?? 0
236
+
237
+ let target = CLLocationCoordinate2D(
238
+ latitude: camera.center?.latitude ?? current?.target.latitude ?? 0,
239
+ longitude: camera.center?.longitude ?? current?.target.longitude ?? 0
240
+ )
241
+
242
+ let cam = GMSCameraPosition.camera(
243
+ withTarget: target,
244
+ zoom: zoom,
245
+ bearing: bearing,
246
+ viewingAngle: viewingAngle
247
+ )
187
248
  onMain {
188
249
  self.impl.setCamera(
189
- camera: camera,
250
+ camera: cam,
190
251
  animated: animated ?? true,
191
252
  durationMS: durationMS ?? 3000
192
253
  )
@@ -210,40 +271,40 @@ final class RNGoogleMapsPlusView: HybridRNGoogleMapsPlusViewSpec {
210
271
  }
211
272
 
212
273
  var onMapError: ((RNMapErrorCode) -> Void)? {
213
- get { impl.onMapError }
214
- set { impl.onMapError = newValue }
274
+ didSet { impl.onMapError = onMapError }
215
275
  }
216
276
  var onMapReady: ((Bool) -> Void)? {
217
- get { impl.onMapReady }
218
- set { impl.onMapReady = newValue }
277
+ didSet { impl.onMapReady = onMapReady }
219
278
  }
220
279
  var onLocationUpdate: ((RNLocation) -> Void)? {
221
- get { impl.onLocationUpdate }
222
- set { impl.onLocationUpdate = newValue }
280
+ didSet { impl.onLocationUpdate = onLocationUpdate }
223
281
  }
224
282
  var onLocationError: ((_ error: RNLocationErrorCode) -> Void)? {
225
- get { impl.onLocationError }
226
- set { impl.onLocationError = newValue }
283
+ didSet { impl.onLocationError = onLocationError }
227
284
  }
228
285
  var onMapPress: ((RNLatLng) -> Void)? {
229
- get { impl.onMapPress }
230
- set { impl.onMapPress = newValue }
286
+ didSet { impl.onMapPress = onMapPress }
231
287
  }
232
288
  var onMarkerPress: ((String) -> Void)? {
233
- get { impl.onMarkerPress }
234
- set { impl.onMarkerPress = newValue }
289
+ didSet { impl.onMarkerPress = onMarkerPress }
290
+ }
291
+ var onPolylinePress: ((String) -> Void)? {
292
+ didSet { impl.onPolylinePress = onPolylinePress }
293
+ }
294
+ var onPolygonPress: ((String) -> Void)? {
295
+ didSet { impl.onPolygonPress = onPolygonPress }
296
+ }
297
+ var onCirclePress: ((String) -> Void)? {
298
+ didSet { impl.onCirclePress = onCirclePress }
235
299
  }
236
300
  var onCameraChangeStart: ((RNRegion, RNCamera, Bool) -> Void)? {
237
- get { impl.onCameraChangeStart }
238
- set { impl.onCameraChangeStart = newValue }
301
+ didSet { impl.onCameraChangeStart = onCameraChangeStart }
239
302
  }
240
303
  var onCameraChange: ((RNRegion, RNCamera, Bool) -> Void)? {
241
- get { impl.onCameraChange }
242
- set { impl.onCameraChange = newValue }
304
+ didSet { impl.onCameraChange = onCameraChange }
243
305
  }
244
306
  var onCameraChangeComplete: ((RNRegion, RNCamera, Bool) -> Void)? {
245
- get { impl.onCameraChangeComplete }
246
- set { impl.onCameraChangeComplete = newValue }
307
+ didSet { impl.onCameraChangeComplete = onCameraChangeComplete }
247
308
  }
248
309
 
249
310
  func showLocationDialog() {
@@ -255,7 +316,7 @@ final class RNGoogleMapsPlusView: HybridRNGoogleMapsPlusViewSpec {
255
316
  }
256
317
 
257
318
  func requestLocationPermission()
258
- -> NitroModules.Promise<RNLocationPermissionResult> {
319
+ -> NitroModules.Promise<RNLocationPermissionResult> {
259
320
  return permissionHandler.requestLocationPermission()
260
321
  }
261
322
 
@@ -264,15 +325,17 @@ final class RNGoogleMapsPlusView: HybridRNGoogleMapsPlusViewSpec {
264
325
  return true
265
326
  }
266
327
 
267
- private func mapCameraToGMSCamera(_ c: RNCamera) -> GMSCameraPosition {
328
+ private func mapCameraToGMSCamera(_ c: RNCamera?) -> GMSCameraPosition? {
329
+ guard let c = c else { return nil }
330
+
268
331
  let current = impl.currentCamera
269
332
  let center = CLLocationCoordinate2D(
270
- latitude: c.center?.latitude ?? current.target.latitude,
271
- longitude: c.center?.longitude ?? current.target.longitude
333
+ latitude: c.center?.latitude ?? current?.target.latitude ?? 0,
334
+ longitude: c.center?.longitude ?? current?.target.longitude ?? 0
272
335
  )
273
- let z = Float(c.zoom ?? Double(current.zoom))
274
- let b = c.bearing ?? current.bearing
275
- let t = c.tilt ?? current.viewingAngle
336
+ let z = Float(c.zoom ?? Double(current?.zoom ?? 0))
337
+ let b = c.bearing ?? current?.bearing ?? 0
338
+ let t = c.tilt ?? current?.viewingAngle ?? 0
276
339
 
277
340
  return GMSCameraPosition.camera(
278
341
  withTarget: center,
@@ -282,38 +345,18 @@ final class RNGoogleMapsPlusView: HybridRNGoogleMapsPlusViewSpec {
282
345
  )
283
346
  }
284
347
 
285
- private func mapCameraPositionToCamera(_ cp: GMSCameraPosition)
286
- -> RNCamera {
287
- return RNCamera(
288
- center: RNLatLng(
289
- latitude: cp.target.latitude,
290
- longitude: cp.target.longitude
291
- ),
292
- zoom: Double(cp.zoom),
293
- bearing: cp.bearing,
294
- tilt: cp.viewingAngle
295
- )
296
- }
297
-
298
348
  func mapUserInterfaceStyleToUIUserInterfaceStyle(
299
- _ style: RNUserInterfaceStyle
300
- )
301
- -> UIUserInterfaceStyle {
302
- switch style {
303
- case .light: return .light
304
- case .dark: return .dark
305
- case .default: return .unspecified
306
- }
307
- }
349
+ _ style: RNUserInterfaceStyle?
350
+ ) -> UIUserInterfaceStyle? {
351
+ guard let style = style else { return nil }
308
352
 
309
- func mapUIUserInterfaceStyletoUserInterfaceStyle(
310
- _ uiStyle: UIUserInterfaceStyle
311
- ) -> RNUserInterfaceStyle {
312
- switch uiStyle {
313
- case .light: return .light
314
- case .dark: return .dark
315
- case .unspecified: return .default
316
- @unknown default: return .default
353
+ switch style {
354
+ case .light:
355
+ return .light
356
+ case .dark:
357
+ return .dark
358
+ case .default:
359
+ return .unspecified
317
360
  }
318
361
  }
319
362
  }
@@ -1 +1 @@
1
- {"version":3,"names":["RNAndroidLocationPermissionResult","RNIOSPermissionResult","RNLocationErrorCode","RNMapErrorCode"],"sourceRoot":"../../src","sources":["types.ts"],"mappings":";;AAoBA;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;;AAyEA,WAAYA,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":["RNAndroidLocationPermissionResult","RNIOSPermissionResult","RNLocationErrorCode","RNMapErrorCode"],"sourceRoot":"../../src","sources":["types.ts"],"mappings":";;AA4BA;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;;AAsFA,WAAYA,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,23 +1,28 @@
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 } from './types';
2
+ import type { RNCamera, RNLatLng, RNMapPadding, RNPolygon, RNPolyline, RNUserInterfaceStyle, RNLocationErrorCode, RNMarker, RNLocationPermissionResult, RNRegion, RNLocation, RNMapErrorCode, RNMapType, RNInitialProps, RNCircle } from './types';
3
3
  export interface RNGoogleMapsPlusViewProps extends HybridViewProps {
4
- buildingEnabled: boolean;
5
- trafficEnabled: boolean;
6
- customMapStyle: string;
7
- initialCamera: RNCamera;
8
- userInterfaceStyle: RNUserInterfaceStyle;
9
- minZoomLevel: number;
10
- maxZoomLevel: number;
11
- mapPadding: RNMapPadding;
12
- markers: RNMarker[];
13
- polygons: RNPolygon[];
14
- polylines: RNPolyline[];
4
+ initialProps?: RNInitialProps;
5
+ buildingEnabled?: boolean;
6
+ trafficEnabled?: boolean;
7
+ customMapStyle?: string;
8
+ userInterfaceStyle?: RNUserInterfaceStyle;
9
+ minZoomLevel?: number;
10
+ maxZoomLevel?: number;
11
+ mapPadding?: RNMapPadding;
12
+ mapType?: RNMapType;
13
+ markers?: RNMarker[];
14
+ polygons?: RNPolygon[];
15
+ polylines?: RNPolyline[];
16
+ circles?: RNCircle[];
15
17
  onMapError?: (error: RNMapErrorCode) => void;
16
18
  onMapReady?: (ready: boolean) => void;
17
19
  onLocationUpdate?: (location: RNLocation) => void;
18
20
  onLocationError?: (error: RNLocationErrorCode) => void;
19
21
  onMapPress?: (coordinate: RNLatLng) => void;
20
22
  onMarkerPress?: (id: string) => void;
23
+ onPolylinePress?: (id: string) => void;
24
+ onPolygonPress?: (id: string) => void;
25
+ onCirclePress?: (id: string) => void;
21
26
  onCameraChangeStart?: (region: RNRegion, camera: RNCamera, isGesture: boolean) => void;
22
27
  onCameraChange?: (region: RNRegion, camera: RNCamera, isGesture: boolean) => void;
23
28
  onCameraChangeComplete?: (region: RNRegion, camera: RNCamera, isGesture: boolean) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"RNGoogleMapsPlusView.nitro.d.ts","sourceRoot":"","sources":["../../../src/RNGoogleMapsPlusView.nitro.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EACV,iBAAiB,EACjB,eAAe,EAChB,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EACV,QAAQ,EACR,QAAQ,EACR,YAAY,EACZ,SAAS,EACT,UAAU,EACV,oBAAoB,EACpB,mBAAmB,EACnB,QAAQ,EACR,0BAA0B,EAC1B,QAAQ,EACR,UAAU,EACV,cAAc,EACf,MAAM,SAAS,CAAC;AAEjB,MAAM,WAAW,yBAA0B,SAAQ,eAAe;IAChE,eAAe,EAAE,OAAO,CAAC;IACzB,cAAc,EAAE,OAAO,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,QAAQ,CAAC;IACxB,kBAAkB,EAAE,oBAAoB,CAAC;IACzC,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,YAAY,CAAC;IACzB,OAAO,EAAE,QAAQ,EAAE,CAAC;IACpB,QAAQ,EAAE,SAAS,EAAE,CAAC;IACtB,SAAS,EAAE,UAAU,EAAE,CAAC;IACxB,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,IAAI,CAAC;IAC7C,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,UAAU,KAAK,IAAI,CAAC;IAClD,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,IAAI,CAAC;IACvD,UAAU,CAAC,EAAE,CAAC,UAAU,EAAE,QAAQ,KAAK,IAAI,CAAC;IAC5C,aAAa,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,mBAAmB,CAAC,EAAE,CACpB,MAAM,EAAE,QAAQ,EAChB,MAAM,EAAE,QAAQ,EAChB,SAAS,EAAE,OAAO,KACf,IAAI,CAAC;IACV,cAAc,CAAC,EAAE,CACf,MAAM,EAAE,QAAQ,EAChB,MAAM,EAAE,QAAQ,EAChB,SAAS,EAAE,OAAO,KACf,IAAI,CAAC;IACV,sBAAsB,CAAC,EAAE,CACvB,MAAM,EAAE,QAAQ,EAChB,MAAM,EAAE,QAAQ,EAChB,SAAS,EAAE,OAAO,KACf,IAAI,CAAC;CACX;AAED,MAAM,WAAW,2BAA4B,SAAQ,iBAAiB;IACpE,SAAS,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAAE,OAAO,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE3E,sBAAsB,CACpB,WAAW,EAAE,QAAQ,EAAE,EACvB,OAAO,CAAC,EAAE,YAAY,EACtB,QAAQ,CAAC,EAAE,OAAO,EAClB,UAAU,CAAC,EAAE,MAAM,GAClB,IAAI,CAAC;IAER,kBAAkB,IAAI,IAAI,CAAC;IAE3B,oBAAoB,IAAI,IAAI,CAAC;IAE7B,yBAAyB,IAAI,OAAO,CAAC,0BAA0B,CAAC,CAAC;IAEjE,6BAA6B,IAAI,OAAO,CAAC;CAC1C;AAED,MAAM,MAAM,oBAAoB,GAAG,UAAU,CAC3C,yBAAyB,EACzB,2BAA2B,CAC5B,CAAC"}
1
+ {"version":3,"file":"RNGoogleMapsPlusView.nitro.d.ts","sourceRoot":"","sources":["../../../src/RNGoogleMapsPlusView.nitro.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,11 @@
1
1
  import type { RNGoogleMapsPlusViewMethods } from './RNGoogleMapsPlusView.nitro';
2
2
  import type { HybridView } from 'react-native-nitro-modules';
3
3
  export type GoogleMapsViewRef = HybridView<RNGoogleMapsPlusViewMethods>;
4
+ export type RNInitialProps = {
5
+ mapId?: string;
6
+ liteMode?: boolean;
7
+ initialCamera?: RNCamera;
8
+ };
4
9
  export type RNLatLng = {
5
10
  latitude: number;
6
11
  longitude: number;
@@ -15,6 +20,7 @@ export type RNMapPadding = {
15
20
  bottom: number;
16
21
  right: number;
17
22
  };
23
+ export type RNMapType = 'none' | 'normal' | 'hybrid' | 'satellite' | 'terrain';
18
24
  export type RNUserInterfaceStyle = 'light' | 'dark' | 'default';
19
25
  export type RNFeatureType = string;
20
26
  export type RNElementType = string;
@@ -52,7 +58,7 @@ export type RNLineCapType = 'butt' | 'round' | 'square';
52
58
  export type RNLineJoinType = 'miter' | 'round' | 'bevel';
53
59
  export type RNMarker = {
54
60
  id: string;
55
- zIndex: number;
61
+ zIndex?: number;
56
62
  coordinate: RNLatLng;
57
63
  anchor?: RNPosition;
58
64
  width: number;
@@ -61,7 +67,8 @@ export type RNMarker = {
61
67
  };
62
68
  export type RNPolygon = {
63
69
  id: string;
64
- zIndex: number;
70
+ zIndex?: number;
71
+ pressable?: boolean;
65
72
  coordinates: RNLatLng[];
66
73
  fillColor?: string;
67
74
  strokeColor?: string;
@@ -69,13 +76,24 @@ export type RNPolygon = {
69
76
  };
70
77
  export type RNPolyline = {
71
78
  id: string;
72
- zIndex: number;
79
+ zIndex?: number;
80
+ pressable?: boolean;
73
81
  coordinates: RNLatLng[];
74
82
  lineCap?: RNLineCapType;
75
83
  lineJoin?: RNLineJoinType;
76
84
  color?: string;
77
85
  width?: number;
78
86
  };
87
+ export type RNCircle = {
88
+ id: string;
89
+ pressable?: boolean;
90
+ zIndex?: number;
91
+ center: RNLatLng;
92
+ radius?: number;
93
+ strokeWidth?: number;
94
+ strokeColor?: string;
95
+ fillColor?: string;
96
+ };
79
97
  export type RNLocationPermissionResult = {
80
98
  android?: RNAndroidLocationPermissionResult;
81
99
  ios?: RNIOSPermissionResult;
@@ -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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"}