react-native-google-maps-plus 1.3.0-dev.1 → 1.3.0-dev.2

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 (45) hide show
  1. package/android/src/main/java/com/rngooglemapsplus/GoogleMapsViewImpl.kt +21 -0
  2. package/android/src/main/java/com/rngooglemapsplus/RNGoogleMapsPlusView.kt +10 -0
  3. package/android/src/main/java/com/rngooglemapsplus/extensions/IndoorBuildingExtension.kt +33 -0
  4. package/ios/GoogleMapViewImpl.swift +28 -2
  5. package/ios/RNGoogleMapsPlusView.swift +6 -0
  6. package/ios/extensions/IndoorBuilding+Extension.swift +33 -0
  7. package/lib/module/types.js.map +1 -1
  8. package/lib/typescript/src/RNGoogleMapsPlusView.nitro.d.ts +3 -1
  9. package/lib/typescript/src/RNGoogleMapsPlusView.nitro.d.ts.map +1 -1
  10. package/lib/typescript/src/types.d.ts +12 -0
  11. package/lib/typescript/src/types.d.ts.map +1 -1
  12. package/nitrogen/generated/android/RNGoogleMapsPlusOnLoad.cpp +4 -0
  13. package/nitrogen/generated/android/c++/JFunc_void_RNIndoorBuilding.hpp +81 -0
  14. package/nitrogen/generated/android/c++/JFunc_void_RNIndoorLevel.hpp +78 -0
  15. package/nitrogen/generated/android/c++/JHybridRNGoogleMapsPlusViewSpec.cpp +48 -0
  16. package/nitrogen/generated/android/c++/JHybridRNGoogleMapsPlusViewSpec.hpp +4 -0
  17. package/nitrogen/generated/android/c++/JRNIndoorBuilding.hpp +86 -0
  18. package/nitrogen/generated/android/c++/JRNIndoorLevel.hpp +66 -0
  19. package/nitrogen/generated/android/c++/views/JHybridRNGoogleMapsPlusViewStateUpdater.cpp +8 -0
  20. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/Func_void_RNIndoorBuilding.kt +81 -0
  21. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/Func_void_RNIndoorLevel.kt +81 -0
  22. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/HybridRNGoogleMapsPlusViewSpec.kt +28 -0
  23. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNIndoorBuilding.kt +38 -0
  24. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNIndoorLevel.kt +38 -0
  25. package/nitrogen/generated/ios/RNGoogleMapsPlus-Swift-Cxx-Bridge.cpp +16 -0
  26. package/nitrogen/generated/ios/RNGoogleMapsPlus-Swift-Cxx-Bridge.hpp +91 -0
  27. package/nitrogen/generated/ios/RNGoogleMapsPlus-Swift-Cxx-Umbrella.hpp +6 -0
  28. package/nitrogen/generated/ios/c++/HybridRNGoogleMapsPlusViewSpecSwift.hpp +20 -0
  29. package/nitrogen/generated/ios/c++/views/HybridRNGoogleMapsPlusViewComponent.mm +10 -0
  30. package/nitrogen/generated/ios/swift/Func_void_RNIndoorBuilding.swift +47 -0
  31. package/nitrogen/generated/ios/swift/Func_void_RNIndoorLevel.swift +47 -0
  32. package/nitrogen/generated/ios/swift/HybridRNGoogleMapsPlusViewSpec.swift +2 -0
  33. package/nitrogen/generated/ios/swift/HybridRNGoogleMapsPlusViewSpec_cxx.swift +64 -0
  34. package/nitrogen/generated/ios/swift/RNIndoorBuilding.swift +116 -0
  35. package/nitrogen/generated/ios/swift/RNIndoorLevel.swift +118 -0
  36. package/nitrogen/generated/shared/c++/HybridRNGoogleMapsPlusViewSpec.cpp +4 -0
  37. package/nitrogen/generated/shared/c++/HybridRNGoogleMapsPlusViewSpec.hpp +10 -0
  38. package/nitrogen/generated/shared/c++/RNIndoorBuilding.hpp +82 -0
  39. package/nitrogen/generated/shared/c++/RNIndoorLevel.hpp +80 -0
  40. package/nitrogen/generated/shared/c++/views/HybridRNGoogleMapsPlusViewComponent.cpp +24 -0
  41. package/nitrogen/generated/shared/c++/views/HybridRNGoogleMapsPlusViewComponent.hpp +4 -0
  42. package/nitrogen/generated/shared/json/RNGoogleMapsPlusViewConfig.json +2 -0
  43. package/package.json +1 -1
  44. package/src/RNGoogleMapsPlusView.nitro.ts +4 -0
  45. package/src/types.ts +14 -0
