react-native-google-maps-plus 1.7.0-dev.3 → 1.7.0-dev.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (28) hide show
  1. package/android/src/main/java/com/rngooglemapsplus/GoogleMapsViewImpl.kt +52 -1
  2. package/android/src/main/java/com/rngooglemapsplus/RNGoogleMapsPlusView.kt +31 -0
  3. package/ios/GoogleMapViewImpl.swift +52 -1
  4. package/ios/RNGoogleMapsPlusView.swift +24 -0
  5. package/lib/nitrogen/generated/shared/json/RNGoogleMapsPlusViewConfig.json +6 -0
  6. package/lib/typescript/src/RNGoogleMapsPlusView.nitro.d.ts +6 -0
  7. package/lib/typescript/src/RNGoogleMapsPlusView.nitro.d.ts.map +1 -1
  8. package/nitrogen/generated/android/RNGoogleMapsPlusOnLoad.cpp +2 -0
  9. package/nitrogen/generated/android/c++/JFunc_void_std__string_std__string_RNLatLng.hpp +77 -0
  10. package/nitrogen/generated/android/c++/JHybridRNGoogleMapsPlusViewSpec.cpp +115 -0
  11. package/nitrogen/generated/android/c++/JHybridRNGoogleMapsPlusViewSpec.hpp +12 -0
  12. package/nitrogen/generated/android/c++/views/JHybridRNGoogleMapsPlusViewStateUpdater.cpp +24 -0
  13. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/Func_void_std__string_std__string_RNLatLng.kt +81 -0
  14. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/HybridRNGoogleMapsPlusViewSpec.kt +84 -0
  15. package/nitrogen/generated/ios/RNGoogleMapsPlus-Swift-Cxx-Bridge.cpp +8 -0
  16. package/nitrogen/generated/ios/RNGoogleMapsPlus-Swift-Cxx-Bridge.hpp +52 -0
  17. package/nitrogen/generated/ios/c++/HybridRNGoogleMapsPlusViewSpecSwift.hpp +42 -0
  18. package/nitrogen/generated/ios/c++/views/HybridRNGoogleMapsPlusViewComponent.mm +30 -0
  19. package/nitrogen/generated/ios/swift/Func_void_std__string_std__string_RNLatLng.swift +47 -0
  20. package/nitrogen/generated/ios/swift/HybridRNGoogleMapsPlusViewSpec.swift +6 -0
  21. package/nitrogen/generated/ios/swift/HybridRNGoogleMapsPlusViewSpec_cxx.swift +210 -0
  22. package/nitrogen/generated/shared/c++/HybridRNGoogleMapsPlusViewSpec.cpp +12 -0
  23. package/nitrogen/generated/shared/c++/HybridRNGoogleMapsPlusViewSpec.hpp +12 -0
  24. package/nitrogen/generated/shared/c++/views/HybridRNGoogleMapsPlusViewComponent.cpp +72 -0
  25. package/nitrogen/generated/shared/c++/views/HybridRNGoogleMapsPlusViewComponent.hpp +6 -0
  26. package/nitrogen/generated/shared/json/RNGoogleMapsPlusViewConfig.json +6 -0
  27. package/package.json +1 -1
  28. package/src/RNGoogleMapsPlusView.nitro.ts +6 -0
@@ -0,0 +1,81 @@
1
+ ///
2
+ /// Func_void_std__string_std__string_RNLatLng.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.jni.HybridData
12
+ import com.facebook.proguard.annotations.DoNotStrip
13
+ import com.margelo.nitro.core.*
14
+ import dalvik.annotation.optimization.FastNative
15
+
16
+
17
+ /**
18
+ * Represents the JavaScript callback `(placeId: string, name: string, coordinate: struct) => void`.
19
+ * This can be either implemented in C++ (in which case it might be a callback coming from JS),
20
+ * or in Kotlin/Java (in which case it is a native callback).
21
+ */
22
+ @DoNotStrip
23
+ @Keep
24
+ @Suppress("ClassName", "RedundantUnitReturnType")
25
+ fun interface Func_void_std__string_std__string_RNLatLng: (String, String, RNLatLng) -> Unit {
26
+ /**
27
+ * Call the given JS callback.
28
+ * @throws Throwable if the JS function itself throws an error, or if the JS function/runtime has already been deleted.
29
+ */
30
+ @DoNotStrip
31
+ @Keep
32
+ override fun invoke(placeId: String, name: String, coordinate: RNLatLng): Unit
33
+ }
34
+
35
+ /**
36
+ * Represents the JavaScript callback `(placeId: string, name: string, coordinate: struct) => void`.
37
+ * This is implemented in C++, via a `std::function<...>`.
38
+ * The callback might be coming from JS.
39
+ */
40
+ @DoNotStrip
41
+ @Keep
42
+ @Suppress(
43
+ "KotlinJniMissingFunction", "unused",
44
+ "RedundantSuppression", "RedundantUnitReturnType", "FunctionName",
45
+ "ConvertSecondaryConstructorToPrimary", "ClassName", "LocalVariableName",
46
+ )
47
+ class Func_void_std__string_std__string_RNLatLng_cxx: Func_void_std__string_std__string_RNLatLng {
48
+ @DoNotStrip
49
+ @Keep
50
+ private val mHybridData: HybridData
51
+
52
+ @DoNotStrip
53
+ @Keep
54
+ private constructor(hybridData: HybridData) {
55
+ mHybridData = hybridData
56
+ }
57
+
58
+ @DoNotStrip
59
+ @Keep
60
+ override fun invoke(placeId: String, name: String, coordinate: RNLatLng): Unit
61
+ = invoke_cxx(placeId,name,coordinate)
62
+
63
+ @FastNative
64
+ private external fun invoke_cxx(placeId: String, name: String, coordinate: RNLatLng): Unit
65
+ }
66
+
67
+ /**
68
+ * Represents the JavaScript callback `(placeId: string, name: string, coordinate: struct) => void`.
69
+ * This is implemented in Java/Kotlin, via a `(String, String, RNLatLng) -> Unit`.
70
+ * The callback is always coming from native.
71
+ */
72
+ @DoNotStrip
73
+ @Keep
74
+ @Suppress("ClassName", "RedundantUnitReturnType", "unused")
75
+ class Func_void_std__string_std__string_RNLatLng_java(private val function: (String, String, RNLatLng) -> Unit): Func_void_std__string_std__string_RNLatLng {
76
+ @DoNotStrip
77
+ @Keep
78
+ override fun invoke(placeId: String, name: String, coordinate: RNLatLng): Unit {
79
+ return this.function(placeId, name, coordinate)
80
+ }
81
+ }
@@ -250,6 +250,20 @@ abstract class HybridRNGoogleMapsPlusViewSpec: HybridView() {
250
250
  onMapLongPress = value?.let { it }
251
251
  }
