@rnmapbox/maps 10.1.0 → 10.1.1
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/CHANGELOG.md +9 -5
- package/README.md +5 -31
- package/android/build.gradle +6 -2
- package/android/install.md +5 -21
- package/android/src/main/AndroidManifest.xml +1 -1
- package/android/src/main/java/com/rnmapbox/rnmbx/RNMBXPackage.kt +76 -12
- package/android/src/main/java/com/rnmapbox/rnmbx/components/AbstractEvent.kt +24 -0
- package/android/src/main/java/com/rnmapbox/rnmbx/components/AbstractEventEmitter.kt +5 -0
- package/android/src/main/java/com/rnmapbox/rnmbx/components/annotation/RNMBXMarkerView.kt +17 -6
- package/android/src/main/java/com/rnmapbox/rnmbx/components/annotation/RNMBXMarkerViewContent.kt +31 -0
- package/android/src/main/java/com/rnmapbox/rnmbx/components/annotation/RNMBXMarkerViewContentManager.kt +23 -0
- package/android/src/main/java/com/rnmapbox/rnmbx/components/annotation/RNMBXMarkerViewManager.kt +8 -9
- package/android/src/main/java/com/rnmapbox/rnmbx/components/annotation/RNMBXPointAnnotation.kt +33 -35
- package/android/src/main/java/com/rnmapbox/rnmbx/components/annotation/RNMBXPointAnnotationManager.kt +8 -7
- package/android/src/main/java/com/rnmapbox/rnmbx/components/camera/RNMBXCamera.kt +4 -4
- package/android/src/main/java/com/rnmapbox/rnmbx/components/camera/RNMBXVIewportManager.kt +55 -0
- package/android/src/main/java/com/rnmapbox/rnmbx/components/camera/RNMBXViewport.kt +408 -0
- package/android/src/main/java/com/rnmapbox/rnmbx/components/camera/RNMBXViewportModule.kt +66 -0
- package/android/src/main/java/com/rnmapbox/rnmbx/components/images/ImageManager.kt +53 -0
- package/android/src/main/java/com/rnmapbox/rnmbx/components/images/RNMBXImages.kt +2 -1
- package/android/src/main/java/com/rnmapbox/rnmbx/components/images/RNMBXImagesManager.kt +31 -6
- package/android/src/main/java/com/rnmapbox/rnmbx/components/location/LocationComponentManager.kt +78 -47
- package/android/src/main/java/com/rnmapbox/rnmbx/components/location/RNMBXCustomLocationProvider.kt +114 -0
- package/android/src/main/java/com/rnmapbox/rnmbx/components/location/RNMBXCustomLocationProviderManager.kt +54 -0
- package/android/src/main/java/com/rnmapbox/rnmbx/components/location/RNMBXNativeUserLocation.kt +246 -25
- package/android/src/main/java/com/rnmapbox/rnmbx/components/location/RNMBXNativeUserLocationManager.kt +90 -7
- package/android/src/main/java/com/rnmapbox/rnmbx/components/mapview/NativeMapViewModule.kt +1 -8
- package/android/src/main/java/com/rnmapbox/rnmbx/components/mapview/RNMBXMapView.kt +185 -114
- package/android/src/main/java/com/rnmapbox/rnmbx/components/mapview/RNMBXMapViewManager.kt +16 -8
- package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/RNMBXStyle.kt +1 -1
- package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/RNMBXStyleFactory.kt +1184 -109
- package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/layers/RNMBXCircleLayerManager.kt +8 -0
- package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/layers/RNMBXFillLayerManager.kt +12 -5
- package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/layers/RNMBXHeatmapLayerManager.kt +7 -0
- package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/layers/RNMBXLayer.kt +25 -6
- package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/layers/RNMBXLineLayerManager.kt +7 -0
- package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/layers/RNMBXModelLayer.kt +33 -0
- package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/layers/RNMBXModelLayerManager.kt +85 -0
- package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/layers/RNMBXRasterLayer.kt +4 -0
- package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/layers/RNMBXRasterLayerManager.kt +8 -2
- package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/layers/RNMBXSymbolLayerManager.kt +8 -0
- package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/layers/codeparts/LayerManagerCommonProps.codepart-kt.ejs +59 -0
- package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/model/RNMBXModels.kt +33 -0
- package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/model/RNMBXModelsManager.kt +59 -0
- package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/sources/RNMBXShapeSource.kt +56 -6
- package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/sources/RNMBXShapeSourceManager.kt +7 -5
- package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/sources/RNMBXVectorSource.kt +1 -1
- package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/sources/RNMBXVectorSourceManager.kt +5 -4
- package/android/src/main/java/com/rnmapbox/rnmbx/events/AndroidCallbackEvent.java +1 -1
- package/android/src/main/java/com/rnmapbox/rnmbx/events/FeatureClickEvent.java +3 -3
- package/android/src/main/java/com/rnmapbox/rnmbx/events/IEvent.kt +1 -4
- package/android/src/main/java/com/rnmapbox/rnmbx/events/ImageMissingEvent.java +1 -1
- package/android/src/main/java/com/rnmapbox/rnmbx/events/LocationEvent.kt +1 -1
- package/android/src/main/java/com/rnmapbox/rnmbx/events/MapChangeEvent.kt +1 -1
- package/android/src/main/java/com/rnmapbox/rnmbx/events/MapClickEvent.java +2 -2
- package/android/src/main/java/com/rnmapbox/rnmbx/events/MapUserTrackingModeEvent.kt +4 -4
- package/android/src/main/java/com/rnmapbox/rnmbx/events/PointAnnotationClickEvent.java +1 -1
- package/android/src/main/java/com/rnmapbox/rnmbx/events/PointAnnotationDragEvent.java +3 -3
- package/android/src/main/java/com/rnmapbox/rnmbx/events/constants/EventKeys.kt +44 -0
- package/android/src/main/java/com/rnmapbox/rnmbx/modules/RNMBXModule.kt +18 -1
- package/android/src/main/java/com/rnmapbox/rnmbx/modules/RNMBXOfflineModule.kt +4 -1
- package/android/src/main/java/com/rnmapbox/rnmbx/modules/RNMBXOfflineModuleLegacy.kt +444 -0
- package/android/src/main/java/com/rnmapbox/rnmbx/shape_animators/RNMBXMovePointShapeAnimatorModule.kt +55 -0
- package/android/src/main/java/com/rnmapbox/rnmbx/shape_animators/ShapeAnimatorCommon.kt +110 -0
- package/android/src/main/java/com/rnmapbox/rnmbx/utils/BitmapUtils.kt +3 -0
- package/android/src/main/java/com/rnmapbox/rnmbx/utils/DownloadMapImageTask.kt +5 -2
- package/android/src/main/java/com/rnmapbox/rnmbx/utils/GeoJSONUtils.kt +5 -0
- package/android/src/main/java/com/rnmapbox/rnmbx/utils/extensions/ReadableArray.kt +21 -1
- package/android/src/main/java/com/rnmapbox/rnmbx/utils/extensions/ReadableMap.kt +111 -0
- package/android/src/main/mapbox-v11-compat/v10/com/rnmapbox/rnmbx/v11compat/Annotation.kt +33 -1
- package/android/src/main/mapbox-v11-compat/v10/com/rnmapbox/rnmbx/v11compat/Cancelable.kt +15 -0
- package/android/src/main/mapbox-v11-compat/v10/com/rnmapbox/rnmbx/v11compat/Image.kt +17 -1
- package/android/src/main/mapbox-v11-compat/v10/com/rnmapbox/rnmbx/v11compat/Layer.kt +7 -0
- package/android/src/main/mapbox-v11-compat/v10/com/rnmapbox/rnmbx/v11compat/Location.kt +6 -9
- package/android/src/main/mapbox-v11-compat/v10/com/rnmapbox/rnmbx/v11compat/MapboxMap.kt +11 -0
- package/android/src/main/mapbox-v11-compat/v10/com/rnmapbox/rnmbx/v11compat/OfflineManager.kt +6 -0
- package/android/src/main/mapbox-v11-compat/v10/com/rnmapbox/rnmbx/v11compat/StyleFactory.kt +395 -0
- package/android/src/main/mapbox-v11-compat/v11/com/rnmapbox/rnmbx/v11compat/Annotation.kt +29 -1
- package/android/src/main/mapbox-v11-compat/v11/com/rnmapbox/rnmbx/v11compat/Cancelable.kt +3 -0
- package/android/src/main/mapbox-v11-compat/v11/com/rnmapbox/rnmbx/v11compat/Image.kt +21 -1
- package/android/src/main/mapbox-v11-compat/v11/com/rnmapbox/rnmbx/v11compat/Layer.kt +3 -0
- package/android/src/main/mapbox-v11-compat/v11/com/rnmapbox/rnmbx/v11compat/Location.kt +2 -2
- package/android/src/main/mapbox-v11-compat/v11/com/rnmapbox/rnmbx/v11compat/MapboxMap.kt +5 -0
- package/android/src/main/mapbox-v11-compat/v11/com/rnmapbox/rnmbx/v11compat/OfflineManager.kt +4 -0
- package/android/src/main/mapbox-v11-compat/v11/com/rnmapbox/rnmbx/v11compat/StyleFactory.kt +8 -0
- package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXCircleLayerManagerDelegate.java +9 -6
- package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXCircleLayerManagerInterface.java +3 -2
- package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXCustomLocationProviderManagerDelegate.java +35 -0
- package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXCustomLocationProviderManagerInterface.java +18 -0
- package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXFillLayerManagerDelegate.java +9 -6
- package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXFillLayerManagerInterface.java +3 -2
- package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXHeatmapLayerManagerDelegate.java +9 -6
- package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXHeatmapLayerManagerInterface.java +3 -2
- package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXLineLayerManagerDelegate.java +9 -6
- package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXLineLayerManagerInterface.java +3 -2
- package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXMapViewManagerDelegate.java +3 -0
- package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXMapViewManagerInterface.java +1 -0
- package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXMarkerViewContentManagerDelegate.java +25 -0
- package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXMarkerViewContentManagerInterface.java +16 -0
- package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXMarkerViewManagerDelegate.java +3 -0
- package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXMarkerViewManagerInterface.java +1 -0
- package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXModelLayerManagerDelegate.java +65 -0
- package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXModelLayerManagerInterface.java +28 -0
- package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXModelsManagerDelegate.java +32 -0
- package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXModelsManagerInterface.java +17 -0
- package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXNativeUserLocationManagerDelegate.java +23 -2
- package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXNativeUserLocationManagerInterface.java +8 -1
- package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXRasterLayerManagerDelegate.java +9 -6
- package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXRasterLayerManagerInterface.java +3 -2
- package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXSymbolLayerManagerDelegate.java +9 -6
- package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXSymbolLayerManagerInterface.java +3 -2
- package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXViewportManagerDelegate.java +35 -0
- package/android/src/main/old-arch/com/facebook/react/viewmanagers/RNMBXViewportManagerInterface.java +18 -0
- package/android/src/main/old-arch/com/rnmapbox/rnmbx/NativeRNMBXMovePointShapeAnimatorModuleSpec.java +44 -0
- package/android/src/main/old-arch/com/rnmapbox/rnmbx/NativeRNMBXViewportModuleSpec.java +49 -0
- package/ios/RNMBX/CommonLayerProperties.H +2 -0
- package/ios/RNMBX/CustomHttpHeaders.swift +2 -9
- package/ios/RNMBX/ImageManager.swift +41 -0
- package/ios/RNMBX/RNMBXCamera.swift +4 -4
- package/ios/RNMBX/RNMBXCustomLocationProvider.swift +274 -0
- package/ios/RNMBX/RNMBXCustomLocationProviderComponentView.h +15 -0
- package/ios/RNMBX/RNMBXCustomLocationProviderComponentView.mm +67 -0
- package/ios/RNMBX/RNMBXCustomLocationProviderVIewManager.swift +13 -0
- package/ios/RNMBX/RNMBXCustomLocationProviderViewManager.m +10 -0
- package/ios/RNMBX/RNMBXEvent.swift +2 -0
- package/ios/RNMBX/RNMBXFabricPropConvert.h +47 -0
- package/ios/RNMBX/RNMBXFabricPropConvert.mm +136 -0
- package/ios/RNMBX/RNMBXImageModule.mm +2 -2
- package/ios/RNMBX/RNMBXImages.swift +22 -6
- package/ios/RNMBX/RNMBXImagesComponentView.mm +19 -1
- package/ios/RNMBX/RNMBXInteractiveElement.swift +1 -1
- package/ios/RNMBX/RNMBXLayer.swift +27 -0
- package/ios/RNMBX/RNMBXLocationModule.swift +25 -14
- package/ios/RNMBX/RNMBXLocationModuleV11.swift +81 -14
- package/ios/RNMBX/RNMBXLogging.swift +8 -0
- package/ios/RNMBX/RNMBXMapView.swift +507 -207
- package/ios/RNMBX/RNMBXMapViewComponentView.mm +28 -20
- package/ios/RNMBX/RNMBXMapViewManager.m +1 -0
- package/ios/RNMBX/RNMBXMapViewManager.swift +0 -1
- package/ios/RNMBX/RNMBXMapViewModule.mm +0 -1
- package/ios/RNMBX/RNMBXMarkerView.swift +11 -3
- package/ios/RNMBX/RNMBXMarkerViewComponentView.mm +5 -0
- package/ios/RNMBX/RNMBXMarkerViewContentComponentView.h +15 -0
- package/ios/RNMBX/RNMBXMarkerViewContentComponentView.mm +55 -0
- package/ios/RNMBX/RNMBXMarkerViewContentManager.m +6 -0
- package/ios/RNMBX/RNMBXMarkerViewContentManager.swift +14 -0
- package/ios/RNMBX/RNMBXMarkerViewManager.m +1 -0
- package/ios/RNMBX/RNMBXModelLayer.swift +59 -0
- package/ios/RNMBX/RNMBXModelLayerComponentView.h +15 -0
- package/ios/RNMBX/RNMBXModelLayerComponentView.mm +70 -0
- package/ios/RNMBX/RNMBXModelLayerViewManager.m +12 -0
- package/ios/RNMBX/RNMBXModelLayerViewManager.swift +13 -0
- package/ios/RNMBX/RNMBXModels.swift +63 -0
- package/ios/RNMBX/RNMBXModelsComponentView.h +17 -0
- package/ios/RNMBX/RNMBXModelsComponentView.mm +67 -0
- package/ios/RNMBX/RNMBXModelsManager.mm +9 -0
- package/ios/RNMBX/RNMBXModelsManager.swift +13 -0
- package/ios/RNMBX/RNMBXModule.m +1 -1
- package/ios/RNMBX/RNMBXModule.swift +24 -0
- package/ios/RNMBX/RNMBXNativeUserLocation.swift +248 -19
- package/ios/RNMBX/RNMBXNativeUserLocationComponentView.mm +15 -6
- package/ios/RNMBX/RNMBXNativeUserLocationViewManager.m +8 -0
- package/ios/RNMBX/RNMBXOfflineModule.m +1 -1
- package/ios/RNMBX/RNMBXOfflineModuleLegacy.m +33 -0
- package/ios/RNMBX/RNMBXOfflineModuleLegacy.swift +431 -0
- package/ios/RNMBX/RNMBXPointAnnotation.swift +34 -1
- package/ios/RNMBX/RNMBXPointAnnotationModule.mm +2 -2
- package/ios/RNMBX/RNMBXShapeSource.swift +54 -15
- package/ios/RNMBX/RNMBXStyle.swift +786 -1
- package/ios/RNMBX/RNMBXStyleValue.swift +56 -4
- package/ios/RNMBX/RNMBXUtils.swift +2 -7
- package/ios/RNMBX/RNMBXViewport.swift +349 -0
- package/ios/RNMBX/RNMBXViewportComponentView.h +17 -0
- package/ios/RNMBX/RNMBXViewportComponentView.mm +119 -0
- package/ios/RNMBX/RNMBXViewportManager.m +12 -0
- package/ios/RNMBX/RNMBXViewportManager.swift +38 -0
- package/ios/RNMBX/RNMBXViewportModule.h +18 -0
- package/ios/RNMBX/RNMBXViewportModule.mm +87 -0
- package/ios/RNMBX/ShapeAnimators/RNMBXMovePointShapeAnimatorModule.m +61 -0
- package/ios/RNMBX/ShapeAnimators/RNMBXMovePointShapeAnimatorModule.swift +47 -0
- package/ios/RNMBX/ShapeAnimators/ShapeAnimatorCommon.swift +76 -0
- package/ios/RNMBX/ShapeAnimators/ShapeAnimatorManager.swift +45 -0
- package/ios/RNMBX/Uitls/PropertyChanges.swift +57 -0
- package/ios/RNMBX/rnmapbox_maps-Swift.pre.h +3 -0
- package/ios/install.md +5 -26
- package/lib/commonjs/Mapbox.js +63 -0
- package/lib/commonjs/Mapbox.js.map +1 -1
- package/lib/commonjs/RNMBXModule.js +3 -1
- package/lib/commonjs/RNMBXModule.js.map +1 -1
- package/lib/commonjs/classes/AnimatedCoordinatesArray.js.map +1 -1
- package/lib/commonjs/classes/AnimatedExtractCoordinateFromArray.js.map +1 -1
- package/lib/commonjs/classes/AnimatedPoint.js.map +1 -1
- package/lib/commonjs/classes/AnimatedRouteCoordinatesArray.js.map +1 -1
- package/lib/commonjs/classes/AnimatedShape.js.map +1 -1
- package/lib/commonjs/classes/index.d.js.map +1 -1
- package/lib/commonjs/classes/index.js.map +1 -1
- package/lib/commonjs/components/AbstractLayer.js +1 -1
- package/lib/commonjs/components/AbstractLayer.js.map +1 -1
- package/lib/commonjs/components/AbstractSource.js.map +1 -1
- package/lib/commonjs/components/Annotation.js.map +1 -1
- package/lib/commonjs/components/Atmosphere.js.map +1 -1
- package/lib/commonjs/components/BackgroundLayer.js.map +1 -1
- package/lib/commonjs/components/Callout.js.map +1 -1
- package/lib/commonjs/components/Camera.js.map +1 -1
- package/lib/commonjs/components/CircleLayer.js +7 -2
- package/lib/commonjs/components/CircleLayer.js.map +1 -1
- package/lib/commonjs/components/{NativeUserLocation.js → CustomLocationProvider.js} +5 -5
- package/lib/commonjs/components/CustomLocationProvider.js.map +1 -0
- package/lib/commonjs/components/FillExtrusionLayer.js.map +1 -1
- package/lib/commonjs/components/FillLayer.js +7 -2
- package/lib/commonjs/components/FillLayer.js.map +1 -1
- package/lib/commonjs/components/HeadingIndicator.js.map +1 -1
- package/lib/commonjs/components/HeatmapLayer.js +7 -2
- package/lib/commonjs/components/HeatmapLayer.js.map +1 -1
- package/lib/commonjs/components/Image.js.map +1 -1
- package/lib/commonjs/components/ImageSource.js.map +1 -1
- package/lib/commonjs/components/Images.js.map +1 -1
- package/lib/commonjs/components/Light.js.map +1 -1
- package/lib/commonjs/components/LineLayer.js +7 -2
- package/lib/commonjs/components/LineLayer.js.map +1 -1
- package/lib/commonjs/components/LocationPuck.js +66 -0
- package/lib/commonjs/components/LocationPuck.js.map +1 -0
- package/lib/commonjs/components/MapView.js +0 -8
- package/lib/commonjs/components/MapView.js.map +1 -1
- package/lib/commonjs/components/MarkerView.js +5 -3
- package/lib/commonjs/components/MarkerView.js.map +1 -1
- package/lib/commonjs/components/ModelLayer.js +37 -0
- package/lib/commonjs/components/ModelLayer.js.map +1 -0
- package/lib/commonjs/components/Models.js +43 -0
- package/lib/commonjs/components/Models.js.map +1 -0
- package/lib/commonjs/components/NativeBridgeComponent.js.map +1 -1
- package/lib/commonjs/components/PointAnnotation.js.map +1 -1
- package/lib/commonjs/components/RasterDemSource.js.map +1 -1
- package/lib/commonjs/components/RasterLayer.js +7 -2
- package/lib/commonjs/components/RasterLayer.js.map +1 -1
- package/lib/commonjs/components/RasterSource.js.map +1 -1
- package/lib/commonjs/components/ShapeSource.js.map +1 -1
- package/lib/commonjs/components/SkyLayer.js +2 -2
- package/lib/commonjs/components/SkyLayer.js.map +1 -1
- package/lib/commonjs/components/Style.js.map +1 -1
- package/lib/commonjs/components/StyleImport.js.map +1 -1
- package/lib/commonjs/components/SymbolLayer.js +7 -2
- package/lib/commonjs/components/SymbolLayer.js.map +1 -1
- package/lib/commonjs/components/Terrain.js.map +1 -1
- package/lib/commonjs/components/UserLocation.js +2 -2
- package/lib/commonjs/components/UserLocation.js.map +1 -1
- package/lib/commonjs/components/VectorSource.js.map +1 -1
- package/lib/commonjs/components/Viewport.js +105 -0
- package/lib/commonjs/components/Viewport.js.map +1 -0
- package/lib/commonjs/components/codeparts/LayerPropsCommon.codepart-tsx +62 -0
- package/lib/commonjs/global.d.js.map +1 -1
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/index.web.js.map +1 -1
- package/lib/commonjs/modules/location/locationManager.js.map +1 -1
- package/lib/commonjs/modules/offline/OfflineCreatePackOptions.js.map +1 -1
- package/lib/commonjs/modules/offline/OfflinePack.js.map +1 -1
- package/lib/commonjs/modules/offline/OfflinePackLegacy.js +40 -0
- package/lib/commonjs/modules/offline/OfflinePackLegacy.js.map +1 -0
- package/lib/commonjs/modules/offline/offlineManager.js +4 -4
- package/lib/commonjs/modules/offline/offlineManager.js.map +1 -1
- package/lib/commonjs/modules/offline/offlineManagerLegacy.js +166 -0
- package/lib/commonjs/modules/offline/offlineManagerLegacy.js.map +1 -0
- package/lib/commonjs/modules/snapshot/SnapshotOptions.js.map +1 -1
- package/lib/commonjs/modules/snapshot/snapshotManager.js.map +1 -1
- package/lib/commonjs/requestAndroidLocationPermissions.js.map +1 -1
- package/lib/commonjs/shape_animators/MovePointShapeAnimator.js +21 -0
- package/lib/commonjs/shape_animators/MovePointShapeAnimator.js.map +1 -0
- package/lib/commonjs/shape_animators/ShapeAnimatorManager.js +15 -0
- package/lib/commonjs/shape_animators/ShapeAnimatorManager.js.map +1 -0
- package/lib/commonjs/specs/NativeMapViewModule.js.map +1 -1
- package/lib/commonjs/specs/NativeRNMBXImageModule.js.map +1 -1
- package/lib/commonjs/specs/NativeRNMBXMovePointShapeAnimatorModule.js +10 -0
- package/lib/commonjs/specs/NativeRNMBXMovePointShapeAnimatorModule.js.map +1 -0
- package/lib/commonjs/specs/NativeRNMBXPointAnnotationModule.js.map +1 -1
- package/lib/commonjs/specs/NativeRNMBXShapeSourceModule.js.map +1 -1
- package/lib/commonjs/specs/NativeRNMBXViewportModule.js +10 -0
- package/lib/commonjs/specs/NativeRNMBXViewportModule.js.map +1 -0
- package/lib/commonjs/specs/RNMBXAtmosphereNativeComponent.js.map +1 -1
- package/lib/commonjs/specs/RNMBXBackgroundLayerNativeComponent.js.map +1 -1
- package/lib/commonjs/specs/RNMBXCalloutNativeComponent.js.map +1 -1
- package/lib/commonjs/specs/RNMBXCameraNativeComponent.js.map +1 -1
- package/lib/commonjs/specs/RNMBXCircleLayerNativeComponent.js +2 -0
- package/lib/commonjs/specs/RNMBXCircleLayerNativeComponent.js.map +1 -1
- package/lib/commonjs/specs/RNMBXCustomLocationProviderNativeComponent.js +11 -0
- package/lib/commonjs/specs/RNMBXCustomLocationProviderNativeComponent.js.map +1 -0
- package/lib/commonjs/specs/RNMBXFillExtrusionLayerNativeComponent.js.map +1 -1
- package/lib/commonjs/specs/RNMBXFillLayerNativeComponent.js +2 -0
- package/lib/commonjs/specs/RNMBXFillLayerNativeComponent.js.map +1 -1
- package/lib/commonjs/specs/RNMBXHeatmapLayerNativeComponent.js +2 -0
- package/lib/commonjs/specs/RNMBXHeatmapLayerNativeComponent.js.map +1 -1
- package/lib/commonjs/specs/RNMBXImageNativeComponent.js.map +1 -1
- package/lib/commonjs/specs/RNMBXImageSourceNativeComponent.js.map +1 -1
- package/lib/commonjs/specs/RNMBXImagesNativeComponent.js.map +1 -1
- package/lib/commonjs/specs/RNMBXLightNativeComponent.js.map +1 -1
- package/lib/commonjs/specs/RNMBXLineLayerNativeComponent.js +2 -0
- package/lib/commonjs/specs/RNMBXLineLayerNativeComponent.js.map +1 -1
- package/lib/commonjs/specs/RNMBXMapViewNativeComponent.js.map +1 -1
- package/lib/commonjs/specs/RNMBXMarkerViewContentNativeComponent.js +11 -0
- package/lib/commonjs/specs/RNMBXMarkerViewContentNativeComponent.js.map +1 -0
- package/lib/commonjs/specs/RNMBXMarkerViewNativeComponent.js.map +1 -1
- package/lib/commonjs/specs/RNMBXModelLayerNativeComponent.js +13 -0
- package/lib/commonjs/specs/RNMBXModelLayerNativeComponent.js.map +1 -0
- package/lib/commonjs/specs/RNMBXModelsNativeComponent.js +10 -0
- package/lib/commonjs/specs/RNMBXModelsNativeComponent.js.map +1 -0
- package/lib/commonjs/specs/RNMBXNativeUserLocationNativeComponent.js +1 -0
- package/lib/commonjs/specs/RNMBXNativeUserLocationNativeComponent.js.map +1 -1
- package/lib/commonjs/specs/RNMBXPointAnnotationNativeComponent.js.map +1 -1
- package/lib/commonjs/specs/RNMBXRasterDemSourceNativeComponent.js.map +1 -1
- package/lib/commonjs/specs/RNMBXRasterLayerNativeComponent.js +2 -0
- package/lib/commonjs/specs/RNMBXRasterLayerNativeComponent.js.map +1 -1
- package/lib/commonjs/specs/RNMBXRasterSourceNativeComponent.js.map +1 -1
- package/lib/commonjs/specs/RNMBXShapeSourceNativeComponent.js.map +1 -1
- package/lib/commonjs/specs/RNMBXSkyLayerNativeComponent.js.map +1 -1
- package/lib/commonjs/specs/RNMBXStyleImportNativeComponent.js.map +1 -1
- package/lib/commonjs/specs/RNMBXSymbolLayerNativeComponent.js +2 -0
- package/lib/commonjs/specs/RNMBXSymbolLayerNativeComponent.js.map +1 -1
- package/lib/commonjs/specs/RNMBXTerrainNativeComponent.js.map +1 -1
- package/lib/commonjs/specs/RNMBXVectorSourceNativeComponent.js.map +1 -1
- package/lib/commonjs/specs/RNMBXViewportNativeComponent.js +36 -0
- package/lib/commonjs/specs/RNMBXViewportNativeComponent.js.map +1 -0
- package/lib/commonjs/specs/codegenUtils.js.map +1 -1
- package/lib/commonjs/specs/codeparts/CommonLayerNativeComponentsProps.codepart-ts +18 -0
- package/lib/commonjs/types/BaseProps.js.map +1 -1
- package/lib/commonjs/types/OnPressEvent.js.map +1 -1
- package/lib/commonjs/types/Position.js.map +1 -1
- package/lib/commonjs/types/index.js.map +1 -1
- package/lib/commonjs/utils/BridgeValue.js.map +1 -1
- package/lib/commonjs/utils/Logger.js.map +1 -1
- package/lib/commonjs/utils/MapboxStyles.d.js +5 -0
- package/lib/commonjs/utils/MapboxStyles.d.js.map +1 -1
- package/lib/commonjs/utils/StyleValue.js.map +1 -1
- package/lib/commonjs/utils/animated/Animated.js.map +1 -1
- package/lib/commonjs/utils/checkRequiredProps.js.map +1 -1
- package/lib/commonjs/utils/deprecation.js.map +1 -1
- package/lib/commonjs/utils/filterUtils.js.map +1 -1
- package/lib/commonjs/utils/geoUtils.js.map +1 -1
- package/lib/commonjs/utils/getAnnotationsLayerID.js.map +1 -1
- package/lib/commonjs/utils/index.js.map +1 -1
- package/lib/commonjs/utils/nativeRef.js.map +1 -1
- package/lib/commonjs/utils/styleMap.js +67 -2
- package/lib/commonjs/utils/styleMap.js.map +1 -1
- package/lib/commonjs/web/MapContext.js.map +1 -1
- package/lib/commonjs/web/MapboxModule.js.map +1 -1
- package/lib/commonjs/web/UnimplementedComponent.js.map +1 -1
- package/lib/commonjs/web/components/Camera.js.map +1 -1
- package/lib/commonjs/web/components/MapView.js.map +1 -1
- package/lib/commonjs/web/index.js.map +1 -1
- package/lib/commonjs/web/utils/Logger.js.map +1 -1
- package/lib/module/Mapbox.js +18 -0
- package/lib/module/Mapbox.js.map +1 -1
- package/lib/module/RNMBXModule.js +1 -0
- package/lib/module/RNMBXModule.js.map +1 -1
- package/lib/module/classes/AnimatedCoordinatesArray.js.map +1 -1
- package/lib/module/classes/AnimatedExtractCoordinateFromArray.js.map +1 -1
- package/lib/module/classes/AnimatedPoint.js.map +1 -1
- package/lib/module/classes/AnimatedRouteCoordinatesArray.js.map +1 -1
- package/lib/module/classes/AnimatedShape.js.map +1 -1
- package/lib/module/classes/index.d.js.map +1 -1
- package/lib/module/classes/index.js.map +1 -1
- package/lib/module/components/AbstractLayer.js +1 -1
- package/lib/module/components/AbstractLayer.js.map +1 -1
- package/lib/module/components/AbstractSource.js.map +1 -1
- package/lib/module/components/Annotation.js.map +1 -1
- package/lib/module/components/Atmosphere.js.map +1 -1
- package/lib/module/components/BackgroundLayer.js.map +1 -1
- package/lib/module/components/Callout.js.map +1 -1
- package/lib/module/components/Camera.js.map +1 -1
- package/lib/module/components/CircleLayer.js +7 -2
- package/lib/module/components/CircleLayer.js.map +1 -1
- package/lib/module/components/CustomLocationProvider.js +7 -0
- package/lib/module/components/CustomLocationProvider.js.map +1 -0
- package/lib/module/components/FillExtrusionLayer.js.map +1 -1
- package/lib/module/components/FillLayer.js +7 -2
- package/lib/module/components/FillLayer.js.map +1 -1
- package/lib/module/components/HeadingIndicator.js.map +1 -1
- package/lib/module/components/HeatmapLayer.js +7 -2
- package/lib/module/components/HeatmapLayer.js.map +1 -1
- package/lib/module/components/Image.js.map +1 -1
- package/lib/module/components/ImageSource.js.map +1 -1
- package/lib/module/components/Images.js.map +1 -1
- package/lib/module/components/Light.js.map +1 -1
- package/lib/module/components/LineLayer.js +7 -2
- package/lib/module/components/LineLayer.js.map +1 -1
- package/lib/module/components/LocationPuck.js +57 -0
- package/lib/module/components/LocationPuck.js.map +1 -0
- package/lib/module/components/MapView.js +0 -8
- package/lib/module/components/MapView.js.map +1 -1
- package/lib/module/components/MarkerView.js +5 -3
- package/lib/module/components/MarkerView.js.map +1 -1
- package/lib/module/components/ModelLayer.js +30 -0
- package/lib/module/components/ModelLayer.js.map +1 -0
- package/lib/module/components/Models.js +36 -0
- package/lib/module/components/Models.js.map +1 -0
- package/lib/module/components/NativeBridgeComponent.js.map +1 -1
- package/lib/module/components/PointAnnotation.js.map +1 -1
- package/lib/module/components/RasterDemSource.js.map +1 -1
- package/lib/module/components/RasterLayer.js +7 -2
- package/lib/module/components/RasterLayer.js.map +1 -1
- package/lib/module/components/RasterSource.js.map +1 -1
- package/lib/module/components/ShapeSource.js.map +1 -1
- package/lib/module/components/SkyLayer.js +2 -2
- package/lib/module/components/SkyLayer.js.map +1 -1
- package/lib/module/components/Style.js.map +1 -1
- package/lib/module/components/StyleImport.js.map +1 -1
- package/lib/module/components/SymbolLayer.js +7 -2
- package/lib/module/components/SymbolLayer.js.map +1 -1
- package/lib/module/components/Terrain.js.map +1 -1
- package/lib/module/components/UserLocation.js +1 -1
- package/lib/module/components/UserLocation.js.map +1 -1
- package/lib/module/components/VectorSource.js.map +1 -1
- package/lib/module/components/Viewport.js +96 -0
- package/lib/module/components/Viewport.js.map +1 -0
- package/lib/module/components/codeparts/LayerPropsCommon.codepart-tsx +62 -0
- package/lib/module/global.d.js.map +1 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/index.web.js.map +1 -1
- package/lib/module/modules/location/locationManager.js.map +1 -1
- package/lib/module/modules/offline/OfflineCreatePackOptions.js.map +1 -1
- package/lib/module/modules/offline/OfflinePack.js.map +1 -1
- package/lib/module/modules/offline/OfflinePackLegacy.js +34 -0
- package/lib/module/modules/offline/OfflinePackLegacy.js.map +1 -0
- package/lib/module/modules/offline/offlineManager.js +4 -4
- package/lib/module/modules/offline/offlineManager.js.map +1 -1
- package/lib/module/modules/offline/offlineManagerLegacy.js +154 -0
- package/lib/module/modules/offline/offlineManagerLegacy.js.map +1 -0
- package/lib/module/modules/snapshot/SnapshotOptions.js.map +1 -1
- package/lib/module/modules/snapshot/snapshotManager.js.map +1 -1
- package/lib/module/requestAndroidLocationPermissions.js.map +1 -1
- package/lib/module/shape_animators/MovePointShapeAnimator.js +13 -0
- package/lib/module/shape_animators/MovePointShapeAnimator.js.map +1 -0
- package/lib/module/shape_animators/ShapeAnimatorManager.js +8 -0
- package/lib/module/shape_animators/ShapeAnimatorManager.js.map +1 -0
- package/lib/module/specs/NativeMapViewModule.js.map +1 -1
- package/lib/module/specs/NativeRNMBXImageModule.js.map +1 -1
- package/lib/module/specs/NativeRNMBXMovePointShapeAnimatorModule.js +6 -0
- package/lib/module/specs/NativeRNMBXMovePointShapeAnimatorModule.js.map +1 -0
- package/lib/module/specs/NativeRNMBXPointAnnotationModule.js.map +1 -1
- package/lib/module/specs/NativeRNMBXShapeSourceModule.js.map +1 -1
- package/lib/module/specs/NativeRNMBXViewportModule.js +6 -0
- package/lib/module/specs/NativeRNMBXViewportModule.js.map +1 -0
- package/lib/module/specs/RNMBXAtmosphereNativeComponent.js.map +1 -1
- package/lib/module/specs/RNMBXBackgroundLayerNativeComponent.js.map +1 -1
- package/lib/module/specs/RNMBXCalloutNativeComponent.js.map +1 -1
- package/lib/module/specs/RNMBXCameraNativeComponent.js.map +1 -1
- package/lib/module/specs/RNMBXCircleLayerNativeComponent.js +3 -0
- package/lib/module/specs/RNMBXCircleLayerNativeComponent.js.map +1 -1
- package/lib/module/specs/RNMBXCustomLocationProviderNativeComponent.js +6 -0
- package/lib/module/specs/RNMBXCustomLocationProviderNativeComponent.js.map +1 -0
- package/lib/module/specs/RNMBXFillExtrusionLayerNativeComponent.js.map +1 -1
- package/lib/module/specs/RNMBXFillLayerNativeComponent.js +3 -0
- package/lib/module/specs/RNMBXFillLayerNativeComponent.js.map +1 -1
- package/lib/module/specs/RNMBXHeatmapLayerNativeComponent.js +3 -0
- package/lib/module/specs/RNMBXHeatmapLayerNativeComponent.js.map +1 -1
- package/lib/module/specs/RNMBXImageNativeComponent.js.map +1 -1
- package/lib/module/specs/RNMBXImageSourceNativeComponent.js.map +1 -1
- package/lib/module/specs/RNMBXImagesNativeComponent.js.map +1 -1
- package/lib/module/specs/RNMBXLightNativeComponent.js.map +1 -1
- package/lib/module/specs/RNMBXLineLayerNativeComponent.js +3 -0
- package/lib/module/specs/RNMBXLineLayerNativeComponent.js.map +1 -1
- package/lib/module/specs/RNMBXMapViewNativeComponent.js.map +1 -1
- package/lib/module/specs/RNMBXMarkerViewContentNativeComponent.js +6 -0
- package/lib/module/specs/RNMBXMarkerViewContentNativeComponent.js.map +1 -0
- package/lib/module/specs/RNMBXMarkerViewNativeComponent.js.map +1 -1
- package/lib/module/specs/RNMBXModelLayerNativeComponent.js +9 -0
- package/lib/module/specs/RNMBXModelLayerNativeComponent.js.map +1 -0
- package/lib/module/specs/RNMBXModelsNativeComponent.js +3 -0
- package/lib/module/specs/RNMBXModelsNativeComponent.js.map +1 -0
- package/lib/module/specs/RNMBXNativeUserLocationNativeComponent.js +3 -0
- package/lib/module/specs/RNMBXNativeUserLocationNativeComponent.js.map +1 -1
- package/lib/module/specs/RNMBXPointAnnotationNativeComponent.js.map +1 -1
- package/lib/module/specs/RNMBXRasterDemSourceNativeComponent.js.map +1 -1
- package/lib/module/specs/RNMBXRasterLayerNativeComponent.js +3 -0
- package/lib/module/specs/RNMBXRasterLayerNativeComponent.js.map +1 -1
- package/lib/module/specs/RNMBXRasterSourceNativeComponent.js.map +1 -1
- package/lib/module/specs/RNMBXShapeSourceNativeComponent.js.map +1 -1
- package/lib/module/specs/RNMBXSkyLayerNativeComponent.js.map +1 -1
- package/lib/module/specs/RNMBXStyleImportNativeComponent.js.map +1 -1
- package/lib/module/specs/RNMBXSymbolLayerNativeComponent.js +3 -0
- package/lib/module/specs/RNMBXSymbolLayerNativeComponent.js.map +1 -1
- package/lib/module/specs/RNMBXTerrainNativeComponent.js.map +1 -1
- package/lib/module/specs/RNMBXVectorSourceNativeComponent.js.map +1 -1
- package/lib/module/specs/RNMBXViewportNativeComponent.js +33 -0
- package/lib/module/specs/RNMBXViewportNativeComponent.js.map +1 -0
- package/lib/module/specs/codegenUtils.js.map +1 -1
- package/lib/module/specs/codeparts/CommonLayerNativeComponentsProps.codepart-ts +18 -0
- package/lib/module/types/BaseProps.js.map +1 -1
- package/lib/module/types/OnPressEvent.js.map +1 -1
- package/lib/module/types/Position.js.map +1 -1
- package/lib/module/types/index.js.map +1 -1
- package/lib/module/utils/BridgeValue.js.map +1 -1
- package/lib/module/utils/Logger.js.map +1 -1
- package/lib/module/utils/MapboxStyles.d.js +5 -0
- package/lib/module/utils/MapboxStyles.d.js.map +1 -1
- package/lib/module/utils/StyleValue.js.map +1 -1
- package/lib/module/utils/animated/Animated.js.map +1 -1
- package/lib/module/utils/checkRequiredProps.js.map +1 -1
- package/lib/module/utils/deprecation.js.map +1 -1
- package/lib/module/utils/filterUtils.js.map +1 -1
- package/lib/module/utils/geoUtils.js.map +1 -1
- package/lib/module/utils/getAnnotationsLayerID.js.map +1 -1
- package/lib/module/utils/index.js.map +1 -1
- package/lib/module/utils/nativeRef.js.map +1 -1
- package/lib/module/utils/styleMap.js +67 -2
- package/lib/module/utils/styleMap.js.map +1 -1
- package/lib/module/web/MapContext.js.map +1 -1
- package/lib/module/web/MapboxModule.js.map +1 -1
- package/lib/module/web/UnimplementedComponent.js.map +1 -1
- package/lib/module/web/components/Camera.js.map +1 -1
- package/lib/module/web/components/MapView.js.map +1 -1
- package/lib/module/web/index.js.map +1 -1
- package/lib/module/web/utils/Logger.js.map +1 -1
- package/lib/typescript/src/Mapbox.d.ts +16 -2
- package/lib/typescript/src/Mapbox.d.ts.map +1 -1
- package/lib/typescript/src/RNMBXModule.d.ts +1 -1
- package/lib/typescript/src/RNMBXModule.d.ts.map +1 -1
- package/lib/typescript/src/components/AbstractLayer.d.ts +9 -4
- package/lib/typescript/src/components/AbstractLayer.d.ts.map +1 -1
- package/lib/typescript/src/components/Camera.d.ts +5 -3
- package/lib/typescript/src/components/Camera.d.ts.map +1 -1
- package/lib/typescript/src/components/CircleLayer.d.ts +11 -3
- package/lib/typescript/src/components/CircleLayer.d.ts.map +1 -1
- package/lib/typescript/src/components/CustomLocationProvider.d.ts +15 -0
- package/lib/typescript/src/components/CustomLocationProvider.d.ts.map +1 -0
- package/lib/typescript/src/components/FillLayer.d.ts +10 -1
- package/lib/typescript/src/components/FillLayer.d.ts.map +1 -1
- package/lib/typescript/src/components/HeatmapLayer.d.ts +12 -4
- package/lib/typescript/src/components/HeatmapLayer.d.ts.map +1 -1
- package/lib/typescript/src/components/Images.d.ts +1 -1
- package/lib/typescript/src/components/LineLayer.d.ts +10 -1
- package/lib/typescript/src/components/LineLayer.d.ts.map +1 -1
- package/lib/typescript/src/components/LocationPuck.d.ts +85 -0
- package/lib/typescript/src/components/LocationPuck.d.ts.map +1 -0
- package/lib/typescript/src/components/MapView.d.ts +6 -6
- package/lib/typescript/src/components/MapView.d.ts.map +1 -1
- package/lib/typescript/src/components/MarkerView.d.ts +5 -1
- package/lib/typescript/src/components/MarkerView.d.ts.map +1 -1
- package/lib/typescript/src/components/ModelLayer.d.ts +77 -0
- package/lib/typescript/src/components/ModelLayer.d.ts.map +1 -0
- package/lib/typescript/src/components/Models.d.ts +15 -0
- package/lib/typescript/src/components/Models.d.ts.map +1 -0
- package/lib/typescript/src/components/RasterLayer.d.ts +11 -2
- package/lib/typescript/src/components/RasterLayer.d.ts.map +1 -1
- package/lib/typescript/src/components/SymbolLayer.d.ts +17 -5
- package/lib/typescript/src/components/SymbolLayer.d.ts.map +1 -1
- package/lib/typescript/src/components/UserLocation.d.ts +1 -0
- package/lib/typescript/src/components/UserLocation.d.ts.map +1 -1
- package/lib/typescript/src/components/Viewport.d.ts +136 -0
- package/lib/typescript/src/components/Viewport.d.ts.map +1 -0
- package/lib/typescript/src/modules/offline/OfflinePackLegacy.d.ts +24 -0
- package/lib/typescript/src/modules/offline/OfflinePackLegacy.d.ts.map +1 -0
- package/lib/typescript/src/modules/offline/offlineManager.d.ts +1 -1
- package/lib/typescript/src/modules/offline/offlineManager.d.ts.map +1 -1
- package/lib/typescript/src/modules/offline/offlineManagerLegacy.d.ts +93 -0
- package/lib/typescript/src/modules/offline/offlineManagerLegacy.d.ts.map +1 -0
- package/lib/typescript/src/shape_animators/MovePointShapeAnimator.d.ts +7 -0
- package/lib/typescript/src/shape_animators/MovePointShapeAnimator.d.ts.map +1 -0
- package/lib/typescript/src/shape_animators/ShapeAnimatorManager.d.ts +5 -0
- package/lib/typescript/src/shape_animators/ShapeAnimatorManager.d.ts.map +1 -0
- package/lib/typescript/src/specs/NativeMapViewModule.d.ts +0 -1
- package/lib/typescript/src/specs/NativeMapViewModule.d.ts.map +1 -1
- package/lib/typescript/src/specs/NativeRNMBXImageModule.d.ts +0 -1
- package/lib/typescript/src/specs/NativeRNMBXImageModule.d.ts.map +1 -1
- package/lib/typescript/src/specs/NativeRNMBXMovePointShapeAnimatorModule.d.ts +10 -0
- package/lib/typescript/src/specs/NativeRNMBXMovePointShapeAnimatorModule.d.ts.map +1 -0
- package/lib/typescript/src/specs/NativeRNMBXPointAnnotationModule.d.ts +0 -1
- package/lib/typescript/src/specs/NativeRNMBXPointAnnotationModule.d.ts.map +1 -1
- package/lib/typescript/src/specs/NativeRNMBXShapeSourceModule.d.ts +0 -1
- package/lib/typescript/src/specs/NativeRNMBXShapeSourceModule.d.ts.map +1 -1
- package/lib/typescript/src/specs/NativeRNMBXViewportModule.d.ts +35 -0
- package/lib/typescript/src/specs/NativeRNMBXViewportModule.d.ts.map +1 -0
- package/lib/typescript/src/specs/RNMBXCircleLayerNativeComponent.d.ts +16 -11
- package/lib/typescript/src/specs/RNMBXCircleLayerNativeComponent.d.ts.map +1 -1
- package/lib/typescript/src/specs/RNMBXCustomLocationProviderNativeComponent.d.ts +12 -0
- package/lib/typescript/src/specs/RNMBXCustomLocationProviderNativeComponent.d.ts.map +1 -0
- package/lib/typescript/src/specs/RNMBXFillLayerNativeComponent.d.ts +9 -4
- package/lib/typescript/src/specs/RNMBXFillLayerNativeComponent.d.ts.map +1 -1
- package/lib/typescript/src/specs/RNMBXHeatmapLayerNativeComponent.d.ts +9 -4
- package/lib/typescript/src/specs/RNMBXHeatmapLayerNativeComponent.d.ts.map +1 -1
- package/lib/typescript/src/specs/RNMBXLineLayerNativeComponent.d.ts +9 -4
- package/lib/typescript/src/specs/RNMBXLineLayerNativeComponent.d.ts.map +1 -1
- package/lib/typescript/src/specs/RNMBXMapViewNativeComponent.d.ts +1 -0
- package/lib/typescript/src/specs/RNMBXMapViewNativeComponent.d.ts.map +1 -1
- package/lib/typescript/src/specs/RNMBXMarkerViewContentNativeComponent.d.ts +6 -0
- package/lib/typescript/src/specs/RNMBXMarkerViewContentNativeComponent.d.ts.map +1 -0
- package/lib/typescript/src/specs/RNMBXMarkerViewNativeComponent.d.ts +1 -0
- package/lib/typescript/src/specs/RNMBXMarkerViewNativeComponent.d.ts.map +1 -1
- package/lib/typescript/src/specs/RNMBXModelLayerNativeComponent.d.ts +28 -0
- package/lib/typescript/src/specs/RNMBXModelLayerNativeComponent.d.ts.map +1 -0
- package/lib/typescript/src/specs/RNMBXModelsNativeComponent.d.ts +15 -0
- package/lib/typescript/src/specs/RNMBXModelsNativeComponent.d.ts.map +1 -0
- package/lib/typescript/src/specs/RNMBXNativeUserLocationNativeComponent.d.ts +20 -3
- package/lib/typescript/src/specs/RNMBXNativeUserLocationNativeComponent.d.ts.map +1 -1
- package/lib/typescript/src/specs/RNMBXRasterLayerNativeComponent.d.ts +9 -4
- package/lib/typescript/src/specs/RNMBXRasterLayerNativeComponent.d.ts.map +1 -1
- package/lib/typescript/src/specs/RNMBXSymbolLayerNativeComponent.d.ts +9 -4
- package/lib/typescript/src/specs/RNMBXSymbolLayerNativeComponent.d.ts.map +1 -1
- package/lib/typescript/src/specs/RNMBXViewportNativeComponent.d.ts +59 -0
- package/lib/typescript/src/specs/RNMBXViewportNativeComponent.d.ts.map +1 -0
- package/lib/typescript/src/specs/codegenUtils.d.ts +0 -1
- package/lib/typescript/src/specs/codegenUtils.d.ts.map +1 -1
- package/lib/typescript/src/types/Position.d.ts +3 -0
- package/lib/typescript/src/types/Position.d.ts.map +1 -1
- package/lib/typescript/src/utils/styleMap.d.ts.map +1 -1
- package/package.json +11 -10
- package/plugin/install.md +6 -14
- package/rnmapbox-maps.podspec +26 -4
- package/setup-jest.js +30 -1
- package/src/Mapbox.ts +21 -0
- package/src/RNMBXModule.ts +2 -0
- package/src/components/AbstractLayer.tsx +11 -5
- package/src/components/Camera.tsx +8 -3
- package/src/components/CircleLayer.tsx +17 -5
- package/src/components/CustomLocationProvider.tsx +22 -0
- package/src/components/FillLayer.tsx +16 -3
- package/src/components/HeatmapLayer.tsx +18 -6
- package/src/components/Images.tsx +1 -1
- package/src/components/LineLayer.tsx +16 -3
- package/src/components/LocationPuck.tsx +143 -0
- package/src/components/MapView.tsx +7 -9
- package/src/components/MarkerView.tsx +12 -5
- package/src/components/ModelLayer.tsx +107 -0
- package/src/components/Models.tsx +44 -0
- package/src/components/RasterLayer.tsx +17 -4
- package/src/components/SkyLayer.tsx +2 -2
- package/src/components/SymbolLayer.tsx +26 -7
- package/src/components/UserLocation.tsx +2 -1
- package/src/components/Viewport.tsx +330 -0
- package/src/components/codeparts/LayerPropsCommon.codepart-tsx +62 -0
- package/src/modules/offline/OfflinePackLegacy.ts +55 -0
- package/src/modules/offline/offlineManager.ts +4 -4
- package/src/modules/offline/offlineManagerLegacy.ts +181 -0
- package/src/shape_animators/MovePointShapeAnimator.ts +18 -0
- package/src/shape_animators/ShapeAnimatorManager.tsx +8 -0
- package/src/specs/NativeRNMBXMovePointShapeAnimatorModule.ts +16 -0
- package/src/specs/NativeRNMBXViewportModule.ts +41 -0
- package/src/specs/RNMBXCircleLayerNativeComponent.ts +21 -12
- package/src/specs/RNMBXCustomLocationProviderNativeComponent.ts +19 -0
- package/src/specs/RNMBXFillLayerNativeComponent.ts +13 -4
- package/src/specs/RNMBXHeatmapLayerNativeComponent.ts +13 -4
- package/src/specs/RNMBXLineLayerNativeComponent.ts +13 -4
- package/src/specs/RNMBXMapViewNativeComponent.ts +2 -0
- package/src/specs/RNMBXMarkerViewContentNativeComponent.ts +9 -0
- package/src/specs/RNMBXMarkerViewNativeComponent.ts +1 -0
- package/src/specs/RNMBXModelLayerNativeComponent.ts +38 -0
- package/src/specs/RNMBXModelsNativeComponent.ts +18 -0
- package/src/specs/RNMBXNativeUserLocationNativeComponent.ts +29 -3
- package/src/specs/RNMBXRasterLayerNativeComponent.ts +13 -4
- package/src/specs/RNMBXSymbolLayerNativeComponent.ts +13 -4
- package/src/specs/RNMBXViewportNativeComponent.ts +117 -0
- package/src/specs/codeparts/CommonLayerNativeComponentsProps.codepart-ts +18 -0
- package/src/types/Position.ts +3 -0
- package/src/utils/MapboxStyles.d.ts +526 -63
- package/src/utils/styleMap.ts +69 -2
- package/android/src/main/java/com/rnmapbox/rnmbx/components/AbstractEvent.java +0 -35
- package/android/src/main/java/com/rnmapbox/rnmbx/events/constants/EventKeys.java +0 -39
- package/lib/commonjs/components/NativeUserLocation.js.map +0 -1
- package/lib/module/components/NativeUserLocation.js +0 -7
- package/lib/module/components/NativeUserLocation.js.map +0 -1
- package/lib/typescript/src/components/NativeUserLocation.d.ts +0 -22
- package/lib/typescript/src/components/NativeUserLocation.d.ts.map +0 -1
- package/src/components/NativeUserLocation.tsx +0 -29
|
@@ -348,9 +348,7 @@ class RNMBXStyleValue {
|
|
|
348
348
|
return .constant(valueObj.map { $0.doubleValue })
|
|
349
349
|
} else {
|
|
350
350
|
do {
|
|
351
|
-
|
|
352
|
-
let decodedExpression = try JSONDecoder().decode(Expression.self, from: data)
|
|
353
|
-
return .expression(decodedExpression)
|
|
351
|
+
return .expression(try _toExpressions(valueObj))
|
|
354
352
|
} catch {
|
|
355
353
|
Logger.log(level: .error, message: "Invalid value for array number: \(value) error: \(error) setting dummy value")
|
|
356
354
|
return .constant([1.0,1.0])
|
|
@@ -358,6 +356,39 @@ class RNMBXStyleValue {
|
|
|
358
356
|
}
|
|
359
357
|
}
|
|
360
358
|
|
|
359
|
+
private func _toExpressions(_ valueObj: Any) throws -> Expression {
|
|
360
|
+
if let valueObj = valueObj as? NSNumber {
|
|
361
|
+
throw RNMBXError.parseError("valueObj is a single number and cannot be converted to expressions")
|
|
362
|
+
}
|
|
363
|
+
|
|
364
|
+
let data = try JSONSerialization.data(withJSONObject: valueObj, options: .prettyPrinted)
|
|
365
|
+
let decodedExpression = try JSONDecoder().decode(Expression.self, from: data)
|
|
366
|
+
return decodedExpression
|
|
367
|
+
}
|
|
368
|
+
|
|
369
|
+
func mglStyleValueString() -> Value<String> {
|
|
370
|
+
if let value = value as? Dictionary<String,Any> {
|
|
371
|
+
let value = RNMBXStyleValue.convert(value["stylevalue"] as! [String:Any])
|
|
372
|
+
if let value = value as? String {
|
|
373
|
+
return Value.constant(value)
|
|
374
|
+
} else if let value = value as? [Any] {
|
|
375
|
+
if let parsedExpression = (logged("mglStyleValueEnum: failed to parse expression") {
|
|
376
|
+
try parseExpression(value)
|
|
377
|
+
}) {
|
|
378
|
+
return .expression(parsedExpression)
|
|
379
|
+
} else {
|
|
380
|
+
return Value.constant(value[0] as! String)
|
|
381
|
+
}
|
|
382
|
+
} else {
|
|
383
|
+
Logger.log(level: .error, message:"Invalid value for string (nor string, not array): \(value) returning something")
|
|
384
|
+
return Value.constant("")
|
|
385
|
+
}
|
|
386
|
+
} else {
|
|
387
|
+
Logger.log(level: .error, message:"Invalid value for enum: \(value) returning something")
|
|
388
|
+
return Value.constant("")
|
|
389
|
+
}
|
|
390
|
+
}
|
|
391
|
+
|
|
361
392
|
func mglStyleValueArrayString() -> Value<[String]> {
|
|
362
393
|
guard let value = value as? Dictionary<String,Any> else {
|
|
363
394
|
Logger.log(level: .error, message: "Invalid value for array of strings: \(value)")
|
|
@@ -525,7 +556,28 @@ class RNMBXStyleValue {
|
|
|
525
556
|
}
|
|
526
557
|
|
|
527
558
|
func mglStyleValueArrayTextVariableAnchor() -> Value<[TextAnchor]> {
|
|
528
|
-
|
|
559
|
+
guard let value = value as? Dictionary<String,Any> else {
|
|
560
|
+
Logger.log(level: .error, message: "Invalid value for array of TextAnchor: \(value)")
|
|
561
|
+
return .constant([.left])
|
|
562
|
+
}
|
|
563
|
+
let valueObj = RNMBXStyleValue.convert(value["stylevalue"] as! [String:Any])
|
|
564
|
+
|
|
565
|
+
if let valueObj = valueObj as? [String] {
|
|
566
|
+
let convertedVal = valueObj.compactMap(TextAnchor.init(rawValue:))
|
|
567
|
+
return .constant(convertedVal)
|
|
568
|
+
} else {
|
|
569
|
+
do {
|
|
570
|
+
if valueObj is String {
|
|
571
|
+
throw StyleConversionError.unexpectedType(message: "should be array constant or expression")
|
|
572
|
+
}
|
|
573
|
+
let data = try JSONSerialization.data(withJSONObject: valueObj, options: .prettyPrinted)
|
|
574
|
+
let decodedExpression = try JSONDecoder().decode(Expression.self, from: data)
|
|
575
|
+
return .expression(decodedExpression)
|
|
576
|
+
} catch {
|
|
577
|
+
Logger.log(level: .error, message: "Invalid value for array => value: \(value) error: \(error) setting dummy value")
|
|
578
|
+
return .constant([.left])
|
|
579
|
+
}
|
|
580
|
+
}
|
|
529
581
|
}
|
|
530
582
|
|
|
531
583
|
#if RNMBX_11
|
|
@@ -8,9 +8,8 @@ class RNMBXUtils {
|
|
|
8
8
|
RNMBXImageQueue.sharedInstance.addImage(url, scale: scale, bridge: bridge, handler: callback)
|
|
9
9
|
}
|
|
10
10
|
|
|
11
|
-
static func fetchImages(_ bridge: RCTBridge, style: Style, objects: [String:Any], forceUpdate: Bool, loaded: @escaping (
|
|
11
|
+
static func fetchImages(_ bridge: RCTBridge, style: Style, objects: [String:Any], forceUpdate: Bool, loaded: @escaping (String, UIImage) -> Void) {
|
|
12
12
|
guard !objects.isEmpty else {
|
|
13
|
-
callback()
|
|
14
13
|
return
|
|
15
14
|
}
|
|
16
15
|
|
|
@@ -19,9 +18,6 @@ class RNMBXUtils {
|
|
|
19
18
|
|
|
20
19
|
let imageLoadedBlock = { () in
|
|
21
20
|
imagesToLoad = imagesToLoad - 1;
|
|
22
|
-
if imagesToLoad == 0 {
|
|
23
|
-
callback()
|
|
24
|
-
}
|
|
25
21
|
}
|
|
26
22
|
|
|
27
23
|
for imageName in imageNames {
|
|
@@ -55,8 +51,7 @@ class RNMBXUtils {
|
|
|
55
51
|
if let image = image {
|
|
56
52
|
logged("RNMBXUtils.fetchImage-\(imageName)") {
|
|
57
53
|
try style.addImage(image, id: imageName, sdf:sdf, stretchX: stretchX, stretchY: stretchY, content: content)
|
|
58
|
-
loaded(imageName)
|
|
59
|
-
imageLoadedBlock()
|
|
54
|
+
loaded(imageName, image)
|
|
60
55
|
}
|
|
61
56
|
}
|
|
62
57
|
}
|
|
@@ -0,0 +1,349 @@
|
|
|
1
|
+
@_spi(Experimental) import MapboxMaps
|
|
2
|
+
|
|
3
|
+
#if RNMBX_11
|
|
4
|
+
#else
|
|
5
|
+
typealias ViewportManager = Viewport
|
|
6
|
+
#endif
|
|
7
|
+
|
|
8
|
+
@objc(RNMBXViewport)
|
|
9
|
+
open class RNMBXViewport : UIView, RNMBXMapComponent, ViewportStatusObserver {
|
|
10
|
+
var mapView: MapView? = nil
|
|
11
|
+
|
|
12
|
+
// MARK: React properties
|
|
13
|
+
@objc
|
|
14
|
+
public var onStatusChanged: RCTBubblingEventBlock? = nil
|
|
15
|
+
|
|
16
|
+
@objc
|
|
17
|
+
public var hasStatusChanged: Bool = false {
|
|
18
|
+
didSet {
|
|
19
|
+
if let mapView = mapView {
|
|
20
|
+
applyHasStatusChanged(mapView: mapView)
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
func applyHasStatusChanged(mapView: MapView) {
|
|
26
|
+
if (hasStatusChanged) {
|
|
27
|
+
mapView.viewport.addStatusObserver(self)
|
|
28
|
+
} else {
|
|
29
|
+
mapView.viewport.removeStatusObserver(self)
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
public func viewportStatusDidChange(from fromStatus: ViewportStatus,
|
|
34
|
+
to toStatus: ViewportStatus,
|
|
35
|
+
reason: ViewportStatusChangeReason)
|
|
36
|
+
{
|
|
37
|
+
onStatusChanged?([
|
|
38
|
+
"type": "statuschanged",
|
|
39
|
+
"payload": [
|
|
40
|
+
"from": statusToMap(fromStatus),
|
|
41
|
+
"to": statusToMap(toStatus),
|
|
42
|
+
"reason": reasonToString(reason)
|
|
43
|
+
]])
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
@objc
|
|
47
|
+
public var transitionsToIdleUponUserInteraction: NSNumber? = nil {
|
|
48
|
+
didSet {
|
|
49
|
+
if let mapView = mapView {
|
|
50
|
+
apply(mapView: mapView)
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
func waitForStyleLoad() -> Bool {
|
|
56
|
+
true
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
func addToMap(_ map: RNMBXMapView, style: Style) {
|
|
60
|
+
mapView = map.mapView
|
|
61
|
+
applyHasStatusChanged(mapView: mapView!)
|
|
62
|
+
apply(mapView: map.mapView)
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
func removeFromMap(_ map: RNMBXMapView, reason: RemovalReason) -> Bool {
|
|
66
|
+
if (hasStatusChanged) {
|
|
67
|
+
map.mapView.viewport.removeStatusObserver(self)
|
|
68
|
+
}
|
|
69
|
+
self.mapView = nil
|
|
70
|
+
return true
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
func apply(mapView: MapView) {
|
|
74
|
+
if let value = transitionsToIdleUponUserInteraction {
|
|
75
|
+
var origOptions = mapView.viewport.options
|
|
76
|
+
origOptions.transitionsToIdleUponUserInteraction = value.boolValue
|
|
77
|
+
mapView.viewport.options = origOptions
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
func reasonToString(_ reason: ViewportStatusChangeReason) -> String {
|
|
82
|
+
switch (reason) {
|
|
83
|
+
case .idleRequested:
|
|
84
|
+
return "IdleRequested"
|
|
85
|
+
case .transitionFailed:
|
|
86
|
+
return "TransitionFailed"
|
|
87
|
+
case .transitionStarted:
|
|
88
|
+
return "TransitionStarted"
|
|
89
|
+
case .transitionSucceeded:
|
|
90
|
+
return "TransitionSucceeded"
|
|
91
|
+
case .userInteraction:
|
|
92
|
+
return "UserInteraction"
|
|
93
|
+
default:
|
|
94
|
+
return "Unknown:\(reason)"
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
func stateToMap(_ state: ViewportState) -> [String: Any] {
|
|
99
|
+
if let state = state as? FollowPuckViewportState {
|
|
100
|
+
return ["kind": "followPuck"]
|
|
101
|
+
} else if let state = state as? OverviewViewportState {
|
|
102
|
+
return ["kind": "overview"]
|
|
103
|
+
} else {
|
|
104
|
+
return ["kind": "custom", "impl": "\(type(of: state))"]
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
func transitionToMap(_ transition: ViewportTransition) -> [String:Any] {
|
|
109
|
+
if let transition = transition as? DefaultViewportTransition {
|
|
110
|
+
return ["kind": "default", "maxDurationMs": transition.options.maxDuration * 1000.0] as [String:Any]
|
|
111
|
+
} else if let transition = transition as? ImmediateViewportTransition {
|
|
112
|
+
return ["kind": "immediate"]
|
|
113
|
+
} else {
|
|
114
|
+
return ["kind": "unknown", "impl": "\(type(of: transition))"]
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
func statusToMap(_ status: ViewportStatus) -> [String: Any] {
|
|
119
|
+
switch (status) {
|
|
120
|
+
case .idle:
|
|
121
|
+
return ["kind": "idle"]
|
|
122
|
+
case .state(let state):
|
|
123
|
+
return ["kind": "state",
|
|
124
|
+
"state": stateToMap(state)
|
|
125
|
+
] as [String : Any]
|
|
126
|
+
case .transition(let transition, let toState):
|
|
127
|
+
return ["kind": "transition",
|
|
128
|
+
"transition": transitionToMap(transition),
|
|
129
|
+
"toState": stateToMap(toState)
|
|
130
|
+
] as [String:Any]
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
func getState() -> [String:Any] {
|
|
135
|
+
guard let mapView = mapView else {
|
|
136
|
+
Logger.log(level:.error, message: "mapView is null in RNMBXViewport.getState")
|
|
137
|
+
return [:]
|
|
138
|
+
}
|
|
139
|
+
return statusToMap(mapView.viewport.status)
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
func idle() {
|
|
143
|
+
guard let mapView = mapView else {
|
|
144
|
+
Logger.log(level:.error, message: "mapView is null in RNMBXViewport.idle")
|
|
145
|
+
return
|
|
146
|
+
}
|
|
147
|
+
mapView.viewport.idle()
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
func toState(_ viewport: ViewportManager?,_ state: [String:Any]) -> ViewportState? {
|
|
151
|
+
guard let viewport = viewport else {
|
|
152
|
+
Logger.log(level:.error, message: "no viewport")
|
|
153
|
+
return nil
|
|
154
|
+
}
|
|
155
|
+
guard let kind = state["kind"] as? String else {
|
|
156
|
+
Logger.log(level:.error, message: "no kind found in state")
|
|
157
|
+
return nil
|
|
158
|
+
}
|
|
159
|
+
|
|
160
|
+
switch (kind) {
|
|
161
|
+
case "followPuck":
|
|
162
|
+
return viewport.makeFollowPuckViewportState(options:
|
|
163
|
+
parseFollowViewportOptions(state)
|
|
164
|
+
)
|
|
165
|
+
case "overview":
|
|
166
|
+
if let options = parseOverviewViewportOptions(state) {
|
|
167
|
+
return viewport.makeOverviewViewportState(options: options)
|
|
168
|
+
} else {
|
|
169
|
+
Logger.log(level:.error, message: "Cannot parse overview options")
|
|
170
|
+
return nil
|
|
171
|
+
}
|
|
172
|
+
default:
|
|
173
|
+
Logger.log(level:.error, message: "unexpected state kind: \(kind)")
|
|
174
|
+
return nil
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
func parseFollowViewportOptions(_ state: [String:Any]) -> FollowPuckViewportStateOptions {
|
|
179
|
+
var result = FollowPuckViewportStateOptions()
|
|
180
|
+
if let options = state["options"] as? [String:Any] {
|
|
181
|
+
if let zoom = options["zoom"] as? String, (zoom == "keep") {
|
|
182
|
+
result.zoom = nil
|
|
183
|
+
} else if let zoom = options["zoom"] as? Double {
|
|
184
|
+
result.zoom = zoom
|
|
185
|
+
} else if options["zoom"] != nil {
|
|
186
|
+
Logger.log(level: .error, message: "parseFollowViewportOptions expected zoom to be number or 'keep', but was \(options["zoom"])")
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
if let pitch = options["pitch"] as? String, (pitch == "keep") {
|
|
190
|
+
result.pitch = nil
|
|
191
|
+
} else if let pitch = options["pitch"] as? Double {
|
|
192
|
+
result.pitch = pitch
|
|
193
|
+
} else if options["pitch"] != nil{
|
|
194
|
+
Logger.log(level: .error, message: "parseFollowViewportOptions expected pitch to be number or 'keep', but was \(options["pitch"])")
|
|
195
|
+
}
|
|
196
|
+
|
|
197
|
+
if let bearing = options["bearing"] as? String {
|
|
198
|
+
switch (bearing) {
|
|
199
|
+
case "keep":
|
|
200
|
+
result.bearing = nil
|
|
201
|
+
case "course":
|
|
202
|
+
result.bearing = .course
|
|
203
|
+
case "heading":
|
|
204
|
+
result.bearing = .heading
|
|
205
|
+
default:
|
|
206
|
+
Logger.log(level: .error, message: "bearing expected to be a number or 'keep' or 'course' or 'heading', but was \(options["bearing"])")
|
|
207
|
+
}
|
|
208
|
+
} else if let bearing = options["bearing"] as? NSNumber {
|
|
209
|
+
result.bearing = .constant(bearing.doubleValue)
|
|
210
|
+
} else if options["bearing"] != nil {
|
|
211
|
+
Logger.log(level: .error, message: "bearing expected to be a number or 'keep' or 'course' or 'heading', but was \(options["bearing"])")
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
if let padding = options["padding"] as? String, (padding == "keep") {
|
|
215
|
+
result.padding = nil
|
|
216
|
+
} else if let padding = options["padding"] as? [String: NSNumber] {
|
|
217
|
+
result.padding = toPadding(padding)
|
|
218
|
+
} else if (options["padding"] != nil) {
|
|
219
|
+
Logger.log(level: .error, message: "padding expected to be an object or 'keep' or but was \(options["bearing"])")
|
|
220
|
+
}
|
|
221
|
+
}
|
|
222
|
+
|
|
223
|
+
return result
|
|
224
|
+
}
|
|
225
|
+
|
|
226
|
+
func parseOverviewViewportOptions(_ state: [String:Any]) -> OverviewViewportStateOptions? {
|
|
227
|
+
guard let options = state["options"] as? [String:Any] else {
|
|
228
|
+
return nil
|
|
229
|
+
}
|
|
230
|
+
guard let geometry = options["geometry"], let geometry = toGeometry(geometry) else {
|
|
231
|
+
return nil
|
|
232
|
+
}
|
|
233
|
+
|
|
234
|
+
var result = OverviewViewportStateOptions(geometry: geometry)
|
|
235
|
+
|
|
236
|
+
if let padding = options["padding"] as? [String: NSNumber] {
|
|
237
|
+
result.padding = toPadding(padding)
|
|
238
|
+
} else if (options["padding"] != nil) {
|
|
239
|
+
Logger.log(level: .error, message: "padding expected to be an object or nil or but was \(options["padding"])")
|
|
240
|
+
}
|
|
241
|
+
|
|
242
|
+
if options["bearing"] == nil {
|
|
243
|
+
result.bearing = (CLLocationDirection?)(nil)
|
|
244
|
+
} else if let bearing = options["bearing"] as? NSNumber {
|
|
245
|
+
result.bearing = bearing.doubleValue
|
|
246
|
+
} else if options["bearing"] != nil {
|
|
247
|
+
Logger.log(level: .error, message: "bearing expected to be a number or nil but was \(options["bearing"])")
|
|
248
|
+
}
|
|
249
|
+
|
|
250
|
+
if options["pitch"] == nil {
|
|
251
|
+
result.pitch = (CGFloat?)(nil)
|
|
252
|
+
} else if let pitch = options["pitch"] as? Double {
|
|
253
|
+
result.pitch = pitch
|
|
254
|
+
} else if options["pitch"] != nil{
|
|
255
|
+
Logger.log(level: .error, message: "parseOverviewViewportOptions expected pitch to be number or nil, but was \(options["pitch"])")
|
|
256
|
+
}
|
|
257
|
+
|
|
258
|
+
if let animationDuration = options["animationDuration"] as? Double {
|
|
259
|
+
result.animationDuration = animationDuration
|
|
260
|
+
} else if let animationDuration = options["animationDuration"] as? NSNumber {
|
|
261
|
+
result.animationDuration = animationDuration.doubleValue
|
|
262
|
+
} else if options["animationDuration"] != nil {
|
|
263
|
+
Logger.log(level: .error, message: "parseOverviewViewportOptions expected animationDuration to be a number or nil but was \(options["animationDuration"])")
|
|
264
|
+
}
|
|
265
|
+
|
|
266
|
+
return result
|
|
267
|
+
}
|
|
268
|
+
|
|
269
|
+
func toGeometry(_ geometry: Any) -> GeometryConvertible? {
|
|
270
|
+
return logged("toGeometry") {
|
|
271
|
+
let jsonData = try JSONSerialization.data(withJSONObject: geometry)
|
|
272
|
+
let geometry = try JSONDecoder().decode(Geometry.self, from: jsonData)
|
|
273
|
+
return geometry
|
|
274
|
+
}
|
|
275
|
+
}
|
|
276
|
+
|
|
277
|
+
func toTransition(_ from: [String: Any], _ viewport: ViewportManager?) -> ViewportTransition? {
|
|
278
|
+
guard let viewport = viewport else {
|
|
279
|
+
Logger.log(level:.error, message: "no viewport")
|
|
280
|
+
return nil
|
|
281
|
+
}
|
|
282
|
+
guard let kind = from["kind"] as? String else {
|
|
283
|
+
Logger.log(level:.error, message: "no kind found in state")
|
|
284
|
+
return nil
|
|
285
|
+
}
|
|
286
|
+
|
|
287
|
+
switch (kind) {
|
|
288
|
+
case "immediate":
|
|
289
|
+
return viewport.makeImmediateViewportTransition()
|
|
290
|
+
case "default":
|
|
291
|
+
var options = DefaultViewportTransitionOptions()
|
|
292
|
+
if let maxDurationMs = from["maxDurationMs"] as? NSNumber {
|
|
293
|
+
options.maxDuration = maxDurationMs.doubleValue/1000.0
|
|
294
|
+
}
|
|
295
|
+
return viewport.makeDefaultViewportTransition(
|
|
296
|
+
options: options
|
|
297
|
+
)
|
|
298
|
+
|
|
299
|
+
default:
|
|
300
|
+
Logger.log(level:.error, message: "unexpected transition kind: \(kind)")
|
|
301
|
+
return nil
|
|
302
|
+
}
|
|
303
|
+
}
|
|
304
|
+
|
|
305
|
+
func transitionTo(
|
|
306
|
+
state: [String: Any],
|
|
307
|
+
transition: [String: Any],
|
|
308
|
+
resolve: @escaping (NSNumber) -> Void
|
|
309
|
+
) {
|
|
310
|
+
guard let mapView = mapView else {
|
|
311
|
+
Logger.log(level:.error, message: "mapView is null in RNMBXViewport.transitionTo")
|
|
312
|
+
return
|
|
313
|
+
}
|
|
314
|
+
guard let state = toState(mapView.viewport, state) else {
|
|
315
|
+
Logger.log(level:.error, message: "unable to parse toState in RNMBXViewport.transitionTo")
|
|
316
|
+
return
|
|
317
|
+
}
|
|
318
|
+
guard let transition = toTransition(transition, mapView.viewport) else {
|
|
319
|
+
Logger.log(level:.error, message: "unable to parse transition in RNMBXViewport.transitionTo")
|
|
320
|
+
return
|
|
321
|
+
}
|
|
322
|
+
mapView.viewport.transition(to: state, transition: transition) { completed in
|
|
323
|
+
resolve(NSNumber(booleanLiteral: completed))
|
|
324
|
+
}
|
|
325
|
+
}
|
|
326
|
+
}
|
|
327
|
+
|
|
328
|
+
|
|
329
|
+
func toPadding(_ value: [String: NSNumber]) -> UIEdgeInsets {
|
|
330
|
+
var result = UIEdgeInsets()
|
|
331
|
+
|
|
332
|
+
if let top = value["top"] as? NSNumber {
|
|
333
|
+
result.top = top.CGFloat
|
|
334
|
+
}
|
|
335
|
+
|
|
336
|
+
if let bottom = value["bottom"] as? NSNumber {
|
|
337
|
+
result.bottom = bottom.CGFloat
|
|
338
|
+
}
|
|
339
|
+
|
|
340
|
+
if let left = value["left"] as? NSNumber {
|
|
341
|
+
result.left = left.CGFloat
|
|
342
|
+
}
|
|
343
|
+
|
|
344
|
+
if let right = value["right"] as? NSNumber {
|
|
345
|
+
result.right = right.CGFloat
|
|
346
|
+
}
|
|
347
|
+
|
|
348
|
+
return result
|
|
349
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
#ifdef RCT_NEW_ARCH_ENABLED
|
|
2
|
+
|
|
3
|
+
#import <UIKit/UIKit.h>
|
|
4
|
+
|
|
5
|
+
#import <React/RCTUIManager.h>
|
|
6
|
+
#import <React/RCTViewComponentView.h>
|
|
7
|
+
|
|
8
|
+
NS_ASSUME_NONNULL_BEGIN
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
@interface RNMBXViewportComponentView : RCTViewComponentView
|
|
12
|
+
|
|
13
|
+
@end
|
|
14
|
+
|
|
15
|
+
NS_ASSUME_NONNULL_END
|
|
16
|
+
|
|
17
|
+
#endif // RCT_NEW_ARCH_ENABLED
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
#ifdef RCT_NEW_ARCH_ENABLED
|
|
2
|
+
|
|
3
|
+
#import "RNMBXViewportComponentView.h"
|
|
4
|
+
|
|
5
|
+
#import <React/RCTConversions.h>
|
|
6
|
+
#import <React/RCTFabricComponentsPlugins.h>
|
|
7
|
+
|
|
8
|
+
#import <react/renderer/components/rnmapbox_maps_specs/ComponentDescriptors.h>
|
|
9
|
+
#import <react/renderer/components/rnmapbox_maps_specs/EventEmitters.h>
|
|
10
|
+
#import <react/renderer/components/rnmapbox_maps_specs/Props.h>
|
|
11
|
+
#import <react/renderer/components/rnmapbox_maps_specs/RCTComponentViewHelpers.h>
|
|
12
|
+
|
|
13
|
+
#import "rnmapbox_maps-Swift.pre.h"
|
|
14
|
+
|
|
15
|
+
#import "RCTFollyConvert.h"
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
// TODO: use generated RNMBXViewportEventEmitter, but need 0.73+ for dynamic support
|
|
19
|
+
class RNMBXViewportEventEmitter : public facebook::react::ViewEventEmitter {
|
|
20
|
+
public:
|
|
21
|
+
using facebook::react::ViewEventEmitter::ViewEventEmitter;
|
|
22
|
+
|
|
23
|
+
struct OnStatusChanged {
|
|
24
|
+
std::string type;
|
|
25
|
+
folly::dynamic payload;
|
|
26
|
+
};
|
|
27
|
+
void onStatusChanged(OnStatusChanged $event) const {
|
|
28
|
+
dispatchEvent("statusChanged", [$event=std::move($event)](facebook::jsi::Runtime &runtime) {
|
|
29
|
+
auto $payload = facebook::jsi::Object(runtime);
|
|
30
|
+
$payload.setProperty(runtime, "type", $event.type);
|
|
31
|
+
$payload.setProperty(runtime, "payload", facebook::jsi::valueFromDynamic(runtime, $event.payload));
|
|
32
|
+
return $payload;
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
};
|
|
36
|
+
|
|
37
|
+
using namespace facebook::react;
|
|
38
|
+
|
|
39
|
+
NSNumber* convertDynamicToOptional_boolean(const folly::dynamic &dyn, NSString* propertyName) {
|
|
40
|
+
switch (dyn.type()) {
|
|
41
|
+
case folly::dynamic::NULLT:
|
|
42
|
+
return NULL;
|
|
43
|
+
case folly::dynamic::BOOL:
|
|
44
|
+
return [NSNumber numberWithBool:dyn.getBool()];
|
|
45
|
+
default:
|
|
46
|
+
std::stringstream ss;
|
|
47
|
+
ss << dyn;
|
|
48
|
+
[RNMBXLogger error:[NSString stringWithFormat:@"Property %@ expected to be a boolean or nil but was: $d",
|
|
49
|
+
propertyName,
|
|
50
|
+
ss.str().c_str()
|
|
51
|
+
]];
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
@implementation RNMBXViewportComponentView {
|
|
56
|
+
RNMBXViewport *_view;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
- (instancetype)initWithFrame:(CGRect)frame
|
|
60
|
+
{
|
|
61
|
+
if (self = [super initWithFrame:frame]) {
|
|
62
|
+
static const auto defaultProps = std::make_shared<const RNMBXViewportProps>();
|
|
63
|
+
_props = defaultProps;
|
|
64
|
+
_view = [[RNMBXViewport alloc] init];
|
|
65
|
+
[self prepareView];
|
|
66
|
+
|
|
67
|
+
self.contentView = _view;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
return self;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
- (void)prepareView
|
|
74
|
+
{
|
|
75
|
+
__weak __typeof__(self) weakSelf = self;
|
|
76
|
+
|
|
77
|
+
[_view setOnStatusChanged:^(NSDictionary* event) {
|
|
78
|
+
__typeof__(self) strongSelf = weakSelf;
|
|
79
|
+
|
|
80
|
+
if (strongSelf != nullptr && strongSelf->_eventEmitter != nullptr) {
|
|
81
|
+
auto type = std::string([[event objectForKey:@"type"] UTF8String]);
|
|
82
|
+
auto payload = convertIdToFollyDynamic([event objectForKey:@"payload"]);
|
|
83
|
+
::RNMBXViewportEventEmitter::OnStatusChanged event = {type, payload};
|
|
84
|
+
std::reinterpret_pointer_cast<const ::RNMBXViewportEventEmitter>(strongSelf->_eventEmitter)->onStatusChanged(event);
|
|
85
|
+
}
|
|
86
|
+
}];
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
#pragma mark - RCTComponentViewProtocol
|
|
91
|
+
|
|
92
|
+
+ (ComponentDescriptorProvider)componentDescriptorProvider
|
|
93
|
+
{
|
|
94
|
+
return concreteComponentDescriptorProvider<RNMBXViewportComponentDescriptor>();
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
- (void)updateProps:(const Props::Shared &)props oldProps:(const Props::Shared &)oldProps
|
|
98
|
+
{
|
|
99
|
+
const auto &oldViewProps = static_cast<const RNMBXViewportProps &>(*oldProps);
|
|
100
|
+
const auto &newViewProps = static_cast<const RNMBXViewportProps &>(*props);
|
|
101
|
+
|
|
102
|
+
if (!oldProps.get() || oldViewProps.transitionsToIdleUponUserInteraction != newViewProps.transitionsToIdleUponUserInteraction) {
|
|
103
|
+
_view.transitionsToIdleUponUserInteraction = convertDynamicToOptional_boolean(newViewProps.transitionsToIdleUponUserInteraction, @"transitionsToIdleUponUserInteraction");
|
|
104
|
+
}
|
|
105
|
+
if (!oldProps.get() ||
|
|
106
|
+
oldViewProps.hasStatusChanged !=
|
|
107
|
+
newViewProps.hasStatusChanged) {
|
|
108
|
+
_view.hasStatusChanged = newViewProps.hasStatusChanged;
|
|
109
|
+
}
|
|
110
|
+
[super updateProps:props oldProps:oldProps];
|
|
111
|
+
}
|
|
112
|
+
@end
|
|
113
|
+
|
|
114
|
+
Class<RCTComponentViewProtocol> RNMBXViewportCls(void)
|
|
115
|
+
{
|
|
116
|
+
return RNMBXViewportComponentView.class;
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
#endif // RCT_NEW_ARCH_ENABLED
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
#import <React/RCTBridgeModule.h>
|
|
2
|
+
#import <React/RCTViewManager.h>
|
|
3
|
+
|
|
4
|
+
@interface RCT_EXTERN_REMAP_MODULE(RNMBXViewport, RNMBXViewportManager, RCTViewManager)
|
|
5
|
+
|
|
6
|
+
RCT_EXPORT_VIEW_PROPERTY(transitionsToIdleUponUserInteraction, NSNumber)
|
|
7
|
+
|
|
8
|
+
RCT_EXPORT_VIEW_PROPERTY(hasStatusChanged, BOOL)
|
|
9
|
+
|
|
10
|
+
RCT_EXPORT_VIEW_PROPERTY(onStatusChanged, RCTBubblingEventBlock)
|
|
11
|
+
|
|
12
|
+
@end
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
@objc(RNMBXViewportManager)
|
|
2
|
+
public class RNMBXViewportManager : RCTViewManager {
|
|
3
|
+
@objc
|
|
4
|
+
public override static func requiresMainQueueSetup() -> Bool {
|
|
5
|
+
return true
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
public override func view() -> UIView! {
|
|
9
|
+
let layer = RNMBXViewport()
|
|
10
|
+
return layer
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
@objc public static func getState(
|
|
14
|
+
_ view: RNMBXViewport,
|
|
15
|
+
resolve: @escaping RCTPromiseResolveBlock,
|
|
16
|
+
reject: @escaping RCTPromiseRejectBlock) {
|
|
17
|
+
resolve(view.getState())
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
@objc public static func idle(
|
|
21
|
+
_ view: RNMBXViewport,
|
|
22
|
+
resolve: @escaping RCTPromiseResolveBlock,
|
|
23
|
+
reject: @escaping RCTPromiseRejectBlock) {
|
|
24
|
+
resolve(view.idle())
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
@objc public static func transitionTo(
|
|
28
|
+
_ view: RNMBXViewport,
|
|
29
|
+
state: [String: Any],
|
|
30
|
+
transition: [String: Any],
|
|
31
|
+
resolve: @escaping RCTPromiseResolveBlock,
|
|
32
|
+
reject: @escaping RCTPromiseRejectBlock
|
|
33
|
+
) {
|
|
34
|
+
view.transitionTo(state: state, transition: transition) { finished in
|
|
35
|
+
resolve(finished)
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
#import <Foundation/Foundation.h>
|
|
2
|
+
#import <UIKit/UIKit.h>
|
|
3
|
+
|
|
4
|
+
#ifdef RCT_NEW_ARCH_ENABLED
|
|
5
|
+
#import "rnmapbox_maps_specs.h"
|
|
6
|
+
#else
|
|
7
|
+
#import <React/RCTBridge.h>
|
|
8
|
+
#endif
|
|
9
|
+
|
|
10
|
+
@interface RNMBXViewportModule : NSObject
|
|
11
|
+
#ifdef RCT_NEW_ARCH_ENABLED
|
|
12
|
+
<NativeRNMBXViewportModuleSpec>
|
|
13
|
+
#else
|
|
14
|
+
<RCTBridgeModule>
|
|
15
|
+
#endif
|
|
16
|
+
|
|
17
|
+
@end
|
|
18
|
+
|