@@ -0,0 +1,66 @@
1
+ ///
2
+ /// JRNIndoorLevel.hpp
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © 2025 Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ #pragma once
9
+
10
+ #include <fbjni/fbjni.h>
11
+ #include "RNIndoorLevel.hpp"
12
+
13
+ #include <optional>
14
+ #include <string>
15
+
16
+ namespace margelo::nitro::rngooglemapsplus {
17
+
18
+ using namespace facebook;
19
+
20
+ /**
21
+ * The C++ JNI bridge between the C++ struct "RNIndoorLevel" and the the Kotlin data class "RNIndoorLevel".
22
+ */
23
+ struct JRNIndoorLevel final: public jni::JavaClass<JRNIndoorLevel> {
24
+ public:
25
+ static auto constexpr kJavaDescriptor = "Lcom/rngooglemapsplus/RNIndoorLevel;";
26
+
27
+ public:
28
+ /**
29
+ * Convert this Java/Kotlin-based struct to the C++ struct RNIndoorLevel by copying all values to C++.
30
+ */
31
+ [[maybe_unused]]
32
+ [[nodiscard]]
33
+ RNIndoorLevel toCpp() const {
34
+ static const auto clazz = javaClassStatic();
35
+ static const auto fieldIndex = clazz->getField<double>("index");
36
+ double index = this->getFieldValue(fieldIndex);
37
+ static const auto fieldName = clazz->getField<jni::JString>("name");
38
+ jni::local_ref<jni::JString> name = this->getFieldValue(fieldName);
39
+ static const auto fieldShortName = clazz->getField<jni::JString>("shortName");
40
+ jni::local_ref<jni::JString> shortName = this->getFieldValue(fieldShortName);
41
+ static const auto fieldActive = clazz->getField<jni::JBoolean>("active");
42
+ jni::local_ref<jni::JBoolean> active = this->getFieldValue(fieldActive);
43
+ return RNIndoorLevel(
44
+ index,
45
+ name != nullptr ? std::make_optional(name->toStdString()) : std::nullopt,
46
+ shortName != nullptr ? std::make_optional(shortName->toStdString()) : std::nullopt,
47
+ active != nullptr ? std::make_optional(static_cast<bool>(active->value())) : std::nullopt
48
+ );
49
+ }
50
+
51
+ public:
52
+ /**
53
+ * Create a Java/Kotlin-based struct by copying all values from the given C++ struct to Java.
54
+ */
55
+ [[maybe_unused]]
56
+ static jni::local_ref<JRNIndoorLevel::javaobject> fromCpp(const RNIndoorLevel& value) {
57
+ return newInstance(
58
+ value.index,
59
+ value.name.has_value() ? jni::make_jstring(value.name.value()) : nullptr,
60
+ value.shortName.has_value() ? jni::make_jstring(value.shortName.value()) : nullptr,
61
+ value.active.has_value() ? jni::JBoolean::valueOf(value.active.value()) : nullptr
62
+ );
63
+ }
64
+ };
65
+
66
+ } // namespace margelo::nitro::rngooglemapsplus
@@ -156,6 +156,14 @@ void JHybridRNGoogleMapsPlusViewStateUpdater::updateViewProps(jni::alias_ref<jni
156
156
  view->setOnMarkerDragEnd(props.onMarkerDragEnd.value);
157
157
  // TODO: Set isDirty = false
158
158
  }