252
252
 
253
+ abstract var onPoiPress: ((placeId: String, name: String, coordinate: RNLatLng) -> Unit)?
254
+
255
+ private var onPoiPress_cxx: Func_void_std__string_std__string_RNLatLng?
256
+ @Keep
257
+ @DoNotStrip
258
+ get() {
259
+ return onPoiPress?.let { Func_void_std__string_std__string_RNLatLng_java(it) }
260
+ }
261
+ @Keep
262
+ @DoNotStrip
263
+ set(value) {
264
+ onPoiPress = value?.let { it }
265
+ }
266
+
253
267
  abstract var onMarkerPress: ((id: String?) -> Unit)?
254
268
 
255
269
  private var onMarkerPress_cxx: Func_void_std__optional_std__string_?
@@ -376,6 +390,76 @@ abstract class HybridRNGoogleMapsPlusViewSpec: HybridView() {
376
390
  onIndoorLevelActivated = value?.let { it }
377
391
  }
378
392
 
393
+ abstract var onInfoWindowPress: ((id: String?) -> Unit)?
394
+
395
+ private var onInfoWindowPress_cxx: Func_void_std__optional_std__string_?
396
+ @Keep
397
+ @DoNotStrip
398
+ get() {
399
+ return onInfoWindowPress?.let { Func_void_std__optional_std__string__java(it) }
400
+ }
401
+ @Keep
402
+ @DoNotStrip
403
+ set(value) {
404
+ onInfoWindowPress = value?.let { it }
405
+ }
406
+
407
+ abstract var onInfoWindowClose: ((id: String?) -> Unit)?
408
+
409
+ private var onInfoWindowClose_cxx: Func_void_std__optional_std__string_?
410
+ @Keep
411
+ @DoNotStrip
412
+ get() {
413
+ return onInfoWindowClose?.let { Func_void_std__optional_std__string__java(it) }
414
+ }
415
+ @Keep
416
+ @DoNotStrip
417
+ set(value) {
418
+ onInfoWindowClose = value?.let { it }
419
+ }
420
+
421
+ abstract var onInfoWindowLongPress: ((id: String?) -> Unit)?
422
+
423
+ private var onInfoWindowLongPress_cxx: Func_void_std__optional_std__string_?
424
+ @Keep
425
+ @DoNotStrip
426
+ get() {
427
+ return onInfoWindowLongPress?.let { Func_void_std__optional_std__string__java(it) }
428
+ }
429
+ @Keep
430
+ @DoNotStrip
431
+ set(value) {
432
+ onInfoWindowLongPress = value?.let { it }
433
+ }
434
+
435
+ abstract var onMyLocationPress: ((location: RNLocation) -> Unit)?
436
+
437
+ private var onMyLocationPress_cxx: Func_void_RNLocation?
438
+ @Keep
439
+ @DoNotStrip
440
+ get() {
441
+ return onMyLocationPress?.let { Func_void_RNLocation_java(it) }
442
+ }
443
+ @Keep
444
+ @DoNotStrip
445
+ set(value) {
446
+ onMyLocationPress = value?.let { it }
447
+ }
448
+
449
+ abstract var onMyLocationButtonPress: ((pressed: Boolean) -> Unit)?
450
+
451
+ private var onMyLocationButtonPress_cxx: Func_void_bool?
452
+ @Keep
453
+ @DoNotStrip
454
+ get() {
455
+ return onMyLocationButtonPress?.let { Func_void_bool_java(it) }
456
+ }
457
+ @Keep
458
+ @DoNotStrip
459
+ set(value) {
460
+ onMyLocationButtonPress = value?.let { it }
461
+ }
462
+
379
463
  abstract var onCameraChangeStart: ((region: RNRegion, camera: RNCamera, isGesture: Boolean) -> Unit)?
