react-native-maplibre-lite 0.1.9 → 0.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +92 -6
- package/lib/module/components/MapView.js +167 -48
- package/lib/module/components/MapView.js.map +1 -1
- package/lib/module/components/NavigatorHud.js +152 -0
- package/lib/module/components/NavigatorHud.js.map +1 -0
- package/lib/module/components/NavigatorRecenterButton.js +48 -0
- package/lib/module/components/NavigatorRecenterButton.js.map +1 -0
- package/lib/module/components/NavigatorVoiceControl.js +173 -0
- package/lib/module/components/NavigatorVoiceControl.js.map +1 -0
- package/lib/module/components/navigatorChromeTheme.js +98 -0
- package/lib/module/components/navigatorChromeTheme.js.map +1 -0
- package/lib/module/components/navigatorManeuverIcon.js +210 -0
- package/lib/module/components/navigatorManeuverIcon.js.map +1 -0
- package/lib/module/components/navigatorVoiceCatalog.js +225 -0
- package/lib/module/components/navigatorVoiceCatalog.js.map +1 -0
- package/lib/module/components/navigatorVoiceKeys.js +14 -0
- package/lib/module/components/navigatorVoiceKeys.js.map +1 -0
- package/lib/module/components/navigatorVoicePlayer.js +100 -0
- package/lib/module/components/navigatorVoicePlayer.js.map +1 -0
- package/lib/module/components/navigatorVoiceStrings.js +31 -0
- package/lib/module/components/navigatorVoiceStrings.js.map +1 -0
- package/lib/module/components/types.js +47 -0
- package/lib/module/components/types.js.map +1 -1
- package/lib/module/components/useNavigatorVoice.js +78 -0
- package/lib/module/components/useNavigatorVoice.js.map +1 -0
- package/lib/module/components/utils.js +26 -0
- package/lib/module/components/utils.js.map +1 -1
- package/lib/module/components/webMapBuild.js +1 -1
- package/lib/module/components/webMapBuild.js.map +1 -1
- package/lib/module/index.js.map +1 -1
- package/lib/typescript/src/components/MapView.d.ts +15 -2
- package/lib/typescript/src/components/MapView.d.ts.map +1 -1
- package/lib/typescript/src/components/NavigatorHud.d.ts +13 -0
- package/lib/typescript/src/components/NavigatorHud.d.ts.map +1 -0
- package/lib/typescript/src/components/NavigatorRecenterButton.d.ts +11 -0
- package/lib/typescript/src/components/NavigatorRecenterButton.d.ts.map +1 -0
- package/lib/typescript/src/components/NavigatorVoiceControl.d.ts +20 -0
- package/lib/typescript/src/components/NavigatorVoiceControl.d.ts.map +1 -0
- package/lib/typescript/src/components/navigatorChromeTheme.d.ts +19 -0
- package/lib/typescript/src/components/navigatorChromeTheme.d.ts.map +1 -0
- package/lib/typescript/src/components/navigatorManeuverIcon.d.ts +20 -0
- package/lib/typescript/src/components/navigatorManeuverIcon.d.ts.map +1 -0
- package/lib/typescript/src/components/navigatorVoiceCatalog.d.ts +50 -0
- package/lib/typescript/src/components/navigatorVoiceCatalog.d.ts.map +1 -0
- package/lib/typescript/src/components/navigatorVoiceKeys.d.ts +10 -0
- package/lib/typescript/src/components/navigatorVoiceKeys.d.ts.map +1 -0
- package/lib/typescript/src/components/navigatorVoicePlayer.d.ts +15 -0
- package/lib/typescript/src/components/navigatorVoicePlayer.d.ts.map +1 -0
- package/lib/typescript/src/components/navigatorVoiceStrings.d.ts +19 -0
- package/lib/typescript/src/components/navigatorVoiceStrings.d.ts.map +1 -0
- package/lib/typescript/src/components/types.d.ts +205 -12
- package/lib/typescript/src/components/types.d.ts.map +1 -1
- package/lib/typescript/src/components/useNavigatorVoice.d.ts +20 -0
- package/lib/typescript/src/components/useNavigatorVoice.d.ts.map +1 -0
- package/lib/typescript/src/components/utils.d.ts +9 -0
- package/lib/typescript/src/components/utils.d.ts.map +1 -1
- package/lib/typescript/src/components/webMapBuild.d.ts +1 -1
- package/lib/typescript/src/components/webMapBuild.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts +1 -1
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/package.json +16 -7
- package/resources/README.md +62 -0
- package/resources/map.html +797 -0
- package/src/components/MapView.tsx +209 -58
- package/src/components/NavigatorHud.tsx +166 -0
- package/src/components/NavigatorRecenterButton.tsx +45 -0
- package/src/components/NavigatorVoiceControl.tsx +198 -0
- package/src/components/navigatorChromeTheme.ts +118 -0
- package/src/components/navigatorManeuverIcon.tsx +177 -0
- package/src/components/navigatorVoiceCatalog.ts +275 -0
- package/src/components/navigatorVoiceKeys.ts +132 -0
- package/src/components/navigatorVoicePlayer.tsx +126 -0
- package/src/components/navigatorVoiceStrings.ts +42 -0
- package/src/components/types.ts +198 -16
- package/src/components/useNavigatorVoice.ts +96 -0
- package/src/components/utils.ts +28 -0
- package/src/components/webMapBuild.ts +1 -1
- package/src/index.tsx +19 -0
package/README.md
CHANGED
|
@@ -36,15 +36,19 @@ It is designed for teams that want a practical MapLibre integration without nati
|
|
|
36
36
|
## Installation
|
|
37
37
|
|
|
38
38
|
```bash
|
|
39
|
-
npm install react-native-maplibre-lite react-native-webview @react-native-async-storage/async-storage @sayem314/react-native-keep-awake @react-native-community/geolocation
|
|
39
|
+
npm install react-native-maplibre-lite react-native-webview @react-native-async-storage/async-storage @sayem314/react-native-keep-awake @react-native-community/geolocation react-native-svg react-native-video
|
|
40
40
|
```
|
|
41
41
|
|
|
42
42
|
or
|
|
43
43
|
|
|
44
44
|
```bash
|
|
45
|
-
yarn add react-native-maplibre-lite react-native-webview @react-native-async-storage/async-storage @sayem314/react-native-keep-awake @react-native-community/geolocation
|
|
45
|
+
yarn add react-native-maplibre-lite react-native-webview @react-native-async-storage/async-storage @sayem314/react-native-keep-awake @react-native-community/geolocation react-native-svg react-native-video
|
|
46
46
|
```
|
|
47
47
|
|
|
48
|
+
`react-native-svg` and `react-native-video` are used by the navigator UI: the
|
|
49
|
+
maneuver/HUD icons are drawn with SVG, and voice guidance clips are played with
|
|
50
|
+
`react-native-video`. They are only needed when you enable `navigator`.
|
|
51
|
+
|
|
48
52
|
## Quick Start
|
|
49
53
|
|
|
50
54
|
```tsx
|
|
@@ -124,6 +128,14 @@ Coordinates use `[longitude, latitude]`, the same order as GeoJSON and GraphHopp
|
|
|
124
128
|
|
|
125
129
|
Navigator mode adds a route line, a current-position arrow, a driving HUD and GraphHopper-based route recalculation.
|
|
126
130
|
|
|
131
|
+
The route line and position arrow are drawn inside the WebView, while the
|
|
132
|
+
instruction HUD, the recenter / voice floating buttons and voice playback are
|
|
133
|
+
rendered natively by `MapView`. The WebView streams a HUD view-model and
|
|
134
|
+
abstract voice phrase keys to the native side; the native side renders the UI
|
|
135
|
+
(`react-native-svg`) and plays the matching audio clips (`react-native-video`),
|
|
136
|
+
owning voice selection, volume and persistence (`AsyncStorage`). Tapping the
|
|
137
|
+
recenter button sends a command back to the WebView to recenter the camera.
|
|
138
|
+
|
|
127
139
|
```tsx
|
|
128
140
|
import React, { useRef } from 'react';
|
|
129
141
|
import { Button, View } from 'react-native';
|
|
@@ -168,9 +180,22 @@ export function NavigatorScreen() {
|
|
|
168
180
|
|
|
169
181
|
Use `setNavigatorPosition(latitude, longitude)` to feed real GPS updates. The WebView side snaps the position to the route, marks arrival, or reroutes when the point is too far from the current route. `pickNavigatorPosition()` is a development helper: the next tap on the map becomes the current navigator position.
|
|
170
182
|
|
|
183
|
+
### Voice guidance (`navigatorVoiceUrl`)
|
|
184
|
+
|
|
185
|
+
Pass `navigatorVoiceUrl` (the `.../voices/data.json` catalog URL) to enable
|
|
186
|
+
voice guidance and the native voice floating button. The native side loads the
|
|
187
|
+
catalog and per-voice manifest, lets the user pick a voice and volume (1–5),
|
|
188
|
+
persists the choice with `AsyncStorage`, maps the phrase keys emitted by the
|
|
189
|
+
WebView to clip URLs and plays them with `react-native-video`. Voice guidance
|
|
190
|
+
uses the Russian phrase set, so it is active only when `navigatorLang` is not
|
|
191
|
+
`'en'`.
|
|
192
|
+
|
|
171
193
|
### Navigator chrome (`navigatorChrome`)
|
|
172
194
|
|
|
173
|
-
Optional object passed as `navigatorChrome` on `MapView`
|
|
195
|
+
Optional object passed as `navigatorChrome` on `MapView`. `accent`, `routeLine`
|
|
196
|
+
and `routeOutline` are forwarded to the WebView (route line and arrow); the
|
|
197
|
+
`hud*` keys theme the native HUD panel and the floating buttons. All keys are
|
|
198
|
+
optional; omit the prop to keep the default blue theme.
|
|
174
199
|
|
|
175
200
|
| Key | Purpose |
|
|
176
201
|
| --------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
@@ -213,7 +238,8 @@ Speed limit styling on the HUD is not configurable.
|
|
|
213
238
|
| `graphhopperUrl` | `string` | no | Base GraphHopper URL for navigator routes |
|
|
214
239
|
| `navigatorLang` | `'ru' \| 'en'` | no | Navigator HUD and instruction language. Defaults to `ru` |
|
|
215
240
|
| `navigatorProfile` | `NavigatorProfile \| string` | no | GraphHopper routing `profile` (`car`, `bike`, `foot`, …). Unknown → `car` |
|
|
216
|
-
| `navigatorChrome` | `NavigatorChromeParams` | no | Navigator colors: route line, arrow accent, HUD (see section above)
|
|
241
|
+
| `navigatorChrome` | `NavigatorChromeParams` | no | Navigator colors: route line, arrow accent, native HUD/FAB theme (see section above) |
|
|
242
|
+
| `navigatorVoiceUrl` | `string` | no | Voice catalog URL (`.../voices/data.json`). Enables native voice guidance + voice FAB |
|
|
217
243
|
| `onReady` | `() => void` | no | Called after the WebView map is initialized |
|
|
218
244
|
| `onMoveStart` | `(params) => void` | no | `movestart` event |
|
|
219
245
|
| `onMoveEnd` | `(params) => void` | no | `moveend` event |
|
|
@@ -224,6 +250,8 @@ Speed limit styling on the HUD is not configurable.
|
|
|
224
250
|
| `onNavigatorInstruction` | `(params) => void` | no | Called when a navigator instruction is advanced |
|
|
225
251
|
| `onNavigatorPositionSet` | `(params) => void` | no | Called after navigator position update/snap/reroute |
|
|
226
252
|
| `onMapLiteError` | `(error) => void` | no | WebView command error callback |
|
|
253
|
+
| `useNativeMapHtml` | `boolean` | no | Load `map.html` from native app resources instead of inline `MAP_HTML`. See below |
|
|
254
|
+
| `developerLocalhostBundleUrl`| `string` | no | Dev-only: load WebView bundle from a local URL instead of inline or native `map.html` |
|
|
227
255
|
|
|
228
256
|
### `MapView` ref
|
|
229
257
|
|
|
@@ -298,9 +326,67 @@ Tips:
|
|
|
298
326
|
- Keep number of simultaneously visible overlays moderate
|
|
299
327
|
- Prefer simpler map styles with fewer labels and 3D layers
|
|
300
328
|
|
|
329
|
+
## Native `map.html` bundle
|
|
330
|
+
|
|
331
|
+
By default, `MapView` loads the map runtime as inline HTML from the generated `webMapBuild.ts` bundle (`MAP_HTML`). For smaller JS bundle size or to update the WebView runtime without republishing the npm package, copy `resources/map.html` into your native app and enable `useNativeMapHtml`:
|
|
332
|
+
|
|
333
|
+
```tsx
|
|
334
|
+
<MapView
|
|
335
|
+
useNativeMapHtml
|
|
336
|
+
style={{ flex: 1 }}
|
|
337
|
+
center={[37.6173, 55.7558]}
|
|
338
|
+
zoom={11}
|
|
339
|
+
mapStyle="https://demotiles.maplibre.org/style.json"
|
|
340
|
+
/>
|
|
341
|
+
```
|
|
342
|
+
|
|
343
|
+
WebView source priority: `developerLocalhostBundleUrl` → `useNativeMapHtml` → inline `MAP_HTML`.
|
|
344
|
+
|
|
345
|
+
### Android
|
|
346
|
+
|
|
347
|
+
Copy `map.html` from the package (`node_modules/react-native-maplibre-lite/resources/map.html`) or from this repo after building `webProject`:
|
|
348
|
+
|
|
349
|
+
```
|
|
350
|
+
android/app/src/main/assets/map.html
|
|
351
|
+
```
|
|
352
|
+
|
|
353
|
+
Create the `assets` folder if it does not exist. `MapView` loads it as `file:///android_asset/map.html`.
|
|
354
|
+
|
|
355
|
+
### iOS
|
|
356
|
+
|
|
357
|
+
Copy `map.html` into your app project, for example:
|
|
358
|
+
|
|
359
|
+
```
|
|
360
|
+
ios/MyApp/map.html
|
|
361
|
+
```
|
|
362
|
+
|
|
363
|
+
In Xcode:
|
|
364
|
+
|
|
365
|
+
1. Drag `map.html` into the project tree (not only into Finder).
|
|
366
|
+
2. Enable **Copy items if needed** and select your app target.
|
|
367
|
+
3. Confirm the file appears under **Build Phases → Copy Bundle Resources**.
|
|
368
|
+
|
|
369
|
+
The URI is resolved automatically from the `.app` bundle path (release / standalone builds). In Metro dev builds on iOS, prefer the default inline HTML or `developerLocalhostBundleUrl`.
|
|
370
|
+
|
|
371
|
+
### Updating `map.html`
|
|
372
|
+
|
|
373
|
+
After changes in `webProject`, rebuild and recopy the file into both platforms:
|
|
374
|
+
|
|
375
|
+
```bash
|
|
376
|
+
cd webProject
|
|
377
|
+
npm run build
|
|
378
|
+
cp ../resources/map.html android/app/src/main/assets/map.html
|
|
379
|
+
cp ../resources/map.html ios/MyApp/map.html
|
|
380
|
+
```
|
|
381
|
+
|
|
382
|
+
See also [`resources/README.md`](./resources/README.md).
|
|
383
|
+
|
|
301
384
|
## Web Bundle Development
|
|
302
385
|
|
|
303
|
-
The WebView runtime is generated from `webProject` and committed as
|
|
386
|
+
The WebView runtime is generated from `webProject` and committed as:
|
|
387
|
+
|
|
388
|
+
- `src/components/webMapBuild.ts` — inline `MAP_HTML` used by `MapView` by default
|
|
389
|
+
- `resources/map.html` — same single-file bundle for native app resources (`useNativeMapHtml`)
|
|
304
390
|
|
|
305
391
|
```bash
|
|
306
392
|
cd webProject
|
|
@@ -308,7 +394,7 @@ npm install
|
|
|
308
394
|
npm run build
|
|
309
395
|
```
|
|
310
396
|
|
|
311
|
-
`npm run build` runs Vite and then `webProject/scripts/inlineHtml.mjs`, which writes
|
|
397
|
+
`npm run build` runs Vite and then `webProject/scripts/inlineHtml.mjs`, which writes both `webMapBuild.ts` and `resources/map.html`.
|
|
312
398
|
|
|
313
399
|
## Contributing
|
|
314
400
|
|
|
@@ -1,15 +1,23 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import { createContext, forwardRef, useContext, useEffect, useImperativeHandle, useRef, useState } from 'react';
|
|
3
|
+
import { createContext, forwardRef, useContext, useEffect, useImperativeHandle, useMemo, useRef, useState } from 'react';
|
|
4
4
|
import { Platform, View } from 'react-native';
|
|
5
5
|
import { WebView } from 'react-native-webview';
|
|
6
6
|
import Geolocation from '@react-native-community/geolocation';
|
|
7
7
|
import KeepAwake from '@sayem314/react-native-keep-awake';
|
|
8
8
|
import MapPlaceholder from "./MapPlaceholder.js";
|
|
9
9
|
import MapSelectPoint from "./MapSelectPoint.js";
|
|
10
|
-
import {
|
|
10
|
+
import { NavigatorHud } from "./NavigatorHud.js";
|
|
11
|
+
import { NavigatorRecenterButton } from "./NavigatorRecenterButton.js";
|
|
12
|
+
import { NavigatorVoiceControl } from "./NavigatorVoiceControl.js";
|
|
13
|
+
import { resolveNavigatorChromeTheme } from "./navigatorChromeTheme.js";
|
|
14
|
+
import { keysToClipUrls, volumeLevelToGain } from "./navigatorVoiceCatalog.js";
|
|
15
|
+
import { NavigatorVoicePlayer } from "./navigatorVoicePlayer.js";
|
|
16
|
+
import { navigatorUiStrings } from "./navigatorVoiceStrings.js";
|
|
17
|
+
import { useNavigatorVoice } from "./useNavigatorVoice.js";
|
|
18
|
+
import { loadResources, getNativeMapHtmlUri } from "./utils.js";
|
|
11
19
|
import { MAP_HTML } from "./webMapBuild.js";
|
|
12
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
20
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
13
21
|
const MapViewContext = /*#__PURE__*/createContext(null);
|
|
14
22
|
export const useMapViewContext = () => {
|
|
15
23
|
const ctx = useContext(MapViewContext);
|
|
@@ -32,6 +40,34 @@ const getBoundsFromCoords = coords => {
|
|
|
32
40
|
}
|
|
33
41
|
return [[minLng, minLat], [maxLng, maxLat]];
|
|
34
42
|
};
|
|
43
|
+
const toWebMarkerParams = props => ({
|
|
44
|
+
uniqueId: props.uniqueId,
|
|
45
|
+
latitude: props.latitude,
|
|
46
|
+
longitude: props.longitude,
|
|
47
|
+
color: props.color,
|
|
48
|
+
iconUrl: props.iconUrl,
|
|
49
|
+
iconWidth: props.iconWidth,
|
|
50
|
+
iconHeight: props.iconHeight,
|
|
51
|
+
html: props.html
|
|
52
|
+
});
|
|
53
|
+
const toWebPolylineParams = props => ({
|
|
54
|
+
uniqueId: props.uniqueId,
|
|
55
|
+
coordinates: props.coordinates,
|
|
56
|
+
color: props.color,
|
|
57
|
+
width: props.width
|
|
58
|
+
});
|
|
59
|
+
const toWebPolygonParams = props => ({
|
|
60
|
+
uniqueId: props.uniqueId,
|
|
61
|
+
coordinates: props.coordinates,
|
|
62
|
+
fillColor: props.fillColor,
|
|
63
|
+
fillOpacity: props.fillOpacity,
|
|
64
|
+
strokeColor: props.strokeColor,
|
|
65
|
+
strokeOpacity: props.strokeOpacity,
|
|
66
|
+
strokeWidth: props.strokeWidth
|
|
67
|
+
});
|
|
68
|
+
const toWebRemoveParams = uniqueId => ({
|
|
69
|
+
uniqueId
|
|
70
|
+
});
|
|
35
71
|
|
|
36
72
|
/** Минимальный интервал между отправками позиции в WebView (мост RN↔JS). */
|
|
37
73
|
const NAVIGATOR_GPS_FORWARD_MIN_MS = 500;
|
|
@@ -42,10 +78,42 @@ export const MapView = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
42
78
|
useEffect(() => {
|
|
43
79
|
initedRef.current = inited;
|
|
44
80
|
}, [inited]);
|
|
81
|
+
|
|
82
|
+
/** View-model HUD маршрута, приходит из WebView (`navigatorHud`). */
|
|
83
|
+
const [hudState, setHudState] = useState(null);
|
|
84
|
+
const voicePlayerRef = useRef(null);
|
|
85
|
+
|
|
86
|
+
/** Озвучка ограничена русским набором фраз (как в веб-навигаторе). */
|
|
87
|
+
const voiceSupported = props.navigator === true && props.navigatorLang !== 'en';
|
|
88
|
+
const voice = useNavigatorVoice(voiceSupported ? props.navigatorVoiceUrl : undefined);
|
|
89
|
+
const chromeTheme = useMemo(() => resolveNavigatorChromeTheme(props.navigatorChrome), [props.navigatorChrome]);
|
|
90
|
+
const navigatorStrings = useMemo(() => navigatorUiStrings(props.navigatorLang), [props.navigatorLang]);
|
|
91
|
+
useEffect(() => {
|
|
92
|
+
voicePlayerRef.current?.setVolume(volumeLevelToGain(voice.volumeLevel));
|
|
93
|
+
}, [voice.volumeLevel]);
|
|
94
|
+
const handleNavigatorVoice = params => {
|
|
95
|
+
const player = voicePlayerRef.current;
|
|
96
|
+
if (!player) return;
|
|
97
|
+
if (params.action === 'stop') {
|
|
98
|
+
player.stop();
|
|
99
|
+
return;
|
|
100
|
+
}
|
|
101
|
+
if (params.action === 'prefetch') return;
|
|
102
|
+
if (!voice.voiceEnabled || !voice.manifest || !voice.clipBaseUrl) return;
|
|
103
|
+
const urls = keysToClipUrls(voice.manifest, voice.clipBaseUrl, params.keys);
|
|
104
|
+
if (urls.length > 0) player.playUrls(urls);
|
|
105
|
+
};
|
|
45
106
|
const coordsInMapRef = useRef({});
|
|
46
107
|
const markersClickHandlers = useRef({});
|
|
47
108
|
const mapSelectPointRef = useRef(null);
|
|
48
109
|
const performanceMode = props.performanceMode ?? (Platform.OS === 'android' ? 'balanced' : 'quality');
|
|
110
|
+
const webViewSource = props.developerLocalhostBundleUrl ? {
|
|
111
|
+
uri: props.developerLocalhostBundleUrl
|
|
112
|
+
} : props.useNativeMapHtml ? {
|
|
113
|
+
uri: getNativeMapHtmlUri()
|
|
114
|
+
} : {
|
|
115
|
+
html: MAP_HTML
|
|
116
|
+
};
|
|
49
117
|
const fallbackPixelRatio = performanceMode === 'performance' ? 0.85 : performanceMode === 'balanced' && Platform.OS === 'android' ? 1 : undefined;
|
|
50
118
|
const sendToWebView = message => {
|
|
51
119
|
if (__DEV__) {
|
|
@@ -62,32 +130,33 @@ export const MapView = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
62
130
|
}
|
|
63
131
|
const mapStyleText = await loadResources(props.mapStyle);
|
|
64
132
|
const mapStyle = JSON.parse(mapStyleText);
|
|
133
|
+
const initParams = {
|
|
134
|
+
mapStyle: mapStyle,
|
|
135
|
+
zoomEnabled: props.zoomEnabled ?? false,
|
|
136
|
+
scrollEnabled: props.scrollEnabled ?? false,
|
|
137
|
+
center: props.center,
|
|
138
|
+
zoom: props.zoom,
|
|
139
|
+
minZoom: props.minZoom,
|
|
140
|
+
maxZoom: props.maxZoom,
|
|
141
|
+
antialias: false,
|
|
142
|
+
crossSourceCollisions: performanceMode !== 'performance',
|
|
143
|
+
fadeDuration: performanceMode === 'performance' ? 0 : 120,
|
|
144
|
+
pixelRatio: props.pixelRatio ?? fallbackPixelRatio,
|
|
145
|
+
simplifyStyle: performanceMode !== 'quality',
|
|
146
|
+
aggressiveSimplifyStyle: performanceMode === 'performance',
|
|
147
|
+
maxPitch: performanceMode === 'performance' ? 0 : 45,
|
|
148
|
+
renderWorldCopies: performanceMode === 'quality',
|
|
149
|
+
turboWhileMoving: props.turboWhileMoving ?? performanceMode === 'performance',
|
|
150
|
+
debugMode: props.debugMode ?? false,
|
|
151
|
+
navigator: props.navigator === true,
|
|
152
|
+
graphhopperUrl: props.graphhopperUrl,
|
|
153
|
+
navigatorLang: props.navigatorLang,
|
|
154
|
+
navigatorProfile: props.navigatorProfile,
|
|
155
|
+
navigatorChrome: props.navigatorChrome
|
|
156
|
+
};
|
|
65
157
|
sendToWebView({
|
|
66
158
|
function: 'init',
|
|
67
|
-
params:
|
|
68
|
-
mapStyle: mapStyle,
|
|
69
|
-
zoomEnabled: props.zoomEnabled ?? false,
|
|
70
|
-
scrollEnabled: props.scrollEnabled ?? false,
|
|
71
|
-
center: props.center,
|
|
72
|
-
zoom: props.zoom,
|
|
73
|
-
minZoom: props.minZoom,
|
|
74
|
-
maxZoom: props.maxZoom,
|
|
75
|
-
antialias: false,
|
|
76
|
-
crossSourceCollisions: performanceMode !== 'performance',
|
|
77
|
-
fadeDuration: performanceMode === 'performance' ? 0 : 120,
|
|
78
|
-
pixelRatio: props.pixelRatio ?? fallbackPixelRatio,
|
|
79
|
-
simplifyStyle: performanceMode !== 'quality',
|
|
80
|
-
aggressiveSimplifyStyle: performanceMode === 'performance',
|
|
81
|
-
maxPitch: performanceMode === 'performance' ? 0 : 45,
|
|
82
|
-
renderWorldCopies: performanceMode === 'quality',
|
|
83
|
-
turboWhileMoving: props.turboWhileMoving ?? performanceMode === 'performance',
|
|
84
|
-
debugMode: props.debugMode ?? false,
|
|
85
|
-
navigator: props.navigator === true,
|
|
86
|
-
graphhopperUrl: props.graphhopperUrl,
|
|
87
|
-
navigatorLang: props.navigatorLang,
|
|
88
|
-
navigatorProfile: props.navigatorProfile,
|
|
89
|
-
navigatorChrome: props.navigatorChrome
|
|
90
|
-
}
|
|
159
|
+
params: initParams
|
|
91
160
|
});
|
|
92
161
|
};
|
|
93
162
|
const updateMarkerClickHandler = propsMarker => {
|
|
@@ -104,7 +173,7 @@ export const MapView = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
104
173
|
updateMarkerClickHandler(propsMarker);
|
|
105
174
|
sendToWebView({
|
|
106
175
|
function: 'addMarker',
|
|
107
|
-
params: propsMarker
|
|
176
|
+
params: toWebMarkerParams(propsMarker)
|
|
108
177
|
});
|
|
109
178
|
scheduleAutoFitBounds();
|
|
110
179
|
};
|
|
@@ -113,7 +182,7 @@ export const MapView = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
113
182
|
delete markersClickHandlers.current[propsMarker.uniqueId];
|
|
114
183
|
sendToWebView({
|
|
115
184
|
function: 'removeMarker',
|
|
116
|
-
params: propsMarker
|
|
185
|
+
params: toWebRemoveParams(propsMarker.uniqueId)
|
|
117
186
|
});
|
|
118
187
|
scheduleAutoFitBounds();
|
|
119
188
|
};
|
|
@@ -123,7 +192,7 @@ export const MapView = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
123
192
|
}
|
|
124
193
|
sendToWebView({
|
|
125
194
|
function: 'addPolyline',
|
|
126
|
-
params: propsPolyline
|
|
195
|
+
params: toWebPolylineParams(propsPolyline)
|
|
127
196
|
});
|
|
128
197
|
scheduleAutoFitBounds();
|
|
129
198
|
};
|
|
@@ -131,7 +200,7 @@ export const MapView = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
131
200
|
delete coordsInMapRef.current[propsPolyline.uniqueId];
|
|
132
201
|
sendToWebView({
|
|
133
202
|
function: 'removePolyline',
|
|
134
|
-
params: propsPolyline
|
|
203
|
+
params: toWebRemoveParams(propsPolyline.uniqueId)
|
|
135
204
|
});
|
|
136
205
|
scheduleAutoFitBounds();
|
|
137
206
|
};
|
|
@@ -141,7 +210,7 @@ export const MapView = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
141
210
|
}
|
|
142
211
|
sendToWebView({
|
|
143
212
|
function: 'addPolygon',
|
|
144
|
-
params: propsPolygon
|
|
213
|
+
params: toWebPolygonParams(propsPolygon)
|
|
145
214
|
});
|
|
146
215
|
scheduleAutoFitBounds();
|
|
147
216
|
};
|
|
@@ -149,7 +218,7 @@ export const MapView = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
149
218
|
delete coordsInMapRef.current[propsPolygon.uniqueId];
|
|
150
219
|
sendToWebView({
|
|
151
220
|
function: 'removePolygon',
|
|
152
|
-
params: propsPolygon
|
|
221
|
+
params: toWebRemoveParams(propsPolygon.uniqueId)
|
|
153
222
|
});
|
|
154
223
|
scheduleAutoFitBounds();
|
|
155
224
|
};
|
|
@@ -204,13 +273,17 @@ export const MapView = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
204
273
|
params: {}
|
|
205
274
|
});
|
|
206
275
|
};
|
|
207
|
-
const setNavigatorPosition = (latitude, longitude) => {
|
|
276
|
+
const setNavigatorPosition = (latitude, longitude, accuracy) => {
|
|
277
|
+
const params = {
|
|
278
|
+
latitude,
|
|
279
|
+
longitude
|
|
280
|
+
};
|
|
281
|
+
if (typeof accuracy === 'number' && Number.isFinite(accuracy) && accuracy >= 0) {
|
|
282
|
+
params.accuracy = accuracy;
|
|
283
|
+
}
|
|
208
284
|
sendToWebView({
|
|
209
285
|
function: 'setNavigatorPosition',
|
|
210
|
-
params
|
|
211
|
-
latitude,
|
|
212
|
-
longitude
|
|
213
|
-
}
|
|
286
|
+
params
|
|
214
287
|
});
|
|
215
288
|
};
|
|
216
289
|
const pickNavigatorPosition = () => {
|
|
@@ -219,6 +292,12 @@ export const MapView = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
219
292
|
params: {}
|
|
220
293
|
});
|
|
221
294
|
};
|
|
295
|
+
const recenterNavigatorCamera = () => {
|
|
296
|
+
sendToWebView({
|
|
297
|
+
function: 'recenterNavigatorCamera',
|
|
298
|
+
params: {}
|
|
299
|
+
});
|
|
300
|
+
};
|
|
222
301
|
useImperativeHandle(ref, () => ({
|
|
223
302
|
fitBounds,
|
|
224
303
|
flyTo,
|
|
@@ -243,7 +322,14 @@ export const MapView = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
243
322
|
updateProps.scrollEnabled = props.scrollEnabled;
|
|
244
323
|
}
|
|
245
324
|
if (lastPropsRef.current.mapStyle !== props.mapStyle) {
|
|
246
|
-
|
|
325
|
+
void loadResources(props.mapStyle).then(mapStyleText => {
|
|
326
|
+
sendToWebView({
|
|
327
|
+
function: 'update',
|
|
328
|
+
params: {
|
|
329
|
+
mapStyle: JSON.parse(mapStyleText)
|
|
330
|
+
}
|
|
331
|
+
});
|
|
332
|
+
});
|
|
247
333
|
}
|
|
248
334
|
lastPropsRef.current = props;
|
|
249
335
|
if (Object.keys(updateProps).length > 0) {
|
|
@@ -278,6 +364,9 @@ export const MapView = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
278
364
|
case 'idle':
|
|
279
365
|
props.onIdle?.(msg.params);
|
|
280
366
|
break;
|
|
367
|
+
case 'error':
|
|
368
|
+
props.onMapError?.(msg.params);
|
|
369
|
+
break;
|
|
281
370
|
case 'navigatorRouteSet':
|
|
282
371
|
props.onNavigatorRouteSet?.(msg.params);
|
|
283
372
|
break;
|
|
@@ -287,6 +376,12 @@ export const MapView = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
287
376
|
case 'navigatorPositionSet':
|
|
288
377
|
props.onNavigatorPositionSet?.(msg.params);
|
|
289
378
|
break;
|
|
379
|
+
case 'navigatorHud':
|
|
380
|
+
setHudState(msg.params);
|
|
381
|
+
break;
|
|
382
|
+
case 'navigatorVoice':
|
|
383
|
+
handleNavigatorVoice(msg.params);
|
|
384
|
+
break;
|
|
290
385
|
}
|
|
291
386
|
return;
|
|
292
387
|
}
|
|
@@ -327,6 +422,7 @@ export const MapView = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
327
422
|
}
|
|
328
423
|
const lat = position.coords.latitude;
|
|
329
424
|
const lng = position.coords.longitude;
|
|
425
|
+
const accuracy = position.coords.accuracy;
|
|
330
426
|
if (!Number.isFinite(lat) || !Number.isFinite(lng)) {
|
|
331
427
|
return;
|
|
332
428
|
}
|
|
@@ -335,12 +431,16 @@ export const MapView = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
335
431
|
return;
|
|
336
432
|
}
|
|
337
433
|
lastForwardedAt = now;
|
|
434
|
+
const params = {
|
|
435
|
+
latitude: lat,
|
|
436
|
+
longitude: lng
|
|
437
|
+
};
|
|
438
|
+
if (typeof accuracy === 'number' && Number.isFinite(accuracy) && accuracy >= 0) {
|
|
439
|
+
params.accuracy = accuracy;
|
|
440
|
+
}
|
|
338
441
|
sendToWebViewRef.current({
|
|
339
442
|
function: 'setNavigatorPosition',
|
|
340
|
-
params
|
|
341
|
-
latitude: lat,
|
|
342
|
-
longitude: lng
|
|
343
|
-
}
|
|
443
|
+
params
|
|
344
444
|
});
|
|
345
445
|
}, error => {
|
|
346
446
|
console.error('MapView: error watching position', error);
|
|
@@ -376,11 +476,7 @@ export const MapView = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
376
476
|
backgroundColor: 'transparent'
|
|
377
477
|
},
|
|
378
478
|
originWhitelist: ['*'],
|
|
379
|
-
source:
|
|
380
|
-
uri: props.developerLocalhostBundleUrl
|
|
381
|
-
} : {
|
|
382
|
-
html: MAP_HTML
|
|
383
|
-
},
|
|
479
|
+
source: webViewSource,
|
|
384
480
|
onMessage: event => {
|
|
385
481
|
onReceiveMessageFromWebView(event.nativeEvent.data);
|
|
386
482
|
},
|
|
@@ -403,6 +499,29 @@ export const MapView = /*#__PURE__*/forwardRef((props, ref) => {
|
|
|
403
499
|
color: props.selectPointColor ?? '#000',
|
|
404
500
|
backgroundColor: props.selectPointBackgroundColor ?? '#fff'
|
|
405
501
|
})
|
|
502
|
+
}), inited && props.navigator && /*#__PURE__*/_jsxs(_Fragment, {
|
|
503
|
+
children: [/*#__PURE__*/_jsx(NavigatorHud, {
|
|
504
|
+
state: hudState,
|
|
505
|
+
theme: chromeTheme,
|
|
506
|
+
pickHint: navigatorStrings.pickHint
|
|
507
|
+
}), /*#__PURE__*/_jsx(NavigatorRecenterButton, {
|
|
508
|
+
theme: chromeTheme,
|
|
509
|
+
accessibilityLabel: navigatorStrings.recenterAria,
|
|
510
|
+
onPress: recenterNavigatorCamera
|
|
511
|
+
}), voiceSupported && /*#__PURE__*/_jsx(NavigatorVoiceControl, {
|
|
512
|
+
theme: chromeTheme,
|
|
513
|
+
strings: navigatorStrings,
|
|
514
|
+
catalog: voice.catalog,
|
|
515
|
+
selectedDir: voice.selectedDir,
|
|
516
|
+
voiceEnabled: voice.voiceEnabled,
|
|
517
|
+
volumeLevel: voice.volumeLevel,
|
|
518
|
+
onSelectVoice: voice.selectVoice,
|
|
519
|
+
onSelectVolume: voice.selectVolume,
|
|
520
|
+
onDisable: voice.disableVoice
|
|
521
|
+
}), voiceSupported && /*#__PURE__*/_jsx(NavigatorVoicePlayer, {
|
|
522
|
+
ref: voicePlayerRef,
|
|
523
|
+
initialVolume: volumeLevelToGain(voice.volumeLevel)
|
|
524
|
+
})]
|
|
406
525
|
})]
|
|
407
526
|
}), !inited && /*#__PURE__*/_jsx(MapPlaceholder, {
|
|
408
527
|
theme: props.placeholderTheme ?? 'light'
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createContext","forwardRef","useContext","useEffect","useImperativeHandle","useRef","useState","Platform","View","WebView","Geolocation","KeepAwake","MapPlaceholder","MapSelectPoint","loadResources","MAP_HTML","jsx","_jsx","jsxs","_jsxs","MapViewContext","useMapViewContext","ctx","Error","getBoundsFromCoords","coords","length","minLng","maxLng","minLat","maxLat","lng","lat","NAVIGATOR_GPS_FORWARD_MIN_MS","MapView","props","ref","webViewRef","inited","setInited","initedRef","current","coordsInMapRef","markersClickHandlers","mapSelectPointRef","performanceMode","OS","fallbackPixelRatio","undefined","sendToWebView","message","__DEV__","console","log","postMessage","JSON","stringify","sendToWebViewRef","initMap","mapStyle","mapStyleText","parse","function","params","zoomEnabled","scrollEnabled","center","zoom","minZoom","maxZoom","antialias","crossSourceCollisions","fadeDuration","pixelRatio","simplifyStyle","aggressiveSimplifyStyle","maxPitch","renderWorldCopies","turboWhileMoving","debugMode","navigator","graphhopperUrl","navigatorLang","navigatorProfile","navigatorChrome","updateMarkerClickHandler","propsMarker","onPress","uniqueId","addMarker","latitude","longitude","ignoreFitBounds","scheduleAutoFitBounds","removeMarker","addPolyline","propsPolyline","coordinates","removePolyline","addPolygon","propsPolygon","removePolygon","autoFitBoundsTimeoutRef","autoFitBounds","clearTimeout","setTimeout","fitBounds","fitBoundsPadding","Object","values","flat","bounds","padding","duration","fitBoundsDuration","flyTo","flyToDuration","setNavigatorPoint","advanceNavigatorInstruction","setNavigatorPosition","pickNavigatorPosition","lastPropsRef","updateProps","keys","onReceiveMessageFromWebView","data","msg","type","event","up","onMoveStart","onMoveEnd","down","onZoomStart","onZoomEnd","onIdle","onNavigatorRouteSet","onNavigatorInstruction","onNavigatorPositionSet","onMapLiteError","onReady","handler","e","warn","lastForwardedAt","watchId","watchPosition","position","Number","isFinite","now","Date","error","enableHighAccuracy","interval","fastestInterval","distanceFilter","maximumAge","clearWatch","style","children","Provider","value","flex","backgroundColor","originWhitelist","source","developerLocalhostBundleUrl","uri","html","onMessage","nativeEvent","javaScriptEnabled","domStorageEnabled","showSelectPoint","pointerEvents","justifyContent","alignItems","top","left","width","height","color","selectPointColor","selectPointBackgroundColor","theme","placeholderTheme"],"sourceRoot":"../../../src","sources":["components/MapView.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["createContext","forwardRef","useContext","useEffect","useImperativeHandle","useMemo","useRef","useState","Platform","View","WebView","Geolocation","KeepAwake","MapPlaceholder","MapSelectPoint","NavigatorHud","NavigatorRecenterButton","NavigatorVoiceControl","resolveNavigatorChromeTheme","keysToClipUrls","volumeLevelToGain","NavigatorVoicePlayer","navigatorUiStrings","useNavigatorVoice","loadResources","getNativeMapHtmlUri","MAP_HTML","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","MapViewContext","useMapViewContext","ctx","Error","getBoundsFromCoords","coords","length","minLng","maxLng","minLat","maxLat","lng","lat","toWebMarkerParams","props","uniqueId","latitude","longitude","color","iconUrl","iconWidth","iconHeight","html","toWebPolylineParams","coordinates","width","toWebPolygonParams","fillColor","fillOpacity","strokeColor","strokeOpacity","strokeWidth","toWebRemoveParams","NAVIGATOR_GPS_FORWARD_MIN_MS","MapView","ref","webViewRef","inited","setInited","initedRef","current","hudState","setHudState","voicePlayerRef","voiceSupported","navigator","navigatorLang","voice","navigatorVoiceUrl","undefined","chromeTheme","navigatorChrome","navigatorStrings","setVolume","volumeLevel","handleNavigatorVoice","params","player","action","stop","voiceEnabled","manifest","clipBaseUrl","urls","keys","playUrls","coordsInMapRef","markersClickHandlers","mapSelectPointRef","performanceMode","OS","webViewSource","developerLocalhostBundleUrl","uri","useNativeMapHtml","fallbackPixelRatio","sendToWebView","message","__DEV__","console","log","postMessage","JSON","stringify","sendToWebViewRef","initMap","mapStyle","mapStyleText","parse","initParams","zoomEnabled","scrollEnabled","center","zoom","minZoom","maxZoom","antialias","crossSourceCollisions","fadeDuration","pixelRatio","simplifyStyle","aggressiveSimplifyStyle","maxPitch","renderWorldCopies","turboWhileMoving","debugMode","graphhopperUrl","navigatorProfile","function","updateMarkerClickHandler","propsMarker","onPress","addMarker","ignoreFitBounds","scheduleAutoFitBounds","removeMarker","addPolyline","propsPolyline","removePolyline","addPolygon","propsPolygon","removePolygon","autoFitBoundsTimeoutRef","autoFitBounds","clearTimeout","setTimeout","fitBounds","fitBoundsPadding","Object","values","flat","bounds","padding","duration","fitBoundsDuration","flyTo","flyToDuration","setNavigatorPoint","advanceNavigatorInstruction","setNavigatorPosition","accuracy","Number","isFinite","pickNavigatorPosition","recenterNavigatorCamera","lastPropsRef","updateProps","then","onReceiveMessageFromWebView","data","msg","type","event","up","onMoveStart","onMoveEnd","down","onZoomStart","onZoomEnd","onIdle","onMapError","onNavigatorRouteSet","onNavigatorInstruction","onNavigatorPositionSet","onMapLiteError","onReady","handler","e","warn","lastForwardedAt","watchId","watchPosition","position","now","Date","error","enableHighAccuracy","interval","fastestInterval","distanceFilter","maximumAge","clearWatch","style","children","Provider","value","flex","backgroundColor","originWhitelist","source","onMessage","nativeEvent","javaScriptEnabled","domStorageEnabled","showSelectPoint","pointerEvents","justifyContent","alignItems","top","left","height","selectPointColor","selectPointBackgroundColor","state","theme","pickHint","accessibilityLabel","recenterAria","strings","catalog","selectedDir","onSelectVoice","selectVoice","onSelectVolume","selectVolume","onDisable","disableVoice","initialVolume","placeholderTheme"],"sourceRoot":"../../../src","sources":["components/MapView.tsx"],"mappings":"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","ignoreList":[]}
|