159
+ if (props.onIndoorBuildingFocused.isDirty) {
160
+ view->setOnIndoorBuildingFocused(props.onIndoorBuildingFocused.value);
161
+ // TODO: Set isDirty = false
162
+ }
163
+ if (props.onIndoorLevelActivated.isDirty) {
164
+ view->setOnIndoorLevelActivated(props.onIndoorLevelActivated.value);
165
+ // TODO: Set isDirty = false
166
+ }
159
167
  if (props.onCameraChangeStart.isDirty) {
160
168
  view->setOnCameraChangeStart(props.onCameraChangeStart.value);
161
169
  // TODO: Set isDirty = false
@@ -0,0 +1,81 @@
1
+ ///
2
+ /// Func_void_RNIndoorBuilding.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 `(indoorBuilding: 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_RNIndoorBuilding: (RNIndoorBuilding) -> 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(indoorBuilding: RNIndoorBuilding): Unit
33
+ }
34
+
35
+ /**
36
+ * Represents the JavaScript callback `(indoorBuilding: 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_RNIndoorBuilding_cxx: Func_void_RNIndoorBuilding {
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(indoorBuilding: RNIndoorBuilding): Unit
61
+ = invoke_cxx(indoorBuilding)
62
+
63
+ @FastNative
64
+ private external fun invoke_cxx(indoorBuilding: RNIndoorBuilding): Unit
65
+ }
66
+
67
+ /**
68
+ * Represents the JavaScript callback `(indoorBuilding: struct) => void`.
69
+ * This is implemented in Java/Kotlin, via a `(RNIndoorBuilding) -> Unit`.
70
+ * The callback is always coming from native.
71
+ */
72
+ @DoNotStrip
73
+ @Keep
74
+ @Suppress("ClassName", "RedundantUnitReturnType", "unused")
75
+ class Func_void_RNIndoorBuilding_java(private val function: (RNIndoorBuilding) -> Unit): Func_void_RNIndoorBuilding {
76
+ @DoNotStrip
77
+ @Keep
78
+ override fun invoke(indoorBuilding: RNIndoorBuilding): Unit {
79
+ return this.function(indoorBuilding)
80
+ }
81
+ }
@@ -0,0 +1,81 @@
1
+ ///
2
+ /// Func_void_RNIndoorLevel.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 `(indoorLevel: 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_RNIndoorLevel: (RNIndoorLevel) -> 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(indoorLevel: RNIndoorLevel): Unit
33
+ }
34
+
35
+ /**
36
+ * Represents the JavaScript callback `(indoorLevel: 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_RNIndoorLevel_cxx: Func_void_RNIndoorLevel {
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(indoorLevel: RNIndoorLevel): Unit
61
+ = invoke_cxx(indoorLevel)
62
+
63
+ @FastNative
64
+ private external fun invoke_cxx(indoorLevel: RNIndoorLevel): Unit
65
+ }
66
+
67
+ /**
68
+ * Represents the JavaScript callback `(indoorLevel: struct) => void`.
69
+ * This is implemented in Java/Kotlin, via a `(RNIndoorLevel) -> Unit`.
70
+ * The callback is always coming from native.
71
+ */
72
+ @DoNotStrip
73
+ @Keep
74
+ @Suppress("ClassName", "RedundantUnitReturnType", "unused")
75
+ class Func_void_RNIndoorLevel_java(private val function: (RNIndoorLevel) -> Unit): Func_void_RNIndoorLevel {
76
+ @DoNotStrip
77
+ @Keep
78
+ override fun invoke(indoorLevel: RNIndoorLevel): Unit {
79
+ return this.function(indoorLevel)
80
+ }
81
+ }
@@ -314,6 +314,34 @@ abstract class HybridRNGoogleMapsPlusViewSpec: HybridView() {
314
314
  onMarkerDragEnd = value?.let { it }
315
315
  }
316
316
 
317
+ abstract var onIndoorBuildingFocused: ((indoorBuilding: RNIndoorBuilding) -> Unit)?
318
+
319
+ private var onIndoorBuildingFocused_cxx: Func_void_RNIndoorBuilding?
320
+ @Keep
321
+ @DoNotStrip
322
+ get() {
323
+ return onIndoorBuildingFocused?.let { Func_void_RNIndoorBuilding_java(it) }
324
+ }
325
+ @Keep
326
+ @DoNotStrip
327
+ set(value) {
328
+ onIndoorBuildingFocused = value?.let { it }
329
+ }
330
+
331
+ abstract var onIndoorLevelActivated: ((indoorLevel: RNIndoorLevel) -> Unit)?
332
+
333
+ private var onIndoorLevelActivated_cxx: Func_void_RNIndoorLevel?
334
+ @Keep
335
+ @DoNotStrip
336
+ get() {
337
+ return onIndoorLevelActivated?.let { Func_void_RNIndoorLevel_java(it) }
338
+ }
339
+ @Keep
340
+ @DoNotStrip
341
+ set(value) {
342
+ onIndoorLevelActivated = value?.let { it }
343
+ }
344
+
317
345
  abstract var onCameraChangeStart: ((region: RNRegion, camera: RNCamera, isGesture: Boolean) -> Unit)?
318
346
 
319
347
  private var onCameraChangeStart_cxx: Func_void_RNRegion_RNCamera_bool?
