react-native-maps 1.21.0-alpha.14 → 1.21.0-alpha.140
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 +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/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 +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/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 +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/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 +1263 -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/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 +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 +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 +89 -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
|
@@ -246,6 +246,11 @@ id regionAsJSON(MKCoordinateRegion region) {
|
|
|
246
246
|
AIRGoogleMapPolygon *polygon = (AIRGoogleMapPolygon*)subview;
|
|
247
247
|
[polygon didInsertInMap:self];
|
|
248
248
|
[self.polygons addObject:polygon];
|
|
249
|
+
|
|
250
|
+
} else if ([NSStringFromClass([subview class]) isEqualToString:@"RNMapsGooglePolygonView"]){
|
|
251
|
+
// RNMapsGooglePolygonView *polygon = (RNMapsGooglePolygonView*)subview;
|
|
252
|
+
// [polygon didInsertInMap:self];
|
|
253
|
+
[self.polygons addObject:subview];
|
|
249
254
|
} else if ([subview isKindOfClass:[AIRGoogleMapPolyline class]]) {
|
|
250
255
|
AIRGoogleMapPolyline *polyline = (AIRGoogleMapPolyline*)subview;
|
|
251
256
|
polyline.polyline.map = self;
|
|
@@ -290,7 +295,9 @@ id regionAsJSON(MKCoordinateRegion region) {
|
|
|
290
295
|
AIRGoogleMapMarker *marker = (AIRGoogleMapMarker*)subview;
|
|
291
296
|
marker.realMarker.map = nil;
|
|
292
297
|
[self.markers removeObject:marker];
|
|
293
|
-
} else if ([subview
|
|
298
|
+
} else if ([NSStringFromClass([subview class]) isEqualToString:@"RNMapsGooglePolygonView"]) {
|
|
299
|
+
[self.polygons removeObject:subview];
|
|
300
|
+
} else if ([subview isKindOfClass:[AIRGoogleMapPolygon class]]) {
|
|
294
301
|
AIRGoogleMapPolygon *polygon = (AIRGoogleMapPolygon*)subview;
|
|
295
302
|
polygon.polygon.map = nil;
|
|
296
303
|
[self.polygons removeObject:polygon];
|
|
@@ -355,6 +362,19 @@ id regionAsJSON(MKCoordinateRegion region) {
|
|
|
355
362
|
];
|
|
356
363
|
}
|
|
357
364
|
|
|
365
|
+
- (NSDictionary *) getCameraDic {
|
|
366
|
+
GMSCameraPosition *camera = [self camera];
|
|
367
|
+
return @{
|
|
368
|
+
@"center": @{
|
|
369
|
+
@"latitude": @(camera.target.latitude),
|
|
370
|
+
@"longitude": @(camera.target.longitude),
|
|
371
|
+
},
|
|
372
|
+
@"pitch": @(camera.viewingAngle),
|
|
373
|
+
@"heading": @(camera.bearing),
|
|
374
|
+
@"zoom": @(camera.zoom),
|
|
375
|
+
};
|
|
376
|
+
}
|
|
377
|
+
|
|
358
378
|
- (void)layoutSubviews {
|
|
359
379
|
[super layoutSubviews];
|
|
360
380
|
if(_didLayoutSubviews) return;
|
|
@@ -504,7 +524,7 @@ id regionAsJSON(MKCoordinateRegion region) {
|
|
|
504
524
|
@"isGesture": [NSNumber numberWithBool:isGesture],
|
|
505
525
|
};
|
|
506
526
|
|
|
507
|
-
if (self.
|
|
527
|
+
if (self.onRegionChange) self.onRegionChange(event);
|
|
508
528
|
}
|
|
509
529
|
|
|
510
530
|
- (void)didTapPOIWithPlaceID:(NSString *)placeID
|
|
@@ -526,7 +546,7 @@ id regionAsJSON(MKCoordinateRegion region) {
|
|
|
526
546
|
@"region": regionAsJSON([AIRGoogleMap makeGMSCameraPositionFromMap:self andGMSCameraPosition:position]),
|
|
527
547
|
@"isGesture": [NSNumber numberWithBool:isGesture],
|
|
528
548
|
};
|
|
529
|
-
|
|
549
|
+
if (self.onRegionChangeComplete) self.onRegionChangeComplete(event); // complete
|
|
530
550
|
_isAnimating = NO;
|
|
531
551
|
}
|
|
532
552
|
|
|
@@ -646,8 +666,7 @@ id regionAsJSON(MKCoordinateRegion region) {
|
|
|
646
666
|
if (!style) {
|
|
647
667
|
NSLog(@"The style definition could not be loaded: %@", error);
|
|
648
668
|
}
|
|
649
|
-
|
|
650
|
-
self.mapStyle = style;
|
|
669
|
+
[self setMapStyle:style];
|
|
651
670
|
}
|
|
652
671
|
|
|
653
672
|
- (BOOL)showsCompass {
|
|
@@ -776,8 +795,7 @@ id regionAsJSON(MKCoordinateRegion region) {
|
|
|
776
795
|
};
|
|
777
796
|
}
|
|
778
797
|
|
|
779
|
-
-(void) takeSnapshotWithConfig:(NSDictionary *)config
|
|
780
|
-
{
|
|
798
|
+
-(void) takeSnapshotWithConfig:(NSDictionary *)config success:(RCTPromiseResolveBlock)success error:(RCTPromiseRejectBlock)error {
|
|
781
799
|
/* unused
|
|
782
800
|
NSNumber *width = [config objectForKey:@"width"];
|
|
783
801
|
NSNumber *height = [config objectForKey:@"height"];
|
|
@@ -786,8 +804,9 @@ id regionAsJSON(MKCoordinateRegion region) {
|
|
|
786
804
|
|
|
787
805
|
NSString *format = [config objectForKey:@"format"];
|
|
788
806
|
NSString *result = [config objectForKey:@"result"];
|
|
789
|
-
|
|
790
|
-
|
|
807
|
+
NSTimeInterval timeStamp = [[NSDate date] timeIntervalSince1970];
|
|
808
|
+
NSString *pathComponent = [NSString stringWithFormat:@"Documents/snapshot-%.20lf.%@", timeStamp, format];
|
|
809
|
+
NSString *filePath = [NSHomeDirectory() stringByAppendingPathComponent: pathComponent];
|
|
791
810
|
|
|
792
811
|
// TODO: currently we are ignoring width, height, region
|
|
793
812
|
|
|
@@ -805,9 +824,9 @@ id regionAsJSON(MKCoordinateRegion region) {
|
|
|
805
824
|
|
|
806
825
|
if ([result isEqualToString:@"file"]) {
|
|
807
826
|
[data writeToFile:filePath atomically:YES];
|
|
808
|
-
|
|
827
|
+
success(filePath);
|
|
809
828
|
} else if ([result isEqualToString:@"base64"]) {
|
|
810
|
-
|
|
829
|
+
success([data base64EncodedStringWithOptions:NSDataBase64EncodingEndLineWithCarriageReturn]);
|
|
811
830
|
}
|
|
812
831
|
|
|
813
832
|
UIGraphicsEndImageContext();
|
|
@@ -1048,7 +1067,7 @@ id regionAsJSON(MKCoordinateRegion region) {
|
|
|
1048
1067
|
}
|
|
1049
1068
|
|
|
1050
1069
|
+ (NSString *)GetIconUrl:(GMUPlacemark *) marker parser:(GMUKMLParser *) parser {
|
|
1051
|
-
#
|
|
1070
|
+
#if HAVE_GOOGLE_MAPS_UTILS
|
|
1052
1071
|
if (marker.style.styleID != nil) {
|
|
1053
1072
|
for (GMUStyle *style in parser.styles) {
|
|
1054
1073
|
if (style.styleID == marker.style.styleID) {
|
|
@@ -1067,8 +1086,53 @@ id regionAsJSON(MKCoordinateRegion region) {
|
|
|
1067
1086
|
return _kmlSrc;
|
|
1068
1087
|
}
|
|
1069
1088
|
|
|
1089
|
+
- (void) setKMLData:(NSData *) urlData {
|
|
1090
|
+
GMUKMLParser *parser = [[GMUKMLParser alloc] initWithData:urlData];
|
|
1091
|
+
[parser parse];
|
|
1092
|
+
|
|
1093
|
+
NSUInteger index = 0;
|
|
1094
|
+
NSMutableArray *markers = [[NSMutableArray alloc]init];
|
|
1095
|
+
|
|
1096
|
+
for (GMUPlacemark *place in parser.placemarks) {
|
|
1097
|
+
|
|
1098
|
+
CLLocationCoordinate2D location =((GMUPoint *) place.geometry).coordinate;
|
|
1099
|
+
|
|
1100
|
+
AIRGoogleMapMarker *marker = (AIRGoogleMapMarker *)[[AIRGoogleMapMarkerManager alloc] view];
|
|
1101
|
+
if (!marker.bridge) {
|
|
1102
|
+
marker.bridge = _bridge;
|
|
1103
|
+
}
|
|
1104
|
+
marker.identifier = place.title;
|
|
1105
|
+
marker.coordinate = location;
|
|
1106
|
+
marker.title = place.title;
|
|
1107
|
+
marker.subtitle = place.snippet;
|
|
1108
|
+
marker.pinColor = place.style.fillColor;
|
|
1109
|
+
marker.imageSrc = [AIRGoogleMap GetIconUrl:place parser:parser];
|
|
1110
|
+
marker.layer.backgroundColor = [UIColor clearColor].CGColor;
|
|
1111
|
+
marker.layer.position = CGPointZero;
|
|
1112
|
+
|
|
1113
|
+
[self insertReactSubview:(UIView *) marker atIndex:index];
|
|
1114
|
+
|
|
1115
|
+
[markers addObject:@{@"id": marker.identifier,
|
|
1116
|
+
@"title": marker.title,
|
|
1117
|
+
@"description": marker.subtitle,
|
|
1118
|
+
@"coordinate": @{
|
|
1119
|
+
@"latitude": @(location.latitude),
|
|
1120
|
+
@"longitude": @(location.longitude)
|
|
1121
|
+
}
|
|
1122
|
+
}];
|
|
1123
|
+
|
|
1124
|
+
index++;
|
|
1125
|
+
}
|
|
1126
|
+
|
|
1127
|
+
id event = @{@"markers": markers};
|
|
1128
|
+
if (self.onKmlReady) self.onKmlReady(event);
|
|
1129
|
+
#else
|
|
1130
|
+
REQUIRES_GOOGLE_MAPS_UTILS();
|
|
1131
|
+
#endif
|
|
1132
|
+
}
|
|
1133
|
+
|
|
1070
1134
|
- (void)setKmlSrc:(NSString *)kmlUrl {
|
|
1071
|
-
#
|
|
1135
|
+
#if HAVE_GOOGLE_MAPS_UTILS
|
|
1072
1136
|
|
|
1073
1137
|
_kmlSrc = kmlUrl;
|
|
1074
1138
|
|
|
@@ -1076,53 +1140,28 @@ id regionAsJSON(MKCoordinateRegion region) {
|
|
|
1076
1140
|
NSData *urlData = nil;
|
|
1077
1141
|
|
|
1078
1142
|
if ([url isFileURL]) {
|
|
1079
|
-
|
|
1143
|
+
[self setKMLData:[NSData dataWithContentsOfURL:url]];
|
|
1080
1144
|
} else {
|
|
1081
|
-
|
|
1145
|
+
__weak AIRGoogleMap *weakSelf = self;
|
|
1146
|
+
|
|
1147
|
+
NSURLSession *session = [NSURLSession sharedSession];
|
|
1148
|
+
NSURLSessionDataTask *dataTask = [session dataTaskWithURL:url
|
|
1149
|
+
completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {
|
|
1150
|
+
if (error) {
|
|
1151
|
+
NSLog(@"Error fetching data: %@", error.localizedDescription);
|
|
1152
|
+
return;
|
|
1153
|
+
} else {
|
|
1154
|
+
dispatch_async(dispatch_get_main_queue(), ^{
|
|
1155
|
+
AIRGoogleMap *strongSelf = weakSelf;
|
|
1156
|
+
[strongSelf setKMLData:data];
|
|
1157
|
+
});
|
|
1158
|
+
|
|
1159
|
+
}
|
|
1160
|
+
}];
|
|
1161
|
+
[dataTask resume];
|
|
1082
1162
|
}
|
|
1083
1163
|
|
|
1084
|
-
GMUKMLParser *parser = [[GMUKMLParser alloc] initWithData:urlData];
|
|
1085
|
-
[parser parse];
|
|
1086
1164
|
|
|
1087
|
-
NSUInteger index = 0;
|
|
1088
|
-
NSMutableArray *markers = [[NSMutableArray alloc]init];
|
|
1089
|
-
|
|
1090
|
-
for (GMUPlacemark *place in parser.placemarks) {
|
|
1091
|
-
|
|
1092
|
-
CLLocationCoordinate2D location =((GMUPoint *) place.geometry).coordinate;
|
|
1093
|
-
|
|
1094
|
-
AIRGoogleMapMarker *marker = (AIRGoogleMapMarker *)[[AIRGoogleMapMarkerManager alloc] view];
|
|
1095
|
-
if (!marker.bridge) {
|
|
1096
|
-
marker.bridge = _bridge;
|
|
1097
|
-
}
|
|
1098
|
-
marker.identifier = place.title;
|
|
1099
|
-
marker.coordinate = location;
|
|
1100
|
-
marker.title = place.title;
|
|
1101
|
-
marker.subtitle = place.snippet;
|
|
1102
|
-
marker.pinColor = place.style.fillColor;
|
|
1103
|
-
marker.imageSrc = [AIRGoogleMap GetIconUrl:place parser:parser];
|
|
1104
|
-
marker.layer.backgroundColor = [UIColor clearColor].CGColor;
|
|
1105
|
-
marker.layer.position = CGPointZero;
|
|
1106
|
-
|
|
1107
|
-
[self insertReactSubview:(UIView *) marker atIndex:index];
|
|
1108
|
-
|
|
1109
|
-
[markers addObject:@{@"id": marker.identifier,
|
|
1110
|
-
@"title": marker.title,
|
|
1111
|
-
@"description": marker.subtitle,
|
|
1112
|
-
@"coordinate": @{
|
|
1113
|
-
@"latitude": @(location.latitude),
|
|
1114
|
-
@"longitude": @(location.longitude)
|
|
1115
|
-
}
|
|
1116
|
-
}];
|
|
1117
|
-
|
|
1118
|
-
index++;
|
|
1119
|
-
}
|
|
1120
|
-
|
|
1121
|
-
id event = @{@"markers": markers};
|
|
1122
|
-
if (self.onKmlReady) self.onKmlReady(event);
|
|
1123
|
-
#else
|
|
1124
|
-
REQUIRES_GOOGLE_MAPS_UTILS();
|
|
1125
|
-
#endif
|
|
1126
1165
|
}
|
|
1127
1166
|
|
|
1128
1167
|
|
|
@@ -1132,11 +1171,9 @@ id regionAsJSON(MKCoordinateRegion region) {
|
|
|
1132
1171
|
return;
|
|
1133
1172
|
}
|
|
1134
1173
|
self.onIndoorBuildingFocused(@{
|
|
1135
|
-
@"
|
|
1136
|
-
|
|
1137
|
-
|
|
1138
|
-
@"levels": [[NSMutableArray alloc]init]
|
|
1139
|
-
}
|
|
1174
|
+
@"activeLevelIndex": @0,
|
|
1175
|
+
@"underground": @false,
|
|
1176
|
+
@"levels": [[NSMutableArray alloc]init]
|
|
1140
1177
|
});
|
|
1141
1178
|
}
|
|
1142
1179
|
NSInteger i = 0;
|
|
@@ -1153,11 +1190,9 @@ id regionAsJSON(MKCoordinateRegion region) {
|
|
|
1153
1190
|
return;
|
|
1154
1191
|
}
|
|
1155
1192
|
self.onIndoorBuildingFocused(@{
|
|
1156
|
-
|
|
1157
|
-
|
|
1158
|
-
|
|
1159
|
-
@"levels": arrayLevels
|
|
1160
|
-
}
|
|
1193
|
+
@"activeLevelIndex": @(building.defaultLevelIndex),
|
|
1194
|
+
@"underground": @(building.underground),
|
|
1195
|
+
@"levels": arrayLevels
|
|
1161
1196
|
});
|
|
1162
1197
|
}
|
|
1163
1198
|
|
|
@@ -1173,11 +1208,9 @@ id regionAsJSON(MKCoordinateRegion region) {
|
|
|
1173
1208
|
i++;
|
|
1174
1209
|
}
|
|
1175
1210
|
self.onIndoorLevelActivated(@{
|
|
1176
|
-
|
|
1177
|
-
|
|
1178
|
-
|
|
1179
|
-
@"shortName": level.shortName
|
|
1180
|
-
}
|
|
1211
|
+
@"activeLevelIndex": @(i),
|
|
1212
|
+
@"name": level.name,
|
|
1213
|
+
@"shortName": level.shortName
|
|
1181
1214
|
});
|
|
1182
1215
|
}
|
|
1183
1216
|
// do nothing, passed as options on initialization
|
|
@@ -25,20 +25,32 @@
|
|
|
25
25
|
}
|
|
26
26
|
return self;
|
|
27
27
|
}
|
|
28
|
+
- (void) prepare
|
|
29
|
+
{
|
|
30
|
+
if(_didMoveToWindow) return;
|
|
31
|
+
_didMoveToWindow = true;
|
|
32
|
+
if(_fillColor) {
|
|
33
|
+
_circle.fillColor = _fillColor;
|
|
34
|
+
}
|
|
35
|
+
if(_strokeColor) {
|
|
36
|
+
_circle.strokeColor = _strokeColor;
|
|
37
|
+
}
|
|
38
|
+
if(_strokeWidth) {
|
|
39
|
+
_circle.strokeWidth = _strokeWidth;
|
|
40
|
+
}
|
|
41
|
+
if (_zIndex) {
|
|
42
|
+
_circle.zIndex = _zIndex;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
- (void) didMoveToSuperview
|
|
46
|
+
{
|
|
47
|
+
[super didMoveToSuperview];
|
|
48
|
+
[self prepare];
|
|
49
|
+
}
|
|
28
50
|
|
|
29
51
|
- (void)didMoveToWindow {
|
|
30
52
|
[super didMoveToWindow];
|
|
31
|
-
|
|
32
|
-
_didMoveToWindow = true;
|
|
33
|
-
if(_fillColor) {
|
|
34
|
-
_circle.fillColor = _fillColor;
|
|
35
|
-
}
|
|
36
|
-
if(_strokeColor) {
|
|
37
|
-
_circle.strokeColor = _strokeColor;
|
|
38
|
-
}
|
|
39
|
-
if(_strokeWidth) {
|
|
40
|
-
_circle.strokeWidth = _strokeWidth;
|
|
41
|
-
}
|
|
53
|
+
[self prepare];
|
|
42
54
|
}
|
|
43
55
|
|
|
44
56
|
- (void)setRadius:(double)radius
|
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
@interface AIRGoogleMapManager : RCTViewManager
|
|
15
15
|
|
|
16
16
|
@property (nonatomic, strong) NSString* googleMapId;
|
|
17
|
+
@property (nonatomic, strong) NSString* customMapStyle;
|
|
17
18
|
@property (nonatomic) BOOL zoomTapEnabled;
|
|
18
19
|
@property (nonatomic, strong) UIColor* backgroundColor;
|
|
19
20
|
@property (nonatomic, strong) GMSCameraPosition* camera;
|