react-native-maps 1.21.0-alpha.13 → 1.21.0-alpha.131
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 +206 -0
- package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsMapViewManagerInterface.java +73 -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 +46 -0
- package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsOverlayManagerInterface.java +23 -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/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 +619 -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 +95 -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/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 +40 -4
- 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 +267 -151
- 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/MapView.java +1650 -1337
- 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 +29 -0
- package/android/src/main/jni/react/renderer/components/RNMapsSpecs/ComponentDescriptors.h +31 -0
- package/android/src/main/jni/react/renderer/components/RNMapsSpecs/EventEmitters.cpp +977 -0
- package/android/src/main/jni/react/renderer/components/RNMapsSpecs/EventEmitters.h +846 -0
- package/android/src/main/jni/react/renderer/components/RNMapsSpecs/Props.cpp +193 -0
- package/android/src/main/jni/react/renderer/components/RNMapsSpecs/Props.h +1223 -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 +24 -0
- package/android/src/main/jni/react/renderer/components/RNMapsSpecs/ShadowNodes.h +109 -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 +113 -0
- package/ios/AirGoogleMaps/AIRGoogleMap.h +10 -11
- package/ios/AirGoogleMaps/AIRGoogleMap.m +103 -69
- package/ios/AirGoogleMaps/AIRGoogleMapCircle.m +23 -11
- package/ios/AirGoogleMaps/AIRGoogleMapManager.m +10 -9
- 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 +112 -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 +165 -103
- 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 +0 -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 +193 -0
- package/ios/generated/RNMapsSpecs/Props.h +1223 -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 +25 -18
- 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 +156 -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 +1223 -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 +219 -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 +913 -0
- package/src/specs/NativeComponentGooglePolygon.ts +94 -0
- package/src/specs/NativeComponentMapView.ts +1091 -0
- package/src/specs/NativeComponentMarker.ts +326 -0
- package/src/specs/NativeComponentOverlay.ts +89 -0
- package/src/specs/NativeComponentPolyline.ts +124 -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
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
//
|
|
2
|
+
// RNMapsGoogleMapView.mm
|
|
3
|
+
//
|
|
4
|
+
//
|
|
5
|
+
// Created by Salah Ghanim on 23.11.24.
|
|
6
|
+
// Copyright © 2024 react-native-maps. All rights reserved.
|
|
7
|
+
//
|
|
8
|
+
#include "RNMapsDefines.h"
|
|
9
|
+
|
|
10
|
+
#if HAVE_GOOGLE_MAPS == 0
|
|
11
|
+
|
|
12
|
+
#import <react-native-maps-generated/ComponentDescriptors.h>
|
|
13
|
+
#import <react-native-maps-generated/EventEmitters.h>
|
|
14
|
+
#import <react-native-maps-generated/Props.h>
|
|
15
|
+
#import <react-native-maps-generated/RCTComponentViewHelpers.h>
|
|
16
|
+
|
|
17
|
+
#import "RCTFabricComponentsPlugins.h"
|
|
18
|
+
#import <React/RCTConversions.h>
|
|
19
|
+
#import "PlaceHolderPolygonView.h"
|
|
20
|
+
|
|
21
|
+
using namespace facebook::react;
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
@interface RNMapsGooglePolygonView () <RCTRNMapsGooglePolygonViewProtocol>
|
|
25
|
+
@end
|
|
26
|
+
|
|
27
|
+
@implementation RNMapsGooglePolygonView
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
+ (ComponentDescriptorProvider)componentDescriptorProvider
|
|
32
|
+
{
|
|
33
|
+
return concreteComponentDescriptorProvider<RNMapsGooglePolygonComponentDescriptor>();
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
@end
|
|
37
|
+
|
|
38
|
+
Class<RCTComponentViewProtocol> RNMapsGooglePolygonCls(void)
|
|
39
|
+
{
|
|
40
|
+
return RNMapsGooglePolygonView.class;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
#endif
|
|
@@ -37,7 +37,7 @@
|
|
|
37
37
|
resolve:(RCTPromiseResolveBlock)resolve
|
|
38
38
|
reject:(RCTPromiseRejectBlock)reject {
|
|
39
39
|
[self executeWithMapView:tag success:^(id<RNMapsAirModuleDelegate> mapView) {
|
|
40
|
-
resolve([mapView
|
|
40
|
+
resolve([mapView getCameraDic]);
|
|
41
41
|
} reject:reject];
|
|
42
42
|
|
|
43
43
|
}
|
|
@@ -60,12 +60,13 @@
|
|
|
60
60
|
} reject:reject];
|
|
61
61
|
}
|
|
62
62
|
- (void)takeSnapshot:(double)tag
|
|
63
|
-
config:(
|
|
63
|
+
config:(NSString *)configStr
|
|
64
64
|
resolve:(RCTPromiseResolveBlock)resolve
|
|
65
65
|
reject:(RCTPromiseRejectBlock)reject
|
|
66
66
|
{
|
|
67
|
+
NSDictionary* config = [RCTConvert dictonaryFromString:configStr];
|
|
67
68
|
[self executeWithMapView:tag success:^(id<RNMapsAirModuleDelegate> mapView) {
|
|
68
|
-
[mapView takeSnapshotWithConfig:config
|
|
69
|
+
[mapView takeSnapshotWithConfig:config success:resolve error:reject];
|
|
69
70
|
} reject:reject];
|
|
70
71
|
}
|
|
71
72
|
|
|
File without changes
|
|
@@ -7,13 +7,14 @@
|
|
|
7
7
|
//
|
|
8
8
|
|
|
9
9
|
#import "RNMapsMapView.h"
|
|
10
|
-
#import "
|
|
10
|
+
#import "AIRMap.h"
|
|
11
11
|
#import "AIRMapMarker.h"
|
|
12
12
|
#import "AIRMapManager.h"
|
|
13
|
-
#import
|
|
14
|
-
#import <react/
|
|
15
|
-
#import <react/
|
|
16
|
-
#import <react/
|
|
13
|
+
#import "RNMapsMarkerView.h"
|
|
14
|
+
#import <react-native-maps-generated/EventEmitters.h>
|
|
15
|
+
#import <react-native-maps-generated/ComponentDescriptors.h>
|
|
16
|
+
#import <react-native-maps-generated/Props.h>
|
|
17
|
+
#import <react-native-maps-generated/RCTComponentViewHelpers.h>
|
|
17
18
|
#import "RCTFabricComponentsPlugins.h"
|
|
18
19
|
#import <React/RCTConversions.h>
|
|
19
20
|
#import "UIView+AirMap.h"
|
|
@@ -46,8 +47,9 @@ using namespace facebook::react;
|
|
|
46
47
|
- (void)animateToRegion:(NSString *)regionJSON duration:(NSInteger)duration{
|
|
47
48
|
NSDictionary* regionDic = [RCTConvert dictonaryFromString:regionJSON];
|
|
48
49
|
MKCoordinateRegion region = [RCTConvert MKCoordinateRegion:regionDic];
|
|
49
|
-
|
|
50
|
-
|
|
50
|
+
Boolean animated = duration == 0 ? NO :YES;
|
|
51
|
+
_view.ignoreRegionChanges = animated;
|
|
52
|
+
[_view setRegion:region animated:animated];
|
|
51
53
|
}
|
|
52
54
|
- (void)setCamera:(NSString *)cameraJSON{
|
|
53
55
|
NSDictionary* cameraDic = [RCTConvert dictonaryFromString:cameraJSON];
|
|
@@ -82,12 +84,17 @@ using namespace facebook::react;
|
|
|
82
84
|
for (id json : coordinatesArr){
|
|
83
85
|
[mutableArray addObject:[RCTConvert AIRMapCoordinate:json]];
|
|
84
86
|
}
|
|
85
|
-
|
|
87
|
+
|
|
86
88
|
NSDictionary* edgePadding = [RCTConvert dictonaryFromString:edgePaddingJSON];
|
|
87
|
-
|
|
89
|
+
|
|
88
90
|
UIEdgeInsets edgeInsets = [RCTConvert UIEdgeInsets:edgePadding];
|
|
89
91
|
[_view fitToCoordinates:mutableArray edgePadding:edgeInsets animated:animated];
|
|
90
|
-
|
|
92
|
+
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
- (void) setIndoorActiveLevelIndex:(NSInteger) activeLevelIndex
|
|
96
|
+
{
|
|
97
|
+
// do nothing (google only)
|
|
91
98
|
}
|
|
92
99
|
|
|
93
100
|
#pragma mark - Native commands
|
|
@@ -110,27 +117,27 @@ using namespace facebook::react;
|
|
|
110
117
|
_props = defaultProps;
|
|
111
118
|
_legacyMapManager = [[AIRMapManager alloc] init];
|
|
112
119
|
_view = (AIRMap *)[_legacyMapManager view];
|
|
113
|
-
|
|
120
|
+
|
|
114
121
|
self.contentView = _view;
|
|
115
|
-
|
|
122
|
+
|
|
116
123
|
_view.onPress = [self](NSDictionary* dictionary) {
|
|
117
124
|
if (_eventEmitter) {
|
|
118
125
|
// Extract values from the NSDictionary
|
|
119
126
|
NSDictionary* coordinateDict = dictionary[@"coordinate"];
|
|
120
127
|
NSDictionary* positionDict = dictionary[@"position"];
|
|
121
|
-
|
|
128
|
+
|
|
122
129
|
// Populate the OnMapPressCoordinate struct
|
|
123
130
|
facebook::react::RNMapsMapViewEventEmitter::OnPressCoordinate coordinate = {
|
|
124
131
|
.latitude = [coordinateDict[@"latitude"] doubleValue],
|
|
125
132
|
.longitude = [coordinateDict[@"longitude"] doubleValue],
|
|
126
133
|
};
|
|
127
|
-
|
|
134
|
+
|
|
128
135
|
// Populate the OnMapPressPosition struct
|
|
129
136
|
facebook::react::RNMapsMapViewEventEmitter::OnPressPosition position = {
|
|
130
137
|
.x = [positionDict[@"x"] doubleValue],
|
|
131
138
|
.y = [positionDict[@"y"] doubleValue],
|
|
132
139
|
};
|
|
133
|
-
|
|
140
|
+
|
|
134
141
|
auto mapViewEventEmitter = std::static_pointer_cast<RNMapsMapViewEventEmitter const>(_eventEmitter);
|
|
135
142
|
facebook::react::RNMapsMapViewEventEmitter::OnPress data = {
|
|
136
143
|
.action = std::string([@"press" UTF8String]),
|
|
@@ -140,19 +147,18 @@ using namespace facebook::react;
|
|
|
140
147
|
mapViewEventEmitter->onPress(data);
|
|
141
148
|
}
|
|
142
149
|
};
|
|
143
|
-
|
|
144
|
-
|
|
150
|
+
|
|
151
|
+
|
|
145
152
|
_view.onMapReady = [self](NSDictionary* dictionary) {
|
|
146
153
|
if (_eventEmitter) {
|
|
147
|
-
|
|
154
|
+
|
|
148
155
|
auto mapViewEventEmitter = std::static_pointer_cast<RNMapsMapViewEventEmitter const>(_eventEmitter);
|
|
149
156
|
facebook::react::RNMapsMapViewEventEmitter::OnMapReady data = {};
|
|
150
157
|
mapViewEventEmitter->onMapReady(data);
|
|
151
158
|
}
|
|
152
159
|
};
|
|
153
|
-
_view.
|
|
160
|
+
_view.onRegionChange = [self](NSDictionary* dictionary) {
|
|
154
161
|
if (_eventEmitter) {
|
|
155
|
-
|
|
156
162
|
NSDictionary* regionDict = dictionary[@"region"];
|
|
157
163
|
auto mapViewEventEmitter = std::static_pointer_cast<RNMapsMapViewEventEmitter const>(_eventEmitter);
|
|
158
164
|
facebook::react::RNMapsMapViewEventEmitter::OnRegionChange data = {
|
|
@@ -167,23 +173,23 @@ using namespace facebook::react;
|
|
|
167
173
|
};
|
|
168
174
|
_view.onDoublePress = [self](NSDictionary* dictionary) {
|
|
169
175
|
if (_eventEmitter) {
|
|
170
|
-
|
|
176
|
+
|
|
171
177
|
NSDictionary* coordinateDict = dictionary[@"coordinate"];
|
|
172
178
|
NSDictionary* positionDict = dictionary[@"position"];
|
|
173
|
-
|
|
179
|
+
|
|
174
180
|
// Populate the OnMapPressCoordinate struct
|
|
175
181
|
facebook::react::RNMapsMapViewEventEmitter::OnDoublePressCoordinate coordinate = {
|
|
176
182
|
.latitude = [coordinateDict[@"latitude"] doubleValue],
|
|
177
183
|
.longitude = [coordinateDict[@"longitude"] doubleValue],
|
|
178
184
|
};
|
|
179
|
-
|
|
185
|
+
|
|
180
186
|
// Populate the OnMapDouplePressPosition struct
|
|
181
187
|
facebook::react::RNMapsMapViewEventEmitter::OnDoublePressPosition position = {
|
|
182
188
|
.x = [positionDict[@"x"] doubleValue],
|
|
183
189
|
.y = [positionDict[@"y"] doubleValue],
|
|
184
190
|
};
|
|
185
|
-
|
|
186
|
-
|
|
191
|
+
|
|
192
|
+
|
|
187
193
|
auto mapViewEventEmitter = std::static_pointer_cast<RNMapsMapViewEventEmitter const>(_eventEmitter);
|
|
188
194
|
facebook::react::RNMapsMapViewEventEmitter::OnDoublePress data = {
|
|
189
195
|
.position = position,
|
|
@@ -192,25 +198,25 @@ using namespace facebook::react;
|
|
|
192
198
|
mapViewEventEmitter->onDoublePress(data);
|
|
193
199
|
}
|
|
194
200
|
};
|
|
195
|
-
|
|
201
|
+
|
|
196
202
|
_view.onPanDrag = [self](NSDictionary* dictionary) {
|
|
197
203
|
if (_eventEmitter) {
|
|
198
|
-
|
|
204
|
+
|
|
199
205
|
NSDictionary* coordinateDict = dictionary[@"coordinate"];
|
|
200
206
|
NSDictionary* positionDict = dictionary[@"position"];
|
|
201
|
-
|
|
207
|
+
|
|
202
208
|
// Populate the OnMapPressCoordinate struct
|
|
203
209
|
facebook::react::RNMapsMapViewEventEmitter::OnPanDragCoordinate coordinate = {
|
|
204
210
|
.latitude = [coordinateDict[@"latitude"] doubleValue],
|
|
205
211
|
.longitude = [coordinateDict[@"longitude"] doubleValue],
|
|
206
212
|
};
|
|
207
|
-
|
|
213
|
+
|
|
208
214
|
// Populate the OnMapDouplePressPosition struct
|
|
209
215
|
facebook::react::RNMapsMapViewEventEmitter::OnPanDragPosition position = {
|
|
210
216
|
.x = [positionDict[@"x"] doubleValue],
|
|
211
217
|
.y = [positionDict[@"y"] doubleValue],
|
|
212
218
|
};
|
|
213
|
-
|
|
219
|
+
|
|
214
220
|
auto mapViewEventEmitter = std::static_pointer_cast<RNMapsMapViewEventEmitter const>(_eventEmitter);
|
|
215
221
|
facebook::react::RNMapsMapViewEventEmitter::OnPanDrag data = {
|
|
216
222
|
.position = position,
|
|
@@ -219,14 +225,14 @@ using namespace facebook::react;
|
|
|
219
225
|
mapViewEventEmitter->onPanDrag(data);
|
|
220
226
|
}
|
|
221
227
|
};
|
|
222
|
-
|
|
228
|
+
|
|
223
229
|
_view.onUserLocationChange = [self](NSDictionary* dictionary) {
|
|
224
230
|
if (_eventEmitter) {
|
|
225
|
-
|
|
231
|
+
|
|
226
232
|
NSDictionary* coordinateDict = dictionary[@"coordinate"];
|
|
227
233
|
NSDictionary* errorDict = dictionary[@"error"];
|
|
228
|
-
|
|
229
|
-
|
|
234
|
+
|
|
235
|
+
|
|
230
236
|
// Populate the OnMapPressCoordinate struct
|
|
231
237
|
facebook::react::RNMapsMapViewEventEmitter::OnUserLocationChangeCoordinate coordinate = {
|
|
232
238
|
.latitude = [coordinateDict[@"latitude"] doubleValue],
|
|
@@ -236,12 +242,12 @@ using namespace facebook::react;
|
|
|
236
242
|
if (errorDict){
|
|
237
243
|
str = errorDict[@"message"];
|
|
238
244
|
}
|
|
239
|
-
|
|
245
|
+
|
|
240
246
|
facebook::react::RNMapsMapViewEventEmitter::OnUserLocationChangeError error = {
|
|
241
247
|
.message = std::string([str UTF8String]),
|
|
242
248
|
};
|
|
243
|
-
|
|
244
|
-
|
|
249
|
+
|
|
250
|
+
|
|
245
251
|
auto mapViewEventEmitter = std::static_pointer_cast<RNMapsMapViewEventEmitter const>(_eventEmitter);
|
|
246
252
|
facebook::react::RNMapsMapViewEventEmitter::OnUserLocationChange data = {
|
|
247
253
|
.coordinate = coordinate,
|
|
@@ -250,27 +256,27 @@ using namespace facebook::react;
|
|
|
250
256
|
mapViewEventEmitter->onUserLocationChange(data);
|
|
251
257
|
}
|
|
252
258
|
};
|
|
253
|
-
|
|
259
|
+
|
|
254
260
|
_view.onCalloutPress = [self](NSDictionary* dictionary) {
|
|
255
261
|
if (_eventEmitter) {
|
|
256
|
-
|
|
262
|
+
|
|
257
263
|
NSDictionary* coordinateDict = dictionary[@"coordinate"];
|
|
258
264
|
NSDictionary* positionDict = dictionary[@"position"];
|
|
259
|
-
|
|
265
|
+
|
|
260
266
|
// Populate the OnCalloutPressPoint struct
|
|
261
267
|
facebook::react::RNMapsMapViewEventEmitter::OnCalloutPressPoint point = {
|
|
262
268
|
.x = [coordinateDict[@"x"] doubleValue],
|
|
263
269
|
.y = [coordinateDict[@"y"] doubleValue],
|
|
264
270
|
};
|
|
265
|
-
|
|
266
|
-
|
|
271
|
+
|
|
272
|
+
|
|
267
273
|
facebook::react::RNMapsMapViewEventEmitter::OnCalloutPressFrame frame = {
|
|
268
274
|
.x = [positionDict[@"x"] doubleValue],
|
|
269
275
|
.y = [positionDict[@"y"] doubleValue],
|
|
270
276
|
.width = [positionDict[@"width"] doubleValue],
|
|
271
277
|
.height = [positionDict[@"height"] doubleValue],
|
|
272
278
|
};
|
|
273
|
-
|
|
279
|
+
|
|
274
280
|
auto mapViewEventEmitter = std::static_pointer_cast<RNMapsMapViewEventEmitter const>(_eventEmitter);
|
|
275
281
|
facebook::react::RNMapsMapViewEventEmitter::OnCalloutPress data = {
|
|
276
282
|
.action = std::string([dictionary[@"action"] UTF8String]),
|
|
@@ -281,11 +287,11 @@ using namespace facebook::react;
|
|
|
281
287
|
mapViewEventEmitter->onCalloutPress(data);
|
|
282
288
|
}
|
|
283
289
|
};
|
|
284
|
-
|
|
285
|
-
|
|
290
|
+
|
|
291
|
+
|
|
286
292
|
_view.onRegionChangeStart = [self](NSDictionary* dictionary) {
|
|
287
293
|
if (_eventEmitter) {
|
|
288
|
-
|
|
294
|
+
|
|
289
295
|
NSDictionary* regionDict = dictionary[@"region"];
|
|
290
296
|
auto mapViewEventEmitter = std::static_pointer_cast<RNMapsMapViewEventEmitter const>(_eventEmitter);
|
|
291
297
|
facebook::react::RNMapsMapViewEventEmitter::OnRegionChangeStart data = {
|
|
@@ -298,8 +304,8 @@ using namespace facebook::react;
|
|
|
298
304
|
mapViewEventEmitter->onRegionChangeStart(data);
|
|
299
305
|
}
|
|
300
306
|
};
|
|
301
|
-
|
|
302
|
-
|
|
307
|
+
|
|
308
|
+
|
|
303
309
|
#define HANDLE_MARKER_DRAG_EVENT(eventName, emitterFunction) \
|
|
304
310
|
if (_eventEmitter) { \
|
|
305
311
|
NSDictionary* coordinateDict = dictionary[@"coordinate"]; \
|
|
@@ -312,9 +318,9 @@ facebook::react::RNMapsMapViewEventEmitter::eventName data = { \
|
|
|
312
318
|
}; \
|
|
313
319
|
mapViewEventEmitter->emitterFunction(data); \
|
|
314
320
|
}
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
321
|
+
|
|
322
|
+
|
|
323
|
+
|
|
318
324
|
#define HANDLE_MARKER_EVENT(eventName, emitterFunction, actionName) \
|
|
319
325
|
if (_eventEmitter) { \
|
|
320
326
|
NSDictionary* coordinateDict = dictionary[@"coordinate"]; \
|
|
@@ -332,27 +338,27 @@ facebook::react::RNMapsMapViewEventEmitter::eventName data = { \
|
|
|
332
338
|
}; \
|
|
333
339
|
mapViewEventEmitter->emitterFunction(data); \
|
|
334
340
|
}
|
|
335
|
-
|
|
341
|
+
|
|
336
342
|
_view.onMarkerDrag = [self](NSDictionary* dictionary) {
|
|
337
343
|
HANDLE_MARKER_DRAG_EVENT(OnMarkerDrag, onMarkerDrag);
|
|
338
344
|
};
|
|
339
|
-
|
|
345
|
+
|
|
340
346
|
_view.onMarkerDragStart = [self](NSDictionary* dictionary) {
|
|
341
347
|
HANDLE_MARKER_DRAG_EVENT(OnMarkerDragStart, onMarkerDragStart);
|
|
342
348
|
};
|
|
343
|
-
|
|
349
|
+
|
|
344
350
|
_view.onMarkerDragEnd = [self](NSDictionary* dictionary) {
|
|
345
351
|
HANDLE_MARKER_DRAG_EVENT(OnMarkerDragEnd, onMarkerDragEnd);
|
|
346
352
|
};
|
|
347
|
-
|
|
353
|
+
|
|
348
354
|
_view.onMarkerSelect = [self](NSDictionary* dictionary) {
|
|
349
355
|
HANDLE_MARKER_EVENT(OnMarkerSelect, onMarkerSelect, "marker-select");
|
|
350
356
|
};
|
|
351
|
-
|
|
357
|
+
|
|
352
358
|
_view.onMarkerDeselect = [self](NSDictionary* dictionary) {
|
|
353
359
|
HANDLE_MARKER_EVENT(OnMarkerDeselect, onMarkerDeselect, "marker-deselect");
|
|
354
360
|
};
|
|
355
|
-
|
|
361
|
+
|
|
356
362
|
_view.onMarkerPress = [self](NSDictionary* dictionary) {
|
|
357
363
|
HANDLE_MARKER_EVENT(OnMarkerPress, onMarkerPress, "marker-press");
|
|
358
364
|
};
|
|
@@ -362,7 +368,7 @@ mapViewEventEmitter->emitterFunction(data); \
|
|
|
362
368
|
if (self = [super initWithFrame:frame]) {
|
|
363
369
|
[self prepareMapView];
|
|
364
370
|
}
|
|
365
|
-
|
|
371
|
+
|
|
366
372
|
return self;
|
|
367
373
|
}
|
|
368
374
|
|
|
@@ -371,16 +377,25 @@ mapViewEventEmitter->emitterFunction(data); \
|
|
|
371
377
|
id<RCTComponent> paperView = [childComponentView getPaperViewFromChildComponentView];
|
|
372
378
|
if (paperView){
|
|
373
379
|
[_view insertReactSubview:paperView atIndex:index];
|
|
374
|
-
} else {
|
|
380
|
+
} else if ([childComponentView isKindOfClass:[RNMapsMarkerView class]]){
|
|
381
|
+
RNMapsMarkerView* fabricMarker = (RNMapsMarkerView *) childComponentView;
|
|
382
|
+
[_view insertReactSubview:[fabricMarker marker] atIndex:index];
|
|
383
|
+
}
|
|
384
|
+
else {
|
|
375
385
|
[_view insertReactSubview:childComponentView atIndex:index];
|
|
376
386
|
}
|
|
377
387
|
}
|
|
388
|
+
|
|
378
389
|
- (void) unmountChildComponentView:(UIView<RCTComponentViewProtocol> *)childComponentView index:(NSInteger)index
|
|
379
390
|
{
|
|
380
391
|
id<RCTComponent> paperView = [childComponentView getPaperViewFromChildComponentView];
|
|
381
392
|
if (paperView){
|
|
382
393
|
[_view removeReactSubview:paperView];
|
|
383
|
-
}
|
|
394
|
+
}
|
|
395
|
+
else if ([childComponentView isKindOfClass:[RNMapsMarkerView class]]){
|
|
396
|
+
RNMapsMarkerView* fabricMarker = (RNMapsMarkerView *) childComponentView;
|
|
397
|
+
[_view removeReactSubview:[fabricMarker marker]];
|
|
398
|
+
} else {
|
|
384
399
|
[_view removeReactSubview:childComponentView];
|
|
385
400
|
}
|
|
386
401
|
}
|
|
@@ -403,41 +418,47 @@ MKMapType mapRNTypeToMKMapType(RNMapsMapViewMapType rnMapType) {
|
|
|
403
418
|
[self prepareMapView];
|
|
404
419
|
const auto &oldViewProps = *std::static_pointer_cast<RNMapsMapViewProps const>(_props);
|
|
405
420
|
const auto &newViewProps = *std::static_pointer_cast<RNMapsMapViewProps const>(props);
|
|
406
|
-
|
|
421
|
+
|
|
407
422
|
#define REMAP_MAPVIEW_PROP(name) \
|
|
408
423
|
if (oldViewProps.name != newViewProps.name) { \
|
|
409
424
|
_view.name = newViewProps.name; \
|
|
410
425
|
}
|
|
411
|
-
|
|
426
|
+
|
|
412
427
|
#define REMAP_MAPVIEW_STRING_PROP(name) \
|
|
413
428
|
if (oldViewProps.name != newViewProps.name) { \
|
|
414
429
|
_view.name = RCTNSStringFromString(newViewProps.name); \
|
|
415
430
|
}
|
|
416
|
-
|
|
431
|
+
|
|
417
432
|
#define REMAP_MAPVIEW_COLOR_PROP(name) \
|
|
418
433
|
if (oldViewProps.name != newViewProps.name) { \
|
|
419
434
|
_view.name = RCTUIColorFromSharedColor(newViewProps.name); \
|
|
420
435
|
}
|
|
421
|
-
|
|
436
|
+
|
|
422
437
|
#define REMAP_MAPVIEW_POINT_PROP(name) \
|
|
423
438
|
if (newViewProps.name.x != oldViewProps.name.x || \
|
|
424
439
|
newViewProps.name.y != oldViewProps.name.y) { \
|
|
425
440
|
_view.name = CGPointMake(newViewProps.name.x, newViewProps.name.y); \
|
|
426
441
|
}
|
|
427
|
-
|
|
442
|
+
|
|
428
443
|
#define REMAP_MAPVIEW_REGION_PROP(name) \
|
|
429
|
-
if (newViewProps.name.latitude
|
|
430
|
-
newViewProps.name.longitude
|
|
431
|
-
newViewProps.name.latitudeDelta
|
|
432
|
-
newViewProps.name.longitudeDelta
|
|
433
|
-
|
|
434
|
-
newViewProps.name.
|
|
435
|
-
|
|
436
|
-
newViewProps.name.
|
|
437
|
-
|
|
438
|
-
|
|
444
|
+
if (!(newViewProps.name.latitude == 0 && \
|
|
445
|
+
newViewProps.name.longitude == 0 && \
|
|
446
|
+
newViewProps.name.latitudeDelta == 0 && \
|
|
447
|
+
newViewProps.name.longitudeDelta == 0)) { \
|
|
448
|
+
if (newViewProps.name.latitude != oldViewProps.name.latitude || \
|
|
449
|
+
newViewProps.name.longitude != oldViewProps.name.longitude || \
|
|
450
|
+
newViewProps.name.latitudeDelta != oldViewProps.name.latitudeDelta ||\
|
|
451
|
+
newViewProps.name.longitudeDelta != oldViewProps.name.longitudeDelta) { \
|
|
452
|
+
MKCoordinateSpan span = MKCoordinateSpanMake(newViewProps.name.latitudeDelta, \
|
|
453
|
+
newViewProps.name.longitudeDelta); \
|
|
454
|
+
MKCoordinateRegion region = MKCoordinateRegionMake(CLLocationCoordinate2DMake( \
|
|
455
|
+
newViewProps.name.latitude, \
|
|
456
|
+
newViewProps.name.longitude), span); \
|
|
457
|
+
_view.name = region; \
|
|
458
|
+
} \
|
|
439
459
|
}
|
|
440
|
-
|
|
460
|
+
|
|
461
|
+
|
|
441
462
|
#define REMAP_MAPVIEW_CAMERA_PROP(name) \
|
|
442
463
|
if (newViewProps.name.center.latitude != oldViewProps.name.center.latitude || \
|
|
443
464
|
newViewProps.name.center.longitude != oldViewProps.name.center.longitude || \
|
|
@@ -450,9 +471,10 @@ MKMapCamera* camera = [[MKMapCamera alloc] init]; \
|
|
|
450
471
|
camera.centerCoordinate = center; \
|
|
451
472
|
camera.heading = newViewProps.name.heading; \
|
|
452
473
|
camera.pitch = newViewProps.name.pitch; \
|
|
474
|
+
camera.centerCoordinateDistance = newViewProps.name.altitude; \
|
|
453
475
|
_view.name = camera; \
|
|
454
476
|
}
|
|
455
|
-
|
|
477
|
+
|
|
456
478
|
#define REMAP_MAPVIEW_EDGEINSETS_PROP(name) \
|
|
457
479
|
if (newViewProps.name.top != oldViewProps.name.top || \
|
|
458
480
|
newViewProps.name.right != oldViewProps.name.right || \
|
|
@@ -463,49 +485,51 @@ newViewProps.name.left, \
|
|
|
463
485
|
newViewProps.name.bottom, \
|
|
464
486
|
newViewProps.name.right); \
|
|
465
487
|
}
|
|
466
|
-
|
|
488
|
+
|
|
467
489
|
#define REMAP_MAPVIEW_MAPTYPE(rnMapType) MKMapType##rnMapType
|
|
468
|
-
|
|
469
|
-
|
|
490
|
+
|
|
491
|
+
|
|
470
492
|
REMAP_MAPVIEW_PROP(cacheEnabled)
|
|
471
|
-
|
|
493
|
+
|
|
472
494
|
REMAP_MAPVIEW_PROP(followsUserLocation)
|
|
473
495
|
REMAP_MAPVIEW_PROP(loadingEnabled)
|
|
496
|
+
|
|
474
497
|
REMAP_MAPVIEW_PROP(scrollEnabled)
|
|
475
|
-
|
|
498
|
+
REMAP_MAPVIEW_PROP(handlePanDrag)
|
|
499
|
+
|
|
476
500
|
REMAP_MAPVIEW_PROP(maxDelta)
|
|
477
501
|
REMAP_MAPVIEW_PROP(maxZoom)
|
|
478
502
|
REMAP_MAPVIEW_PROP(minDelta)
|
|
479
503
|
REMAP_MAPVIEW_PROP(minZoom)
|
|
480
|
-
|
|
504
|
+
|
|
481
505
|
REMAP_MAPVIEW_PROP(showsCompass)
|
|
482
506
|
REMAP_MAPVIEW_PROP(showsScale)
|
|
483
|
-
REMAP_MAPVIEW_PROP(showsTraffic)
|
|
484
507
|
REMAP_MAPVIEW_PROP(showsUserLocation)
|
|
485
508
|
REMAP_MAPVIEW_PROP(userLocationCalloutEnabled)
|
|
486
509
|
REMAP_MAPVIEW_PROP(zoomEnabled)
|
|
487
|
-
|
|
510
|
+
|
|
511
|
+
|
|
488
512
|
REMAP_MAPVIEW_POINT_PROP(compassOffset)
|
|
489
|
-
|
|
513
|
+
|
|
490
514
|
if (![_view ignoreRegionChanges]){
|
|
491
515
|
_view.ignoreRegionChanges = YES;
|
|
492
516
|
REMAP_MAPVIEW_REGION_PROP(initialRegion)
|
|
493
517
|
REMAP_MAPVIEW_REGION_PROP(region)
|
|
494
518
|
_view.ignoreRegionChanges = NO;
|
|
495
519
|
}
|
|
496
|
-
|
|
520
|
+
|
|
497
521
|
REMAP_MAPVIEW_CAMERA_PROP(initialCamera)
|
|
498
522
|
REMAP_MAPVIEW_CAMERA_PROP(camera)
|
|
499
|
-
|
|
523
|
+
|
|
500
524
|
REMAP_MAPVIEW_EDGEINSETS_PROP(legalLabelInsets)
|
|
501
525
|
REMAP_MAPVIEW_EDGEINSETS_PROP(mapPadding)
|
|
502
|
-
|
|
526
|
+
|
|
503
527
|
REMAP_MAPVIEW_COLOR_PROP(loadingIndicatorColor)
|
|
504
528
|
REMAP_MAPVIEW_COLOR_PROP(loadingIndicatorColor)
|
|
505
529
|
REMAP_MAPVIEW_COLOR_PROP(tintColor)
|
|
506
|
-
|
|
530
|
+
|
|
507
531
|
REMAP_MAPVIEW_STRING_PROP(userLocationAnnotationTitle)
|
|
508
|
-
|
|
532
|
+
|
|
509
533
|
if (oldViewProps.mapType != newViewProps.mapType){
|
|
510
534
|
_view.mapType = mapRNTypeToMKMapType(newViewProps.mapType);
|
|
511
535
|
}
|
|
@@ -522,16 +546,16 @@ newViewProps.name.right); \
|
|
|
522
546
|
break;
|
|
523
547
|
}
|
|
524
548
|
}
|
|
525
|
-
|
|
549
|
+
|
|
526
550
|
if (oldViewProps.cameraZoomRange.minCenterCoordinateDistance != newViewProps.cameraZoomRange.minCenterCoordinateDistance ||
|
|
527
551
|
oldViewProps.cameraZoomRange.maxCenterCoordinateDistance != newViewProps.cameraZoomRange.maxCenterCoordinateDistance ||
|
|
528
552
|
oldViewProps.cameraZoomRange.animated != newViewProps.cameraZoomRange.animated) {
|
|
529
|
-
|
|
553
|
+
|
|
530
554
|
MKMapCameraZoomRange* zoomRange = [[MKMapCameraZoomRange alloc] initWithMinCenterCoordinateDistance:newViewProps.cameraZoomRange.minCenterCoordinateDistance maxCenterCoordinateDistance:newViewProps.cameraZoomRange.maxCenterCoordinateDistance];
|
|
531
555
|
[_view setCameraZoomRange:zoomRange animated:newViewProps.cameraZoomRange.animated];
|
|
532
556
|
}
|
|
533
|
-
|
|
534
|
-
|
|
557
|
+
|
|
558
|
+
|
|
535
559
|
[super updateProps:props oldProps:oldProps];
|
|
536
560
|
}
|
|
537
561
|
|
|
@@ -17,7 +17,25 @@
|
|
|
17
17
|
|
|
18
18
|
RCT_EXPORT_MODULE(RNMapsMapViewManager)
|
|
19
19
|
|
|
20
|
-
|
|
20
|
+
RCT_EXPORT_VIEW_PROPERTY(onMapReady, RCTDirectEventBlock)
|
|
21
|
+
RCT_EXPORT_VIEW_PROPERTY(onPress, RCTBubblingEventBlock)
|
|
22
|
+
RCT_EXPORT_VIEW_PROPERTY(onLongPress, RCTBubblingEventBlock)
|
|
23
|
+
RCT_EXPORT_VIEW_PROPERTY(onCalloutPress, RCTDirectEventBlock)
|
|
24
|
+
RCT_EXPORT_VIEW_PROPERTY(onDoublePress, RCTDirectEventBlock)
|
|
25
|
+
|
|
26
|
+
RCT_EXPORT_VIEW_PROPERTY(onPanDrag, RCTDirectEventBlock)
|
|
27
|
+
|
|
28
|
+
RCT_EXPORT_VIEW_PROPERTY(onMarkerPress, RCTDirectEventBlock)
|
|
29
|
+
RCT_EXPORT_VIEW_PROPERTY(onMarkerSelect, RCTDirectEventBlock)
|
|
30
|
+
RCT_EXPORT_VIEW_PROPERTY(onMarkerDeselect, RCTDirectEventBlock)
|
|
31
|
+
RCT_EXPORT_VIEW_PROPERTY(onMarkerDragStart, RCTDirectEventBlock)
|
|
32
|
+
RCT_EXPORT_VIEW_PROPERTY(onMarkerDrag, RCTDirectEventBlock)
|
|
33
|
+
RCT_EXPORT_VIEW_PROPERTY(onMarkerDragEnd, RCTDirectEventBlock)
|
|
34
|
+
|
|
35
|
+
RCT_EXPORT_VIEW_PROPERTY(onRegionChangeStart, RCTDirectEventBlock)
|
|
36
|
+
RCT_EXPORT_VIEW_PROPERTY(onRegionChangeComplete, RCTDirectEventBlock)
|
|
37
|
+
RCT_EXPORT_VIEW_PROPERTY(onRegionChange, RCTDirectEventBlock)
|
|
38
|
+
RCT_EXPORT_VIEW_PROPERTY(onUserLocationChange, RCTDirectEventBlock)
|
|
21
39
|
|
|
22
40
|
|
|
23
41
|
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
//
|
|
2
|
+
// RNMapsMarker.h
|
|
3
|
+
// AirMaps
|
|
4
|
+
//
|
|
5
|
+
// Created by Salah Ghanim on 23.11.24.
|
|
6
|
+
// Copyright © 2024 react-native-maps. All rights reserved.
|
|
7
|
+
//
|
|
8
|
+
#ifdef RCT_NEW_ARCH_ENABLED
|
|
9
|
+
|
|
10
|
+
#import <React/RCTViewComponentView.h>
|
|
11
|
+
#import <UIKit/UIKit.h>
|
|
12
|
+
|
|
13
|
+
NS_ASSUME_NONNULL_BEGIN
|
|
14
|
+
|
|
15
|
+
typedef void (^LoadCompletionHandler)(UIView *view);
|
|
16
|
+
|
|
17
|
+
@class AIRMapMarker;
|
|
18
|
+
@interface RNMapsMarkerView : RCTViewComponentView
|
|
19
|
+
- (AIRMapMarker*) marker;
|
|
20
|
+
@end
|
|
21
|
+
|
|
22
|
+
NS_ASSUME_NONNULL_END
|
|
23
|
+
|
|
24
|
+
#endif
|