@@ -0,0 +1,38 @@
1
+ ///
2
+ /// RNIndoorBuilding.kt
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © 2025 Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ package com.rngooglemapsplus
9
+
10
+ import androidx.annotation.Keep
11
+ import com.facebook.proguard.annotations.DoNotStrip
12
+ import com.margelo.nitro.core.*
13
+
14
+
15
+ /**
16
+ * Represents the JavaScript object/struct "RNIndoorBuilding".
17
+ */
18
+ @DoNotStrip
19
+ @Keep
20
+ data class RNIndoorBuilding
21
+ @DoNotStrip
22
+ @Keep
23
+ constructor(
24
+ @DoNotStrip
25
+ @Keep
26
+ val activeLevelIndex: Double?,
27
+ @DoNotStrip
28
+ @Keep
29
+ val defaultLevelIndex: Double?,
30
+ @DoNotStrip
31
+ @Keep
32
+ val levels: Array<RNIndoorLevel>,
33
+ @DoNotStrip
34
+ @Keep
35
+ val underground: Boolean?
36
+ ) {
37
+ /* main constructor */
38
+ }
@@ -0,0 +1,38 @@
1
+ ///
2
+ /// RNIndoorLevel.kt
3
+ /// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
4
+ /// https://github.com/mrousavy/nitro
5
+ /// Copyright © 2025 Marc Rousavy @ Margelo
6
+ ///
7
+
8
+ package com.rngooglemapsplus
9
+
10
+ import androidx.annotation.Keep
11
+ import com.facebook.proguard.annotations.DoNotStrip
12
+ import com.margelo.nitro.core.*
13
+
14
+
15
+ /**
16
+ * Represents the JavaScript object/struct "RNIndoorLevel".
17
+ */
18
+ @DoNotStrip
19
+ @Keep
20
+ data class RNIndoorLevel
21
+ @DoNotStrip
22
+ @Keep
23
+ constructor(
24
+ @DoNotStrip
25
+ @Keep
26
+ val index: Double,
27
+ @DoNotStrip
28
+ @Keep
29
+ val name: String?,
30
+ @DoNotStrip
31
+ @Keep
32
+ val shortName: String?,
33
+ @DoNotStrip
34
+ @Keep
35
+ val active: Boolean?
36
+ ) {
37
+ /* main constructor */
38
+ }
@@ -102,6 +102,22 @@ namespace margelo::nitro::rngooglemapsplus::bridge::swift {
102
102
  };
103
103
  }
104
104
 
105
+ // pragma MARK: std::function<void(const RNIndoorBuilding& /* indoorBuilding */)>
106
+ Func_void_RNIndoorBuilding create_Func_void_RNIndoorBuilding(void* _Nonnull swiftClosureWrapper) noexcept {
107
+ auto swiftClosure = RNGoogleMapsPlus::Func_void_RNIndoorBuilding::fromUnsafe(swiftClosureWrapper);
108
+ return [swiftClosure = std::move(swiftClosure)](const RNIndoorBuilding& indoorBuilding) mutable -> void {
109
+ swiftClosure.call(indoorBuilding);
110
+ };
111
+ }
112
+
113
+ // pragma MARK: std::function<void(const RNIndoorLevel& /* indoorLevel */)>
114
+ Func_void_RNIndoorLevel create_Func_void_RNIndoorLevel(void* _Nonnull swiftClosureWrapper) noexcept {
115
+ auto swiftClosure = RNGoogleMapsPlus::Func_void_RNIndoorLevel::fromUnsafe(swiftClosureWrapper);
116
+ return [swiftClosure = std::move(swiftClosure)](const RNIndoorLevel& indoorLevel) mutable -> void {
117
+ swiftClosure.call(indoorLevel);
118
+ };
119
+ }
120
+
105
121
  // pragma MARK: std::function<void(const RNRegion& /* region */, const RNCamera& /* camera */, bool /* isGesture */)>
