react-native-google-maps-plus 1.1.0-dev.1 → 1.1.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.
- package/RNGoogleMapsPlus.podspec +2 -0
- package/android/src/main/java/com/rngooglemapsplus/GoogleMapsViewImpl.kt +38 -103
- package/android/src/main/java/com/rngooglemapsplus/LocationHandler.kt +3 -3
- package/android/src/main/java/com/rngooglemapsplus/MapCircleBuilder.kt +16 -2
- package/android/src/main/java/com/rngooglemapsplus/MapMarkerBuilder.kt +48 -27
- package/android/src/main/java/com/rngooglemapsplus/MapPolygonBuilder.kt +18 -1
- package/android/src/main/java/com/rngooglemapsplus/MapPolylineBuilder.kt.kt +26 -9
- package/android/src/main/java/com/rngooglemapsplus/RNGoogleMapsPlusView.kt +48 -72
- package/android/src/main/java/com/rngooglemapsplus/extensions/RNMarkerExtension.kt +17 -0
- package/ios/GoogleMapViewImpl.swift +94 -212
- package/ios/LocationHandler.swift +2 -10
- package/ios/MapCircleBuilder.swift +23 -8
- package/ios/MapHelper.swift +6 -4
- package/ios/MapMarkerBuilder.swift +55 -48
- package/ios/MapPolygonBuilder.swift +25 -7
- package/ios/MapPolylineBuilder.swift +27 -11
- package/ios/RNGoogleMapsPlusView.swift +9 -15
- package/ios/extensions/RNCircle+Extension.swift +0 -13
- package/ios/extensions/RNMarker+Extension.swift +6 -5
- package/ios/extensions/RNPolygon+Extension.swift.swift +2 -19
- package/ios/extensions/RNPolyline+Extension.swift.swift +1 -26
- package/lib/module/types.js.map +1 -1
- package/lib/typescript/src/RNGoogleMapsPlusView.nitro.d.ts +2 -3
- package/lib/typescript/src/RNGoogleMapsPlusView.nitro.d.ts.map +1 -1
- package/lib/typescript/src/types.d.ts +9 -2
- package/lib/typescript/src/types.d.ts.map +1 -1
- package/nitrogen/generated/android/c++/JHybridRNGoogleMapsPlusViewSpec.cpp +14 -15
- package/nitrogen/generated/android/c++/JHybridRNGoogleMapsPlusViewSpec.hpp +2 -4
- package/nitrogen/generated/android/c++/JRNCircle.hpp +4 -4
- package/nitrogen/generated/android/c++/JRNMapZoomConfig.hpp +57 -0
- package/nitrogen/generated/android/c++/JRNMarker.hpp +6 -12
- package/nitrogen/generated/android/c++/JRNMarkerSvg.hpp +61 -0
- package/nitrogen/generated/android/c++/views/JHybridRNGoogleMapsPlusViewStateUpdater.cpp +2 -6
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/HybridRNGoogleMapsPlusViewSpec.kt +1 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNCircle.kt +1 -1
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNMapZoomConfig.kt +32 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNMarker.kt +1 -7
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/RNMarkerSvg.kt +35 -0
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/views/HybridRNGoogleMapsPlusViewManager.kt +1 -1
- package/nitrogen/generated/ios/RNGoogleMapsPlus-Swift-Cxx-Bridge.cpp +13 -13
- package/nitrogen/generated/ios/RNGoogleMapsPlus-Swift-Cxx-Bridge.hpp +75 -33
- package/nitrogen/generated/ios/RNGoogleMapsPlus-Swift-Cxx-Umbrella.hpp +6 -0
- package/nitrogen/generated/ios/c++/HybridRNGoogleMapsPlusViewSpecSwift.hpp +11 -12
- package/nitrogen/generated/ios/c++/views/HybridRNGoogleMapsPlusViewComponent.mm +4 -9
- package/nitrogen/generated/ios/swift/HybridRNGoogleMapsPlusViewSpec.swift +1 -2
- package/nitrogen/generated/ios/swift/HybridRNGoogleMapsPlusViewSpec_cxx.swift +46 -94
- package/nitrogen/generated/ios/swift/RNCamera.swift +1 -8
- package/nitrogen/generated/ios/swift/RNCircle.swift +5 -17
- package/nitrogen/generated/ios/swift/RNInitialProps.swift +1 -8
- package/nitrogen/generated/ios/swift/RNLocationConfig.swift +2 -16
- package/nitrogen/generated/ios/swift/RNMapZoomConfig.swift +70 -0
- package/nitrogen/generated/ios/swift/RNMarker.swift +18 -35
- package/nitrogen/generated/ios/swift/RNMarkerSvg.swift +57 -0
- package/nitrogen/generated/ios/swift/RNPolygon.swift +11 -15
- package/nitrogen/generated/ios/swift/RNPolyline.swift +11 -15
- package/nitrogen/generated/shared/c++/HybridRNGoogleMapsPlusViewSpec.cpp +2 -4
- package/nitrogen/generated/shared/c++/HybridRNGoogleMapsPlusViewSpec.hpp +5 -4
- package/nitrogen/generated/shared/c++/RNCircle.hpp +5 -5
- package/nitrogen/generated/shared/c++/RNMapZoomConfig.hpp +71 -0
- package/nitrogen/generated/shared/c++/RNMarker.hpp +8 -13
- package/nitrogen/generated/shared/c++/RNMarkerSvg.hpp +75 -0
- package/nitrogen/generated/shared/c++/views/HybridRNGoogleMapsPlusViewComponent.cpp +7 -19
- package/nitrogen/generated/shared/c++/views/HybridRNGoogleMapsPlusViewComponent.hpp +2 -2
- package/nitrogen/generated/shared/json/RNGoogleMapsPlusViewConfig.json +1 -2
- package/package.json +13 -13
- package/src/RNGoogleMapsPlusView.nitro.ts +2 -2
- package/src/types.ts +11 -2
|
@@ -11,7 +11,7 @@ final class MapMarkerBuilder {
|
|
|
11
11
|
attributes: .concurrent
|
|
12
12
|
)
|
|
13
13
|
|
|
14
|
-
func build(_ m: RNMarker, icon: UIImage) -> GMSMarker {
|
|
14
|
+
func build(_ m: RNMarker, icon: UIImage?) -> GMSMarker {
|
|
15
15
|
let marker = GMSMarker(
|
|
16
16
|
position: CLLocationCoordinate2D(
|
|
17
17
|
latitude: m.coordinate.latitude,
|
|
@@ -25,58 +25,24 @@ final class MapMarkerBuilder {
|
|
|
25
25
|
x: m.anchor?.x ?? 0.5,
|
|
26
26
|
y: m.anchor?.y ?? 0.5
|
|
27
27
|
)
|
|
28
|
-
if let zi = m.zIndex { marker.zIndex = Int32(zi) }
|
|
29
|
-
DispatchQueue.main.asyncAfter(deadline: .now() + 0.25) { [weak marker] in
|
|
30
|
-
marker?.tracksViewChanges = false
|
|
31
|
-
}
|
|
32
|
-
return marker
|
|
33
|
-
}
|
|
34
28
|
|
|
35
|
-
|
|
36
|
-
func buildIconAsync(
|
|
37
|
-
_ id: String,
|
|
38
|
-
_ m: RNMarker,
|
|
39
|
-
onReady: @escaping (UIImage?) -> Void
|
|
40
|
-
) {
|
|
41
|
-
tasks[id]?.cancel()
|
|
42
|
-
|
|
43
|
-
let key = m.styleHash()
|
|
44
|
-
if let cached = iconCache.object(forKey: key) {
|
|
45
|
-
onReady(cached)
|
|
46
|
-
return
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
let task = Task(priority: .userInitiated) { [weak self] in
|
|
50
|
-
guard let self else { return }
|
|
51
|
-
defer {
|
|
52
|
-
self.tasks.removeValue(forKey: id)
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
let img = await self.renderUIImage(m)
|
|
56
|
-
guard let img, !Task.isCancelled else {
|
|
57
|
-
return
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
self.iconCache.setObject(img, forKey: key)
|
|
61
|
-
|
|
62
|
-
await MainActor.run {
|
|
63
|
-
guard !Task.isCancelled else { return }
|
|
64
|
-
onReady(img)
|
|
65
|
-
}
|
|
29
|
+
m.zIndex.map { marker.zIndex = Int32($0) }
|
|
66
30
|
|
|
31
|
+
DispatchQueue.main.asyncAfter(deadline: .now() + 0.25) { [weak marker] in
|
|
32
|
+
marker?.tracksViewChanges = false
|
|
67
33
|
}
|
|
68
34
|
|
|
69
|
-
|
|
35
|
+
return marker
|
|
70
36
|
}
|
|
71
37
|
|
|
72
38
|
@MainActor
|
|
73
|
-
func
|
|
39
|
+
func update(_ prev: RNMarker, _ next: RNMarker, _ m: GMSMarker) {
|
|
74
40
|
m.position = CLLocationCoordinate2D(
|
|
75
41
|
latitude: next.coordinate.latitude,
|
|
76
42
|
longitude: next.coordinate.longitude
|
|
77
43
|
)
|
|
78
44
|
|
|
79
|
-
|
|
45
|
+
m.zIndex = Int32(next.zIndex ?? 0)
|
|
80
46
|
|
|
81
47
|
m.groundAnchor = CGPoint(
|
|
82
48
|
x: next.anchor?.x ?? 0.5,
|
|
@@ -85,9 +51,9 @@ final class MapMarkerBuilder {
|
|
|
85
51
|
|
|
86
52
|
if !prev.markerStyleEquals(next) {
|
|
87
53
|
buildIconAsync(next.id, next) { img in
|
|
88
|
-
guard let img else { return }
|
|
89
54
|
m.tracksViewChanges = true
|
|
90
55
|
m.icon = img
|
|
56
|
+
|
|
91
57
|
if prev.anchor?.x != next.anchor?.x || prev.anchor?.y != next.anchor?.y {
|
|
92
58
|
m.groundAnchor = CGPoint(
|
|
93
59
|
x: next.anchor?.x ?? 0.5,
|
|
@@ -102,6 +68,43 @@ final class MapMarkerBuilder {
|
|
|
102
68
|
}
|
|
103
69
|
}
|
|
104
70
|
|
|
71
|
+
@MainActor
|
|
72
|
+
func buildIconAsync(
|
|
73
|
+
_ id: String,
|
|
74
|
+
_ m: RNMarker,
|
|
75
|
+
onReady: @escaping (UIImage?) -> Void
|
|
76
|
+
) {
|
|
77
|
+
tasks[id]?.cancel()
|
|
78
|
+
|
|
79
|
+
if m.iconSvg == nil {
|
|
80
|
+
onReady(nil)
|
|
81
|
+
return
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
let key = m.styleHash()
|
|
85
|
+
if let cached = iconCache.object(forKey: key) {
|
|
86
|
+
onReady(cached)
|
|
87
|
+
return
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
let task = Task(priority: .userInitiated) { [weak self] in
|
|
91
|
+
guard let self else { return }
|
|
92
|
+
defer { self.tasks.removeValue(forKey: id) }
|
|
93
|
+
|
|
94
|
+
let img = await self.renderUIImage(m)
|
|
95
|
+
guard let img, !Task.isCancelled else { return }
|
|
96
|
+
|
|
97
|
+
self.iconCache.setObject(img, forKey: key)
|
|
98
|
+
|
|
99
|
+
await MainActor.run {
|
|
100
|
+
guard !Task.isCancelled else { return }
|
|
101
|
+
onReady(img)
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
tasks[id] = task
|
|
106
|
+
}
|
|
107
|
+
|
|
105
108
|
func cancelIconTask(_ id: String) {
|
|
106
109
|
tasks[id]?.cancel()
|
|
107
110
|
tasks.removeValue(forKey: id)
|
|
@@ -117,21 +120,26 @@ final class MapMarkerBuilder {
|
|
|
117
120
|
}
|
|
118
121
|
|
|
119
122
|
private func renderUIImage(_ m: RNMarker) async -> UIImage? {
|
|
120
|
-
|
|
123
|
+
guard let iconSvg = m.iconSvg else {
|
|
124
|
+
return nil
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
return await withTaskCancellationHandler(
|
|
121
128
|
operation: {
|
|
122
|
-
await withCheckedContinuation {
|
|
129
|
+
await withCheckedContinuation {
|
|
130
|
+
(cont: CheckedContinuation<UIImage?, Never>) in
|
|
123
131
|
queue.async {
|
|
124
132
|
if Task.isCancelled {
|
|
125
133
|
cont.resume(returning: nil)
|
|
126
134
|
return
|
|
127
135
|
}
|
|
128
136
|
|
|
129
|
-
let targetW = max(1, Int(CGFloat(
|
|
130
|
-
let targetH = max(1, Int(CGFloat(
|
|
137
|
+
let targetW = max(1, Int(CGFloat(iconSvg.width)))
|
|
138
|
+
let targetH = max(1, Int(CGFloat(iconSvg.height)))
|
|
131
139
|
let size = CGSize(width: targetW, height: targetH)
|
|
132
140
|
|
|
133
141
|
guard
|
|
134
|
-
let data =
|
|
142
|
+
let data = iconSvg.svgString.data(using: .utf8),
|
|
135
143
|
let svgImg = SVGKImage(data: data)
|
|
136
144
|
else {
|
|
137
145
|
cont.resume(returning: nil)
|
|
@@ -172,5 +180,4 @@ final class MapMarkerBuilder {
|
|
|
172
180
|
onCancel: {}
|
|
173
181
|
)
|
|
174
182
|
}
|
|
175
|
-
|
|
176
183
|
}
|
|
@@ -1,20 +1,38 @@
|
|
|
1
1
|
import GoogleMaps
|
|
2
2
|
|
|
3
3
|
final class MapPolygonBuilder {
|
|
4
|
-
|
|
5
|
-
func buildPolygon(_ p: RNPolygon) -> GMSPolygon {
|
|
4
|
+
func build(_ p: RNPolygon) -> GMSPolygon {
|
|
6
5
|
let path = GMSMutablePath()
|
|
7
6
|
p.coordinates.forEach {
|
|
8
7
|
path.add(
|
|
9
8
|
CLLocationCoordinate2D(latitude: $0.latitude, longitude: $0.longitude)
|
|
10
9
|
)
|
|
11
10
|
}
|
|
11
|
+
|
|
12
12
|
let pg = GMSPolygon(path: path)
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
13
|
+
|
|
14
|
+
p.fillColor.map { pg.fillColor = $0.toUIColor() }
|
|
15
|
+
p.strokeColor.map { pg.strokeColor = $0.toUIColor() }
|
|
16
|
+
p.strokeWidth.map { pg.strokeWidth = CGFloat($0) }
|
|
17
|
+
p.pressable.map { pg.isTappable = $0 }
|
|
18
|
+
p.zIndex.map { pg.zIndex = Int32($0) }
|
|
19
|
+
|
|
18
20
|
return pg
|
|
19
21
|
}
|
|
22
|
+
|
|
23
|
+
func update(_ next: RNPolygon, _ pg: GMSPolygon) {
|
|
24
|
+
let path = GMSMutablePath()
|
|
25
|
+
next.coordinates.forEach {
|
|
26
|
+
path.add(
|
|
27
|
+
CLLocationCoordinate2D(latitude: $0.latitude, longitude: $0.longitude)
|
|
28
|
+
)
|
|
29
|
+
}
|
|
30
|
+
pg.path = path
|
|
31
|
+
|
|
32
|
+
pg.fillColor = next.fillColor?.toUIColor() ?? .clear
|
|
33
|
+
pg.strokeColor = next.strokeColor?.toUIColor() ?? .black
|
|
34
|
+
pg.strokeWidth = CGFloat(next.strokeWidth ?? 1.0)
|
|
35
|
+
pg.isTappable = next.pressable ?? false
|
|
36
|
+
pg.zIndex = Int32(next.zIndex ?? 0)
|
|
37
|
+
}
|
|
20
38
|
}
|
|
@@ -1,24 +1,40 @@
|
|
|
1
1
|
import GoogleMaps
|
|
2
2
|
|
|
3
3
|
final class MapPolylineBuilder {
|
|
4
|
-
func
|
|
4
|
+
func build(_ p: RNPolyline) -> GMSPolyline {
|
|
5
5
|
let path = GMSMutablePath()
|
|
6
6
|
p.coordinates.forEach {
|
|
7
7
|
path.add(
|
|
8
8
|
CLLocationCoordinate2D(latitude: $0.latitude, longitude: $0.longitude)
|
|
9
9
|
)
|
|
10
10
|
}
|
|
11
|
+
|
|
11
12
|
let pl = GMSPolyline(path: path)
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
if let pr = p.pressable { pl.isTappable = pr }
|
|
21
|
-
if let zi = p.zIndex { pl.zIndex = Int32(zi) }
|
|
13
|
+
|
|
14
|
+
p.width.map { pl.strokeWidth = CGFloat($0) }
|
|
15
|
+
p.color.map { pl.strokeColor = $0.toUIColor() }
|
|
16
|
+
p.lineCap.map { _ in /* not supported */ }
|
|
17
|
+
p.lineJoin.map { _ in /* not supported */ }
|
|
18
|
+
p.pressable.map { pl.isTappable = $0 }
|
|
19
|
+
p.zIndex.map { pl.zIndex = Int32($0) }
|
|
20
|
+
|
|
22
21
|
return pl
|
|
23
22
|
}
|
|
23
|
+
|
|
24
|
+
func update(_ next: RNPolyline, _ pl: GMSPolyline) {
|
|
25
|
+
let path = GMSMutablePath()
|
|
26
|
+
next.coordinates.forEach {
|
|
27
|
+
path.add(
|
|
28
|
+
CLLocationCoordinate2D(latitude: $0.latitude, longitude: $0.longitude)
|
|
29
|
+
)
|
|
30
|
+
}
|
|
31
|
+
pl.path = path
|
|
32
|
+
|
|
33
|
+
/* lineCap not supported */
|
|
34
|
+
/* lineJoin not supported */
|
|
35
|
+
pl.strokeWidth = CGFloat(next.width ?? 1.0)
|
|
36
|
+
pl.strokeColor = next.color?.toUIColor() ?? .black
|
|
37
|
+
pl.isTappable = next.pressable ?? false
|
|
38
|
+
pl.zIndex = Int32(next.zIndex ?? 0)
|
|
39
|
+
}
|
|
24
40
|
}
|
|
@@ -88,13 +88,8 @@ final class RNGoogleMapsPlusView: HybridRNGoogleMapsPlusViewSpec {
|
|
|
88
88
|
}
|
|
89
89
|
|
|
90
90
|
@MainActor
|
|
91
|
-
var
|
|
92
|
-
didSet { impl.
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
@MainActor
|
|
96
|
-
var maxZoomLevel: Double? {
|
|
97
|
-
didSet { impl.maxZoomLevel = maxZoomLevel }
|
|
91
|
+
var mapZoomConfig: RNMapZoomConfig? {
|
|
92
|
+
didSet { impl.mapZoomConfig = mapZoomConfig }
|
|
98
93
|
}
|
|
99
94
|
|
|
100
95
|
@MainActor
|
|
@@ -135,12 +130,11 @@ final class RNGoogleMapsPlusView: HybridRNGoogleMapsPlusViewSpec {
|
|
|
135
130
|
if let prev = prevById[id] {
|
|
136
131
|
if !prev.markerEquals(next) {
|
|
137
132
|
impl.updateMarker(id: id) { m in
|
|
138
|
-
self.markerBuilder.
|
|
133
|
+
self.markerBuilder.update(prev, next, m)
|
|
139
134
|
}
|
|
140
135
|
}
|
|
141
136
|
} else {
|
|
142
137
|
markerBuilder.buildIconAsync(next.id, next) { icon in
|
|
143
|
-
guard let icon else { return }
|
|
144
138
|
let marker = self.markerBuilder.build(next, icon: icon)
|
|
145
139
|
self.impl.addMarker(id: id, marker: marker)
|
|
146
140
|
}
|
|
@@ -169,13 +163,13 @@ final class RNGoogleMapsPlusView: HybridRNGoogleMapsPlusViewSpec {
|
|
|
169
163
|
if let prev = prevById[id] {
|
|
170
164
|
if !prev.polylineEquals(next) {
|
|
171
165
|
impl.updatePolyline(id: id) { pl in
|
|
172
|
-
|
|
166
|
+
self.polylineBuilder.update(next, pl)
|
|
173
167
|
}
|
|
174
168
|
}
|
|
175
169
|
} else {
|
|
176
170
|
impl.addPolyline(
|
|
177
171
|
id: id,
|
|
178
|
-
polyline: polylineBuilder.
|
|
172
|
+
polyline: polylineBuilder.build(next)
|
|
179
173
|
)
|
|
180
174
|
}
|
|
181
175
|
}
|
|
@@ -201,11 +195,11 @@ final class RNGoogleMapsPlusView: HybridRNGoogleMapsPlusViewSpec {
|
|
|
201
195
|
if let prev = prevById[id] {
|
|
202
196
|
if !prev.polygonEquals(next) {
|
|
203
197
|
impl.updatePolygon(id: id) { pg in
|
|
204
|
-
|
|
198
|
+
self.polygonBuilder.update(next, pg)
|
|
205
199
|
}
|
|
206
200
|
}
|
|
207
201
|
} else {
|
|
208
|
-
impl.addPolygon(id: id, polygon: polygonBuilder.
|
|
202
|
+
impl.addPolygon(id: id, polygon: polygonBuilder.build(next))
|
|
209
203
|
}
|
|
210
204
|
}
|
|
211
205
|
}
|
|
@@ -230,11 +224,11 @@ final class RNGoogleMapsPlusView: HybridRNGoogleMapsPlusViewSpec {
|
|
|
230
224
|
if let prev = prevById[id] {
|
|
231
225
|
if !prev.circleEquals(next) {
|
|
232
226
|
impl.updateCircle(id: id) { circle in
|
|
233
|
-
|
|
227
|
+
self.circleBuilder.update(next, circle)
|
|
234
228
|
}
|
|
235
229
|
}
|
|
236
230
|
} else {
|
|
237
|
-
impl.addCircle(id: id, circle: circleBuilder.
|
|
231
|
+
impl.addCircle(id: id, circle: circleBuilder.build(next))
|
|
238
232
|
}
|
|
239
233
|
}
|
|
240
234
|
}
|
|
@@ -1,19 +1,6 @@
|
|
|
1
1
|
import GoogleMaps
|
|
2
2
|
|
|
3
3
|
extension RNCircle {
|
|
4
|
-
func updateCircle(_ next: RNCircle, _ c: GMSCircle) {
|
|
5
|
-
c.position = CLLocationCoordinate2D(
|
|
6
|
-
latitude: next.center.latitude,
|
|
7
|
-
longitude: next.center.longitude
|
|
8
|
-
)
|
|
9
|
-
if let r = next.radius { c.radius = r }
|
|
10
|
-
if let fc = next.fillColor?.toUIColor() { c.fillColor = fc }
|
|
11
|
-
if let sc = next.strokeColor?.toUIColor() { c.strokeColor = sc }
|
|
12
|
-
if let sw = next.strokeWidth { c.strokeWidth = CGFloat(sw) }
|
|
13
|
-
if let pr = next.pressable { c.isTappable = pr }
|
|
14
|
-
if let zi = next.zIndex { c.zIndex = Int32(zi) }
|
|
15
|
-
}
|
|
16
|
-
|
|
17
4
|
func circleEquals(_ b: RNCircle) -> Bool {
|
|
18
5
|
zIndex == b.zIndex && pressable == b.pressable
|
|
19
6
|
&& center.latitude == b.center.latitude
|
|
@@ -10,15 +10,16 @@ extension RNMarker {
|
|
|
10
10
|
}
|
|
11
11
|
|
|
12
12
|
func markerStyleEquals(_ b: RNMarker) -> Bool {
|
|
13
|
-
width == b.width && height == b.height
|
|
14
|
-
&& iconSvg == b.iconSvg
|
|
13
|
+
iconSvg?.width == b.iconSvg?.width && iconSvg?.height == b.iconSvg?.height
|
|
14
|
+
&& iconSvg?.svgString == b.iconSvg?.svgString
|
|
15
|
+
|
|
15
16
|
}
|
|
16
17
|
|
|
17
18
|
func styleHash() -> NSString {
|
|
18
19
|
var hasher = Hasher()
|
|
19
|
-
hasher.combine(width)
|
|
20
|
-
hasher.combine(height)
|
|
21
|
-
hasher.combine(iconSvg)
|
|
20
|
+
hasher.combine(iconSvg?.width)
|
|
21
|
+
hasher.combine(iconSvg?.height)
|
|
22
|
+
hasher.combine(iconSvg?.svgString)
|
|
22
23
|
return String(hasher.finalize()) as NSString
|
|
23
24
|
}
|
|
24
25
|
}
|
|
@@ -1,25 +1,6 @@
|
|
|
1
1
|
import GoogleMaps
|
|
2
2
|
|
|
3
3
|
extension RNPolygon {
|
|
4
|
-
func updatePolygon(_ next: RNPolygon, _ pg: GMSPolygon) {
|
|
5
|
-
let path = GMSMutablePath()
|
|
6
|
-
next.coordinates.forEach {
|
|
7
|
-
path.add(
|
|
8
|
-
CLLocationCoordinate2D(
|
|
9
|
-
latitude: $0.latitude,
|
|
10
|
-
longitude: $0.longitude
|
|
11
|
-
)
|
|
12
|
-
)
|
|
13
|
-
}
|
|
14
|
-
pg.path = path
|
|
15
|
-
|
|
16
|
-
if let fc = next.fillColor?.toUIColor() { pg.fillColor = fc }
|
|
17
|
-
if let sc = next.strokeColor?.toUIColor() { pg.strokeColor = sc }
|
|
18
|
-
if let sw = next.strokeWidth { pg.strokeWidth = CGFloat(sw) }
|
|
19
|
-
if let pr = next.pressable { pg.isTappable = pr }
|
|
20
|
-
if let zi = next.zIndex { pg.zIndex = Int32(zi) }
|
|
21
|
-
}
|
|
22
|
-
|
|
23
4
|
func polygonEquals(_ b: RNPolygon) -> Bool {
|
|
24
5
|
guard zIndex == b.zIndex,
|
|
25
6
|
pressable == b.pressable,
|
|
@@ -28,12 +9,14 @@ extension RNPolygon {
|
|
|
28
9
|
strokeColor == b.strokeColor,
|
|
29
10
|
coordinates.count == b.coordinates.count
|
|
30
11
|
else { return false }
|
|
12
|
+
|
|
31
13
|
for i in 0..<coordinates.count {
|
|
32
14
|
if coordinates[i].latitude != b.coordinates[i].latitude
|
|
33
15
|
|| coordinates[i].longitude != b.coordinates[i].longitude {
|
|
34
16
|
return false
|
|
35
17
|
}
|
|
36
18
|
}
|
|
19
|
+
|
|
37
20
|
return true
|
|
38
21
|
}
|
|
39
22
|
}
|
|
@@ -1,32 +1,6 @@
|
|
|
1
1
|
import GoogleMaps
|
|
2
2
|
|
|
3
3
|
extension RNPolyline {
|
|
4
|
-
func updatePolyline(_ next: RNPolyline, _ pl: GMSPolyline) {
|
|
5
|
-
let path = GMSMutablePath()
|
|
6
|
-
next.coordinates.forEach {
|
|
7
|
-
path.add(
|
|
8
|
-
CLLocationCoordinate2D(
|
|
9
|
-
latitude: $0.latitude,
|
|
10
|
-
longitude: $0.longitude
|
|
11
|
-
)
|
|
12
|
-
)
|
|
13
|
-
}
|
|
14
|
-
pl.path = path
|
|
15
|
-
if let w = next.width { pl.strokeWidth = CGFloat(w) }
|
|
16
|
-
if let cap = next.lineCap {
|
|
17
|
-
pl.spans = nil
|
|
18
|
-
/// gms.lineCap = mapLineCap(cap)
|
|
19
|
-
}
|
|
20
|
-
if let join = next.lineJoin {
|
|
21
|
-
/// gms.strokeJoin = mapLineJoin(join)
|
|
22
|
-
}
|
|
23
|
-
if let c = next.color?.toUIColor() {
|
|
24
|
-
pl.strokeColor = c
|
|
25
|
-
}
|
|
26
|
-
if let pr = next.pressable { pl.isTappable = pr }
|
|
27
|
-
if let zi = next.zIndex { pl.zIndex = Int32(zi) }
|
|
28
|
-
}
|
|
29
|
-
|
|
30
4
|
func polylineEquals(_ b: RNPolyline) -> Bool {
|
|
31
5
|
guard zIndex == b.zIndex,
|
|
32
6
|
(width ?? 0) == (b.width ?? 0),
|
|
@@ -35,6 +9,7 @@ extension RNPolyline {
|
|
|
35
9
|
color == b.color,
|
|
36
10
|
coordinates.count == b.coordinates.count
|
|
37
11
|
else { return false }
|
|
12
|
+
|
|
38
13
|
for i in 0..<coordinates.count {
|
|
39
14
|
if coordinates[i].latitude != b.coordinates[i].latitude
|
|
40
15
|
|| coordinates[i].longitude != b.coordinates[i].longitude {
|
package/lib/module/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["RNAndroidLocationPriority","RNIOSLocationAccuracy","RNAndroidLocationPermissionResult","RNIOSPermissionResult","RNLocationErrorCode","RNMapErrorCode"],"sourceRoot":"../../src","sources":["types.ts"],"mappings":";;AA0CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAIA;AACA;AACA;;
|
|
1
|
+
{"version":3,"names":["RNAndroidLocationPriority","RNIOSLocationAccuracy","RNAndroidLocationPermissionResult","RNIOSPermissionResult","RNLocationErrorCode","RNMapErrorCode"],"sourceRoot":"../../src","sources":["types.ts"],"mappings":";;AA0CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAIA;AACA;AACA;;AAoGA,WAAYA,yBAAyB,0BAAzBA,yBAAyB;EAAzBA,yBAAyB,CAAzBA,yBAAyB;EAAzBA,yBAAyB,CAAzBA,yBAAyB;EAAzBA,yBAAyB,CAAzBA,yBAAyB;EAAzBA,yBAAyB,CAAzBA,yBAAyB;EAAA,OAAzBA,yBAAyB;AAAA;AAYrC,WAAYC,qBAAqB,0BAArBA,qBAAqB;EAArBA,qBAAqB,CAArBA,qBAAqB;EAArBA,qBAAqB,CAArBA,qBAAqB;EAArBA,qBAAqB,CAArBA,qBAAqB;EAArBA,qBAAqB,CAArBA,qBAAqB;EAAA,OAArBA,qBAAqB;AAAA;AAYjC,WAAYC,iCAAiC,0BAAjCA,iCAAiC;EAAjCA,iCAAiC,CAAjCA,iCAAiC;EAAjCA,iCAAiC,CAAjCA,iCAAiC;EAAjCA,iCAAiC,CAAjCA,iCAAiC;EAAA,OAAjCA,iCAAiC;AAAA;AAM7C,WAAYC,qBAAqB,0BAArBA,qBAAqB;EAArBA,qBAAqB,CAArBA,qBAAqB;EAArBA,qBAAqB,CAArBA,qBAAqB;EAAA,OAArBA,qBAAqB;AAAA;AAUjC,WAAYC,mBAAmB,0BAAnBA,mBAAmB;EAAnBA,mBAAmB,CAAnBA,mBAAmB;EAAnBA,mBAAmB,CAAnBA,mBAAmB;EAAnBA,mBAAmB,CAAnBA,mBAAmB;EAAnBA,mBAAmB,CAAnBA,mBAAmB;EAAnBA,mBAAmB,CAAnBA,mBAAmB;EAAnBA,mBAAmB,CAAnBA,mBAAmB;EAAA,OAAnBA,mBAAmB;AAAA;AAS/B,WAAYC,cAAc,0BAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAdA,cAAc,CAAdA,cAAc;EAAA,OAAdA,cAAc;AAAA","ignoreList":[]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { HybridView, HybridViewMethods, HybridViewProps } from 'react-native-nitro-modules';
|
|
2
|
-
import type { RNCamera, RNLatLng, RNMapPadding, RNPolygon, RNPolyline, RNUserInterfaceStyle, RNLocationErrorCode, RNMarker, RNLocationPermissionResult, RNRegion, RNLocation, RNMapErrorCode, RNMapType, RNInitialProps, RNCircle, RNMapUiSettings, RNLocationConfig } from './types';
|
|
2
|
+
import type { RNCamera, RNLatLng, RNMapPadding, RNPolygon, RNPolyline, RNUserInterfaceStyle, RNLocationErrorCode, RNMarker, RNLocationPermissionResult, RNRegion, RNLocation, RNMapErrorCode, RNMapType, RNInitialProps, RNCircle, RNMapUiSettings, RNLocationConfig, RNMapZoomConfig } from './types';
|
|
3
3
|
export interface RNGoogleMapsPlusViewProps extends HybridViewProps {
|
|
4
4
|
initialProps?: RNInitialProps;
|
|
5
5
|
uiSettings?: RNMapUiSettings;
|
|
@@ -9,8 +9,7 @@ export interface RNGoogleMapsPlusViewProps extends HybridViewProps {
|
|
|
9
9
|
indoorEnabled?: boolean;
|
|
10
10
|
customMapStyle?: string;
|
|
11
11
|
userInterfaceStyle?: RNUserInterfaceStyle;
|
|
12
|
-
|
|
13
|
-
maxZoomLevel?: number;
|
|
12
|
+
mapZoomConfig?: RNMapZoomConfig;
|
|
14
13
|
mapPadding?: RNMapPadding;
|
|
15
14
|
mapType?: RNMapType;
|
|
16
15
|
markers?: RNMarker[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RNGoogleMapsPlusView.nitro.d.ts","sourceRoot":"","sources":["../../../src/RNGoogleMapsPlusView.nitro.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EACV,iBAAiB,EACjB,eAAe,EAChB,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EACV,QAAQ,EACR,QAAQ,EACR,YAAY,EACZ,SAAS,EACT,UAAU,EACV,oBAAoB,EACpB,mBAAmB,EACnB,QAAQ,EACR,0BAA0B,EAC1B,QAAQ,EACR,UAAU,EACV,cAAc,EACd,SAAS,EACT,cAAc,EACd,QAAQ,EACR,eAAe,EACf,gBAAgB,
|
|
1
|
+
{"version":3,"file":"RNGoogleMapsPlusView.nitro.d.ts","sourceRoot":"","sources":["../../../src/RNGoogleMapsPlusView.nitro.ts"],"names":[],"mappings":"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"}
|
|
@@ -67,6 +67,10 @@ export type RNPosition = {
|
|
|
67
67
|
x: number;
|
|
68
68
|
y: number;
|
|
69
69
|
};
|
|
70
|
+
export type RNMapZoomConfig = {
|
|
71
|
+
min?: number;
|
|
72
|
+
max?: number;
|
|
73
|
+
};
|
|
70
74
|
export type RNLineCapType = 'butt' | 'round' | 'square';
|
|
71
75
|
export type RNLineJoinType = 'miter' | 'round' | 'bevel';
|
|
72
76
|
export type RNMarker = {
|
|
@@ -74,9 +78,12 @@ export type RNMarker = {
|
|
|
74
78
|
zIndex?: number;
|
|
75
79
|
coordinate: RNLatLng;
|
|
76
80
|
anchor?: RNPosition;
|
|
81
|
+
iconSvg?: RNMarkerSvg;
|
|
82
|
+
};
|
|
83
|
+
export type RNMarkerSvg = {
|
|
77
84
|
width: number;
|
|
78
85
|
height: number;
|
|
79
|
-
|
|
86
|
+
svgString: string;
|
|
80
87
|
};
|
|
81
88
|
export type RNPolygon = {
|
|
82
89
|
id: string;
|
|
@@ -102,7 +109,7 @@ export type RNCircle = {
|
|
|
102
109
|
pressable?: boolean;
|
|
103
110
|
zIndex?: number;
|
|
104
111
|
center: RNLatLng;
|
|
105
|
-
radius
|
|
112
|
+
radius: number;
|
|
106
113
|
strokeWidth?: number;
|
|
107
114
|
strokeColor?: string;
|
|
108
115
|
fillColor?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,6 +17,8 @@ namespace margelo::nitro::rngooglemapsplus { struct RNLatLng; }
|
|
|
17
17
|
namespace margelo::nitro::rngooglemapsplus { struct RNMapUiSettings; }
|
|
18
18
|
// Forward declaration of `RNUserInterfaceStyle` to properly resolve imports.
|
|
19
19
|
namespace margelo::nitro::rngooglemapsplus { enum class RNUserInterfaceStyle; }
|
|
20
|
+
// Forward declaration of `RNMapZoomConfig` to properly resolve imports.
|
|
21
|
+
namespace margelo::nitro::rngooglemapsplus { struct RNMapZoomConfig; }
|
|
20
22
|
// Forward declaration of `RNMapPadding` to properly resolve imports.
|
|
21
23
|
namespace margelo::nitro::rngooglemapsplus { struct RNMapPadding; }
|
|
22
24
|
// Forward declaration of `RNMapType` to properly resolve imports.
|
|
@@ -25,6 +27,8 @@ namespace margelo::nitro::rngooglemapsplus { enum class RNMapType; }
|
|
|
25
27
|
namespace margelo::nitro::rngooglemapsplus { struct RNMarker; }
|
|
26
28
|
// Forward declaration of `RNPosition` to properly resolve imports.
|
|
27
29
|
namespace margelo::nitro::rngooglemapsplus { struct RNPosition; }
|
|
30
|
+
// Forward declaration of `RNMarkerSvg` to properly resolve imports.
|
|
31
|
+
namespace margelo::nitro::rngooglemapsplus { struct RNMarkerSvg; }
|
|
28
32
|
// Forward declaration of `RNPolygon` to properly resolve imports.
|
|
29
33
|
namespace margelo::nitro::rngooglemapsplus { struct RNPolygon; }
|
|
30
34
|
// Forward declaration of `RNPolyline` to properly resolve imports.
|
|
@@ -72,6 +76,8 @@ namespace margelo::nitro::rngooglemapsplus { enum class RNIOSPermissionResult; }
|
|
|
72
76
|
#include "JRNMapUiSettings.hpp"
|
|
73
77
|
#include "RNUserInterfaceStyle.hpp"
|
|
74
78
|
#include "JRNUserInterfaceStyle.hpp"
|
|
79
|
+
#include "RNMapZoomConfig.hpp"
|
|
80
|
+
#include "JRNMapZoomConfig.hpp"
|
|
75
81
|
#include "RNMapPadding.hpp"
|
|
76
82
|
#include "JRNMapPadding.hpp"
|
|
77
83
|
#include "RNMapType.hpp"
|
|
@@ -81,6 +87,8 @@ namespace margelo::nitro::rngooglemapsplus { enum class RNIOSPermissionResult; }
|
|
|
81
87
|
#include "JRNMarker.hpp"
|
|
82
88
|
#include "RNPosition.hpp"
|
|
83
89
|
#include "JRNPosition.hpp"
|
|
90
|
+
#include "RNMarkerSvg.hpp"
|
|
91
|
+
#include "JRNMarkerSvg.hpp"
|
|
84
92
|
#include "RNPolygon.hpp"
|
|
85
93
|
#include "JRNPolygon.hpp"
|
|
86
94
|
#include "RNPolyline.hpp"
|
|
@@ -221,23 +229,14 @@ namespace margelo::nitro::rngooglemapsplus {
|
|
|
221
229
|
static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JRNUserInterfaceStyle> /* userInterfaceStyle */)>("setUserInterfaceStyle");
|
|
222
230
|
method(_javaPart, userInterfaceStyle.has_value() ? JRNUserInterfaceStyle::fromCpp(userInterfaceStyle.value()) : nullptr);
|
|
223
231
|
}
|
|
224
|
-
std::optional<
|
|
225
|
-
static const auto method = javaClassStatic()->getMethod<jni::local_ref<
|
|
232
|
+
std::optional<RNMapZoomConfig> JHybridRNGoogleMapsPlusViewSpec::getMapZoomConfig() {
|
|
233
|
+
static const auto method = javaClassStatic()->getMethod<jni::local_ref<JRNMapZoomConfig>()>("getMapZoomConfig");
|
|
226
234
|
auto __result = method(_javaPart);
|
|
227
|
-
return __result != nullptr ? std::make_optional(__result->
|
|
228
|
-
}
|
|
229
|
-
void JHybridRNGoogleMapsPlusViewSpec::setMinZoomLevel(std::optional<double> minZoomLevel) {
|
|
230
|
-
static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<jni::JDouble> /* minZoomLevel */)>("setMinZoomLevel");
|
|
231
|
-
method(_javaPart, minZoomLevel.has_value() ? jni::JDouble::valueOf(minZoomLevel.value()) : nullptr);
|
|
232
|
-
}
|
|
233
|
-
std::optional<double> JHybridRNGoogleMapsPlusViewSpec::getMaxZoomLevel() {
|
|
234
|
-
static const auto method = javaClassStatic()->getMethod<jni::local_ref<jni::JDouble>()>("getMaxZoomLevel");
|
|
235
|
-
auto __result = method(_javaPart);
|
|
236
|
-
return __result != nullptr ? std::make_optional(__result->value()) : std::nullopt;
|
|
235
|
+
return __result != nullptr ? std::make_optional(__result->toCpp()) : std::nullopt;
|
|
237
236
|
}
|
|
238
|
-
void JHybridRNGoogleMapsPlusViewSpec::
|
|
239
|
-
static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<
|
|
240
|
-
method(_javaPart,
|
|
237
|
+
void JHybridRNGoogleMapsPlusViewSpec::setMapZoomConfig(const std::optional<RNMapZoomConfig>& mapZoomConfig) {
|
|
238
|
+
static const auto method = javaClassStatic()->getMethod<void(jni::alias_ref<JRNMapZoomConfig> /* mapZoomConfig */)>("setMapZoomConfig");
|
|
239
|
+
method(_javaPart, mapZoomConfig.has_value() ? JRNMapZoomConfig::fromCpp(mapZoomConfig.value()) : nullptr);
|
|
241
240
|
}
|
|
242
241
|
std::optional<RNMapPadding> JHybridRNGoogleMapsPlusViewSpec::getMapPadding() {
|
|
243
242
|
static const auto method = javaClassStatic()->getMethod<jni::local_ref<JRNMapPadding>()>("getMapPadding");
|
|
@@ -65,10 +65,8 @@ namespace margelo::nitro::rngooglemapsplus {
|
|
|
65
65
|
void setCustomMapStyle(const std::optional<std::string>& customMapStyle) override;
|
|
66
66
|
std::optional<RNUserInterfaceStyle> getUserInterfaceStyle() override;
|
|
67
67
|
void setUserInterfaceStyle(std::optional<RNUserInterfaceStyle> userInterfaceStyle) override;
|
|
68
|
-
std::optional<
|
|
69
|
-
void
|
|
70
|
-
std::optional<double> getMaxZoomLevel() override;
|
|
71
|
-
void setMaxZoomLevel(std::optional<double> maxZoomLevel) override;
|
|
68
|
+
std::optional<RNMapZoomConfig> getMapZoomConfig() override;
|
|
69
|
+
void setMapZoomConfig(const std::optional<RNMapZoomConfig>& mapZoomConfig) override;
|
|
72
70
|
std::optional<RNMapPadding> getMapPadding() override;
|
|
73
71
|
void setMapPadding(const std::optional<RNMapPadding>& mapPadding) override;
|
|
74
72
|
std::optional<RNMapType> getMapType() override;
|