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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (74) hide show
  1. package/android/src/main/java/com/rngooglemapsplus/GoogleMapsViewImpl.kt +107 -5
  2. package/android/src/main/java/com/rngooglemapsplus/LocationHandler.kt +0 -1
  3. package/android/src/main/java/com/rngooglemapsplus/RNGoogleMapsPlusView.kt +48 -4
  4. package/android/src/main/java/com/rngooglemapsplus/extensions/IndoorBuildingExtension.kt +33 -0
  5. package/android/src/main/java/com/rngooglemapsplus/extensions/RNLatLngBoundsExtension.kt +17 -0
  6. package/android/src/main/java/com/rngooglemapsplus/extensions/RNSize.kt +7 -0
  7. package/android/src/main/java/com/rngooglemapsplus/extensions/RNSnapshotFormat.kt +16 -0
  8. package/android/src/main/java/com/rngooglemapsplus/extensions/RNSnapshotResultType.kt +9 -0
  9. package/ios/GoogleMapViewImpl.swift +277 -121
  10. package/ios/RNGoogleMapsPlusView.swift +78 -27
  11. package/ios/extensions/IndoorBuilding+Extension.swift +33 -0
  12. package/ios/extensions/RNLatLngBounds+Extension.swift +16 -0
  13. package/ios/extensions/RNSize+Extension.swift +7 -0
  14. package/ios/extensions/RNSnapshotFormat+Extension.swift +28 -0
  15. package/ios/extensions/RNSnapshotResultType+Extension.swift +12 -0
  16. package/lib/module/types.js.map +1 -1
  17. package/lib/typescript/src/RNGoogleMapsPlusView.nitro.d.ts +8 -3
  18. package/lib/typescript/src/RNGoogleMapsPlusView.nitro.d.ts.map +1 -1
  19. package/lib/typescript/src/types.d.ts +25 -1
  20. package/lib/typescript/src/types.d.ts.map +1 -1
  21. package/nitrogen/generated/android/RNGoogleMapsPlusOnLoad.cpp +4 -0
  22. package/nitrogen/generated/android/c++/JFunc_void_RNIndoorBuilding.hpp +81 -0
  23. package/nitrogen/generated/android/c++/JFunc_void_RNIndoorLevel.hpp +78 -0
  24. package/nitrogen/generated/android/c++/JHybridRNGoogleMapsPlusViewSpec.cpp +99 -7
  25. package/nitrogen/generated/android/c++/JHybridRNGoogleMapsPlusViewSpec.hpp +9 -2
  26. package/nitrogen/generated/android/c++/JRNIndoorBuilding.hpp +86 -0
  27. package/nitrogen/generated/android/c++/JRNIndoorLevel.hpp +66 -0
  28. package/nitrogen/generated/android/c++/JRNLatLngBounds.hpp +58 -0
  29. package/nitrogen/generated/android/c++/JRNSize.hpp +57 -0
  30. package/nitrogen/generated/android/c++/JRNSnapshotFormat.hpp +62 -0
  31. package/nitrogen/generated/android/c++/JRNSnapshotOptions.hpp +71 -0
  32. package/nitrogen/generated/android/c++/JRNSnapshotResultType.hpp +59 -0
  33. package/nitrogen/generated/android/c++/views/JHybridRNGoogleMapsPlusViewStateUpdater.cpp +8 -0
  34. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/Func_void_RNIndoorBuilding.kt +81 -0
  35. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/Func_void_RNIndoorLevel.kt +81 -0
  36. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/HybridRNGoogleMapsPlusViewSpec.kt +42 -2
  37. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNIndoorBuilding.kt +38 -0
  38. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNIndoorLevel.kt +38 -0
  39. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNLatLngBounds.kt +32 -0
  40. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNSize.kt +32 -0
  41. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNSnapshotFormat.kt +22 -0
  42. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNSnapshotOptions.kt +38 -0
  43. package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNSnapshotResultType.kt +21 -0
  44. package/nitrogen/generated/ios/RNGoogleMapsPlus-Swift-Cxx-Bridge.cpp +16 -0
  45. package/nitrogen/generated/ios/RNGoogleMapsPlus-Swift-Cxx-Bridge.hpp +148 -0
  46. package/nitrogen/generated/ios/RNGoogleMapsPlus-Swift-Cxx-Umbrella.hpp +21 -0
  47. package/nitrogen/generated/ios/c++/HybridRNGoogleMapsPlusViewSpecSwift.hpp +60 -5
  48. package/nitrogen/generated/ios/c++/views/HybridRNGoogleMapsPlusViewComponent.mm +10 -0
  49. package/nitrogen/generated/ios/swift/Func_void_RNIndoorBuilding.swift +47 -0
  50. package/nitrogen/generated/ios/swift/Func_void_RNIndoorLevel.swift +47 -0
  51. package/nitrogen/generated/ios/swift/HybridRNGoogleMapsPlusViewSpec.swift +7 -2
  52. package/nitrogen/generated/ios/swift/HybridRNGoogleMapsPlusViewSpec_cxx.swift +122 -4
  53. package/nitrogen/generated/ios/swift/RNIndoorBuilding.swift +116 -0
  54. package/nitrogen/generated/ios/swift/RNIndoorLevel.swift +118 -0
  55. package/nitrogen/generated/ios/swift/RNLatLngBounds.swift +46 -0
  56. package/nitrogen/generated/ios/swift/RNSize.swift +46 -0
  57. package/nitrogen/generated/ios/swift/RNSnapshotFormat.swift +44 -0
  58. package/nitrogen/generated/ios/swift/RNSnapshotOptions.swift +87 -0
  59. package/nitrogen/generated/ios/swift/RNSnapshotResultType.swift +40 -0
  60. package/nitrogen/generated/shared/c++/HybridRNGoogleMapsPlusViewSpec.cpp +7 -0
  61. package/nitrogen/generated/shared/c++/HybridRNGoogleMapsPlusViewSpec.hpp +22 -3
  62. package/nitrogen/generated/shared/c++/RNIndoorBuilding.hpp +82 -0
  63. package/nitrogen/generated/shared/c++/RNIndoorLevel.hpp +80 -0
  64. package/nitrogen/generated/shared/c++/RNLatLngBounds.hpp +72 -0
  65. package/nitrogen/generated/shared/c++/RNSize.hpp +71 -0
  66. package/nitrogen/generated/shared/c++/RNSnapshotFormat.hpp +80 -0
  67. package/nitrogen/generated/shared/c++/RNSnapshotOptions.hpp +87 -0
  68. package/nitrogen/generated/shared/c++/RNSnapshotResultType.hpp +76 -0
  69. package/nitrogen/generated/shared/c++/views/HybridRNGoogleMapsPlusViewComponent.cpp +24 -0
  70. package/nitrogen/generated/shared/c++/views/HybridRNGoogleMapsPlusViewComponent.hpp +4 -0
  71. package/nitrogen/generated/shared/json/RNGoogleMapsPlusViewConfig.json +2 -0
  72. package/package.json +1 -1
  73. package/src/RNGoogleMapsPlusView.nitro.ts +19 -2
  74. package/src/types.ts +38 -2