106
122
  Func_void_RNRegion_RNCamera_bool create_Func_void_RNRegion_RNCamera_bool(void* _Nonnull swiftClosureWrapper) noexcept {
107
123
  auto swiftClosure = RNGoogleMapsPlus::Func_void_RNRegion_RNCamera_bool::fromUnsafe(swiftClosureWrapper);
@@ -34,6 +34,10 @@ namespace margelo::nitro::rngooglemapsplus { enum class RNIOSLocationAccuracy; }
34
34
  namespace margelo::nitro::rngooglemapsplus { struct RNIOSLocationConfig; }
35
35
  // Forward declaration of `RNIOSPermissionResult` to properly resolve imports.
36
36
  namespace margelo::nitro::rngooglemapsplus { enum class RNIOSPermissionResult; }
37
+ // Forward declaration of `RNIndoorBuilding` to properly resolve imports.
38
+ namespace margelo::nitro::rngooglemapsplus { struct RNIndoorBuilding; }
39
+ // Forward declaration of `RNIndoorLevel` to properly resolve imports.
40
+ namespace margelo::nitro::rngooglemapsplus { struct RNIndoorLevel; }
37
41
  // Forward declaration of `RNInitialProps` to properly resolve imports.
38
42
  namespace margelo::nitro::rngooglemapsplus { struct RNInitialProps; }
39
43
  // Forward declaration of `RNKMLayer` to properly resolve imports.
@@ -97,6 +101,8 @@ namespace RNGoogleMapsPlus { class HybridRNGoogleMapsPlusViewSpec_cxx; }
97
101
  #include "RNIOSLocationAccuracy.hpp"
98
102
  #include "RNIOSLocationConfig.hpp"
99
103
  #include "RNIOSPermissionResult.hpp"
104
+ #include "RNIndoorBuilding.hpp"
105
+ #include "RNIndoorLevel.hpp"
100
106
  #include "RNInitialProps.hpp"
101
107
  #include "RNKMLayer.hpp"
102
108
  #include "RNLatLng.hpp"
@@ -1033,6 +1039,91 @@ namespace margelo::nitro::rngooglemapsplus::bridge::swift {
1033
1039
  return *optional;
1034
1040
  }
1035
1041
 
1042
+ // pragma MARK: std::vector<RNIndoorLevel>
1043
+ /**
1044
+ * Specialized version of `std::vector<RNIndoorLevel>`.
1045
+ */
1046
+ using std__vector_RNIndoorLevel_ = std::vector<RNIndoorLevel>;
1047
+ inline std::vector<RNIndoorLevel> create_std__vector_RNIndoorLevel_(size_t size) noexcept {
1048
+ std::vector<RNIndoorLevel> vector;
1049
+ vector.reserve(size);
1050
+ return vector;
1051
+ }
1052
+
1053
+ // pragma MARK: std::function<void(const RNIndoorBuilding& /* indoorBuilding */)>
1054
+ /**
1055
+ * Specialized version of `std::function<void(const RNIndoorBuilding&)>`.
1056
+ */
1057
+ using Func_void_RNIndoorBuilding = std::function<void(const RNIndoorBuilding& /* indoorBuilding */)>;
1058
+ /**
1059
+ * Wrapper class for a `std::function<void(const RNIndoorBuilding& / * indoorBuilding * /)>`, this can be used from Swift.
1060
+ */
1061
+ class Func_void_RNIndoorBuilding_Wrapper final {
1062
+ public:
1063
+ explicit Func_void_RNIndoorBuilding_Wrapper(std::function<void(const RNIndoorBuilding& /* indoorBuilding */)>&& func): _function(std::make_unique<std::function<void(const RNIndoorBuilding& /* indoorBuilding */)>>(std::move(func))) {}
1064
+ inline void call(RNIndoorBuilding indoorBuilding) const noexcept {
1065
+ _function->operator()(indoorBuilding);
1066
+ }
1067
+ private:
1068
+ std::unique_ptr<std::function<void(const RNIndoorBuilding& /* indoorBuilding */)>> _function;
1069
+ } SWIFT_NONCOPYABLE;
1070
+ Func_void_RNIndoorBuilding create_Func_void_RNIndoorBuilding(void* _Nonnull swiftClosureWrapper) noexcept;
1071
+ inline Func_void_RNIndoorBuilding_Wrapper wrap_Func_void_RNIndoorBuilding(Func_void_RNIndoorBuilding value) noexcept {
1072
+ return Func_void_RNIndoorBuilding_Wrapper(std::move(value));
1073
+ }
1074
+
1075
+ // pragma MARK: std::optional<std::function<void(const RNIndoorBuilding& /* indoorBuilding */)>>
1076
+ /**
1077
+ * Specialized version of `std::optional<std::function<void(const RNIndoorBuilding& / * indoorBuilding * /)>>`.
1078
+ */
1079
+ using std__optional_std__function_void_const_RNIndoorBuilding_____indoorBuilding______ = std::optional<std::function<void(const RNIndoorBuilding& /* indoorBuilding */)>>;
1080
+ inline std::optional<std::function<void(const RNIndoorBuilding& /* indoorBuilding */)>> create_std__optional_std__function_void_const_RNIndoorBuilding_____indoorBuilding______(const std::function<void(const RNIndoorBuilding& /* indoorBuilding */)>& value) noexcept {
1081
+ return std::optional<std::function<void(const RNIndoorBuilding& /* indoorBuilding */)>>(value);
1082
+ }
1083
+ inline bool has_value_std__optional_std__function_void_const_RNIndoorBuilding_____indoorBuilding______(const std::optional<std::function<void(const RNIndoorBuilding& /* indoorBuilding */)>>& optional) noexcept {
1084
+ return optional.has_value();
1085
+ }
1086
+ inline std::function<void(const RNIndoorBuilding& /* indoorBuilding */)> get_std__optional_std__function_void_const_RNIndoorBuilding_____indoorBuilding______(const std::optional<std::function<void(const RNIndoorBuilding& /* indoorBuilding */)>>& optional) noexcept {
1087
+ return *optional;
1088
+ }
1089
+
1090
+ // pragma MARK: std::function<void(const RNIndoorLevel& /* indoorLevel */)>
1091
+ /**
1092
+ * Specialized version of `std::function<void(const RNIndoorLevel&)>`.
1093
+ */
1094
+ using Func_void_RNIndoorLevel = std::function<void(const RNIndoorLevel& /* indoorLevel */)>;
1095
+ /**
1096
+ * Wrapper class for a `std::function<void(const RNIndoorLevel& / * indoorLevel * /)>`, this can be used from Swift.
1097
+ */
1098
+ class Func_void_RNIndoorLevel_Wrapper final {
1099
+ public:
1100
+ explicit Func_void_RNIndoorLevel_Wrapper(std::function<void(const RNIndoorLevel& /* indoorLevel */)>&& func): _function(std::make_unique<std::function<void(const RNIndoorLevel& /* indoorLevel */)>>(std::move(func))) {}
1101
+ inline void call(RNIndoorLevel indoorLevel) const noexcept {
1102
+ _function->operator()(indoorLevel);
1103
+ }
1104
+ private:
1105
+ std::unique_ptr<std::function<void(const RNIndoorLevel& /* indoorLevel */)>> _function;
1106
+ } SWIFT_NONCOPYABLE;
1107
+ Func_void_RNIndoorLevel create_Func_void_RNIndoorLevel(void* _Nonnull swiftClosureWrapper) noexcept;
1108
+ inline Func_void_RNIndoorLevel_Wrapper wrap_Func_void_RNIndoorLevel(Func_void_RNIndoorLevel value) noexcept {
1109
+ return Func_void_RNIndoorLevel_Wrapper(std::move(value));
1110
+ }
1111
+
1112
+ // pragma MARK: std::optional<std::function<void(const RNIndoorLevel& /* indoorLevel */)>>
1113
+ /**
1114
+ * Specialized version of `std::optional<std::function<void(const RNIndoorLevel& / * indoorLevel * /)>>`.
1115
+ */
1116
+ using std__optional_std__function_void_const_RNIndoorLevel_____indoorLevel______ = std::optional<std::function<void(const RNIndoorLevel& /* indoorLevel */)>>;
1117
+ inline std::optional<std::function<void(const RNIndoorLevel& /* indoorLevel */)>> create_std__optional_std__function_void_const_RNIndoorLevel_____indoorLevel______(const std::function<void(const RNIndoorLevel& /* indoorLevel */)>& value) noexcept {
1118
+ return std::optional<std::function<void(const RNIndoorLevel& /* indoorLevel */)>>(value);
1119
+ }
1120
+ inline bool has_value_std__optional_std__function_void_const_RNIndoorLevel_____indoorLevel______(const std::optional<std::function<void(const RNIndoorLevel& /* indoorLevel */)>>& optional) noexcept {
1121
+ return optional.has_value();
1122
+ }
1123
+ inline std::function<void(const RNIndoorLevel& /* indoorLevel */)> get_std__optional_std__function_void_const_RNIndoorLevel_____indoorLevel______(const std::optional<std::function<void(const RNIndoorLevel& /* indoorLevel */)>>& optional) noexcept {
1124
+ return *optional;
1125
+ }
1126
+
1036
1127
  // pragma MARK: std::function<void(const RNRegion& /* region */, const RNCamera& /* camera */, bool /* isGesture */)>
1037
1128
  /**
1038
1129
  * Specialized version of `std::function<void(const RNRegion&, const RNCamera&, bool)>`.
@@ -34,6 +34,10 @@ namespace margelo::nitro::rngooglemapsplus { enum class RNIOSLocationAccuracy; }
34
34
  namespace margelo::nitro::rngooglemapsplus { struct RNIOSLocationConfig; }
35
35
  // Forward declaration of `RNIOSPermissionResult` to properly resolve imports.
36
36
  namespace margelo::nitro::rngooglemapsplus { enum class RNIOSPermissionResult; }
37
+ // Forward declaration of `RNIndoorBuilding` to properly resolve imports.
38
+ namespace margelo::nitro::rngooglemapsplus { struct RNIndoorBuilding; }
39
+ // Forward declaration of `RNIndoorLevel` to properly resolve imports.
40
+ namespace margelo::nitro::rngooglemapsplus { struct RNIndoorLevel; }
37
41
  // Forward declaration of `RNInitialProps` to properly resolve imports.
38
42
  namespace margelo::nitro::rngooglemapsplus { struct RNInitialProps; }
39
43
  // Forward declaration of `RNKMLayer` to properly resolve imports.
@@ -91,6 +95,8 @@ namespace margelo::nitro::rngooglemapsplus { enum class RNUserInterfaceStyle; }
91
95
  #include "RNIOSLocationAccuracy.hpp"
92
96
  #include "RNIOSLocationConfig.hpp"
93
97
  #include "RNIOSPermissionResult.hpp"
98
+ #include "RNIndoorBuilding.hpp"
99
+ #include "RNIndoorLevel.hpp"
94
100
  #include "RNInitialProps.hpp"
95
101
  #include "RNKMLayer.hpp"
96
102
  #include "RNLatLng.hpp"
@@ -68,6 +68,10 @@ namespace margelo::nitro::rngooglemapsplus { enum class RNMapErrorCode; }
68
68
  namespace margelo::nitro::rngooglemapsplus { struct RNLocation; }
69
69
  // Forward declaration of `RNLocationErrorCode` to properly resolve imports.
70
70
  namespace margelo::nitro::rngooglemapsplus { enum class RNLocationErrorCode; }
71
+ // Forward declaration of `RNIndoorBuilding` to properly resolve imports.
72
+ namespace margelo::nitro::rngooglemapsplus { struct RNIndoorBuilding; }
73
+ // Forward declaration of `RNIndoorLevel` to properly resolve imports.
74
+ namespace margelo::nitro::rngooglemapsplus { struct RNIndoorLevel; }
71
75
  // Forward declaration of `RNRegion` to properly resolve imports.
72
76
  namespace margelo::nitro::rngooglemapsplus { struct RNRegion; }
73
77
  // Forward declaration of `RNLocationPermissionResult` to properly resolve imports.
@@ -109,6 +113,8 @@ namespace margelo::nitro::rngooglemapsplus { enum class RNIOSPermissionResult; }
109
113
  #include <functional>
110
114
  #include "RNLocation.hpp"
111
115
  #include "RNLocationErrorCode.hpp"
116
+ #include "RNIndoorBuilding.hpp"
117
+ #include "RNIndoorLevel.hpp"
112
118
  #include "RNRegion.hpp"
113
119
  #include "RNLocationPermissionResult.hpp"
114
120
  #include <NitroModules/Promise.hpp>
@@ -362,6 +368,20 @@ namespace margelo::nitro::rngooglemapsplus {
362
368
  inline void setOnMarkerDragEnd(const std::optional<std::function<void(const std::optional<std::string>& /* id */, const RNLatLng& /* location */)>>& onMarkerDragEnd) noexcept override {
363
369
  _swiftPart.setOnMarkerDragEnd(onMarkerDragEnd);
364
370
  }
