@rnmapbox/maps 10.1.0-beta.20 → 10.1.0-beta.22
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/android/build.gradle +1 -1
- package/android/src/main/AndroidManifest.xml +1 -1
- package/android/src/main/java/com/rnmapbox/rnmbx/RNMBXPackage.kt +27 -1
- package/android/src/main/java/com/rnmapbox/rnmbx/components/location/RNMBXNativeUserLocation.kt +6 -5
- 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/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/sources/RNMBXShapeSource.kt +56 -6
- package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/sources/RNMBXShapeSourceManager.kt +2 -1
- 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/mapbox-v11-compat/v10/com/rnmapbox/rnmbx/v11compat/Layer.kt +7 -0
- package/android/src/main/mapbox-v11-compat/v11/com/rnmapbox/rnmbx/v11compat/Layer.kt +3 -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/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/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/rnmapbox/rnmbx/NativeMapViewModuleSpec.java +1 -2
- package/android/src/main/old-arch/com/rnmapbox/rnmbx/NativeRNMBXImageModuleSpec.java +1 -2
- package/android/src/main/old-arch/com/rnmapbox/rnmbx/NativeRNMBXMovePointShapeAnimatorModuleSpec.java +43 -0
- package/android/src/main/old-arch/com/rnmapbox/rnmbx/NativeRNMBXPointAnnotationModuleSpec.java +1 -2
- package/android/src/main/old-arch/com/rnmapbox/rnmbx/NativeRNMBXShapeSourceModuleSpec.java +1 -2
- package/android/src/main/old-arch/com/rnmapbox/rnmbx/NativeRNMBXViewportModuleSpec.java +1 -2
- package/ios/RNMBX/CommonLayerProperties.H +2 -0
- package/ios/RNMBX/RNMBXLayer.swift +27 -0
- package/ios/RNMBX/RNMBXMapView.swift +74 -3
- package/ios/RNMBX/RNMBXMarkerViewComponentView.mm +1 -0
- package/ios/RNMBX/RNMBXShapeSource.swift +54 -15
- package/ios/RNMBX/RNMBXViewportComponentView.mm +1 -1
- 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/lib/commonjs/Mapbox.js +10 -0
- package/lib/commonjs/Mapbox.js.map +1 -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.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/CustomLocationProvider.js.map +1 -1
- 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/MapView.js +0 -8
- package/lib/commonjs/components/MapView.js.map +1 -1
- package/lib/commonjs/components/MarkerView.js.map +1 -1
- package/lib/commonjs/components/NativeBridgeComponent.js.map +1 -1
- package/lib/commonjs/components/NativeUserLocation.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.map +1 -1
- package/lib/commonjs/components/VectorSource.js.map +1 -1
- package/lib/commonjs/components/Viewport.js.map +1 -1
- 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/offlineManager.js.map +1 -1
- 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.map +1 -1
- 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.map +1 -1
- 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/RNMBXMarkerViewNativeComponent.js.map +1 -1
- 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.map +1 -1
- package/lib/commonjs/specs/codegenUtils.js.map +1 -1
- package/lib/commonjs/specs/codeparts/CommonLayerNativeComponentsProps.codepart-ts +17 -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.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.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 +8 -0
- package/lib/module/Mapbox.js.map +1 -1
- 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.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.map +1 -1
- 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/MapView.js +0 -8
- package/lib/module/components/MapView.js.map +1 -1
- package/lib/module/components/MarkerView.js.map +1 -1
- package/lib/module/components/NativeBridgeComponent.js.map +1 -1
- package/lib/module/components/NativeUserLocation.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.map +1 -1
- package/lib/module/components/VectorSource.js.map +1 -1
- package/lib/module/components/Viewport.js.map +1 -1
- 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/offlineManager.js.map +1 -1
- 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.map +1 -1
- 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 +2 -1
- package/lib/module/specs/RNMBXCircleLayerNativeComponent.js.map +1 -1
- package/lib/module/specs/RNMBXCustomLocationProviderNativeComponent.js.map +1 -1
- package/lib/module/specs/RNMBXFillExtrusionLayerNativeComponent.js.map +1 -1
- package/lib/module/specs/RNMBXFillLayerNativeComponent.js +2 -1
- package/lib/module/specs/RNMBXFillLayerNativeComponent.js.map +1 -1
- package/lib/module/specs/RNMBXHeatmapLayerNativeComponent.js +2 -1
- 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 +2 -1
- package/lib/module/specs/RNMBXLineLayerNativeComponent.js.map +1 -1
- package/lib/module/specs/RNMBXMapViewNativeComponent.js.map +1 -1
- package/lib/module/specs/RNMBXMarkerViewNativeComponent.js.map +1 -1
- 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 +2 -1
- 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 +2 -1
- 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.map +1 -1
- package/lib/module/specs/codegenUtils.js.map +1 -1
- package/lib/module/specs/codeparts/CommonLayerNativeComponentsProps.codepart-ts +17 -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.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.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 +5 -0
- package/lib/typescript/src/Mapbox.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/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/LineLayer.d.ts +10 -1
- package/lib/typescript/src/components/LineLayer.d.ts.map +1 -1
- package/lib/typescript/src/components/MapView.d.ts +5 -6
- package/lib/typescript/src/components/MapView.d.ts.map +1 -1
- 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/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 +0 -1
- package/lib/typescript/src/specs/NativeRNMBXViewportModule.d.ts.map +1 -1
- package/lib/typescript/src/specs/RNMBXCircleLayerNativeComponent.d.ts +6 -3
- package/lib/typescript/src/specs/RNMBXCircleLayerNativeComponent.d.ts.map +1 -1
- package/lib/typescript/src/specs/RNMBXFillLayerNativeComponent.d.ts +13 -10
- package/lib/typescript/src/specs/RNMBXFillLayerNativeComponent.d.ts.map +1 -1
- package/lib/typescript/src/specs/RNMBXHeatmapLayerNativeComponent.d.ts +13 -10
- package/lib/typescript/src/specs/RNMBXHeatmapLayerNativeComponent.d.ts.map +1 -1
- package/lib/typescript/src/specs/RNMBXLineLayerNativeComponent.d.ts +13 -10
- package/lib/typescript/src/specs/RNMBXLineLayerNativeComponent.d.ts.map +1 -1
- package/lib/typescript/src/specs/RNMBXRasterLayerNativeComponent.d.ts +13 -10
- package/lib/typescript/src/specs/RNMBXRasterLayerNativeComponent.d.ts.map +1 -1
- package/lib/typescript/src/specs/RNMBXSymbolLayerNativeComponent.d.ts +13 -10
- package/lib/typescript/src/specs/RNMBXSymbolLayerNativeComponent.d.ts.map +1 -1
- package/lib/typescript/src/specs/codegenUtils.d.ts +0 -1
- package/lib/typescript/src/specs/codegenUtils.d.ts.map +1 -1
- package/package.json +7 -8
- package/rnmapbox-maps.podspec +13 -2
- package/setup-jest.js +5 -0
- package/src/Mapbox.ts +9 -0
- package/src/components/CircleLayer.tsx +17 -5
- package/src/components/FillLayer.tsx +16 -3
- package/src/components/HeatmapLayer.tsx +18 -6
- package/src/components/LineLayer.tsx +16 -3
- package/src/components/MapView.tsx +0 -8
- package/src/components/RasterLayer.tsx +17 -4
- package/src/components/SkyLayer.tsx +2 -2
- package/src/components/SymbolLayer.tsx +26 -7
- package/src/components/codeparts/LayerPropsCommon.codepart-tsx +62 -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/RNMBXCircleLayerNativeComponent.ts +9 -3
- package/src/specs/RNMBXFillLayerNativeComponent.ts +17 -11
- package/src/specs/RNMBXHeatmapLayerNativeComponent.ts +17 -11
- package/src/specs/RNMBXLineLayerNativeComponent.ts +17 -11
- package/src/specs/RNMBXRasterLayerNativeComponent.ts +17 -11
- package/src/specs/RNMBXSymbolLayerNativeComponent.ts +17 -11
- package/src/specs/codeparts/CommonLayerNativeComponentsProps.codepart-ts +17 -0
package/android/build.gradle
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
|
|
1
|
+
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.rnmapbox.rnmbx">
|
|
2
2
|
<uses-permission android:name="android.permission.INTERNET" />
|
|
3
3
|
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
|
|
4
4
|
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
|
|
@@ -46,6 +46,8 @@ import com.rnmapbox.rnmbx.modules.RNMBXLogging
|
|
|
46
46
|
import com.rnmapbox.rnmbx.modules.RNMBXModule
|
|
47
47
|
import com.rnmapbox.rnmbx.modules.RNMBXOfflineModule
|
|
48
48
|
import com.rnmapbox.rnmbx.modules.RNMBXSnapshotModule
|
|
49
|
+
import com.rnmapbox.rnmbx.shape_animators.RNMBXMovePointShapeAnimatorModule
|
|
50
|
+
import com.rnmapbox.rnmbx.shape_animators.ShapeAnimatorManager
|
|
49
51
|
import com.rnmapbox.rnmbx.utils.ViewTagResolver
|
|
50
52
|
|
|
51
53
|
class RNMBXPackage : TurboReactPackage() {
|
|
@@ -61,6 +63,17 @@ class RNMBXPackage : TurboReactPackage() {
|
|
|
61
63
|
return viewTagResolver
|
|
62
64
|
}
|
|
63
65
|
|
|
66
|
+
var shapeAnimators: ShapeAnimatorManager? = null
|
|
67
|
+
fun getShapeAnimators(module: String): ShapeAnimatorManager {
|
|
68
|
+
val shapeAnimators = shapeAnimators
|
|
69
|
+
if (shapeAnimators == null) {
|
|
70
|
+
val result = ShapeAnimatorManager()
|
|
71
|
+
this.shapeAnimators = result
|
|
72
|
+
return result
|
|
73
|
+
}
|
|
74
|
+
return shapeAnimators
|
|
75
|
+
}
|
|
76
|
+
|
|
64
77
|
fun resetViewTagResolver() {
|
|
65
78
|
viewTagResolver = null
|
|
66
79
|
}
|
|
@@ -80,6 +93,7 @@ class RNMBXPackage : TurboReactPackage() {
|
|
|
80
93
|
RNMBXShapeSourceModule.NAME -> return RNMBXShapeSourceModule(reactApplicationContext, getViewTagResolver(reactApplicationContext, s))
|
|
81
94
|
RNMBXImageModule.NAME -> return RNMBXImageModule(reactApplicationContext, getViewTagResolver(reactApplicationContext, s))
|
|
82
95
|
RNMBXPointAnnotationModule.NAME -> return RNMBXPointAnnotationModule(reactApplicationContext, getViewTagResolver(reactApplicationContext, s))
|
|
96
|
+
RNMBXMovePointShapeAnimatorModule.NAME -> return RNMBXMovePointShapeAnimatorModule(reactApplicationContext, getShapeAnimators(s))
|
|
83
97
|
}
|
|
84
98
|
return null
|
|
85
99
|
}
|
|
@@ -107,7 +121,10 @@ class RNMBXPackage : TurboReactPackage() {
|
|
|
107
121
|
|
|
108
122
|
// sources
|
|
109
123
|
managers.add(RNMBXVectorSourceManager(reactApplicationContext))
|
|
110
|
-
managers.add(RNMBXShapeSourceManager(reactApplicationContext,
|
|
124
|
+
managers.add(RNMBXShapeSourceManager(reactApplicationContext,
|
|
125
|
+
getViewTagResolver(reactApplicationContext, "RNMBXShapeSourceManager"),
|
|
126
|
+
getShapeAnimators("RNMBXShapeSourceManager")
|
|
127
|
+
))
|
|
111
128
|
managers.add(RNMBXRasterDemSourceManager(reactApplicationContext))
|
|
112
129
|
managers.add(RNMBXRasterSourceManager(reactApplicationContext))
|
|
113
130
|
managers.add(RNMBXImageSourceManager())
|
|
@@ -227,6 +244,15 @@ class RNMBXPackage : TurboReactPackage() {
|
|
|
227
244
|
false, // isCxxModule
|
|
228
245
|
isTurboModule // isTurboModule
|
|
229
246
|
)
|
|
247
|
+
moduleInfos[RNMBXMovePointShapeAnimatorModule.NAME] = ReactModuleInfo(
|
|
248
|
+
RNMBXMovePointShapeAnimatorModule.NAME,
|
|
249
|
+
RNMBXMovePointShapeAnimatorModule.NAME,
|
|
250
|
+
false,
|
|
251
|
+
false,
|
|
252
|
+
false,
|
|
253
|
+
false,
|
|
254
|
+
isTurboModule
|
|
255
|
+
)
|
|
230
256
|
moduleInfos
|
|
231
257
|
}
|
|
232
258
|
}
|
package/android/src/main/java/com/rnmapbox/rnmbx/components/location/RNMBXNativeUserLocation.kt
CHANGED
|
@@ -15,6 +15,7 @@ import com.mapbox.maps.MapboxMap
|
|
|
15
15
|
import com.mapbox.maps.Style
|
|
16
16
|
import com.mapbox.maps.plugin.LocationPuck2D
|
|
17
17
|
import com.mapbox.maps.plugin.locationcomponent.location
|
|
18
|
+
import com.mapbox.maps.plugin.locationcomponent.R as LR
|
|
18
19
|
import com.rnmapbox.rnmbx.R
|
|
19
20
|
import com.rnmapbox.rnmbx.components.AbstractMapFeature
|
|
20
21
|
import com.rnmapbox.rnmbx.components.RemovalReason
|
|
@@ -234,19 +235,19 @@ fun makeDefaultLocationPuck2D(context: Context, renderMode: RenderMode): Locatio
|
|
|
234
235
|
return LocationPuck2D(
|
|
235
236
|
topImage = AppCompatResourcesV11.getDrawableImageHolder(
|
|
236
237
|
context,
|
|
237
|
-
|
|
238
|
+
LR.drawable.mapbox_user_icon
|
|
238
239
|
),
|
|
239
240
|
bearingImage = AppCompatResourcesV11.getDrawableImageHolder(
|
|
240
241
|
context,
|
|
241
242
|
when (renderMode) {
|
|
242
|
-
RenderMode.GPS ->
|
|
243
|
-
RenderMode.COMPASS ->
|
|
244
|
-
RenderMode.NORMAL ->
|
|
243
|
+
RenderMode.GPS -> LR.drawable.mapbox_user_bearing_icon
|
|
244
|
+
RenderMode.COMPASS -> LR.drawable.mapbox_user_puck_icon
|
|
245
|
+
RenderMode.NORMAL -> LR.drawable.mapbox_user_stroke_icon
|
|
245
246
|
}
|
|
246
247
|
),
|
|
247
248
|
shadowImage = AppCompatResourcesV11.getDrawableImageHolder(
|
|
248
249
|
context,
|
|
249
|
-
|
|
250
|
+
LR.drawable.mapbox_user_icon_shadow
|
|
250
251
|
)
|
|
251
252
|
);
|
|
252
253
|
}
|
package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/layers/RNMBXCircleLayerManager.kt
CHANGED
|
@@ -8,6 +8,7 @@ import com.facebook.react.viewmanagers.RNMBXCircleLayerManagerInterface
|
|
|
8
8
|
|
|
9
9
|
class RNMBXCircleLayerManager : ViewGroupManager<RNMBXCircleLayer>(),
|
|
10
10
|
RNMBXCircleLayerManagerInterface<RNMBXCircleLayer> {
|
|
11
|
+
|
|
11
12
|
override fun getName(): String {
|
|
12
13
|
return REACT_CLASS
|
|
13
14
|
}
|
|
@@ -16,6 +17,7 @@ class RNMBXCircleLayerManager : ViewGroupManager<RNMBXCircleLayer>(),
|
|
|
16
17
|
return RNMBXCircleLayer(reactContext)
|
|
17
18
|
}
|
|
18
19
|
|
|
20
|
+
// @{codepart-replace-start(LayerManagerCommonProps.codepart-kt.ejs,{layerType:"RNMBXCircleLayer"})}
|
|
19
21
|
@ReactProp(name = "id")
|
|
20
22
|
override fun setId(layer: RNMBXCircleLayer, id: Dynamic) {
|
|
21
23
|
layer.iD = id.asString()
|
|
@@ -71,6 +73,12 @@ class RNMBXCircleLayerManager : ViewGroupManager<RNMBXCircleLayer>(),
|
|
|
71
73
|
layer.setFilter(filterList.asArray())
|
|
72
74
|
}
|
|
73
75
|
|
|
76
|
+
@ReactProp(name = "slot")
|
|
77
|
+
override fun setSlot(layer: RNMBXCircleLayer, slot: Dynamic) {
|
|
78
|
+
layer.setSlot(slot.asString())
|
|
79
|
+
}
|
|
80
|
+
// @{codepart-replace-end}
|
|
81
|
+
|
|
74
82
|
companion object {
|
|
75
83
|
const val REACT_CLASS = "RNMBXCircleLayer"
|
|
76
84
|
}
|
package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/layers/RNMBXFillLayerManager.kt
CHANGED
|
@@ -16,6 +16,7 @@ class RNMBXFillLayerManager : ViewGroupManager<RNMBXFillLayer>(),
|
|
|
16
16
|
return RNMBXFillLayer(reactContext)
|
|
17
17
|
}
|
|
18
18
|
|
|
19
|
+
// @{codepart-replace-start(LayerManagerCommonProps.codepart-kt.ejs,{layerType:"RNMBXFillLayer"})}
|
|
19
20
|
@ReactProp(name = "id")
|
|
20
21
|
override fun setId(layer: RNMBXFillLayer, id: Dynamic) {
|
|
21
22
|
layer.iD = id.asString()
|
|
@@ -31,11 +32,6 @@ class RNMBXFillLayerManager : ViewGroupManager<RNMBXFillLayer>(),
|
|
|
31
32
|
layer.setSourceID(sourceID.asString())
|
|
32
33
|
}
|
|
33
34
|
|
|
34
|
-
@ReactProp(name = "sourceLayerID")
|
|
35
|
-
override fun setSourceLayerID(layer: RNMBXFillLayer, sourceLayerID: Dynamic) {
|
|
36
|
-
layer.setSourceLayerID(sourceLayerID.asString())
|
|
37
|
-
}
|
|
38
|
-
|
|
39
35
|
@ReactProp(name = "aboveLayerID")
|
|
40
36
|
override fun setAboveLayerID(layer: RNMBXFillLayer, aboveLayerID: Dynamic) {
|
|
41
37
|
layer.setAboveLayerID(aboveLayerID.asString())
|
|
@@ -66,11 +62,22 @@ class RNMBXFillLayerManager : ViewGroupManager<RNMBXFillLayer>(),
|
|
|
66
62
|
layer.setReactStyle(style.asMap())
|
|
67
63
|
}
|
|
68
64
|
|
|
65
|
+
@ReactProp(name = "sourceLayerID")
|
|
66
|
+
override fun setSourceLayerID(layer: RNMBXFillLayer, sourceLayerID: Dynamic) {
|
|
67
|
+
layer.setSourceLayerID(sourceLayerID.asString())
|
|
68
|
+
}
|
|
69
|
+
|
|
69
70
|
@ReactProp(name = "filter")
|
|
70
71
|
override fun setFilter(layer: RNMBXFillLayer, filterList: Dynamic) {
|
|
71
72
|
layer.setFilter(filterList.asArray())
|
|
72
73
|
}
|
|
73
74
|
|
|
75
|
+
@ReactProp(name = "slot")
|
|
76
|
+
override fun setSlot(layer: RNMBXFillLayer, slot: Dynamic) {
|
|
77
|
+
layer.setSlot(slot.asString())
|
|
78
|
+
}
|
|
79
|
+
// @{codepart-replace-end}
|
|
80
|
+
|
|
74
81
|
companion object {
|
|
75
82
|
const val REACT_CLASS = "RNMBXFillLayer"
|
|
76
83
|
}
|
|
@@ -16,6 +16,7 @@ class RNMBXHeatmapLayerManager : ViewGroupManager<RNMBXHeatmapLayer>(),
|
|
|
16
16
|
return RNMBXHeatmapLayer(reactContext)
|
|
17
17
|
}
|
|
18
18
|
|
|
19
|
+
// @{codepart-replace-start(LayerManagerCommonProps.codepart-kt.ejs,{layerType:"RNMBXHeatmapLayer"})}
|
|
19
20
|
@ReactProp(name = "id")
|
|
20
21
|
override fun setId(layer: RNMBXHeatmapLayer, id: Dynamic) {
|
|
21
22
|
layer.iD = id.asString()
|
|
@@ -71,6 +72,12 @@ class RNMBXHeatmapLayerManager : ViewGroupManager<RNMBXHeatmapLayer>(),
|
|
|
71
72
|
layer.setFilter(filterList.asArray())
|
|
72
73
|
}
|
|
73
74
|
|
|
75
|
+
@ReactProp(name = "slot")
|
|
76
|
+
override fun setSlot(layer: RNMBXHeatmapLayer, slot: Dynamic) {
|
|
77
|
+
layer.setSlot(slot.asString())
|
|
78
|
+
}
|
|
79
|
+
// @{codepart-replace-end}
|
|
80
|
+
|
|
74
81
|
companion object {
|
|
75
82
|
const val REACT_CLASS = "RNMBXHeatmapLayer"
|
|
76
83
|
}
|
|
@@ -18,6 +18,7 @@ import com.rnmapbox.rnmbx.components.RemovalReason
|
|
|
18
18
|
import com.rnmapbox.rnmbx.utils.ExpressionParser
|
|
19
19
|
import java.lang.ClassCastException
|
|
20
20
|
import com.rnmapbox.rnmbx.utils.Logger
|
|
21
|
+
import com.rnmapbox.rnmbx.v11compat.layer.*
|
|
21
22
|
|
|
22
23
|
abstract class RNMBXLayer<T : Layer?>(protected var mContext: Context) : AbstractSourceConsumer(
|
|
23
24
|
mContext
|
|
@@ -133,6 +134,13 @@ abstract class RNMBXLayer<T : Layer?>(protected var mContext: Context) : Abstrac
|
|
|
133
134
|
}
|
|
134
135
|
}
|
|
135
136
|
|
|
137
|
+
var mSlot: String? = null
|
|
138
|
+
|
|
139
|
+
fun setSlot(slot: String?) {
|
|
140
|
+
mSlot = slot
|
|
141
|
+
applySlot()
|
|
142
|
+
}
|
|
143
|
+
|
|
136
144
|
fun setExisting(existing: Boolean) {
|
|
137
145
|
mExisting = existing
|
|
138
146
|
}
|
|
@@ -232,16 +240,27 @@ abstract class RNMBXLayer<T : Layer?>(protected var mContext: Context) : Abstrac
|
|
|
232
240
|
add ()
|
|
233
241
|
} } }
|
|
234
242
|
}
|
|
235
|
-
|
|
243
|
+
applyZoomBounds()
|
|
244
|
+
applySlot()
|
|
236
245
|
}
|
|
237
246
|
}
|
|
238
247
|
|
|
239
|
-
protected fun
|
|
240
|
-
|
|
241
|
-
|
|
248
|
+
protected fun applyZoomBounds() {
|
|
249
|
+
mLayer?.let {layer ->
|
|
250
|
+
mMaxZoomLevel?.let {
|
|
251
|
+
layer.maxZoom(it.toDouble())
|
|
252
|
+
}
|
|
253
|
+
mMinZoomLevel?.let {
|
|
254
|
+
layer.minZoom(it.toDouble())
|
|
255
|
+
}
|
|
242
256
|
}
|
|
243
|
-
|
|
244
|
-
|
|
257
|
+
}
|
|
258
|
+
|
|
259
|
+
protected fun applySlot() {
|
|
260
|
+
mLayer?.let { layer ->
|
|
261
|
+
mSlot?.let {
|
|
262
|
+
layer.slot(it)
|
|
263
|
+
}
|
|
245
264
|
}
|
|
246
265
|
}
|
|
247
266
|
|
package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/layers/RNMBXLineLayerManager.kt
CHANGED
|
@@ -16,6 +16,7 @@ class RNMBXLineLayerManager : ViewGroupManager<RNMBXLineLayer>(),
|
|
|
16
16
|
return RNMBXLineLayer(reactContext)
|
|
17
17
|
}
|
|
18
18
|
|
|
19
|
+
// @{codepart-replace-start(LayerManagerCommonProps.codepart-kt.ejs,{layerType:"RNMBXLineLayer"})}
|
|
19
20
|
@ReactProp(name = "id")
|
|
20
21
|
override fun setId(layer: RNMBXLineLayer, id: Dynamic) {
|
|
21
22
|
layer.iD = id.asString()
|
|
@@ -71,6 +72,12 @@ class RNMBXLineLayerManager : ViewGroupManager<RNMBXLineLayer>(),
|
|
|
71
72
|
layer.setFilter(filterList.asArray())
|
|
72
73
|
}
|
|
73
74
|
|
|
75
|
+
@ReactProp(name = "slot")
|
|
76
|
+
override fun setSlot(layer: RNMBXLineLayer, slot: Dynamic) {
|
|
77
|
+
layer.setSlot(slot.asString())
|
|
78
|
+
}
|
|
79
|
+
// @{codepart-replace-end}
|
|
80
|
+
|
|
74
81
|
companion object {
|
|
75
82
|
const val REACT_CLASS = "RNMBXLineLayer"
|
|
76
83
|
}
|
package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/layers/RNMBXRasterLayerManager.kt
CHANGED
|
@@ -16,6 +16,7 @@ class RNMBXRasterLayerManager : ViewGroupManager<RNMBXRasterLayer>(),
|
|
|
16
16
|
return RNMBXRasterLayer(reactContext)
|
|
17
17
|
}
|
|
18
18
|
|
|
19
|
+
// @{codepart-replace-start(LayerManagerCommonProps.codepart-kt.ejs,{layerType:"RNMBXRasterLayer"})}
|
|
19
20
|
@ReactProp(name = "id")
|
|
20
21
|
override fun setId(layer: RNMBXRasterLayer, id: Dynamic) {
|
|
21
22
|
layer.iD = id.asString()
|
|
@@ -63,8 +64,7 @@ class RNMBXRasterLayerManager : ViewGroupManager<RNMBXRasterLayer>(),
|
|
|
63
64
|
|
|
64
65
|
@ReactProp(name = "sourceLayerID")
|
|
65
66
|
override fun setSourceLayerID(layer: RNMBXRasterLayer, sourceLayerID: Dynamic) {
|
|
66
|
-
|
|
67
|
-
// layer.setSourceLayerID(sourceLayerID.asString())
|
|
67
|
+
layer.setSourceLayerID(sourceLayerID.asString())
|
|
68
68
|
}
|
|
69
69
|
|
|
70
70
|
@ReactProp(name = "filter")
|
|
@@ -72,6 +72,12 @@ class RNMBXRasterLayerManager : ViewGroupManager<RNMBXRasterLayer>(),
|
|
|
72
72
|
layer.setFilter(filterList.asArray())
|
|
73
73
|
}
|
|
74
74
|
|
|
75
|
+
@ReactProp(name = "slot")
|
|
76
|
+
override fun setSlot(layer: RNMBXRasterLayer, slot: Dynamic) {
|
|
77
|
+
layer.setSlot(slot.asString())
|
|
78
|
+
}
|
|
79
|
+
// @{codepart-replace-end}
|
|
80
|
+
|
|
75
81
|
companion object {
|
|
76
82
|
const val REACT_CLASS = "RNMBXRasterLayer"
|
|
77
83
|
}
|
package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/layers/RNMBXSymbolLayerManager.kt
CHANGED
|
@@ -16,6 +16,7 @@ class RNMBXSymbolLayerManager : ViewGroupManager<RNMBXSymbolLayer>(),
|
|
|
16
16
|
return RNMBXSymbolLayer(reactContext)
|
|
17
17
|
}
|
|
18
18
|
|
|
19
|
+
// @{codepart-replace-start(LayerManagerCommonProps.codepart-kt.ejs,{layerType:"RNMBXSymbolLayer"})}
|
|
19
20
|
@ReactProp(name = "id")
|
|
20
21
|
override fun setId(layer: RNMBXSymbolLayer, id: Dynamic) {
|
|
21
22
|
layer.iD = id.asString()
|
|
@@ -71,6 +72,13 @@ class RNMBXSymbolLayerManager : ViewGroupManager<RNMBXSymbolLayer>(),
|
|
|
71
72
|
layer.setFilter(filterList.asArray())
|
|
72
73
|
}
|
|
73
74
|
|
|
75
|
+
@ReactProp(name = "slot")
|
|
76
|
+
override fun setSlot(layer: RNMBXSymbolLayer, slot: Dynamic) {
|
|
77
|
+
layer.setSlot(slot.asString())
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
// @{codepart-replace-end}
|
|
81
|
+
|
|
74
82
|
companion object {
|
|
75
83
|
const val REACT_CLASS = "RNMBXSymbolLayer"
|
|
76
84
|
}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
@ReactProp(name = "id")
|
|
2
|
+
override fun setId(layer: <%= layerType %>, id: Dynamic) {
|
|
3
|
+
layer.iD = id.asString()
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
@ReactProp(name = "existing")
|
|
7
|
+
override fun setExisting(layer: <%= layerType %>, existing: Dynamic) {
|
|
8
|
+
layer.setExisting(existing.asBoolean())
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
@ReactProp(name = "sourceID")
|
|
12
|
+
override fun setSourceID(layer: <%= layerType %>, sourceID: Dynamic) {
|
|
13
|
+
layer.setSourceID(sourceID.asString())
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
@ReactProp(name = "aboveLayerID")
|
|
17
|
+
override fun setAboveLayerID(layer: <%= layerType %>, aboveLayerID: Dynamic) {
|
|
18
|
+
layer.setAboveLayerID(aboveLayerID.asString())
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
@ReactProp(name = "belowLayerID")
|
|
22
|
+
override fun setBelowLayerID(layer: <%= layerType %>, belowLayerID: Dynamic) {
|
|
23
|
+
layer.setBelowLayerID(belowLayerID.asString())
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
@ReactProp(name = "layerIndex")
|
|
27
|
+
override fun setLayerIndex(layer: <%= layerType %>, layerIndex: Dynamic) {
|
|
28
|
+
layer.setLayerIndex(layerIndex.asInt())
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
@ReactProp(name = "minZoomLevel")
|
|
32
|
+
override fun setMinZoomLevel(layer: <%= layerType %>, minZoomLevel: Dynamic) {
|
|
33
|
+
layer.setMinZoomLevel(minZoomLevel.asDouble())
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
@ReactProp(name = "maxZoomLevel")
|
|
37
|
+
override fun setMaxZoomLevel(layer: <%= layerType %>, maxZoomLevel: Dynamic) {
|
|
38
|
+
layer.setMaxZoomLevel(maxZoomLevel.asDouble())
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
@ReactProp(name = "reactStyle")
|
|
42
|
+
override fun setReactStyle(layer: <%= layerType %>, style: Dynamic) {
|
|
43
|
+
layer.setReactStyle(style.asMap())
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
@ReactProp(name = "sourceLayerID")
|
|
47
|
+
override fun setSourceLayerID(layer: <%= layerType %>, sourceLayerID: Dynamic) {
|
|
48
|
+
layer.setSourceLayerID(sourceLayerID.asString())
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
@ReactProp(name = "filter")
|
|
52
|
+
override fun setFilter(layer: <%= layerType %>, filterList: Dynamic) {
|
|
53
|
+
layer.setFilter(filterList.asArray())
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
@ReactProp(name = "slot")
|
|
57
|
+
override fun setSlot(layer: <%= layerType %>, slot: Dynamic) {
|
|
58
|
+
layer.setSlot(slot.asString())
|
|
59
|
+
}
|
package/android/src/main/java/com/rnmapbox/rnmbx/components/styles/sources/RNMBXShapeSource.kt
CHANGED
|
@@ -14,8 +14,13 @@ import com.mapbox.bindgen.Value
|
|
|
14
14
|
import com.mapbox.geojson.Feature
|
|
15
15
|
import com.rnmapbox.rnmbx.events.AndroidCallbackEvent
|
|
16
16
|
import com.mapbox.geojson.FeatureCollection
|
|
17
|
+
import com.mapbox.geojson.GeoJson
|
|
18
|
+
import com.mapbox.geojson.Geometry
|
|
17
19
|
import com.mapbox.maps.*
|
|
18
20
|
import com.mapbox.maps.extension.style.expressions.generated.Expression
|
|
21
|
+
import com.rnmapbox.rnmbx.shape_animators.ShapeAnimationConsumer
|
|
22
|
+
import com.rnmapbox.rnmbx.shape_animators.ShapeAnimator
|
|
23
|
+
import com.rnmapbox.rnmbx.shape_animators.ShapeAnimatorManager
|
|
19
24
|
import com.rnmapbox.rnmbx.utils.Logger
|
|
20
25
|
import java.net.URL
|
|
21
26
|
import java.util.ArrayList
|
|
@@ -24,9 +29,10 @@ import java.util.HashMap
|
|
|
24
29
|
import com.rnmapbox.rnmbx.v11compat.feature.*
|
|
25
30
|
|
|
26
31
|
class RNMBXShapeSource(context: Context, private val mManager: RNMBXShapeSourceManager) :
|
|
27
|
-
RNMBXSource<GeoJsonSource>(context) {
|
|
32
|
+
RNMBXSource<GeoJsonSource>(context), ShapeAnimationConsumer {
|
|
28
33
|
private var mURL: URL? = null
|
|
29
34
|
private var mShape: String? = null
|
|
35
|
+
private var mShapeAnimator: ShapeAnimator? = null
|
|
30
36
|
private var mCluster: Boolean? = null
|
|
31
37
|
private var mClusterRadius: Long? = null
|
|
32
38
|
private var mClusterMaxZoom: Long? = null
|
|
@@ -70,11 +76,55 @@ class RNMBXShapeSource(context: Context, private val mManager: RNMBXShapeSourceM
|
|
|
70
76
|
}
|
|
71
77
|
|
|
72
78
|
fun setShape(geoJSONStr: String) {
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
79
|
+
mShapeAnimator?.unsubscribe(this)
|
|
80
|
+
mShapeAnimator = null
|
|
81
|
+
|
|
82
|
+
val shapeAnimatorManager = mManager.shapeAnimatorManager
|
|
83
|
+
if (shapeAnimatorManager.isShapeAnimatorTag(geoJSONStr)) {
|
|
84
|
+
shapeAnimatorManager.get(geoJSONStr)?.let { shapeAnimator ->
|
|
85
|
+
mShapeAnimator = shapeAnimator
|
|
86
|
+
shapeAnimator.subscribe(this)
|
|
87
|
+
|
|
88
|
+
shapeUpdated(shapeAnimator.getShape())
|
|
89
|
+
}
|
|
90
|
+
} else {
|
|
91
|
+
mShape = geoJSONStr
|
|
92
|
+
if (mSource != null && mMapView != null && !mMapView!!.isDestroyed) {
|
|
93
|
+
mSource!!.data(mShape!!)
|
|
94
|
+
val result = mMap!!.getStyle()!!
|
|
95
|
+
.setStyleSourceProperty(iD!!, "data", Value.valueOf(mShape!!))
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
private fun toGeoJSONSourceData(geoJson: GeoJson): GeoJSONSourceData? {
|
|
101
|
+
return when (geoJson) {
|
|
102
|
+
is Geometry ->
|
|
103
|
+
GeoJSONSourceData(geoJson)
|
|
104
|
+
is Feature ->
|
|
105
|
+
GeoJSONSourceData(geoJson)
|
|
106
|
+
is FeatureCollection ->
|
|
107
|
+
GeoJSONSourceData(geoJson.features() ?: listOf())
|
|
108
|
+
else -> {
|
|
109
|
+
Logger.e(
|
|
110
|
+
LOG_TAG,
|
|
111
|
+
"Cannot convert shape to GeoJSONSourceData, neitthe Geometry, nor Feature or FeatureCollection: $geoJson"
|
|
112
|
+
);
|
|
113
|
+
return null
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
override fun shapeUpdated(geoJson: GeoJson) {
|
|
118
|
+
mSource?.also {
|
|
119
|
+
if (mSource != null && mMapView != null && !mMapView!!.isDestroyed) {
|
|
120
|
+
toGeoJSONSourceData(geoJson)?.let {
|
|
121
|
+
mMap?.getStyle()?.setStyleGeoJSONSourceData(iD!!,
|
|
122
|
+
"animated-shape",
|
|
123
|
+
it)
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
} ?: run {
|
|
127
|
+
mShape = geoJson.toJson()
|
|
78
128
|
}
|
|
79
129
|
}
|
|
80
130
|
|
|
@@ -13,6 +13,7 @@ import com.mapbox.bindgen.Value
|
|
|
13
13
|
import com.mapbox.maps.extension.style.expressions.generated.Expression
|
|
14
14
|
import com.rnmapbox.rnmbx.events.constants.EventKeys
|
|
15
15
|
import com.rnmapbox.rnmbx.events.constants.eventMapOf
|
|
16
|
+
import com.rnmapbox.rnmbx.shape_animators.ShapeAnimatorManager
|
|
16
17
|
import com.rnmapbox.rnmbx.utils.ExpressionParser
|
|
17
18
|
import com.rnmapbox.rnmbx.utils.Logger
|
|
18
19
|
import com.rnmapbox.rnmbx.utils.ViewTagResolver
|
|
@@ -22,7 +23,7 @@ import java.util.ArrayList
|
|
|
22
23
|
import java.util.HashMap
|
|
23
24
|
|
|
24
25
|
|
|
25
|
-
class RNMBXShapeSourceManager(private val mContext: ReactApplicationContext, val viewTagResolver: ViewTagResolver) :
|
|
26
|
+
class RNMBXShapeSourceManager(private val mContext: ReactApplicationContext, val viewTagResolver: ViewTagResolver, val shapeAnimatorManager: ShapeAnimatorManager) :
|
|
26
27
|
AbstractEventEmitter<RNMBXShapeSource>(
|
|
27
28
|
mContext
|
|
28
29
|
), RNMBXShapeSourceManagerInterface<RNMBXShapeSource> {
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
package com.rnmapbox.rnmbx.shape_animators
|
|
2
|
+
|
|
3
|
+
import com.facebook.react.bridge.ReadableArray
|
|
4
|
+
import com.rnmapbox.rnmbx.NativeRNMBXMovePointShapeAnimatorModuleSpec
|
|
5
|
+
import com.rnmapbox.rnmbx.components.annotation.RNMBXPointAnnotation
|
|
6
|
+
|
|
7
|
+
import com.facebook.react.bridge.Promise
|
|
8
|
+
import com.facebook.react.bridge.ReactApplicationContext
|
|
9
|
+
import com.facebook.react.bridge.ReactMethod
|
|
10
|
+
import com.facebook.react.module.annotations.ReactModule
|
|
11
|
+
import com.google.gson.JsonObject
|
|
12
|
+
import com.mapbox.geojson.GeoJson
|
|
13
|
+
import com.mapbox.geojson.Point
|
|
14
|
+
import com.rnmapbox.rnmbx.NativeRNMBXPointAnnotationModuleSpec
|
|
15
|
+
import com.rnmapbox.rnmbx.utils.Logger
|
|
16
|
+
import com.rnmapbox.rnmbx.utils.ViewTagResolver
|
|
17
|
+
import org.json.JSONObject
|
|
18
|
+
import java.util.Date
|
|
19
|
+
import java.util.Timer
|
|
20
|
+
import java.util.TimerTask
|
|
21
|
+
import kotlin.time.Duration
|
|
22
|
+
import kotlin.time.Duration.Companion.milliseconds
|
|
23
|
+
import kotlin.time.DurationUnit
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
/// Simple dummy animator that moves the point lng, lat by 0.01, 0.01 each second.
|
|
27
|
+
class MovePointShapeAnimator(tag: Tag, val lng: Double, val lat: Double) : ShapeAnimatorCommon(tag) {
|
|
28
|
+
override fun getAnimatedShape(timeSinceStart: Duration): Pair<GeoJson, Boolean> {
|
|
29
|
+
return Pair(Point.fromLngLat(lng + timeSinceStart.toDouble(DurationUnit.SECONDS) * 0.01, lat + timeSinceStart.toDouble(DurationUnit.SECONDS) * 0.01), true);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
@ReactModule(name = RNMBXMovePointShapeAnimatorModule.NAME)
|
|
35
|
+
class RNMBXMovePointShapeAnimatorModule(reactContext: ReactApplicationContext?, val shapeAnimatorManager: ShapeAnimatorManager) :
|
|
36
|
+
NativeRNMBXMovePointShapeAnimatorModuleSpec(reactContext) {
|
|
37
|
+
|
|
38
|
+
companion object {
|
|
39
|
+
const val LOG_TAG = "RNMBXMovePointShapeAnimatorModule"
|
|
40
|
+
const val NAME = "RNMBXMovePointShapeAnimatorModule"
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
@ReactMethod
|
|
44
|
+
override fun start(tag: Double, promise: Promise?) {
|
|
45
|
+
shapeAnimatorManager?.get(tag.toLong())?.let {
|
|
46
|
+
it.start()
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
@ReactMethod
|
|
51
|
+
override fun create(tag: Double, from: ReadableArray, promise: Promise) {
|
|
52
|
+
shapeAnimatorManager.add(MovePointShapeAnimator(tag.toLong(), from.getDouble(0), from.getDouble(1)))
|
|
53
|
+
promise.resolve(tag.toInt())
|
|
54
|
+
}
|
|
55
|
+
}
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
package com.rnmapbox.rnmbx.shape_animators
|
|
2
|
+
|
|
3
|
+
import com.facebook.react.bridge.UiThreadUtil.runOnUiThread
|
|
4
|
+
import com.mapbox.geojson.GeoJson
|
|
5
|
+
import com.rnmapbox.rnmbx.utils.Logger
|
|
6
|
+
import org.json.JSONObject
|
|
7
|
+
import java.util.Date
|
|
8
|
+
import java.util.Timer
|
|
9
|
+
import java.util.TimerTask
|
|
10
|
+
import kotlin.time.Duration
|
|
11
|
+
import kotlin.time.Duration.Companion.milliseconds
|
|
12
|
+
|
|
13
|
+
typealias Tag = Long
|
|
14
|
+
|
|
15
|
+
interface ShapeAnimationConsumer {
|
|
16
|
+
fun shapeUpdated(geoJson: GeoJson)
|
|
17
|
+
}
|
|
18
|
+
abstract class ShapeAnimator(val tag: Tag) {
|
|
19
|
+
|
|
20
|
+
abstract fun getShape(): GeoJson;
|
|
21
|
+
abstract fun start()
|
|
22
|
+
|
|
23
|
+
abstract fun subscribe(consumer: ShapeAnimationConsumer)
|
|
24
|
+
abstract fun unsubscribe(consumer: ShapeAnimationConsumer)
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
abstract class ShapeAnimatorCommon(tag: Tag): ShapeAnimator(tag) {
|
|
28
|
+
var timer: Timer? = null
|
|
29
|
+
var progress: Duration? = null
|
|
30
|
+
|
|
31
|
+
// region subscribers
|
|
32
|
+
var subscribers = mutableListOf<ShapeAnimationConsumer>()
|
|
33
|
+
|
|
34
|
+
override fun subscribe(consumer: ShapeAnimationConsumer) {
|
|
35
|
+
subscribers.add(consumer)
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
override fun unsubscribe(consumer: ShapeAnimationConsumer) {
|
|
39
|
+
subscribers.remove(consumer)
|
|
40
|
+
}
|
|
41
|
+
// endregion
|
|
42
|
+
|
|
43
|
+
override fun start() {
|
|
44
|
+
timer?.let { it.cancel() }
|
|
45
|
+
timer = null
|
|
46
|
+
|
|
47
|
+
val fps = 30.0
|
|
48
|
+
val period = (1000.0 / fps).toLong()
|
|
49
|
+
val start = Date()
|
|
50
|
+
val timer = Timer()
|
|
51
|
+
this.timer = timer
|
|
52
|
+
val animator = this
|
|
53
|
+
|
|
54
|
+
timer.schedule(object : TimerTask() {
|
|
55
|
+
override fun run() {
|
|
56
|
+
|
|
57
|
+
val now = Date()
|
|
58
|
+
val diff = now.time - start.time
|
|
59
|
+
val progress = diff.milliseconds
|
|
60
|
+
animator.progress = progress
|
|
61
|
+
|
|
62
|
+
val (shape,doContinue) = getAnimatedShape(progress)
|
|
63
|
+
if (!doContinue) {
|
|
64
|
+
timer.cancel()
|
|
65
|
+
}
|
|
66
|
+
runOnUiThread {
|
|
67
|
+
subscribers.forEach { it.shapeUpdated(shape) }
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
},0, period)
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
override fun getShape(): GeoJson {
|
|
74
|
+
return getAnimatedShape(progress ?: 0.0.milliseconds).first
|
|
75
|
+
}
|
|
76
|
+
abstract fun getAnimatedShape(timeSinceStart: Duration): Pair<GeoJson,Boolean>
|
|
77
|
+
|
|
78
|
+
}
|
|
79
|
+
class ShapeAnimatorManager {
|
|
80
|
+
private val animators = hashMapOf<Tag, ShapeAnimator>();
|
|
81
|
+
fun add(animator: ShapeAnimator) {
|
|
82
|
+
animators.put(animator.tag, animator)
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
fun isShapeAnimatorTag(shape: String): Boolean {
|
|
86
|
+
return shape.startsWith("{\"__nativeTag\":")
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
fun get(tag: String): ShapeAnimator? {
|
|
90
|
+
if (isShapeAnimatorTag(tag)) {
|
|
91
|
+
val obj = JSONObject(tag)
|
|
92
|
+
val tag = obj.getLong("__nativeTag")
|
|
93
|
+
return get(tag);
|
|
94
|
+
}
|
|
95
|
+
else {
|
|
96
|
+
return null
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
fun get(tag: Tag): ShapeAnimator? {
|
|
100
|
+
val result = animators[tag]
|
|
101
|
+
if (result == null) {
|
|
102
|
+
Logger.e(LOG_TAG, "Shape animator for tag: $tag was not found")
|
|
103
|
+
}
|
|
104
|
+
return result
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
companion object {
|
|
108
|
+
const val LOG_TAG = "RNMBXShapeAnimators"
|
|
109
|
+
}
|
|
110
|
+
}
|