react-native-maps 1.21.0-alpha.14 → 1.21.0-alpha.141
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/android/build.gradle +73 -53
- package/android/gradlew +1 -2
- package/android/src/main/RCTAppDependencyProvider.h +25 -0
- package/android/src/main/RCTAppDependencyProvider.mm +55 -0
- package/android/src/main/RCTModulesConformingToProtocolsProvider.h +18 -0
- package/android/src/main/RCTModulesConformingToProtocolsProvider.mm +33 -0
- package/android/src/main/RCTThirdPartyComponentsProvider.h +16 -0
- package/android/src/main/RCTThirdPartyComponentsProvider.mm +28 -0
- package/android/src/main/ReactAppDependencyProvider.podspec +34 -0
- package/android/src/main/java/com/facebook/fbreact/specs/NativeAirMapsModuleSpec.java +63 -0
- package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsCalloutManagerDelegate.java +35 -0
- package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsCalloutManagerInterface.java +17 -0
- package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsCircleManagerDelegate.java +49 -0
- package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsCircleManagerInterface.java +23 -0
- package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsGooglePolygonManagerDelegate.java +49 -0
- package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsGooglePolygonManagerInterface.java +23 -0
- package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsMapViewManagerDelegate.java +209 -0
- package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsMapViewManagerInterface.java +74 -0
- package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsMarkerManagerDelegate.java +104 -0
- package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsMarkerManagerInterface.java +39 -0
- package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsOverlayManagerDelegate.java +45 -0
- package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsOverlayManagerInterface.java +22 -0
- package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsPolylineManagerDelegate.java +58 -0
- package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsPolylineManagerInterface.java +26 -0
- package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsUrlTileManagerDelegate.java +62 -0
- package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsUrlTileManagerInterface.java +27 -0
- package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsWMSTileManagerDelegate.java +56 -0
- package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsWMSTileManagerInterface.java +25 -0
- package/android/src/main/java/com/rnmaps/fabric/CalloutManager.java +77 -0
- package/android/src/main/java/com/rnmaps/fabric/CircleManager.java +94 -0
- package/android/src/main/java/com/rnmaps/fabric/JSONUtil.java +86 -0
- package/android/src/main/java/com/rnmaps/fabric/MapViewManager.java +624 -0
- package/android/src/main/java/com/rnmaps/fabric/MarkerManager.java +258 -0
- package/android/src/main/java/com/rnmaps/fabric/NativeAirMapsModule.java +235 -2
- package/android/src/main/java/com/rnmaps/fabric/OverlayManager.java +101 -0
- package/android/src/main/java/com/rnmaps/fabric/PolygonManager.java +89 -0
- package/android/src/main/java/com/rnmaps/fabric/PolylineManager.java +121 -0
- package/android/src/main/java/com/rnmaps/fabric/UrlTileManager.java +124 -0
- package/android/src/main/java/com/rnmaps/fabric/WMSTileManager.java +114 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnCalloutPressEvent.java +25 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnDeselectEvent.java +28 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnDoublePressEvent.java +27 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnDragEndEvent.java +28 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnDragEvent.java +28 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnDragStartEvent.java +28 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnIndoorBuildingFocusedEvent.java +28 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnIndoorLevelActivatedEvent.java +28 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnKmlReadyEvent.java +28 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnLongPressEvent.java +28 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnMapLoadedEvent.java +29 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnMapReadyEvent.java +29 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnMarkerDeselectEvent.java +28 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnMarkerDragEndEvent.java +28 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnMarkerDragEvent.java +28 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnMarkerDragStartEvent.java +28 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnMarkerPressEvent.java +28 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnMarkerSelectEvent.java +28 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnPanDragEvent.java +28 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnPoiClickEvent.java +27 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnPressEvent.java +27 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnRegionChangeCompleteEvent.java +30 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnRegionChangeEvent.java +48 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnRegionChangeStartEvent.java +33 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnSelectEvent.java +28 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnUserLocationChangeEvent.java +28 -0
- package/android/src/main/java/com/rnmaps/maps/MapAirModulePackage.java +55 -3
- package/android/src/main/java/com/rnmaps/maps/MapCallout.java +18 -0
- package/android/src/main/java/com/rnmaps/maps/MapCircle.java +24 -0
- package/android/src/main/java/com/rnmaps/maps/MapManager.java +14 -14
- package/android/src/main/java/com/rnmaps/maps/MapMarker.java +637 -556
- package/android/src/main/java/com/rnmaps/maps/MapMarkerManager.java +3 -3
- package/android/src/main/java/com/rnmaps/maps/MapModule.java +206 -206
- package/android/src/main/java/com/rnmaps/maps/MapOverlay.java +247 -151
- package/android/src/main/java/com/rnmaps/maps/MapOverlayManager.java +23 -1
- package/android/src/main/java/com/rnmaps/maps/MapPolygon.java +31 -1
- package/android/src/main/java/com/rnmaps/maps/MapPolyline.java +207 -141
- package/android/src/main/java/com/rnmaps/maps/MapPolylineManager.java +1 -16
- package/android/src/main/java/com/rnmaps/maps/MapUrlTile.java +18 -18
- package/android/src/main/java/com/rnmaps/maps/MapUrlTileManager.java +10 -14
- package/android/src/main/java/com/rnmaps/maps/MapView.java +1649 -1336
- package/android/src/main/java/com/rnmaps/maps/MapWMSTile.java +3 -3
- package/android/src/main/java/com/rnmaps/maps/MapWMSTileManager.java +10 -10
- package/android/src/main/jni/CMakeLists.txt +36 -0
- package/android/src/main/jni/RNMapsSpecs-generated.cpp +68 -0
- package/android/src/main/jni/RNMapsSpecs.h +31 -0
- package/android/src/main/jni/react/renderer/components/RNMapsSpecs/ComponentDescriptors.cpp +31 -0
- package/android/src/main/jni/react/renderer/components/RNMapsSpecs/ComponentDescriptors.h +33 -0
- package/android/src/main/jni/react/renderer/components/RNMapsSpecs/EventEmitters.cpp +979 -0
- package/android/src/main/jni/react/renderer/components/RNMapsSpecs/EventEmitters.h +860 -0
- package/android/src/main/jni/react/renderer/components/RNMapsSpecs/Props.cpp +227 -0
- package/android/src/main/jni/react/renderer/components/RNMapsSpecs/Props.h +1297 -0
- package/android/src/main/jni/react/renderer/components/RNMapsSpecs/RNMapsSpecsJSI-generated.cpp +74 -0
- package/android/src/main/jni/react/renderer/components/RNMapsSpecs/RNMapsSpecsJSI.h +268 -0
- package/android/src/main/jni/react/renderer/components/RNMapsSpecs/ShadowNodes.cpp +26 -0
- package/android/src/main/jni/react/renderer/components/RNMapsSpecs/ShadowNodes.h +131 -0
- package/android/src/main/jni/react/renderer/components/RNMapsSpecs/States.cpp +16 -0
- package/android/src/main/jni/react/renderer/components/RNMapsSpecs/States.h +137 -0
- package/ios/AirGoogleMaps/AIRGoogleMap.h +10 -11
- package/ios/AirGoogleMaps/AIRGoogleMap.m +104 -71
- package/ios/AirGoogleMaps/AIRGoogleMapCircle.m +23 -11
- package/ios/AirGoogleMaps/AIRGoogleMapManager.h +1 -0
- package/ios/AirGoogleMaps/AIRGoogleMapManager.m +254 -250
- package/ios/AirGoogleMaps/AIRGoogleMapMarker.m +6 -3
- package/ios/AirGoogleMaps/AIRGoogleMapMarkerManager.m +1 -1
- package/ios/AirGoogleMaps/AIRGoogleMapPolygon.m +3 -0
- package/ios/AirGoogleMaps/AIRGoogleMapPolyline.h +0 -1
- package/ios/AirGoogleMaps/AIRGoogleMapPolyline.m +0 -7
- package/ios/AirGoogleMaps/AIRGoogleMapUrlTile.m +2 -2
- package/ios/AirGoogleMaps/AIRGoogleMapWMSTile.h +1 -1
- package/ios/AirGoogleMaps/AIRGoogleMapWMSTile.m +4 -4
- package/ios/AirGoogleMaps/RNMapsGoogleMapView.h +1 -1
- package/ios/AirGoogleMaps/RNMapsGoogleMapView.mm +123 -43
- package/ios/AirGoogleMaps/RNMapsGoogleMapViewManager.mm +16 -1
- package/ios/AirGoogleMaps/RNMapsGooglePolygonView.h +26 -0
- package/ios/AirGoogleMaps/RNMapsGooglePolygonView.mm +217 -0
- package/ios/AirGoogleMaps/RNMapsGooglePolygonViewManager.mm +26 -0
- package/ios/AirMaps/AIRMap.h +8 -9
- package/ios/AirMaps/AIRMap.m +222 -239
- package/ios/AirMaps/AIRMapManager.m +10 -7
- package/ios/AirMaps/AIRMapMarker.h +1 -0
- package/ios/AirMaps/AIRMapMarker.m +142 -67
- package/ios/AirMaps/AIRMapOverlay.m +2 -2
- package/ios/AirMaps/Callout/SMCalloutView.m +1 -1
- package/ios/AirMaps/FabricPlaceholders/PlaceHolderGoogleMapView.h +28 -0
- package/ios/AirMaps/FabricPlaceholders/PlaceHolderGoogleMapView.mm +68 -0
- package/ios/AirMaps/FabricPlaceholders/PlaceHolderPolygonView.h +25 -0
- package/ios/AirMaps/FabricPlaceholders/PlaceHolderPolygonView.mm +43 -0
- package/ios/AirMaps/RNMapsAirModule.h +1 -1
- package/ios/AirMaps/RNMapsAirModule.mm +4 -3
- package/ios/AirMaps/RNMapsDefines.h +1 -0
- package/ios/AirMaps/RNMapsMapView.h +1 -1
- package/ios/AirMaps/RNMapsMapView.mm +119 -95
- package/ios/AirMaps/RNMapsMapViewManager.mm +19 -1
- package/ios/AirMaps/RNMapsMarkerView.h +24 -0
- package/ios/AirMaps/RNMapsMarkerView.mm +430 -0
- package/ios/AirMaps/RNMapsMarkerViewManager.mm +28 -0
- package/ios/AirMaps.xcodeproj/project.pbxproj +20 -0
- package/ios/generated/RCTAppDependencyProvider.h +25 -0
- package/ios/generated/RCTAppDependencyProvider.mm +55 -0
- package/ios/generated/RCTModulesConformingToProtocolsProvider.h +18 -0
- package/ios/generated/RCTModulesConformingToProtocolsProvider.mm +33 -0
- package/ios/generated/RCTThirdPartyComponentsProvider.h +16 -0
- package/ios/generated/RCTThirdPartyComponentsProvider.mm +26 -0
- package/ios/{AirMaps → generated}/RNMapsAirModuleDelegate.h +2 -2
- package/ios/generated/RNMapsSpecs/ComponentDescriptors.cpp +29 -0
- package/ios/generated/RNMapsSpecs/ComponentDescriptors.h +31 -0
- package/ios/generated/RNMapsSpecs/EventEmitters.cpp +977 -0
- package/ios/generated/RNMapsSpecs/EventEmitters.h +846 -0
- package/ios/generated/RNMapsSpecs/Props.cpp +194 -0
- package/ios/generated/RNMapsSpecs/Props.h +1224 -0
- package/ios/generated/RNMapsSpecs/RCTComponentViewHelpers.h +591 -0
- package/ios/generated/RNMapsSpecs/RNMapsSpecs-generated.mm +92 -0
- package/ios/generated/RNMapsSpecs/RNMapsSpecs.h +137 -0
- package/ios/generated/RNMapsSpecs/ShadowNodes.cpp +24 -0
- package/ios/generated/RNMapsSpecs/ShadowNodes.h +109 -0
- package/ios/generated/RNMapsSpecs/States.cpp +16 -0
- package/ios/generated/RNMapsSpecs/States.h +113 -0
- package/ios/generated/RNMapsSpecsJSI-generated.cpp +74 -0
- package/ios/generated/RNMapsSpecsJSI.h +268 -0
- package/ios/generated/ReactAppDependencyProvider.podspec +34 -0
- package/package.json +26 -19
- package/react-native-google-maps.podspec +26 -0
- package/react-native-maps-generated.podspec +31 -0
- package/react-native-maps.podspec +55 -15
- package/react-native.config.js +16 -0
- package/src/AnimatedRegion.ts +169 -0
- package/src/Geojson.tsx +541 -0
- package/src/MapCallout.tsx +77 -0
- package/src/MapCalloutSubview.tsx +64 -0
- package/src/MapCircle.tsx +162 -0
- package/src/MapHeatmap.tsx +125 -0
- package/src/MapLocalTile.tsx +60 -0
- package/src/MapMarker.tsx +531 -0
- package/src/MapMarkerNativeComponent.ts +51 -0
- package/src/MapOverlay.tsx +178 -0
- package/src/MapPolygon.tsx +188 -0
- package/src/MapPolygon.types.ts +25 -0
- package/src/MapPolyline.tsx +215 -0
- package/src/MapUrlTile.tsx +169 -0
- package/src/MapView.tsx +1230 -0
- package/src/MapView.types.ts +212 -0
- package/src/MapView.web.ts +2 -0
- package/src/MapViewNativeComponent.ts +86 -0
- package/src/MapWMSTile.tsx +148 -0
- package/src/ProviderConstants.ts +2 -0
- package/src/createFabricMap.tsx +253 -0
- package/src/decorateMapComponent.ts +227 -0
- package/src/fixImageProp.ts +17 -0
- package/src/index.ts +52 -0
- package/src/sharedTypes.ts +101 -0
- package/src/specs/NativeAirMapsModule.ts +36 -0
- package/src/specs/NativeComponentCallout.ts +63 -0
- package/src/specs/NativeComponentCircle.ts +93 -0
- package/src/specs/NativeComponentGoogleMapView.ts +922 -0
- package/src/specs/NativeComponentGooglePolygon.ts +94 -0
- package/src/specs/NativeComponentMapView.ts +1100 -0
- package/src/specs/NativeComponentMarker.ts +326 -0
- package/src/specs/NativeComponentOverlay.ts +98 -0
- package/src/specs/NativeComponentPolyline.ts +124 -0
- package/src/specs/NativeComponentUrlTile.ts +128 -0
- package/src/specs/NativeComponentWMSTile.ts +107 -0
- package/lib/AnimatedRegion.d.ts +0 -19
- package/lib/AnimatedRegion.js +0 -134
- package/lib/Geojson.d.ts +0 -204
- package/lib/Geojson.js +0 -166
- package/lib/MapCallout.d.ts +0 -40
- package/lib/MapCallout.js +0 -51
- package/lib/MapCalloutSubview.d.ts +0 -34
- package/lib/MapCalloutSubview.js +0 -48
- package/lib/MapCircle.d.ts +0 -117
- package/lib/MapCircle.js +0 -53
- package/lib/MapHeatmap.d.ts +0 -78
- package/lib/MapHeatmap.js +0 -59
- package/lib/MapLocalTile.d.ts +0 -35
- package/lib/MapLocalTile.js +0 -44
- package/lib/MapMarker.d.ts +0 -309
- package/lib/MapMarker.js +0 -116
- package/lib/MapMarkerNativeComponent.d.ts +0 -15
- package/lib/MapMarkerNativeComponent.js +0 -17
- package/lib/MapOverlay.d.ts +0 -87
- package/lib/MapOverlay.js +0 -63
- package/lib/MapPolygon.d.ts +0 -140
- package/lib/MapPolygon.js +0 -53
- package/lib/MapPolygon.types.d.ts +0 -18
- package/lib/MapPolygon.types.js +0 -2
- package/lib/MapPolyline.d.ts +0 -156
- package/lib/MapPolyline.js +0 -53
- package/lib/MapUrlTile.d.ts +0 -134
- package/lib/MapUrlTile.js +0 -44
- package/lib/MapView.d.ts +0 -715
- package/lib/MapView.js +0 -447
- package/lib/MapView.types.d.ts +0 -161
- package/lib/MapView.types.js +0 -2
- package/lib/MapView.web.d.ts +0 -1
- package/lib/MapView.web.js +0 -9
- package/lib/MapViewNativeComponent.d.ts +0 -18
- package/lib/MapViewNativeComponent.js +0 -19
- package/lib/MapWMSTile.d.ts +0 -116
- package/lib/MapWMSTile.js +0 -44
- package/lib/ProviderConstants.d.ts +0 -2
- package/lib/ProviderConstants.js +0 -5
- package/lib/createFabricMap.d.ts +0 -23
- package/lib/createFabricMap.js +0 -175
- package/lib/decorateMapComponent.d.ts +0 -36
- package/lib/decorateMapComponent.js +0 -80
- package/lib/index.d.ts +0 -38
- package/lib/index.js +0 -81
- package/lib/sharedTypes.d.ts +0 -81
- package/lib/sharedTypes.js +0 -2
- package/lib/sharedTypesInternal.js +0 -2
- package/lib/specs/NativeAirMapsModule.d.ts +0 -31
- package/lib/specs/NativeAirMapsModule.js +0 -4
- package/lib/specs/NativeComponentGoogleMapView.d.ts +0 -713
- package/lib/specs/NativeComponentGoogleMapView.js +0 -21
- package/lib/specs/NativeComponentMapView.d.ts +0 -855
- package/lib/specs/NativeComponentMapView.js +0 -21
- /package/ios/{AirMaps → generated}/RNMapsHostVewDelegate.h +0 -0
- /package/{lib/sharedTypesInternal.d.ts → src/sharedTypesInternal.ts} +0 -0
|
@@ -30,7 +30,7 @@ static NSString *const RCTMapViewKey = @"MapView";
|
|
|
30
30
|
|
|
31
31
|
@interface AIRGoogleMapManager() <GMSMapViewDelegate>
|
|
32
32
|
{
|
|
33
|
-
|
|
33
|
+
BOOL didCallOnMapReady;
|
|
34
34
|
}
|
|
35
35
|
@end
|
|
36
36
|
|
|
@@ -40,37 +40,40 @@ RCT_EXPORT_MODULE()
|
|
|
40
40
|
|
|
41
41
|
- (UIView *)view
|
|
42
42
|
{
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
43
|
+
|
|
44
|
+
if (self.initialProps){
|
|
45
|
+
if (self.initialProps[@"googleMapId"]){
|
|
46
|
+
_googleMapId = self.initialProps[@"googleMapId"];
|
|
47
|
+
}
|
|
48
|
+
if (self.initialProps[@"zoomTapEnabled"]){
|
|
49
|
+
_zoomTapEnabled = self.initialProps[@"zoomTapEnabled"];
|
|
50
|
+
}
|
|
51
|
+
if (self.initialProps[@"loadingBackgroundColor"]){
|
|
52
|
+
_backgroundColor = [RCTConvert UIColor:self.initialProps[@"loadingBackgroundColor"]];
|
|
53
|
+
}
|
|
54
|
+
if (self.initialProps[@"initialCamera"]){
|
|
55
|
+
_camera = [RCTConvert GMSCameraPositionWithDefaults:self.initialProps[@"initialCamera"] existingCamera:nil];
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
AIRGoogleMap *map = [[AIRGoogleMap alloc] initWithMapId:self.googleMapId initialCamera:self.camera backgroundColor:self.backgroundColor andZoomTapEnabled:self.zoomTapEnabled];
|
|
59
|
+
map.bridge = self.bridge;
|
|
60
|
+
map.delegate = self;
|
|
61
|
+
map.isAccessibilityElement = NO;
|
|
62
|
+
map.accessibilityElementsHidden = NO;
|
|
63
|
+
map.settings.consumesGesturesInView = NO;
|
|
64
|
+
if (self.customMapStyle != nil){
|
|
65
|
+
map.customMapStyleString = self.customMapStyle;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
UIPanGestureRecognizer *drag = [[UIPanGestureRecognizer alloc] initWithTarget:self action:@selector(handleMapDrag:)];
|
|
69
|
+
[drag setMinimumNumberOfTouches:1];
|
|
70
|
+
[drag setMaximumNumberOfTouches:1];
|
|
71
|
+
[map addGestureRecognizer:drag];
|
|
72
|
+
|
|
73
|
+
UIPinchGestureRecognizer *pinch = [[UIPinchGestureRecognizer alloc] initWithTarget:self action:@selector(handleMapDrag:)];
|
|
74
|
+
[map addGestureRecognizer:pinch];
|
|
75
|
+
|
|
76
|
+
return map;
|
|
74
77
|
}
|
|
75
78
|
|
|
76
79
|
RCT_EXPORT_VIEW_PROPERTY(isAccessibilityElement, BOOL)
|
|
@@ -97,14 +100,13 @@ RCT_EXPORT_VIEW_PROPERTY(showsIndoorLevelPicker, BOOL)
|
|
|
97
100
|
RCT_EXPORT_VIEW_PROPERTY(customMapStyleString, NSString)
|
|
98
101
|
RCT_EXPORT_VIEW_PROPERTY(mapPadding, UIEdgeInsets)
|
|
99
102
|
RCT_REMAP_VIEW_PROPERTY(paddingAdjustmentBehavior, paddingAdjustmentBehaviorString, NSString)
|
|
100
|
-
RCT_EXPORT_VIEW_PROPERTY(onMapReady,
|
|
101
|
-
RCT_EXPORT_VIEW_PROPERTY(onMapLoaded,
|
|
102
|
-
RCT_EXPORT_VIEW_PROPERTY(onKmlReady,
|
|
103
|
+
RCT_EXPORT_VIEW_PROPERTY(onMapReady, RCTDirectEventBlock)
|
|
104
|
+
RCT_EXPORT_VIEW_PROPERTY(onMapLoaded, RCTDirectEventBlock)
|
|
105
|
+
RCT_EXPORT_VIEW_PROPERTY(onKmlReady, RCTDirectEventBlock)
|
|
103
106
|
RCT_EXPORT_VIEW_PROPERTY(onPress, RCTBubblingEventBlock)
|
|
104
107
|
RCT_EXPORT_VIEW_PROPERTY(onLongPress, RCTBubblingEventBlock)
|
|
105
|
-
RCT_EXPORT_VIEW_PROPERTY(onPanDrag,
|
|
106
|
-
RCT_EXPORT_VIEW_PROPERTY(onUserLocationChange,
|
|
107
|
-
RCT_EXPORT_VIEW_PROPERTY(onChange, RCTBubblingEventBlock)
|
|
108
|
+
RCT_EXPORT_VIEW_PROPERTY(onPanDrag, RCTDirectEventBlock)
|
|
109
|
+
RCT_EXPORT_VIEW_PROPERTY(onUserLocationChange, RCTDirectEventBlock)
|
|
108
110
|
RCT_EXPORT_VIEW_PROPERTY(onMarkerPress, RCTDirectEventBlock)
|
|
109
111
|
RCT_EXPORT_VIEW_PROPERTY(onMarkerSelect, RCTDirectEventBlock)
|
|
110
112
|
RCT_EXPORT_VIEW_PROPERTY(onMarkerDeselect, RCTDirectEventBlock)
|
|
@@ -131,14 +133,14 @@ RCT_EXPORT_METHOD(getCamera:(nonnull NSNumber *)reactTag
|
|
|
131
133
|
} else {
|
|
132
134
|
AIRGoogleMap *mapView = (AIRGoogleMap *)view;
|
|
133
135
|
resolve(@{
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
136
|
+
@"center": @{
|
|
137
|
+
@"latitude": @(mapView.camera.target.latitude),
|
|
138
|
+
@"longitude": @(mapView.camera.target.longitude),
|
|
139
|
+
},
|
|
140
|
+
@"pitch": @(mapView.camera.viewingAngle),
|
|
141
|
+
@"heading": @(mapView.camera.bearing),
|
|
142
|
+
@"zoom": @(mapView.camera.zoom),
|
|
143
|
+
});
|
|
142
144
|
}
|
|
143
145
|
}];
|
|
144
146
|
}
|
|
@@ -182,36 +184,36 @@ RCT_EXPORT_METHOD(animateToRegion:(nonnull NSNumber *)reactTag
|
|
|
182
184
|
withRegion:(MKCoordinateRegion)region
|
|
183
185
|
withDuration:(CGFloat)duration)
|
|
184
186
|
{
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
187
|
+
[self.bridge.uiManager addUIBlock:^(__unused RCTUIManager *uiManager, NSDictionary<NSNumber *, UIView *> *viewRegistry) {
|
|
188
|
+
id view = viewRegistry[reactTag];
|
|
189
|
+
if (![view isKindOfClass:[AIRGoogleMap class]]) {
|
|
190
|
+
RCTLogError(@"Invalid view returned from registry, expecting AIRGoogleMap, got: %@", view);
|
|
191
|
+
} else {
|
|
192
|
+
// Core Animation must be used to control the animation's duration
|
|
193
|
+
// See http://stackoverflow.com/a/15663039/171744
|
|
194
|
+
[CATransaction begin];
|
|
195
|
+
[CATransaction setAnimationDuration:duration/1000];
|
|
196
|
+
AIRGoogleMap *mapView = (AIRGoogleMap *)view;
|
|
197
|
+
GMSCameraPosition *camera = [AIRGoogleMap makeGMSCameraPositionFromMap:mapView andMKCoordinateRegion:region];
|
|
198
|
+
[mapView animateToCameraPosition:camera];
|
|
199
|
+
[CATransaction commit];
|
|
200
|
+
}
|
|
201
|
+
}];
|
|
200
202
|
}
|
|
201
203
|
|
|
202
204
|
RCT_EXPORT_METHOD(fitToElements:(nonnull NSNumber *)reactTag
|
|
203
205
|
edgePadding:(nonnull NSDictionary *)edgePadding
|
|
204
206
|
animated:(BOOL)animated)
|
|
205
207
|
{
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
208
|
+
[self.bridge.uiManager addUIBlock:^(__unused RCTUIManager *uiManager, NSDictionary<NSNumber *, UIView *> *viewRegistry) {
|
|
209
|
+
id view = viewRegistry[reactTag];
|
|
210
|
+
if (![view isKindOfClass:[AIRGoogleMap class]]) {
|
|
211
|
+
RCTLogError(@"Invalid view returned from registry, expecting AIRGoogleMap, got: %@", view);
|
|
212
|
+
} else {
|
|
213
|
+
AIRGoogleMap *mapView = (AIRGoogleMap *)view;
|
|
214
|
+
[mapView fitToElementsWithEdgePadding:edgePadding animated:animated];
|
|
215
|
+
}
|
|
216
|
+
}];
|
|
215
217
|
}
|
|
216
218
|
|
|
217
219
|
RCT_EXPORT_METHOD(fitToSuppliedMarkers:(nonnull NSNumber *)reactTag
|
|
@@ -219,15 +221,15 @@ RCT_EXPORT_METHOD(fitToSuppliedMarkers:(nonnull NSNumber *)reactTag
|
|
|
219
221
|
edgePadding:(nonnull NSDictionary *)edgePadding
|
|
220
222
|
animated:(BOOL)animated)
|
|
221
223
|
{
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
224
|
+
[self.bridge.uiManager addUIBlock:^(__unused RCTUIManager *uiManager, NSDictionary<NSNumber *, UIView *> *viewRegistry) {
|
|
225
|
+
id view = viewRegistry[reactTag];
|
|
226
|
+
if (![view isKindOfClass:[AIRGoogleMap class]]) {
|
|
227
|
+
RCTLogError(@"Invalid view returned from registry, expecting AIRGoogleMap, got: %@", view);
|
|
228
|
+
} else {
|
|
229
|
+
AIRGoogleMap *mapView = (AIRGoogleMap *)view;
|
|
230
|
+
[mapView fitToSuppliedMarkers:markers withEdgePadding:edgePadding animated:animated];
|
|
231
|
+
}
|
|
232
|
+
}];
|
|
231
233
|
}
|
|
232
234
|
|
|
233
235
|
RCT_EXPORT_METHOD(fitToCoordinates:(nonnull NSNumber *)reactTag
|
|
@@ -235,15 +237,15 @@ RCT_EXPORT_METHOD(fitToCoordinates:(nonnull NSNumber *)reactTag
|
|
|
235
237
|
edgePadding:(nonnull NSDictionary *)edgePadding
|
|
236
238
|
animated:(BOOL)animated)
|
|
237
239
|
{
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
240
|
+
[self.bridge.uiManager addUIBlock:^(__unused RCTUIManager *uiManager, NSDictionary<NSNumber *, UIView *> *viewRegistry) {
|
|
241
|
+
id view = viewRegistry[reactTag];
|
|
242
|
+
if (![view isKindOfClass:[AIRGoogleMap class]]) {
|
|
243
|
+
RCTLogError(@"Invalid view returned from registry, expecting AIRGoogleMap, got: %@", view);
|
|
244
|
+
} else {
|
|
245
|
+
AIRGoogleMap *mapView = (AIRGoogleMap *)view;
|
|
246
|
+
[mapView fitToCoordinates:coordinates withEdgePadding:edgePadding animated:animated];
|
|
247
|
+
}
|
|
248
|
+
}];
|
|
247
249
|
}
|
|
248
250
|
|
|
249
251
|
RCT_EXPORT_METHOD(takeSnapshot:(nonnull NSNumber *)reactTag
|
|
@@ -255,52 +257,54 @@ RCT_EXPORT_METHOD(takeSnapshot:(nonnull NSNumber *)reactTag
|
|
|
255
257
|
result:(nonnull NSString *)result
|
|
256
258
|
withCallback:(RCTPromiseResolveBlock)callback)
|
|
257
259
|
{
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
260
|
+
NSTimeInterval timeStamp = [[NSDate date] timeIntervalSince1970];
|
|
261
|
+
NSString *pathComponent = [NSString stringWithFormat:@"Documents/snapshot-%.20lf.%@", timeStamp, format];
|
|
262
|
+
NSString *filePath = [NSHomeDirectory() stringByAppendingPathComponent: pathComponent];
|
|
263
|
+
|
|
264
|
+
[self.bridge.uiManager addUIBlock:^(__unused RCTUIManager *uiManager, NSDictionary<NSNumber *, UIView *> *viewRegistry) {
|
|
265
|
+
id view = viewRegistry[reactTag];
|
|
266
|
+
if (![view isKindOfClass:[AIRGoogleMap class]]) {
|
|
267
|
+
RCTLogError(@"Invalid view returned from registry, expecting AIRMap, got: %@", view);
|
|
268
|
+
} else {
|
|
269
|
+
AIRGoogleMap *mapView = (AIRGoogleMap *)view;
|
|
270
|
+
NSMutableDictionary* config = [NSMutableDictionary new];
|
|
271
|
+
|
|
272
|
+
[mapView takeSnapshotWithConfig:config success:callback error:^(NSString *code, NSString *message, NSError *error) {
|
|
273
|
+
callback(@[error]);
|
|
274
|
+
}];
|
|
275
|
+
|
|
276
|
+
[config setObject:width forKey:@"width"];
|
|
277
|
+
[config setObject:height forKey:@"height"];
|
|
278
|
+
[config setObject:format forKey:@"format"];
|
|
279
|
+
[config setObject:quality forKey:@"quality"];
|
|
280
|
+
[config setObject:result forKey:@"result"];
|
|
281
|
+
[config setObject:filePath forKey:@"filePath"];
|
|
282
|
+
|
|
283
|
+
// TODO: currently we are ignoring width, height, region
|
|
284
|
+
|
|
285
|
+
UIGraphicsBeginImageContextWithOptions(mapView.frame.size, YES, 0.0f);
|
|
286
|
+
[mapView.layer renderInContext:UIGraphicsGetCurrentContext()];
|
|
287
|
+
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
|
|
288
|
+
|
|
289
|
+
NSData *data;
|
|
290
|
+
if ([format isEqualToString:@"png"]) {
|
|
291
|
+
data = UIImagePNGRepresentation(image);
|
|
292
|
+
|
|
293
|
+
}
|
|
294
|
+
else if([format isEqualToString:@"jpg"]) {
|
|
295
|
+
data = UIImageJPEGRepresentation(image, quality.floatValue);
|
|
296
|
+
}
|
|
297
|
+
|
|
298
|
+
if ([result isEqualToString:@"file"]) {
|
|
299
|
+
[data writeToFile:filePath atomically:YES];
|
|
300
|
+
callback(@[[NSNull null], filePath]);
|
|
301
|
+
}
|
|
302
|
+
else if ([result isEqualToString:@"base64"]) {
|
|
303
|
+
callback(@[[NSNull null], [data base64EncodedStringWithOptions:NSDataBase64EncodingEndLineWithCarriageReturn]]);
|
|
304
|
+
}
|
|
300
305
|
}
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
}];
|
|
306
|
+
UIGraphicsEndImageContext();
|
|
307
|
+
}];
|
|
304
308
|
}
|
|
305
309
|
|
|
306
310
|
RCT_EXPORT_METHOD(pointForCoordinate:(nonnull NSNumber *)reactTag
|
|
@@ -308,21 +312,21 @@ RCT_EXPORT_METHOD(pointForCoordinate:(nonnull NSNumber *)reactTag
|
|
|
308
312
|
resolver: (RCTPromiseResolveBlock)resolve
|
|
309
313
|
rejecter:(RCTPromiseRejectBlock)reject)
|
|
310
314
|
{
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
315
|
+
CLLocationCoordinate2D coord =
|
|
316
|
+
CLLocationCoordinate2DMake(
|
|
317
|
+
[coordinate[@"latitude"] doubleValue],
|
|
318
|
+
[coordinate[@"longitude"] doubleValue]
|
|
319
|
+
);
|
|
320
|
+
|
|
321
|
+
[self.bridge.uiManager addUIBlock:^(__unused RCTUIManager *uiManager, NSDictionary<NSNumber *, UIView *> *viewRegistry) {
|
|
322
|
+
id view = viewRegistry[reactTag];
|
|
323
|
+
if (![view isKindOfClass:[AIRGoogleMap class]]) {
|
|
324
|
+
RCTLogError(@"Invalid view returned from registry, expecting AIRMap, got: %@", view);
|
|
325
|
+
} else {
|
|
326
|
+
AIRGoogleMap *mapView = (AIRGoogleMap *)view;
|
|
327
|
+
resolve([mapView getPointForCoordinates:coord]);
|
|
328
|
+
}
|
|
329
|
+
}];
|
|
326
330
|
}
|
|
327
331
|
|
|
328
332
|
RCT_EXPORT_METHOD(coordinateForPoint:(nonnull NSNumber *)reactTag
|
|
@@ -330,20 +334,20 @@ RCT_EXPORT_METHOD(coordinateForPoint:(nonnull NSNumber *)reactTag
|
|
|
330
334
|
resolver: (RCTPromiseResolveBlock)resolve
|
|
331
335
|
rejecter:(RCTPromiseRejectBlock)reject)
|
|
332
336
|
{
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
337
|
+
CGPoint pt = CGPointMake(
|
|
338
|
+
[point[@"x"] doubleValue],
|
|
339
|
+
[point[@"y"] doubleValue]
|
|
340
|
+
);
|
|
341
|
+
|
|
342
|
+
[self.bridge.uiManager addUIBlock:^(__unused RCTUIManager *uiManager, NSDictionary<NSNumber *, UIView *> *viewRegistry) {
|
|
343
|
+
id view = viewRegistry[reactTag];
|
|
344
|
+
if (![view isKindOfClass:[AIRGoogleMap class]]) {
|
|
345
|
+
RCTLogError(@"Invalid view returned from registry, expecting AIRMap, got: %@", view);
|
|
346
|
+
} else {
|
|
347
|
+
AIRGoogleMap *mapView = (AIRGoogleMap *)view;
|
|
348
|
+
resolve([view getCoordinatesForPoint:pt]);
|
|
349
|
+
}
|
|
350
|
+
}];
|
|
347
351
|
}
|
|
348
352
|
|
|
349
353
|
RCT_EXPORT_METHOD(getMarkersFrames:(nonnull NSNumber *)reactTag
|
|
@@ -366,140 +370,140 @@ RCT_EXPORT_METHOD(getMapBoundaries:(nonnull NSNumber *)reactTag
|
|
|
366
370
|
resolver:(RCTPromiseResolveBlock)resolve
|
|
367
371
|
rejecter:(RCTPromiseRejectBlock)reject)
|
|
368
372
|
{
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
373
|
+
[self.bridge.uiManager addUIBlock:^(__unused RCTUIManager *uiManager, NSDictionary<NSNumber *, UIView *> *viewRegistry) {
|
|
374
|
+
id view = viewRegistry[reactTag];
|
|
375
|
+
if (![view isKindOfClass:[AIRGoogleMap class]]) {
|
|
376
|
+
RCTLogError(@"Invalid view returned from registry, expecting AIRGoogleMap, got: %@", view);
|
|
377
|
+
} else {
|
|
378
|
+
resolve([view getMapBoundaries]);
|
|
379
|
+
}
|
|
380
|
+
}];
|
|
377
381
|
}
|
|
378
382
|
|
|
379
383
|
RCT_EXPORT_METHOD(setMapBoundaries:(nonnull NSNumber *)reactTag
|
|
380
384
|
northEast:(CLLocationCoordinate2D)northEast
|
|
381
385
|
southWest:(CLLocationCoordinate2D)southWest)
|
|
382
386
|
{
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
387
|
+
[self.bridge.uiManager addUIBlock:^(__unused RCTUIManager *uiManager, NSDictionary<NSNumber *, UIView *> *viewRegistry) {
|
|
388
|
+
id view = viewRegistry[reactTag];
|
|
389
|
+
if (![view isKindOfClass:[AIRGoogleMap class]]) {
|
|
390
|
+
RCTLogError(@"Invalid view returned from registry, expecting AIRGoogleMap, got: %@", view);
|
|
391
|
+
} else {
|
|
392
|
+
AIRGoogleMap *mapView = (AIRGoogleMap *)view;
|
|
393
|
+
|
|
394
|
+
GMSCoordinateBounds *bounds = [[GMSCoordinateBounds alloc] initWithCoordinate:northEast coordinate:southWest];
|
|
395
|
+
|
|
396
|
+
mapView.cameraTargetBounds = bounds;
|
|
397
|
+
}
|
|
398
|
+
}];
|
|
395
399
|
}
|
|
396
400
|
|
|
397
401
|
RCT_EXPORT_METHOD(setIndoorActiveLevelIndex:(nonnull NSNumber *)reactTag
|
|
398
402
|
levelIndex:(NSInteger) levelIndex)
|
|
399
403
|
{
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
404
|
+
[self.bridge.uiManager addUIBlock:^(__unused RCTUIManager *uiManager, NSDictionary<NSNumber *, UIView *> *viewRegistry) {
|
|
405
|
+
id view = viewRegistry[reactTag];
|
|
406
|
+
if (![view isKindOfClass:[AIRGoogleMap class]]) {
|
|
407
|
+
RCTLogError(@"Invalid view returned from registry, expecting AIRGoogleMap, got: %@", view);
|
|
408
|
+
} else {
|
|
409
|
+
AIRGoogleMap *mapView = (AIRGoogleMap *)view;
|
|
410
|
+
if (!mapView.indoorDisplay) {
|
|
411
|
+
return;
|
|
412
|
+
}
|
|
413
|
+
if ( levelIndex < [mapView.indoorDisplay.activeBuilding.levels count]) {
|
|
414
|
+
mapView.indoorDisplay.activeLevel = mapView.indoorDisplay.activeBuilding.levels[levelIndex];
|
|
415
|
+
}
|
|
416
|
+
}
|
|
417
|
+
}];
|
|
418
|
+
}
|
|
415
419
|
|
|
416
420
|
+ (BOOL)requiresMainQueueSetup {
|
|
417
|
-
|
|
421
|
+
return YES;
|
|
418
422
|
}
|
|
419
423
|
|
|
420
424
|
- (NSDictionary *)constantsToExport {
|
|
421
|
-
|
|
425
|
+
return @{ @"legalNotice": [GMSServices openSourceLicenseInfo] };
|
|
422
426
|
}
|
|
423
427
|
|
|
424
428
|
- (void)mapView:(GMSMapView *)mapView willMove:(BOOL)gesture {
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
429
|
+
self.isGesture = gesture;
|
|
430
|
+
AIRGoogleMap *googleMapView = (AIRGoogleMap *)mapView;
|
|
431
|
+
[googleMapView willMove:gesture];
|
|
428
432
|
}
|
|
429
433
|
|
|
430
434
|
- (void)mapViewDidStartTileRendering:(GMSMapView *)mapView {
|
|
431
|
-
|
|
432
|
-
|
|
435
|
+
AIRGoogleMap *googleMapView = (AIRGoogleMap *)mapView;
|
|
436
|
+
[googleMapView didPrepareMap];
|
|
433
437
|
}
|
|
434
438
|
|
|
435
439
|
- (void)mapViewDidFinishTileRendering:(GMSMapView *)mapView {
|
|
436
|
-
|
|
437
|
-
|
|
440
|
+
AIRGoogleMap *googleMapView = (AIRGoogleMap *)mapView;
|
|
441
|
+
[googleMapView mapViewDidFinishTileRendering];
|
|
438
442
|
}
|
|
439
443
|
|
|
440
444
|
- (BOOL)mapView:(GMSMapView *)mapView didTapMarker:(GMSMarker *)marker {
|
|
441
|
-
|
|
442
|
-
|
|
445
|
+
AIRGoogleMap *googleMapView = (AIRGoogleMap *)mapView;
|
|
446
|
+
return [googleMapView didTapMarker:marker];
|
|
443
447
|
}
|
|
444
448
|
|
|
445
449
|
- (void)mapView:(GMSMapView *)mapView didTapOverlay:(GMSPolygon *)polygon {
|
|
446
|
-
|
|
447
|
-
|
|
450
|
+
AIRGoogleMap *googleMapView = (AIRGoogleMap *)mapView;
|
|
451
|
+
[googleMapView didTapPolygon:polygon];
|
|
448
452
|
}
|
|
449
453
|
|
|
450
454
|
- (void)mapView:(GMSMapView *)mapView didTapAtCoordinate:(CLLocationCoordinate2D)coordinate {
|
|
451
|
-
|
|
452
|
-
|
|
455
|
+
AIRGoogleMap *googleMapView = (AIRGoogleMap *)mapView;
|
|
456
|
+
[googleMapView didTapAtCoordinate:coordinate];
|
|
453
457
|
}
|
|
454
458
|
|
|
455
459
|
- (void)mapView:(GMSMapView *)mapView didLongPressAtCoordinate:(CLLocationCoordinate2D)coordinate {
|
|
456
|
-
|
|
457
|
-
|
|
460
|
+
AIRGoogleMap *googleMapView = (AIRGoogleMap *)mapView;
|
|
461
|
+
[googleMapView didLongPressAtCoordinate:coordinate];
|
|
458
462
|
}
|
|
459
463
|
|
|
460
464
|
- (void)mapView:(GMSMapView *)mapView didChangeCameraPosition:(GMSCameraPosition *)position {
|
|
461
|
-
|
|
462
|
-
|
|
465
|
+
AIRGoogleMap *googleMapView = (AIRGoogleMap *)mapView;
|
|
466
|
+
[googleMapView didChangeCameraPosition:position isGesture:self.isGesture];
|
|
463
467
|
}
|
|
464
468
|
|
|
465
469
|
- (void)mapView:(GMSMapView *)mapView idleAtCameraPosition:(GMSCameraPosition *)position {
|
|
466
|
-
|
|
467
|
-
|
|
470
|
+
AIRGoogleMap *googleMapView = (AIRGoogleMap *)mapView;
|
|
471
|
+
[googleMapView idleAtCameraPosition:position isGesture:self.isGesture];
|
|
468
472
|
}
|
|
469
473
|
|
|
470
474
|
- (UIView *)mapView:(GMSMapView *)mapView markerInfoWindow:(GMSMarker *)marker {
|
|
471
|
-
|
|
472
|
-
|
|
475
|
+
AIRGMSMarker *aMarker = (AIRGMSMarker *)marker;
|
|
476
|
+
return [aMarker.fakeMarker markerInfoWindow];}
|
|
473
477
|
|
|
474
478
|
- (UIView *)mapView:(GMSMapView *)mapView markerInfoContents:(GMSMarker *)marker {
|
|
475
|
-
|
|
476
|
-
|
|
479
|
+
AIRGMSMarker *aMarker = (AIRGMSMarker *)marker;
|
|
480
|
+
return [aMarker.fakeMarker markerInfoContents];
|
|
477
481
|
}
|
|
478
482
|
|
|
479
483
|
- (void)mapView:(GMSMapView *)mapView didTapInfoWindowOfMarker:(GMSMarker *)marker {
|
|
480
|
-
|
|
481
|
-
|
|
484
|
+
AIRGMSMarker *aMarker = (AIRGMSMarker *)marker;
|
|
485
|
+
[aMarker.fakeMarker didTapInfoWindowOfMarker:aMarker];
|
|
482
486
|
}
|
|
483
487
|
|
|
484
488
|
- (void)mapView:(GMSMapView *)mapView didBeginDraggingMarker:(GMSMarker *)marker {
|
|
485
|
-
|
|
486
|
-
|
|
489
|
+
AIRGMSMarker *aMarker = (AIRGMSMarker *)marker;
|
|
490
|
+
[aMarker.fakeMarker didBeginDraggingMarker:aMarker];
|
|
487
491
|
}
|
|
488
492
|
|
|
489
493
|
- (void)mapView:(GMSMapView *)mapView didEndDraggingMarker:(GMSMarker *)marker {
|
|
490
|
-
|
|
491
|
-
|
|
494
|
+
AIRGMSMarker *aMarker = (AIRGMSMarker *)marker;
|
|
495
|
+
[aMarker.fakeMarker didEndDraggingMarker:aMarker];
|
|
492
496
|
}
|
|
493
497
|
|
|
494
498
|
- (void)mapView:(GMSMapView *)mapView didDragMarker:(GMSMarker *)marker {
|
|
495
|
-
|
|
496
|
-
|
|
499
|
+
AIRGMSMarker *aMarker = (AIRGMSMarker *)marker;
|
|
500
|
+
[aMarker.fakeMarker didDragMarker:aMarker];
|
|
497
501
|
}
|
|
498
502
|
|
|
499
503
|
- (void)mapView:(GMSMapView *)mapView
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
504
|
+
didTapPOIWithPlaceID:(NSString *)placeID
|
|
505
|
+
name:(NSString *)name
|
|
506
|
+
location:(CLLocationCoordinate2D)location {
|
|
503
507
|
AIRGoogleMap *googleMapView = (AIRGoogleMap *)mapView;
|
|
504
508
|
[googleMapView didTapPOIWithPlaceID:placeID name:name location:location];
|
|
505
509
|
}
|
|
@@ -507,23 +511,23 @@ RCT_EXPORT_METHOD(setIndoorActiveLevelIndex:(nonnull NSNumber *)reactTag
|
|
|
507
511
|
#pragma mark Gesture Recognizer Handlers
|
|
508
512
|
|
|
509
513
|
- (void)handleMapDrag:(UIPanGestureRecognizer*)recognizer {
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
514
|
+
AIRGoogleMap *map = (AIRGoogleMap *)recognizer.view;
|
|
515
|
+
if (!map.onPanDrag) return;
|
|
516
|
+
|
|
517
|
+
CGPoint touchPoint = [recognizer locationInView:map];
|
|
518
|
+
CLLocationCoordinate2D coord = [map.projection coordinateForPoint:touchPoint];
|
|
519
|
+
map.onPanDrag(@{
|
|
520
|
+
@"coordinate": @{
|
|
521
|
+
@"latitude": @(coord.latitude),
|
|
522
|
+
@"longitude": @(coord.longitude),
|
|
523
|
+
},
|
|
524
|
+
@"position": @{
|
|
525
|
+
@"x": @(touchPoint.x),
|
|
526
|
+
@"y": @(touchPoint.y),
|
|
527
|
+
},
|
|
528
|
+
@"numberOfTouches": @(recognizer.numberOfTouches),
|
|
529
|
+
});
|
|
530
|
+
|
|
527
531
|
}
|
|
528
532
|
|
|
529
533
|
@end
|