371
+ inline std::optional<std::function<void(const RNIndoorBuilding& /* indoorBuilding */)>> getOnIndoorBuildingFocused() noexcept override {
372
+ auto __result = _swiftPart.getOnIndoorBuildingFocused();
373
+ return __result;
374
+ }
375
+ inline void setOnIndoorBuildingFocused(const std::optional<std::function<void(const RNIndoorBuilding& /* indoorBuilding */)>>& onIndoorBuildingFocused) noexcept override {
376
+ _swiftPart.setOnIndoorBuildingFocused(onIndoorBuildingFocused);
377
+ }
378
+ inline std::optional<std::function<void(const RNIndoorLevel& /* indoorLevel */)>> getOnIndoorLevelActivated() noexcept override {
379
+ auto __result = _swiftPart.getOnIndoorLevelActivated();
380
+ return __result;
381
+ }
382
+ inline void setOnIndoorLevelActivated(const std::optional<std::function<void(const RNIndoorLevel& /* indoorLevel */)>>& onIndoorLevelActivated) noexcept override {
383
+ _swiftPart.setOnIndoorLevelActivated(onIndoorLevelActivated);
384
+ }
365
385
  inline std::optional<std::function<void(const RNRegion& /* region */, const RNCamera& /* camera */, bool /* isGesture */)>> getOnCameraChangeStart() noexcept override {
366
386
  auto __result = _swiftPart.getOnCameraChangeStart();
367
387
  return __result;
@@ -221,6 +221,16 @@ using namespace margelo::nitro::rngooglemapsplus::views;
221
221
  swiftPart.setOnMarkerDragEnd(newViewProps.onMarkerDragEnd.value);
222
222
  newViewProps.onMarkerDragEnd.isDirty = false;
223
223
  }
