react-native-google-maps-plus 1.10.2-dev.1 → 1.10.2-dev.2
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/README.md +12 -114
- package/ios/GoogleMapViewImpl.swift +3 -0
- package/lib/module/GoogleMapsPlus.js +10 -1
- package/lib/module/GoogleMapsPlus.js.map +1 -1
- package/lib/module/index.js +90 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/types.js +145 -39
- package/lib/module/types.js.map +1 -1
- package/lib/typescript/src/GoogleMapsPlus.d.ts +8 -0
- package/lib/typescript/src/GoogleMapsPlus.d.ts.map +1 -1
- package/lib/typescript/src/RNGoogleMapsPlusModule.nitro.d.ts +17 -1
- package/lib/typescript/src/RNGoogleMapsPlusModule.nitro.d.ts.map +1 -1
- package/lib/typescript/src/RNGoogleMapsPlusView.nitro.d.ts +87 -3
- package/lib/typescript/src/RNGoogleMapsPlusView.nitro.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts +89 -1
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/types.d.ts +340 -17
- package/lib/typescript/src/types.d.ts.map +1 -1
- package/nitrogen/generated/android/c++/JFunc_void_RNIndoorBuilding.hpp +12 -11
- package/nitrogen/generated/android/c++/JFunc_void_RNIndoorLevel.hpp +12 -11
- package/nitrogen/generated/android/c++/JFunc_void_RNLatLng.hpp +2 -1
- package/nitrogen/generated/android/c++/JFunc_void_RNLocation.hpp +2 -1
- package/nitrogen/generated/android/c++/JFunc_void_RNLocationErrorCode.hpp +2 -1
- package/nitrogen/generated/android/c++/JFunc_void_RNMapErrorCode.hpp +2 -1
- package/nitrogen/generated/android/c++/JFunc_void_RNRegion_RNCamera.hpp +2 -1
- package/nitrogen/generated/android/c++/JFunc_void_RNRegion_RNCamera_bool.hpp +2 -1
- package/nitrogen/generated/android/c++/JFunc_void_bool.hpp +2 -1
- package/nitrogen/generated/android/c++/JFunc_void_std__string.hpp +2 -1
- package/nitrogen/generated/android/c++/JFunc_void_std__string_RNLatLng.hpp +2 -1
- package/nitrogen/generated/android/c++/JFunc_void_std__string_std__string_RNLatLng.hpp +2 -1
- package/nitrogen/generated/android/c++/JHybridRNGoogleMapsPlusViewSpec.cpp +32 -81
- package/nitrogen/generated/android/c++/JHybridRNGoogleMapsPlusViewSpec.hpp +4 -4
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/Func_void_RNIndoorBuilding.kt +9 -9
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/Func_void_RNIndoorLevel.kt +9 -9
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/rngooglemapsplus/HybridRNGoogleMapsPlusViewSpec.kt +2 -2
- package/nitrogen/generated/ios/RNGoogleMapsPlus-Swift-Cxx-Bridge.cpp +7 -6
- package/nitrogen/generated/ios/RNGoogleMapsPlus-Swift-Cxx-Bridge.hpp +28 -28
- package/nitrogen/generated/ios/c++/HybridRNGoogleMapsPlusViewSpecSwift.hpp +4 -4
- package/nitrogen/generated/ios/swift/Func_void_RNIndoorBuilding.swift +6 -6
- package/nitrogen/generated/ios/swift/Func_void_RNIndoorLevel.swift +6 -6
- package/nitrogen/generated/ios/swift/Func_void_RNLatLng.swift +1 -1
- package/nitrogen/generated/ios/swift/Func_void_RNLocation.swift +1 -1
- package/nitrogen/generated/ios/swift/Func_void_RNLocationErrorCode.swift +1 -1
- package/nitrogen/generated/ios/swift/Func_void_RNLocationPermissionResult.swift +1 -1
- package/nitrogen/generated/ios/swift/Func_void_RNMapErrorCode.swift +1 -1
- package/nitrogen/generated/ios/swift/Func_void_RNRegion_RNCamera.swift +1 -1
- package/nitrogen/generated/ios/swift/Func_void_RNRegion_RNCamera_bool.swift +1 -1
- package/nitrogen/generated/ios/swift/Func_void_bool.swift +1 -1
- package/nitrogen/generated/ios/swift/Func_void_std__exception_ptr.swift +1 -1
- package/nitrogen/generated/ios/swift/Func_void_std__optional_std__string_.swift +1 -1
- package/nitrogen/generated/ios/swift/Func_void_std__string.swift +1 -1
- package/nitrogen/generated/ios/swift/Func_void_std__string_RNLatLng.swift +1 -1
- package/nitrogen/generated/ios/swift/Func_void_std__string_std__string_RNLatLng.swift +1 -1
- package/nitrogen/generated/ios/swift/HybridRNGoogleMapsPlusModuleSpec.swift +0 -1
- package/nitrogen/generated/ios/swift/HybridRNGoogleMapsPlusModuleSpec_cxx.swift +0 -1
- package/nitrogen/generated/ios/swift/HybridRNGoogleMapsPlusViewSpec.swift +2 -3
- package/nitrogen/generated/ios/swift/HybridRNGoogleMapsPlusViewSpec_cxx.swift +16 -17
- package/nitrogen/generated/ios/swift/RNAndroidLocationConfig.swift +1 -0
- package/nitrogen/generated/ios/swift/RNCamera.swift +1 -0
- package/nitrogen/generated/ios/swift/RNCameraUpdate.swift +1 -0
- package/nitrogen/generated/ios/swift/RNCircle.swift +1 -0
- package/nitrogen/generated/ios/swift/RNHeatmap.swift +1 -0
- package/nitrogen/generated/ios/swift/RNHeatmapGradient.swift +1 -0
- package/nitrogen/generated/ios/swift/RNHeatmapPoint.swift +1 -0
- package/nitrogen/generated/ios/swift/RNIOSLocationConfig.swift +1 -0
- package/nitrogen/generated/ios/swift/RNIndoorBuilding.swift +1 -0
- package/nitrogen/generated/ios/swift/RNIndoorLevel.swift +1 -0
- package/nitrogen/generated/ios/swift/RNInitialProps.swift +1 -0
- package/nitrogen/generated/ios/swift/RNKMLayer.swift +1 -0
- package/nitrogen/generated/ios/swift/RNLatLng.swift +1 -0
- package/nitrogen/generated/ios/swift/RNLatLngBounds.swift +1 -0
- package/nitrogen/generated/ios/swift/RNLocation.swift +1 -0
- package/nitrogen/generated/ios/swift/RNLocationAndroid.swift +1 -0
- package/nitrogen/generated/ios/swift/RNLocationConfig.swift +1 -0
- package/nitrogen/generated/ios/swift/RNLocationIOS.swift +1 -0
- package/nitrogen/generated/ios/swift/RNLocationPermissionResult.swift +1 -0
- package/nitrogen/generated/ios/swift/RNMapPadding.swift +1 -0
- package/nitrogen/generated/ios/swift/RNMapUiSettings.swift +1 -0
- package/nitrogen/generated/ios/swift/RNMapZoomConfig.swift +1 -0
- package/nitrogen/generated/ios/swift/RNMarker.swift +1 -0
- package/nitrogen/generated/ios/swift/RNMarkerSvg.swift +1 -0
- package/nitrogen/generated/ios/swift/RNPolygon.swift +1 -0
- package/nitrogen/generated/ios/swift/RNPolygonHole.swift +1 -0
- package/nitrogen/generated/ios/swift/RNPolyline.swift +1 -0
- package/nitrogen/generated/ios/swift/RNPosition.swift +1 -0
- package/nitrogen/generated/ios/swift/RNRegion.swift +1 -0
- package/nitrogen/generated/ios/swift/RNSize.swift +1 -0
- package/nitrogen/generated/ios/swift/RNSnapshotOptions.swift +1 -0
- package/nitrogen/generated/ios/swift/RNUrlTileOverlay.swift +1 -0
- package/nitrogen/generated/shared/c++/HybridRNGoogleMapsPlusViewSpec.hpp +4 -4
- package/nitrogen/generated/shared/c++/views/HybridRNGoogleMapsPlusViewComponent.cpp +4 -4
- package/nitrogen/generated/shared/c++/views/HybridRNGoogleMapsPlusViewComponent.hpp +2 -2
- package/package.json +11 -7
- package/src/GoogleMapsPlus.tsx +9 -1
- package/src/RNGoogleMapsPlusModule.nitro.ts +21 -4
- package/src/RNGoogleMapsPlusView.nitro.ts +143 -18
- package/src/index.tsx +90 -1
- package/src/types.ts +475 -67
package/src/types.ts
CHANGED
|
@@ -1,382 +1,790 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Platform behavior
|
|
3
|
+
*
|
|
4
|
+
* Thin TypeScript layer over the native Google Maps SDKs for Android and iOS.
|
|
5
|
+
* Behavior follows the underlying SDKs unless explicitly documented otherwise.
|
|
6
|
+
*/
|
|
7
|
+
|
|
1
8
|
import type { RNGoogleMapsPlusViewMethods } from './RNGoogleMapsPlusView.nitro';
|
|
2
9
|
import type { HybridView } from 'react-native-nitro-modules';
|
|
3
10
|
|
|
11
|
+
/** Reference to the native Google Maps view. */
|
|
4
12
|
export type GoogleMapsViewRef = HybridView<RNGoogleMapsPlusViewMethods>;
|
|
5
13
|
|
|
14
|
+
/** Initial map configuration. */
|
|
6
15
|
export type RNInitialProps = {
|
|
16
|
+
/** Map instance identifier. */
|
|
7
17
|
mapId?: string;
|
|
18
|
+
|
|
19
|
+
/**
|
|
20
|
+
* Enables lite rendering mode.
|
|
21
|
+
*
|
|
22
|
+
* Android: supported.
|
|
23
|
+
* iOS: not supported.
|
|
24
|
+
*/
|
|
8
25
|
liteMode?: boolean;
|
|
26
|
+
|
|
27
|
+
/** Initial camera configuration. */
|
|
9
28
|
camera?: RNCameraUpdate;
|
|
29
|
+
|
|
30
|
+
/** Background color while tiles load. */
|
|
10
31
|
backgroundColor?: string;
|
|
11
32
|
};
|
|
12
33
|
|
|
34
|
+
/** UI and gesture settings. */
|
|
13
35
|
export type RNMapUiSettings = {
|
|
36
|
+
/** Enables or disables all gestures. */
|
|
14
37
|
allGesturesEnabled?: boolean;
|
|
38
|
+
|
|
39
|
+
/** Shows the compass. */
|
|
15
40
|
compassEnabled?: boolean;
|
|
41
|
+
|
|
42
|
+
/** Enables the indoor level picker. */
|
|
16
43
|
indoorLevelPickerEnabled?: boolean;
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* Enables the map toolbar.
|
|
47
|
+
*
|
|
48
|
+
* Android: supported.
|
|
49
|
+
* iOS: not supported.
|
|
50
|
+
*/
|
|
17
51
|
mapToolbarEnabled?: boolean;
|
|
52
|
+
|
|
53
|
+
/** Enables the "My Location" button. */
|
|
18
54
|
myLocationButtonEnabled?: boolean;
|
|
55
|
+
|
|
56
|
+
/** Enables rotation gestures. */
|
|
19
57
|
rotateEnabled?: boolean;
|
|
58
|
+
|
|
59
|
+
/** Enables scroll gestures. */
|
|
20
60
|
scrollEnabled?: boolean;
|
|
61
|
+
|
|
62
|
+
/** Enables scroll during rotate/zoom gestures. */
|
|
21
63
|
scrollDuringRotateOrZoomEnabled?: boolean;
|
|
64
|
+
|
|
65
|
+
/** Enables tilt gestures. */
|
|
22
66
|
tiltEnabled?: boolean;
|
|
67
|
+
|
|
68
|
+
/**
|
|
69
|
+
* Shows built-in zoom controls.
|
|
70
|
+
*
|
|
71
|
+
* Android: supported.
|
|
72
|
+
* iOS: not supported.
|
|
73
|
+
*/
|
|
23
74
|
zoomControlsEnabled?: boolean;
|
|
75
|
+
|
|
76
|
+
/** Enables pinch zoom gestures. */
|
|
24
77
|
zoomGesturesEnabled?: boolean;
|
|
78
|
+
|
|
79
|
+
/**
|
|
80
|
+
* Consumes the press event.
|
|
81
|
+
*
|
|
82
|
+
* When enabled:
|
|
83
|
+
* - Native map UI does NOT execute its default behavior.
|
|
84
|
+
* - Only the JS callback is triggered.
|
|
85
|
+
*
|
|
86
|
+
* When disabled:
|
|
87
|
+
* - JS callback is triggered.
|
|
88
|
+
* - Native default behavior runs (e.g. camera move, info window, selection).
|
|
89
|
+
*/
|
|
25
90
|
consumeOnMarkerPress?: boolean;
|
|
91
|
+
|
|
92
|
+
/**
|
|
93
|
+
* Consumes the My-Location-button press event.
|
|
94
|
+
*
|
|
95
|
+
* When enabled:
|
|
96
|
+
* - Native map does NOT perform its default camera move.
|
|
97
|
+
* - Only the JS callback is triggered.
|
|
98
|
+
*
|
|
99
|
+
* When disabled:
|
|
100
|
+
* - JS callback is triggered.
|
|
101
|
+
* - Native behavior runs (camera animates to user location).
|
|
102
|
+
*/
|
|
26
103
|
consumeOnMyLocationButtonPress?: boolean;
|
|
27
104
|
};
|
|
28
105
|
|
|
106
|
+
/** Geographic coordinate. */
|
|
29
107
|
export type RNLatLng = {
|
|
108
|
+
/** Latitude. */
|
|
30
109
|
latitude: number;
|
|
110
|
+
|
|
111
|
+
/** Longitude. */
|
|
31
112
|
longitude: number;
|
|
32
113
|
};
|
|
33
114
|
|
|
115
|
+
/** Geographic bounds. */
|
|
34
116
|
export type RNLatLngBounds = {
|
|
117
|
+
/** Southwest corner. */
|
|
35
118
|
southwest: RNLatLng;
|
|
119
|
+
|
|
120
|
+
/** Northeast corner. */
|
|
36
121
|
northeast: RNLatLng;
|
|
37
122
|
};
|
|
38
123
|
|
|
124
|
+
/** Snapshot configuration. */
|
|
39
125
|
export type RNSnapshotOptions = {
|
|
126
|
+
/** Output size. */
|
|
40
127
|
size?: RNSize;
|
|
128
|
+
|
|
129
|
+
/** Image format. */
|
|
41
130
|
format: RNSnapshotFormat;
|
|
131
|
+
|
|
132
|
+
/** Image quality (0–100). */
|
|
42
133
|
quality: number;
|
|
134
|
+
|
|
135
|
+
/** Result return type. */
|
|
43
136
|
resultType: RNSnapshotResultType;
|
|
44
137
|
};
|
|
45
138
|
|
|
139
|
+
/**
|
|
140
|
+
* Logical size of an image or view.
|
|
141
|
+
* iOS: points (pt)
|
|
142
|
+
* Android: dp
|
|
143
|
+
* Converted internally to physical pixels.
|
|
144
|
+
*/
|
|
46
145
|
export type RNSize = {
|
|
146
|
+
/** Width. */
|
|
47
147
|
width: number;
|
|
148
|
+
|
|
149
|
+
/** Height. */
|
|
48
150
|
height: number;
|
|
49
151
|
};
|
|
50
152
|
|
|
153
|
+
/** Snapshot image formats. */
|
|
51
154
|
export type RNSnapshotFormat = 'png' | 'jpg' | 'jpeg';
|
|
52
155
|
|
|
156
|
+
/** Snapshot result types. */
|
|
53
157
|
export type RNSnapshotResultType = 'base64' | 'file';
|
|
54
158
|
|
|
159
|
+
/**
|
|
160
|
+
* Map padding in logical units (pt on iOS, dp on Android).
|
|
161
|
+
* Both are converted internally to device pixels.
|
|
162
|
+
*/
|
|
55
163
|
export type RNMapPadding = {
|
|
164
|
+
/** Top padding. */
|
|
56
165
|
top: number;
|
|
166
|
+
|
|
167
|
+
/** Left padding. */
|
|
57
168
|
left: number;
|
|
169
|
+
|
|
170
|
+
/** Bottom padding. */
|
|
58
171
|
bottom: number;
|
|
172
|
+
|
|
173
|
+
/** Right padding. */
|
|
59
174
|
right: number;
|
|
60
175
|
};
|
|
61
176
|
|
|
177
|
+
/** Base map types. */
|
|
62
178
|
export type RNMapType = 'none' | 'normal' | 'hybrid' | 'satellite' | 'terrain';
|
|
63
179
|
|
|
180
|
+
/** UI style mode. */
|
|
64
181
|
export type RNUserInterfaceStyle = 'light' | 'dark' | 'system';
|
|
65
182
|
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
/*
|
|
69
|
-
| 'administrative'
|
|
70
|
-
| 'administrative.country'
|
|
71
|
-
| 'administrative.land_parcel'
|
|
72
|
-
| 'administrative.locality'
|
|
73
|
-
| 'administrative.neighborhood'
|
|
74
|
-
| 'administrative.province'
|
|
75
|
-
| 'landscape'
|
|
76
|
-
| 'landscape.man_made'
|
|
77
|
-
| 'landscape.natural'
|
|
78
|
-
| 'poi'
|
|
79
|
-
| 'poi.attraction'
|
|
80
|
-
| 'poi.business'
|
|
81
|
-
| 'poi.government'
|
|
82
|
-
| 'poi.medical'
|
|
83
|
-
| 'poi.park'
|
|
84
|
-
| 'poi.place_of_worship'
|
|
85
|
-
| 'poi.school'
|
|
86
|
-
| 'poi.sports_complex'
|
|
87
|
-
| 'road'
|
|
88
|
-
| 'road.arterial'
|
|
89
|
-
| 'road.highway'
|
|
90
|
-
| 'road.local'
|
|
91
|
-
| 'transit'
|
|
92
|
-
| 'transit.line'
|
|
93
|
-
| 'transit.station'
|
|
94
|
-
| 'water';
|
|
95
|
-
*/
|
|
96
|
-
|
|
97
|
-
export type RNElementType = string;
|
|
98
|
-
|
|
99
|
-
/*
|
|
100
|
-
| 'all'
|
|
101
|
-
| 'geometry'
|
|
102
|
-
| 'geometry.fill'
|
|
103
|
-
| 'geometry.stroke'
|
|
104
|
-
| 'labels'
|
|
105
|
-
| 'labels.icon'
|
|
106
|
-
| 'labels.text'
|
|
107
|
-
| 'labels.text.fill'
|
|
108
|
-
| 'labels.text.stroke'
|
|
109
|
-
*/
|
|
110
|
-
|
|
111
|
-
export type RNVisibility = string;
|
|
112
|
-
|
|
113
|
-
/*
|
|
114
|
-
'on' | 'off' | 'simplified';
|
|
115
|
-
*/
|
|
116
|
-
|
|
117
|
-
export interface RNMapStyler {
|
|
118
|
-
color?: string;
|
|
119
|
-
visibility?: RNVisibility;
|
|
120
|
-
weight?: number;
|
|
121
|
-
gamma?: number;
|
|
122
|
-
lightness?: number;
|
|
123
|
-
saturation?: number;
|
|
124
|
-
invert_lightness?: boolean;
|
|
125
|
-
}
|
|
126
|
-
|
|
127
|
-
export interface RNMapStyleElement {
|
|
128
|
-
featureType?: RNFeatureType;
|
|
129
|
-
elementType?: RNElementType;
|
|
130
|
-
stylers: RNMapStyler[];
|
|
131
|
-
}
|
|
132
|
-
|
|
183
|
+
/** Camera definition. */
|
|
133
184
|
export type RNCamera = {
|
|
185
|
+
/** Camera target coordinate. */
|
|
134
186
|
center: RNLatLng;
|
|
187
|
+
|
|
188
|
+
/** Zoom level. */
|
|
135
189
|
zoom: number;
|
|
190
|
+
|
|
191
|
+
/** Bearing in degrees. */
|
|
136
192
|
bearing: number;
|
|
193
|
+
|
|
194
|
+
/** Tilt angle in degrees. */
|
|
137
195
|
tilt: number;
|
|
138
196
|
};
|
|
139
197
|
|
|
198
|
+
/** Partial camera update. */
|
|
140
199
|
export type RNCameraUpdate = {
|
|
200
|
+
/** Camera target coordinate. */
|
|
141
201
|
center?: RNLatLng;
|
|
202
|
+
|
|
203
|
+
/** Zoom level. */
|
|
142
204
|
zoom?: number;
|
|
205
|
+
|
|
206
|
+
/** Bearing in degrees. */
|
|
143
207
|
bearing?: number;
|
|
208
|
+
|
|
209
|
+
/** Tilt angle in degrees. */
|
|
144
210
|
tilt?: number;
|
|
145
211
|
};
|
|
146
212
|
|
|
213
|
+
/** Visible region. */
|
|
147
214
|
export type RNRegion = {
|
|
215
|
+
/** Near-left corner. */
|
|
148
216
|
nearLeft: RNLatLng;
|
|
217
|
+
|
|
218
|
+
/** Near-right corner. */
|
|
149
219
|
nearRight: RNLatLng;
|
|
220
|
+
|
|
221
|
+
/** Far-left corner. */
|
|
150
222
|
farLeft: RNLatLng;
|
|
223
|
+
|
|
224
|
+
/** Far-right corner. */
|
|
151
225
|
farRight: RNLatLng;
|
|
226
|
+
|
|
227
|
+
/** Bounding box. */
|
|
152
228
|
latLngBounds: RNLatLngBounds;
|
|
153
229
|
};
|
|
154
230
|
|
|
231
|
+
/** 2D position in view coordinates. */
|
|
155
232
|
export type RNPosition = {
|
|
233
|
+
/** X coordinate. */
|
|
156
234
|
x: number;
|
|
235
|
+
|
|
236
|
+
/** Y coordinate. */
|
|
157
237
|
y: number;
|
|
158
238
|
};
|
|
159
239
|
|
|
240
|
+
/** Zoom configuration. */
|
|
160
241
|
export type RNMapZoomConfig = {
|
|
242
|
+
/** Minimum zoom level. */
|
|
161
243
|
min?: number;
|
|
244
|
+
|
|
245
|
+
/** Maximum zoom level. */
|
|
162
246
|
max?: number;
|
|
163
247
|
};
|
|
164
248
|
|
|
249
|
+
/**
|
|
250
|
+
* Line cap styles.
|
|
251
|
+
*
|
|
252
|
+
* Android: supported.
|
|
253
|
+
* iOS: not supported.
|
|
254
|
+
*/
|
|
165
255
|
export type RNLineCapType = 'butt' | 'round' | 'square';
|
|
256
|
+
|
|
257
|
+
/**
|
|
258
|
+
* Line join styles.
|
|
259
|
+
*
|
|
260
|
+
* Android: supported.
|
|
261
|
+
* iOS: not supported.
|
|
262
|
+
*/
|
|
166
263
|
export type RNLineJoinType = 'miter' | 'round' | 'bevel';
|
|
167
264
|
|
|
265
|
+
/**
|
|
266
|
+
* Marker definition.
|
|
267
|
+
*
|
|
268
|
+
* On iOS, some default animations are suppressed for parity with Android.
|
|
269
|
+
*/
|
|
168
270
|
export type RNMarker = {
|
|
271
|
+
/** Unique marker identifier. */
|
|
169
272
|
id: string;
|
|
273
|
+
|
|
274
|
+
/** Z-index used for rendering order. */
|
|
170
275
|
zIndex?: number;
|
|
276
|
+
|
|
277
|
+
/** Marker coordinate. */
|
|
171
278
|
coordinate: RNLatLng;
|
|
279
|
+
|
|
280
|
+
/**
|
|
281
|
+
* Anchor point relative to the marker icon.
|
|
282
|
+
* (0,0) = top-left, (1,1) = bottom-right.
|
|
283
|
+
*/
|
|
172
284
|
anchor?: RNPosition;
|
|
285
|
+
|
|
286
|
+
/** Marker title. */
|
|
173
287
|
title?: string;
|
|
288
|
+
|
|
289
|
+
/** Marker snippet / subtitle. */
|
|
174
290
|
snippet?: string;
|
|
291
|
+
|
|
292
|
+
/** Icon opacity in the range [0, 1]. */
|
|
175
293
|
opacity?: number;
|
|
294
|
+
|
|
295
|
+
/** Draws the marker flat against the map. */
|
|
176
296
|
flat?: boolean;
|
|
297
|
+
|
|
298
|
+
/** Enables marker dragging. */
|
|
177
299
|
draggable?: boolean;
|
|
300
|
+
|
|
301
|
+
/** Rotation angle in degrees. */
|
|
178
302
|
rotation?: number;
|
|
303
|
+
|
|
304
|
+
/**
|
|
305
|
+
* Info window anchor relative to the marker.
|
|
306
|
+
* (0,0) = top-left, (1,1) = bottom-right.
|
|
307
|
+
*/
|
|
179
308
|
infoWindowAnchor?: RNPosition;
|
|
309
|
+
|
|
310
|
+
/** Marker icon rendered from an SVG string. */
|
|
180
311
|
iconSvg?: RNMarkerSvg;
|
|
312
|
+
|
|
313
|
+
/** Info window content rendered from an SVG string. */
|
|
181
314
|
infoWindowIconSvg?: RNMarkerSvg;
|
|
182
315
|
};
|
|
183
316
|
|
|
317
|
+
/** Marker SVG definition. */
|
|
184
318
|
export type RNMarkerSvg = {
|
|
319
|
+
/**
|
|
320
|
+
* Icon width in logical units.
|
|
321
|
+
*
|
|
322
|
+
* iOS: points (pt)
|
|
323
|
+
* Android: density-independent pixels (dp)
|
|
324
|
+
*
|
|
325
|
+
* Converted internally to physical pixels.
|
|
326
|
+
*/
|
|
185
327
|
width: number;
|
|
328
|
+
|
|
329
|
+
/**
|
|
330
|
+
* Icon height in logical units.
|
|
331
|
+
*
|
|
332
|
+
* iOS: points (pt)
|
|
333
|
+
* Android: density-independent pixels (dp)
|
|
334
|
+
*
|
|
335
|
+
* Converted internally to physical pixels.
|
|
336
|
+
*/
|
|
186
337
|
height: number;
|
|
338
|
+
|
|
339
|
+
/**
|
|
340
|
+
* Raw SVG content.
|
|
341
|
+
*
|
|
342
|
+
* Rendering engines:
|
|
343
|
+
* - Android: AndroidSVG — http://bigbadaboom.github.io/androidsvg/
|
|
344
|
+
* - iOS: SVGKit — https://github.com/SVGKit/SVGKit
|
|
345
|
+
*/
|
|
187
346
|
svgString: string;
|
|
188
347
|
};
|
|
189
348
|
|
|
349
|
+
/** Polygon definition. */
|
|
190
350
|
export type RNPolygon = {
|
|
351
|
+
/** Unique polygon identifier. */
|
|
191
352
|
id: string;
|
|
353
|
+
|
|
354
|
+
/** Z-index used for rendering order. */
|
|
192
355
|
zIndex?: number;
|
|
356
|
+
|
|
357
|
+
/** Enables polygon press events. */
|
|
193
358
|
pressable?: boolean;
|
|
359
|
+
|
|
360
|
+
/** Polygon vertices. */
|
|
194
361
|
coordinates: RNLatLng[];
|
|
362
|
+
|
|
363
|
+
/** Fill color. */
|
|
195
364
|
fillColor?: string;
|
|
365
|
+
|
|
366
|
+
/** Stroke color. */
|
|
196
367
|
strokeColor?: string;
|
|
368
|
+
|
|
369
|
+
/**
|
|
370
|
+
* Stroke width in logical units.
|
|
371
|
+
*
|
|
372
|
+
* iOS: points (pt)
|
|
373
|
+
* Android: density-independent pixels (dp)
|
|
374
|
+
*
|
|
375
|
+
* Converted internally to physical pixels.
|
|
376
|
+
*/
|
|
197
377
|
strokeWidth?: number;
|
|
378
|
+
|
|
379
|
+
/** Polygon holes. */
|
|
198
380
|
holes?: RNPolygonHole[];
|
|
381
|
+
|
|
382
|
+
/** Draws geodesic edges. */
|
|
199
383
|
geodesic?: boolean;
|
|
200
384
|
};
|
|
201
385
|
|
|
386
|
+
/** Polygon hole definition. */
|
|
202
387
|
export type RNPolygonHole = {
|
|
388
|
+
/** Hole vertices. */
|
|
203
389
|
coordinates: RNLatLng[];
|
|
204
390
|
};
|
|
205
391
|
|
|
392
|
+
/** Polyline definition. */
|
|
206
393
|
export type RNPolyline = {
|
|
394
|
+
/** Unique polyline identifier. */
|
|
207
395
|
id: string;
|
|
396
|
+
|
|
397
|
+
/** Z-index used for rendering order. */
|
|
208
398
|
zIndex?: number;
|
|
399
|
+
|
|
400
|
+
/** Enables polyline press events. */
|
|
209
401
|
pressable?: boolean;
|
|
402
|
+
|
|
403
|
+
/** Polyline vertices. */
|
|
210
404
|
coordinates: RNLatLng[];
|
|
405
|
+
|
|
406
|
+
/** Line cap style. */
|
|
211
407
|
lineCap?: RNLineCapType;
|
|
408
|
+
|
|
409
|
+
/** Line join style. */
|
|
212
410
|
lineJoin?: RNLineJoinType;
|
|
411
|
+
|
|
412
|
+
/** Draws a geodesic path. */
|
|
213
413
|
geodesic?: boolean;
|
|
414
|
+
|
|
415
|
+
/** Line color. */
|
|
214
416
|
color?: string;
|
|
417
|
+
|
|
418
|
+
/**
|
|
419
|
+
* Line width in logical units.
|
|
420
|
+
*
|
|
421
|
+
* iOS: points (pt)
|
|
422
|
+
* Android: density-independent pixels (dp)
|
|
423
|
+
*
|
|
424
|
+
* Converted internally to physical pixels.
|
|
425
|
+
*/
|
|
215
426
|
width?: number;
|
|
216
427
|
};
|
|
217
428
|
|
|
429
|
+
/** Circle definition. */
|
|
218
430
|
export type RNCircle = {
|
|
431
|
+
/** Unique circle identifier. */
|
|
219
432
|
id: string;
|
|
433
|
+
|
|
434
|
+
/** Enables circle press events. */
|
|
220
435
|
pressable?: boolean;
|
|
436
|
+
|
|
437
|
+
/** Z-index used for rendering order. */
|
|
221
438
|
zIndex?: number;
|
|
439
|
+
|
|
440
|
+
/** Circle center. */
|
|
222
441
|
center: RNLatLng;
|
|
442
|
+
|
|
443
|
+
/** Radius in meters. */
|
|
223
444
|
radius: number;
|
|
445
|
+
|
|
446
|
+
/**
|
|
447
|
+
* Stroke width in logical units.
|
|
448
|
+
*
|
|
449
|
+
* iOS: points (pt)
|
|
450
|
+
* Android: density-independent pixels (dp)
|
|
451
|
+
*
|
|
452
|
+
* Converted internally to physical pixels.
|
|
453
|
+
*/
|
|
224
454
|
strokeWidth?: number;
|
|
455
|
+
|
|
456
|
+
/** Stroke color. */
|
|
225
457
|
strokeColor?: string;
|
|
458
|
+
|
|
459
|
+
/** Fill color. */
|
|
226
460
|
fillColor?: string;
|
|
227
461
|
};
|
|
228
462
|
|
|
463
|
+
/** Heatmap configuration. */
|
|
229
464
|
export type RNHeatmap = {
|
|
465
|
+
/** Unique heatmap identifier. */
|
|
230
466
|
id: string;
|
|
467
|
+
|
|
468
|
+
/** Enables heatmap press events. */
|
|
231
469
|
pressable?: boolean;
|
|
470
|
+
|
|
471
|
+
/** Z-index used for rendering order. */
|
|
232
472
|
zIndex?: number;
|
|
473
|
+
|
|
474
|
+
/** Weighted heatmap points. */
|
|
233
475
|
weightedData: RNHeatmapPoint[];
|
|
476
|
+
|
|
477
|
+
/** Radius used for each point. */
|
|
234
478
|
radius?: number;
|
|
479
|
+
|
|
480
|
+
/** Overall heatmap opacity. */
|
|
235
481
|
opacity?: number;
|
|
482
|
+
|
|
483
|
+
/** Custom gradient configuration. */
|
|
236
484
|
gradient?: RNHeatmapGradient;
|
|
237
485
|
};
|
|
238
486
|
|
|
487
|
+
/** Heatmap point definition. */
|
|
239
488
|
export type RNHeatmapPoint = {
|
|
489
|
+
/** Latitude. */
|
|
240
490
|
latitude: number;
|
|
491
|
+
|
|
492
|
+
/** Longitude. */
|
|
241
493
|
longitude: number;
|
|
494
|
+
|
|
495
|
+
/** Weight used for heatmap intensity. */
|
|
242
496
|
weight: number;
|
|
243
497
|
};
|
|
244
498
|
|
|
499
|
+
/** Heatmap gradient configuration. */
|
|
245
500
|
export type RNHeatmapGradient = {
|
|
501
|
+
/** Gradient colors. */
|
|
246
502
|
colors: string[];
|
|
503
|
+
|
|
504
|
+
/** Gradient start points in the range [0, 1]. */
|
|
247
505
|
startPoints: number[];
|
|
506
|
+
|
|
507
|
+
/** Size of the generated color map. */
|
|
248
508
|
colorMapSize: number;
|
|
249
509
|
};
|
|
250
510
|
|
|
511
|
+
/** KML layer configuration. */
|
|
251
512
|
export type RNKMLayer = {
|
|
513
|
+
/** Unique KML layer identifier. */
|
|
252
514
|
id: string;
|
|
515
|
+
|
|
516
|
+
/** KML document as string. */
|
|
253
517
|
kmlString: string;
|
|
254
518
|
};
|
|
255
519
|
|
|
520
|
+
/** URL tile overlay configuration. */
|
|
256
521
|
export type RNUrlTileOverlay = {
|
|
522
|
+
/** Unique tile overlay identifier. */
|
|
257
523
|
id: string;
|
|
524
|
+
|
|
525
|
+
/** Z-index used for rendering order. */
|
|
258
526
|
zIndex?: number;
|
|
527
|
+
|
|
528
|
+
/** URL template for tiles. */
|
|
259
529
|
url: string;
|
|
530
|
+
|
|
531
|
+
/** Tile size in pixels. */
|
|
260
532
|
tileSize: number;
|
|
533
|
+
|
|
534
|
+
/** Overlay opacity in the range [0, 1]. */
|
|
261
535
|
opacity?: number;
|
|
536
|
+
|
|
537
|
+
/** Enables fade-in animation when tiles load. */
|
|
262
538
|
fadeIn?: boolean;
|
|
263
539
|
};
|
|
264
540
|
|
|
541
|
+
/** Indoor building information. */
|
|
265
542
|
export type RNIndoorBuilding = {
|
|
543
|
+
/** Index of the active level. */
|
|
266
544
|
activeLevelIndex?: number;
|
|
545
|
+
|
|
546
|
+
/** Index of the default level. */
|
|
267
547
|
defaultLevelIndex?: number;
|
|
548
|
+
|
|
549
|
+
/** Available indoor levels. */
|
|
268
550
|
levels: RNIndoorLevel[];
|
|
551
|
+
|
|
552
|
+
/** Indicates whether the building is underground. */
|
|
269
553
|
underground?: boolean;
|
|
270
554
|
};
|
|
271
555
|
|
|
556
|
+
/** Indoor level information. */
|
|
272
557
|
export type RNIndoorLevel = {
|
|
558
|
+
/** Level index. */
|
|
273
559
|
index: number;
|
|
560
|
+
|
|
561
|
+
/** Level name. */
|
|
274
562
|
name?: string;
|
|
563
|
+
|
|
564
|
+
/** Short level name. */
|
|
275
565
|
shortName?: string;
|
|
566
|
+
|
|
567
|
+
/** Indicates whether this level is currently active. */
|
|
276
568
|
active?: boolean;
|
|
277
569
|
};
|
|
278
570
|
|
|
571
|
+
/** Location configuration. */
|
|
279
572
|
export type RNLocationConfig = {
|
|
573
|
+
/** Android-specific location configuration. */
|
|
280
574
|
android?: RNAndroidLocationConfig;
|
|
575
|
+
|
|
576
|
+
/** iOS-specific location configuration. */
|
|
281
577
|
ios?: RNIOSLocationConfig;
|
|
282
578
|
};
|
|
283
579
|
|
|
580
|
+
/** Android location configuration. */
|
|
284
581
|
export type RNAndroidLocationConfig = {
|
|
582
|
+
/** Requested location priority. */
|
|
285
583
|
priority?: RNAndroidLocationPriority;
|
|
584
|
+
|
|
585
|
+
/** Desired update interval in milliseconds. */
|
|
286
586
|
interval?: number;
|
|
587
|
+
|
|
588
|
+
/** Minimum update interval in milliseconds. */
|
|
287
589
|
minUpdateInterval?: number;
|
|
288
590
|
};
|
|
289
591
|
|
|
592
|
+
/** Android location priorities. */
|
|
290
593
|
export enum RNAndroidLocationPriority {
|
|
594
|
+
/** High accuracy, higher power usage. */
|
|
291
595
|
PRIORITY_HIGH_ACCURACY = 0,
|
|
596
|
+
/** Balanced accuracy and power usage. */
|
|
292
597
|
PRIORITY_BALANCED_POWER_ACCURACY = 1,
|
|
598
|
+
/** Low power usage, coarse accuracy. */
|
|
293
599
|
PRIORITY_LOW_POWER = 2,
|
|
600
|
+
/** Passive updates, no active requests. */
|
|
294
601
|
PRIORITY_PASSIVE = 3,
|
|
295
602
|
}
|
|
296
603
|
|
|
604
|
+
/** iOS location configuration. */
|
|
297
605
|
export type RNIOSLocationConfig = {
|
|
606
|
+
/** Desired accuracy level. */
|
|
298
607
|
desiredAccuracy?: RNIOSLocationAccuracy;
|
|
608
|
+
|
|
609
|
+
/** Minimum distance in meters before a new update is delivered. */
|
|
299
610
|
distanceFilterMeters?: number;
|
|
611
|
+
|
|
612
|
+
/** Activity type used to optimize location updates. */
|
|
300
613
|
activityType?: RNIOSLocationActivityType;
|
|
301
614
|
};
|
|
302
615
|
|
|
616
|
+
/** iOS location accuracy levels. */
|
|
303
617
|
export enum RNIOSLocationAccuracy {
|
|
618
|
+
/** Best possible accuracy. */
|
|
304
619
|
ACCURACY_BEST = 0,
|
|
620
|
+
/** Approximately 10 m accuracy. */
|
|
305
621
|
ACCURACY_NEAREST_TEN_METER = 1,
|
|
622
|
+
/** Approximately 100 m accuracy. */
|
|
306
623
|
ACCURACY_NEAREST_HUNDRED_METER = 2,
|
|
624
|
+
/** Approximately 1 km accuracy. */
|
|
307
625
|
ACCURACY_KILOMETER = 3,
|
|
308
626
|
}
|
|
309
627
|
|
|
628
|
+
/** iOS activity types for location updates. */
|
|
310
629
|
export enum RNIOSLocationActivityType {
|
|
630
|
+
/** Default activity type. */
|
|
311
631
|
OTHER = 0,
|
|
632
|
+
/** Turn-by-turn navigation. */
|
|
312
633
|
NAVIGATION = 1,
|
|
634
|
+
/** Automotive navigation. */
|
|
313
635
|
AUTOMOTIVE = 2,
|
|
636
|
+
/** Fitness and outdoor activities. */
|
|
314
637
|
FITNESS = 3,
|
|
638
|
+
/** Airborne activity. */
|
|
315
639
|
AIRBORNE = 4,
|
|
316
640
|
}
|
|
317
641
|
|
|
642
|
+
/** Combined location permission result. */
|
|
318
643
|
export type RNLocationPermissionResult = {
|
|
644
|
+
/** Android permission result. */
|
|
319
645
|
android?: RNAndroidLocationPermissionResult;
|
|
646
|
+
|
|
647
|
+
/** iOS permission result. */
|
|
320
648
|
ios?: RNIOSPermissionResult;
|
|
321
649
|
};
|
|
322
650
|
|
|
651
|
+
/** Android location permission results. */
|
|
323
652
|
export enum RNAndroidLocationPermissionResult {
|
|
653
|
+
/** Permission was granted. */
|
|
324
654
|
GRANTED = 1,
|
|
655
|
+
/** Permission was denied. */
|
|
325
656
|
DENIED = -1,
|
|
657
|
+
/** User chose "never ask again". */
|
|
326
658
|
NEVER_ASK_AGAIN = -2,
|
|
327
659
|
}
|
|
328
660
|
|
|
661
|
+
/** iOS location permission results. */
|
|
329
662
|
export enum RNIOSPermissionResult {
|
|
663
|
+
/** Permission was denied. */
|
|
330
664
|
DENIED = -1,
|
|
665
|
+
/** Permission was granted. */
|
|
331
666
|
AUTHORIZED = 1,
|
|
332
667
|
}
|
|
333
668
|
|
|
669
|
+
/** Location object. */
|
|
334
670
|
export type RNLocation = {
|
|
671
|
+
/** Center coordinate. */
|
|
335
672
|
center: RNLatLng;
|
|
673
|
+
|
|
674
|
+
/** Altitude in meters. */
|
|
336
675
|
altitude: number;
|
|
676
|
+
|
|
677
|
+
/** Accuracy in meters. */
|
|
337
678
|
accuracy: number;
|
|
679
|
+
|
|
680
|
+
/** Bearing in degrees. */
|
|
338
681
|
bearing: number;
|
|
682
|
+
|
|
683
|
+
/** Speed in meters per second. */
|
|
339
684
|
speed: number;
|
|
685
|
+
|
|
686
|
+
/** Timestamp in milliseconds since Unix epoch. */
|
|
340
687
|
time: number;
|
|
688
|
+
|
|
689
|
+
/** Android-only fields. */
|
|
341
690
|
android?: RNLocationAndroid;
|
|
691
|
+
|
|
692
|
+
/** iOS-only fields. */
|
|
342
693
|
ios?: RNLocationIOS;
|
|
343
694
|
};
|
|
344
695
|
|
|
696
|
+
/** Android location. */
|
|
345
697
|
export type RNLocationAndroid = {
|
|
698
|
+
/** Provider name. */
|
|
346
699
|
provider?: string;
|
|
700
|
+
|
|
701
|
+
/** Elapsed realtime in nanoseconds. */
|
|
347
702
|
elapsedRealtimeNanos?: number;
|
|
703
|
+
|
|
704
|
+
/** Bearing accuracy in degrees. */
|
|
348
705
|
bearingAccuracyDegrees?: number;
|
|
706
|
+
|
|
707
|
+
/** Speed accuracy in meters per second. */
|
|
349
708
|
speedAccuracyMetersPerSecond?: number;
|
|
709
|
+
|
|
710
|
+
/** Vertical accuracy in meters. */
|
|
350
711
|
verticalAccuracyMeters?: number;
|
|
712
|
+
|
|
713
|
+
/** Altitude above mean sea level in meters. */
|
|
351
714
|
mslAltitudeMeters?: number;
|
|
715
|
+
|
|
716
|
+
/** Accuracy of the MSL altitude in meters. */
|
|
352
717
|
mslAltitudeAccuracyMeters?: number;
|
|
718
|
+
|
|
719
|
+
/** Indicates whether the location is from a mock provider. */
|
|
353
720
|
isMock?: boolean;
|
|
354
721
|
};
|
|
722
|
+
|
|
723
|
+
/** iOS location. */
|
|
355
724
|
export type RNLocationIOS = {
|
|
725
|
+
/** Horizontal accuracy in meters. */
|
|
356
726
|
horizontalAccuracy?: number;
|
|
727
|
+
|
|
728
|
+
/** Vertical accuracy in meters. */
|
|
357
729
|
verticalAccuracy?: number;
|
|
730
|
+
|
|
731
|
+
/** Speed accuracy in meters per second. */
|
|
358
732
|
speedAccuracy?: number;
|
|
733
|
+
|
|
734
|
+
/** Course accuracy in degrees. */
|
|
359
735
|
courseAccuracy?: number;
|
|
736
|
+
|
|
737
|
+
/** Floor level index. */
|
|
360
738
|
floor?: number;
|
|
739
|
+
|
|
740
|
+
/** Indicates whether the location is from a mock provider. */
|
|
361
741
|
isFromMockProvider?: boolean;
|
|
742
|
+
|
|
743
|
+
/** Timestamp in milliseconds since Unix epoch. */
|
|
362
744
|
timestamp?: number;
|
|
363
745
|
};
|
|
364
746
|
|
|
747
|
+
/** Location error codes. */
|
|
365
748
|
export enum RNLocationErrorCode {
|
|
749
|
+
/** Location permission was denied by the user. */
|
|
366
750
|
PERMISSION_DENIED = 1,
|
|
751
|
+
|
|
752
|
+
/** The device was unable to determine a position. */
|
|
367
753
|
POSITION_UNAVAILABLE = 2,
|
|
754
|
+
|
|
755
|
+
/** The location request timed out. */
|
|
368
756
|
TIMEOUT = 3,
|
|
757
|
+
|
|
758
|
+
/** Required Google Play Services are not available. */
|
|
369
759
|
PLAY_SERVICE_NOT_AVAILABLE = 4,
|
|
760
|
+
|
|
761
|
+
/** Device location settings do not satisfy the request. */
|
|
370
762
|
SETTINGS_NOT_SATISFIED = 5,
|
|
763
|
+
|
|
764
|
+
/** Internal or unknown error. */
|
|
371
765
|
INTERNAL_ERROR = -1,
|
|
372
766
|
}
|
|
373
767
|
|
|
768
|
+
/** Error codes related to Google Play Services Maps integration. */
|
|
374
769
|
export enum RNMapErrorCode {
|
|
770
|
+
/** Google Play Services are missing on the device. */
|
|
375
771
|
PLAY_SERVICES_MISSING = 0,
|
|
772
|
+
|
|
773
|
+
/** Google Play Services are present but invalid. */
|
|
376
774
|
PLAY_SERVICES_INVALID = 1,
|
|
775
|
+
|
|
776
|
+
/** Google Play Services are disabled on the device. */
|
|
377
777
|
PLAY_SERVICES_DISABLED = 2,
|
|
778
|
+
|
|
779
|
+
/** Google Play Services are installed, but outdated. */
|
|
378
780
|
PLAY_SERVICES_OUTDATED = 3,
|
|
781
|
+
|
|
782
|
+
/** A newer version of Google Play Services is available. */
|
|
379
783
|
PLAY_SERVICE_UPDATE_AVAILABLE = 4,
|
|
784
|
+
|
|
785
|
+
/** Google Play Services are currently updating. */
|
|
380
786
|
PLAY_SERVICE_UPDATING = 5,
|
|
787
|
+
|
|
788
|
+
/** Unknown error. */
|
|
381
789
|
UNKNOWN = 6,
|
|
382
790
|
}
|