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,192 @@
1
+ ///
2
+ /// RNLocationIOS.swift
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
+ import NitroModules
9
+
10
+ /**
11
+ * Represents an instance of `RNLocationIOS`, backed by a C++ struct.
12
+ */
13
+ public typealias RNLocationIOS = margelo.nitro.rngooglemapsplus.RNLocationIOS
14
+
15
+ public extension RNLocationIOS {
16
+ private typealias bridge = margelo.nitro.rngooglemapsplus.bridge.swift
17
+
18
+ /**
19
+ * Create a new instance of `RNLocationIOS`.
20
+ */
21
+ init(horizontalAccuracy: Double?, verticalAccuracy: Double?, speedAccuracy: Double?, courseAccuracy: Double?, floor: Double?, isFromMockProvider: Bool?, timestamp: Double?) {
22
+ self.init({ () -> bridge.std__optional_double_ in
23
+ if let __unwrappedValue = horizontalAccuracy {
24
+ return bridge.create_std__optional_double_(__unwrappedValue)
25
+ } else {
26
+ return .init()
27
+ }
28
+ }(), { () -> bridge.std__optional_double_ in
29
+ if let __unwrappedValue = verticalAccuracy {
30
+ return bridge.create_std__optional_double_(__unwrappedValue)
31
+ } else {
32
+ return .init()
33
+ }
34
+ }(), { () -> bridge.std__optional_double_ in
35
+ if let __unwrappedValue = speedAccuracy {
36
+ return bridge.create_std__optional_double_(__unwrappedValue)
37
+ } else {
38
+ return .init()
39
+ }
40
+ }(), { () -> bridge.std__optional_double_ in
41
+ if let __unwrappedValue = courseAccuracy {
42
+ return bridge.create_std__optional_double_(__unwrappedValue)
43
+ } else {
44
+ return .init()
45
+ }
46
+ }(), { () -> bridge.std__optional_double_ in
47
+ if let __unwrappedValue = floor {
48
+ return bridge.create_std__optional_double_(__unwrappedValue)
49
+ } else {
50
+ return .init()
51
+ }
52
+ }(), { () -> bridge.std__optional_bool_ in
53
+ if let __unwrappedValue = isFromMockProvider {
54
+ return bridge.create_std__optional_bool_(__unwrappedValue)
55
+ } else {
56
+ return .init()
57
+ }
58
+ }(), { () -> bridge.std__optional_double_ in
59
+ if let __unwrappedValue = timestamp {
60
+ return bridge.create_std__optional_double_(__unwrappedValue)
61
+ } else {
62
+ return .init()
63
+ }
64
+ }())
65
+ }
66
+
67
+ var horizontalAccuracy: Double? {
68
+ @inline(__always)
69
+ get {
70
+ return self.__horizontalAccuracy.value
71
+ }
72
+ @inline(__always)
73
+ set {
74
+ self.__horizontalAccuracy = { () -> bridge.std__optional_double_ in
75
+ if let __unwrappedValue = newValue {
76
+ return bridge.create_std__optional_double_(__unwrappedValue)
77
+ } else {
78
+ return .init()
79
+ }
80
+ }()
81
+ }
82
+ }
83
+
84
+ var verticalAccuracy: Double? {
85
+ @inline(__always)
86
+ get {
87
+ return self.__verticalAccuracy.value
88
+ }
89
+ @inline(__always)
90
+ set {
91
+ self.__verticalAccuracy = { () -> bridge.std__optional_double_ in
92
+ if let __unwrappedValue = newValue {
93
+ return bridge.create_std__optional_double_(__unwrappedValue)
94
+ } else {
95
+ return .init()
96
+ }
97
+ }()
98
+ }
99
+ }
100
+
101
+ var speedAccuracy: Double? {
102
+ @inline(__always)
103
+ get {
104
+ return self.__speedAccuracy.value
105
+ }
106
+ @inline(__always)
107
+ set {
108
+ self.__speedAccuracy = { () -> bridge.std__optional_double_ in
109
+ if let __unwrappedValue = newValue {
110
+ return bridge.create_std__optional_double_(__unwrappedValue)
111
+ } else {
112
+ return .init()
113
+ }
114
+ }()
115
+ }
116
+ }
117
+
118
+ var courseAccuracy: Double? {
119
+ @inline(__always)
120
+ get {
121
+ return self.__courseAccuracy.value
122
+ }
123
+ @inline(__always)
124
+ set {
125
+ self.__courseAccuracy = { () -> bridge.std__optional_double_ in
126
+ if let __unwrappedValue = newValue {
127
+ return bridge.create_std__optional_double_(__unwrappedValue)
128
+ } else {
129
+ return .init()
130
+ }
131
+ }()
132
+ }
133
+ }
134
+
135
+ var floor: Double? {
136
+ @inline(__always)
137
+ get {
138
+ return self.__floor.value
139
+ }
140
+ @inline(__always)
141
+ set {
142
+ self.__floor = { () -> bridge.std__optional_double_ in
143
+ if let __unwrappedValue = newValue {
144
+ return bridge.create_std__optional_double_(__unwrappedValue)
145
+ } else {
146
+ return .init()
147
+ }
148
+ }()
149
+ }
150
+ }
151
+
152
+ var isFromMockProvider: Bool? {
153
+ @inline(__always)
154
+ get {
155
+ return { () -> Bool? in
156
+ if bridge.has_value_std__optional_bool_(self.__isFromMockProvider) {
157
+ let __unwrapped = bridge.get_std__optional_bool_(self.__isFromMockProvider)
158
+ return __unwrapped
159
+ } else {
160
+ return nil
161
+ }
162
+ }()
163
+ }
164
+ @inline(__always)
165
+ set {
166
+ self.__isFromMockProvider = { () -> bridge.std__optional_bool_ in
167
+ if let __unwrappedValue = newValue {
168
+ return bridge.create_std__optional_bool_(__unwrappedValue)
169
+ } else {
170
+ return .init()
171
+ }
172
+ }()
173
+ }
174
+ }
175
+
176
+ var timestamp: Double? {
177
+ @inline(__always)
178
+ get {
179
+ return self.__timestamp.value
180
+ }
181
+ @inline(__always)
182
+ set {
183
+ self.__timestamp = { () -> bridge.std__optional_double_ in
184
+ if let __unwrappedValue = newValue {
185
+ return bridge.create_std__optional_double_(__unwrappedValue)
186
+ } else {
187
+ return .init()
188
+ }
189
+ }()
190
+ }
191
+ }
192
+ }
@@ -91,7 +91,14 @@ public extension RNMapUiSettings {
91
91
  var allGesturesEnabled: Bool? {
92
92
  @inline(__always)
93
93
  get {
94
- return self.__allGesturesEnabled.value
94
+ return { () -> Bool? in
95
+ if bridge.has_value_std__optional_bool_(self.__allGesturesEnabled) {
96
+ let __unwrapped = bridge.get_std__optional_bool_(self.__allGesturesEnabled)
97
+ return __unwrapped
98
+ } else {
99
+ return nil
100
+ }
101
+ }()
95
102
  }
96
103
  @inline(__always)
97
104
  set {
@@ -108,7 +115,14 @@ public extension RNMapUiSettings {
108
115
  var compassEnabled: Bool? {
109
116
  @inline(__always)
110
117
  get {
111
- return self.__compassEnabled.value
118
+ return { () -> Bool? in
119
+ if bridge.has_value_std__optional_bool_(self.__compassEnabled) {
120
+ let __unwrapped = bridge.get_std__optional_bool_(self.__compassEnabled)
121
+ return __unwrapped
122
+ } else {
123
+ return nil
124
+ }
125
+ }()
112
126
  }
113
127
  @inline(__always)
114
128
  set {
@@ -125,7 +139,14 @@ public extension RNMapUiSettings {
125
139
  var indoorLevelPickerEnabled: Bool? {
126
140
  @inline(__always)
127
141
  get {
128
- return self.__indoorLevelPickerEnabled.value
142
+ return { () -> Bool? in
143
+ if bridge.has_value_std__optional_bool_(self.__indoorLevelPickerEnabled) {
144
+ let __unwrapped = bridge.get_std__optional_bool_(self.__indoorLevelPickerEnabled)
145
+ return __unwrapped
146
+ } else {
147
+ return nil
148
+ }
149
+ }()
129
150
  }
130
151
  @inline(__always)
131
152
  set {
@@ -142,7 +163,14 @@ public extension RNMapUiSettings {
142
163
  var mapToolbarEnabled: Bool? {
143
164
  @inline(__always)
144
165
  get {
145
- return self.__mapToolbarEnabled.value
166
+ return { () -> Bool? in
167
+ if bridge.has_value_std__optional_bool_(self.__mapToolbarEnabled) {
168
+ let __unwrapped = bridge.get_std__optional_bool_(self.__mapToolbarEnabled)
169
+ return __unwrapped
170
+ } else {
171
+ return nil
172
+ }
173
+ }()
146
174
  }
147
175
  @inline(__always)
148
176
  set {
@@ -159,7 +187,14 @@ public extension RNMapUiSettings {
159
187
  var myLocationButtonEnabled: Bool? {
160
188
  @inline(__always)
161
189
  get {
162
- return self.__myLocationButtonEnabled.value
190
+ return { () -> Bool? in
191
+ if bridge.has_value_std__optional_bool_(self.__myLocationButtonEnabled) {
192
+ let __unwrapped = bridge.get_std__optional_bool_(self.__myLocationButtonEnabled)
193
+ return __unwrapped
194
+ } else {
195
+ return nil
196
+ }
197
+ }()
163
198
  }
164
199
  @inline(__always)
165
200
  set {
@@ -176,7 +211,14 @@ public extension RNMapUiSettings {
176
211
  var rotateEnabled: Bool? {
177
212
  @inline(__always)
178
213
  get {
179
- return self.__rotateEnabled.value
214
+ return { () -> Bool? in
215
+ if bridge.has_value_std__optional_bool_(self.__rotateEnabled) {
216
+ let __unwrapped = bridge.get_std__optional_bool_(self.__rotateEnabled)
217
+ return __unwrapped
218
+ } else {
219
+ return nil
220
+ }
221
+ }()
180
222
  }
181
223
  @inline(__always)
182
224
  set {
@@ -193,7 +235,14 @@ public extension RNMapUiSettings {
193
235
  var scrollEnabled: Bool? {
194
236
  @inline(__always)
195
237
  get {
196
- return self.__scrollEnabled.value
238
+ return { () -> Bool? in
239
+ if bridge.has_value_std__optional_bool_(self.__scrollEnabled) {
240
+ let __unwrapped = bridge.get_std__optional_bool_(self.__scrollEnabled)
241
+ return __unwrapped
242
+ } else {
243
+ return nil
244
+ }
245
+ }()
197
246
  }
198
247
  @inline(__always)
199
248
  set {
@@ -210,7 +259,14 @@ public extension RNMapUiSettings {
210
259
  var scrollDuringRotateOrZoomEnabled: Bool? {
211
260
  @inline(__always)
212
261
  get {
213
- return self.__scrollDuringRotateOrZoomEnabled.value
262
+ return { () -> Bool? in
263
+ if bridge.has_value_std__optional_bool_(self.__scrollDuringRotateOrZoomEnabled) {
264
+ let __unwrapped = bridge.get_std__optional_bool_(self.__scrollDuringRotateOrZoomEnabled)
265
+ return __unwrapped
266
+ } else {
267
+ return nil
268
+ }
269
+ }()
214
270
  }
215
271
  @inline(__always)
216
272
  set {
@@ -227,7 +283,14 @@ public extension RNMapUiSettings {
227
283
  var tiltEnabled: Bool? {
228
284
  @inline(__always)
229
285
  get {
230
- return self.__tiltEnabled.value
286
+ return { () -> Bool? in
287
+ if bridge.has_value_std__optional_bool_(self.__tiltEnabled) {
288
+ let __unwrapped = bridge.get_std__optional_bool_(self.__tiltEnabled)
289
+ return __unwrapped
290
+ } else {
291
+ return nil
292
+ }
293
+ }()
231
294
  }
232
295
  @inline(__always)
233
296
  set {
@@ -244,7 +307,14 @@ public extension RNMapUiSettings {
244
307
  var zoomControlsEnabled: Bool? {
245
308
  @inline(__always)
246
309
  get {
247
- return self.__zoomControlsEnabled.value
310
+ return { () -> Bool? in
311
+ if bridge.has_value_std__optional_bool_(self.__zoomControlsEnabled) {
312
+ let __unwrapped = bridge.get_std__optional_bool_(self.__zoomControlsEnabled)
313
+ return __unwrapped
314
+ } else {
315
+ return nil
316
+ }
317
+ }()
248
318
  }
249
319
  @inline(__always)
250
320
  set {
@@ -261,7 +331,14 @@ public extension RNMapUiSettings {
261
331
  var zoomGesturesEnabled: Bool? {
262
332
  @inline(__always)
263
333
  get {
264
- return self.__zoomGesturesEnabled.value
334
+ return { () -> Bool? in
335
+ if bridge.has_value_std__optional_bool_(self.__zoomGesturesEnabled) {
336
+ let __unwrapped = bridge.get_std__optional_bool_(self.__zoomGesturesEnabled)
337
+ return __unwrapped
338
+ } else {
339
+ return nil
340
+ }
341
+ }()
265
342
  }
266
343
  @inline(__always)
267
344
  set {
@@ -147,7 +147,14 @@ public extension RNMarker {
147
147
  var showInfoWindow: Bool? {
148
148
  @inline(__always)
149
149
  get {
150
- return self.__showInfoWindow.value
150
+ return { () -> Bool? in
151
+ if bridge.has_value_std__optional_bool_(self.__showInfoWindow) {
152
+ let __unwrapped = bridge.get_std__optional_bool_(self.__showInfoWindow)
153
+ return __unwrapped
154
+ } else {
155
+ return nil
156
+ }
157
+ }()
151
158
  }
152
159
  @inline(__always)
153
160
  set {
@@ -229,7 +236,14 @@ public extension RNMarker {
229
236
  var flat: Bool? {
230
237
  @inline(__always)
231
238
  get {
232
- return self.__flat.value
239
+ return { () -> Bool? in
240
+ if bridge.has_value_std__optional_bool_(self.__flat) {
241
+ let __unwrapped = bridge.get_std__optional_bool_(self.__flat)
242
+ return __unwrapped
243
+ } else {
244
+ return nil
245
+ }
246
+ }()
233
247
  }
234
248
  @inline(__always)
235
249
  set {
@@ -246,7 +260,14 @@ public extension RNMarker {
246
260
  var draggable: Bool? {
247
261
  @inline(__always)
248
262
  get {
249
- return self.__draggable.value
263
+ return { () -> Bool? in
264
+ if bridge.has_value_std__optional_bool_(self.__draggable) {
265
+ let __unwrapped = bridge.get_std__optional_bool_(self.__draggable)
266
+ return __unwrapped
267
+ } else {
268
+ return nil
269
+ }
270
+ }()
250
271
  }
251
272
  @inline(__always)
252
273
  set {
@@ -107,7 +107,14 @@ public extension RNPolygon {
107
107
  var pressable: Bool? {
108
108
  @inline(__always)
109
109
  get {
110
- return self.__pressable.value
110
+ return { () -> Bool? in
111
+ if bridge.has_value_std__optional_bool_(self.__pressable) {
112
+ let __unwrapped = bridge.get_std__optional_bool_(self.__pressable)
113
+ return __unwrapped
114
+ } else {
115
+ return nil
116
+ }
117
+ }()
111
118
  }
112
119
  @inline(__always)
113
120
  set {
@@ -236,7 +243,14 @@ public extension RNPolygon {
236
243
  var geodesic: Bool? {
237
244
  @inline(__always)
238
245
  get {
239
- return self.__geodesic.value
246
+ return { () -> Bool? in
247
+ if bridge.has_value_std__optional_bool_(self.__geodesic) {
248
+ let __unwrapped = bridge.get_std__optional_bool_(self.__geodesic)
249
+ return __unwrapped
250
+ } else {
251
+ return nil
252
+ }
253
+ }()
240
254
  }
241
255
  @inline(__always)
242
256
  set {
@@ -101,7 +101,14 @@ public extension RNPolyline {
101
101
  var pressable: Bool? {
102
102
  @inline(__always)
103
103
  get {
104
- return self.__pressable.value
104
+ return { () -> Bool? in
105
+ if bridge.has_value_std__optional_bool_(self.__pressable) {
106
+ let __unwrapped = bridge.get_std__optional_bool_(self.__pressable)
107
+ return __unwrapped
108
+ } else {
109
+ return nil
110
+ }
111
+ }()
105
112
  }
106
113
  @inline(__always)
107
114
  set {
@@ -169,7 +176,14 @@ public extension RNPolyline {
169
176
  var geodesic: Bool? {
170
177
  @inline(__always)
171
178
  get {
172
- return self.__geodesic.value
179
+ return { () -> Bool? in
180
+ if bridge.has_value_std__optional_bool_(self.__geodesic) {
181
+ let __unwrapped = bridge.get_std__optional_bool_(self.__geodesic)
182
+ return __unwrapped
183
+ } else {
184
+ return nil
185
+ }
186
+ }()
173
187
  }
174
188
  @inline(__always)
175
189
  set {
@@ -25,8 +25,15 @@
25
25
 
26
26
  // Forward declaration of `RNLatLng` to properly resolve imports.
27
27
  namespace margelo::nitro::rngooglemapsplus { struct RNLatLng; }
28
+ // Forward declaration of `RNLocationAndroid` to properly resolve imports.
29
+ namespace margelo::nitro::rngooglemapsplus { struct RNLocationAndroid; }
30
+ // Forward declaration of `RNLocationIOS` to properly resolve imports.
31
+ namespace margelo::nitro::rngooglemapsplus { struct RNLocationIOS; }
28
32
 
29
33
  #include "RNLatLng.hpp"
34
+ #include "RNLocationAndroid.hpp"
35
+ #include <optional>
36
+ #include "RNLocationIOS.hpp"
30
37
 
31
38
  namespace margelo::nitro::rngooglemapsplus {
32
39
 
@@ -36,11 +43,17 @@ namespace margelo::nitro::rngooglemapsplus {
36
43
  struct RNLocation {
37
44
  public:
38
45
  RNLatLng center SWIFT_PRIVATE;
46
+ double altitude SWIFT_PRIVATE;
47
+ double accuracy SWIFT_PRIVATE;
39
48
  double bearing SWIFT_PRIVATE;
49
+ double speed SWIFT_PRIVATE;
50
+ double time SWIFT_PRIVATE;
51
+ std::optional<RNLocationAndroid> android SWIFT_PRIVATE;
52
+ std::optional<RNLocationIOS> ios SWIFT_PRIVATE;
40
53
 
41
54
  public:
42
55
  RNLocation() = default;
43
- explicit RNLocation(RNLatLng center, double bearing): center(center), bearing(bearing) {}
56
+ explicit RNLocation(RNLatLng center, double altitude, double accuracy, double bearing, double speed, double time, std::optional<RNLocationAndroid> android, std::optional<RNLocationIOS> ios): center(center), altitude(altitude), accuracy(accuracy), bearing(bearing), speed(speed), time(time), android(android), ios(ios) {}
44
57
  };
45
58
 
46
59
  } // namespace margelo::nitro::rngooglemapsplus
@@ -54,13 +67,25 @@ namespace margelo::nitro {
54
67
  jsi::Object obj = arg.asObject(runtime);
55
68
  return margelo::nitro::rngooglemapsplus::RNLocation(
56
69
  JSIConverter<margelo::nitro::rngooglemapsplus::RNLatLng>::fromJSI(runtime, obj.getProperty(runtime, "center")),
57
- JSIConverter<double>::fromJSI(runtime, obj.getProperty(runtime, "bearing"))
70
+ JSIConverter<double>::fromJSI(runtime, obj.getProperty(runtime, "altitude")),
71
+ JSIConverter<double>::fromJSI(runtime, obj.getProperty(runtime, "accuracy")),
72
+ JSIConverter<double>::fromJSI(runtime, obj.getProperty(runtime, "bearing")),
73
+ JSIConverter<double>::fromJSI(runtime, obj.getProperty(runtime, "speed")),
74
+ JSIConverter<double>::fromJSI(runtime, obj.getProperty(runtime, "time")),
75
+ JSIConverter<std::optional<margelo::nitro::rngooglemapsplus::RNLocationAndroid>>::fromJSI(runtime, obj.getProperty(runtime, "android")),
76
+ JSIConverter<std::optional<margelo::nitro::rngooglemapsplus::RNLocationIOS>>::fromJSI(runtime, obj.getProperty(runtime, "ios"))
58
77
  );
59
78
  }
60
79
  static inline jsi::Value toJSI(jsi::Runtime& runtime, const margelo::nitro::rngooglemapsplus::RNLocation& arg) {
61
80
  jsi::Object obj(runtime);
62
81
  obj.setProperty(runtime, "center", JSIConverter<margelo::nitro::rngooglemapsplus::RNLatLng>::toJSI(runtime, arg.center));
82
+ obj.setProperty(runtime, "altitude", JSIConverter<double>::toJSI(runtime, arg.altitude));
83
+ obj.setProperty(runtime, "accuracy", JSIConverter<double>::toJSI(runtime, arg.accuracy));
63
84
  obj.setProperty(runtime, "bearing", JSIConverter<double>::toJSI(runtime, arg.bearing));
85
+ obj.setProperty(runtime, "speed", JSIConverter<double>::toJSI(runtime, arg.speed));
86
+ obj.setProperty(runtime, "time", JSIConverter<double>::toJSI(runtime, arg.time));
87
+ obj.setProperty(runtime, "android", JSIConverter<std::optional<margelo::nitro::rngooglemapsplus::RNLocationAndroid>>::toJSI(runtime, arg.android));
88
+ obj.setProperty(runtime, "ios", JSIConverter<std::optional<margelo::nitro::rngooglemapsplus::RNLocationIOS>>::toJSI(runtime, arg.ios));
64
89
  return obj;
65
90
  }
66
91
  static inline bool canConvert(jsi::Runtime& runtime, const jsi::Value& value) {
@@ -72,7 +97,13 @@ namespace margelo::nitro {
72
97
  return false;
73
98
  }
74
99
  if (!JSIConverter<margelo::nitro::rngooglemapsplus::RNLatLng>::canConvert(runtime, obj.getProperty(runtime, "center"))) return false;
100
+ if (!JSIConverter<double>::canConvert(runtime, obj.getProperty(runtime, "altitude"))) return false;
101
+ if (!JSIConverter<double>::canConvert(runtime, obj.getProperty(runtime, "accuracy"))) return false;
75
102
  if (!JSIConverter<double>::canConvert(runtime, obj.getProperty(runtime, "bearing"))) return false;
103
+ if (!JSIConverter<double>::canConvert(runtime, obj.getProperty(runtime, "speed"))) return false;
104
+ if (!JSIConverter<double>::canConvert(runtime, obj.getProperty(runtime, "time"))) return false;
105
+ if (!JSIConverter<std::optional<margelo::nitro::rngooglemapsplus::RNLocationAndroid>>::canConvert(runtime, obj.getProperty(runtime, "android"))) return false;
106
+ if (!JSIConverter<std::optional<margelo::nitro::rngooglemapsplus::RNLocationIOS>>::canConvert(runtime, obj.getProperty(runtime, "ios"))) return false;
76
107
  return true;
77
108
  }
78
109
  };
@@ -0,0 +1,104 @@
1
+ ///
2
+ /// RNLocationAndroid.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
+ #if __has_include(<NitroModules/JSIConverter.hpp>)
11
+ #include <NitroModules/JSIConverter.hpp>
12
+ #else
13
+ #error NitroModules cannot be found! Are you sure you installed NitroModules properly?
14
+ #endif
15
+ #if __has_include(<NitroModules/NitroDefines.hpp>)
16
+ #include <NitroModules/NitroDefines.hpp>
17
+ #else
18
+ #error NitroModules cannot be found! Are you sure you installed NitroModules properly?
19
+ #endif
20
+ #if __has_include(<NitroModules/JSIHelpers.hpp>)
21
+ #include <NitroModules/JSIHelpers.hpp>
22
+ #else
23
+ #error NitroModules cannot be found! Are you sure you installed NitroModules properly?
24
+ #endif
25
+
26
+
27
+
28
+ #include <string>
29
+ #include <optional>
30
+
31
+ namespace margelo::nitro::rngooglemapsplus {
32
+
33
+ /**
34
+ * A struct which can be represented as a JavaScript object (RNLocationAndroid).
35
+ */
36
+ struct RNLocationAndroid {
37
+ public:
38
+ std::optional<std::string> provider SWIFT_PRIVATE;
39
+ std::optional<double> elapsedRealtimeNanos SWIFT_PRIVATE;
40
+ std::optional<double> bearingAccuracyDegrees SWIFT_PRIVATE;
41
+ std::optional<double> speedAccuracyMetersPerSecond SWIFT_PRIVATE;
42
+ std::optional<double> verticalAccuracyMeters SWIFT_PRIVATE;
43
+ std::optional<double> mslAltitudeMeters SWIFT_PRIVATE;
44
+ std::optional<double> mslAltitudeAccuracyMeters SWIFT_PRIVATE;
45
+ std::optional<bool> isMock SWIFT_PRIVATE;
46
+
47
+ public:
48
+ RNLocationAndroid() = default;
49
+ explicit RNLocationAndroid(std::optional<std::string> provider, std::optional<double> elapsedRealtimeNanos, std::optional<double> bearingAccuracyDegrees, std::optional<double> speedAccuracyMetersPerSecond, std::optional<double> verticalAccuracyMeters, std::optional<double> mslAltitudeMeters, std::optional<double> mslAltitudeAccuracyMeters, std::optional<bool> isMock): provider(provider), elapsedRealtimeNanos(elapsedRealtimeNanos), bearingAccuracyDegrees(bearingAccuracyDegrees), speedAccuracyMetersPerSecond(speedAccuracyMetersPerSecond), verticalAccuracyMeters(verticalAccuracyMeters), mslAltitudeMeters(mslAltitudeMeters), mslAltitudeAccuracyMeters(mslAltitudeAccuracyMeters), isMock(isMock) {}
50
+ };
51
+
52
+ } // namespace margelo::nitro::rngooglemapsplus
53
+
54
+ namespace margelo::nitro {
55
+
56
+ // C++ RNLocationAndroid <> JS RNLocationAndroid (object)
57
+ template <>
58
+ struct JSIConverter<margelo::nitro::rngooglemapsplus::RNLocationAndroid> final {
59
+ static inline margelo::nitro::rngooglemapsplus::RNLocationAndroid fromJSI(jsi::Runtime& runtime, const jsi::Value& arg) {
60
+ jsi::Object obj = arg.asObject(runtime);
61
+ return margelo::nitro::rngooglemapsplus::RNLocationAndroid(
62
+ JSIConverter<std::optional<std::string>>::fromJSI(runtime, obj.getProperty(runtime, "provider")),
63
+ JSIConverter<std::optional<double>>::fromJSI(runtime, obj.getProperty(runtime, "elapsedRealtimeNanos")),
64
+ JSIConverter<std::optional<double>>::fromJSI(runtime, obj.getProperty(runtime, "bearingAccuracyDegrees")),
65
+ JSIConverter<std::optional<double>>::fromJSI(runtime, obj.getProperty(runtime, "speedAccuracyMetersPerSecond")),
66
+ JSIConverter<std::optional<double>>::fromJSI(runtime, obj.getProperty(runtime, "verticalAccuracyMeters")),
67
+ JSIConverter<std::optional<double>>::fromJSI(runtime, obj.getProperty(runtime, "mslAltitudeMeters")),
68
+ JSIConverter<std::optional<double>>::fromJSI(runtime, obj.getProperty(runtime, "mslAltitudeAccuracyMeters")),
69
+ JSIConverter<std::optional<bool>>::fromJSI(runtime, obj.getProperty(runtime, "isMock"))
70
+ );
71
+ }
72
+ static inline jsi::Value toJSI(jsi::Runtime& runtime, const margelo::nitro::rngooglemapsplus::RNLocationAndroid& arg) {
73
+ jsi::Object obj(runtime);
74
+ obj.setProperty(runtime, "provider", JSIConverter<std::optional<std::string>>::toJSI(runtime, arg.provider));
75
+ obj.setProperty(runtime, "elapsedRealtimeNanos", JSIConverter<std::optional<double>>::toJSI(runtime, arg.elapsedRealtimeNanos));
76
+ obj.setProperty(runtime, "bearingAccuracyDegrees", JSIConverter<std::optional<double>>::toJSI(runtime, arg.bearingAccuracyDegrees));
77
+ obj.setProperty(runtime, "speedAccuracyMetersPerSecond", JSIConverter<std::optional<double>>::toJSI(runtime, arg.speedAccuracyMetersPerSecond));
78
+ obj.setProperty(runtime, "verticalAccuracyMeters", JSIConverter<std::optional<double>>::toJSI(runtime, arg.verticalAccuracyMeters));
79
+ obj.setProperty(runtime, "mslAltitudeMeters", JSIConverter<std::optional<double>>::toJSI(runtime, arg.mslAltitudeMeters));
80
+ obj.setProperty(runtime, "mslAltitudeAccuracyMeters", JSIConverter<std::optional<double>>::toJSI(runtime, arg.mslAltitudeAccuracyMeters));
81
+ obj.setProperty(runtime, "isMock", JSIConverter<std::optional<bool>>::toJSI(runtime, arg.isMock));
82
+ return obj;
83
+ }
84
+ static inline bool canConvert(jsi::Runtime& runtime, const jsi::Value& value) {
85
+ if (!value.isObject()) {
86
+ return false;
87
+ }
88
+ jsi::Object obj = value.getObject(runtime);
89
+ if (!nitro::isPlainObject(runtime, obj)) {
90
+ return false;
91
+ }
92
+ if (!JSIConverter<std::optional<std::string>>::canConvert(runtime, obj.getProperty(runtime, "provider"))) return false;
93
+ if (!JSIConverter<std::optional<double>>::canConvert(runtime, obj.getProperty(runtime, "elapsedRealtimeNanos"))) return false;
94
+ if (!JSIConverter<std::optional<double>>::canConvert(runtime, obj.getProperty(runtime, "bearingAccuracyDegrees"))) return false;
95
+ if (!JSIConverter<std::optional<double>>::canConvert(runtime, obj.getProperty(runtime, "speedAccuracyMetersPerSecond"))) return false;
96
+ if (!JSIConverter<std::optional<double>>::canConvert(runtime, obj.getProperty(runtime, "verticalAccuracyMeters"))) return false;
97
+ if (!JSIConverter<std::optional<double>>::canConvert(runtime, obj.getProperty(runtime, "mslAltitudeMeters"))) return false;
98
+ if (!JSIConverter<std::optional<double>>::canConvert(runtime, obj.getProperty(runtime, "mslAltitudeAccuracyMeters"))) return false;
99
+ if (!JSIConverter<std::optional<bool>>::canConvert(runtime, obj.getProperty(runtime, "isMock"))) return false;
100
+ return true;
101
+ }
102
+ };
103
+
104
+ } // namespace margelo::nitro