@lugg/maps 1.0.0-beta.0 → 1.0.0-beta.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.
- package/README.md +1 -1
- package/android/build.gradle +1 -1
- package/android/src/main/java/com/luggmaps/LuggCalloutView.kt +74 -0
- package/android/src/main/java/com/luggmaps/LuggCalloutViewManager.kt +38 -0
- package/android/src/main/java/com/luggmaps/LuggMapWrapperView.kt +0 -11
- package/android/src/main/java/com/luggmaps/LuggMarkerView.kt +73 -51
- package/android/src/main/java/com/luggmaps/LuggPackage.kt +8 -1
- package/android/src/main/java/com/luggmaps/core/GoogleMapProvider.kt +181 -5
- package/ios/LuggCalloutView.h +23 -0
- package/ios/LuggCalloutView.mm +145 -0
- package/ios/LuggMarkerView.h +2 -0
- package/ios/LuggMarkerView.mm +17 -2
- package/ios/core/AppleMapProvider.mm +211 -24
- package/ios/core/GoogleMapProvider.mm +125 -5
- package/ios/core/LuggAnnotationView.h +12 -0
- package/ios/core/LuggAnnotationView.mm +55 -0
- package/lib/module/MapProvider.web.js +3 -1
- package/lib/module/MapProvider.web.js.map +1 -1
- package/lib/module/MapView.web.js +15 -2
- package/lib/module/MapView.web.js.map +1 -1
- package/lib/module/components/Marker.js +21 -4
- package/lib/module/components/Marker.js.map +1 -1
- package/lib/module/components/Marker.web.js +86 -22
- package/lib/module/components/Marker.web.js.map +1 -1
- package/lib/module/components/index.js.map +1 -1
- package/lib/module/fabric/LuggCalloutViewNativeComponent.ts +20 -0
- package/lib/module/index.js.map +1 -1
- package/lib/typescript/src/MapProvider.web.d.ts +6 -0
- package/lib/typescript/src/MapProvider.web.d.ts.map +1 -1
- package/lib/typescript/src/MapView.web.d.ts.map +1 -1
- package/lib/typescript/src/components/GeoJson.types.d.ts +11 -1
- package/lib/typescript/src/components/GeoJson.types.d.ts.map +1 -1
- package/lib/typescript/src/components/Marker.d.ts +1 -1
- package/lib/typescript/src/components/Marker.d.ts.map +1 -1
- package/lib/typescript/src/components/Marker.types.d.ts +27 -1
- package/lib/typescript/src/components/Marker.types.d.ts.map +1 -1
- package/lib/typescript/src/components/Marker.web.d.ts +1 -1
- package/lib/typescript/src/components/Marker.web.d.ts.map +1 -1
- package/lib/typescript/src/components/index.d.ts +1 -1
- package/lib/typescript/src/components/index.d.ts.map +1 -1
- package/lib/typescript/src/components/index.web.d.ts +1 -1
- package/lib/typescript/src/components/index.web.d.ts.map +1 -1
- package/lib/typescript/src/fabric/LuggCalloutViewNativeComponent.d.ts +13 -0
- package/lib/typescript/src/fabric/LuggCalloutViewNativeComponent.d.ts.map +1 -0
- package/lib/typescript/src/index.d.ts +2 -2
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/index.web.d.ts +2 -2
- package/lib/typescript/src/index.web.d.ts.map +1 -1
- package/package.json +2 -1
- package/src/MapProvider.web.tsx +11 -1
- package/src/MapView.web.tsx +26 -2
- package/src/components/GeoJson.types.ts +12 -1
- package/src/components/Marker.tsx +29 -1
- package/src/components/Marker.types.ts +28 -1
- package/src/components/Marker.web.tsx +113 -23
- package/src/components/index.ts +1 -0
- package/src/components/index.web.ts +1 -1
- package/src/fabric/LuggCalloutViewNativeComponent.ts +20 -0
- package/src/index.ts +2 -0
- package/src/index.web.ts +2 -1
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
#import "GoogleMapProvider.h"
|
|
2
|
+
#import "../LuggCalloutView.h"
|
|
2
3
|
#import "../LuggMarkerView.h"
|
|
3
4
|
#import "../LuggPolygonView.h"
|
|
4
5
|
#import "../LuggPolylineView.h"
|
|
@@ -8,10 +9,12 @@
|
|
|
8
9
|
static NSString *const kDemoMapId = @"DEMO_MAP_ID";
|
|
9
10
|
|
|
10
11
|
@interface GoogleMapProvider () <
|
|
11
|
-
LuggMarkerViewDelegate, LuggPolylineViewDelegate,
|
|
12
|
+
LuggMarkerViewDelegate, LuggCalloutViewDelegate, LuggPolylineViewDelegate,
|
|
13
|
+
LuggPolygonViewDelegate>
|
|
12
14
|
@end
|
|
13
15
|
|
|
14
16
|
@implementation GoogleMapProvider {
|
|
17
|
+
UIView *_wrapperView;
|
|
15
18
|
GMSMapView *_mapView;
|
|
16
19
|
BOOL _isMapReady;
|
|
17
20
|
BOOL _isDragging;
|
|
@@ -23,6 +26,7 @@ static NSString *const kDemoMapId = @"DEMO_MAP_ID";
|
|
|
23
26
|
NSMapTable<LuggPolylineView *, GMSPolylineAnimator *> *_polylineAnimators;
|
|
24
27
|
NSMapTable<GMSPolygon *, LuggPolygonView *> *_polygonToViewMap;
|
|
25
28
|
NSMapTable<GMSMarker *, LuggMarkerView *> *_markerToViewMap;
|
|
29
|
+
LuggMarkerView *_activeNonBubbledMarker;
|
|
26
30
|
|
|
27
31
|
// Edge insets animation
|
|
28
32
|
CADisplayLink *_edgeInsetsDisplayLink;
|
|
@@ -88,6 +92,7 @@ static NSString *const kDemoMapId = @"DEMO_MAP_ID";
|
|
|
88
92
|
_mapView.paddingAdjustmentBehavior =
|
|
89
93
|
kGMSMapViewPaddingAdjustmentBehaviorNever;
|
|
90
94
|
|
|
95
|
+
_wrapperView = wrapperView;
|
|
91
96
|
[wrapperView addSubview:_mapView];
|
|
92
97
|
|
|
93
98
|
[self applyTheme];
|
|
@@ -248,6 +253,7 @@ static NSString *const kDemoMapId = @"DEMO_MAP_ID";
|
|
|
248
253
|
longitude:position.target.longitude
|
|
249
254
|
zoom:position.zoom
|
|
250
255
|
gesture:_isDragging];
|
|
256
|
+
[self positionNonBubbledCallout];
|
|
251
257
|
}
|
|
252
258
|
|
|
253
259
|
- (void)mapView:(GMSMapView *)mapView
|
|
@@ -267,6 +273,7 @@ static NSString *const kDemoMapId = @"DEMO_MAP_ID";
|
|
|
267
273
|
|
|
268
274
|
- (void)mapView:(GMSMapView *)mapView
|
|
269
275
|
didTapAtCoordinate:(CLLocationCoordinate2D)coordinate {
|
|
276
|
+
[self dismissNonBubbledCallout];
|
|
270
277
|
CGPoint point = [mapView.projection pointForCoordinate:coordinate];
|
|
271
278
|
[_delegate mapProviderDidPress:coordinate.latitude
|
|
272
279
|
longitude:coordinate.longitude
|
|
@@ -296,10 +303,26 @@ static NSString *const kDemoMapId = @"DEMO_MAP_ID";
|
|
|
296
303
|
}
|
|
297
304
|
|
|
298
305
|
- (BOOL)mapView:(GMSMapView *)mapView didTapMarker:(GMSMarker *)marker {
|
|
306
|
+
[self dismissNonBubbledCallout];
|
|
307
|
+
|
|
299
308
|
LuggMarkerView *markerView = [_markerToViewMap objectForKey:marker];
|
|
300
309
|
if (markerView) {
|
|
301
310
|
CGPoint point = [_mapView.projection pointForCoordinate:marker.position];
|
|
302
311
|
[markerView emitPressEventWithPoint:point];
|
|
312
|
+
|
|
313
|
+
LuggCalloutView *calloutView = markerView.calloutView;
|
|
314
|
+
if (calloutView && calloutView.hasCustomContent) {
|
|
315
|
+
[mapView animateToLocation:marker.position];
|
|
316
|
+
|
|
317
|
+
dispatch_async(dispatch_get_main_queue(), ^{
|
|
318
|
+
if (calloutView.bubbled) {
|
|
319
|
+
mapView.selectedMarker = marker;
|
|
320
|
+
} else {
|
|
321
|
+
[self showNonBubbledCallout:markerView];
|
|
322
|
+
}
|
|
323
|
+
});
|
|
324
|
+
return YES;
|
|
325
|
+
}
|
|
303
326
|
}
|
|
304
327
|
return NO;
|
|
305
328
|
}
|
|
@@ -332,6 +355,99 @@ static NSString *const kDemoMapId = @"DEMO_MAP_ID";
|
|
|
332
355
|
}
|
|
333
356
|
}
|
|
334
357
|
|
|
358
|
+
- (UIView *)rasterizedCalloutView:(LuggCalloutView *)calloutView {
|
|
359
|
+
UIView *contentView = calloutView.contentView;
|
|
360
|
+
[contentView layoutIfNeeded];
|
|
361
|
+
|
|
362
|
+
CGSize size = contentView.bounds.size;
|
|
363
|
+
if (size.width <= 0 || size.height <= 0)
|
|
364
|
+
return nil;
|
|
365
|
+
|
|
366
|
+
UIGraphicsImageRendererFormat *format =
|
|
367
|
+
[UIGraphicsImageRendererFormat defaultFormat];
|
|
368
|
+
format.scale = [UIScreen mainScreen].scale;
|
|
369
|
+
UIGraphicsImageRenderer *renderer =
|
|
370
|
+
[[UIGraphicsImageRenderer alloc] initWithSize:size format:format];
|
|
371
|
+
UIImage *image =
|
|
372
|
+
[renderer imageWithActions:^(UIGraphicsImageRendererContext *context) {
|
|
373
|
+
[contentView.layer renderInContext:context.CGContext];
|
|
374
|
+
}];
|
|
375
|
+
|
|
376
|
+
return [[UIImageView alloc] initWithImage:image];
|
|
377
|
+
}
|
|
378
|
+
|
|
379
|
+
- (UIView *)mapView:(GMSMapView *)mapView markerInfoWindow:(GMSMarker *)marker {
|
|
380
|
+
// Non-bubbled callouts are rendered as live views, not info windows
|
|
381
|
+
return nil;
|
|
382
|
+
}
|
|
383
|
+
|
|
384
|
+
- (UIView *)mapView:(GMSMapView *)mapView
|
|
385
|
+
markerInfoContents:(GMSMarker *)marker {
|
|
386
|
+
LuggMarkerView *markerView = [_markerToViewMap objectForKey:marker];
|
|
387
|
+
if (!markerView || !markerView.calloutView ||
|
|
388
|
+
!markerView.calloutView.hasCustomContent)
|
|
389
|
+
return nil;
|
|
390
|
+
|
|
391
|
+
if (markerView.calloutView.bubbled) {
|
|
392
|
+
return [self rasterizedCalloutView:markerView.calloutView];
|
|
393
|
+
}
|
|
394
|
+
|
|
395
|
+
return nil;
|
|
396
|
+
}
|
|
397
|
+
|
|
398
|
+
- (void)showNonBubbledCallout:(LuggMarkerView *)markerView {
|
|
399
|
+
[self dismissNonBubbledCallout];
|
|
400
|
+
_mapView.selectedMarker = nil;
|
|
401
|
+
|
|
402
|
+
LuggCalloutView *calloutView = markerView.calloutView;
|
|
403
|
+
UIView *contentView = calloutView.contentView;
|
|
404
|
+
[contentView removeFromSuperview];
|
|
405
|
+
|
|
406
|
+
contentView.userInteractionEnabled = YES;
|
|
407
|
+
contentView.hidden = YES;
|
|
408
|
+
calloutView.delegate = self;
|
|
409
|
+
[_wrapperView addSubview:contentView];
|
|
410
|
+
|
|
411
|
+
_activeNonBubbledMarker = markerView;
|
|
412
|
+
dispatch_async(dispatch_get_main_queue(), ^{
|
|
413
|
+
[self positionNonBubbledCallout];
|
|
414
|
+
contentView.hidden = NO;
|
|
415
|
+
});
|
|
416
|
+
}
|
|
417
|
+
|
|
418
|
+
- (void)calloutViewDidUpdate:(LuggCalloutView *)calloutView {
|
|
419
|
+
[self positionNonBubbledCallout];
|
|
420
|
+
}
|
|
421
|
+
|
|
422
|
+
- (void)dismissNonBubbledCallout {
|
|
423
|
+
if (!_activeNonBubbledMarker)
|
|
424
|
+
return;
|
|
425
|
+
|
|
426
|
+
LuggCalloutView *calloutView = _activeNonBubbledMarker.calloutView;
|
|
427
|
+
calloutView.delegate = nil;
|
|
428
|
+
[calloutView.contentView removeFromSuperview];
|
|
429
|
+
_activeNonBubbledMarker = nil;
|
|
430
|
+
}
|
|
431
|
+
|
|
432
|
+
- (void)positionNonBubbledCallout {
|
|
433
|
+
if (!_activeNonBubbledMarker)
|
|
434
|
+
return;
|
|
435
|
+
|
|
436
|
+
LuggCalloutView *calloutView = _activeNonBubbledMarker.calloutView;
|
|
437
|
+
UIView *contentView = calloutView.contentView;
|
|
438
|
+
CGSize contentSize = contentView.bounds.size;
|
|
439
|
+
if (contentSize.width <= 0 || contentSize.height <= 0)
|
|
440
|
+
return;
|
|
441
|
+
|
|
442
|
+
CGPoint anchor = calloutView.anchor;
|
|
443
|
+
CGPoint point = [_mapView.projection
|
|
444
|
+
pointForCoordinate:_activeNonBubbledMarker.coordinate];
|
|
445
|
+
|
|
446
|
+
contentView.center =
|
|
447
|
+
CGPointMake(point.x + contentSize.width * (0.5 - anchor.x),
|
|
448
|
+
point.y + contentSize.height * (0.5 - anchor.y));
|
|
449
|
+
}
|
|
450
|
+
|
|
335
451
|
#pragma mark - MarkerViewDelegate
|
|
336
452
|
|
|
337
453
|
- (void)markerViewDidLayout:(LuggMarkerView *)markerView {
|
|
@@ -387,8 +503,10 @@ static NSString *const kDemoMapId = @"DEMO_MAP_ID";
|
|
|
387
503
|
|
|
388
504
|
GMSAdvancedMarker *marker = (GMSAdvancedMarker *)markerView.marker;
|
|
389
505
|
marker.position = markerView.coordinate;
|
|
390
|
-
marker.title = markerView.title;
|
|
391
|
-
marker.snippet = markerView.markerDescription
|
|
506
|
+
marker.title = markerView.title.length > 0 ? markerView.title : nil;
|
|
507
|
+
marker.snippet = markerView.markerDescription.length > 0
|
|
508
|
+
? markerView.markerDescription
|
|
509
|
+
: nil;
|
|
392
510
|
marker.zIndex = (int)markerView.zIndex;
|
|
393
511
|
marker.draggable = markerView.draggable;
|
|
394
512
|
[self applyMarkerStyle:markerView marker:marker];
|
|
@@ -410,8 +528,10 @@ static NSString *const kDemoMapId = @"DEMO_MAP_ID";
|
|
|
410
528
|
|
|
411
529
|
GMSAdvancedMarker *marker = [[GMSAdvancedMarker alloc] init];
|
|
412
530
|
marker.position = markerView.coordinate;
|
|
413
|
-
marker.title = markerView.title;
|
|
414
|
-
marker.snippet = markerView.markerDescription
|
|
531
|
+
marker.title = markerView.title.length > 0 ? markerView.title : nil;
|
|
532
|
+
marker.snippet = markerView.markerDescription.length > 0
|
|
533
|
+
? markerView.markerDescription
|
|
534
|
+
: nil;
|
|
415
535
|
marker.zIndex = (int)markerView.zIndex;
|
|
416
536
|
marker.draggable = markerView.draggable;
|
|
417
537
|
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
#import <MapKit/MapKit.h>
|
|
2
|
+
|
|
3
|
+
@interface LuggAnnotationView : MKAnnotationView
|
|
4
|
+
@end
|
|
5
|
+
|
|
6
|
+
@interface LuggMarkerAnnotationView : MKMarkerAnnotationView
|
|
7
|
+
@end
|
|
8
|
+
|
|
9
|
+
// Shared hit-test helpers for annotation views with subviews outside bounds
|
|
10
|
+
BOOL LuggAnnotationPointInside(UIView *self, CGPoint point, UIEvent *event);
|
|
11
|
+
UIView *_Nullable LuggAnnotationHitTest(UIView *self, CGPoint point,
|
|
12
|
+
UIEvent *event);
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
#import "LuggAnnotationView.h"
|
|
2
|
+
|
|
3
|
+
BOOL LuggAnnotationPointInside(UIView *self, CGPoint point, UIEvent *event) {
|
|
4
|
+
for (UIView *subview in self.subviews) {
|
|
5
|
+
CGPoint subviewPoint = [subview convertPoint:point fromView:self];
|
|
6
|
+
if ([subview pointInside:subviewPoint withEvent:event])
|
|
7
|
+
return YES;
|
|
8
|
+
}
|
|
9
|
+
return NO;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
UIView *_Nullable LuggAnnotationHitTest(UIView *self, CGPoint point,
|
|
13
|
+
UIEvent *event) {
|
|
14
|
+
for (UIView *subview in [self.subviews reverseObjectEnumerator]) {
|
|
15
|
+
CGPoint subviewPoint = [subview convertPoint:point fromView:self];
|
|
16
|
+
UIView *result = [subview hitTest:subviewPoint withEvent:event];
|
|
17
|
+
if (result)
|
|
18
|
+
return result;
|
|
19
|
+
}
|
|
20
|
+
return nil;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
@implementation LuggAnnotationView
|
|
24
|
+
|
|
25
|
+
- (BOOL)pointInside:(CGPoint)point withEvent:(UIEvent *)event {
|
|
26
|
+
if ([super pointInside:point withEvent:event])
|
|
27
|
+
return YES;
|
|
28
|
+
return LuggAnnotationPointInside(self, point, event);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event {
|
|
32
|
+
UIView *result = [super hitTest:point withEvent:event];
|
|
33
|
+
if (result)
|
|
34
|
+
return result;
|
|
35
|
+
return LuggAnnotationHitTest(self, point, event);
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
@end
|
|
39
|
+
|
|
40
|
+
@implementation LuggMarkerAnnotationView
|
|
41
|
+
|
|
42
|
+
- (BOOL)pointInside:(CGPoint)point withEvent:(UIEvent *)event {
|
|
43
|
+
if ([super pointInside:point withEvent:event])
|
|
44
|
+
return YES;
|
|
45
|
+
return LuggAnnotationPointInside(self, point, event);
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event {
|
|
49
|
+
UIView *result = [super hitTest:point withEvent:event];
|
|
50
|
+
if (result)
|
|
51
|
+
return result;
|
|
52
|
+
return LuggAnnotationHitTest(self, point, event);
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
@end
|
|
@@ -6,7 +6,9 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
6
6
|
export const MapContext = /*#__PURE__*/createContext({
|
|
7
7
|
map: null,
|
|
8
8
|
isDragging: false,
|
|
9
|
-
moveCamera: () => {}
|
|
9
|
+
moveCamera: () => {},
|
|
10
|
+
onCalloutClose: () => () => {},
|
|
11
|
+
closeCallouts: () => {}
|
|
10
12
|
});
|
|
11
13
|
export const useMapContext = () => useContext(MapContext);
|
|
12
14
|
export const MapProvider = ({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createContext","useContext","APIProvider","jsx","_jsx","MapContext","map","isDragging","moveCamera","useMapContext","MapProvider","apiKey","children"],"sourceRoot":"../../src","sources":["MapProvider.web.tsx"],"mappings":";;AAAA,SAASA,aAAa,EAAEC,UAAU,QAAQ,OAAO;AACjD,SAASC,WAAW,QAAQ,2BAA2B;AAAC,SAAAC,GAAA,IAAAC,IAAA;
|
|
1
|
+
{"version":3,"names":["createContext","useContext","APIProvider","jsx","_jsx","MapContext","map","isDragging","moveCamera","onCalloutClose","closeCallouts","useMapContext","MapProvider","apiKey","children"],"sourceRoot":"../../src","sources":["MapProvider.web.tsx"],"mappings":";;AAAA,SAASA,aAAa,EAAEC,UAAU,QAAQ,OAAO;AACjD,SAASC,WAAW,QAAQ,2BAA2B;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAKxD,OAAO,MAAMC,UAAU,gBAAGL,aAAa,CAMpC;EACDM,GAAG,EAAE,IAAI;EACTC,UAAU,EAAE,KAAK;EACjBC,UAAU,EAAEA,CAAA,KAAM,CAAC,CAAC;EACpBC,cAAc,EAAEA,CAAA,KAAM,MAAM,CAAC,CAAC;EAC9BC,aAAa,EAAEA,CAAA,KAAM,CAAC;AACxB,CAAC,CAAC;AAEF,OAAO,MAAMC,aAAa,GAAGA,CAAA,KAAMV,UAAU,CAACI,UAAU,CAAC;AAEzD,OAAO,MAAMO,WAAW,GAAGA,CAAC;EAAEC,MAAM,GAAG,EAAE;EAAEC;AAA2B,CAAC,kBACrEV,IAAA,CAACF,WAAW;EAACW,MAAM,EAAEA,MAAO;EAAAC,QAAA,EAAEA;AAAQ,CAAc,CACrD","ignoreList":[]}
|
|
@@ -220,6 +220,16 @@ export const MapView = /*#__PURE__*/forwardRef(function MapView(props, ref) {
|
|
|
220
220
|
}, [map, edgeInsets, applyEdgeInsets]);
|
|
221
221
|
const longPressTimer = useRef(null);
|
|
222
222
|
const longPressFired = useRef(false);
|
|
223
|
+
const calloutListeners = useRef(new Set()).current;
|
|
224
|
+
const onCalloutClose = useCallback(listener => {
|
|
225
|
+
calloutListeners.add(listener);
|
|
226
|
+
return () => calloutListeners.delete(listener);
|
|
227
|
+
}, [calloutListeners]);
|
|
228
|
+
const closeCallouts = useCallback(except => {
|
|
229
|
+
calloutListeners.forEach(l => {
|
|
230
|
+
if (l !== except) l();
|
|
231
|
+
});
|
|
232
|
+
}, [calloutListeners]);
|
|
223
233
|
const getPoint = useCallback(domEvent => {
|
|
224
234
|
const el = containerRef.current;
|
|
225
235
|
if (!domEvent || !el) return {
|
|
@@ -238,6 +248,7 @@ export const MapView = /*#__PURE__*/forwardRef(function MapView(props, ref) {
|
|
|
238
248
|
longPressFired.current = false;
|
|
239
249
|
return;
|
|
240
250
|
}
|
|
251
|
+
closeCallouts();
|
|
241
252
|
const latLng = event.detail.latLng;
|
|
242
253
|
if (!onPress || !latLng) return;
|
|
243
254
|
onPress(createSyntheticEvent({
|
|
@@ -247,7 +258,7 @@ export const MapView = /*#__PURE__*/forwardRef(function MapView(props, ref) {
|
|
|
247
258
|
},
|
|
248
259
|
point: getPoint(event.domEvent)
|
|
249
260
|
}));
|
|
250
|
-
}, [onPress, getPoint]);
|
|
261
|
+
}, [onPress, getPoint, closeCallouts]);
|
|
251
262
|
const handleMouseDown = useCallback(event => {
|
|
252
263
|
if (!onLongPress) return;
|
|
253
264
|
const point = getPoint(event.domEvent);
|
|
@@ -330,7 +341,9 @@ export const MapView = /*#__PURE__*/forwardRef(function MapView(props, ref) {
|
|
|
330
341
|
value: {
|
|
331
342
|
map,
|
|
332
343
|
isDragging,
|
|
333
|
-
moveCamera: panToCoordinate
|
|
344
|
+
moveCamera: panToCoordinate,
|
|
345
|
+
onCalloutClose,
|
|
346
|
+
closeCallouts
|
|
334
347
|
},
|
|
335
348
|
children: /*#__PURE__*/_jsx(View, {
|
|
336
349
|
ref: containerRef,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["forwardRef","useCallback","useEffect","useId","useImperativeHandle","useRef","useState","View","ColorScheme","Map","useMap","Marker","MapContext","jsx","_jsx","jsxs","_jsxs","createSyntheticEvent","nativeEvent","currentTarget","target","bubbles","cancelable","defaultPrevented","eventPhase","isTrusted","preventDefault","stopPropagation","isDefaultPrevented","isPropagationStopped","persist","timeStamp","Date","now","type","userLocationDotStyle","width","height","backgroundColor","border","borderRadius","boxShadow","UserLocationMarker","enabled","coordinate","setCoordinate","watchId","updateLocation","position","latitude","coords","longitude","navigator","geolocation","getCurrentPosition","watchPosition","clearWatch","anchor","x","y","children","style","MapView","props","ref","mapId","initialCoordinate","initialZoom","minZoom","maxZoom","zoomEnabled","scrollEnabled","pitchEnabled","edgeInsets","userLocationEnabled","theme","onPress","onLongPress","onCameraMove","onCameraIdle","onReady","id","map","containerRef","readyFired","isDragging","setIsDragging","wasGesture","prevEdgeInsets","offsetCenter","coord","zoom","insets","reverse","p","current","lat","lng","dir","scale","Math","pow","offsetX","right","left","offsetY","bottom","top","latRad","PI","log","tan","cos","atan","sinh","applyEdgeInsets","newEdgeInsets","duration","prev","center","getCenter","getZoom","logicalCenter","newCenter","moveCamera","panTo","panToCoordinate","undefined","options","targetZoom","currentZoom","zoomChanged","setZoom","fitCoordinates","coordinates","first","padding","fitPadding","length","bounds","google","maps","LatLngBounds","forEach","extend","ei","fitBounds","setEdgeInsets","changed","longPressTimer","longPressFired","getPoint","domEvent","el","rect","getBoundingClientRect","e","clientX","clientY","handleClick","event","latLng","detail","point","handleMouseDown","setTimeout","handleMouseUp","clearTimeout","listeners","addListener","l","removeListener","handleDragStart","handleDragEnd","handleCameraChanged","payload","gesture","handleIdle","gestureHandling","colorScheme","DARK","LIGHT","FOLLOW_SYSTEM","defaultCenter","Provider","value","defaultZoom","disableDefaultUI","isFractionalZoomEnabled","tilt","onClick","onDragstart","onDragend","onCameraChanged","onIdle"],"sourceRoot":"../../src","sources":["MapView.web.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["forwardRef","useCallback","useEffect","useId","useImperativeHandle","useRef","useState","View","ColorScheme","Map","useMap","Marker","MapContext","jsx","_jsx","jsxs","_jsxs","createSyntheticEvent","nativeEvent","currentTarget","target","bubbles","cancelable","defaultPrevented","eventPhase","isTrusted","preventDefault","stopPropagation","isDefaultPrevented","isPropagationStopped","persist","timeStamp","Date","now","type","userLocationDotStyle","width","height","backgroundColor","border","borderRadius","boxShadow","UserLocationMarker","enabled","coordinate","setCoordinate","watchId","updateLocation","position","latitude","coords","longitude","navigator","geolocation","getCurrentPosition","watchPosition","clearWatch","anchor","x","y","children","style","MapView","props","ref","mapId","initialCoordinate","initialZoom","minZoom","maxZoom","zoomEnabled","scrollEnabled","pitchEnabled","edgeInsets","userLocationEnabled","theme","onPress","onLongPress","onCameraMove","onCameraIdle","onReady","id","map","containerRef","readyFired","isDragging","setIsDragging","wasGesture","prevEdgeInsets","offsetCenter","coord","zoom","insets","reverse","p","current","lat","lng","dir","scale","Math","pow","offsetX","right","left","offsetY","bottom","top","latRad","PI","log","tan","cos","atan","sinh","applyEdgeInsets","newEdgeInsets","duration","prev","center","getCenter","getZoom","logicalCenter","newCenter","moveCamera","panTo","panToCoordinate","undefined","options","targetZoom","currentZoom","zoomChanged","setZoom","fitCoordinates","coordinates","first","padding","fitPadding","length","bounds","google","maps","LatLngBounds","forEach","extend","ei","fitBounds","setEdgeInsets","changed","longPressTimer","longPressFired","calloutListeners","Set","onCalloutClose","listener","add","delete","closeCallouts","except","l","getPoint","domEvent","el","rect","getBoundingClientRect","e","clientX","clientY","handleClick","event","latLng","detail","point","handleMouseDown","setTimeout","handleMouseUp","clearTimeout","listeners","addListener","removeListener","handleDragStart","handleDragEnd","handleCameraChanged","payload","gesture","handleIdle","gestureHandling","colorScheme","DARK","LIGHT","FOLLOW_SYSTEM","defaultCenter","Provider","value","defaultZoom","disableDefaultUI","isFractionalZoomEnabled","tilt","onClick","onDragstart","onDragend","onCameraChanged","onIdle"],"sourceRoot":"../../src","sources":["MapView.web.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import React from 'react';
|
|
3
|
+
import React, { isValidElement } from 'react';
|
|
4
4
|
import { StyleSheet } from 'react-native';
|
|
5
5
|
import LuggMarkerViewNativeComponent from '../fabric/LuggMarkerViewNativeComponent';
|
|
6
|
-
import
|
|
6
|
+
import LuggCalloutViewNativeComponent from '../fabric/LuggCalloutViewNativeComponent';
|
|
7
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
7
8
|
export class Marker extends React.PureComponent {
|
|
8
9
|
getStyle(zIndex) {
|
|
9
10
|
if (zIndex == null) return styles.marker;
|
|
@@ -31,9 +32,14 @@ export class Marker extends React.PureComponent {
|
|
|
31
32
|
onDragStart,
|
|
32
33
|
onDragChange,
|
|
33
34
|
onDragEnd,
|
|
35
|
+
callout,
|
|
36
|
+
calloutOptions,
|
|
34
37
|
children
|
|
35
38
|
} = this.props;
|
|
36
|
-
|
|
39
|
+
const calloutContent = callout ? /*#__PURE__*/isValidElement(callout) ? callout : /*#__PURE__*/React.createElement(callout) : null;
|
|
40
|
+
const calloutBubbled = calloutOptions?.bubbled ?? true;
|
|
41
|
+
const calloutAnchor = calloutOptions?.anchor;
|
|
42
|
+
return /*#__PURE__*/_jsxs(LuggMarkerViewNativeComponent, {
|
|
37
43
|
style: this.getStyle(zIndex),
|
|
38
44
|
name: name,
|
|
39
45
|
coordinate: coordinate,
|
|
@@ -48,7 +54,12 @@ export class Marker extends React.PureComponent {
|
|
|
48
54
|
onMarkerDragStart: onDragStart,
|
|
49
55
|
onMarkerDragChange: onDragChange,
|
|
50
56
|
onMarkerDragEnd: onDragEnd,
|
|
51
|
-
children: children
|
|
57
|
+
children: [children, calloutContent && /*#__PURE__*/_jsx(LuggCalloutViewNativeComponent, {
|
|
58
|
+
style: calloutStyles.callout,
|
|
59
|
+
bubbled: calloutBubbled,
|
|
60
|
+
anchor: calloutAnchor,
|
|
61
|
+
children: calloutContent
|
|
62
|
+
})]
|
|
52
63
|
});
|
|
53
64
|
}
|
|
54
65
|
}
|
|
@@ -58,4 +69,10 @@ const styles = StyleSheet.create({
|
|
|
58
69
|
pointerEvents: 'box-none'
|
|
59
70
|
}
|
|
60
71
|
});
|
|
72
|
+
const calloutStyles = StyleSheet.create({
|
|
73
|
+
callout: {
|
|
74
|
+
position: 'absolute',
|
|
75
|
+
pointerEvents: 'box-none'
|
|
76
|
+
}
|
|
77
|
+
});
|
|
61
78
|
//# sourceMappingURL=Marker.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","StyleSheet","LuggMarkerViewNativeComponent","jsx","_jsx","Marker","PureComponent","getStyle","zIndex","styles","marker","_cachedZIndex","_cachedStyle","render","name","coordinate","title","description","anchor","rotate","scale","rasterize","draggable","onPress","onDragStart","onDragChange","onDragEnd","children","props","style","onMarkerPress","onMarkerDragStart","onMarkerDragChange","onMarkerDragEnd","create","position","pointerEvents"],"sourceRoot":"../../../src","sources":["components/Marker.tsx"],"mappings":";;AAAA,OAAOA,KAAK,
|
|
1
|
+
{"version":3,"names":["React","isValidElement","StyleSheet","LuggMarkerViewNativeComponent","LuggCalloutViewNativeComponent","jsx","_jsx","jsxs","_jsxs","Marker","PureComponent","getStyle","zIndex","styles","marker","_cachedZIndex","_cachedStyle","render","name","coordinate","title","description","anchor","rotate","scale","rasterize","draggable","onPress","onDragStart","onDragChange","onDragEnd","callout","calloutOptions","children","props","calloutContent","createElement","calloutBubbled","bubbled","calloutAnchor","style","onMarkerPress","onMarkerDragStart","onMarkerDragChange","onMarkerDragEnd","calloutStyles","create","position","pointerEvents"],"sourceRoot":"../../../src","sources":["components/Marker.tsx"],"mappings":";;AAAA,OAAOA,KAAK,IAAIC,cAAc,QAAQ,OAAO;AAC7C,SAASC,UAAU,QAAQ,cAAc;AACzC,OAAOC,6BAA6B,MAAM,yCAAyC;AACnF,OAAOC,8BAA8B,MAAM,0CAA0C;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAUtF,OAAO,MAAMC,MAAM,SAAST,KAAK,CAACU,aAAa,CAAc;EACnDC,QAAQA,CAACC,MAA0B,EAAE;IAC3C,IAAIA,MAAM,IAAI,IAAI,EAAE,OAAOC,MAAM,CAACC,MAAM;IACxC,IAAIF,MAAM,KAAK,IAAI,CAACG,aAAa,EAAE;MACjC,IAAI,CAACA,aAAa,GAAGH,MAAM;MAC3B,IAAI,CAACI,YAAY,GAAG,CAAC;QAAEJ;MAAO,CAAC,EAAEC,MAAM,CAACC,MAAM,CAAC;IACjD;IACA,OAAO,IAAI,CAACE,YAAY;EAC1B;EAKAC,MAAMA,CAAA,EAAG;IACP,MAAM;MACJC,IAAI;MACJC,UAAU;MACVC,KAAK;MACLC,WAAW;MACXC,MAAM;MACNV,MAAM;MACNW,MAAM,GAAG,CAAC;MACVC,KAAK,GAAG,CAAC;MACTC,SAAS,GAAG,IAAI;MAChBC,SAAS,GAAG,KAAK;MACjBC,OAAO;MACPC,WAAW;MACXC,YAAY;MACZC,SAAS;MACTC,OAAO;MACPC,cAAc;MACdC;IACF,CAAC,GAAG,IAAI,CAACC,KAAK;IAEd,MAAMC,cAAc,GAAGJ,OAAO,GAC1B,aAAA9B,cAAc,CAAC8B,OAAO,CAAC,GACrBA,OAAO,gBACP/B,KAAK,CAACoC,aAAa,CAACL,OAAO,CAAC,GAC9B,IAAI;IACR,MAAMM,cAAc,GAAGL,cAAc,EAAEM,OAAO,IAAI,IAAI;IACtD,MAAMC,aAAa,GAAGP,cAAc,EAAEV,MAAM;IAE5C,oBACEd,KAAA,CAACL,6BAA6B;MAC5BqC,KAAK,EAAE,IAAI,CAAC7B,QAAQ,CAACC,MAAM,CAAE;MAC7BM,IAAI,EAAEA,IAAK;MACXC,UAAU,EAAEA,UAAW;MACvBC,KAAK,EAAEA,KAAM;MACbC,WAAW,EAAEA,WAAY;MACzBC,MAAM,EAAEA,MAAO;MACfC,MAAM,EAAEA,MAAO;MACfC,KAAK,EAAEA,KAAM;MACbC,SAAS,EAAEA,SAAU;MACrBC,SAAS,EAAEA,SAAU;MACrBe,aAAa,EAAEd,OAAQ;MACvBe,iBAAiB,EAAEd,WAAY;MAC/Be,kBAAkB,EAAEd,YAAa;MACjCe,eAAe,EAAEd,SAAU;MAAAG,QAAA,GAE1BA,QAAQ,EACRE,cAAc,iBACb7B,IAAA,CAACF,8BAA8B;QAC7BoC,KAAK,EAAEK,aAAa,CAACd,OAAQ;QAC7BO,OAAO,EAAED,cAAe;QACxBf,MAAM,EAAEiB,aAAc;QAAAN,QAAA,EAErBE;MAAc,CACe,CACjC;IAAA,CAC4B,CAAC;EAEpC;AACF;AAEA,MAAMtB,MAAM,GAAGX,UAAU,CAAC4C,MAAM,CAAC;EAC/BhC,MAAM,EAAE;IACNiC,QAAQ,EAAE,UAAU;IACpBC,aAAa,EAAE;EACjB;AACF,CAAC,CAAC;AAEF,MAAMH,aAAa,GAAG3C,UAAU,CAAC4C,MAAM,CAAC;EACtCf,OAAO,EAAE;IACPgB,QAAQ,EAAE,UAAU;IACpBC,aAAa,EAAE;EACjB;AACF,CAAC,CAAC","ignoreList":[]}
|
|
@@ -1,9 +1,33 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import { useCallback, useEffect, useRef } from 'react';
|
|
4
|
-
import { AdvancedMarker } from '@vis.gl/react-google-maps';
|
|
3
|
+
import React, { isValidElement, useCallback, useEffect, useRef, useState } from 'react';
|
|
4
|
+
import { AdvancedMarker, InfoWindow, useAdvancedMarkerRef } from '@vis.gl/react-google-maps';
|
|
5
5
|
import { useMapContext } from "../MapProvider.web.js";
|
|
6
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
6
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
7
|
+
const CALLOUT_ARROW_HEIGHT = 12;
|
|
8
|
+
const UNBUBBLED_CLASS = 'rnm-callout-unbubbled';
|
|
9
|
+
const UNBUBBLED_STYLE_ID = 'rnm-callout-unbubbled-style';
|
|
10
|
+
function injectUnbubbledStyle() {
|
|
11
|
+
if (document.getElementById(UNBUBBLED_STYLE_ID)) return;
|
|
12
|
+
const style = document.createElement('style');
|
|
13
|
+
style.id = UNBUBBLED_STYLE_ID;
|
|
14
|
+
style.textContent = `
|
|
15
|
+
.gm-style-iw-c:has(.${UNBUBBLED_CLASS}) {
|
|
16
|
+
background: transparent !important;
|
|
17
|
+
box-shadow: none !important;
|
|
18
|
+
padding: 0 !important;
|
|
19
|
+
border-radius: 0 !important;
|
|
20
|
+
}
|
|
21
|
+
.gm-style-iw-d:has(.${UNBUBBLED_CLASS}) {
|
|
22
|
+
overflow: visible !important;
|
|
23
|
+
}
|
|
24
|
+
.gm-style-iw-t:has(.${UNBUBBLED_CLASS})::after,
|
|
25
|
+
.gm-style-iw-t:has(.${UNBUBBLED_CLASS}) .gm-style-iw-tc {
|
|
26
|
+
display: none !important;
|
|
27
|
+
}
|
|
28
|
+
`;
|
|
29
|
+
document.head.appendChild(style);
|
|
30
|
+
}
|
|
7
31
|
const toWebAnchor = value => `-${value * 100}%`;
|
|
8
32
|
const createEvent = (e, coordinate) => ({
|
|
9
33
|
nativeEvent: {
|
|
@@ -20,6 +44,7 @@ const createEvent = (e, coordinate) => ({
|
|
|
20
44
|
export const Marker = ({
|
|
21
45
|
coordinate,
|
|
22
46
|
title,
|
|
47
|
+
description,
|
|
23
48
|
anchor,
|
|
24
49
|
zIndex,
|
|
25
50
|
rotate,
|
|
@@ -29,12 +54,34 @@ export const Marker = ({
|
|
|
29
54
|
onDragStart,
|
|
30
55
|
onDragChange,
|
|
31
56
|
onDragEnd,
|
|
57
|
+
callout,
|
|
58
|
+
calloutOptions,
|
|
32
59
|
children
|
|
33
60
|
}) => {
|
|
34
61
|
const {
|
|
35
|
-
moveCamera
|
|
62
|
+
moveCamera,
|
|
63
|
+
onCalloutClose,
|
|
64
|
+
closeCallouts
|
|
36
65
|
} = useMapContext();
|
|
37
66
|
const dragPositionRef = useRef(null);
|
|
67
|
+
const [markerRef, markerElement] = useAdvancedMarkerRef();
|
|
68
|
+
const [infoWindowOpen, setInfoWindowOpen] = useState(false);
|
|
69
|
+
const calloutBubbled = calloutOptions?.bubbled ?? true;
|
|
70
|
+
const closeCallout = useCallback(() => setInfoWindowOpen(false), []);
|
|
71
|
+
useEffect(() => onCalloutClose(closeCallout), [onCalloutClose, closeCallout]);
|
|
72
|
+
useEffect(() => {
|
|
73
|
+
if (!calloutBubbled) injectUnbubbledStyle();
|
|
74
|
+
}, [calloutBubbled]);
|
|
75
|
+
const hasCallout = !!(callout || title);
|
|
76
|
+
const calloutContent = callout ? /*#__PURE__*/isValidElement(callout) ? callout : /*#__PURE__*/React.createElement(callout) : title ? /*#__PURE__*/React.createElement('div', {
|
|
77
|
+
style: {
|
|
78
|
+
fontSize: 14
|
|
79
|
+
}
|
|
80
|
+
}, /*#__PURE__*/React.createElement('div', {
|
|
81
|
+
style: {
|
|
82
|
+
fontWeight: 500
|
|
83
|
+
}
|
|
84
|
+
}, title), description ? /*#__PURE__*/React.createElement('div', null, description) : null) : null;
|
|
38
85
|
const transforms = [];
|
|
39
86
|
if (rotate) transforms.push(`rotate(${rotate}deg)`);
|
|
40
87
|
if (scale && scale !== 1) transforms.push(`scale(${scale})`);
|
|
@@ -46,7 +93,11 @@ export const Marker = ({
|
|
|
46
93
|
} : coordinate;
|
|
47
94
|
moveCamera(coord);
|
|
48
95
|
onPress?.(createEvent(e, coordinate));
|
|
49
|
-
|
|
96
|
+
if (hasCallout) {
|
|
97
|
+
closeCallouts(closeCallout);
|
|
98
|
+
setInfoWindowOpen(prev => !prev);
|
|
99
|
+
}
|
|
100
|
+
}, [moveCamera, onPress, coordinate, hasCallout, closeCallouts, closeCallout]);
|
|
50
101
|
const handleDragStart = useCallback(e => {
|
|
51
102
|
const latLng = e.latLng;
|
|
52
103
|
if (latLng) {
|
|
@@ -80,26 +131,39 @@ export const Marker = ({
|
|
|
80
131
|
useEffect(() => {
|
|
81
132
|
dragPositionRef.current = null;
|
|
82
133
|
}, [coordinate.latitude, coordinate.longitude]);
|
|
83
|
-
const
|
|
134
|
+
const latLngPosition = {
|
|
84
135
|
lat: coordinate.latitude,
|
|
85
136
|
lng: coordinate.longitude
|
|
86
137
|
};
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
138
|
+
const position = dragPositionRef.current ?? latLngPosition;
|
|
139
|
+
return /*#__PURE__*/_jsxs(_Fragment, {
|
|
140
|
+
children: [/*#__PURE__*/_jsx(AdvancedMarker, {
|
|
141
|
+
ref: markerRef,
|
|
142
|
+
position: position,
|
|
143
|
+
title: title,
|
|
144
|
+
zIndex: zIndex,
|
|
145
|
+
anchorLeft: anchor ? toWebAnchor(anchor.x) : undefined,
|
|
146
|
+
anchorTop: anchor ? toWebAnchor(anchor.y) : undefined,
|
|
147
|
+
clickable: true,
|
|
148
|
+
draggable: draggable,
|
|
149
|
+
onClick: handleClick,
|
|
150
|
+
onDragStart: handleDragStart,
|
|
151
|
+
onDrag: handleDrag,
|
|
152
|
+
onDragEnd: handleDragEnd,
|
|
153
|
+
style: transforms.length > 0 ? {
|
|
154
|
+
transform: transforms.join(' ')
|
|
155
|
+
} : undefined,
|
|
156
|
+
children: children
|
|
157
|
+
}), calloutContent && infoWindowOpen && markerElement && /*#__PURE__*/_jsx(InfoWindow, {
|
|
158
|
+
anchor: markerElement,
|
|
159
|
+
pixelOffset: !calloutBubbled ? [0, CALLOUT_ARROW_HEIGHT] : undefined,
|
|
160
|
+
headerDisabled: true,
|
|
161
|
+
onClose: () => setInfoWindowOpen(false),
|
|
162
|
+
children: !calloutBubbled ? /*#__PURE__*/_jsx("div", {
|
|
163
|
+
className: UNBUBBLED_CLASS,
|
|
164
|
+
children: calloutContent
|
|
165
|
+
}) : calloutContent
|
|
166
|
+
})]
|
|
103
167
|
});
|
|
104
168
|
};
|
|
105
169
|
//# sourceMappingURL=Marker.web.js.map
|