380
464
 
381
465
  private var onCameraChangeStart_cxx: Func_void_RNRegion_RNCamera_bool?
@@ -86,6 +86,14 @@ namespace margelo::nitro::rngooglemapsplus::bridge::swift {
86
86
  };
87
87
  }
88
88
 
89
+ // pragma MARK: std::function<void(const std::string& /* placeId */, const std::string& /* name */, const RNLatLng& /* coordinate */)>
90
+ Func_void_std__string_std__string_RNLatLng create_Func_void_std__string_std__string_RNLatLng(void* NON_NULL swiftClosureWrapper) noexcept {
91
+ auto swiftClosure = RNGoogleMapsPlus::Func_void_std__string_std__string_RNLatLng::fromUnsafe(swiftClosureWrapper);
92
+ return [swiftClosure = std::move(swiftClosure)](const std::string& placeId, const std::string& name, const RNLatLng& coordinate) mutable -> void {
93
+ swiftClosure.call(placeId, name, coordinate);
94
+ };
95
+ }
96
+
89
97
  // pragma MARK: std::function<void(const std::optional<std::string>& /* id */)>
90
98
  Func_void_std__optional_std__string_ create_Func_void_std__optional_std__string_(void* NON_NULL swiftClosureWrapper) noexcept {
91
99
  auto swiftClosure = RNGoogleMapsPlus::Func_void_std__optional_std__string_::fromUnsafe(swiftClosureWrapper);
@@ -1082,6 +1082,43 @@ namespace margelo::nitro::rngooglemapsplus::bridge::swift {
1082
1082
  return *optional;
1083
1083
  }
1084
1084
 
1085
+ // pragma MARK: std::function<void(const std::string& /* placeId */, const std::string& /* name */, const RNLatLng& /* coordinate */)>
1086
+ /**
1087
+ * Specialized version of `std::function<void(const std::string&, const std::string&, const RNLatLng&)>`.
1088
+ */
1089
+ using Func_void_std__string_std__string_RNLatLng = std::function<void(const std::string& /* placeId */, const std::string& /* name */, const RNLatLng& /* coordinate */)>;
1090
+ /**
1091
+ * Wrapper class for a `std::function<void(const std::string& / * placeId * /, const std::string& / * name * /, const RNLatLng& / * coordinate * /)>`, this can be used from Swift.
1092
+ */
1093
+ class Func_void_std__string_std__string_RNLatLng_Wrapper final {
1094
+ public:
1095
+ explicit Func_void_std__string_std__string_RNLatLng_Wrapper(std::function<void(const std::string& /* placeId */, const std::string& /* name */, const RNLatLng& /* coordinate */)>&& func): _function(std::make_unique<std::function<void(const std::string& /* placeId */, const std::string& /* name */, const RNLatLng& /* coordinate */)>>(std::move(func))) {}
1096
+ inline void call(std::string placeId, std::string name, RNLatLng coordinate) const noexcept {
1097
+ _function->operator()(placeId, name, coordinate);
1098
+ }
1099
+ private:
1100
+ std::unique_ptr<std::function<void(const std::string& /* placeId */, const std::string& /* name */, const RNLatLng& /* coordinate */)>> _function;
1101
+ } SWIFT_NONCOPYABLE;
1102
+ Func_void_std__string_std__string_RNLatLng create_Func_void_std__string_std__string_RNLatLng(void* NON_NULL swiftClosureWrapper) noexcept;
1103
+ inline Func_void_std__string_std__string_RNLatLng_Wrapper wrap_Func_void_std__string_std__string_RNLatLng(Func_void_std__string_std__string_RNLatLng value) noexcept {
1104
+ return Func_void_std__string_std__string_RNLatLng_Wrapper(std::move(value));
1105
+ }
1106
+
1107
+ // pragma MARK: std::optional<std::function<void(const std::string& /* placeId */, const std::string& /* name */, const RNLatLng& /* coordinate */)>>
1108
+ /**
1109
+ * Specialized version of `std::optional<std::function<void(const std::string& / * placeId * /, const std::string& / * name * /, const RNLatLng& / * coordinate * /)>>`.
1110
+ */
1111
+ using std__optional_std__function_void_const_std__string_____placeId_____const_std__string_____name_____const_RNLatLng_____coordinate______ = std::optional<std::function<void(const std::string& /* placeId */, const std::string& /* name */, const RNLatLng& /* coordinate */)>>;
1112
+ inline std::optional<std::function<void(const std::string& /* placeId */, const std::string& /* name */, const RNLatLng& /* coordinate */)>> create_std__optional_std__function_void_const_std__string_____placeId_____const_std__string_____name_____const_RNLatLng_____coordinate______(const std::function<void(const std::string& /* placeId */, const std::string& /* name */, const RNLatLng& /* coordinate */)>& value) noexcept {
1113
+ return std::optional<std::function<void(const std::string& /* placeId */, const std::string& /* name */, const RNLatLng& /* coordinate */)>>(value);
1114
+ }
1115
+ inline bool has_value_std__optional_std__function_void_const_std__string_____placeId_____const_std__string_____name_____const_RNLatLng_____coordinate______(const std::optional<std::function<void(const std::string& /* placeId */, const std::string& /* name */, const RNLatLng& /* coordinate */)>>& optional) noexcept {
1116
+ return optional.has_value();
1117
+ }
1118
+ inline std::function<void(const std::string& /* placeId */, const std::string& /* name */, const RNLatLng& /* coordinate */)> get_std__optional_std__function_void_const_std__string_____placeId_____const_std__string_____name_____const_RNLatLng_____coordinate______(const std::optional<std::function<void(const std::string& /* placeId */, const std::string& /* name */, const RNLatLng& /* coordinate */)>>& optional) noexcept {
1119
+ return *optional;
1120
+ }
1121
+
1085
1122
  // pragma MARK: std::function<void(const std::optional<std::string>& /* id */)>
1086
1123
  /**
1087
1124
  * Specialized version of `std::function<void(const std::optional<std::string>&)>`.
@@ -1241,6 +1278,21 @@ namespace margelo::nitro::rngooglemapsplus::bridge::swift {
1241
1278
  return *optional;
1242
1279
  }
1243
1280
 
1281
+ // pragma MARK: std::optional<std::function<void(bool /* pressed */)>>
1282
+ /**
1283
+ * Specialized version of `std::optional<std::function<void(bool / * pressed * /)>>`.
1284
+ */
1285
+ using std__optional_std__function_void_bool____pressed______ = std::optional<std::function<void(bool /* pressed */)>>;
1286
+ inline std::optional<std::function<void(bool /* pressed */)>> create_std__optional_std__function_void_bool____pressed______(const std::function<void(bool /* pressed */)>& value) noexcept {
1287
+ return std::optional<std::function<void(bool /* pressed */)>>(value);
1288
+ }
1289
+ inline bool has_value_std__optional_std__function_void_bool____pressed______(const std::optional<std::function<void(bool /* pressed */)>>& optional) noexcept {
1290
+ return optional.has_value();
1291
+ }
1292
+ inline std::function<void(bool /* pressed */)> get_std__optional_std__function_void_bool____pressed______(const std::optional<std::function<void(bool /* pressed */)>>& optional) noexcept {
1293
+ return *optional;
1294
+ }
1295
+
1244
1296
  // pragma MARK: std::function<void(const RNRegion& /* region */, const RNCamera& /* camera */, bool /* isGesture */)>
