Skip to content

Commit 4c8be91

Browse files
committed
fix(google-maps): ensure userData is handled
1 parent 56cf5c6 commit 4c8be91

File tree

2 files changed

+44
-4
lines changed

2 files changed

+44
-4
lines changed

packages/google-maps/index.android.ts

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -787,31 +787,47 @@ export class GoogleMap implements IGoogleMap {
787787
}
788788

789789
addCircle(options: CircleOptions): Circle {
790-
return Circle.fromNative(this.native.addCircle(intoNativeCircleOptions(options)));
790+
const circle = Circle.fromNative(this.native.addCircle(intoNativeCircleOptions(options)));
791+
if (options?.userData) {
792+
circle.userData = options.userData;
793+
}
794+
return circle;
791795
}
792796

793797
removeCircle(circle: Circle) {
794798
circle?.native?.remove?.();
795799
}
796800

797801
addPolygon(options: PolygonOptions): Polygon {
798-
return Polygon.fromNative(this.native.addPolygon(intoNativePolygonOptions(options)));
802+
const poly = Polygon.fromNative(this.native.addPolygon(intoNativePolygonOptions(options)));
803+
if (options?.userData) {
804+
poly.userData = options.userData;
805+
}
806+
return poly;
799807
}
800808

801809
removePolygon(polygon: Polygon) {
802810
polygon?.native?.remove?.();
803811
}
804812

805813
addPolyline(options: PolylineOptions): Polyline {
806-
return Polyline.fromNative(this.native.addPolyline(intoNativePolylineOptions(options)));
814+
const polyline = Polyline.fromNative(this.native.addPolyline(intoNativePolylineOptions(options)));
815+
if (options?.userData) {
816+
polyline.userData = options.userData;
817+
}
818+
return polyline;
807819
}
808820

809821
removePolyline(polyline: Polyline) {
810822
polyline?.native?.remove?.();
811823
}
812824

813825
addGroundOverlay(options: GroundOverlayOptions): GroundOverlay {
814-
return GroundOverlay.fromNative(this.native.addGroundOverlay(intoNativeGroundOverlayOptions(options)));
826+
const overlay = GroundOverlay.fromNative(this.native.addGroundOverlay(intoNativeGroundOverlayOptions(options)));
827+
if (options?.userData) {
828+
overlay.userData = options.userData;
829+
}
830+
return overlay;
815831
}
816832

817833
removeGroundOverlay(groundOverlay: GroundOverlay) {

packages/google-maps/utils/index.ios.ts

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,11 @@ export function intoNativeMarkerOptions(options: MarkerOptions) {
7171
if (typeof options?.zIndex === 'number') {
7272
opts.zIndex = options.zIndex;
7373
}
74+
75+
if (options?.userData) {
76+
opts.userData = serialize(options.userData);
77+
}
78+
7479
return opts;
7580
}
7681

@@ -110,6 +115,11 @@ export function intoNativeCircleOptions(options: CircleOptions) {
110115
if (typeof options?.zIndex === 'number') {
111116
opts.zIndex = options.zIndex;
112117
}
118+
119+
if (options?.userData) {
120+
opts.userData = serialize(options.userData);
121+
}
122+
113123
return opts;
114124
}
115125

@@ -169,6 +179,11 @@ export function intoNativePolygonOptions(options: PolygonOptions) {
169179
if (typeof options?.zIndex === 'number') {
170180
opts.zIndex = options.zIndex;
171181
}
182+
183+
if (options?.userData) {
184+
opts.userData = serialize(options.userData);
185+
}
186+
172187
return opts;
173188
}
174189

@@ -221,6 +236,11 @@ export function intoNativePolylineOptions(options: PolylineOptions) {
221236
if (typeof options?.endCap) {
222237
// TODO
223238
}
239+
240+
if (options?.userData) {
241+
opts.userData = serialize(options.userData);
242+
}
243+
224244
return opts;
225245
}
226246

@@ -270,6 +290,10 @@ export function intoNativeGroundOverlayOptions(options: GroundOverlayOptions) {
270290
opts.zIndex = options.zIndex;
271291
}
272292

293+
if (options?.userData) {
294+
opts.userData = serialize(options.userData);
295+
}
296+
273297
return opts;
274298
}
275299

0 commit comments

Comments
 (0)