@maplibre/maplibre-react-native 10.0.0-alpha.2 → 10.0.0-alpha.21
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/.sonarcloud.properties +1 -1
- package/CHANGELOG.md +141 -50
- package/CONTRIBUTING.md +10 -9
- package/README.md +1 -1
- package/android/build.gradle +1 -1
- package/android/rctmln/.settings/org.eclipse.buildship.core.prefs +2 -0
- package/android/{rctmgl → rctmln}/build.gradle +5 -5
- package/android/{rctmgl → rctmln}/src/main/AndroidManifest.xml +1 -1
- package/android/rctmln/src/main/java/com/maplibre/rctmln/RCTMLNPackage.java +99 -0
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/components/AbstractEvent.java +1 -1
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/components/AbstractEventEmitter.java +2 -2
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/components/AbstractMapFeature.java +4 -4
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/components/annotation/MarkerView.java +3 -3
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/components/annotation/MarkerViewManager.java +12 -10
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/components/annotation/RCTMGLCallout.java → rctmln/src/main/java/com/maplibre/rctmln/components/annotation/RCTMLNCallout.java} +3 -3
- package/android/rctmln/src/main/java/com/maplibre/rctmln/components/annotation/RCTMLNCalloutManager.java +22 -0
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/components/annotation/RCTMGLMarkerView.java → rctmln/src/main/java/com/maplibre/rctmln/components/annotation/RCTMLNMarkerView.java} +18 -18
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/components/annotation/RCTMGLMarkerViewManager.java → rctmln/src/main/java/com/maplibre/rctmln/components/annotation/RCTMLNMarkerViewManager.java} +10 -10
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/components/annotation/RCTMGLPointAnnotation.java → rctmln/src/main/java/com/maplibre/rctmln/components/annotation/RCTMLNPointAnnotation.java} +27 -26
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/components/annotation/RCTMGLPointAnnotationManager.java → rctmln/src/main/java/com/maplibre/rctmln/components/annotation/RCTMLNPointAnnotationManager.java} +14 -14
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/components/camera/CameraStop.java +21 -19
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/components/camera/CameraUpdateItem.java +12 -12
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/components/camera/CameraUpdateQueue.java +4 -4
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/components/camera/RCTMGLCamera.java → rctmln/src/main/java/com/maplibre/rctmln/components/camera/RCTMLNCamera.java} +50 -50
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/components/camera/RCTMGLCameraManager.java → rctmln/src/main/java/com/maplibre/rctmln/components/camera/RCTMLNCameraManager.java} +19 -19
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/components/camera/constants/CameraMode.java +1 -1
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/components/images/RCTMGLImages.java → rctmln/src/main/java/com/maplibre/rctmln/components/images/RCTMLNImages.java} +27 -27
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/components/images/RCTMGLImagesManager.java → rctmln/src/main/java/com/maplibre/rctmln/components/images/RCTMLNImagesManager.java} +17 -17
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/components/location/LocationComponentManager.java +25 -16
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/components/location/RCTMGLNativeUserLocation.java → rctmln/src/main/java/com/maplibre/rctmln/components/location/RCTMLNNativeUserLocation.java} +25 -15
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/components/location/RCTMGLNativeUserLocationManager.java → rctmln/src/main/java/com/maplibre/rctmln/components/location/RCTMLNNativeUserLocationManager.java} +12 -7
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/components/mapview/LayerSourceInfo.java +10 -10
- package/android/rctmln/src/main/java/com/maplibre/rctmln/components/mapview/RCTMLNAndroidTextureMapView.java +16 -0
- package/android/rctmln/src/main/java/com/maplibre/rctmln/components/mapview/RCTMLNAndroidTextureMapViewManager.java +31 -0
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/components/mapview/RCTMGLMapView.java → rctmln/src/main/java/com/maplibre/rctmln/components/mapview/RCTMLNMapView.java} +171 -171
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/components/mapview/RCTMGLMapViewManager.java → rctmln/src/main/java/com/maplibre/rctmln/components/mapview/RCTMLNMapViewManager.java} +46 -46
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/components/mapview/helpers/CameraChangeTracker.java +1 -1
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/RCTMGLStyle.java → rctmln/src/main/java/com/maplibre/rctmln/components/styles/RCTMLNStyle.java} +12 -12
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/RCTMGLStyleFactory.java → rctmln/src/main/java/com/maplibre/rctmln/components/styles/RCTMLNStyleFactory.java} +434 -423
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/RCTMGLStyleFunctionParser.java → rctmln/src/main/java/com/maplibre/rctmln/components/styles/RCTMLNStyleFunctionParser.java} +8 -9
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/RCTMGLStyleValue.java → rctmln/src/main/java/com/maplibre/rctmln/components/styles/RCTMLNStyleValue.java} +9 -9
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/components/styles/layers/RCTLayer.java +17 -17
- package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/layers/RCTMLNBackgroundLayer.java +27 -0
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/layers/RCTMGLBackgroundLayerManager.java → rctmln/src/main/java/com/maplibre/rctmln/components/styles/layers/RCTMLNBackgroundLayerManager.java} +13 -13
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/layers/RCTMGLCircleLayer.java → rctmln/src/main/java/com/maplibre/rctmln/components/styles/layers/RCTMLNCircleLayer.java} +10 -10
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/layers/RCTMGLCircleLayerManager.java → rctmln/src/main/java/com/maplibre/rctmln/components/styles/layers/RCTMLNCircleLayerManager.java} +15 -15
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/layers/RCTMGLFillExtrusionLayer.java → rctmln/src/main/java/com/maplibre/rctmln/components/styles/layers/RCTMLNFillExtrusionLayer.java} +10 -10
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/layers/RCTMGLFillExtrusionLayerManager.java → rctmln/src/main/java/com/maplibre/rctmln/components/styles/layers/RCTMLNFillExtrusionLayerManager.java} +16 -16
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/layers/RCTMGLFillLayer.java → rctmln/src/main/java/com/maplibre/rctmln/components/styles/layers/RCTMLNFillLayer.java} +10 -10
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/layers/RCTMGLFillLayerManager.java → rctmln/src/main/java/com/maplibre/rctmln/components/styles/layers/RCTMLNFillLayerManager.java} +16 -16
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/layers/RCTMGLHeatmapLayer.java → rctmln/src/main/java/com/maplibre/rctmln/components/styles/layers/RCTMLNHeatmapLayer.java} +10 -10
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/layers/RCTMGLHeatmapLayerManager.java → rctmln/src/main/java/com/maplibre/rctmln/components/styles/layers/RCTMLNHeatmapLayerManager.java} +15 -15
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/layers/RCTMGLLineLayer.java → rctmln/src/main/java/com/maplibre/rctmln/components/styles/layers/RCTMLNLineLayer.java} +10 -10
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/layers/RCTMGLLineLayerManager.java → rctmln/src/main/java/com/maplibre/rctmln/components/styles/layers/RCTMLNLineLayerManager.java} +17 -17
- package/android/rctmln/src/main/java/com/maplibre/rctmln/components/styles/layers/RCTMLNRasterLayer.java +27 -0
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/layers/RCTMGLRasterLayerManager.java → rctmln/src/main/java/com/maplibre/rctmln/components/styles/layers/RCTMLNRasterLayerManager.java} +13 -13
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/layers/RCTMGLSymbolLayer.java → rctmln/src/main/java/com/maplibre/rctmln/components/styles/layers/RCTMLNSymbolLayer.java} +10 -10
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/layers/RCTMGLSymbolLayerManager.java → rctmln/src/main/java/com/maplibre/rctmln/components/styles/layers/RCTMLNSymbolLayerManager.java} +15 -15
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/light/RCTMGLLight.java → rctmln/src/main/java/com/maplibre/rctmln/components/styles/light/RCTMLNLight.java} +16 -16
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/light/RCTMGLLightManager.java → rctmln/src/main/java/com/maplibre/rctmln/components/styles/light/RCTMLNLightManager.java} +6 -6
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/sources/RCTMGLImageSource.java → rctmln/src/main/java/com/maplibre/rctmln/components/styles/sources/RCTMLNImageSource.java} +7 -7
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/sources/RCTMGLImageSourceManager.java → rctmln/src/main/java/com/maplibre/rctmln/components/styles/sources/RCTMLNImageSourceManager.java} +15 -15
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/sources/RCTMGLRasterSource.java → rctmln/src/main/java/com/maplibre/rctmln/components/styles/sources/RCTMLNRasterSource.java} +6 -6
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/sources/RCTMGLRasterSourceManager.java → rctmln/src/main/java/com/maplibre/rctmln/components/styles/sources/RCTMLNRasterSourceManager.java} +7 -7
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/sources/RCTMGLShapeSource.java → rctmln/src/main/java/com/maplibre/rctmln/components/styles/sources/RCTMLNShapeSource.java} +22 -22
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/sources/RCTMGLShapeSourceManager.java → rctmln/src/main/java/com/maplibre/rctmln/components/styles/sources/RCTMLNShapeSourceManager.java} +35 -35
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/sources/RCTMGLTileSource.java → rctmln/src/main/java/com/maplibre/rctmln/components/styles/sources/RCTMLNTileSource.java} +5 -5
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/sources/RCTMGLTileSourceManager.java → rctmln/src/main/java/com/maplibre/rctmln/components/styles/sources/RCTMLNTileSourceManager.java} +4 -4
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/sources/RCTMGLVectorSource.java → rctmln/src/main/java/com/maplibre/rctmln/components/styles/sources/RCTMLNVectorSource.java} +10 -10
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/sources/RCTMGLVectorSourceManager.java → rctmln/src/main/java/com/maplibre/rctmln/components/styles/sources/RCTMLNVectorSourceManager.java} +12 -12
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/components/styles/sources/RCTSource.java +14 -14
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/events/AbstractEvent.java +1 -1
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/events/AndroidCallbackEvent.java +2 -2
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/events/EventEmitter.java +1 -1
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/events/FeatureClickEvent.java +8 -8
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/events/IEvent.java +1 -1
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/events/ImageMissingEvent.java +3 -3
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/events/LocationEvent.java +6 -6
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/events/MapChangeEvent.java +3 -3
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/events/MapClickEvent.java +5 -5
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/events/MapUserTrackingModeEvent.java +4 -4
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/events/OfflineEvent.java +1 -1
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/events/PointAnnotationClickEvent.java +10 -10
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/events/PointAnnotationDragEvent.java +10 -10
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/events/constants/EventKeys.java +1 -1
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/events/constants/EventTypes.java +1 -1
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/http/CustomHeadersInterceptor.java +1 -1
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/location/LocationManager.java +7 -7
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/location/UserLocation.java +2 -2
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/location/UserLocationVerticalAlignment.java +1 -1
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/location/UserTrackingMode.java +4 -4
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/location/UserTrackingState.java +1 -1
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/modules/RCTMGLLocationModule.java → rctmln/src/main/java/com/maplibre/rctmln/modules/RCTMLNLocationModule.java} +11 -11
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/modules/RCTMGLLogging.java → rctmln/src/main/java/com/maplibre/rctmln/modules/RCTMLNLogging.java} +7 -7
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/modules/RCTMGLModule.java → rctmln/src/main/java/com/maplibre/rctmln/modules/RCTMLNModule.java} +30 -30
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/modules/RCTMGLOfflineModule.java → rctmln/src/main/java/com/maplibre/rctmln/modules/RCTMLNOfflineModule.java} +21 -21
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl/modules/RCTMGLSnapshotModule.java → rctmln/src/main/java/com/maplibre/rctmln/modules/RCTMLNSnapshotModule.java} +14 -14
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/utils/BitmapUtils.java +1 -1
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/utils/ClusterPropertyEntry.java +2 -2
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/utils/ConvertUtils.java +1 -1
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/utils/DownloadMapImageTask.java +6 -6
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/utils/ExpressionParser.java +3 -3
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/utils/GeoJSONUtils.java +14 -14
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/utils/GeoViewport.java +4 -4
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/utils/ImageEntry.java +1 -1
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/utils/ResourceUtils.java +1 -1
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/utils/SimpleEventCallback.java +5 -5
- package/android/{rctmgl/src/main/java/com/mapbox/rctmgl → rctmln/src/main/java/com/maplibre/rctmln}/utils/SphericalMercator.java +2 -2
- package/android/rctmln/src/main/res/values/strings.xml +3 -0
- package/android/settings.gradle +1 -1
- package/docs/Annotations.md +1 -1
- package/docs/Callout.md +1 -1
- package/docs/Camera.md +4 -4
- package/docs/CustomHttpHeaders.md +4 -4
- package/docs/FillExtrusionLayer.md +19 -0
- package/docs/MapView.md +12 -36
- package/docs/MarkerView.md +1 -1
- package/docs/NativeUserLocation.md +2 -1
- package/docs/PointAnnotation.md +2 -2
- package/docs/RasterLayer.md +1 -1
- package/docs/SymbolLayer.md +7 -5
- package/docs/UserLocation.md +13 -4
- package/docs/docs.json +79 -52
- package/docs/offlineManager.md +246 -0
- package/ios/{RCTMGL → RCTMLN}/CameraMode.h +1 -1
- package/ios/{RCTMGL → RCTMLN}/CameraMode.m +1 -1
- package/ios/{RCTMGL → RCTMLN}/CameraStop.h +4 -4
- package/ios/{RCTMGL → RCTMLN}/CameraStop.m +7 -7
- package/ios/{RCTMGL → RCTMLN}/CameraUpdateItem.h +3 -3
- package/ios/{RCTMGL → RCTMLN}/CameraUpdateItem.m +19 -19
- package/ios/{RCTMGL → RCTMLN}/CameraUpdateQueue.h +3 -3
- package/ios/{RCTMGL → RCTMLN}/CameraUpdateQueue.m +3 -3
- package/ios/{RCTMGL → RCTMLN}/FilterParser.h +1 -1
- package/ios/{RCTMGL → RCTMLN}/FilterParser.m +3 -3
- package/ios/{RCTMGL/MGLCustomHeaders.h → RCTMLN/MLNCustomHeaders.h} +3 -3
- package/ios/{RCTMGL/MGLCustomHeaders.m → RCTMLN/MLNCustomHeaders.m} +11 -11
- package/ios/RCTMLN/MLNFaux3DUserLocationAnnotationView.h +23 -0
- package/ios/{RCTMGL/MGLFaux3DUserLocationAnnotationView.m → RCTMLN/MLNFaux3DUserLocationAnnotationView.m} +38 -38
- package/ios/{RCTMGL/MGLModule.h → RCTMLN/MLNModule.h} +3 -3
- package/ios/{RCTMGL/MGLModule.m → RCTMLN/MLNModule.m} +91 -91
- package/ios/{RCTMGL/MGLOfflineModule.h → RCTMLN/MLNOfflineModule.h} +4 -4
- package/ios/{RCTMGL/MGLOfflineModule.m → RCTMLN/MLNOfflineModule.m} +120 -99
- package/ios/{RCTMGL/MGLSnapshotModule.h → RCTMLN/MLNSnapshotModule.h} +3 -3
- package/ios/{RCTMGL/MGLSnapshotModule.m → RCTMLN/MLNSnapshotModule.m} +14 -14
- package/ios/{RCTMGL/MGLUserLocationHeadingArrowLayer.h → RCTMLN/MLNUserLocationHeadingArrowLayer.h} +4 -4
- package/ios/{RCTMGL/MGLUserLocationHeadingArrowLayer.m → RCTMLN/MLNUserLocationHeadingArrowLayer.m} +7 -7
- package/ios/RCTMLN/MLNUserLocationHeadingBeamLayer.h +11 -0
- package/ios/{RCTMGL/MGLUserLocationHeadingBeamLayer.m → RCTMLN/MLNUserLocationHeadingBeamLayer.m} +10 -10
- package/ios/{RCTMGL/MGLUserLocationHeadingIndicator.h → RCTMLN/MLNUserLocationHeadingIndicator.h} +3 -3
- package/ios/{RCTMGL → RCTMLN}/RCTConvert+Mapbox.h +1 -1
- package/ios/{RCTMGL → RCTMLN}/RCTConvert+Mapbox.m +1 -1
- package/ios/{RCTMGL/RCTMGL.h → RCTMLN/RCTMLN.h} +3 -3
- package/ios/{RCTMGL/RCTMGL.m → RCTMLN/RCTMLN.m} +4 -4
- package/ios/RCTMLN/RCTMLNBackgroundLayer.h +14 -0
- package/ios/RCTMLN/RCTMLNBackgroundLayer.m +27 -0
- package/ios/{RCTMGL/RCTMGLBackgroundLayerManager.h → RCTMLN/RCTMLNBackgroundLayerManager.h} +3 -3
- package/ios/{RCTMGL/RCTMGLBackgroundLayerManager.m → RCTMLN/RCTMLNBackgroundLayerManager.m} +6 -6
- package/ios/{RCTMGL/RCTMGLCallout.h → RCTMLN/RCTMLNCallout.h} +4 -4
- package/ios/{RCTMGL/RCTMGLCallout.m → RCTMLN/RCTMLNCallout.m} +6 -6
- package/ios/{RCTMGL/RCTMGLCalloutManager.h → RCTMLN/RCTMLNCalloutManager.h} +3 -3
- package/ios/RCTMLN/RCTMLNCalloutManager.m +21 -0
- package/ios/{RCTMGL/RCTMGLCamera.h → RCTMLN/RCTMLNCamera.h} +6 -6
- package/ios/{RCTMGL/RCTMGLCamera.m → RCTMLN/RCTMLNCamera.m} +30 -30
- package/ios/{RCTMGL/RCTMGLCameraManager.h → RCTMLN/RCTMLNCameraManager.h} +3 -3
- package/ios/{RCTMGL/RCTMGLCameraManager.m → RCTMLN/RCTMLNCameraManager.m} +7 -7
- package/ios/RCTMLN/RCTMLNCircleLayer.h +13 -0
- package/ios/{RCTMGL/RCTMGLCircleLayer.m → RCTMLN/RCTMLNCircleLayer.m} +10 -10
- package/ios/{RCTMGL/RCTMGLCircleLayerManager.h → RCTMLN/RCTMLNCircleLayerManager.h} +3 -3
- package/ios/{RCTMGL/RCTMGLCircleLayerManager.m → RCTMLN/RCTMLNCircleLayerManager.m} +6 -6
- package/ios/{RCTMGL/RCTMGLEvent.h → RCTMLN/RCTMLNEvent.h} +6 -6
- package/ios/{RCTMGL/RCTMGLEvent.m → RCTMLN/RCTMLNEvent.m} +8 -8
- package/ios/{RCTMGL/RCTMGLEventProtocol.h → RCTMLN/RCTMLNEventProtocol.h} +3 -3
- package/ios/{RCTMGL/RCTMGLEventTypes.h → RCTMLN/RCTMLNEventTypes.h} +3 -3
- package/ios/{RCTMGL/RCTMGLEventTypes.m → RCTMLN/RCTMLNEventTypes.m} +4 -4
- package/ios/RCTMLN/RCTMLNFillExtrusionLayer.h +14 -0
- package/ios/{RCTMGL/RCTMGLFillExtrusionLayer.m → RCTMLN/RCTMLNFillExtrusionLayer.m} +10 -10
- package/ios/{RCTMGL/RCTMGLFillExtrusionLayerManager.h → RCTMLN/RCTMLNFillExtrusionLayerManager.h} +3 -3
- package/ios/{RCTMGL/RCTMGLFillExtrusionLayerManager.m → RCTMLN/RCTMLNFillExtrusionLayerManager.m} +6 -6
- package/ios/RCTMLN/RCTMLNFillLayer.h +14 -0
- package/ios/{RCTMGL/RCTMGLFillLayer.m → RCTMLN/RCTMLNFillLayer.m} +10 -10
- package/ios/{RCTMGL/RCTMGLFillLayerManager.h → RCTMLN/RCTMLNFillLayerManager.h} +3 -3
- package/ios/{RCTMGL/RCTMGLFillLayerManager.m → RCTMLN/RCTMLNFillLayerManager.m} +6 -6
- package/ios/RCTMLN/RCTMLNHeatmapLayer.h +12 -0
- package/ios/RCTMLN/RCTMLNHeatmapLayer.m +30 -0
- package/ios/RCTMLN/RCTMLNHeatmapLayerManager.h +12 -0
- package/ios/{RCTMGL/RCTMGLHeatmapLayerManager.m → RCTMLN/RCTMLNHeatmapLayerManager.m} +6 -6
- package/ios/{RCTMGL/RCTMGLImageQueue.h → RCTMLN/RCTMLNImageQueue.h} +3 -3
- package/ios/{RCTMGL/RCTMGLImageQueue.m → RCTMLN/RCTMLNImageQueue.m} +10 -10
- package/ios/{RCTMGL/RCTMGLImageQueueOperation.h → RCTMLN/RCTMLNImageQueueOperation.h} +3 -3
- package/ios/{RCTMGL/RCTMGLImageQueueOperation.m → RCTMLN/RCTMLNImageQueueOperation.m} +12 -12
- package/ios/{RCTMGL/RCTMGLImageSource.h → RCTMLN/RCTMLNImageSource.h} +4 -4
- package/ios/{RCTMGL/RCTMGLImageSource.m → RCTMLN/RCTMLNImageSource.m} +11 -11
- package/ios/{RCTMGL/RCTMGLImageSourceManager.h → RCTMLN/RCTMLNImageSourceManager.h} +3 -3
- package/ios/{RCTMGL/RCTMGLImageSourceManager.m → RCTMLN/RCTMLNImageSourceManager.m} +6 -6
- package/ios/{RCTMGL/RCTMGLImages.h → RCTMLN/RCTMLNImages.h} +4 -4
- package/ios/{RCTMGL/RCTMGLImages.m → RCTMLN/RCTMLNImages.m} +10 -10
- package/ios/RCTMLN/RCTMLNImagesManager.h +5 -0
- package/ios/{RCTMGL/RCTMGLImagesManager.m → RCTMLN/RCTMLNImagesManager.m} +4 -4
- package/ios/{RCTMGL/RCTMGLLayer.h → RCTMLN/RCTMLNLayer.h} +11 -11
- package/ios/{RCTMGL/RCTMGLLayer.m → RCTMLN/RCTMLNLayer.m} +17 -17
- package/ios/{RCTMGL/RCTMGLLight.h → RCTMLN/RCTMLNLight.h} +5 -5
- package/ios/{RCTMGL/RCTMGLLight.m → RCTMLN/RCTMLNLight.m} +9 -9
- package/ios/{RCTMGL/RCTMGLLightManager.h → RCTMLN/RCTMLNLightManager.h} +3 -3
- package/ios/{RCTMGL/RCTMGLLightManager.m → RCTMLN/RCTMLNLightManager.m} +6 -6
- package/ios/RCTMLN/RCTMLNLineLayer.h +14 -0
- package/ios/{RCTMGL/RCTMGLLineLayer.m → RCTMLN/RCTMLNLineLayer.m} +10 -10
- package/ios/{RCTMGL/RCTMGLLineLayerManager.h → RCTMLN/RCTMLNLineLayerManager.h} +3 -3
- package/ios/{RCTMGL/RCTMGLLineLayerManager.m → RCTMLN/RCTMLNLineLayerManager.m} +6 -6
- package/ios/{RCTMGL/RCTMGLLocation.h → RCTMLN/RCTMLNLocation.h} +3 -3
- package/ios/{RCTMGL/RCTMGLLocation.m → RCTMLN/RCTMLNLocation.m} +4 -4
- package/ios/RCTMLN/RCTMLNLocationManager.h +30 -0
- package/ios/{RCTMGL/RCTMGLLocationManager.m → RCTMLN/RCTMLNLocationManager.m} +16 -16
- package/ios/RCTMLN/RCTMLNLocationManagerDelegate.h +20 -0
- package/ios/{RCTMGL/RCTMGLLocationModule.h → RCTMLN/RCTMLNLocationModule.h} +3 -3
- package/ios/{RCTMGL/RCTMGLLocationModule.m → RCTMLN/RCTMLNLocationModule.m} +13 -13
- package/ios/RCTMLN/RCTMLNLogging.h +18 -0
- package/ios/{RCTMGL/RCTMGLLogging.m → RCTMLN/RCTMLNLogging.m} +29 -29
- package/ios/{RCTMGL/RCTMGLMapTouchEvent.h → RCTMLN/RCTMLNMapTouchEvent.h} +10 -10
- package/ios/{RCTMGL/RCTMGLMapTouchEvent.m → RCTMLN/RCTMLNMapTouchEvent.m} +18 -18
- package/ios/{RCTMGL/RCTMGLMapView.h → RCTMLN/RCTMLNMapView.h} +30 -30
- package/ios/{RCTMGL/RCTMGLMapView.m → RCTMLN/RCTMLNMapView.m} +82 -82
- package/ios/{RCTMGL/RCTMGLMapViewManager.h → RCTMLN/RCTMLNMapViewManager.h} +4 -4
- package/ios/{RCTMGL/RCTMGLMapViewManager.m → RCTMLN/RCTMLNMapViewManager.m} +117 -117
- package/ios/{RCTMGL/RCTMGLNativeUserLocation.h → RCTMLN/RCTMLNNativeUserLocation.h} +5 -5
- package/ios/{RCTMGL/RCTMGLNativeUserLocation.m → RCTMLN/RCTMLNNativeUserLocation.m} +10 -10
- package/ios/RCTMLN/RCTMLNNativeUserLocationManager.h +5 -0
- package/ios/RCTMLN/RCTMLNNativeUserLocationManager.m +25 -0
- package/ios/{RCTMGL/RCTMGLPointAnnotation.h → RCTMLN/RCTMLNPointAnnotation.h} +8 -8
- package/ios/{RCTMGL/RCTMGLPointAnnotation.m → RCTMLN/RCTMLNPointAnnotation.m} +21 -21
- package/ios/{RCTMGL/RCTMGLPointAnnotationManager.h → RCTMLN/RCTMLNPointAnnotationManager.h} +3 -3
- package/ios/{RCTMGL/RCTMGLPointAnnotationManager.m → RCTMLN/RCTMLNPointAnnotationManager.m} +6 -6
- package/ios/RCTMLN/RCTMLNRasterLayer.h +14 -0
- package/ios/RCTMLN/RCTMLNRasterLayer.m +30 -0
- package/ios/{RCTMGL/RCTMGLRasterLayerManager.h → RCTMLN/RCTMLNRasterLayerManager.h} +3 -3
- package/ios/{RCTMGL/RCTMGLRasterLayerManager.m → RCTMLN/RCTMLNRasterLayerManager.m} +6 -6
- package/ios/{RCTMGL/RCTMGLRasterSource.h → RCTMLN/RCTMLNRasterSource.h} +5 -5
- package/ios/{RCTMGL/RCTMGLRasterSource.m → RCTMLN/RCTMLNRasterSource.m} +11 -11
- package/ios/{RCTMGL/RCTMGLRasterSourceManager.h → RCTMLN/RCTMLNRasterSourceManager.h} +3 -3
- package/ios/{RCTMGL/RCTMGLRasterSourceManager.m → RCTMLN/RCTMLNRasterSourceManager.m} +6 -6
- package/ios/{RCTMGL/RCTMGLShapeSource.h → RCTMLN/RCTMLNShapeSource.h} +10 -10
- package/ios/{RCTMGL/RCTMGLShapeSource.m → RCTMLN/RCTMLNShapeSource.m} +50 -50
- package/ios/{RCTMGL/RCTMGLShapeSourceManager.h → RCTMLN/RCTMLNShapeSourceManager.h} +3 -3
- package/ios/{RCTMGL/RCTMGLShapeSourceManager.m → RCTMLN/RCTMLNShapeSourceManager.m} +25 -25
- package/ios/{RCTMGL/RCTMGLSource.h → RCTMLN/RCTMLNSource.h} +8 -8
- package/ios/{RCTMGL/RCTMGLSource.m → RCTMLN/RCTMLNSource.m} +15 -15
- package/ios/RCTMLN/RCTMLNStyle.h +223 -0
- package/ios/{RCTMGL/RCTMGLStyle.m → RCTMLN/RCTMLNStyle.m} +352 -345
- package/ios/{RCTMGL/RCTMGLStyleValue.h → RCTMLN/RCTMLNStyleValue.h} +7 -7
- package/ios/{RCTMGL/RCTMGLStyleValue.m → RCTMLN/RCTMLNStyleValue.m} +24 -24
- package/ios/{RCTMGL/RCTMGLSymbolLayer.h → RCTMLN/RCTMLNSymbolLayer.h} +4 -4
- package/ios/{RCTMGL/RCTMGLSymbolLayer.m → RCTMLN/RCTMLNSymbolLayer.m} +12 -12
- package/ios/{RCTMGL/RCTMGLSymbolLayerManager.h → RCTMLN/RCTMLNSymbolLayerManager.h} +3 -3
- package/ios/{RCTMGL/RCTMGLSymbolLayerManager.m → RCTMLN/RCTMLNSymbolLayerManager.m} +6 -6
- package/ios/{RCTMGL/RCTMGLTileSource.h → RCTMLN/RCTMLNTileSource.h} +6 -6
- package/ios/RCTMLN/RCTMLNTileSource.m +31 -0
- package/ios/RCTMLN/RCTMLNUserLocation.h +15 -0
- package/ios/{RCTMGL/RCTMGLUserLocation.m → RCTMLN/RCTMLNUserLocation.m} +8 -8
- package/ios/{RCTMGL/RCTMGLUtils.h → RCTMLN/RCTMLNUtils.h} +7 -7
- package/ios/{RCTMGL/RCTMGLUtils.m → RCTMLN/RCTMLNUtils.m} +20 -20
- package/ios/{RCTMGL/RCTMGLVectorLayer.h → RCTMLN/RCTMLNVectorLayer.h} +4 -4
- package/ios/{RCTMGL/RCTMGLVectorLayer.m → RCTMLN/RCTMLNVectorLayer.m} +7 -7
- package/ios/{RCTMGL/RCTMGLVectorSource.h → RCTMLN/RCTMLNVectorSource.h} +6 -6
- package/ios/{RCTMGL/RCTMGLVectorSource.m → RCTMLN/RCTMLNVectorSource.m} +9 -9
- package/ios/{RCTMGL/RCTMGLVectorSourceManager.h → RCTMLN/RCTMLNVectorSourceManager.h} +3 -3
- package/ios/{RCTMGL/RCTMGLVectorSourceManager.m → RCTMLN/RCTMLNVectorSourceManager.m} +11 -11
- package/ios/{RCTMGL → RCTMLN}/RNMBImageUtils.h +1 -1
- package/ios/{RCTMGL → RCTMLN}/RNMBImageUtils.m +2 -2
- package/ios/{RCTMGL → RCTMLN}/ViewManager.h +3 -3
- package/ios/{RCTMGL → RCTMLN}/ViewManager.m +4 -4
- package/ios/RCTMLN.xcodeproj/project.pbxproj +775 -0
- package/ios/install.md +6 -7
- package/javascript/{MGLModule.ts → MLNModule.ts} +4 -4
- package/javascript/Maplibre.ts +44 -39
- package/javascript/components/BackgroundLayer.tsx +34 -27
- package/javascript/components/Callout.tsx +59 -59
- package/javascript/components/Camera.tsx +436 -493
- package/javascript/components/CircleLayer.tsx +35 -28
- package/javascript/components/FillExtrusionLayer.tsx +29 -29
- package/javascript/components/FillLayer.tsx +28 -25
- package/javascript/components/HeadingIndicator.tsx +8 -8
- package/javascript/components/HeatmapLayer.tsx +28 -26
- package/javascript/components/ImageSource.tsx +31 -38
- package/javascript/components/Images.tsx +54 -54
- package/javascript/components/Light.tsx +25 -52
- package/javascript/components/LineLayer.tsx +29 -26
- package/javascript/components/MapView.tsx +635 -580
- package/javascript/components/MarkerView.tsx +34 -49
- package/javascript/components/NativeUserLocation.tsx +12 -10
- package/javascript/components/PointAnnotation.tsx +121 -97
- package/javascript/components/RasterLayer.tsx +28 -25
- package/javascript/components/RasterSource.tsx +45 -48
- package/javascript/components/ShapeSource.tsx +300 -250
- package/javascript/components/Style.tsx +69 -59
- package/javascript/components/SymbolLayer.tsx +41 -35
- package/javascript/components/UserLocation.tsx +189 -168
- package/javascript/components/VectorSource.tsx +139 -128
- package/javascript/components/annotations/Annotation.tsx +119 -89
- package/javascript/hooks/useAbstractLayer.ts +127 -0
- package/javascript/hooks/useAbstractSource.ts +34 -0
- package/javascript/hooks/useNativeBridge.ts +125 -0
- package/javascript/hooks/useNativeRef.ts +13 -0
- package/javascript/hooks/useOnce.ts +12 -0
- package/javascript/index.ts +2 -2
- package/javascript/modules/location/locationManager.ts +6 -6
- package/javascript/modules/offline/OfflineCreatePackOptions.ts +5 -5
- package/javascript/modules/offline/OfflinePack.ts +5 -5
- package/javascript/modules/offline/offlineManager.ts +13 -14
- package/javascript/modules/snapshot/SnapshotOptions.ts +5 -5
- package/javascript/modules/snapshot/snapshotManager.ts +3 -3
- package/javascript/requestAndroidLocationPermissions.ts +3 -3
- package/javascript/types/OnPressEvent.ts +1 -1
- package/javascript/types/index.ts +6 -2
- package/javascript/utils/BridgeValue.ts +20 -20
- package/javascript/utils/Logger.ts +17 -17
- package/javascript/utils/MaplibreStyles.d.ts +399 -393
- package/javascript/utils/StyleValue.ts +12 -12
- package/javascript/utils/animated/AbstractAnimatedCoordinates.ts +6 -6
- package/javascript/utils/animated/Animated.ts +38 -16
- package/javascript/utils/animated/AnimatedCoordinatesArray.ts +7 -11
- package/javascript/utils/animated/AnimatedExtractCoordinateFromArray.ts +3 -3
- package/javascript/utils/animated/AnimatedPoint.ts +7 -7
- package/javascript/utils/animated/AnimatedRouteCoordinatesArray.ts +16 -20
- package/javascript/utils/animated/AnimatedShape.ts +16 -16
- package/javascript/utils/deprecation.ts +6 -3
- package/javascript/utils/filterUtils.ts +1 -1
- package/javascript/utils/geoUtils.ts +8 -8
- package/javascript/utils/index.ts +14 -14
- package/javascript/utils/styleMap.ts +19 -18
- package/maplibre-react-native.podspec +8 -8
- package/package.json +58 -39
- package/plugin/build/withMapLibre.d.ts +2 -2
- package/plugin/build/withMapLibre.js +33 -34
- package/react-native.config.js +1 -1
- package/scripts/autogenHelpers/globals.js +11 -10
- package/scripts/autogenerate.js +24 -17
- package/scripts/templates/{RCTMGLStyle.h.ejs → RCTMLNStyle.h.ejs} +8 -8
- package/scripts/templates/{RCTMGLStyle.m.ejs → RCTMLNStyle.m.ejs} +10 -10
- package/scripts/templates/{RCTMGLStyleFactory.java.ejs → RCTMLNStyleFactory.java.ejs} +24 -24
- package/setup-jest.js +4 -10
- package/style-spec/v8.json +1248 -655
- package/tsconfig.json +0 -1
- package/.eslintignore +0 -3
- package/.eslintrc.js +0 -166
- package/.prettierrc.js +0 -7
- package/.yarn/plugins/@yarnpkg/plugin-typescript.cjs +0 -9
- package/.yarn/sdks/eslint/bin/eslint.js +0 -20
- package/.yarn/sdks/eslint/lib/api.js +0 -20
- package/.yarn/sdks/eslint/package.json +0 -6
- package/.yarn/sdks/integrations.yml +0 -5
- package/.yarn/sdks/prettier/index.js +0 -20
- package/.yarn/sdks/prettier/package.json +0 -6
- package/.yarn/sdks/typescript/bin/tsc +0 -20
- package/.yarn/sdks/typescript/bin/tsserver +0 -20
- package/.yarn/sdks/typescript/lib/tsc.js +0 -20
- package/.yarn/sdks/typescript/lib/tsserver.js +0 -225
- package/.yarn/sdks/typescript/lib/tsserverlibrary.js +0 -225
- package/.yarn/sdks/typescript/lib/typescript.js +0 -20
- package/.yarn/sdks/typescript/package.json +0 -6
- package/android/rctmgl/.settings/org.eclipse.buildship.core.prefs +0 -2
- package/android/rctmgl/src/main/java/com/mapbox/rctmgl/RCTMGLPackage.java +0 -99
- package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/annotation/RCTMGLCalloutManager.java +0 -22
- package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/mapview/RCTMGLAndroidTextureMapView.java +0 -16
- package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/mapview/RCTMGLAndroidTextureMapViewManager.java +0 -31
- package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/layers/RCTMGLBackgroundLayer.java +0 -27
- package/android/rctmgl/src/main/java/com/mapbox/rctmgl/components/styles/layers/RCTMGLRasterLayer.java +0 -27
- package/android/rctmgl/src/main/res/values/strings.xml +0 -3
- package/ios/RCTMGL/MGLFaux3DUserLocationAnnotationView.h +0 -23
- package/ios/RCTMGL/MGLUserLocationHeadingBeamLayer.h +0 -11
- package/ios/RCTMGL/RCTMGLBackgroundLayer.h +0 -14
- package/ios/RCTMGL/RCTMGLBackgroundLayer.m +0 -27
- package/ios/RCTMGL/RCTMGLCalloutManager.m +0 -21
- package/ios/RCTMGL/RCTMGLCircleLayer.h +0 -13
- package/ios/RCTMGL/RCTMGLFillExtrusionLayer.h +0 -14
- package/ios/RCTMGL/RCTMGLFillLayer.h +0 -14
- package/ios/RCTMGL/RCTMGLHeatmapLayer.h +0 -12
- package/ios/RCTMGL/RCTMGLHeatmapLayer.m +0 -30
- package/ios/RCTMGL/RCTMGLHeatmapLayerManager.h +0 -12
- package/ios/RCTMGL/RCTMGLImagesManager.h +0 -5
- package/ios/RCTMGL/RCTMGLLineLayer.h +0 -14
- package/ios/RCTMGL/RCTMGLLocationManager.h +0 -30
- package/ios/RCTMGL/RCTMGLLocationManagerDelegate.h +0 -20
- package/ios/RCTMGL/RCTMGLLogging.h +0 -18
- package/ios/RCTMGL/RCTMGLNativeUserLocationManager.h +0 -5
- package/ios/RCTMGL/RCTMGLNativeUserLocationManager.m +0 -25
- package/ios/RCTMGL/RCTMGLRasterLayer.h +0 -14
- package/ios/RCTMGL/RCTMGLRasterLayer.m +0 -30
- package/ios/RCTMGL/RCTMGLStyle.h +0 -222
- package/ios/RCTMGL/RCTMGLTileSource.m +0 -31
- package/ios/RCTMGL/RCTMGLUserLocation.h +0 -15
- package/ios/RCTMGL.xcodeproj/project.pbxproj +0 -775
- package/javascript/@types/assets.d.ts +0 -4
- package/javascript/components/AbstractLayer.tsx +0 -107
- package/javascript/components/AbstractSource.tsx +0 -27
- package/javascript/components/NativeBridgeComponent.tsx +0 -117
- /package/android/{rctmgl → rctmln}/proguard-rules.pro +0 -0
- /package/android/{rctmgl → rctmln}/src/main/res/drawable/empty.xml +0 -0
- /package/android/{rctmgl → rctmln}/src/main/res/drawable/empty_drawable.png +0 -0
- /package/android/{rctmgl → rctmln}/src/main/res/drawable-xxhdpi/red_marker.png +0 -0
- /package/android/{rctmgl → rctmln}/src/main/res/layout/annotation.xml +0 -0
- /package/ios/{RCTMGL → RCTMLN}/index.d.ts +0 -0
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
//
|
|
2
|
-
//
|
|
3
|
-
//
|
|
2
|
+
// MLNOfflineModule.m
|
|
3
|
+
// RCTMLN
|
|
4
4
|
//
|
|
5
5
|
// Created by Nick Italiano on 10/25/17.
|
|
6
6
|
// Copyright © 2017 Mapbox Inc. All rights reserved.
|
|
7
7
|
//
|
|
8
8
|
|
|
9
|
-
#import "
|
|
10
|
-
#import "
|
|
11
|
-
#import "
|
|
12
|
-
#import "
|
|
9
|
+
#import "MLNOfflineModule.h"
|
|
10
|
+
#import "RCTMLNUtils.h"
|
|
11
|
+
#import "RCTMLNEvent.h"
|
|
12
|
+
#import "RCTMLNEventTypes.h"
|
|
13
13
|
|
|
14
|
-
@implementation
|
|
14
|
+
@implementation MLNOfflineModule
|
|
15
15
|
{
|
|
16
16
|
NSUInteger lastPackState;
|
|
17
17
|
double lastPackTimestamp;
|
|
@@ -48,20 +48,20 @@ NSString *const RCT_MAPBOX_OFFLINE_CALLBACK_ERROR = @"MapboOfflineRegionError";
|
|
|
48
48
|
packRequestQueue = [NSMutableArray new];
|
|
49
49
|
eventThrottle = 300;
|
|
50
50
|
lastPackState = -1;
|
|
51
|
-
|
|
51
|
+
|
|
52
52
|
NSNotificationCenter *defaultCenter = [NSNotificationCenter defaultCenter];
|
|
53
|
-
[defaultCenter addObserver:self selector:@selector(offlinePackProgressDidChange:) name:
|
|
54
|
-
[defaultCenter addObserver:self selector:@selector(offlinePackDidReceiveError:) name:
|
|
55
|
-
[defaultCenter addObserver:self selector:@selector(offlinePackDidReceiveMaxAllowedMapboxTiles:) name:
|
|
56
|
-
|
|
57
|
-
[[
|
|
53
|
+
[defaultCenter addObserver:self selector:@selector(offlinePackProgressDidChange:) name:MLNOfflinePackProgressChangedNotification object:nil];
|
|
54
|
+
[defaultCenter addObserver:self selector:@selector(offlinePackDidReceiveError:) name:MLNOfflinePackErrorNotification object:nil];
|
|
55
|
+
[defaultCenter addObserver:self selector:@selector(offlinePackDidReceiveMaxAllowedMapboxTiles:) name:MLNOfflinePackMaximumMapboxTilesReachedNotification object:nil];
|
|
56
|
+
|
|
57
|
+
[[MLNOfflineStorage sharedOfflineStorage] addObserver:self forKeyPath:@"packs" options:NSKeyValueObservingOptionInitial context:NULL];
|
|
58
58
|
}
|
|
59
59
|
return self;
|
|
60
60
|
}
|
|
61
61
|
|
|
62
62
|
- (void)dealloc
|
|
63
63
|
{
|
|
64
|
-
[[
|
|
64
|
+
[[MLNOfflineStorage sharedOfflineStorage] removeObserver:self forKeyPath:@"packs"];
|
|
65
65
|
[[NSNotificationCenter defaultCenter] removeObserver:self];
|
|
66
66
|
}
|
|
67
67
|
|
|
@@ -72,15 +72,21 @@ NSString *const RCT_MAPBOX_OFFLINE_CALLBACK_ERROR = @"MapboOfflineRegionError";
|
|
|
72
72
|
|
|
73
73
|
- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary<NSKeyValueChangeKey,id> *)change context:(void *)context
|
|
74
74
|
{
|
|
75
|
+
if ([keyPath isEqualToString:@"state"] && [object isKindOfClass:[MLNOfflinePack class]]) {
|
|
76
|
+
MLNOfflinePack* pack = (MLNOfflinePack*)object;
|
|
77
|
+
[self observerStateForPack:pack context:context];
|
|
78
|
+
return;
|
|
79
|
+
}
|
|
80
|
+
|
|
75
81
|
if (packRequestQueue.count == 0) {
|
|
76
82
|
return;
|
|
77
83
|
}
|
|
78
|
-
|
|
79
|
-
NSArray<
|
|
84
|
+
|
|
85
|
+
NSArray<MLNOfflinePack *> *packs = [[MLNOfflineStorage sharedOfflineStorage] packs];
|
|
80
86
|
if (packs == nil) {
|
|
81
87
|
return;
|
|
82
88
|
}
|
|
83
|
-
|
|
89
|
+
|
|
84
90
|
while (packRequestQueue.count > 0) {
|
|
85
91
|
RCTPromiseResolveBlock resolve = [packRequestQueue objectAtIndex:0];
|
|
86
92
|
resolve([self _convertPacksToJson:packs]);
|
|
@@ -93,17 +99,17 @@ RCT_EXPORT_METHOD(createPack:(NSDictionary *)options
|
|
|
93
99
|
rejecter:(RCTPromiseRejectBlock)reject)
|
|
94
100
|
{
|
|
95
101
|
NSString *styleURL = options[@"styleURL"];
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
id<
|
|
102
|
+
MLNCoordinateBounds bounds = [RCTMLNUtils fromFeatureCollection:options[@"bounds"]];
|
|
103
|
+
|
|
104
|
+
id<MLNOfflineRegion> offlineRegion = [[MLNTilePyramidOfflineRegion alloc] initWithStyleURL:[NSURL URLWithString:styleURL]
|
|
99
105
|
bounds:bounds
|
|
100
106
|
fromZoomLevel:[options[@"minZoom"] doubleValue]
|
|
101
107
|
toZoomLevel:[options[@"maxZoom"] doubleValue]];
|
|
102
108
|
NSData *context = [self _archiveMetadata:options[@"metadata"]];
|
|
103
|
-
|
|
104
|
-
[[
|
|
109
|
+
|
|
110
|
+
[[MLNOfflineStorage sharedOfflineStorage] addPackForRegion:offlineRegion
|
|
105
111
|
withContext:context
|
|
106
|
-
completionHandler:^(
|
|
112
|
+
completionHandler:^(MLNOfflinePack *pack, NSError *error) {
|
|
107
113
|
if (error != nil) {
|
|
108
114
|
reject(@"createPack", error.description, error);
|
|
109
115
|
return;
|
|
@@ -129,8 +135,8 @@ RCT_EXPORT_METHOD(mergeOfflineRegions:(NSString *)path
|
|
|
129
135
|
return reject(@"asset_does_not_exist", [NSString stringWithFormat:@"The given assetName, %@, can't be found in the app's bundle.", path], nil);
|
|
130
136
|
}
|
|
131
137
|
}
|
|
132
|
-
|
|
133
|
-
[[
|
|
138
|
+
|
|
139
|
+
[[MLNOfflineStorage sharedOfflineStorage] addContentsOfFile:absolutePath withCompletionHandler:^(NSURL *fileURL, NSArray<MLNOfflinePack *> *packs, NSError *error) {
|
|
134
140
|
if (error != nil) {
|
|
135
141
|
reject(@"mergeOfflineRegions", error.description, error);
|
|
136
142
|
return;
|
|
@@ -142,8 +148,8 @@ RCT_EXPORT_METHOD(mergeOfflineRegions:(NSString *)path
|
|
|
142
148
|
RCT_EXPORT_METHOD(getPacks:(RCTPromiseResolveBlock)resolve rejecter:(RCTPromiseRejectBlock)reject)
|
|
143
149
|
{
|
|
144
150
|
dispatch_async(dispatch_get_main_queue(), ^{
|
|
145
|
-
NSArray<
|
|
146
|
-
|
|
151
|
+
NSArray<MLNOfflinePack *> *packs = [[MLNOfflineStorage sharedOfflineStorage] packs];
|
|
152
|
+
|
|
147
153
|
if (packs == nil) {
|
|
148
154
|
// packs have not loaded yet
|
|
149
155
|
[self->packRequestQueue addObject:resolve];
|
|
@@ -156,7 +162,7 @@ RCT_EXPORT_METHOD(getPacks:(RCTPromiseResolveBlock)resolve rejecter:(RCTPromiseR
|
|
|
156
162
|
|
|
157
163
|
RCT_EXPORT_METHOD(invalidateAmbientCache:(RCTPromiseResolveBlock)resolve rejecter:(RCTPromiseRejectBlock)reject)
|
|
158
164
|
{
|
|
159
|
-
[[
|
|
165
|
+
[[MLNOfflineStorage sharedOfflineStorage] invalidateAmbientCacheWithCompletionHandler:^(NSError *error) {
|
|
160
166
|
if (error != nil) {
|
|
161
167
|
reject(@"invalidateAmbientCache", error.description, error);
|
|
162
168
|
return;
|
|
@@ -167,7 +173,7 @@ RCT_EXPORT_METHOD(invalidateAmbientCache:(RCTPromiseResolveBlock)resolve rejecte
|
|
|
167
173
|
|
|
168
174
|
RCT_EXPORT_METHOD(clearAmbientCache:(RCTPromiseResolveBlock)resolve rejecter:(RCTPromiseRejectBlock)reject)
|
|
169
175
|
{
|
|
170
|
-
[[
|
|
176
|
+
[[MLNOfflineStorage sharedOfflineStorage] clearAmbientCacheWithCompletionHandler:^(NSError *error) {
|
|
171
177
|
if (error != nil) {
|
|
172
178
|
reject(@"clearAmbientCache", error.description, error);
|
|
173
179
|
return;
|
|
@@ -180,54 +186,69 @@ RCT_EXPORT_METHOD(setMaximumAmbientCacheSize:(NSUInteger)cacheSize
|
|
|
180
186
|
resolver:(RCTPromiseResolveBlock)resolve
|
|
181
187
|
rejecter:(RCTPromiseRejectBlock)reject)
|
|
182
188
|
{
|
|
183
|
-
[[
|
|
189
|
+
[[MLNOfflineStorage sharedOfflineStorage] setMaximumAmbientCacheSize:cacheSize withCompletionHandler:^(NSError *error) {
|
|
184
190
|
if (error != nil) {
|
|
185
191
|
reject(@"setMaximumAmbientCacheSize", error.description, error);
|
|
186
192
|
return;
|
|
187
193
|
}
|
|
188
194
|
resolve(nil);
|
|
189
195
|
}];
|
|
190
|
-
|
|
196
|
+
|
|
191
197
|
}
|
|
192
198
|
|
|
193
199
|
RCT_EXPORT_METHOD(resetDatabase:(RCTPromiseResolveBlock)resolve rejecter:(RCTPromiseRejectBlock)reject)
|
|
194
200
|
{
|
|
195
|
-
[[
|
|
201
|
+
[[MLNOfflineStorage sharedOfflineStorage] resetDatabaseWithCompletionHandler:^(NSError *error) {
|
|
196
202
|
if (error != nil) {
|
|
197
203
|
reject(@"resetDatabase", error.description, error);
|
|
198
204
|
return;
|
|
199
205
|
}
|
|
200
206
|
resolve(nil);
|
|
201
207
|
}];
|
|
202
|
-
|
|
208
|
+
|
|
203
209
|
}
|
|
204
210
|
|
|
205
211
|
RCT_EXPORT_METHOD(getPackStatus:(NSString *)name
|
|
206
212
|
resolver:(RCTPromiseResolveBlock)resolve
|
|
207
213
|
rejecter:(RCTPromiseRejectBlock)reject)
|
|
208
214
|
{
|
|
209
|
-
|
|
210
|
-
|
|
215
|
+
MLNOfflinePack *pack = [self _getPackFromName:name];
|
|
216
|
+
|
|
211
217
|
if (pack == nil) {
|
|
212
218
|
resolve(nil);
|
|
213
219
|
NSLog(@"getPackStatus - Unknown offline region");
|
|
214
220
|
return;
|
|
215
221
|
}
|
|
216
|
-
|
|
217
|
-
|
|
222
|
+
|
|
223
|
+
if (pack.state == MLNOfflinePackStateUnknown) {
|
|
224
|
+
[pack addObserver:self forKeyPath:@"state" options:NSKeyValueObservingOptionNew context:(__bridge_retained void*)resolve];
|
|
225
|
+
[pack requestProgress];
|
|
226
|
+
} else {
|
|
227
|
+
resolve([self _makeRegionStatusPayload:name pack:pack]);
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
|
|
231
|
+
-(void)observerStateForPack:(MLNOfflinePack*)pack context:(nullable void*) context {
|
|
232
|
+
RCTPromiseResolveBlock resolve = (__bridge_transfer RCTPromiseResolveBlock)context;
|
|
233
|
+
dispatch_async(dispatch_get_main_queue(), ^{
|
|
234
|
+
NSDictionary* metadata = [self _unarchiveMetadata:pack];
|
|
235
|
+
NSString* name = metadata[@"name"];
|
|
236
|
+
resolve([self _makeRegionStatusPayload:name pack:pack]);
|
|
237
|
+
});
|
|
238
|
+
[pack removeObserver:self forKeyPath:@"state" context:context];
|
|
218
239
|
}
|
|
219
240
|
|
|
220
241
|
RCT_EXPORT_METHOD(invalidatePack:(NSString *)name
|
|
221
242
|
resolver:(RCTPromiseResolveBlock)resolve
|
|
222
243
|
rejecter:(RCTPromiseRejectBlock)reject)
|
|
223
244
|
{
|
|
224
|
-
|
|
245
|
+
MLNOfflinePack *pack = [self _getPackFromName:name];
|
|
225
246
|
|
|
226
247
|
if (pack == nil) {
|
|
227
248
|
resolve(nil);
|
|
228
249
|
return;
|
|
229
250
|
}
|
|
230
|
-
[[
|
|
251
|
+
[[MLNOfflineStorage sharedOfflineStorage] invalidatePack:pack withCompletionHandler:^(NSError *error) {
|
|
231
252
|
if (error != nil) {
|
|
232
253
|
reject(@"invalidatePack", error.description, error);
|
|
233
254
|
return;
|
|
@@ -240,18 +261,18 @@ RCT_EXPORT_METHOD(deletePack:(NSString *)name
|
|
|
240
261
|
resolver:(RCTPromiseResolveBlock)resolve
|
|
241
262
|
rejecter:(RCTPromiseRejectBlock)reject)
|
|
242
263
|
{
|
|
243
|
-
|
|
244
|
-
|
|
264
|
+
MLNOfflinePack *pack = [self _getPackFromName:name];
|
|
265
|
+
|
|
245
266
|
if (pack == nil) {
|
|
246
267
|
resolve(nil);
|
|
247
268
|
return;
|
|
248
269
|
}
|
|
249
|
-
if (pack.state ==
|
|
250
|
-
NSError *error = [NSError errorWithDomain:
|
|
270
|
+
if (pack.state == MLNOfflinePackStateInvalid) {
|
|
271
|
+
NSError *error = [NSError errorWithDomain:MLNErrorDomain code:1 userInfo:@{NSLocalizedDescriptionKey: NSLocalizedString(@"Pack has already been deleted", nil)}];
|
|
251
272
|
reject(@"deletePack", error.description, error);
|
|
252
273
|
return;
|
|
253
274
|
}
|
|
254
|
-
[[
|
|
275
|
+
[[MLNOfflineStorage sharedOfflineStorage] removePack:pack withCompletionHandler:^(NSError *error) {
|
|
255
276
|
if (error != nil) {
|
|
256
277
|
reject(@"deletePack", error.description, error);
|
|
257
278
|
return;
|
|
@@ -264,18 +285,18 @@ RCT_EXPORT_METHOD(pausePackDownload:(NSString *)name
|
|
|
264
285
|
resolver:(RCTPromiseResolveBlock)resolve
|
|
265
286
|
rejecter:(RCTPromiseRejectBlock)reject)
|
|
266
287
|
{
|
|
267
|
-
|
|
268
|
-
|
|
288
|
+
MLNOfflinePack *pack = [self _getPackFromName:name];
|
|
289
|
+
|
|
269
290
|
if (pack == nil) {
|
|
270
291
|
reject(@"pausePackDownload", @"Unknown offline region", nil);
|
|
271
292
|
return;
|
|
272
293
|
}
|
|
273
|
-
|
|
274
|
-
if (pack.state ==
|
|
294
|
+
|
|
295
|
+
if (pack.state == MLNOfflinePackStateInactive || pack.state == MLNOfflinePackStateComplete) {
|
|
275
296
|
resolve(nil);
|
|
276
297
|
return;
|
|
277
298
|
}
|
|
278
|
-
|
|
299
|
+
|
|
279
300
|
[pack suspend];
|
|
280
301
|
resolve(nil);
|
|
281
302
|
}
|
|
@@ -284,25 +305,25 @@ RCT_EXPORT_METHOD(resumePackDownload:(NSString *)name
|
|
|
284
305
|
resolver:(RCTPromiseResolveBlock)resolve
|
|
285
306
|
rejecter:(RCTPromiseRejectBlock)reject)
|
|
286
307
|
{
|
|
287
|
-
|
|
288
|
-
|
|
308
|
+
MLNOfflinePack *pack = [self _getPackFromName:name];
|
|
309
|
+
|
|
289
310
|
if (pack == nil) {
|
|
290
311
|
reject(@"resumePack", @"Unknown offline region", nil);
|
|
291
312
|
return;
|
|
292
313
|
}
|
|
293
|
-
|
|
294
|
-
if (pack.state ==
|
|
314
|
+
|
|
315
|
+
if (pack.state == MLNOfflinePackStateActive || pack.state == MLNOfflinePackStateComplete) {
|
|
295
316
|
resolve(nil);
|
|
296
317
|
return;
|
|
297
318
|
}
|
|
298
|
-
|
|
319
|
+
|
|
299
320
|
[pack resume];
|
|
300
321
|
resolve(nil);
|
|
301
322
|
}
|
|
302
323
|
|
|
303
324
|
RCT_EXPORT_METHOD(setTileCountLimit:(nonnull NSNumber *)limit)
|
|
304
325
|
{
|
|
305
|
-
[[
|
|
326
|
+
[[MLNOfflineStorage sharedOfflineStorage] setMaximumAllowedMapboxTiles:[limit intValue]];
|
|
306
327
|
}
|
|
307
328
|
|
|
308
329
|
RCT_EXPORT_METHOD(setProgressEventThrottle:(nonnull NSNumber *)throttleValue)
|
|
@@ -312,34 +333,34 @@ RCT_EXPORT_METHOD(setProgressEventThrottle:(nonnull NSNumber *)throttleValue)
|
|
|
312
333
|
|
|
313
334
|
- (void)offlinePackProgressDidChange:(NSNotification *)notification
|
|
314
335
|
{
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
if (pack.state ==
|
|
336
|
+
MLNOfflinePack *pack = notification.object;
|
|
337
|
+
|
|
338
|
+
if (pack.state == MLNOfflinePackStateInvalid) {
|
|
318
339
|
return; // Avoid invalid offline pack exception
|
|
319
340
|
}
|
|
320
|
-
|
|
341
|
+
|
|
321
342
|
if ([self _shouldSendProgressEvent:[self _getCurrentTimestamp] pack:pack]) {
|
|
322
343
|
NSDictionary *metadata = [self _unarchiveMetadata:pack];
|
|
323
|
-
|
|
344
|
+
RCTMLNEvent *event = [self _makeProgressEvent:metadata[@"name"] pack:pack];
|
|
324
345
|
[self _sendEvent:RCT_MAPBOX_OFFLINE_CALLBACK_PROGRESS event:event];
|
|
325
346
|
lastPackTimestamp = [self _getCurrentTimestamp];
|
|
326
347
|
}
|
|
327
|
-
|
|
348
|
+
|
|
328
349
|
lastPackState = pack.state;
|
|
329
350
|
}
|
|
330
351
|
|
|
331
352
|
- (void)offlinePackDidReceiveError:(NSNotification *)notification
|
|
332
353
|
{
|
|
333
|
-
|
|
334
|
-
if (pack.state ==
|
|
354
|
+
MLNOfflinePack *pack = notification.object;
|
|
355
|
+
if (pack.state == MLNOfflinePackStateInvalid) {
|
|
335
356
|
return; // Avoid invalid offline pack exception
|
|
336
357
|
}
|
|
337
358
|
NSDictionary *metadata = [self _unarchiveMetadata:pack];
|
|
338
|
-
|
|
359
|
+
|
|
339
360
|
NSString *name = metadata[@"name"];
|
|
340
361
|
if (name != nil) {
|
|
341
|
-
NSError *error = notification.userInfo[
|
|
342
|
-
|
|
362
|
+
NSError *error = notification.userInfo[MLNOfflinePackUserInfoKeyError];
|
|
363
|
+
RCTMLNEvent *event = [self _makeErrorEvent:name
|
|
343
364
|
type:RCT_MAPBOX_OFFLINE_ERROR
|
|
344
365
|
message:error.description];
|
|
345
366
|
[self _sendEvent:RCT_MAPBOX_OFFLINE_CALLBACK_ERROR event:event];
|
|
@@ -348,12 +369,12 @@ RCT_EXPORT_METHOD(setProgressEventThrottle:(nonnull NSNumber *)throttleValue)
|
|
|
348
369
|
|
|
349
370
|
- (void)offlinePackDidReceiveMaxAllowedMapboxTiles:(NSNotification *)notification
|
|
350
371
|
{
|
|
351
|
-
|
|
372
|
+
MLNOfflinePack *pack = notification.object;
|
|
352
373
|
NSDictionary *metadata = [self _unarchiveMetadata:pack];
|
|
353
|
-
|
|
374
|
+
|
|
354
375
|
NSString *name = metadata[@"name"];
|
|
355
376
|
if (name != nil) {
|
|
356
|
-
|
|
377
|
+
RCTMLNEvent *event = [self _makeErrorEvent:name
|
|
357
378
|
type:RCT_MAPBOX_OFFLINE_ERROR
|
|
358
379
|
message:@"Mapbox tile limit exceeded"];
|
|
359
380
|
[self _sendEvent:RCT_MAPBOX_OFFLINE_CALLBACK_ERROR event:event];
|
|
@@ -370,7 +391,7 @@ RCT_EXPORT_METHOD(setProgressEventThrottle:(nonnull NSNumber *)throttleValue)
|
|
|
370
391
|
return [NSKeyedArchiver archivedDataWithRootObject:metadata];
|
|
371
392
|
}
|
|
372
393
|
|
|
373
|
-
- (NSDictionary *)_unarchiveMetadata:(
|
|
394
|
+
- (NSDictionary *)_unarchiveMetadata:(MLNOfflinePack *)pack
|
|
374
395
|
{
|
|
375
396
|
id data = [NSKeyedUnarchiver unarchiveObjectWithData:pack.context];
|
|
376
397
|
// Version v5 store data as NSDictionary while v6 store data as JSON string.
|
|
@@ -386,17 +407,17 @@ RCT_EXPORT_METHOD(setProgressEventThrottle:(nonnull NSNumber *)throttleValue)
|
|
|
386
407
|
if ([data isKindOfClass:[NSDictionary class]]) {
|
|
387
408
|
return data;
|
|
388
409
|
}
|
|
389
|
-
|
|
410
|
+
|
|
390
411
|
if (data == nil) {
|
|
391
412
|
return @{};
|
|
392
413
|
}
|
|
393
|
-
|
|
414
|
+
|
|
394
415
|
return [NSJSONSerialization JSONObjectWithData:[data dataUsingEncoding:NSUTF8StringEncoding]
|
|
395
416
|
options:NSJSONReadingMutableContainers
|
|
396
417
|
error:nil];
|
|
397
418
|
}
|
|
398
419
|
|
|
399
|
-
- (NSDictionary *)_makeRegionStatusPayload:(NSString *)name pack:(
|
|
420
|
+
- (NSDictionary *)_makeRegionStatusPayload:(NSString *)name pack:(MLNOfflinePack *)pack
|
|
400
421
|
{
|
|
401
422
|
uint64_t completedResources = pack.progress.countOfResourcesCompleted;
|
|
402
423
|
uint64_t expectedResources = pack.progress.countOfResourcesExpected;
|
|
@@ -406,7 +427,7 @@ RCT_EXPORT_METHOD(setProgressEventThrottle:(nonnull NSNumber *)throttleValue)
|
|
|
406
427
|
if(expectedResources == 0) {
|
|
407
428
|
progressPercentage = 0;
|
|
408
429
|
}
|
|
409
|
-
|
|
430
|
+
|
|
410
431
|
return @{
|
|
411
432
|
@"state": @(pack.state),
|
|
412
433
|
@"name": name,
|
|
@@ -419,45 +440,45 @@ RCT_EXPORT_METHOD(setProgressEventThrottle:(nonnull NSNumber *)throttleValue)
|
|
|
419
440
|
};
|
|
420
441
|
}
|
|
421
442
|
|
|
422
|
-
- (
|
|
443
|
+
- (RCTMLNEvent *)_makeProgressEvent:(NSString *)name pack:(MLNOfflinePack *)pack
|
|
423
444
|
{
|
|
424
|
-
return [
|
|
445
|
+
return [RCTMLNEvent makeEvent:RCT_MAPBOX_OFFLINE_PROGRESS withPayload:[self _makeRegionStatusPayload:name pack:pack]];
|
|
425
446
|
}
|
|
426
447
|
|
|
427
|
-
- (
|
|
448
|
+
- (RCTMLNEvent *)_makeErrorEvent:(NSString *)name type:(NSString *)type message:(NSString *)message
|
|
428
449
|
{
|
|
429
450
|
NSDictionary *payload = @{ @"name": name, @"message": message };
|
|
430
|
-
return [
|
|
451
|
+
return [RCTMLNEvent makeEvent:type withPayload:payload];
|
|
431
452
|
}
|
|
432
453
|
|
|
433
|
-
- (NSArray<NSDictionary *> *)_convertPacksToJson:(NSArray<
|
|
454
|
+
- (NSArray<NSDictionary *> *)_convertPacksToJson:(NSArray<MLNOfflinePack *> *)packs
|
|
434
455
|
{
|
|
435
456
|
NSMutableArray<NSDictionary *> *jsonPacks = [NSMutableArray new];
|
|
436
|
-
|
|
457
|
+
|
|
437
458
|
if (packs == nil) {
|
|
438
459
|
return jsonPacks;
|
|
439
460
|
}
|
|
440
|
-
|
|
441
|
-
for (
|
|
461
|
+
|
|
462
|
+
for (MLNOfflinePack *pack in packs) {
|
|
442
463
|
[jsonPacks addObject:[self _convertPackToDict:pack]];
|
|
443
464
|
}
|
|
444
|
-
|
|
465
|
+
|
|
445
466
|
return jsonPacks;
|
|
446
467
|
}
|
|
447
468
|
|
|
448
|
-
- (NSDictionary *)_convertPackToDict:(
|
|
469
|
+
- (NSDictionary *)_convertPackToDict:(MLNOfflinePack *)pack
|
|
449
470
|
{
|
|
450
471
|
// format bounds
|
|
451
|
-
|
|
472
|
+
MLNTilePyramidOfflineRegion *region = (MLNTilePyramidOfflineRegion *)pack.region;
|
|
452
473
|
if (region == nil) {
|
|
453
474
|
return nil;
|
|
454
475
|
}
|
|
455
|
-
|
|
476
|
+
|
|
456
477
|
NSArray *jsonBounds = @[
|
|
457
478
|
@[@(region.bounds.ne.longitude), @(region.bounds.ne.latitude)],
|
|
458
479
|
@[@(region.bounds.sw.longitude), @(region.bounds.sw.latitude)]
|
|
459
480
|
];
|
|
460
|
-
|
|
481
|
+
|
|
461
482
|
// format metadata
|
|
462
483
|
NSDictionary *metadata = [self _unarchiveMetadata:pack];
|
|
463
484
|
NSData *jsonMetadata = [NSJSONSerialization dataWithJSONObject:metadata
|
|
@@ -469,26 +490,26 @@ RCT_EXPORT_METHOD(setProgressEventThrottle:(nonnull NSNumber *)throttleValue)
|
|
|
469
490
|
};
|
|
470
491
|
}
|
|
471
492
|
|
|
472
|
-
- (
|
|
493
|
+
- (MLNOfflinePack *)_getPackFromName:(NSString *)name
|
|
473
494
|
{
|
|
474
|
-
NSArray<
|
|
475
|
-
|
|
495
|
+
NSArray<MLNOfflinePack *> *packs = [[MLNOfflineStorage sharedOfflineStorage] packs];
|
|
496
|
+
|
|
476
497
|
if (packs == nil) {
|
|
477
498
|
return nil;
|
|
478
499
|
}
|
|
479
|
-
|
|
480
|
-
for (
|
|
500
|
+
|
|
501
|
+
for (MLNOfflinePack *pack in packs) {
|
|
481
502
|
NSDictionary *metadata = [self _unarchiveMetadata:pack];
|
|
482
|
-
|
|
503
|
+
|
|
483
504
|
if ([name isEqualToString:metadata[@"name"]]) {
|
|
484
505
|
return pack;
|
|
485
506
|
}
|
|
486
507
|
}
|
|
487
|
-
|
|
508
|
+
|
|
488
509
|
return nil;
|
|
489
510
|
}
|
|
490
511
|
|
|
491
|
-
- (void)_sendEvent:(NSString *)eventName event:(
|
|
512
|
+
- (void)_sendEvent:(NSString *)eventName event:(RCTMLNEvent *)event
|
|
492
513
|
{
|
|
493
514
|
if (!hasListeners) {
|
|
494
515
|
return;
|
|
@@ -496,20 +517,20 @@ RCT_EXPORT_METHOD(setProgressEventThrottle:(nonnull NSNumber *)throttleValue)
|
|
|
496
517
|
[self sendEventWithName:eventName body:[event toJSON]];
|
|
497
518
|
}
|
|
498
519
|
|
|
499
|
-
- (BOOL)_shouldSendProgressEvent:(double)currentTimestamp pack:(
|
|
520
|
+
- (BOOL)_shouldSendProgressEvent:(double)currentTimestamp pack:(MLNOfflinePack *)currentPack
|
|
500
521
|
{
|
|
501
522
|
if (lastPackState == -1) {
|
|
502
523
|
return YES;
|
|
503
524
|
}
|
|
504
|
-
|
|
525
|
+
|
|
505
526
|
if (lastPackState != currentPack.state) {
|
|
506
527
|
return YES;
|
|
507
528
|
}
|
|
508
|
-
|
|
529
|
+
|
|
509
530
|
if (currentTimestamp - lastPackTimestamp > eventThrottle) {
|
|
510
531
|
return YES;
|
|
511
532
|
}
|
|
512
|
-
|
|
533
|
+
|
|
513
534
|
return NO;
|
|
514
535
|
}
|
|
515
536
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
//
|
|
2
|
-
//
|
|
3
|
-
//
|
|
2
|
+
// MLNSnapshotModule.h
|
|
3
|
+
// RCTMLN
|
|
4
4
|
//
|
|
5
5
|
// Created by Nick Italiano on 12/1/17.
|
|
6
6
|
// Copyright © 2017 Mapbox Inc. All rights reserved.
|
|
@@ -8,6 +8,6 @@
|
|
|
8
8
|
|
|
9
9
|
#import <React/RCTBridgeModule.h>
|
|
10
10
|
|
|
11
|
-
@interface
|
|
11
|
+
@interface MLNSnapshotModule : NSObject<RCTBridgeModule>
|
|
12
12
|
|
|
13
13
|
@end
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
//
|
|
2
|
-
//
|
|
3
|
-
//
|
|
2
|
+
// MLNSnapshotModule.m
|
|
3
|
+
// RCTMLN
|
|
4
4
|
//
|
|
5
5
|
// Created by Nick Italiano on 12/1/17.
|
|
6
6
|
// Copyright © 2017 Mapbox Inc. All rights reserved.
|
|
7
7
|
//
|
|
8
8
|
|
|
9
|
-
#import "
|
|
10
|
-
#import "
|
|
9
|
+
#import "MLNSnapshotModule.h"
|
|
10
|
+
#import "RCTMLNUtils.h"
|
|
11
11
|
#import "RNMBImageUtils.h"
|
|
12
|
-
@import
|
|
12
|
+
@import MapLibre;
|
|
13
13
|
|
|
14
|
-
@implementation
|
|
14
|
+
@implementation MLNSnapshotModule
|
|
15
15
|
|
|
16
16
|
RCT_EXPORT_MODULE()
|
|
17
17
|
|
|
@@ -25,10 +25,10 @@ RCT_EXPORT_METHOD(takeSnap:(NSDictionary *)jsOptions
|
|
|
25
25
|
rejecter:(RCTPromiseRejectBlock)reject)
|
|
26
26
|
{
|
|
27
27
|
dispatch_async(dispatch_get_main_queue(), ^{
|
|
28
|
-
|
|
29
|
-
__block
|
|
28
|
+
MLNMapSnapshotOptions *options = [self _getOptions:jsOptions];
|
|
29
|
+
__block MLNMapSnapshotter *snapshotter = [[MLNMapSnapshotter alloc] initWithOptions:options];
|
|
30
30
|
|
|
31
|
-
[snapshotter startWithCompletionHandler:^(
|
|
31
|
+
[snapshotter startWithCompletionHandler:^(MLNMapSnapshot * _Nullable snapshot, NSError * _Nullable err) {
|
|
32
32
|
if (err != nil) {
|
|
33
33
|
reject(@"takeSnap", @"Could not create snapshot", err);
|
|
34
34
|
snapshotter = nil;
|
|
@@ -48,22 +48,22 @@ RCT_EXPORT_METHOD(takeSnap:(NSDictionary *)jsOptions
|
|
|
48
48
|
});
|
|
49
49
|
}
|
|
50
50
|
|
|
51
|
-
- (
|
|
51
|
+
- (MLNMapSnapshotOptions *)_getOptions:(NSDictionary *)jsOptions
|
|
52
52
|
{
|
|
53
|
-
|
|
53
|
+
MLNMapCamera *camera = [[MLNMapCamera alloc] init];
|
|
54
54
|
|
|
55
55
|
camera.pitch = [jsOptions[@"pitch"] doubleValue];
|
|
56
56
|
camera.heading = [jsOptions[@"heading"] doubleValue];
|
|
57
57
|
|
|
58
58
|
if (jsOptions[@"centerCoordinate"] != nil) {
|
|
59
|
-
camera.centerCoordinate = [
|
|
59
|
+
camera.centerCoordinate = [RCTMLNUtils fromFeature:jsOptions[@"centerCoordinate"]];
|
|
60
60
|
}
|
|
61
61
|
|
|
62
62
|
NSNumber *width = jsOptions[@"width"];
|
|
63
63
|
NSNumber *height = jsOptions[@"height"];
|
|
64
64
|
CGSize size = CGSizeMake([width doubleValue], [height doubleValue]);
|
|
65
65
|
|
|
66
|
-
|
|
66
|
+
MLNMapSnapshotOptions *options = [[MLNMapSnapshotOptions alloc] initWithStyleURL:[NSURL URLWithString:jsOptions[@"styleURL"]]
|
|
67
67
|
camera:camera
|
|
68
68
|
size:size];
|
|
69
69
|
if (jsOptions[@"zoomLevel"] != nil) {
|
|
@@ -71,7 +71,7 @@ RCT_EXPORT_METHOD(takeSnap:(NSDictionary *)jsOptions
|
|
|
71
71
|
}
|
|
72
72
|
|
|
73
73
|
if (jsOptions[@"bounds"] != nil) {
|
|
74
|
-
options.coordinateBounds = [
|
|
74
|
+
options.coordinateBounds = [RCTMLNUtils fromFeatureCollection:jsOptions[@"bounds"]];
|
|
75
75
|
}
|
|
76
76
|
|
|
77
77
|
return options;
|
package/ios/{RCTMGL/MGLUserLocationHeadingArrowLayer.h → RCTMLN/MLNUserLocationHeadingArrowLayer.h}
RENAMED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
#import <QuartzCore/QuartzCore.h>
|
|
2
|
-
#import "
|
|
3
|
-
@import
|
|
2
|
+
#import "MLNUserLocationHeadingIndicator.h"
|
|
3
|
+
@import MapLibre;
|
|
4
4
|
|
|
5
|
-
@interface
|
|
5
|
+
@interface MLNUserLocationHeadingArrowLayer : CAShapeLayer <MLNUserLocationHeadingIndicator>
|
|
6
6
|
|
|
7
|
-
- (instancetype)initWithUserLocationAnnotationView:(
|
|
7
|
+
- (instancetype)initWithUserLocationAnnotationView:(MLNUserLocationAnnotationView *)userLocationView;
|
|
8
8
|
- (void)updateHeadingAccuracy:(CLLocationDirection)accuracy;
|
|
9
9
|
- (void)updateTintColor:(CGColorRef)color;
|
|
10
10
|
|
package/ios/{RCTMGL/MGLUserLocationHeadingArrowLayer.m → RCTMLN/MLNUserLocationHeadingArrowLayer.m}
RENAMED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
#import "
|
|
2
|
-
#import "
|
|
1
|
+
#import "MLNUserLocationHeadingArrowLayer.h"
|
|
2
|
+
#import "MLNFaux3DUserLocationAnnotationView.h"
|
|
3
3
|
|
|
4
|
-
const CGFloat
|
|
4
|
+
const CGFloat MLNUserLocationHeadingArrowSize = 6;
|
|
5
5
|
|
|
6
|
-
@implementation
|
|
6
|
+
@implementation MLNUserLocationHeadingArrowLayer
|
|
7
7
|
|
|
8
|
-
- (instancetype)initWithUserLocationAnnotationView:(
|
|
8
|
+
- (instancetype)initWithUserLocationAnnotationView:(MLNUserLocationAnnotationView *)userLocationView
|
|
9
9
|
{
|
|
10
|
-
CGFloat size = userLocationView.bounds.size.width +
|
|
10
|
+
CGFloat size = userLocationView.bounds.size.width + MLNUserLocationHeadingArrowSize;
|
|
11
11
|
|
|
12
12
|
self = [super init];
|
|
13
13
|
self.bounds = CGRectMake(0, 0, size, size);
|
|
@@ -37,7 +37,7 @@ const CGFloat MGLUserLocationHeadingArrowSize = 6;
|
|
|
37
37
|
|
|
38
38
|
- (CGPathRef)arrowPath {
|
|
39
39
|
CGFloat center = roundf(CGRectGetMidX(self.bounds));
|
|
40
|
-
CGFloat size =
|
|
40
|
+
CGFloat size = MLNUserLocationHeadingArrowSize;
|
|
41
41
|
|
|
42
42
|
CGPoint top = CGPointMake(center, 0);
|
|
43
43
|
CGPoint left = CGPointMake(center - size, size);
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
#import <QuartzCore/QuartzCore.h>
|
|
2
|
+
#import "MLNUserLocationHeadingIndicator.h"
|
|
3
|
+
@import MapLibre;
|
|
4
|
+
|
|
5
|
+
@interface MLNUserLocationHeadingBeamLayer : CALayer <MLNUserLocationHeadingIndicator>
|
|
6
|
+
|
|
7
|
+
- (MLNUserLocationHeadingBeamLayer *)initWithUserLocationAnnotationView:(MLNUserLocationAnnotationView *)userLocationView;
|
|
8
|
+
- (void)updateHeadingAccuracy:(CLLocationDirection)accuracy;
|
|
9
|
+
- (void)updateTintColor:(CGColorRef)color;
|
|
10
|
+
|
|
11
|
+
@end
|