224
+ // onIndoorBuildingFocused: optional
225
+ if (newViewProps.onIndoorBuildingFocused.isDirty) {
226
+ swiftPart.setOnIndoorBuildingFocused(newViewProps.onIndoorBuildingFocused.value);
227
+ newViewProps.onIndoorBuildingFocused.isDirty = false;
228
+ }
229
+ // onIndoorLevelActivated: optional
230
+ if (newViewProps.onIndoorLevelActivated.isDirty) {
231
+ swiftPart.setOnIndoorLevelActivated(newViewProps.onIndoorLevelActivated.value);
232
+ newViewProps.onIndoorLevelActivated.isDirty = false;
233
+ }
224
234
  // onCameraChangeStart: optional
225
235
  if (newViewProps.onCameraChangeStart.isDirty) {
226
236
  swiftPart.setOnCameraChangeStart(newViewProps.onCameraChangeStart.value);
@@ -0,0 +1,47 @@
1
+ ///
2
+ /// Func_void_RNIndoorBuilding.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 `(_ indoorBuilding: RNIndoorBuilding) -> 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_RNIndoorBuilding {
16
+ public typealias bridge = margelo.nitro.rngooglemapsplus.bridge.swift
17
+
18
+ private let closure: (_ indoorBuilding: RNIndoorBuilding) -> Void
19
+
20
+ public init(_ closure: @escaping (_ indoorBuilding: RNIndoorBuilding) -> Void) {
21
+ self.closure = closure
22
+ }
23
+
24
+ @inline(__always)
25
+ public func call(indoorBuilding: RNIndoorBuilding) -> Void {
26
+ self.closure(indoorBuilding)
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_RNIndoorBuilding`.
40
+ * The pointer has to be a retained opaque `Unmanaged<Func_void_RNIndoorBuilding>`.
41
+ * This removes one strong reference from the object!
42
+ */
43
+ @inline(__always)
44
+ public static func fromUnsafe(_ pointer: UnsafeMutableRawPointer) -> Func_void_RNIndoorBuilding {
45
+ return Unmanaged<Func_void_RNIndoorBuilding>.fromOpaque(pointer).takeRetainedValue()
46
+ }
47
+ }
@@ -0,0 +1,47 @@
1
+ ///
2
+ /// Func_void_RNIndoorLevel.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 `(_ indoorLevel: RNIndoorLevel) -> 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_RNIndoorLevel {
16
+ public typealias bridge = margelo.nitro.rngooglemapsplus.bridge.swift
17
+
18
+ private let closure: (_ indoorLevel: RNIndoorLevel) -> Void
19
+
20
+ public init(_ closure: @escaping (_ indoorLevel: RNIndoorLevel) -> Void) {
21
+ self.closure = closure
22
+ }
23
+
24
+ @inline(__always)
25
+ public func call(indoorLevel: RNIndoorLevel) -> Void {
26
+ self.closure(indoorLevel)
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_RNIndoorLevel`.
40
+ * The pointer has to be a retained opaque `Unmanaged<Func_void_RNIndoorLevel>`.
41
+ * This removes one strong reference from the object!
42
+ */
43
+ @inline(__always)
44
+ public static func fromUnsafe(_ pointer: UnsafeMutableRawPointer) -> Func_void_RNIndoorLevel {
45
+ return Unmanaged<Func_void_RNIndoorLevel>.fromOpaque(pointer).takeRetainedValue()
46
+ }
47
+ }