react-native-maps 1.21.0-alpha.14 → 1.21.0-alpha.141
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/android/build.gradle +73 -53
- package/android/gradlew +1 -2
- package/android/src/main/RCTAppDependencyProvider.h +25 -0
- package/android/src/main/RCTAppDependencyProvider.mm +55 -0
- package/android/src/main/RCTModulesConformingToProtocolsProvider.h +18 -0
- package/android/src/main/RCTModulesConformingToProtocolsProvider.mm +33 -0
- package/android/src/main/RCTThirdPartyComponentsProvider.h +16 -0
- package/android/src/main/RCTThirdPartyComponentsProvider.mm +28 -0
- package/android/src/main/ReactAppDependencyProvider.podspec +34 -0
- package/android/src/main/java/com/facebook/fbreact/specs/NativeAirMapsModuleSpec.java +63 -0
- package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsCalloutManagerDelegate.java +35 -0
- package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsCalloutManagerInterface.java +17 -0
- package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsCircleManagerDelegate.java +49 -0
- package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsCircleManagerInterface.java +23 -0
- package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsGooglePolygonManagerDelegate.java +49 -0
- package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsGooglePolygonManagerInterface.java +23 -0
- package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsMapViewManagerDelegate.java +209 -0
- package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsMapViewManagerInterface.java +74 -0
- package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsMarkerManagerDelegate.java +104 -0
- package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsMarkerManagerInterface.java +39 -0
- package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsOverlayManagerDelegate.java +45 -0
- package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsOverlayManagerInterface.java +22 -0
- package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsPolylineManagerDelegate.java +58 -0
- package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsPolylineManagerInterface.java +26 -0
- package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsUrlTileManagerDelegate.java +62 -0
- package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsUrlTileManagerInterface.java +27 -0
- package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsWMSTileManagerDelegate.java +56 -0
- package/android/src/main/java/com/facebook/react/viewmanagers/RNMapsWMSTileManagerInterface.java +25 -0
- package/android/src/main/java/com/rnmaps/fabric/CalloutManager.java +77 -0
- package/android/src/main/java/com/rnmaps/fabric/CircleManager.java +94 -0
- package/android/src/main/java/com/rnmaps/fabric/JSONUtil.java +86 -0
- package/android/src/main/java/com/rnmaps/fabric/MapViewManager.java +624 -0
- package/android/src/main/java/com/rnmaps/fabric/MarkerManager.java +258 -0
- package/android/src/main/java/com/rnmaps/fabric/NativeAirMapsModule.java +235 -2
- package/android/src/main/java/com/rnmaps/fabric/OverlayManager.java +101 -0
- package/android/src/main/java/com/rnmaps/fabric/PolygonManager.java +89 -0
- package/android/src/main/java/com/rnmaps/fabric/PolylineManager.java +121 -0
- package/android/src/main/java/com/rnmaps/fabric/UrlTileManager.java +124 -0
- package/android/src/main/java/com/rnmaps/fabric/WMSTileManager.java +114 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnCalloutPressEvent.java +25 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnDeselectEvent.java +28 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnDoublePressEvent.java +27 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnDragEndEvent.java +28 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnDragEvent.java +28 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnDragStartEvent.java +28 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnIndoorBuildingFocusedEvent.java +28 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnIndoorLevelActivatedEvent.java +28 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnKmlReadyEvent.java +28 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnLongPressEvent.java +28 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnMapLoadedEvent.java +29 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnMapReadyEvent.java +29 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnMarkerDeselectEvent.java +28 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnMarkerDragEndEvent.java +28 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnMarkerDragEvent.java +28 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnMarkerDragStartEvent.java +28 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnMarkerPressEvent.java +28 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnMarkerSelectEvent.java +28 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnPanDragEvent.java +28 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnPoiClickEvent.java +27 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnPressEvent.java +27 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnRegionChangeCompleteEvent.java +30 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnRegionChangeEvent.java +48 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnRegionChangeStartEvent.java +33 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnSelectEvent.java +28 -0
- package/android/src/main/java/com/rnmaps/fabric/event/OnUserLocationChangeEvent.java +28 -0
- package/android/src/main/java/com/rnmaps/maps/MapAirModulePackage.java +55 -3
- package/android/src/main/java/com/rnmaps/maps/MapCallout.java +18 -0
- package/android/src/main/java/com/rnmaps/maps/MapCircle.java +24 -0
- package/android/src/main/java/com/rnmaps/maps/MapManager.java +14 -14
- package/android/src/main/java/com/rnmaps/maps/MapMarker.java +637 -556
- package/android/src/main/java/com/rnmaps/maps/MapMarkerManager.java +3 -3
- package/android/src/main/java/com/rnmaps/maps/MapModule.java +206 -206
- package/android/src/main/java/com/rnmaps/maps/MapOverlay.java +247 -151
- package/android/src/main/java/com/rnmaps/maps/MapOverlayManager.java +23 -1
- package/android/src/main/java/com/rnmaps/maps/MapPolygon.java +31 -1
- package/android/src/main/java/com/rnmaps/maps/MapPolyline.java +207 -141
- package/android/src/main/java/com/rnmaps/maps/MapPolylineManager.java +1 -16
- package/android/src/main/java/com/rnmaps/maps/MapUrlTile.java +18 -18
- package/android/src/main/java/com/rnmaps/maps/MapUrlTileManager.java +10 -14
- package/android/src/main/java/com/rnmaps/maps/MapView.java +1649 -1336
- package/android/src/main/java/com/rnmaps/maps/MapWMSTile.java +3 -3
- package/android/src/main/java/com/rnmaps/maps/MapWMSTileManager.java +10 -10
- package/android/src/main/jni/CMakeLists.txt +36 -0
- package/android/src/main/jni/RNMapsSpecs-generated.cpp +68 -0
- package/android/src/main/jni/RNMapsSpecs.h +31 -0
- package/android/src/main/jni/react/renderer/components/RNMapsSpecs/ComponentDescriptors.cpp +31 -0
- package/android/src/main/jni/react/renderer/components/RNMapsSpecs/ComponentDescriptors.h +33 -0
- package/android/src/main/jni/react/renderer/components/RNMapsSpecs/EventEmitters.cpp +979 -0
- package/android/src/main/jni/react/renderer/components/RNMapsSpecs/EventEmitters.h +860 -0
- package/android/src/main/jni/react/renderer/components/RNMapsSpecs/Props.cpp +227 -0
- package/android/src/main/jni/react/renderer/components/RNMapsSpecs/Props.h +1297 -0
- package/android/src/main/jni/react/renderer/components/RNMapsSpecs/RNMapsSpecsJSI-generated.cpp +74 -0
- package/android/src/main/jni/react/renderer/components/RNMapsSpecs/RNMapsSpecsJSI.h +268 -0
- package/android/src/main/jni/react/renderer/components/RNMapsSpecs/ShadowNodes.cpp +26 -0
- package/android/src/main/jni/react/renderer/components/RNMapsSpecs/ShadowNodes.h +131 -0
- package/android/src/main/jni/react/renderer/components/RNMapsSpecs/States.cpp +16 -0
- package/android/src/main/jni/react/renderer/components/RNMapsSpecs/States.h +137 -0
- package/ios/AirGoogleMaps/AIRGoogleMap.h +10 -11
- package/ios/AirGoogleMaps/AIRGoogleMap.m +104 -71
- package/ios/AirGoogleMaps/AIRGoogleMapCircle.m +23 -11
- package/ios/AirGoogleMaps/AIRGoogleMapManager.h +1 -0
- package/ios/AirGoogleMaps/AIRGoogleMapManager.m +254 -250
- package/ios/AirGoogleMaps/AIRGoogleMapMarker.m +6 -3
- package/ios/AirGoogleMaps/AIRGoogleMapMarkerManager.m +1 -1
- package/ios/AirGoogleMaps/AIRGoogleMapPolygon.m +3 -0
- package/ios/AirGoogleMaps/AIRGoogleMapPolyline.h +0 -1
- package/ios/AirGoogleMaps/AIRGoogleMapPolyline.m +0 -7
- package/ios/AirGoogleMaps/AIRGoogleMapUrlTile.m +2 -2
- package/ios/AirGoogleMaps/AIRGoogleMapWMSTile.h +1 -1
- package/ios/AirGoogleMaps/AIRGoogleMapWMSTile.m +4 -4
- package/ios/AirGoogleMaps/RNMapsGoogleMapView.h +1 -1
- package/ios/AirGoogleMaps/RNMapsGoogleMapView.mm +123 -43
- package/ios/AirGoogleMaps/RNMapsGoogleMapViewManager.mm +16 -1
- package/ios/AirGoogleMaps/RNMapsGooglePolygonView.h +26 -0
- package/ios/AirGoogleMaps/RNMapsGooglePolygonView.mm +217 -0
- package/ios/AirGoogleMaps/RNMapsGooglePolygonViewManager.mm +26 -0
- package/ios/AirMaps/AIRMap.h +8 -9
- package/ios/AirMaps/AIRMap.m +222 -239
- package/ios/AirMaps/AIRMapManager.m +10 -7
- package/ios/AirMaps/AIRMapMarker.h +1 -0
- package/ios/AirMaps/AIRMapMarker.m +142 -67
- package/ios/AirMaps/AIRMapOverlay.m +2 -2
- package/ios/AirMaps/Callout/SMCalloutView.m +1 -1
- package/ios/AirMaps/FabricPlaceholders/PlaceHolderGoogleMapView.h +28 -0
- package/ios/AirMaps/FabricPlaceholders/PlaceHolderGoogleMapView.mm +68 -0
- package/ios/AirMaps/FabricPlaceholders/PlaceHolderPolygonView.h +25 -0
- package/ios/AirMaps/FabricPlaceholders/PlaceHolderPolygonView.mm +43 -0
- package/ios/AirMaps/RNMapsAirModule.h +1 -1
- package/ios/AirMaps/RNMapsAirModule.mm +4 -3
- package/ios/AirMaps/RNMapsDefines.h +1 -0
- package/ios/AirMaps/RNMapsMapView.h +1 -1
- package/ios/AirMaps/RNMapsMapView.mm +119 -95
- package/ios/AirMaps/RNMapsMapViewManager.mm +19 -1
- package/ios/AirMaps/RNMapsMarkerView.h +24 -0
- package/ios/AirMaps/RNMapsMarkerView.mm +430 -0
- package/ios/AirMaps/RNMapsMarkerViewManager.mm +28 -0
- package/ios/AirMaps.xcodeproj/project.pbxproj +20 -0
- package/ios/generated/RCTAppDependencyProvider.h +25 -0
- package/ios/generated/RCTAppDependencyProvider.mm +55 -0
- package/ios/generated/RCTModulesConformingToProtocolsProvider.h +18 -0
- package/ios/generated/RCTModulesConformingToProtocolsProvider.mm +33 -0
- package/ios/generated/RCTThirdPartyComponentsProvider.h +16 -0
- package/ios/generated/RCTThirdPartyComponentsProvider.mm +26 -0
- package/ios/{AirMaps → generated}/RNMapsAirModuleDelegate.h +2 -2
- package/ios/generated/RNMapsSpecs/ComponentDescriptors.cpp +29 -0
- package/ios/generated/RNMapsSpecs/ComponentDescriptors.h +31 -0
- package/ios/generated/RNMapsSpecs/EventEmitters.cpp +977 -0
- package/ios/generated/RNMapsSpecs/EventEmitters.h +846 -0
- package/ios/generated/RNMapsSpecs/Props.cpp +194 -0
- package/ios/generated/RNMapsSpecs/Props.h +1224 -0
- package/ios/generated/RNMapsSpecs/RCTComponentViewHelpers.h +591 -0
- package/ios/generated/RNMapsSpecs/RNMapsSpecs-generated.mm +92 -0
- package/ios/generated/RNMapsSpecs/RNMapsSpecs.h +137 -0
- package/ios/generated/RNMapsSpecs/ShadowNodes.cpp +24 -0
- package/ios/generated/RNMapsSpecs/ShadowNodes.h +109 -0
- package/ios/generated/RNMapsSpecs/States.cpp +16 -0
- package/ios/generated/RNMapsSpecs/States.h +113 -0
- package/ios/generated/RNMapsSpecsJSI-generated.cpp +74 -0
- package/ios/generated/RNMapsSpecsJSI.h +268 -0
- package/ios/generated/ReactAppDependencyProvider.podspec +34 -0
- package/package.json +26 -19
- package/react-native-google-maps.podspec +26 -0
- package/react-native-maps-generated.podspec +31 -0
- package/react-native-maps.podspec +55 -15
- package/react-native.config.js +16 -0
- package/src/AnimatedRegion.ts +169 -0
- package/src/Geojson.tsx +541 -0
- package/src/MapCallout.tsx +77 -0
- package/src/MapCalloutSubview.tsx +64 -0
- package/src/MapCircle.tsx +162 -0
- package/src/MapHeatmap.tsx +125 -0
- package/src/MapLocalTile.tsx +60 -0
- package/src/MapMarker.tsx +531 -0
- package/src/MapMarkerNativeComponent.ts +51 -0
- package/src/MapOverlay.tsx +178 -0
- package/src/MapPolygon.tsx +188 -0
- package/src/MapPolygon.types.ts +25 -0
- package/src/MapPolyline.tsx +215 -0
- package/src/MapUrlTile.tsx +169 -0
- package/src/MapView.tsx +1230 -0
- package/src/MapView.types.ts +212 -0
- package/src/MapView.web.ts +2 -0
- package/src/MapViewNativeComponent.ts +86 -0
- package/src/MapWMSTile.tsx +148 -0
- package/src/ProviderConstants.ts +2 -0
- package/src/createFabricMap.tsx +253 -0
- package/src/decorateMapComponent.ts +227 -0
- package/src/fixImageProp.ts +17 -0
- package/src/index.ts +52 -0
- package/src/sharedTypes.ts +101 -0
- package/src/specs/NativeAirMapsModule.ts +36 -0
- package/src/specs/NativeComponentCallout.ts +63 -0
- package/src/specs/NativeComponentCircle.ts +93 -0
- package/src/specs/NativeComponentGoogleMapView.ts +922 -0
- package/src/specs/NativeComponentGooglePolygon.ts +94 -0
- package/src/specs/NativeComponentMapView.ts +1100 -0
- package/src/specs/NativeComponentMarker.ts +326 -0
- package/src/specs/NativeComponentOverlay.ts +98 -0
- package/src/specs/NativeComponentPolyline.ts +124 -0
- package/src/specs/NativeComponentUrlTile.ts +128 -0
- package/src/specs/NativeComponentWMSTile.ts +107 -0
- package/lib/AnimatedRegion.d.ts +0 -19
- package/lib/AnimatedRegion.js +0 -134
- package/lib/Geojson.d.ts +0 -204
- package/lib/Geojson.js +0 -166
- package/lib/MapCallout.d.ts +0 -40
- package/lib/MapCallout.js +0 -51
- package/lib/MapCalloutSubview.d.ts +0 -34
- package/lib/MapCalloutSubview.js +0 -48
- package/lib/MapCircle.d.ts +0 -117
- package/lib/MapCircle.js +0 -53
- package/lib/MapHeatmap.d.ts +0 -78
- package/lib/MapHeatmap.js +0 -59
- package/lib/MapLocalTile.d.ts +0 -35
- package/lib/MapLocalTile.js +0 -44
- package/lib/MapMarker.d.ts +0 -309
- package/lib/MapMarker.js +0 -116
- package/lib/MapMarkerNativeComponent.d.ts +0 -15
- package/lib/MapMarkerNativeComponent.js +0 -17
- package/lib/MapOverlay.d.ts +0 -87
- package/lib/MapOverlay.js +0 -63
- package/lib/MapPolygon.d.ts +0 -140
- package/lib/MapPolygon.js +0 -53
- package/lib/MapPolygon.types.d.ts +0 -18
- package/lib/MapPolygon.types.js +0 -2
- package/lib/MapPolyline.d.ts +0 -156
- package/lib/MapPolyline.js +0 -53
- package/lib/MapUrlTile.d.ts +0 -134
- package/lib/MapUrlTile.js +0 -44
- package/lib/MapView.d.ts +0 -715
- package/lib/MapView.js +0 -447
- package/lib/MapView.types.d.ts +0 -161
- package/lib/MapView.types.js +0 -2
- package/lib/MapView.web.d.ts +0 -1
- package/lib/MapView.web.js +0 -9
- package/lib/MapViewNativeComponent.d.ts +0 -18
- package/lib/MapViewNativeComponent.js +0 -19
- package/lib/MapWMSTile.d.ts +0 -116
- package/lib/MapWMSTile.js +0 -44
- package/lib/ProviderConstants.d.ts +0 -2
- package/lib/ProviderConstants.js +0 -5
- package/lib/createFabricMap.d.ts +0 -23
- package/lib/createFabricMap.js +0 -175
- package/lib/decorateMapComponent.d.ts +0 -36
- package/lib/decorateMapComponent.js +0 -80
- package/lib/index.d.ts +0 -38
- package/lib/index.js +0 -81
- package/lib/sharedTypes.d.ts +0 -81
- package/lib/sharedTypes.js +0 -2
- package/lib/sharedTypesInternal.js +0 -2
- package/lib/specs/NativeAirMapsModule.d.ts +0 -31
- package/lib/specs/NativeAirMapsModule.js +0 -4
- package/lib/specs/NativeComponentGoogleMapView.d.ts +0 -713
- package/lib/specs/NativeComponentGoogleMapView.js +0 -21
- package/lib/specs/NativeComponentMapView.d.ts +0 -855
- package/lib/specs/NativeComponentMapView.js +0 -21
- /package/ios/{AirMaps → generated}/RNMapsHostVewDelegate.h +0 -0
- /package/{lib/sharedTypesInternal.d.ts → src/sharedTypesInternal.ts} +0 -0
|
@@ -4,161 +4,227 @@ import android.content.Context;
|
|
|
4
4
|
|
|
5
5
|
import com.facebook.react.bridge.ReadableArray;
|
|
6
6
|
import com.facebook.react.bridge.ReadableMap;
|
|
7
|
+
import com.facebook.react.common.MapBuilder;
|
|
8
|
+
import com.google.android.gms.maps.model.ButtCap;
|
|
7
9
|
import com.google.android.gms.maps.model.Cap;
|
|
8
10
|
import com.google.android.gms.maps.model.Dash;
|
|
9
11
|
import com.google.android.gms.maps.model.Dot;
|
|
10
12
|
import com.google.android.gms.maps.model.Gap;
|
|
13
|
+
import com.google.android.gms.maps.model.JointType;
|
|
11
14
|
import com.google.android.gms.maps.model.LatLng;
|
|
12
15
|
import com.google.android.gms.maps.model.PatternItem;
|
|
13
16
|
import com.google.android.gms.maps.model.Polyline;
|
|
14
17
|
import com.google.android.gms.maps.model.PolylineOptions;
|
|
15
18
|
import com.google.android.gms.maps.model.RoundCap;
|
|
19
|
+
import com.google.android.gms.maps.model.SquareCap;
|
|
20
|
+
import com.google.android.gms.maps.model.StrokeStyle;
|
|
21
|
+
import com.google.android.gms.maps.model.StyleSpan;
|
|
16
22
|
import com.google.maps.android.collections.PolylineManager;
|
|
23
|
+
import com.rnmaps.fabric.event.OnPressEvent;
|
|
17
24
|
|
|
18
25
|
import java.util.ArrayList;
|
|
19
26
|
import java.util.List;
|
|
27
|
+
import java.util.Map;
|
|
20
28
|
|
|
21
29
|
public class MapPolyline extends MapFeature {
|
|
22
30
|
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
31
|
+
private PolylineOptions polylineOptions;
|
|
32
|
+
private Polyline polyline;
|
|
33
|
+
|
|
34
|
+
private List<LatLng> coordinates;
|
|
35
|
+
private int color;
|
|
36
|
+
private float width;
|
|
37
|
+
private boolean tappable;
|
|
38
|
+
private boolean geodesic;
|
|
39
|
+
private float zIndex;
|
|
40
|
+
private Cap lineCap = new RoundCap();
|
|
41
|
+
private ReadableArray patternValues;
|
|
42
|
+
private List<PatternItem> pattern;
|
|
43
|
+
|
|
44
|
+
public MapPolyline(Context context) {
|
|
45
|
+
super(context);
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
public void setCoordinates(ReadableArray coordinates) {
|
|
49
|
+
this.coordinates = new ArrayList<>(coordinates.size());
|
|
50
|
+
for (int i = 0; i < coordinates.size(); i++) {
|
|
51
|
+
ReadableMap coordinate = coordinates.getMap(i);
|
|
52
|
+
this.coordinates.add(i,
|
|
53
|
+
new LatLng(coordinate.getDouble("latitude"), coordinate.getDouble("longitude")));
|
|
54
|
+
}
|
|
55
|
+
if (polyline != null) {
|
|
56
|
+
polyline.setPoints(this.coordinates);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
public void setColor(int color) {
|
|
61
|
+
this.color = color;
|
|
62
|
+
if (polyline != null) {
|
|
63
|
+
polyline.setColor(color);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
public void setStrokeColors(ReadableArray strokeColors) {
|
|
68
|
+
List<StyleSpan> spans = new ArrayList<>();
|
|
69
|
+
for (int i = 0; i < strokeColors.size(); i++) {
|
|
70
|
+
StrokeStyle stroke;
|
|
71
|
+
|
|
72
|
+
if (i == 0) {
|
|
73
|
+
stroke = StrokeStyle.colorBuilder(strokeColors.getInt(i)).build();
|
|
74
|
+
} else {
|
|
75
|
+
stroke = StrokeStyle.gradientBuilder(strokeColors.getInt(i - 1), strokeColors.getInt(i)).build();
|
|
76
|
+
}
|
|
77
|
+
spans.add(new StyleSpan(stroke));
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
polyline.setSpans(spans);
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
public void setWidth(float width) {
|
|
84
|
+
this.width = width;
|
|
85
|
+
if (polyline != null) {
|
|
86
|
+
polyline.setWidth(width);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
public void setZIndex(float zIndex) {
|
|
91
|
+
this.zIndex = zIndex;
|
|
92
|
+
if (polyline != null) {
|
|
93
|
+
polyline.setZIndex(zIndex);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
public void setTappable(boolean tapabble) {
|
|
98
|
+
this.tappable = tapabble;
|
|
99
|
+
if (polyline != null) {
|
|
100
|
+
polyline.setClickable(tappable);
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
public void setGeodesic(boolean geodesic) {
|
|
105
|
+
this.geodesic = geodesic;
|
|
106
|
+
if (polyline != null) {
|
|
107
|
+
polyline.setGeodesic(geodesic);
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
public void setLineCap(Cap cap) {
|
|
112
|
+
this.lineCap = cap;
|
|
113
|
+
if (polyline != null) {
|
|
114
|
+
polyline.setStartCap(cap);
|
|
115
|
+
polyline.setEndCap(cap);
|
|
116
|
+
}
|
|
117
|
+
this.applyPattern();
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
public void setLineDashPattern(ReadableArray patternValues) {
|
|
121
|
+
this.patternValues = patternValues;
|
|
122
|
+
this.applyPattern();
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
private void applyPattern() {
|
|
126
|
+
if (patternValues == null) {
|
|
127
|
+
return;
|
|
128
|
+
}
|
|
129
|
+
this.pattern = new ArrayList<>(patternValues.size());
|
|
130
|
+
for (int i = 0; i < patternValues.size(); i++) {
|
|
131
|
+
float patternValue = (float) patternValues.getDouble(i);
|
|
132
|
+
boolean isGap = i % 2 != 0;
|
|
133
|
+
if (isGap) {
|
|
134
|
+
this.pattern.add(new Gap(patternValue));
|
|
135
|
+
} else {
|
|
136
|
+
PatternItem patternItem;
|
|
137
|
+
boolean isLineCapRound = this.lineCap instanceof RoundCap;
|
|
138
|
+
if (isLineCapRound) {
|
|
139
|
+
patternItem = new Dot();
|
|
140
|
+
} else {
|
|
141
|
+
patternItem = new Dash(patternValue);
|
|
142
|
+
}
|
|
143
|
+
this.pattern.add(patternItem);
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
if (polyline != null) {
|
|
147
|
+
polyline.setPattern(this.pattern);
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
public PolylineOptions getPolylineOptions() {
|
|
152
|
+
if (polylineOptions == null) {
|
|
153
|
+
polylineOptions = createPolylineOptions();
|
|
154
|
+
}
|
|
155
|
+
return polylineOptions;
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
private PolylineOptions createPolylineOptions() {
|
|
159
|
+
PolylineOptions options = new PolylineOptions();
|
|
160
|
+
options.addAll(coordinates);
|
|
161
|
+
options.color(color);
|
|
162
|
+
options.width(width);
|
|
163
|
+
options.geodesic(geodesic);
|
|
164
|
+
options.zIndex(zIndex);
|
|
165
|
+
options.startCap(lineCap);
|
|
166
|
+
options.endCap(lineCap);
|
|
167
|
+
options.pattern(this.pattern);
|
|
168
|
+
return options;
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
@Override
|
|
172
|
+
public Object getFeature() {
|
|
173
|
+
return polyline;
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
@Override
|
|
177
|
+
public void addToMap(Object collection) {
|
|
178
|
+
PolylineManager.Collection polylineCollection = (PolylineManager.Collection) collection;
|
|
179
|
+
polyline = polylineCollection.addPolyline(getPolylineOptions());
|
|
180
|
+
polyline.setClickable(this.tappable);
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
@Override
|
|
184
|
+
public void removeFromMap(Object collection) {
|
|
185
|
+
PolylineManager.Collection polylineCollection = (PolylineManager.Collection) collection;
|
|
186
|
+
polylineCollection.remove(polyline);
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
public void setLineCap(String lineCap) {
|
|
190
|
+
Cap cap;
|
|
191
|
+
switch (lineCap) {
|
|
192
|
+
case "round":
|
|
193
|
+
cap = new RoundCap();
|
|
194
|
+
break;
|
|
195
|
+
case "square":
|
|
196
|
+
cap = new SquareCap();
|
|
197
|
+
break;
|
|
198
|
+
case "butt":
|
|
199
|
+
default:
|
|
200
|
+
cap = new ButtCap();
|
|
201
|
+
break;
|
|
202
|
+
}
|
|
203
|
+
setLineCap(cap);
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
public static Map<String, Object> getExportedCustomBubblingEventTypeConstants() {
|
|
207
|
+
MapBuilder.Builder<String, Object> builder = MapBuilder.builder();
|
|
208
|
+
builder.put(OnPressEvent.EVENT_NAME, MapBuilder.of("registrationName", OnPressEvent.EVENT_NAME));
|
|
209
|
+
return builder.build();
|
|
210
|
+
}
|
|
211
|
+
|
|
212
|
+
public void setLineJoin(String lineJoin) {
|
|
213
|
+
int type;
|
|
214
|
+
switch (lineJoin) {
|
|
215
|
+
case "round":
|
|
216
|
+
type = JointType.ROUND;
|
|
217
|
+
break;
|
|
218
|
+
case "bevel":
|
|
219
|
+
type = JointType.BEVEL;
|
|
220
|
+
break;
|
|
221
|
+
case "miter":
|
|
222
|
+
default:
|
|
223
|
+
type = JointType.DEFAULT;
|
|
224
|
+
break;
|
|
225
|
+
}
|
|
226
|
+
if (polyline != null) {
|
|
227
|
+
polyline.setJointType(type);
|
|
228
|
+
}
|
|
229
|
+
}
|
|
164
230
|
}
|
|
@@ -74,22 +74,7 @@ public class MapPolylineManager extends ViewGroupManager<MapPolyline> {
|
|
|
74
74
|
|
|
75
75
|
@ReactProp(name = "lineCap")
|
|
76
76
|
public void setlineCap(MapPolyline view, String lineCap) {
|
|
77
|
-
|
|
78
|
-
switch (lineCap) {
|
|
79
|
-
case "butt":
|
|
80
|
-
cap = new ButtCap();
|
|
81
|
-
break;
|
|
82
|
-
case "round":
|
|
83
|
-
cap = new RoundCap();
|
|
84
|
-
break;
|
|
85
|
-
case "square":
|
|
86
|
-
cap = new SquareCap();
|
|
87
|
-
break;
|
|
88
|
-
default:
|
|
89
|
-
cap = new RoundCap();
|
|
90
|
-
break;
|
|
91
|
-
}
|
|
92
|
-
view.setLineCap(cap);
|
|
77
|
+
view.setLineCap(lineCap);
|
|
93
78
|
}
|
|
94
79
|
|
|
95
80
|
@ReactProp(name = "lineDashPattern")
|
|
@@ -18,14 +18,14 @@ public class MapUrlTile extends MapFeature {
|
|
|
18
18
|
|
|
19
19
|
protected String urlTemplate;
|
|
20
20
|
protected float zIndex;
|
|
21
|
-
protected
|
|
22
|
-
protected
|
|
23
|
-
protected
|
|
21
|
+
protected int maximumZ;
|
|
22
|
+
protected int maximumNativeZ = 100;
|
|
23
|
+
protected int minimumZ;
|
|
24
24
|
protected boolean flipY = false;
|
|
25
|
-
protected
|
|
25
|
+
protected int tileSize = 256;
|
|
26
26
|
protected boolean doubleTileSize = false;
|
|
27
27
|
protected String tileCachePath;
|
|
28
|
-
protected
|
|
28
|
+
protected int tileCacheMaxAge;
|
|
29
29
|
protected boolean offlineMode = false;
|
|
30
30
|
protected float opacity = 1;
|
|
31
31
|
protected Context context;
|
|
@@ -53,20 +53,20 @@ public class MapUrlTile extends MapFeature {
|
|
|
53
53
|
}
|
|
54
54
|
}
|
|
55
55
|
|
|
56
|
-
public void setMaximumZ(
|
|
56
|
+
public void setMaximumZ(int maximumZ) {
|
|
57
57
|
this.maximumZ = maximumZ;
|
|
58
58
|
if (tileProvider != null) {
|
|
59
|
-
tileProvider.setMaximumZ(
|
|
59
|
+
tileProvider.setMaximumZ(maximumZ);
|
|
60
60
|
}
|
|
61
61
|
if (tileOverlay != null) {
|
|
62
62
|
tileOverlay.clearTileCache();
|
|
63
63
|
}
|
|
64
64
|
}
|
|
65
65
|
|
|
66
|
-
public void setMaximumNativeZ(
|
|
66
|
+
public void setMaximumNativeZ(int maximumNativeZ) {
|
|
67
67
|
this.maximumNativeZ = maximumNativeZ;
|
|
68
68
|
if (tileProvider != null) {
|
|
69
|
-
tileProvider.setMaximumNativeZ(
|
|
69
|
+
tileProvider.setMaximumNativeZ(maximumNativeZ);
|
|
70
70
|
}
|
|
71
71
|
setCustomTileProviderMode();
|
|
72
72
|
if (tileOverlay != null) {
|
|
@@ -74,10 +74,10 @@ public class MapUrlTile extends MapFeature {
|
|
|
74
74
|
}
|
|
75
75
|
}
|
|
76
76
|
|
|
77
|
-
public void setMinimumZ(
|
|
77
|
+
public void setMinimumZ(int minimumZ) {
|
|
78
78
|
this.minimumZ = minimumZ;
|
|
79
79
|
if (tileProvider != null) {
|
|
80
|
-
tileProvider.setMinimumZ(
|
|
80
|
+
tileProvider.setMinimumZ(minimumZ);
|
|
81
81
|
}
|
|
82
82
|
if (tileOverlay != null) {
|
|
83
83
|
tileOverlay.clearTileCache();
|
|
@@ -105,10 +105,10 @@ public class MapUrlTile extends MapFeature {
|
|
|
105
105
|
}
|
|
106
106
|
}
|
|
107
107
|
|
|
108
|
-
public void setTileSize(
|
|
108
|
+
public void setTileSize(int tileSize) {
|
|
109
109
|
this.tileSize = tileSize;
|
|
110
110
|
if (tileProvider != null) {
|
|
111
|
-
tileProvider.setTileSize(
|
|
111
|
+
tileProvider.setTileSize(tileSize);
|
|
112
112
|
}
|
|
113
113
|
if (tileOverlay != null) {
|
|
114
114
|
tileOverlay.clearTileCache();
|
|
@@ -136,10 +136,10 @@ public class MapUrlTile extends MapFeature {
|
|
|
136
136
|
}
|
|
137
137
|
}
|
|
138
138
|
|
|
139
|
-
public void setTileCacheMaxAge(
|
|
139
|
+
public void setTileCacheMaxAge(int tileCacheMaxAge) {
|
|
140
140
|
this.tileCacheMaxAge = tileCacheMaxAge;
|
|
141
141
|
if (tileProvider != null) {
|
|
142
|
-
tileProvider.setTileCacheMaxAge(
|
|
142
|
+
tileProvider.setTileCacheMaxAge(tileCacheMaxAge);
|
|
143
143
|
}
|
|
144
144
|
if (tileOverlay != null) {
|
|
145
145
|
tileOverlay.clearTileCache();
|
|
@@ -176,7 +176,7 @@ public class MapUrlTile extends MapFeature {
|
|
|
176
176
|
if (tileProvider != null) {
|
|
177
177
|
tileProvider.setCustomMode();
|
|
178
178
|
}
|
|
179
|
-
}
|
|
179
|
+
}
|
|
180
180
|
|
|
181
181
|
protected TileOverlayOptions createTileOverlayOptions() {
|
|
182
182
|
Log.d("urlTile ", "creating TileProvider");
|
|
@@ -184,8 +184,8 @@ public class MapUrlTile extends MapFeature {
|
|
|
184
184
|
options.zIndex(zIndex);
|
|
185
185
|
options.transparency(1 - this.opacity);
|
|
186
186
|
this.tileProvider = new MapTileProvider((int)this.tileSize, this.doubleTileSize, this.urlTemplate,
|
|
187
|
-
|
|
188
|
-
|
|
187
|
+
this.maximumZ, this.maximumNativeZ, this.minimumZ, this.flipY, this.tileCachePath,
|
|
188
|
+
this.tileCacheMaxAge, this.offlineMode, this.context, this.customTileProviderNeeded);
|
|
189
189
|
options.tileProvider(this.tileProvider);
|
|
190
190
|
return options;
|
|
191
191
|
}
|
|
@@ -13,10 +13,6 @@ public class MapUrlTileManager extends ViewGroupManager<MapUrlTile> {
|
|
|
13
13
|
|
|
14
14
|
public MapUrlTileManager(ReactApplicationContext reactContext) {
|
|
15
15
|
super();
|
|
16
|
-
DisplayMetrics metrics = new DisplayMetrics();
|
|
17
|
-
((WindowManager) reactContext.getSystemService(Context.WINDOW_SERVICE))
|
|
18
|
-
.getDefaultDisplay()
|
|
19
|
-
.getRealMetrics(metrics);
|
|
20
16
|
}
|
|
21
17
|
|
|
22
18
|
@Override
|
|
@@ -39,18 +35,18 @@ public class MapUrlTileManager extends ViewGroupManager<MapUrlTile> {
|
|
|
39
35
|
view.setZIndex(zIndex);
|
|
40
36
|
}
|
|
41
37
|
|
|
42
|
-
@ReactProp(name = "minimumZ",
|
|
43
|
-
public void setMinimumZ(MapUrlTile view,
|
|
38
|
+
@ReactProp(name = "minimumZ", defaultInt = 0)
|
|
39
|
+
public void setMinimumZ(MapUrlTile view, int minimumZ) {
|
|
44
40
|
view.setMinimumZ(minimumZ);
|
|
45
41
|
}
|
|
46
42
|
|
|
47
|
-
@ReactProp(name = "maximumZ",
|
|
48
|
-
public void setMaximumZ(MapUrlTile view,
|
|
43
|
+
@ReactProp(name = "maximumZ", defaultInt = 100)
|
|
44
|
+
public void setMaximumZ(MapUrlTile view, int maximumZ) {
|
|
49
45
|
view.setMaximumZ(maximumZ);
|
|
50
46
|
}
|
|
51
47
|
|
|
52
|
-
@ReactProp(name = "maximumNativeZ",
|
|
53
|
-
public void setMaximumNativeZ(MapUrlTile view,
|
|
48
|
+
@ReactProp(name = "maximumNativeZ", defaultInt = 100)
|
|
49
|
+
public void setMaximumNativeZ(MapUrlTile view, int maximumNativeZ) {
|
|
54
50
|
view.setMaximumNativeZ(maximumNativeZ);
|
|
55
51
|
}
|
|
56
52
|
|
|
@@ -59,8 +55,8 @@ public class MapUrlTileManager extends ViewGroupManager<MapUrlTile> {
|
|
|
59
55
|
view.setFlipY(flipY);
|
|
60
56
|
}
|
|
61
57
|
|
|
62
|
-
@ReactProp(name = "tileSize",
|
|
63
|
-
public void setTileSize(MapUrlTile view,
|
|
58
|
+
@ReactProp(name = "tileSize", defaultInt = 256)
|
|
59
|
+
public void setTileSize(MapUrlTile view, int tileSize) {
|
|
64
60
|
view.setTileSize(tileSize);
|
|
65
61
|
}
|
|
66
62
|
|
|
@@ -74,8 +70,8 @@ public class MapUrlTileManager extends ViewGroupManager<MapUrlTile> {
|
|
|
74
70
|
view.setTileCachePath(tileCachePath);
|
|
75
71
|
}
|
|
76
72
|
|
|
77
|
-
@ReactProp(name = "tileCacheMaxAge",
|
|
78
|
-
public void setTileCacheMaxAge(MapUrlTile view,
|
|
73
|
+
@ReactProp(name = "tileCacheMaxAge", defaultInt = 0)
|
|
74
|
+
public void setTileCacheMaxAge(MapUrlTile view, int tileCacheMaxAge) {
|
|
79
75
|
view.setTileCacheMaxAge(tileCacheMaxAge);
|
|
80
76
|
}
|
|
81
77
|
|