@@ -0,0 +1,116 @@
1
+ ///
2
+ /// 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
+ * Represents an instance of `RNIndoorBuilding`, backed by a C++ struct.
12
+ */
13
+ public typealias RNIndoorBuilding = margelo.nitro.rngooglemapsplus.RNIndoorBuilding
14
+
15
+ public extension RNIndoorBuilding {
16
+ private typealias bridge = margelo.nitro.rngooglemapsplus.bridge.swift
17
+
18
+ /**
19
+ * Create a new instance of `RNIndoorBuilding`.
20
+ */
21
+ init(activeLevelIndex: Double?, defaultLevelIndex: Double?, levels: [RNIndoorLevel], underground: Bool?) {
22
+ self.init({ () -> bridge.std__optional_double_ in
23
+ if let __unwrappedValue = activeLevelIndex {
24
+ return bridge.create_std__optional_double_(__unwrappedValue)
25
+ } else {
26
+ return .init()
27
+ }
28
+ }(), { () -> bridge.std__optional_double_ in
29
+ if let __unwrappedValue = defaultLevelIndex {
30
+ return bridge.create_std__optional_double_(__unwrappedValue)
31
+ } else {
32
+ return .init()
33
+ }
34
+ }(), { () -> bridge.std__vector_RNIndoorLevel_ in
35
+ var __vector = bridge.create_std__vector_RNIndoorLevel_(levels.count)
36
+ for __item in levels {
37
+ __vector.push_back(__item)
38
+ }
39
+ return __vector
40
+ }(), { () -> bridge.std__optional_bool_ in
41
+ if let __unwrappedValue = underground {
42
+ return bridge.create_std__optional_bool_(__unwrappedValue)
43
+ } else {
44
+ return .init()
45
+ }
46
+ }())
47
+ }
48
+
49
+ var activeLevelIndex: Double? {
50
+ @inline(__always)
51
+ get {
52
+ return self.__activeLevelIndex.value
53
+ }
54
+ @inline(__always)
55
+ set {
56
+ self.__activeLevelIndex = { () -> bridge.std__optional_double_ in
57
+ if let __unwrappedValue = newValue {
58
+ return bridge.create_std__optional_double_(__unwrappedValue)
59
+ } else {
60
+ return .init()
61
+ }
62
+ }()
63
+ }
64
+ }
65
+
66
+ var defaultLevelIndex: Double? {
67
+ @inline(__always)
68
+ get {
69
+ return self.__defaultLevelIndex.value
70
+ }
71
+ @inline(__always)
72
+ set {
73
+ self.__defaultLevelIndex = { () -> bridge.std__optional_double_ in
74
+ if let __unwrappedValue = newValue {
75
+ return bridge.create_std__optional_double_(__unwrappedValue)
76
+ } else {
77
+ return .init()
78
+ }
79
+ }()
80
+ }
81
+ }
82
+
83
+ var levels: [RNIndoorLevel] {
84
+ @inline(__always)
85
+ get {
86
+ return self.__levels.map({ __item in __item })
87
+ }
88
+ @inline(__always)
89
+ set {
90
+ self.__levels = { () -> bridge.std__vector_RNIndoorLevel_ in
91
+ var __vector = bridge.create_std__vector_RNIndoorLevel_(newValue.count)
92
+ for __item in newValue {
93
+ __vector.push_back(__item)
94
+ }
95
+ return __vector
96
+ }()
97
+ }
98
+ }
99
+
100
+ var underground: Bool? {
101
+ @inline(__always)
102
+ get {
103
+ return self.__underground.value
104
+ }
105
+ @inline(__always)
106
+ set {
107
+ self.__underground = { () -> bridge.std__optional_bool_ in
108
+ if let __unwrappedValue = newValue {
109
+ return bridge.create_std__optional_bool_(__unwrappedValue)
110
+ } else {
111
+ return .init()
112
+ }
113
+ }()
114
+ }
115
+ }
116
+ }
@@ -0,0 +1,118 @@
1
+ ///
2
+ /// 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
+ * Represents an instance of `RNIndoorLevel`, backed by a C++ struct.
12
+ */
13
+ public typealias RNIndoorLevel = margelo.nitro.rngooglemapsplus.RNIndoorLevel
14
+
15
+ public extension RNIndoorLevel {
16
+ private typealias bridge = margelo.nitro.rngooglemapsplus.bridge.swift
17
+
18
+ /**
19
+ * Create a new instance of `RNIndoorLevel`.
20
+ */
21
+ init(index: Double, name: String?, shortName: String?, active: Bool?) {
22
+ self.init(index, { () -> bridge.std__optional_std__string_ in
23
+ if let __unwrappedValue = name {
24
+ return bridge.create_std__optional_std__string_(std.string(__unwrappedValue))
25
+ } else {
26
+ return .init()
27
+ }
28
+ }(), { () -> bridge.std__optional_std__string_ in
29
+ if let __unwrappedValue = shortName {
30
+ return bridge.create_std__optional_std__string_(std.string(__unwrappedValue))
31
+ } else {
32
+ return .init()
33
+ }
34
+ }(), { () -> bridge.std__optional_bool_ in
35
+ if let __unwrappedValue = active {
36
+ return bridge.create_std__optional_bool_(__unwrappedValue)
37
+ } else {
38
+ return .init()
39
+ }
40
+ }())
41
+ }
42
+
43
+ var index: Double {
44
+ @inline(__always)
45
+ get {
46
+ return self.__index
47
+ }
48
+ @inline(__always)
49
+ set {
50
+ self.__index = newValue
51
+ }
52
+ }
53
+
54
+ var name: String? {
55
+ @inline(__always)
56
+ get {
57
+ return { () -> String? in
58
+ if bridge.has_value_std__optional_std__string_(self.__name) {
59
+ let __unwrapped = bridge.get_std__optional_std__string_(self.__name)
60
+ return String(__unwrapped)
61
+ } else {
62
+ return nil
63
+ }
64
+ }()
65
+ }
66
+ @inline(__always)
67
+ set {
68
+ self.__name = { () -> bridge.std__optional_std__string_ in
69
+ if let __unwrappedValue = newValue {
70
+ return bridge.create_std__optional_std__string_(std.string(__unwrappedValue))
71
+ } else {
72
+ return .init()
73
+ }
74
+ }()
75
+ }
76
+ }
77
+
78
+ var shortName: String? {
79
+ @inline(__always)
80
+ get {
81
+ return { () -> String? in
82
+ if bridge.has_value_std__optional_std__string_(self.__shortName) {
83
+ let __unwrapped = bridge.get_std__optional_std__string_(self.__shortName)
84
+ return String(__unwrapped)
85
+ } else {
86
+ return nil
87
+ }
88
+ }()
89
+ }
90
+ @inline(__always)
91
+ set {
92
+ self.__shortName = { () -> bridge.std__optional_std__string_ in
93
+ if let __unwrappedValue = newValue {
94
+ return bridge.create_std__optional_std__string_(std.string(__unwrappedValue))
95
+ } else {
96
+ return .init()
97
+ }
98
+ }()
99
+ }
100
+ }
101
+
102
+ var active: Bool? {
103
+ @inline(__always)
104
+ get {
105
+ return self.__active.value
106
+ }
107
+ @inline(__always)
108
+ set {
109
+ self.__active = { () -> bridge.std__optional_bool_ in
110
+ if let __unwrappedValue = newValue {
111
+ return bridge.create_std__optional_bool_(__unwrappedValue)
112
+ } else {
113
+ return .init()
114
+ }
115
+ }()
116
+ }
117
+ }
118
+ }
@@ -0,0 +1,46 @@
1
+ ///
2
+ /// RNLatLngBounds.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 `RNLatLngBounds`, backed by a C++ struct.
12
+ */
13
+ public typealias RNLatLngBounds = margelo.nitro.rngooglemapsplus.RNLatLngBounds
14
+
15
+ public extension RNLatLngBounds {
16
+ private typealias bridge = margelo.nitro.rngooglemapsplus.bridge.swift
17
+
18
+ /**
19
+ * Create a new instance of `RNLatLngBounds`.
20
+ */
21
+ init(northEast: RNLatLng, southWest: RNLatLng) {
22
+ self.init(northEast, southWest)
23
+ }
24
+
25
+ var northEast: RNLatLng {
26
+ @inline(__always)
27
+ get {
28
+ return self.__northEast
29
+ }
30
+ @inline(__always)
31
+ set {
32
+ self.__northEast = newValue
33
+ }
34
+ }
35
+
36
+ var southWest: RNLatLng {
37
+ @inline(__always)
38
+ get {
39
+ return self.__southWest
40
+ }
41
+ @inline(__always)
42
+ set {
43
+ self.__southWest = newValue
44
+ }
45
+ }
46
+ }
@@ -0,0 +1,46 @@
1
+ ///
2
+ /// RNSize.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 `RNSize`, backed by a C++ struct.
12
+ */
13
+ public typealias RNSize = margelo.nitro.rngooglemapsplus.RNSize
14
+
15
+ public extension RNSize {
16
+ private typealias bridge = margelo.nitro.rngooglemapsplus.bridge.swift
17
+
18
+ /**
19
+ * Create a new instance of `RNSize`.
20
+ */
21
+ init(width: Double, height: Double) {
22
+ self.init(width, height)
23
+ }
24
+
25
+ var width: Double {
26
+ @inline(__always)
27
+ get {
28
+ return self.__width
29
+ }
30
+ @inline(__always)
31
+ set {
32
+ self.__width = newValue
33
+ }
34
+ }
35
+
36
+ var height: Double {
37
+ @inline(__always)
38
+ get {
39
+ return self.__height
40
+ }
41
+ @inline(__always)
42
+ set {
43
+ self.__height = newValue
44
+ }
45
+ }
46
+ }
@@ -0,0 +1,44 @@
1
+ ///
2
+ /// RNSnapshotFormat.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
+ /**
9
+ * Represents the JS union `RNSnapshotFormat`, backed by a C++ enum.
10
+ */
11
+ public typealias RNSnapshotFormat = margelo.nitro.rngooglemapsplus.RNSnapshotFormat
12
+
13
+ public extension RNSnapshotFormat {
14
+ /**
15
+ * Get a RNSnapshotFormat for the given String value, or
16
+ * return `nil` if the given value was invalid/unknown.
17
+ */
18
+ init?(fromString string: String) {
19
+ switch string {
20
+ case "png":
21
+ self = .png
22
+ case "jpg":
23
+ self = .jpg
24
+ case "jpeg":
25
+ self = .jpeg
26
+ default:
27
+ return nil
28
+ }
29
+ }
30
+
31
+ /**
32
+ * Get the String value this RNSnapshotFormat represents.
33
+ */
34
+ var stringValue: String {
35
+ switch self {
36
+ case .png:
37
+ return "png"
38
+ case .jpg:
39
+ return "jpg"
40
+ case .jpeg:
41
+ return "jpeg"
42
+ }
43
+ }
44
+ }
@@ -0,0 +1,87 @@
1
+ ///
2
+ /// RNSnapshotOptions.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 `RNSnapshotOptions`, backed by a C++ struct.
12
+ */
13
+ public typealias RNSnapshotOptions = margelo.nitro.rngooglemapsplus.RNSnapshotOptions
14
+
15
+ public extension RNSnapshotOptions {
16
+ private typealias bridge = margelo.nitro.rngooglemapsplus.bridge.swift
17
+
18
+ /**
19
+ * Create a new instance of `RNSnapshotOptions`.
20
+ */
21
+ init(size: RNSize?, format: RNSnapshotFormat, quality: Double, resultType: RNSnapshotResultType) {
22
+ self.init({ () -> bridge.std__optional_RNSize_ in
23
+ if let __unwrappedValue = size {
24
+ return bridge.create_std__optional_RNSize_(__unwrappedValue)
25
+ } else {
26
+ return .init()
27
+ }
28
+ }(), format, quality, resultType)
29
+ }
30
+
31
+ var size: RNSize? {
32
+ @inline(__always)
33
+ get {
34
+ return { () -> RNSize? in
35
+ if bridge.has_value_std__optional_RNSize_(self.__size) {
36
+ let __unwrapped = bridge.get_std__optional_RNSize_(self.__size)
37
+ return __unwrapped
38
+ } else {
39
+ return nil
40
+ }
41
+ }()
42
+ }
43
+ @inline(__always)
44
+ set {
45
+ self.__size = { () -> bridge.std__optional_RNSize_ in
46
+ if let __unwrappedValue = newValue {
47
+ return bridge.create_std__optional_RNSize_(__unwrappedValue)
48
+ } else {
49
+ return .init()
50
+ }
51
+ }()
52
+ }
53
+ }
54
+
55
+ var format: RNSnapshotFormat {
56
+ @inline(__always)
57
+ get {
58
+ return self.__format
59
+ }
60
+ @inline(__always)
61
+ set {
62
+ self.__format = newValue
63
+ }
64
+ }
65
+
66
+ var quality: Double {
67
+ @inline(__always)
68
+ get {
69
+ return self.__quality
70
+ }
71
+ @inline(__always)
72
+ set {
73
+ self.__quality = newValue
74
+ }
75
+ }
76
+
77
+ var resultType: RNSnapshotResultType {
78
+ @inline(__always)
79
+ get {
80
+ return self.__resultType
81
+ }
82
+ @inline(__always)
83
+ set {
84
+ self.__resultType = newValue
85
+ }
86
+ }
87
+ }
@@ -0,0 +1,40 @@
1
+ ///
2
+ /// RNSnapshotResultType.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
+ /**
9
+ * Represents the JS union `RNSnapshotResultType`, backed by a C++ enum.
10
+ */
11
+ public typealias RNSnapshotResultType = margelo.nitro.rngooglemapsplus.RNSnapshotResultType
12
+
13
+ public extension RNSnapshotResultType {
14
+ /**
15
+ * Get a RNSnapshotResultType for the given String value, or
16
+ * return `nil` if the given value was invalid/unknown.
17
+ */
18
+ init?(fromString string: String) {
19
+ switch string {
20
+ case "base64":
21
+ self = .base64
22
+ case "file":
23
+ self = .file
24
+ default:
25
+ return nil
26
+ }
27
+ }
28
+
29
+ /**
30
+ * Get the String value this RNSnapshotResultType represents.
31
+ */
32
+ var stringValue: String {
33
+ switch self {
34
+ case .base64:
35
+ return "base64"
36
+ case .file:
37
+ return "file"
38
+ }
39
+ }
40
+ }
@@ -74,6 +74,10 @@ namespace margelo::nitro::rngooglemapsplus {
74
74
  prototype.registerHybridSetter("onMarkerDrag", &HybridRNGoogleMapsPlusViewSpec::setOnMarkerDrag);
75
75
  prototype.registerHybridGetter("onMarkerDragEnd", &HybridRNGoogleMapsPlusViewSpec::getOnMarkerDragEnd);
76
76
  prototype.registerHybridSetter("onMarkerDragEnd", &HybridRNGoogleMapsPlusViewSpec::setOnMarkerDragEnd);
77
+ prototype.registerHybridGetter("onIndoorBuildingFocused", &HybridRNGoogleMapsPlusViewSpec::getOnIndoorBuildingFocused);
78
+ prototype.registerHybridSetter("onIndoorBuildingFocused", &HybridRNGoogleMapsPlusViewSpec::setOnIndoorBuildingFocused);
79
+ prototype.registerHybridGetter("onIndoorLevelActivated", &HybridRNGoogleMapsPlusViewSpec::getOnIndoorLevelActivated);
80
+ prototype.registerHybridSetter("onIndoorLevelActivated", &HybridRNGoogleMapsPlusViewSpec::setOnIndoorLevelActivated);
77
81
  prototype.registerHybridGetter("onCameraChangeStart", &HybridRNGoogleMapsPlusViewSpec::getOnCameraChangeStart);
78
82
  prototype.registerHybridSetter("onCameraChangeStart", &HybridRNGoogleMapsPlusViewSpec::setOnCameraChangeStart);
79
83
  prototype.registerHybridGetter("onCameraChange", &HybridRNGoogleMapsPlusViewSpec::getOnCameraChange);
@@ -82,6 +86,9 @@ namespace margelo::nitro::rngooglemapsplus {
82
86
  prototype.registerHybridSetter("onCameraChangeComplete", &HybridRNGoogleMapsPlusViewSpec::setOnCameraChangeComplete);
83
87
  prototype.registerHybridMethod("setCamera", &HybridRNGoogleMapsPlusViewSpec::setCamera);
84
88
  prototype.registerHybridMethod("setCameraToCoordinates", &HybridRNGoogleMapsPlusViewSpec::setCameraToCoordinates);
89
+ prototype.registerHybridMethod("setCameraBounds", &HybridRNGoogleMapsPlusViewSpec::setCameraBounds);
90
+ prototype.registerHybridMethod("animateToBounds", &HybridRNGoogleMapsPlusViewSpec::animateToBounds);
91
+ prototype.registerHybridMethod("snapshot", &HybridRNGoogleMapsPlusViewSpec::snapshot);
85
92
  prototype.registerHybridMethod("showLocationDialog", &HybridRNGoogleMapsPlusViewSpec::showLocationDialog);
86
93
  prototype.registerHybridMethod("openLocationSettings", &HybridRNGoogleMapsPlusViewSpec::openLocationSettings);
87
94
  prototype.registerHybridMethod("requestLocationPermission", &HybridRNGoogleMapsPlusViewSpec::requestLocationPermission);
@@ -47,10 +47,18 @@ namespace margelo::nitro::rngooglemapsplus { struct RNLocation; }
47
47
  namespace margelo::nitro::rngooglemapsplus { enum class RNLocationErrorCode; }
48
48
  // Forward declaration of `RNLatLng` to properly resolve imports.
49
49
  namespace margelo::nitro::rngooglemapsplus { struct RNLatLng; }
50
+ // Forward declaration of `RNIndoorBuilding` to properly resolve imports.
51
+ namespace margelo::nitro::rngooglemapsplus { struct RNIndoorBuilding; }
52
+ // Forward declaration of `RNIndoorLevel` to properly resolve imports.
53
+ namespace margelo::nitro::rngooglemapsplus { struct RNIndoorLevel; }
50
54
  // Forward declaration of `RNRegion` to properly resolve imports.
51
55
  namespace margelo::nitro::rngooglemapsplus { struct RNRegion; }
52
56
  // Forward declaration of `RNCamera` to properly resolve imports.
53
57
  namespace margelo::nitro::rngooglemapsplus { struct RNCamera; }
58
+ // Forward declaration of `RNLatLngBounds` to properly resolve imports.
59
+ namespace margelo::nitro::rngooglemapsplus { struct RNLatLngBounds; }
60
+ // Forward declaration of `RNSnapshotOptions` to properly resolve imports.
61
+ namespace margelo::nitro::rngooglemapsplus { struct RNSnapshotOptions; }
54
62
  // Forward declaration of `RNLocationPermissionResult` to properly resolve imports.
55
63
  namespace margelo::nitro::rngooglemapsplus { struct RNLocationPermissionResult; }
56
64
 
@@ -75,10 +83,14 @@ namespace margelo::nitro::rngooglemapsplus { struct RNLocationPermissionResult;
75
83
  #include "RNLocation.hpp"
76
84
  #include "RNLocationErrorCode.hpp"
77
85
  #include "RNLatLng.hpp"
86
+ #include "RNIndoorBuilding.hpp"
87
+ #include "RNIndoorLevel.hpp"
78
88
  #include "RNRegion.hpp"
79
89
  #include "RNCamera.hpp"
80
- #include "RNLocationPermissionResult.hpp"
90
+ #include "RNLatLngBounds.hpp"
81
91
  #include <NitroModules/Promise.hpp>
92
+ #include "RNSnapshotOptions.hpp"
93
+ #include "RNLocationPermissionResult.hpp"
82
94
 
83
95
  namespace margelo::nitro::rngooglemapsplus {
84
96
 
@@ -167,6 +179,10 @@ namespace margelo::nitro::rngooglemapsplus {
167
179
  virtual void setOnMarkerDrag(const std::optional<std::function<void(const std::optional<std::string>& /* id */, const RNLatLng& /* location */)>>& onMarkerDrag) = 0;
168
180
  virtual std::optional<std::function<void(const std::optional<std::string>& /* id */, const RNLatLng& /* location */)>> getOnMarkerDragEnd() = 0;
169
181
  virtual void setOnMarkerDragEnd(const std::optional<std::function<void(const std::optional<std::string>& /* id */, const RNLatLng& /* location */)>>& onMarkerDragEnd) = 0;
182
+ virtual std::optional<std::function<void(const RNIndoorBuilding& /* indoorBuilding */)>> getOnIndoorBuildingFocused() = 0;
183
+ virtual void setOnIndoorBuildingFocused(const std::optional<std::function<void(const RNIndoorBuilding& /* indoorBuilding */)>>& onIndoorBuildingFocused) = 0;
184
+ virtual std::optional<std::function<void(const RNIndoorLevel& /* indoorLevel */)>> getOnIndoorLevelActivated() = 0;
185
+ virtual void setOnIndoorLevelActivated(const std::optional<std::function<void(const RNIndoorLevel& /* indoorLevel */)>>& onIndoorLevelActivated) = 0;
170
186
  virtual std::optional<std::function<void(const RNRegion& /* region */, const RNCamera& /* camera */, bool /* isGesture */)>> getOnCameraChangeStart() = 0;
171
187
  virtual void setOnCameraChangeStart(const std::optional<std::function<void(const RNRegion& /* region */, const RNCamera& /* camera */, bool /* isGesture */)>>& onCameraChangeStart) = 0;
172
188
  virtual std::optional<std::function<void(const RNRegion& /* region */, const RNCamera& /* camera */, bool /* isGesture */)>> getOnCameraChange() = 0;
@@ -176,8 +192,11 @@ namespace margelo::nitro::rngooglemapsplus {
176
192
 
177
193
  public:
178
194
  // Methods
179
- virtual void setCamera(const RNCamera& camera, std::optional<bool> animated, std::optional<double> durationMS) = 0;
180
- virtual void setCameraToCoordinates(const std::vector<RNLatLng>& coordinates, const std::optional<RNMapPadding>& padding, std::optional<bool> animated, std::optional<double> durationMS) = 0;
195
+ virtual void setCamera(const RNCamera& camera, std::optional<bool> animated, std::optional<double> durationMs) = 0;
196
+ virtual void setCameraToCoordinates(const std::vector<RNLatLng>& coordinates, const std::optional<RNMapPadding>& padding, std::optional<bool> animated, std::optional<double> durationMs) = 0;
197
+ virtual void setCameraBounds(const std::optional<RNLatLngBounds>& bounds) = 0;
198
+ virtual void animateToBounds(const RNLatLngBounds& bounds, std::optional<double> padding, std::optional<double> durationMs, std::optional<bool> lockBounds) = 0;
199
+ virtual std::shared_ptr<Promise<std::optional<std::string>>> snapshot(const RNSnapshotOptions& options) = 0;
181
200
  virtual void showLocationDialog() = 0;
182
201
  virtual void openLocationSettings() = 0;
183
202
  virtual std::shared_ptr<Promise<RNLocationPermissionResult>> requestLocationPermission() = 0;
@@ -0,0 +1,82 @@
1
+ ///
2
+ /// RNIndoorBuilding.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
+
21
+ // Forward declaration of `RNIndoorLevel` to properly resolve imports.
22
+ namespace margelo::nitro::rngooglemapsplus { struct RNIndoorLevel; }
23
+
24
+ #include <optional>
25
+ #include "RNIndoorLevel.hpp"
26
+ #include <vector>
27
+
28
+ namespace margelo::nitro::rngooglemapsplus {
29
+
30
+ /**
31
+ * A struct which can be represented as a JavaScript object (RNIndoorBuilding).
32
+ */
33
+ struct RNIndoorBuilding {
34
+ public:
35
+ std::optional<double> activeLevelIndex SWIFT_PRIVATE;
36
+ std::optional<double> defaultLevelIndex SWIFT_PRIVATE;
37
+ std::vector<RNIndoorLevel> levels SWIFT_PRIVATE;
38
+ std::optional<bool> underground SWIFT_PRIVATE;
39
+
40
+ public:
41
+ RNIndoorBuilding() = default;
42
+ explicit RNIndoorBuilding(std::optional<double> activeLevelIndex, std::optional<double> defaultLevelIndex, std::vector<RNIndoorLevel> levels, std::optional<bool> underground): activeLevelIndex(activeLevelIndex), defaultLevelIndex(defaultLevelIndex), levels(levels), underground(underground) {}
43
+ };
44
+
45
+ } // namespace margelo::nitro::rngooglemapsplus
46
+
47
+ namespace margelo::nitro {
48
+
49
+ // C++ RNIndoorBuilding <> JS RNIndoorBuilding (object)
50
+ template <>
51
+ struct JSIConverter<margelo::nitro::rngooglemapsplus::RNIndoorBuilding> final {
52
+ static inline margelo::nitro::rngooglemapsplus::RNIndoorBuilding fromJSI(jsi::Runtime& runtime, const jsi::Value& arg) {
53
+ jsi::Object obj = arg.asObject(runtime);
54
+ return margelo::nitro::rngooglemapsplus::RNIndoorBuilding(
55
+ JSIConverter<std::optional<double>>::fromJSI(runtime, obj.getProperty(runtime, "activeLevelIndex")),
56
+ JSIConverter<std::optional<double>>::fromJSI(runtime, obj.getProperty(runtime, "defaultLevelIndex")),
57
+ JSIConverter<std::vector<margelo::nitro::rngooglemapsplus::RNIndoorLevel>>::fromJSI(runtime, obj.getProperty(runtime, "levels")),
58
+ JSIConverter<std::optional<bool>>::fromJSI(runtime, obj.getProperty(runtime, "underground"))
59
+ );
60
+ }
61
+ static inline jsi::Value toJSI(jsi::Runtime& runtime, const margelo::nitro::rngooglemapsplus::RNIndoorBuilding& arg) {
62
+ jsi::Object obj(runtime);
63
+ obj.setProperty(runtime, "activeLevelIndex", JSIConverter<std::optional<double>>::toJSI(runtime, arg.activeLevelIndex));
64
+ obj.setProperty(runtime, "defaultLevelIndex", JSIConverter<std::optional<double>>::toJSI(runtime, arg.defaultLevelIndex));
65
+ obj.setProperty(runtime, "levels", JSIConverter<std::vector<margelo::nitro::rngooglemapsplus::RNIndoorLevel>>::toJSI(runtime, arg.levels));
66
+ obj.setProperty(runtime, "underground", JSIConverter<std::optional<bool>>::toJSI(runtime, arg.underground));
67
+ return obj;
68
+ }
69
+ static inline bool canConvert(jsi::Runtime& runtime, const jsi::Value& value) {
70
+ if (!value.isObject()) {
71
+ return false;
72
+ }
73
+ jsi::Object obj = value.getObject(runtime);
74
+ if (!JSIConverter<std::optional<double>>::canConvert(runtime, obj.getProperty(runtime, "activeLevelIndex"))) return false;
75
+ if (!JSIConverter<std::optional<double>>::canConvert(runtime, obj.getProperty(runtime, "defaultLevelIndex"))) return false;
76
+ if (!JSIConverter<std::vector<margelo::nitro::rngooglemapsplus::RNIndoorLevel>>::canConvert(runtime, obj.getProperty(runtime, "levels"))) return false;
77
+ if (!JSIConverter<std::optional<bool>>::canConvert(runtime, obj.getProperty(runtime, "underground"))) return false;
78
+ return true;
79
+ }
80
+ };
81
+
82
+ } // namespace margelo::nitro