1245
1297
  /**
1246
1298
  * Specialized version of `std::function<void(const RNRegion&, const RNCamera&, bool)>`.
@@ -367,6 +367,13 @@ namespace margelo::nitro::rngooglemapsplus {
367
367
  inline void setOnMapLongPress(const std::optional<std::function<void(const RNLatLng& /* coordinate */)>>& onMapLongPress) noexcept override {
368
368
  _swiftPart.setOnMapLongPress(onMapLongPress);
369
369
  }
370
+ inline std::optional<std::function<void(const std::string& /* placeId */, const std::string& /* name */, const RNLatLng& /* coordinate */)>> getOnPoiPress() noexcept override {
371
+ auto __result = _swiftPart.getOnPoiPress();
372
+ return __result;
373
+ }
374
+ inline void setOnPoiPress(const std::optional<std::function<void(const std::string& /* placeId */, const std::string& /* name */, const RNLatLng& /* coordinate */)>>& onPoiPress) noexcept override {
375
+ _swiftPart.setOnPoiPress(onPoiPress);
376
+ }
370
377
  inline std::optional<std::function<void(const std::optional<std::string>& /* id */)>> getOnMarkerPress() noexcept override {
371
378
  auto __result = _swiftPart.getOnMarkerPress();
372
379
  return __result;
@@ -430,6 +437,41 @@ namespace margelo::nitro::rngooglemapsplus {
430
437
  inline void setOnIndoorLevelActivated(const std::optional<std::function<void(const RNIndoorLevel& /* indoorLevel */)>>& onIndoorLevelActivated) noexcept override {
431
438
  _swiftPart.setOnIndoorLevelActivated(onIndoorLevelActivated);
432
439
  }
440
+ inline std::optional<std::function<void(const std::optional<std::string>& /* id */)>> getOnInfoWindowPress() noexcept override {
441
+ auto __result = _swiftPart.getOnInfoWindowPress();
442
+ return __result;
443
+ }
444
+ inline void setOnInfoWindowPress(const std::optional<std::function<void(const std::optional<std::string>& /* id */)>>& onInfoWindowPress) noexcept override {
445
+ _swiftPart.setOnInfoWindowPress(onInfoWindowPress);
446
+ }
447
+ inline std::optional<std::function<void(const std::optional<std::string>& /* id */)>> getOnInfoWindowClose() noexcept override {
448
+ auto __result = _swiftPart.getOnInfoWindowClose();
449
+ return __result;
450
+ }
451
+ inline void setOnInfoWindowClose(const std::optional<std::function<void(const std::optional<std::string>& /* id */)>>& onInfoWindowClose) noexcept override {
452
+ _swiftPart.setOnInfoWindowClose(onInfoWindowClose);
453
+ }
454
+ inline std::optional<std::function<void(const std::optional<std::string>& /* id */)>> getOnInfoWindowLongPress() noexcept override {
455
+ auto __result = _swiftPart.getOnInfoWindowLongPress();
456
+ return __result;
457
+ }
458
+ inline void setOnInfoWindowLongPress(const std::optional<std::function<void(const std::optional<std::string>& /* id */)>>& onInfoWindowLongPress) noexcept override {
459
+ _swiftPart.setOnInfoWindowLongPress(onInfoWindowLongPress);
460
+ }
461
+ inline std::optional<std::function<void(const RNLocation& /* location */)>> getOnMyLocationPress() noexcept override {
462
+ auto __result = _swiftPart.getOnMyLocationPress();
463
+ return __result;
464
+ }
465
+ inline void setOnMyLocationPress(const std::optional<std::function<void(const RNLocation& /* location */)>>& onMyLocationPress) noexcept override {
466
+ _swiftPart.setOnMyLocationPress(onMyLocationPress);
467
+ }
468
+ inline std::optional<std::function<void(bool /* pressed */)>> getOnMyLocationButtonPress() noexcept override {
469
+ auto __result = _swiftPart.getOnMyLocationButtonPress();
470
+ return __result;
471
+ }
472
+ inline void setOnMyLocationButtonPress(const std::optional<std::function<void(bool /* pressed */)>>& onMyLocationButtonPress) noexcept override {
473
+ _swiftPart.setOnMyLocationButtonPress(onMyLocationButtonPress);
474
+ }
433
475
  inline std::optional<std::function<void(const RNRegion& /* region */, const RNCamera& /* camera */, bool /* isGesture */)>> getOnCameraChangeStart() noexcept override {
434
476
  auto __result = _swiftPart.getOnCameraChangeStart();
435
477
  return __result;
@@ -216,6 +216,11 @@ using namespace margelo::nitro::rngooglemapsplus::views;
216
216
  swiftPart.setOnMapLongPress(newViewProps.onMapLongPress.value);
217
217
  newViewProps.onMapLongPress.isDirty = false;
218
218
  }
219
+ // onPoiPress: optional
220
+ if (newViewProps.onPoiPress.isDirty) {
221
+ swiftPart.setOnPoiPress(newViewProps.onPoiPress.value);
222
+ newViewProps.onPoiPress.isDirty = false;
223
+ }
219
224
  // onMarkerPress: optional
220
225
  if (newViewProps.onMarkerPress.isDirty) {
221
226
  swiftPart.setOnMarkerPress(newViewProps.onMarkerPress.value);
@@ -261,6 +266,31 @@ using namespace margelo::nitro::rngooglemapsplus::views;
261
266
  swiftPart.setOnIndoorLevelActivated(newViewProps.onIndoorLevelActivated.value);
262
267
  newViewProps.onIndoorLevelActivated.isDirty = false;
263
268
  }
269
+ // onInfoWindowPress: optional
270
+ if (newViewProps.onInfoWindowPress.isDirty) {
271
+ swiftPart.setOnInfoWindowPress(newViewProps.onInfoWindowPress.value);
272
+ newViewProps.onInfoWindowPress.isDirty = false;
273
+ }
274
+ // onInfoWindowClose: optional
275
+ if (newViewProps.onInfoWindowClose.isDirty) {
276
+ swiftPart.setOnInfoWindowClose(newViewProps.onInfoWindowClose.value);
277
+ newViewProps.onInfoWindowClose.isDirty = false;
278
+ }
279
+ // onInfoWindowLongPress: optional
280
+ if (newViewProps.onInfoWindowLongPress.isDirty) {
281
+ swiftPart.setOnInfoWindowLongPress(newViewProps.onInfoWindowLongPress.value);
282
+ newViewProps.onInfoWindowLongPress.isDirty = false;
283
+ }
284
+ // onMyLocationPress: optional
285
+ if (newViewProps.onMyLocationPress.isDirty) {
286
+ swiftPart.setOnMyLocationPress(newViewProps.onMyLocationPress.value);
287
+ newViewProps.onMyLocationPress.isDirty = false;
288
+ }
289
+ // onMyLocationButtonPress: optional
290
+ if (newViewProps.onMyLocationButtonPress.isDirty) {
291
+ swiftPart.setOnMyLocationButtonPress(newViewProps.onMyLocationButtonPress.value);
292
+ newViewProps.onMyLocationButtonPress.isDirty = false;
293
+ }
264
294
  // onCameraChangeStart: optional
265
295
  if (newViewProps.onCameraChangeStart.isDirty) {
266
296
  swiftPart.setOnCameraChangeStart(newViewProps.onCameraChangeStart.value);
@@ -0,0 +1,47 @@
1
+ ///
2
+ /// Func_void_std__string_std__string_RNLatLng.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
+ /**
12
+ * Wraps a Swift `(_ placeId: String, _ name: String, _ coordinate: RNLatLng) -> Void` as a class.
13
+ * This class can be used from C++, e.g. to wrap the Swift closure as a `std::function`.
14
+ */
15
+ public final class Func_void_std__string_std__string_RNLatLng {
16
+ public typealias bridge = margelo.nitro.rngooglemapsplus.bridge.swift
17
+
18
+ private let closure: (_ placeId: String, _ name: String, _ coordinate: RNLatLng) -> Void
19
+
20
+ public init(_ closure: @escaping (_ placeId: String, _ name: String, _ coordinate: RNLatLng) -> Void) {
21
+ self.closure = closure
22
+ }
23
+
24
+ @inline(__always)
25
+ public func call(placeId: std.string, name: std.string, coordinate: RNLatLng) -> Void {
26
+ self.closure(String(placeId), String(name), coordinate)
27
+ }
28
+
29
+ /**
30
+ * Casts this instance to a retained unsafe raw pointer.
31
+ * This acquires one additional strong reference on the object!
32
+ */
33
+ @inline(__always)
34
+ public func toUnsafe() -> UnsafeMutableRawPointer {
35
+ return Unmanaged.passRetained(self).toOpaque()
36
+ }
37
+
38
+ /**
39
+ * Casts an unsafe pointer to a `Func_void_std__string_std__string_RNLatLng`.
40
+ * The pointer has to be a retained opaque `Unmanaged<Func_void_std__string_std__string_RNLatLng>`.
41
+ * This removes one strong reference from the object!
42
+ */
43
+ @inline(__always)
44
+ public static func fromUnsafe(_ pointer: UnsafeMutableRawPointer) -> Func_void_std__string_std__string_RNLatLng {
45
+ return Unmanaged<Func_void_std__string_std__string_RNLatLng>.fromOpaque(pointer).takeRetainedValue()
46
+ }
47
+ }
@@ -37,6 +37,7 @@ public protocol HybridRNGoogleMapsPlusViewSpec_protocol: HybridObject, HybridVie
37
37
  var onLocationError: ((_ error: RNLocationErrorCode) -> Void)? { get set }
38
38
  var onMapPress: ((_ coordinate: RNLatLng) -> Void)? { get set }
39
39
  var onMapLongPress: ((_ coordinate: RNLatLng) -> Void)? { get set }
40
+ var onPoiPress: ((_ placeId: String, _ name: String, _ coordinate: RNLatLng) -> Void)? { get set }
40
41
  var onMarkerPress: ((_ id: String?) -> Void)? { get set }
41
42
  var onPolylinePress: ((_ id: String?) -> Void)? { get set }
42
43
  var onPolygonPress: ((_ id: String?) -> Void)? { get set }
@@ -46,6 +47,11 @@ public protocol HybridRNGoogleMapsPlusViewSpec_protocol: HybridObject, HybridVie
46
47
  var onMarkerDragEnd: ((_ id: String?, _ location: RNLatLng) -> Void)? { get set }
47
48
  var onIndoorBuildingFocused: ((_ indoorBuilding: RNIndoorBuilding) -> Void)? { get set }
48
49
  var onIndoorLevelActivated: ((_ indoorLevel: RNIndoorLevel) -> Void)? { get set }
50
+ var onInfoWindowPress: ((_ id: String?) -> Void)? { get set }
51
+ var onInfoWindowClose: ((_ id: String?) -> Void)? { get set }
52
+ var onInfoWindowLongPress: ((_ id: String?) -> Void)? { get set }
53
+ var onMyLocationPress: ((_ location: RNLocation) -> Void)? { get set }
54
+ var onMyLocationButtonPress: ((_ pressed: Bool) -> Void)? { get set }
49
55
  var onCameraChangeStart: ((_ region: RNRegion, _ camera: RNCamera, _ isGesture: Bool) -> Void)? { get set }
50
56
  var onCameraChange: ((_ region: RNRegion, _ camera: RNCamera, _ isGesture: Bool) -> Void)? { get set }
51
57
  var onCameraChangeComplete: ((_ region: RNRegion, _ camera: RNCamera, _ isGesture: Bool) -> Void)? { get set }
@@ -779,6 +779,38 @@ open class HybridRNGoogleMapsPlusViewSpec_cxx {
779
779
  }
780
780
  }
781
781
 
782
+ public final var onPoiPress: bridge.std__optional_std__function_void_const_std__string_____placeId_____const_std__string_____name_____const_RNLatLng_____coordinate______ {
783
+ @inline(__always)
784
+ get {
785
+ return { () -> bridge.std__optional_std__function_void_const_std__string_____placeId_____const_std__string_____name_____const_RNLatLng_____coordinate______ in
786
+ if let __unwrappedValue = self.__implementation.onPoiPress {
787
+ return bridge.create_std__optional_std__function_void_const_std__string_____placeId_____const_std__string_____name_____const_RNLatLng_____coordinate______({ () -> bridge.Func_void_std__string_std__string_RNLatLng in
788
+ let __closureWrapper = Func_void_std__string_std__string_RNLatLng(__unwrappedValue)
789
+ return bridge.create_Func_void_std__string_std__string_RNLatLng(__closureWrapper.toUnsafe())
790
+ }())
791
+ } else {
792
+ return .init()
793
+ }
794
+ }()
795
+ }
796
+ @inline(__always)
797
+ set {
798
+ self.__implementation.onPoiPress = { () -> ((_ placeId: String, _ name: String, _ coordinate: RNLatLng) -> Void)? in
799
+ if bridge.has_value_std__optional_std__function_void_const_std__string_____placeId_____const_std__string_____name_____const_RNLatLng_____coordinate______(newValue) {
800
+ let __unwrapped = bridge.get_std__optional_std__function_void_const_std__string_____placeId_____const_std__string_____name_____const_RNLatLng_____coordinate______(newValue)
801
+ return { () -> (String, String, RNLatLng) -> Void in
802
+ let __wrappedFunction = bridge.wrap_Func_void_std__string_std__string_RNLatLng(__unwrapped)
803
+ return { (__placeId: String, __name: String, __coordinate: RNLatLng) -> Void in
804
+ __wrappedFunction.call(std.string(__placeId), std.string(__name), __coordinate)
805
+ }
806
+ }()
807
+ } else {
808
+ return nil
809
+ }
810
+ }()
811
+ }
812
+ }
813
+
782
814
  public final var onMarkerPress: bridge.std__optional_std__function_void_const_std__optional_std__string______id______ {
783
815
  @inline(__always)
784
816
  get {
@@ -1109,6 +1141,184 @@ open class HybridRNGoogleMapsPlusViewSpec_cxx {
1109
1141
  }
1110
1142
  }
1111
1143
 
1144
+ public final var onInfoWindowPress: bridge.std__optional_std__function_void_const_std__optional_std__string______id______ {
1145
+ @inline(__always)
1146
+ get {
1147
+ return { () -> bridge.std__optional_std__function_void_const_std__optional_std__string______id______ in
1148
+ if let __unwrappedValue = self.__implementation.onInfoWindowPress {
1149
+ return bridge.create_std__optional_std__function_void_const_std__optional_std__string______id______({ () -> bridge.Func_void_std__optional_std__string_ in
1150
+ let __closureWrapper = Func_void_std__optional_std__string_(__unwrappedValue)
1151
+ return bridge.create_Func_void_std__optional_std__string_(__closureWrapper.toUnsafe())
1152
+ }())
1153
+ } else {
1154
+ return .init()
1155
+ }
1156
+ }()
1157
+ }
1158
+ @inline(__always)
1159
+ set {
1160
+ self.__implementation.onInfoWindowPress = { () -> ((_ id: String?) -> Void)? in
1161
+ if bridge.has_value_std__optional_std__function_void_const_std__optional_std__string______id______(newValue) {
1162
+ let __unwrapped = bridge.get_std__optional_std__function_void_const_std__optional_std__string______id______(newValue)
1163
+ return { () -> (String?) -> Void in
1164
+ let __wrappedFunction = bridge.wrap_Func_void_std__optional_std__string_(__unwrapped)
1165
+ return { (__id: String?) -> Void in
1166
+ __wrappedFunction.call({ () -> bridge.std__optional_std__string_ in
1167
+ if let __unwrappedValue = __id {
1168
+ return bridge.create_std__optional_std__string_(std.string(__unwrappedValue))
1169
+ } else {
1170
+ return .init()
1171
+ }
1172
+ }())
1173
+ }
1174
+ }()
1175
+ } else {
1176
+ return nil
1177
+ }
1178
+ }()
1179
+ }
1180
+ }
1181
+
1182
+ public final var onInfoWindowClose: bridge.std__optional_std__function_void_const_std__optional_std__string______id______ {
1183
+ @inline(__always)
1184
+ get {
1185
+ return { () -> bridge.std__optional_std__function_void_const_std__optional_std__string______id______ in
1186
+ if let __unwrappedValue = self.__implementation.onInfoWindowClose {
1187
+ return bridge.create_std__optional_std__function_void_const_std__optional_std__string______id______({ () -> bridge.Func_void_std__optional_std__string_ in
1188
+ let __closureWrapper = Func_void_std__optional_std__string_(__unwrappedValue)
1189
+ return bridge.create_Func_void_std__optional_std__string_(__closureWrapper.toUnsafe())
1190
+ }())
1191
+ } else {
1192
+ return .init()
1193
+ }
1194
+ }()
1195
+ }
1196
+ @inline(__always)
1197
+ set {
1198
+ self.__implementation.onInfoWindowClose = { () -> ((_ id: String?) -> Void)? in
1199
+ if bridge.has_value_std__optional_std__function_void_const_std__optional_std__string______id______(newValue) {
1200
+ let __unwrapped = bridge.get_std__optional_std__function_void_const_std__optional_std__string______id______(newValue)
1201
+ return { () -> (String?) -> Void in
1202
+ let __wrappedFunction = bridge.wrap_Func_void_std__optional_std__string_(__unwrapped)
1203
+ return { (__id: String?) -> Void in
1204
+ __wrappedFunction.call({ () -> bridge.std__optional_std__string_ in
1205
+ if let __unwrappedValue = __id {
1206
+ return bridge.create_std__optional_std__string_(std.string(__unwrappedValue))
1207
+ } else {
1208
+ return .init()
1209
+ }
1210
+ }())
1211
+ }
1212
+ }()
1213
+ } else {
1214
+ return nil
1215
+ }
1216
+ }()
1217
+ }
1218
+ }
1219
+
1220
+ public final var onInfoWindowLongPress: bridge.std__optional_std__function_void_const_std__optional_std__string______id______ {
1221
+ @inline(__always)
1222
+ get {
1223
+ return { () -> bridge.std__optional_std__function_void_const_std__optional_std__string______id______ in
1224
+ if let __unwrappedValue = self.__implementation.onInfoWindowLongPress {
1225
+ return bridge.create_std__optional_std__function_void_const_std__optional_std__string______id______({ () -> bridge.Func_void_std__optional_std__string_ in
1226
+ let __closureWrapper = Func_void_std__optional_std__string_(__unwrappedValue)
1227
+ return bridge.create_Func_void_std__optional_std__string_(__closureWrapper.toUnsafe())
1228
+ }())
1229
+ } else {
1230
+ return .init()
1231
+ }
1232
+ }()
1233
+ }
1234
+ @inline(__always)
1235
+ set {
1236
+ self.__implementation.onInfoWindowLongPress = { () -> ((_ id: String?) -> Void)? in
1237
+ if bridge.has_value_std__optional_std__function_void_const_std__optional_std__string______id______(newValue) {
1238
+ let __unwrapped = bridge.get_std__optional_std__function_void_const_std__optional_std__string______id______(newValue)
1239
+ return { () -> (String?) -> Void in
1240
+ let __wrappedFunction = bridge.wrap_Func_void_std__optional_std__string_(__unwrapped)
1241
+ return { (__id: String?) -> Void in
1242
+ __wrappedFunction.call({ () -> bridge.std__optional_std__string_ in
1243
+ if let __unwrappedValue = __id {
1244
+ return bridge.create_std__optional_std__string_(std.string(__unwrappedValue))
1245
+ } else {
1246
+ return .init()
1247
+ }
1248
+ }())
1249
+ }
1250
+ }()
1251
+ } else {
1252
+ return nil
1253
+ }
1254
+ }()
1255
+ }
1256
+ }
1257
+
1258
+ public final var onMyLocationPress: bridge.std__optional_std__function_void_const_RNLocation_____location______ {
1259
+ @inline(__always)
1260
+ get {
1261
+ return { () -> bridge.std__optional_std__function_void_const_RNLocation_____location______ in
1262
+ if let __unwrappedValue = self.__implementation.onMyLocationPress {
1263
+ return bridge.create_std__optional_std__function_void_const_RNLocation_____location______({ () -> bridge.Func_void_RNLocation in
1264
+ let __closureWrapper = Func_void_RNLocation(__unwrappedValue)
1265
+ return bridge.create_Func_void_RNLocation(__closureWrapper.toUnsafe())
1266
+ }())
1267
+ } else {
1268
+ return .init()
1269
+ }
1270
+ }()
1271
+ }
1272
+ @inline(__always)
1273
+ set {
1274
+ self.__implementation.onMyLocationPress = { () -> ((_ location: RNLocation) -> Void)? in
1275
+ if bridge.has_value_std__optional_std__function_void_const_RNLocation_____location______(newValue) {
1276
+ let __unwrapped = bridge.get_std__optional_std__function_void_const_RNLocation_____location______(newValue)
1277
+ return { () -> (RNLocation) -> Void in
1278
+ let __wrappedFunction = bridge.wrap_Func_void_RNLocation(__unwrapped)
1279
+ return { (__location: RNLocation) -> Void in
1280
+ __wrappedFunction.call(__location)
1281
+ }
1282
+ }()
1283
+ } else {
1284
+ return nil
1285
+ }
1286
+ }()
1287
+ }
1288
+ }
1289
+
1290
+ public final var onMyLocationButtonPress: bridge.std__optional_std__function_void_bool____pressed______ {
1291
+ @inline(__always)
1292
+ get {
1293
+ return { () -> bridge.std__optional_std__function_void_bool____pressed______ in
1294
+ if let __unwrappedValue = self.__implementation.onMyLocationButtonPress {
1295
+ return bridge.create_std__optional_std__function_void_bool____pressed______({ () -> bridge.Func_void_bool in
1296
+ let __closureWrapper = Func_void_bool(__unwrappedValue)
1297
+ return bridge.create_Func_void_bool(__closureWrapper.toUnsafe())
1298
+ }())
1299
+ } else {
1300
+ return .init()
1301
+ }
1302
+ }()
1303
+ }
1304
+ @inline(__always)
1305
+ set {
1306
+ self.__implementation.onMyLocationButtonPress = { () -> ((_ pressed: Bool) -> Void)? in
1307
+ if bridge.has_value_std__optional_std__function_void_bool____pressed______(newValue) {
1308
+ let __unwrapped = bridge.get_std__optional_std__function_void_bool____pressed______(newValue)
1309
+ return { () -> (Bool) -> Void in
1310
+ let __wrappedFunction = bridge.wrap_Func_void_bool(__unwrapped)
1311
+ return { (__pressed: Bool) -> Void in
1312
+ __wrappedFunction.call(__pressed)
1313
+ }
1314
+ }()
1315
+ } else {
1316
+ return nil
1317
+ }
1318
+ }()
1319
+ }
1320
+ }
1321
+
1112
1322
  public final var onCameraChangeStart: bridge.std__optional_std__function_void_const_RNRegion_____region_____const_RNCamera_____camera_____bool____isGesture______ {
1113
1323
  @inline(__always)
1114
1324
  get {