@rnmapbox/maps 10.0.15 → 10.1.0-beta.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -9
- package/android/build.gradle +38 -35
- package/android/install.md +11 -116
- package/android/src/main/java-v10/com/mapbox/rctmgl/RCTMGLPackage.java +109 -12
- package/android/src/main/java-v10/com/mapbox/rctmgl/components/AbstractEventEmitter.kt +2 -3
- package/android/src/main/java-v10/com/mapbox/rctmgl/components/annotation/RCTMGLPointAnnotation.kt +4 -2
- package/android/src/main/java-v10/com/mapbox/rctmgl/components/camera/CameraUpdateItem.kt +13 -12
- package/android/src/main/java-v10/com/mapbox/rctmgl/components/camera/RCTMGLCamera.kt +1 -2
- package/android/src/main/java-v10/com/mapbox/rctmgl/components/images/RCTMGLImage.kt +5 -3
- package/android/src/main/java-v10/com/mapbox/rctmgl/components/images/RCTMGLImages.kt +3 -1
- package/android/src/main/java-v10/com/mapbox/rctmgl/components/location/LocationComponentManager.kt +11 -9
- package/android/src/main/java-v10/com/mapbox/rctmgl/components/location/RCTMGLNativeUserLocation.kt +5 -3
- package/android/src/main/java-v10/com/mapbox/rctmgl/components/mapview/NativeMapViewModule.kt +193 -0
- package/android/src/main/java-v10/com/mapbox/rctmgl/components/mapview/RCTMGLAndroidTextureMapViewManager.kt +16 -2
- package/android/src/main/java-v10/com/mapbox/rctmgl/components/mapview/RCTMGLMapView.kt +17 -91
- package/android/src/main/java-v10/com/mapbox/rctmgl/components/mapview/RCTMGLMapViewManager.kt +75 -160
- package/android/src/main/java-v10/com/mapbox/rctmgl/components/styles/RCTMGLStyle.kt +8 -5
- package/android/src/main/java-v10/com/mapbox/rctmgl/components/styles/RCTMGLStyleFactory.kt +3669 -0
- package/android/src/main/java-v10/com/mapbox/rctmgl/components/styles/RCTMGLStyleValue.kt +9 -3
- package/android/src/main/java-v10/com/mapbox/rctmgl/components/styles/atmosphere/RCTMGLAtmosphere.kt +9 -5
- package/android/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLBackgroundLayer.kt +9 -4
- package/android/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLCircleLayer.kt +7 -1
- package/android/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLFillExtrusionLayer.kt +9 -4
- package/android/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLFillLayer.kt +7 -1
- package/android/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLHeatmapLayer.kt +9 -1
- package/android/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLLineLayer.kt +6 -1
- package/android/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLRasterLayer.kt +6 -1
- package/android/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLSkyLayer.kt +9 -1
- package/android/src/main/java-v10/com/mapbox/rctmgl/components/styles/layers/RCTMGLSymbolLayer.kt +9 -1
- package/android/src/main/java-v10/com/mapbox/rctmgl/components/styles/light/RCTMGLLight.kt +3 -3
- package/android/src/main/java-v10/com/mapbox/rctmgl/components/styles/sources/RCTMGLRasterDemSource.kt +2 -0
- package/android/src/main/java-v10/com/mapbox/rctmgl/components/styles/sources/RCTMGLShapeSource.kt +2 -0
- package/android/src/main/java-v10/com/mapbox/rctmgl/components/styles/sources/RCTMGLVectorSource.kt +2 -0
- package/android/src/main/java-v10/com/mapbox/rctmgl/components/styles/terrain/RCTMGLTerrain.kt +7 -5
- package/android/src/main/java-v10/com/mapbox/rctmgl/events/LocationEvent.kt +14 -6
- package/android/src/main/java-v10/com/mapbox/rctmgl/location/LocationManager.kt +23 -32
- package/android/src/main/java-v10/com/mapbox/rctmgl/modules/CustomHttpHeaders.kt +9 -1
- package/android/src/main/java-v10/com/mapbox/rctmgl/modules/RCTMGLLocationModule.kt +3 -4
- package/android/src/main/java-v10/com/mapbox/rctmgl/modules/RCTMGLModule.kt +4 -5
- package/android/src/main/java-v10/com/mapbox/rctmgl/modules/RCTMGLOfflineModule.kt +9 -7
- package/android/src/main/java-v10/com/mapbox/rctmgl/modules/RCTMGLSnapshotModule.kt +124 -0
- package/android/src/main/java-v10/com/mapbox/rctmgl/utils/BitmapUtils.kt +174 -0
- package/android/src/main/mapbox-v11-compat/v10/com/mapbox/rctmgl/v11compat/Annotation.kt +4 -0
- package/android/src/main/mapbox-v11-compat/v10/com/mapbox/rctmgl/v11compat/Event.kt +17 -0
- package/android/src/main/mapbox-v11-compat/v10/com/mapbox/rctmgl/v11compat/Feature.kt +10 -0
- package/android/src/main/mapbox-v11-compat/v10/com/mapbox/rctmgl/v11compat/HttpInterceptor.kt +22 -0
- package/android/src/main/mapbox-v11-compat/v10/com/mapbox/rctmgl/v11compat/Image.kt +29 -0
- package/android/src/main/mapbox-v11-compat/v10/com/mapbox/rctmgl/v11compat/Light.kt +15 -0
- package/android/src/main/mapbox-v11-compat/v10/com/mapbox/rctmgl/v11compat/Location.kt +54 -0
- package/android/src/main/mapbox-v11-compat/v10/com/mapbox/rctmgl/v11compat/MapboxMap.kt +31 -0
- package/android/src/main/mapbox-v11-compat/v10/com/mapbox/rctmgl/v11compat/OfflineManager.kt +19 -0
- package/android/src/main/mapbox-v11-compat/v10/com/mapbox/rctmgl/v11compat/OrnamentSettings.kt +96 -0
- package/android/src/main/mapbox-v11-compat/v10/com/mapbox/rctmgl/v11compat/ResourceOption.kt +12 -0
- package/android/src/main/mapbox-v11-compat/v10/com/mapbox/rctmgl/v11compat/Snapshot.kt +28 -0
- package/android/src/main/mapbox-v11-compat/v11/com/mapbox/rctmgl/v11compat/Annotation.kt +4 -0
- package/android/src/main/mapbox-v11-compat/v11/com/mapbox/rctmgl/v11compat/Event.kt +342 -0
- package/android/src/main/mapbox-v11-compat/v11/com/mapbox/rctmgl/v11compat/Feature.kt +16 -0
- package/android/src/main/mapbox-v11-compat/v11/com/mapbox/rctmgl/v11compat/HttpInterceptor.kt +21 -0
- package/android/src/main/mapbox-v11-compat/v11/com/mapbox/rctmgl/v11compat/Image.kt +40 -0
- package/android/src/main/mapbox-v11-compat/v11/com/mapbox/rctmgl/v11compat/Light.kt +15 -0
- package/android/src/main/mapbox-v11-compat/v11/com/mapbox/rctmgl/v11compat/Location.kt +58 -0
- package/android/src/main/mapbox-v11-compat/v11/com/mapbox/rctmgl/v11compat/MapboxMap.kt +37 -0
- package/android/src/main/mapbox-v11-compat/v11/com/mapbox/rctmgl/v11compat/OfflineManager.kt +12 -0
- package/android/src/main/mapbox-v11-compat/v11/com/mapbox/rctmgl/v11compat/OrnamentSettings.kt +96 -0
- package/android/src/main/mapbox-v11-compat/v11/com/mapbox/rctmgl/v11compat/ResourceOption.kt +14 -0
- package/android/src/main/mapbox-v11-compat/v11/com/mapbox/rctmgl/v11compat/Snapshot.kt +22 -0
- package/android/src/main/old-arch/com/facebook/react/viewmanagers/MBXAndroidTextureMapViewManagerDelegate.java +89 -0
- package/android/src/main/old-arch/com/facebook/react/viewmanagers/MBXAndroidTextureMapViewManagerInterface.java +37 -0
- package/android/src/main/old-arch/com/facebook/react/viewmanagers/MBXMapViewManagerDelegate.java +89 -0
- package/android/src/main/old-arch/com/facebook/react/viewmanagers/MBXMapViewManagerInterface.java +37 -0
- package/android/src/main/old-arch/com/mapbox/rctmgl/NativeMapViewModuleSpec.java +88 -0
- package/ios/RCTMGL-v10/CustomHttpHeaders.swift +18 -0
- package/ios/RCTMGL-v10/MBXMapViewComponentView.h +18 -0
- package/ios/RCTMGL-v10/MBXMapViewComponentView.mm +203 -0
- package/ios/RCTMGL-v10/MBXMapViewManager.m +37 -0
- package/ios/RCTMGL-v10/MBXMapViewManager.swift +250 -0
- package/ios/RCTMGL-v10/MBXMapViewModule.h +18 -0
- package/ios/RCTMGL-v10/MBXMapViewModule.mm +167 -0
- package/ios/RCTMGL-v10/MGLModule.swift +15 -1
- package/ios/RCTMGL-v10/MGLSnapshotModule.swift +7 -1
- package/ios/RCTMGL-v10/RCTMGLAtmosphere.swift +4 -0
- package/ios/RCTMGL-v10/RCTMGLBackgroundLayer.swift +2 -1
- package/ios/RCTMGL-v10/RCTMGLCamera.swift +23 -0
- package/ios/RCTMGL-v10/RCTMGLCircleLayer.swift +4 -0
- package/ios/RCTMGL-v10/RCTMGLFillExtrustionLayer.swift +4 -0
- package/ios/RCTMGL-v10/RCTMGLFillLayer.swift +4 -0
- package/ios/RCTMGL-v10/RCTMGLHeatmapLayer.swift +4 -1
- package/ios/RCTMGL-v10/RCTMGLImageSource.swift +4 -0
- package/ios/RCTMGL-v10/RCTMGLImages.swift +14 -2
- package/ios/RCTMGL-v10/RCTMGLLayer.swift +35 -11
- package/ios/RCTMGL-v10/RCTMGLLight.swift +14 -4
- package/ios/RCTMGL-v10/RCTMGLLineLayer.swift +4 -0
- package/ios/RCTMGL-v10/RCTMGLLocationModule.swift +65 -12
- package/ios/RCTMGL-v10/RCTMGLLocationModuleV11.swift +32 -0
- package/ios/RCTMGL-v10/RCTMGLMapView.swift +116 -28
- package/ios/RCTMGL-v10/RCTMGLNativeUserLocation.swift +4 -0
- package/ios/RCTMGL-v10/RCTMGLOfflineModule.swift +17 -0
- package/ios/RCTMGL-v10/RCTMGLRasterDemSource.swift +4 -0
- package/ios/RCTMGL-v10/RCTMGLRasterLayer.swift +4 -0
- package/ios/RCTMGL-v10/RCTMGLRasterSource.swift +4 -0
- package/ios/RCTMGL-v10/RCTMGLShapeSource.swift +65 -3
- package/ios/RCTMGL-v10/RCTMGLSource.swift +4 -0
- package/ios/RCTMGL-v10/RCTMGLStyleValue.swift +60 -1
- package/ios/RCTMGL-v10/RCTMGLSymbolLayer.swift +4 -0
- package/ios/RCTMGL-v10/RCTMGLVectorSource.swift +4 -0
- package/ios/RCTMGL-v10/rnmapbox_maps.h +1 -0
- package/ios/install.md +28 -39
- package/lib/commonjs/components/MapView.js +47 -11
- package/lib/commonjs/components/MapView.js.map +1 -1
- package/lib/commonjs/specs/MBXAndroidTextureMapViewNativeComponent.js +13 -0
- package/lib/commonjs/specs/MBXAndroidTextureMapViewNativeComponent.js.map +1 -0
- package/lib/commonjs/specs/MBXMapViewNativeComponent.js +11 -0
- package/lib/commonjs/specs/MBXMapViewNativeComponent.js.map +1 -0
- package/lib/commonjs/specs/NativeMapViewModule.js +11 -0
- package/lib/commonjs/specs/NativeMapViewModule.js.map +1 -0
- package/lib/commonjs/specs/codegenUtils.js +2 -0
- package/lib/commonjs/specs/codegenUtils.js.map +1 -0
- package/lib/module/components/MapView.js +47 -10
- package/lib/module/components/MapView.js.map +1 -1
- package/lib/module/specs/MBXAndroidTextureMapViewNativeComponent.js +5 -0
- package/lib/module/specs/MBXAndroidTextureMapViewNativeComponent.js.map +1 -0
- package/lib/module/specs/MBXMapViewNativeComponent.js +3 -0
- package/lib/module/specs/MBXMapViewNativeComponent.js.map +1 -0
- package/lib/module/specs/NativeMapViewModule.js +5 -0
- package/lib/module/specs/NativeMapViewModule.js.map +1 -0
- package/lib/module/specs/codegenUtils.js +2 -0
- package/lib/module/specs/codegenUtils.js.map +1 -0
- package/lib/typescript/components/MapView.d.ts +13 -3
- package/lib/typescript/components/MapView.d.ts.map +1 -1
- package/lib/typescript/specs/MBXAndroidTextureMapViewNativeComponent.d.ts +52 -0
- package/lib/typescript/specs/MBXAndroidTextureMapViewNativeComponent.d.ts.map +1 -0
- package/lib/typescript/specs/MBXMapViewNativeComponent.d.ts +52 -0
- package/lib/typescript/specs/MBXMapViewNativeComponent.d.ts.map +1 -0
- package/lib/typescript/specs/NativeMapViewModule.d.ts +21 -0
- package/lib/typescript/specs/NativeMapViewModule.d.ts.map +1 -0
- package/lib/typescript/specs/codegenUtils.d.ts +2 -0
- package/lib/typescript/specs/codegenUtils.d.ts.map +1 -0
- package/package.json +9 -1
- package/rnmapbox-maps.podspec +34 -72
- package/setup-jest.js +16 -0
- package/src/components/MapView.tsx +56 -12
- package/src/specs/MBXAndroidTextureMapViewNativeComponent.ts +63 -0
- package/src/specs/MBXMapViewNativeComponent.ts +63 -0
- package/src/specs/NativeMapViewModule.ts +54 -0
- package/src/specs/codegenUtils.ts +4 -0
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/RCTMGLPackage.java +0 -99
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/AbstractEvent.java +0 -35
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/AbstractEventEmitter.java +0 -80
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/AbstractMapFeature.java +0 -19
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/annotation/MarkerView.java +0 -23
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/annotation/MarkerViewManager.java +0 -69
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/annotation/RCTMGLCallout.java +0 -15
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/annotation/RCTMGLCalloutManager.java +0 -22
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/annotation/RCTMGLMarkerView.java +0 -112
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/annotation/RCTMGLMarkerViewManager.java +0 -45
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/annotation/RCTMGLPointAnnotation.java +0 -360
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/annotation/RCTMGLPointAnnotationManager.java +0 -88
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/camera/CameraStop.java +0 -249
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/camera/CameraUpdateItem.java +0 -125
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/camera/CameraUpdateQueue.java +0 -73
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/camera/RCTMGLCamera.java +0 -530
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/camera/RCTMGLCameraManager.java +0 -101
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/camera/constants/CameraMode.java +0 -22
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/images/RCTMGLImages.java +0 -234
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/images/RCTMGLImagesManager.java +0 -103
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/location/LocationComponentManager.java +0 -149
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/location/RCTMGLNativeUserLocation.java +0 -67
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/location/RCTMGLNativeUserLocationManager.java +0 -35
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/mapview/LayerSourceInfo.java +0 -59
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/mapview/RCTMGLAndroidTextureMapView.java +0 -16
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/mapview/RCTMGLAndroidTextureMapViewManager.java +0 -31
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/mapview/RCTMGLMapView.java +0 -1528
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/mapview/RCTMGLMapViewManager.java +0 -355
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/mapview/helpers/CameraChangeTracker.java +0 -41
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/RCTMGLStyle.java +0 -83
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/RCTMGLStyleFactory.java +0 -2220
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/RCTMGLStyleFunctionParser.java +0 -108
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/RCTMGLStyleValue.java +0 -216
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/layers/RCTLayer.java +0 -287
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/layers/RCTMGLBackgroundLayer.java +0 -27
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/layers/RCTMGLBackgroundLayerManager.java +0 -64
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/layers/RCTMGLCircleLayer.java +0 -55
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/layers/RCTMGLCircleLayerManager.java +0 -77
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/layers/RCTMGLFillExtrusionLayer.java +0 -55
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/layers/RCTMGLFillExtrusionLayerManager.java +0 -80
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/layers/RCTMGLFillLayer.java +0 -55
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/layers/RCTMGLFillLayerManager.java +0 -80
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/layers/RCTMGLHeatmapLayer.java +0 -55
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/layers/RCTMGLHeatmapLayerManager.java +0 -77
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/layers/RCTMGLLineLayer.java +0 -55
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/layers/RCTMGLLineLayerManager.java +0 -79
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/layers/RCTMGLRasterLayer.java +0 -27
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/layers/RCTMGLRasterLayerManager.java +0 -64
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/layers/RCTMGLSymbolLayer.java +0 -55
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/layers/RCTMGLSymbolLayerManager.java +0 -75
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/light/RCTMGLLight.java +0 -65
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/light/RCTMGLLightManager.java +0 -29
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/sources/RCTMGLImageSource.java +0 -81
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/sources/RCTMGLImageSourceManager.java +0 -72
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/sources/RCTMGLRasterSource.java +0 -45
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/sources/RCTMGLRasterSourceManager.java +0 -44
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/sources/RCTMGLShapeSource.java +0 -316
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/sources/RCTMGLShapeSourceManager.java +0 -253
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/sources/RCTMGLTileSource.java +0 -97
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/sources/RCTMGLTileSourceManager.java +0 -80
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/sources/RCTMGLVectorSource.java +0 -64
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/sources/RCTMGLVectorSourceManager.java +0 -84
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/components/styles/sources/RCTSource.java +0 -244
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/events/AbstractEvent.java +0 -66
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/events/AndroidCallbackEvent.java +0 -38
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/events/EventEmitter.java +0 -45
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/events/FeatureClickEvent.java +0 -79
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/events/IEvent.java +0 -18
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/events/ImageMissingEvent.java +0 -42
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/events/LocationEvent.java +0 -100
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/events/MapChangeEvent.java +0 -47
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/events/MapClickEvent.java +0 -51
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/events/MapUserTrackingModeEvent.java +0 -36
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/events/OfflineEvent.java +0 -29
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/events/PointAnnotationClickEvent.java +0 -46
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/events/PointAnnotationDragEvent.java +0 -51
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/events/constants/EventKeys.java +0 -39
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/events/constants/EventTypes.java +0 -51
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/http/CustomHeadersInterceptor.java +0 -38
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/location/LocationManager.java +0 -147
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/location/UserLocation.java +0 -63
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/location/UserLocationVerticalAlignment.java +0 -11
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/location/UserTrackingMode.java +0 -63
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/location/UserTrackingState.java +0 -19
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/modules/RCTMGLLocationModule.java +0 -164
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/modules/RCTMGLLogging.java +0 -140
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/modules/RCTMGLModule.java +0 -377
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/modules/RCTMGLOfflineModule.java +0 -597
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/modules/RCTMGLSnapshotModule.java +0 -139
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/utils/BitmapUtils.java +0 -129
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/utils/ClusterPropertyEntry.java +0 -13
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/utils/ConvertUtils.java +0 -257
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/utils/DownloadMapImageTask.java +0 -159
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/utils/ExpressionParser.java +0 -74
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/utils/GeoJSONUtils.java +0 -209
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/utils/GeoViewport.java +0 -38
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/utils/ImageEntry.java +0 -25
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/utils/ResourceUtils.java +0 -30
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/utils/SimpleEventCallback.java +0 -30
- package/android/src/main/java-mapboxgl/common/com/mapbox/rctmgl/utils/SphericalMercator.java +0 -69
- package/android/src/main/java-mapboxgl/mapbox/com/mapbox/rctmgl/impl/InstanceManagerImpl.java +0 -35
- package/android/src/main/java-mapboxgl/mapbox/com/mapbox/rctmgl/impl/LocationEngineCallbackImpl.java +0 -12
- package/android/src/main/java-mapboxgl/mapbox/com/mapbox/rctmgl/impl/LocationEngineResultImpl.java +0 -18
- package/android/src/main/java-mapboxgl/mapbox/com/mapbox/rctmgl/impl/LocationManagerImpl.java +0 -64
- package/android/src/main/java-mapboxgl/mapbox/com/mapbox/rctmgl/impl/PermissionsManagerImpl.java +0 -10
- package/android/src/main/java-mapboxgl/mapbox/com/mapbox/rctmgl/impl/SymbolClickListenerImpl.java +0 -18
- package/android/src/main/java-mapboxgl/mapbox/com/mapbox/rctmgl/impl/TelemetryImpl.java +0 -11
- package/android/src/main/java-mapboxgl/maplibre/com/mapbox/rctmgl/impl/InstanceManagerImpl.java +0 -42
- package/android/src/main/java-mapboxgl/maplibre/com/mapbox/rctmgl/impl/LocationEngineCallbackImpl.java +0 -12
- package/android/src/main/java-mapboxgl/maplibre/com/mapbox/rctmgl/impl/LocationEngineResultImpl.java +0 -18
- package/android/src/main/java-mapboxgl/maplibre/com/mapbox/rctmgl/impl/LocationManagerImpl.java +0 -64
- package/android/src/main/java-mapboxgl/maplibre/com/mapbox/rctmgl/impl/PermissionsManagerImpl.java +0 -10
- package/android/src/main/java-mapboxgl/maplibre/com/mapbox/rctmgl/impl/SymbolClickListenerImpl.java +0 -18
- package/android/src/main/java-mapboxgl/maplibre/com/mapbox/rctmgl/impl/TelemetryImpl.java +0 -7
- package/android/src/main/java-v10/com/mapbox/rctmgl/components/styles/RCTMGLStyleFactory.java +0 -2586
- package/android/src/main/java-v10/com/mapbox/rctmgl/modules/RCTMGLSnapshotModule.java +0 -151
- package/android/src/main/java-v10/com/mapbox/rctmgl/utils/BitmapUtils.java +0 -183
- package/ios/RCTMGL/CameraMode.h +0 -18
- package/ios/RCTMGL/CameraMode.m +0 -18
- package/ios/RCTMGL/CameraStop.h +0 -26
- package/ios/RCTMGL/CameraStop.m +0 -83
- package/ios/RCTMGL/CameraUpdateItem.h +0 -18
- package/ios/RCTMGL/CameraUpdateItem.m +0 -178
- package/ios/RCTMGL/CameraUpdateQueue.h +0 -21
- package/ios/RCTMGL/CameraUpdateQueue.m +0 -74
- package/ios/RCTMGL/FilterParser.h +0 -14
- package/ios/RCTMGL/FilterParser.m +0 -22
- package/ios/RCTMGL/MGLCustomHeaders.h +0 -20
- package/ios/RCTMGL/MGLCustomHeaders.m +0 -98
- package/ios/RCTMGL/MGLFaux3DUserLocationAnnotationView.h +0 -23
- package/ios/RCTMGL/MGLFaux3DUserLocationAnnotationView.m +0 -474
- package/ios/RCTMGL/MGLModule.h +0 -13
- package/ios/RCTMGL/MGLModule.m +0 -336
- package/ios/RCTMGL/MGLOfflineModule.h +0 -19
- package/ios/RCTMGL/MGLOfflineModule.m +0 -537
- package/ios/RCTMGL/MGLSnapshotModule.h +0 -13
- package/ios/RCTMGL/MGLSnapshotModule.m +0 -80
- package/ios/RCTMGL/MGLUserLocationHeadingArrowLayer.h +0 -11
- package/ios/RCTMGL/MGLUserLocationHeadingArrowLayer.m +0 -57
- package/ios/RCTMGL/MGLUserLocationHeadingBeamLayer.h +0 -11
- package/ios/RCTMGL/MGLUserLocationHeadingBeamLayer.m +0 -102
- package/ios/RCTMGL/MGLUserLocationHeadingIndicator.h +0 -10
- package/ios/RCTMGL/RCTConvert+Mapbox.h +0 -16
- package/ios/RCTMGL/RCTConvert+Mapbox.m +0 -32
- package/ios/RCTMGL/RCTMGL.h +0 -13
- package/ios/RCTMGL/RCTMGL.m +0 -13
- package/ios/RCTMGL/RCTMGLBackgroundLayer.h +0 -14
- package/ios/RCTMGL/RCTMGLBackgroundLayer.m +0 -27
- package/ios/RCTMGL/RCTMGLBackgroundLayerManager.h +0 -13
- package/ios/RCTMGL/RCTMGLBackgroundLayerManager.m +0 -35
- package/ios/RCTMGL/RCTMGLCallout.h +0 -15
- package/ios/RCTMGL/RCTMGLCallout.m +0 -74
- package/ios/RCTMGL/RCTMGLCalloutManager.h +0 -13
- package/ios/RCTMGL/RCTMGLCalloutManager.m +0 -21
- package/ios/RCTMGL/RCTMGLCamera.h +0 -39
- package/ios/RCTMGL/RCTMGLCamera.m +0 -258
- package/ios/RCTMGL/RCTMGLCameraManager.h +0 -13
- package/ios/RCTMGL/RCTMGLCameraManager.m +0 -52
- package/ios/RCTMGL/RCTMGLCircleLayer.h +0 -13
- package/ios/RCTMGL/RCTMGLCircleLayer.m +0 -34
- package/ios/RCTMGL/RCTMGLCircleLayerManager.h +0 -13
- package/ios/RCTMGL/RCTMGLCircleLayerManager.m +0 -39
- package/ios/RCTMGL/RCTMGLEvent.h +0 -21
- package/ios/RCTMGL/RCTMGLEvent.m +0 -47
- package/ios/RCTMGL/RCTMGLEventProtocol.h +0 -16
- package/ios/RCTMGL/RCTMGLEventTypes.h +0 -50
- package/ios/RCTMGL/RCTMGLEventTypes.m +0 -49
- package/ios/RCTMGL/RCTMGLFillExtrusionLayer.h +0 -14
- package/ios/RCTMGL/RCTMGLFillExtrusionLayer.m +0 -32
- package/ios/RCTMGL/RCTMGLFillExtrusionLayerManager.h +0 -13
- package/ios/RCTMGL/RCTMGLFillExtrusionLayerManager.m +0 -39
- package/ios/RCTMGL/RCTMGLFillLayer.h +0 -14
- package/ios/RCTMGL/RCTMGLFillLayer.m +0 -33
- package/ios/RCTMGL/RCTMGLFillLayerManager.h +0 -13
- package/ios/RCTMGL/RCTMGLFillLayerManager.m +0 -37
- package/ios/RCTMGL/RCTMGLHeatmapLayer.h +0 -12
- package/ios/RCTMGL/RCTMGLHeatmapLayer.m +0 -30
- package/ios/RCTMGL/RCTMGLHeatmapLayerManager.h +0 -12
- package/ios/RCTMGL/RCTMGLHeatmapLayerManager.m +0 -38
- package/ios/RCTMGL/RCTMGLImageQueue.h +0 -19
- package/ios/RCTMGL/RCTMGLImageQueue.m +0 -57
- package/ios/RCTMGL/RCTMGLImageQueueOperation.h +0 -17
- package/ios/RCTMGL/RCTMGLImageQueueOperation.m +0 -138
- package/ios/RCTMGL/RCTMGLImageSource.h +0 -16
- package/ios/RCTMGL/RCTMGLImageSource.m +0 -60
- package/ios/RCTMGL/RCTMGLImageSourceManager.h +0 -13
- package/ios/RCTMGL/RCTMGLImageSourceManager.m +0 -25
- package/ios/RCTMGL/RCTMGLImages.h +0 -25
- package/ios/RCTMGL/RCTMGLImages.m +0 -126
- package/ios/RCTMGL/RCTMGLImagesManager.h +0 -5
- package/ios/RCTMGL/RCTMGLImagesManager.m +0 -21
- package/ios/RCTMGL/RCTMGLLayer.h +0 -52
- package/ios/RCTMGL/RCTMGLLayer.m +0 -236
- package/ios/RCTMGL/RCTMGLLight.h +0 -17
- package/ios/RCTMGL/RCTMGLLight.m +0 -46
- package/ios/RCTMGL/RCTMGLLightManager.h +0 -13
- package/ios/RCTMGL/RCTMGLLightManager.m +0 -23
- package/ios/RCTMGL/RCTMGLLineLayer.h +0 -14
- package/ios/RCTMGL/RCTMGLLineLayer.m +0 -33
- package/ios/RCTMGL/RCTMGLLineLayerManager.h +0 -13
- package/ios/RCTMGL/RCTMGLLineLayerManager.m +0 -40
- package/ios/RCTMGL/RCTMGLLocation.h +0 -19
- package/ios/RCTMGL/RCTMGLLocation.m +0 -32
- package/ios/RCTMGL/RCTMGLLocationManager.h +0 -30
- package/ios/RCTMGL/RCTMGLLocationManager.m +0 -180
- package/ios/RCTMGL/RCTMGLLocationManagerDelegate.h +0 -20
- package/ios/RCTMGL/RCTMGLLocationModule.h +0 -15
- package/ios/RCTMGL/RCTMGLLocationModule.m +0 -99
- package/ios/RCTMGL/RCTMGLLogging.h +0 -18
- package/ios/RCTMGL/RCTMGLLogging.m +0 -132
- package/ios/RCTMGL/RCTMGLMapTouchEvent.h +0 -25
- package/ios/RCTMGL/RCTMGLMapTouchEvent.m +0 -77
- package/ios/RCTMGL/RCTMGLMapView.h +0 -91
- package/ios/RCTMGL/RCTMGLMapView.m +0 -536
- package/ios/RCTMGL/RCTMGLMapViewManager.h +0 -17
- package/ios/RCTMGL/RCTMGLMapViewManager.m +0 -625
- package/ios/RCTMGL/RCTMGLNativeUserLocation.h +0 -18
- package/ios/RCTMGL/RCTMGLNativeUserLocation.m +0 -49
- package/ios/RCTMGL/RCTMGLNativeUserLocationManager.h +0 -5
- package/ios/RCTMGL/RCTMGLNativeUserLocationManager.m +0 -25
- package/ios/RCTMGL/RCTMGLPointAnnotation.h +0 -41
- package/ios/RCTMGL/RCTMGLPointAnnotation.m +0 -251
- package/ios/RCTMGL/RCTMGLPointAnnotationManager.h +0 -13
- package/ios/RCTMGL/RCTMGLPointAnnotationManager.m +0 -36
- package/ios/RCTMGL/RCTMGLRasterLayer.h +0 -14
- package/ios/RCTMGL/RCTMGLRasterLayer.m +0 -30
- package/ios/RCTMGL/RCTMGLRasterLayerManager.h +0 -13
- package/ios/RCTMGL/RCTMGLRasterLayerManager.m +0 -35
- package/ios/RCTMGL/RCTMGLRasterSource.h +0 -16
- package/ios/RCTMGL/RCTMGLRasterSource.m +0 -35
- package/ios/RCTMGL/RCTMGLRasterSourceManager.h +0 -13
- package/ios/RCTMGL/RCTMGLRasterSourceManager.m +0 -32
- package/ios/RCTMGL/RCTMGLShapeSource.h +0 -53
- package/ios/RCTMGL/RCTMGLShapeSource.m +0 -194
- package/ios/RCTMGL/RCTMGLShapeSourceManager.h +0 -14
- package/ios/RCTMGL/RCTMGLShapeSourceManager.m +0 -206
- package/ios/RCTMGL/RCTMGLSource.h +0 -35
- package/ios/RCTMGL/RCTMGLSource.m +0 -143
- package/ios/RCTMGL/RCTMGLStyle.h +0 -217
- package/ios/RCTMGL/RCTMGLStyle.m +0 -1640
- package/ios/RCTMGL/RCTMGLStyleValue.h +0 -27
- package/ios/RCTMGL/RCTMGLStyleValue.m +0 -167
- package/ios/RCTMGL/RCTMGLSymbolLayer.h +0 -19
- package/ios/RCTMGL/RCTMGLSymbolLayer.m +0 -121
- package/ios/RCTMGL/RCTMGLSymbolLayerManager.h +0 -13
- package/ios/RCTMGL/RCTMGLSymbolLayerManager.m +0 -40
- package/ios/RCTMGL/RCTMGLTileSource.h +0 -22
- package/ios/RCTMGL/RCTMGLTileSource.m +0 -31
- package/ios/RCTMGL/RCTMGLUserLocation.h +0 -15
- package/ios/RCTMGL/RCTMGLUserLocation.m +0 -38
- package/ios/RCTMGL/RCTMGLUtils.h +0 -31
- package/ios/RCTMGL/RCTMGLUtils.m +0 -218
- package/ios/RCTMGL/RCTMGLVectorLayer.h +0 -15
- package/ios/RCTMGL/RCTMGLVectorLayer.m +0 -59
- package/ios/RCTMGL/RCTMGLVectorSource.h +0 -16
- package/ios/RCTMGL/RCTMGLVectorSource.m +0 -28
- package/ios/RCTMGL/RCTMGLVectorSourceManager.h +0 -14
- package/ios/RCTMGL/RCTMGLVectorSourceManager.m +0 -79
- package/ios/RCTMGL/RNMBImageUtils.h +0 -17
- package/ios/RCTMGL/RNMBImageUtils.m +0 -31
- package/ios/RCTMGL/ViewManager.h +0 -16
- package/ios/RCTMGL/ViewManager.m +0 -63
- package/ios/RCTMGL-v10/RCTMGLMapViewManager.m +0 -107
- package/ios/RCTMGL-v10/RCTMGLMapViewManager.swift +0 -285
|
@@ -1,151 +0,0 @@
|
|
|
1
|
-
package com.mapbox.rctmgl.modules;
|
|
2
|
-
|
|
3
|
-
import android.content.Context;
|
|
4
|
-
import android.content.pm.PackageManager;
|
|
5
|
-
import android.graphics.Bitmap;
|
|
6
|
-
import android.net.Uri;
|
|
7
|
-
import android.os.AsyncTask;
|
|
8
|
-
import android.os.Handler;
|
|
9
|
-
import android.os.Looper;
|
|
10
|
-
import android.util.Base64;
|
|
11
|
-
import android.util.Log;
|
|
12
|
-
|
|
13
|
-
import com.facebook.react.bridge.Promise;
|
|
14
|
-
import com.facebook.react.bridge.ReactApplicationContext;
|
|
15
|
-
import com.facebook.react.bridge.ReactContextBaseJavaModule;
|
|
16
|
-
import com.facebook.react.bridge.ReactMethod;
|
|
17
|
-
import com.facebook.react.bridge.ReadableMap;
|
|
18
|
-
import com.facebook.react.module.annotations.ReactModule;
|
|
19
|
-
import com.mapbox.geojson.Feature;
|
|
20
|
-
import com.mapbox.geojson.FeatureCollection;
|
|
21
|
-
import com.mapbox.geojson.Point;
|
|
22
|
-
import com.mapbox.maps.CameraOptions;
|
|
23
|
-
import com.mapbox.maps.Image;
|
|
24
|
-
import com.mapbox.maps.MapSnapshotInterface;
|
|
25
|
-
import com.mapbox.maps.MapSnapshotOptions;
|
|
26
|
-
import com.mapbox.maps.ResourceOptions;
|
|
27
|
-
import com.mapbox.maps.SnapshotCreatedListener;
|
|
28
|
-
import com.mapbox.maps.Snapshotter;
|
|
29
|
-
import com.mapbox.maps.Size;
|
|
30
|
-
import com.mapbox.rctmgl.utils.BitmapUtils;
|
|
31
|
-
import com.mapbox.rctmgl.utils.GeoJSONUtils;
|
|
32
|
-
|
|
33
|
-
import java.io.IOException;
|
|
34
|
-
import java.io.OutputStream;
|
|
35
|
-
import java.util.HashMap;
|
|
36
|
-
import java.util.Map;
|
|
37
|
-
import java.util.UUID;
|
|
38
|
-
|
|
39
|
-
import static android.content.Context.CONTEXT_IGNORE_SECURITY;
|
|
40
|
-
|
|
41
|
-
@ReactModule(name = RCTMGLSnapshotModule.REACT_CLASS)
|
|
42
|
-
public class RCTMGLSnapshotModule extends ReactContextBaseJavaModule {
|
|
43
|
-
public static final String REACT_CLASS = "RCTMGLSnapshotModule";
|
|
44
|
-
|
|
45
|
-
private ReactApplicationContext mContext;
|
|
46
|
-
|
|
47
|
-
// prevents snapshotter from being GC'ed
|
|
48
|
-
private Map<String, Snapshotter> mSnapshotterMap;
|
|
49
|
-
|
|
50
|
-
public RCTMGLSnapshotModule(ReactApplicationContext reactContext) {
|
|
51
|
-
super(reactContext);
|
|
52
|
-
mContext = reactContext;
|
|
53
|
-
mSnapshotterMap = new HashMap<>();
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
@Override
|
|
57
|
-
public String getName() {
|
|
58
|
-
return REACT_CLASS;
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
@ReactMethod
|
|
62
|
-
public void takeSnap(final ReadableMap jsOptions, final Promise promise) {
|
|
63
|
-
// FileSource.getInstance(mContext).activate();
|
|
64
|
-
|
|
65
|
-
mContext.runOnUiQueueThread(new Runnable() {
|
|
66
|
-
@Override
|
|
67
|
-
public void run() {
|
|
68
|
-
final String snapshotterID = UUID.randomUUID().toString();
|
|
69
|
-
|
|
70
|
-
final Snapshotter snapshotter = new Snapshotter(mContext, getOptions(jsOptions));
|
|
71
|
-
snapshotter.setStyleUri(jsOptions.getString("styleURL"));
|
|
72
|
-
snapshotter.setCamera(getCameraOptions(jsOptions));
|
|
73
|
-
|
|
74
|
-
mSnapshotterMap.put(snapshotterID, snapshotter);
|
|
75
|
-
|
|
76
|
-
snapshotter.start(new SnapshotCreatedListener() {
|
|
77
|
-
@Override
|
|
78
|
-
public void onSnapshotResult(MapSnapshotInterface snapshot) {
|
|
79
|
-
try {
|
|
80
|
-
if (snapshot == null) {
|
|
81
|
-
Log.w(REACT_CLASS, "Snapshot failed");
|
|
82
|
-
promise.reject(REACT_CLASS, "Snapshot failed");
|
|
83
|
-
mSnapshotterMap.remove(snapshotterID);
|
|
84
|
-
} else {
|
|
85
|
-
Image image = snapshot.image();
|
|
86
|
-
|
|
87
|
-
String result = null;
|
|
88
|
-
if (jsOptions.getBoolean("writeToDisk")) {
|
|
89
|
-
result = BitmapUtils.createImgTempFile(mContext, image);
|
|
90
|
-
} else {
|
|
91
|
-
result = BitmapUtils.createImgBase64(image);
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
if (result == null) {
|
|
95
|
-
promise.reject(REACT_CLASS, "Could not generate snapshot, please check Android logs for more info.");
|
|
96
|
-
return;
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
promise.resolve(result);
|
|
100
|
-
mSnapshotterMap.remove(snapshotterID);
|
|
101
|
-
}
|
|
102
|
-
} catch (IOException e) {
|
|
103
|
-
e.printStackTrace();
|
|
104
|
-
promise.reject(REACT_CLASS, e.getLocalizedMessage());
|
|
105
|
-
}
|
|
106
|
-
}
|
|
107
|
-
});
|
|
108
|
-
}
|
|
109
|
-
});
|
|
110
|
-
}
|
|
111
|
-
|
|
112
|
-
private CameraOptions getCameraOptions(ReadableMap jsOptions) {
|
|
113
|
-
Feature centerPoint = Feature.fromJson(jsOptions.getString("centerCoordinate"));
|
|
114
|
-
Point point = (Point) centerPoint.geometry();
|
|
115
|
-
|
|
116
|
-
CameraOptions.Builder cameraOptionsBuilder = new CameraOptions.Builder();
|
|
117
|
-
CameraOptions cameraOptions = cameraOptionsBuilder
|
|
118
|
-
.center(point)
|
|
119
|
-
.pitch(jsOptions.getDouble("pitch"))
|
|
120
|
-
.bearing(jsOptions.getDouble("heading"))
|
|
121
|
-
.zoom(jsOptions.getDouble("zoomLevel"))
|
|
122
|
-
.build();
|
|
123
|
-
return cameraOptions;
|
|
124
|
-
}
|
|
125
|
-
|
|
126
|
-
private MapSnapshotOptions getOptions(ReadableMap jsOptions) {
|
|
127
|
-
MapSnapshotOptions.Builder builder = new MapSnapshotOptions.Builder();
|
|
128
|
-
|
|
129
|
-
builder.size(
|
|
130
|
-
new Size(
|
|
131
|
-
(int) jsOptions.getDouble("width"),
|
|
132
|
-
(int) jsOptions.getDouble("height")
|
|
133
|
-
)
|
|
134
|
-
);
|
|
135
|
-
builder.pixelRatio(Float.valueOf(mContext.getResources().getDisplayMetrics().density).intValue());
|
|
136
|
-
|
|
137
|
-
builder.resourceOptions(new ResourceOptions.Builder().accessToken(RCTMGLModule.getAccessToken(mContext)).build());
|
|
138
|
-
return builder.build();
|
|
139
|
-
}
|
|
140
|
-
|
|
141
|
-
private void closeSnapshotOutputStream(OutputStream outputStream) {
|
|
142
|
-
if (outputStream == null) {
|
|
143
|
-
return;
|
|
144
|
-
}
|
|
145
|
-
try {
|
|
146
|
-
outputStream.close();
|
|
147
|
-
} catch (IOException e) {
|
|
148
|
-
Log.w(REACT_CLASS, e.getLocalizedMessage());
|
|
149
|
-
}
|
|
150
|
-
}
|
|
151
|
-
}
|
|
@@ -1,183 +0,0 @@
|
|
|
1
|
-
package com.mapbox.rctmgl.utils;
|
|
2
|
-
|
|
3
|
-
import android.content.Context;
|
|
4
|
-
import android.content.res.Resources;
|
|
5
|
-
import android.graphics.Bitmap;
|
|
6
|
-
import android.graphics.BitmapFactory;
|
|
7
|
-
import android.graphics.Canvas;
|
|
8
|
-
import android.graphics.Color;
|
|
9
|
-
import android.graphics.drawable.Drawable;
|
|
10
|
-
import android.graphics.drawable.BitmapDrawable;
|
|
11
|
-
import android.net.Uri;
|
|
12
|
-
import android.util.Base64;
|
|
13
|
-
import android.util.Log;
|
|
14
|
-
import android.util.LruCache;
|
|
15
|
-
import android.view.View;
|
|
16
|
-
|
|
17
|
-
import androidx.annotation.Nullable;
|
|
18
|
-
|
|
19
|
-
import com.mapbox.maps.Image;
|
|
20
|
-
import com.mapbox.maps.extension.style.image.ImageExtensionImpl;
|
|
21
|
-
|
|
22
|
-
import java.io.ByteArrayOutputStream;
|
|
23
|
-
import java.io.File;
|
|
24
|
-
import java.io.FileOutputStream;
|
|
25
|
-
import java.io.IOException;
|
|
26
|
-
import java.io.InputStream;
|
|
27
|
-
import java.io.OutputStream;
|
|
28
|
-
import java.net.URL;
|
|
29
|
-
import java.nio.ByteBuffer;
|
|
30
|
-
|
|
31
|
-
public class BitmapUtils {
|
|
32
|
-
public static final String LOG_TAG = "BitmapUtils";
|
|
33
|
-
|
|
34
|
-
private static int CACHE_SIZE = 1024 * 1024;
|
|
35
|
-
private static LruCache<String, Bitmap> mCache = new LruCache<String, Bitmap>(CACHE_SIZE) {
|
|
36
|
-
protected int sizeOf(String key, Bitmap bitmap) {
|
|
37
|
-
return bitmap.getByteCount();
|
|
38
|
-
}
|
|
39
|
-
};
|
|
40
|
-
|
|
41
|
-
public static Bitmap getBitmapFromURL(String url) {
|
|
42
|
-
return BitmapUtils.getBitmapFromURL(url, null);
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
public static Image toImage(Bitmap bitmap) {
|
|
46
|
-
if (bitmap.getConfig() != Bitmap.Config.ARGB_8888) {
|
|
47
|
-
throw new RuntimeException("Only ARGB_8888 bitmap config is supported!");
|
|
48
|
-
}
|
|
49
|
-
ByteBuffer byteBuffer = ByteBuffer.allocate(bitmap.getByteCount());
|
|
50
|
-
bitmap.copyPixelsToBuffer(byteBuffer);
|
|
51
|
-
return new Image(bitmap.getWidth(), bitmap.getHeight(), byteBuffer.array());
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
public static Image toImage(BitmapDrawable bitmapDrawable) {
|
|
55
|
-
return toImage(bitmapDrawable.getBitmap());
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
@Nullable
|
|
59
|
-
public static Bitmap getBitmapFromDrawable(@Nullable Drawable sourceDrawable) {
|
|
60
|
-
if (sourceDrawable == null) {
|
|
61
|
-
return null;
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
if (sourceDrawable instanceof BitmapDrawable) {
|
|
65
|
-
return ((BitmapDrawable) sourceDrawable).getBitmap();
|
|
66
|
-
} else {
|
|
67
|
-
//copying drawable object to not manipulate on the same reference
|
|
68
|
-
Drawable.ConstantState constantState = sourceDrawable.getConstantState();
|
|
69
|
-
if (constantState == null) {
|
|
70
|
-
return null;
|
|
71
|
-
}
|
|
72
|
-
Drawable drawable = constantState.newDrawable().mutate();
|
|
73
|
-
|
|
74
|
-
Bitmap bitmap = Bitmap.createBitmap(drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight(),
|
|
75
|
-
Bitmap.Config.ARGB_8888);
|
|
76
|
-
Canvas canvas = new Canvas(bitmap);
|
|
77
|
-
drawable.setBounds(0, 0, canvas.getWidth(), canvas.getHeight());
|
|
78
|
-
drawable.draw(canvas);
|
|
79
|
-
return bitmap;
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
public static Bitmap getBitmapFromURL(String url, BitmapFactory.Options options) {
|
|
84
|
-
Bitmap bitmap = getImage(url);
|
|
85
|
-
|
|
86
|
-
if (bitmap != null) {
|
|
87
|
-
return bitmap;
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
try {
|
|
91
|
-
InputStream bitmapStream = new URL(url).openStream();
|
|
92
|
-
bitmap = BitmapFactory.decodeStream(bitmapStream, null, options);
|
|
93
|
-
bitmapStream.close();
|
|
94
|
-
addImage(url, bitmap);
|
|
95
|
-
} catch (Exception e) {
|
|
96
|
-
Log.w(LOG_TAG, e.getLocalizedMessage());
|
|
97
|
-
bitmap = Bitmap.createBitmap(1, 1, Bitmap.Config.ALPHA_8); // Returns a transparent bitmap
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
return bitmap;
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
public static Bitmap getBitmapFromResource(Context context, String resourceName, BitmapFactory.Options options) {
|
|
104
|
-
Resources resources = context.getResources();
|
|
105
|
-
int resID = resources.getIdentifier(resourceName, "drawable", context.getPackageName());
|
|
106
|
-
return BitmapFactory.decodeResource(resources, resID, options);
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
public static String createImgTempFile(Context context, Image image) throws IOException {
|
|
110
|
-
Bitmap bitmap = Bitmap.createBitmap(image.getWidth(), image.getHeight(), Bitmap.Config.ARGB_8888);
|
|
111
|
-
bitmap.copyPixelsFromBuffer(ByteBuffer.wrap(image.getData()));
|
|
112
|
-
return createTempFile(context, bitmap);
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
public static String createTempFile(Context context, Bitmap bitmap) {
|
|
116
|
-
File tempFile = null;
|
|
117
|
-
FileOutputStream outputStream = null;
|
|
118
|
-
|
|
119
|
-
try {
|
|
120
|
-
tempFile = File.createTempFile(LOG_TAG, ".png", context.getCacheDir());
|
|
121
|
-
outputStream = new FileOutputStream(tempFile);
|
|
122
|
-
} catch (IOException e) {
|
|
123
|
-
Log.w(LOG_TAG, e.getLocalizedMessage());
|
|
124
|
-
}
|
|
125
|
-
|
|
126
|
-
if (tempFile == null) {
|
|
127
|
-
return null;
|
|
128
|
-
}
|
|
129
|
-
|
|
130
|
-
bitmap.compress(Bitmap.CompressFormat.PNG, 100, outputStream);
|
|
131
|
-
closeSnapshotOutputStream(outputStream);
|
|
132
|
-
return Uri.fromFile(tempFile).toString();
|
|
133
|
-
}
|
|
134
|
-
|
|
135
|
-
public static String createBase64(Bitmap bitmap) {
|
|
136
|
-
ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
|
|
137
|
-
bitmap.compress(Bitmap.CompressFormat.PNG, 100, outputStream);
|
|
138
|
-
byte[] bitmapBytes = outputStream.toByteArray();
|
|
139
|
-
closeSnapshotOutputStream(outputStream);
|
|
140
|
-
String base64Prefix = "data:image/png;base64,";
|
|
141
|
-
return base64Prefix + Base64.encodeToString(bitmapBytes, Base64.NO_WRAP);
|
|
142
|
-
}
|
|
143
|
-
|
|
144
|
-
public static String createImgBase64(Image image) {
|
|
145
|
-
Bitmap bitmap = Bitmap.createBitmap(image.getWidth(), image.getHeight(), Bitmap.Config.ARGB_8888);
|
|
146
|
-
bitmap.copyPixelsFromBuffer(ByteBuffer.wrap(image.getData()));
|
|
147
|
-
return createBase64(bitmap);
|
|
148
|
-
}
|
|
149
|
-
|
|
150
|
-
public static Bitmap viewToBitmap(View v, int left, int top, int right, int bottom) {
|
|
151
|
-
Bitmap bitmap = null;
|
|
152
|
-
if (v != null) {
|
|
153
|
-
int w = right - left;
|
|
154
|
-
int h = bottom - top;
|
|
155
|
-
if (w > 0 && h > 0) {
|
|
156
|
-
bitmap = Bitmap.createBitmap(w, h, Bitmap.Config.ARGB_8888);
|
|
157
|
-
bitmap.eraseColor(Color.TRANSPARENT);
|
|
158
|
-
Canvas canvas = new Canvas(bitmap);
|
|
159
|
-
v.draw(canvas);
|
|
160
|
-
}
|
|
161
|
-
}
|
|
162
|
-
return bitmap;
|
|
163
|
-
}
|
|
164
|
-
|
|
165
|
-
private static void addImage(String imageURL, Bitmap bitmap) {
|
|
166
|
-
mCache.put(imageURL, bitmap);
|
|
167
|
-
}
|
|
168
|
-
|
|
169
|
-
private static Bitmap getImage(String imageURL) {
|
|
170
|
-
return mCache.get(imageURL);
|
|
171
|
-
}
|
|
172
|
-
|
|
173
|
-
private static void closeSnapshotOutputStream(OutputStream outputStream) {
|
|
174
|
-
if (outputStream == null) {
|
|
175
|
-
return;
|
|
176
|
-
}
|
|
177
|
-
try {
|
|
178
|
-
outputStream.close();
|
|
179
|
-
} catch (IOException e) {
|
|
180
|
-
Log.w(LOG_TAG, e.getLocalizedMessage());
|
|
181
|
-
}
|
|
182
|
-
}
|
|
183
|
-
}
|
package/ios/RCTMGL/CameraMode.h
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
//
|
|
2
|
-
// CameraMode.h
|
|
3
|
-
// RCTMGL
|
|
4
|
-
//
|
|
5
|
-
// Created by Nick Italiano on 9/6/17.
|
|
6
|
-
// Copyright © 2017 Mapbox Inc. All rights reserved.
|
|
7
|
-
//
|
|
8
|
-
|
|
9
|
-
#import <Foundation/Foundation.h>
|
|
10
|
-
|
|
11
|
-
@interface CameraMode : NSObject
|
|
12
|
-
|
|
13
|
-
extern int const RCT_MAPBOX_CAMERA_MODE_FLIGHT;
|
|
14
|
-
extern int const RCT_MAPBOX_CAMERA_MODE_EASE;
|
|
15
|
-
extern int const RCT_MAPBOX_CAMERA_MODE_LINEAR;
|
|
16
|
-
extern int const RCT_MAPBOX_CAMERA_MODE_NONE;
|
|
17
|
-
|
|
18
|
-
@end
|
package/ios/RCTMGL/CameraMode.m
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
//
|
|
2
|
-
// CameraMode.m
|
|
3
|
-
// RCTMGL
|
|
4
|
-
//
|
|
5
|
-
// Created by Nick Italiano on 9/6/17.
|
|
6
|
-
// Copyright © 2017 Mapbox Inc. All rights reserved.
|
|
7
|
-
//
|
|
8
|
-
|
|
9
|
-
#import "CameraMode.h"
|
|
10
|
-
|
|
11
|
-
@implementation CameraMode
|
|
12
|
-
|
|
13
|
-
int const RCT_MAPBOX_CAMERA_MODE_FLIGHT = 1;
|
|
14
|
-
int const RCT_MAPBOX_CAMERA_MODE_EASE = 2;
|
|
15
|
-
int const RCT_MAPBOX_CAMERA_MODE_LINEAR = 3;
|
|
16
|
-
int const RCT_MAPBOX_CAMERA_MODE_NONE = 4;
|
|
17
|
-
|
|
18
|
-
@end
|
package/ios/RCTMGL/CameraStop.h
DELETED
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
//
|
|
2
|
-
// CameraStop.h
|
|
3
|
-
// RCTMGL
|
|
4
|
-
//
|
|
5
|
-
// Created by Nick Italiano on 9/5/17.
|
|
6
|
-
// Copyright © 2017 Mapbox Inc. All rights reserved.
|
|
7
|
-
//
|
|
8
|
-
|
|
9
|
-
@import Mapbox;
|
|
10
|
-
#import "RCTMGLCamera.h"
|
|
11
|
-
|
|
12
|
-
@interface CameraStop : NSObject
|
|
13
|
-
|
|
14
|
-
@property (nonatomic, strong) NSNumber *pitch;
|
|
15
|
-
@property (nonatomic, strong) NSNumber *heading;
|
|
16
|
-
@property (nonatomic, strong) NSNumber *zoom;
|
|
17
|
-
@property (nonatomic, strong) NSNumber *mode;
|
|
18
|
-
@property (nonatomic, assign) NSTimeInterval duration;
|
|
19
|
-
|
|
20
|
-
@property (nonatomic, assign) CLLocationCoordinate2D coordinate;
|
|
21
|
-
@property (nonatomic, assign) MGLCoordinateBounds bounds;
|
|
22
|
-
@property (nonatomic, assign) UIEdgeInsets padding;
|
|
23
|
-
|
|
24
|
-
+ (CameraStop*)fromDictionary:(NSDictionary*)args;
|
|
25
|
-
|
|
26
|
-
@end
|
package/ios/RCTMGL/CameraStop.m
DELETED
|
@@ -1,83 +0,0 @@
|
|
|
1
|
-
//
|
|
2
|
-
// CameraStop.m
|
|
3
|
-
// RCTMGL
|
|
4
|
-
//
|
|
5
|
-
// Created by Nick Italiano on 9/5/17.
|
|
6
|
-
// Copyright © 2017 Mapbox Inc. All rights reserved.
|
|
7
|
-
//
|
|
8
|
-
|
|
9
|
-
#import "CameraStop.h"
|
|
10
|
-
#import "CameraMode.h"
|
|
11
|
-
#import "RCTMGLUtils.h"
|
|
12
|
-
#import "RCTMGLCamera.h"
|
|
13
|
-
|
|
14
|
-
@implementation CameraStop
|
|
15
|
-
|
|
16
|
-
- (void)setMode:(NSNumber *)mode
|
|
17
|
-
{
|
|
18
|
-
int modeInt = [mode intValue];
|
|
19
|
-
|
|
20
|
-
if (modeInt == RCT_MAPBOX_CAMERA_MODE_FLIGHT) {
|
|
21
|
-
_mode = [NSNumber numberWithInt:modeInt];
|
|
22
|
-
} else if (modeInt == RCT_MAPBOX_CAMERA_MODE_NONE) {
|
|
23
|
-
_mode = [NSNumber numberWithInt:modeInt];
|
|
24
|
-
} else if (modeInt == RCT_MAPBOX_CAMERA_MODE_LINEAR) {
|
|
25
|
-
_mode = [NSNumber numberWithInt:modeInt];
|
|
26
|
-
} else {
|
|
27
|
-
_mode = [NSNumber numberWithInt:RCT_MAPBOX_CAMERA_MODE_EASE];
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
-(id)init {
|
|
32
|
-
if (self = [super init]) {
|
|
33
|
-
self.coordinate = kCLLocationCoordinate2DInvalid;
|
|
34
|
-
self.bounds = MGLCoordinateBoundsMake(kCLLocationCoordinate2DInvalid, kCLLocationCoordinate2DInvalid);
|
|
35
|
-
}
|
|
36
|
-
return self;
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
+ (CameraStop*)fromDictionary:(NSDictionary *)args
|
|
41
|
-
{
|
|
42
|
-
CameraStop *stop = [[CameraStop alloc] init];
|
|
43
|
-
|
|
44
|
-
if (args[@"pitch"]) {
|
|
45
|
-
stop.pitch = args[@"pitch"];
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
if (args[@"heading"]) {
|
|
49
|
-
stop.heading = args[@"heading"];
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
if (args[@"centerCoordinate"]) {
|
|
53
|
-
stop.coordinate = [RCTMGLUtils fromFeature:args[@"centerCoordinate"]];
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
if (args[@"zoom"]) {
|
|
57
|
-
stop.zoom = args[@"zoom"];
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
if (args[@"mode"]) {
|
|
61
|
-
stop.mode = args[@"mode"];
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
if (args[@"bounds"]) {
|
|
65
|
-
stop.bounds = [RCTMGLUtils fromFeatureCollection:args[@"bounds"]];
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
CGFloat paddingTop = args[@"paddingTop"] ? [args[@"paddingTop"] floatValue] : 0.0;
|
|
69
|
-
CGFloat paddingRight = args[@"paddingRight"] ? [args[@"paddingRight"] floatValue] : 0.0;
|
|
70
|
-
CGFloat paddingBottom = args[@"paddingBottom"] ? [args[@"paddingBottom"] floatValue] : 0.0;
|
|
71
|
-
CGFloat paddingLeft = args[@"paddingLeft"] ? [args[@"paddingLeft"] floatValue] : 0.0;
|
|
72
|
-
stop.padding = UIEdgeInsetsMake(paddingTop, paddingLeft, paddingBottom, paddingRight);
|
|
73
|
-
|
|
74
|
-
NSTimeInterval duration = 2.0;
|
|
75
|
-
if (args[@"duration"]) {
|
|
76
|
-
duration = [RCTMGLUtils fromMS:args[@"duration"]];
|
|
77
|
-
}
|
|
78
|
-
stop.duration = duration;
|
|
79
|
-
|
|
80
|
-
return stop;
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
@end
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
//
|
|
2
|
-
// CameraUpdateItem.h
|
|
3
|
-
// RCTMGL
|
|
4
|
-
//
|
|
5
|
-
// Created by Nick Italiano on 9/6/17.
|
|
6
|
-
// Copyright © 2017 Mapbox Inc. All rights reserved.
|
|
7
|
-
//
|
|
8
|
-
|
|
9
|
-
#import "CameraStop.h"
|
|
10
|
-
#import "RCTMGLMapView.h"
|
|
11
|
-
|
|
12
|
-
@interface CameraUpdateItem : NSObject
|
|
13
|
-
|
|
14
|
-
@property (nonatomic, strong) CameraStop* _Nonnull cameraStop;
|
|
15
|
-
|
|
16
|
-
- (void)execute:(RCTMGLMapView* _Nonnull)mapView withCompletionHandler:(nullable void (^)(void))completionHandler;
|
|
17
|
-
|
|
18
|
-
@end
|
|
@@ -1,178 +0,0 @@
|
|
|
1
|
-
//
|
|
2
|
-
// CameraUpdateItem.m
|
|
3
|
-
// RCTMGL
|
|
4
|
-
//
|
|
5
|
-
// Created by Nick Italiano on 9/6/17.
|
|
6
|
-
// Copyright © 2017 Mapbox Inc. All rights reserved.
|
|
7
|
-
//
|
|
8
|
-
|
|
9
|
-
#import "CameraUpdateItem.h"
|
|
10
|
-
#import "CameraMode.h"
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
@interface MGLMapView(FlyToWithPadding)
|
|
14
|
-
- (void)_flyToCamera:(MGLMapCamera *)camera edgePadding:(UIEdgeInsets)insets withDuration:(NSTimeInterval)duration peakAltitude:(CLLocationDistance)peakAltitude completionHandler:(nullable void (^)(void))completion;
|
|
15
|
-
@end
|
|
16
|
-
|
|
17
|
-
@interface RCTMGLCameraWithPadding : MGLMapCamera
|
|
18
|
-
|
|
19
|
-
@property (nonatomic) MGLMapCamera* _Nonnull camera;
|
|
20
|
-
@property (nonatomic) UIEdgeInsets boundsPadding;
|
|
21
|
-
|
|
22
|
-
@end
|
|
23
|
-
|
|
24
|
-
@implementation RCTMGLCameraWithPadding
|
|
25
|
-
|
|
26
|
-
@end
|
|
27
|
-
|
|
28
|
-
@implementation CameraUpdateItem
|
|
29
|
-
|
|
30
|
-
- (void)execute:(RCTMGLMapView *)mapView withCompletionHandler:(void (^)(void))completionHandler
|
|
31
|
-
{
|
|
32
|
-
if (_cameraStop.mode == [NSNumber numberWithInt:RCT_MAPBOX_CAMERA_MODE_FLIGHT]) {
|
|
33
|
-
[self _flyToCamera:mapView withCompletionHandler:completionHandler];
|
|
34
|
-
} else if (_cameraStop.mode == [NSNumber numberWithInt:RCT_MAPBOX_CAMERA_MODE_EASE]) {
|
|
35
|
-
[self _moveCamera:mapView animated:YES ease:YES withCompletionHandler:completionHandler];
|
|
36
|
-
} else if (_cameraStop.mode == [NSNumber numberWithInt:RCT_MAPBOX_CAMERA_MODE_LINEAR]) {
|
|
37
|
-
[self _moveCamera:mapView animated:YES ease:NO withCompletionHandler:completionHandler];
|
|
38
|
-
} else {
|
|
39
|
-
[self _moveCamera:mapView animated:NO ease:NO withCompletionHandler:completionHandler];
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
- (void)_flyToCamera:(RCTMGLMapView*)mapView withCompletionHandler:(void (^)(void))completionHandler
|
|
44
|
-
{
|
|
45
|
-
RCTMGLCameraWithPadding *nextCamera = [self _makeCamera:mapView];
|
|
46
|
-
|
|
47
|
-
if ([mapView respondsToSelector:@selector(_flyToCamera:edgePadding:withDuration:peakAltitude:completionHandler:)]) {
|
|
48
|
-
[mapView
|
|
49
|
-
_flyToCamera:nextCamera.camera
|
|
50
|
-
edgePadding:nextCamera.boundsPadding
|
|
51
|
-
withDuration:_cameraStop.duration
|
|
52
|
-
peakAltitude:-1
|
|
53
|
-
completionHandler:completionHandler];
|
|
54
|
-
} else {
|
|
55
|
-
[mapView
|
|
56
|
-
flyToCamera:nextCamera.camera
|
|
57
|
-
withDuration:_cameraStop.duration
|
|
58
|
-
completionHandler:completionHandler];
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
- (void)_moveCamera:(RCTMGLMapView*)mapView animated:(BOOL)animated ease:(BOOL)ease withCompletionHandler:(void (^)(void))completionHandler
|
|
63
|
-
{
|
|
64
|
-
RCTMGLCameraWithPadding *nextCamera = [self _makeCamera:mapView];
|
|
65
|
-
NSString *easeFunctionName = ease ? kCAMediaTimingFunctionEaseInEaseOut : kCAMediaTimingFunctionLinear;
|
|
66
|
-
|
|
67
|
-
[mapView setCamera:nextCamera.camera
|
|
68
|
-
withDuration:animated ? _cameraStop.duration : 0
|
|
69
|
-
animationTimingFunction:[CAMediaTimingFunction functionWithName:easeFunctionName]
|
|
70
|
-
edgePadding:nextCamera.boundsPadding
|
|
71
|
-
completionHandler:completionHandler];
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
- (RCTMGLCameraWithPadding*)_makeCamera:(RCTMGLMapView*)mapView
|
|
75
|
-
{
|
|
76
|
-
MGLMapCamera *nextCamera = [mapView.camera copy];
|
|
77
|
-
|
|
78
|
-
UIEdgeInsets padding = [self _clippedPadding:_cameraStop.padding forView:mapView];
|
|
79
|
-
if (padding.top <= 0 && padding.bottom <= 0) {
|
|
80
|
-
// If all padding properties are 0 in the update, and the bounds and centerCoordinate do not
|
|
81
|
-
// change, the padding doesn't change either. This seems to be a bug in the iOS SDK.
|
|
82
|
-
padding.top = 1.0;
|
|
83
|
-
padding.bottom = 1.0;
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
bool hasSetAltitude = false;
|
|
87
|
-
|
|
88
|
-
if ([self _isCoordValid:_cameraStop.coordinate]) {
|
|
89
|
-
MGLCoordinateBounds boundsFromCoord = { .sw = _cameraStop.coordinate, .ne = _cameraStop.coordinate };
|
|
90
|
-
MGLMapCamera *boundsCamera = [mapView
|
|
91
|
-
camera:nextCamera
|
|
92
|
-
fittingCoordinateBounds:boundsFromCoord
|
|
93
|
-
edgePadding: padding];
|
|
94
|
-
nextCamera.centerCoordinate = boundsCamera.centerCoordinate;
|
|
95
|
-
} else if ([self _areBoundsValid:_cameraStop.bounds]) {
|
|
96
|
-
MGLMapCamera *boundsCamera = [mapView
|
|
97
|
-
camera:nextCamera
|
|
98
|
-
fittingCoordinateBounds:_cameraStop.bounds
|
|
99
|
-
edgePadding: padding];
|
|
100
|
-
nextCamera.centerCoordinate = boundsCamera.centerCoordinate;
|
|
101
|
-
nextCamera.altitude = boundsCamera.altitude;
|
|
102
|
-
hasSetAltitude = true;
|
|
103
|
-
}
|
|
104
|
-
|
|
105
|
-
if (_cameraStop.pitch != nil) {
|
|
106
|
-
nextCamera.pitch = [_cameraStop.pitch floatValue];
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
if (_cameraStop.heading != nil) {
|
|
110
|
-
nextCamera.heading = [_cameraStop.heading floatValue];
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
if (_cameraStop.zoom != nil && hasSetAltitude == false) {
|
|
114
|
-
nextCamera.altitude = [mapView
|
|
115
|
-
altitudeFromZoom:[_cameraStop.zoom doubleValue]
|
|
116
|
-
atLatitude:nextCamera.centerCoordinate.latitude
|
|
117
|
-
atPitch:nextCamera.pitch];
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
RCTMGLCameraWithPadding* cameraWithPadding = [[RCTMGLCameraWithPadding alloc] init];
|
|
121
|
-
cameraWithPadding.camera = nextCamera;
|
|
122
|
-
cameraWithPadding.boundsPadding = padding;
|
|
123
|
-
return cameraWithPadding;
|
|
124
|
-
}
|
|
125
|
-
|
|
126
|
-
- (UIEdgeInsets)_clippedPadding:(UIEdgeInsets)padding forView:(RCTMGLMapView*)mapView
|
|
127
|
-
{
|
|
128
|
-
UIEdgeInsets result = padding;
|
|
129
|
-
if ((padding.top + padding.bottom) >= mapView.frame.size.height) {
|
|
130
|
-
double totalPadding = padding.top + padding.bottom;
|
|
131
|
-
double extra = totalPadding - mapView.frame.size.height + 1.0;
|
|
132
|
-
result.top -= (padding.top * extra) / totalPadding;
|
|
133
|
-
result.bottom -= (padding.bottom * extra) / totalPadding;
|
|
134
|
-
}
|
|
135
|
-
if ((padding.left + padding.right) >= mapView.frame.size.width) {
|
|
136
|
-
double totalPadding = padding.left + padding.right;
|
|
137
|
-
double extra = totalPadding - mapView.frame.size.width + 1.0;
|
|
138
|
-
result.left -= (padding.left * extra) / totalPadding;
|
|
139
|
-
result.right -= (padding.right * extra) / totalPadding;
|
|
140
|
-
}
|
|
141
|
-
return result;
|
|
142
|
-
}
|
|
143
|
-
|
|
144
|
-
- (BOOL)_areBoundsValid:(MGLCoordinateBounds)bounds {
|
|
145
|
-
BOOL isValid = CLLocationCoordinate2DIsValid(bounds.ne) && CLLocationCoordinate2DIsValid(bounds.sw);
|
|
146
|
-
|
|
147
|
-
if (!isValid) {
|
|
148
|
-
return NO;
|
|
149
|
-
}
|
|
150
|
-
|
|
151
|
-
CLLocationCoordinate2D ne = bounds.ne;
|
|
152
|
-
CLLocationCoordinate2D sw = bounds.sw;
|
|
153
|
-
return [self _isCoordValid:ne] && [self _isCoordValid:sw];
|
|
154
|
-
}
|
|
155
|
-
|
|
156
|
-
- (BOOL)_isCoordValid:(CLLocationCoordinate2D)coord
|
|
157
|
-
{
|
|
158
|
-
BOOL isValid = CLLocationCoordinate2DIsValid(coord);
|
|
159
|
-
|
|
160
|
-
if (!isValid) {
|
|
161
|
-
return NO;
|
|
162
|
-
}
|
|
163
|
-
|
|
164
|
-
return YES;
|
|
165
|
-
}
|
|
166
|
-
|
|
167
|
-
- (BOOL)_hasCenterCoordAndZoom
|
|
168
|
-
{
|
|
169
|
-
BOOL isValid = CLLocationCoordinate2DIsValid(_cameraStop.coordinate) && _cameraStop.zoom != nil;
|
|
170
|
-
|
|
171
|
-
if (!isValid) {
|
|
172
|
-
return NO;
|
|
173
|
-
}
|
|
174
|
-
|
|
175
|
-
return [self _isCoordValid:_cameraStop.coordinate];
|
|
176
|
-
}
|
|
177
|
-
|
|
178
|
-
@end
|