react-native-maps 1.21.0-alpha.8 → 1.21.0-alpha.80
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 +45 -14
- package/android/generated/RCTAppDependencyProvider.h +25 -0
- package/android/generated/RCTAppDependencyProvider.mm +55 -0
- package/android/generated/RCTModulesConformingToProtocolsProvider.h +18 -0
- package/android/generated/RCTModulesConformingToProtocolsProvider.mm +33 -0
- package/android/generated/RCTThirdPartyComponentsProvider.h +16 -0
- package/android/generated/RCTThirdPartyComponentsProvider.mm +26 -0
- package/android/generated/ReactAppDependencyProvider.podspec +34 -0
- package/android/generated/java/com/facebook/fbreact/specs/NativeAirMapsModuleSpec.java +63 -0
- package/android/generated/java/com/facebook/react/viewmanagers/RNMapsCalloutManagerDelegate.java +35 -0
- package/android/generated/java/com/facebook/react/viewmanagers/RNMapsCalloutManagerInterface.java +18 -0
- package/android/generated/java/com/facebook/react/viewmanagers/RNMapsGooglePolygonManagerDelegate.java +49 -0
- package/android/generated/java/com/facebook/react/viewmanagers/RNMapsGooglePolygonManagerInterface.java +24 -0
- package/android/generated/java/com/facebook/react/viewmanagers/RNMapsMapViewManagerDelegate.java +206 -0
- package/android/generated/java/com/facebook/react/viewmanagers/RNMapsMapViewManagerInterface.java +74 -0
- package/android/generated/java/com/facebook/react/viewmanagers/RNMapsMarkerManagerDelegate.java +104 -0
- package/android/generated/java/com/facebook/react/viewmanagers/RNMapsMarkerManagerInterface.java +40 -0
- package/android/generated/java/com/facebook/react/viewmanagers/RNMapsPolylineManagerDelegate.java +58 -0
- package/android/generated/java/com/facebook/react/viewmanagers/RNMapsPolylineManagerInterface.java +27 -0
- package/android/generated/jni/CMakeLists.txt +36 -0
- package/android/generated/jni/RNMapsSpecs-generated.cpp +68 -0
- package/android/generated/jni/RNMapsSpecs.h +31 -0
- package/android/generated/jni/react/renderer/components/RNMapsSpecs/ComponentDescriptors.cpp +27 -0
- package/android/generated/jni/react/renderer/components/RNMapsSpecs/ComponentDescriptors.h +29 -0
- package/android/generated/jni/react/renderer/components/RNMapsSpecs/EventEmitters.cpp +940 -0
- package/android/generated/jni/react/renderer/components/RNMapsSpecs/EventEmitters.h +809 -0
- package/android/generated/jni/react/renderer/components/RNMapsSpecs/Props.cpp +170 -0
- package/android/generated/jni/react/renderer/components/RNMapsSpecs/Props.h +1142 -0
- package/android/generated/jni/react/renderer/components/RNMapsSpecs/RNMapsSpecsJSI-generated.cpp +74 -0
- package/android/generated/jni/react/renderer/components/RNMapsSpecs/RNMapsSpecsJSI.h +268 -0
- package/android/generated/jni/react/renderer/components/RNMapsSpecs/ShadowNodes.cpp +22 -0
- package/android/generated/jni/react/renderer/components/RNMapsSpecs/ShadowNodes.h +87 -0
- package/android/generated/jni/react/renderer/components/RNMapsSpecs/States.cpp +16 -0
- package/android/generated/jni/react/renderer/components/RNMapsSpecs/States.h +89 -0
- package/android/gradle/wrapper/gradle-wrapper.properties +1 -1
- package/android/gradlew +1 -2
- package/android/src/main/java/com/rnmaps/fabric/CalloutManager.java +77 -0
- package/android/src/main/java/com/rnmaps/fabric/JSONUtil.java +86 -0
- package/android/src/main/java/com/rnmaps/fabric/MapViewManager.java +618 -0
- package/android/src/main/java/com/rnmaps/fabric/MarkerManager.java +259 -0
- package/android/src/main/java/com/rnmaps/fabric/NativeAirMapsModule.java +156 -4
- 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/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/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 +30 -2
- package/android/src/main/java/com/rnmaps/maps/MapCallout.java +18 -0
- package/android/src/main/java/com/rnmaps/maps/MapManager.java +14 -14
- package/android/src/main/java/com/rnmaps/maps/MapMarker.java +79 -3
- package/android/src/main/java/com/rnmaps/maps/MapModule.java +206 -206
- package/android/src/main/java/com/rnmaps/maps/MapPolygon.java +29 -0
- 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/MapView.java +1649 -1336
- package/ios/AirGoogleMaps/AIRGoogleMap.h +3 -2
- package/ios/AirGoogleMaps/AIRGoogleMap.m +155 -50
- package/ios/AirGoogleMaps/AIRGoogleMapCircle.m +23 -11
- package/ios/AirGoogleMaps/AIRGoogleMapManager.m +17 -28
- package/ios/AirGoogleMaps/AIRGoogleMapMarker.h +2 -0
- package/ios/AirGoogleMaps/AIRGoogleMapMarker.m +347 -243
- package/ios/AirGoogleMaps/AIRGoogleMapPolygon.h +2 -1
- package/ios/AirGoogleMaps/AIRGoogleMapPolygon.m +30 -0
- package/ios/AirGoogleMaps/AIRGoogleMapPolyline.h +0 -1
- package/ios/AirGoogleMaps/AIRGoogleMapPolyline.m +0 -7
- package/ios/AirGoogleMaps/AIRGoogleMapWMSTile.h +1 -1
- package/ios/AirGoogleMaps/AIRGoogleMapWMSTile.m +2 -2
- package/ios/AirGoogleMaps/RCTConvert+GMSMapViewType.m +2 -0
- package/ios/AirGoogleMaps/RNMapsGoogleMapView.h +3 -3
- package/ios/AirGoogleMaps/RNMapsGoogleMapView.mm +201 -60
- package/ios/AirGoogleMaps/RNMapsGooglePolygonView.h +26 -0
- package/ios/AirGoogleMaps/RNMapsGooglePolygonView.mm +217 -0
- package/ios/AirGoogleMaps/RNMapsGooglePolygonViewManager.mm +25 -0
- package/ios/AirMaps/AIRMap.h +5 -2
- package/ios/AirMaps/AIRMap.m +285 -153
- package/ios/AirMaps/AIRMapManager.m +6 -0
- package/ios/AirMaps/AIRMapMarker.h +1 -0
- package/ios/AirMaps/AIRMapMarker.m +165 -103
- package/ios/AirMaps/Callout/SMCalloutView.m +1 -1
- package/ios/AirMaps/RNMapsAirModule.h +1 -1
- package/ios/AirMaps/RNMapsAirModule.mm +42 -172
- package/ios/AirMaps/RNMapsAirModuleDelegate.h +24 -0
- package/ios/AirMaps/RNMapsHostVewDelegate.h +17 -0
- package/ios/AirMaps/RNMapsMapView.h +3 -3
- package/ios/AirMaps/RNMapsMapView.mm +340 -308
- package/ios/AirMaps/RNMapsMarkerView.h +24 -0
- package/ios/AirMaps/RNMapsMarkerView.mm +430 -0
- package/ios/AirMaps/RNMapsMarkerViewManager.mm +21 -0
- package/ios/AirMaps/UIView +AirMap.m +20 -0
- package/ios/AirMaps/UIView+AirMap.h +11 -0
- package/ios/AirMaps.xcodeproj/project.pbxproj +60 -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/generated/RNMapsSpecs/ComponentDescriptors.cpp +27 -0
- package/ios/generated/RNMapsSpecs/ComponentDescriptors.h +29 -0
- package/ios/generated/RNMapsSpecs/EventEmitters.cpp +940 -0
- package/ios/generated/RNMapsSpecs/EventEmitters.h +809 -0
- package/ios/generated/RNMapsSpecs/Props.cpp +170 -0
- package/ios/generated/RNMapsSpecs/Props.h +1142 -0
- package/ios/generated/RNMapsSpecs/RCTComponentViewHelpers.h +595 -0
- package/ios/generated/RNMapsSpecs/RNMapsSpecs-generated.mm +92 -0
- package/ios/generated/RNMapsSpecs/RNMapsSpecs.h +137 -0
- package/ios/generated/RNMapsSpecs/ShadowNodes.cpp +22 -0
- package/ios/generated/RNMapsSpecs/ShadowNodes.h +87 -0
- package/ios/generated/RNMapsSpecs/States.cpp +16 -0
- package/ios/generated/RNMapsSpecs/States.h +89 -0
- package/ios/generated/RNMapsSpecsJSI-generated.cpp +74 -0
- package/ios/generated/RNMapsSpecsJSI.h +268 -0
- package/ios/generated/ReactAppDependencyProvider.podspec +34 -0
- package/lib/MapCircle.d.ts +1 -1
- package/lib/MapHeatmap.d.ts +2 -2
- package/lib/MapHeatmap.js +1 -1
- package/lib/MapMarker.d.ts +16 -3
- package/lib/MapMarker.js +53 -9
- package/lib/MapMarkerNativeComponent.js +0 -2
- package/lib/MapOverlay.js +2 -8
- package/lib/MapPolygon.d.ts +1 -1
- package/lib/MapPolyline.d.ts +7 -7
- package/lib/MapView.d.ts +14 -27
- package/lib/MapView.js +97 -103
- package/lib/MapView.types.d.ts +1 -1
- package/lib/createFabricMap.d.ts +1 -0
- package/lib/createFabricMap.js +15 -2
- package/lib/decorateMapComponent.js +30 -0
- package/lib/specs/NativeAirMapsModule.d.ts +2 -2
- package/lib/specs/NativeComponentCallout.d.ts +46 -0
- package/lib/specs/NativeComponentCallout.js +9 -0
- package/lib/specs/NativeComponentGoogleMapView.d.ts +15 -15
- package/lib/specs/NativeComponentGoogleMapView.js +1 -0
- package/lib/specs/NativeComponentGooglePolygon.d.ts +75 -0
- package/lib/specs/NativeComponentGooglePolygon.js +7 -0
- package/lib/specs/NativeComponentMapView.d.ts +28 -36
- package/lib/specs/NativeComponentMapView.js +2 -3
- package/lib/specs/NativeComponentMarker.d.ts +258 -0
- package/lib/specs/NativeComponentMarker.js +19 -0
- package/lib/specs/NativeComponentPolyline.d.ts +101 -0
- package/lib/specs/NativeComponentPolyline.js +7 -0
- package/package.json +25 -20
- package/react-native-maps.podspec +2 -1
|
@@ -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")
|