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
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webMapBuild.d.ts","sourceRoot":"","sources":["../../../../src/components/webMapBuild.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,QAAQ,
|
|
1
|
+
{"version":3,"file":"webMapBuild.d.ts","sourceRoot":"","sources":["../../../../src/components/webMapBuild.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,QAAQ,gi/zCAA0z0zC,CAAC"}
|
|
@@ -5,6 +5,6 @@ import { Polyline } from './components/Polyline';
|
|
|
5
5
|
export { MapView, Marker, Polygon, Polyline };
|
|
6
6
|
export default MapView;
|
|
7
7
|
export type { MapViewRef } from './components/MapView';
|
|
8
|
-
export type { EventParams, MapLiteWebError, MarkerProps, NavigatorChromeParams, NavigatorInstructionParams, NavigatorLang, NavigatorLngLat, NavigatorProfile, NavigatorPositionMode, NavigatorPositionSetParams, NavigatorRouteSetParams, PolygonProps, PolylineProps, } from './components/types';
|
|
8
|
+
export type { EventParams, MapLiteFitBoundsParams, MapLiteFlyToParams, MapLiteInitParams, MapLiteMapErrorEventParams, MapLiteMapEventName, MapLiteMapEventParamsMap, MapLiteMarkerParams, MapLitePolygonParams, MapLitePolylineParams, MapLiteRemoveOverlayParams, MapLiteSetNavigatorPointParams, MapLiteSetNavigatorPositionParams, MapLiteStyleSpecification, MapLiteUpdateParams, MapLiteWebError, MarkerProps, NativeToWebCommand, NavigatorChromeParams, NavigatorHudState, NavigatorInstructionParams, NavigatorLang, NavigatorLngLat, NavigatorProfile, NavigatorPositionMode, NavigatorPositionSetParams, NavigatorRouteSetParams, NavigatorVoiceAction, NavigatorVoicePlayParams, PolygonProps, PolylineProps, WebToNativeMessage, } from './components/types';
|
|
9
9
|
export { NAVIGATOR_PROFILE_IDS } from './components/types';
|
|
10
10
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjD,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;AAC9C,eAAe,OAAO,CAAC;AAEvB,YAAY,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACvD,YAAY,EACR,WAAW,EACX,eAAe,EACf,WAAW,EACX,qBAAqB,EACrB,0BAA0B,EAC1B,aAAa,EACb,eAAe,EACf,gBAAgB,EAChB,qBAAqB,EACrB,0BAA0B,EAC1B,uBAAuB,EACvB,YAAY,EACZ,aAAa,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAEjD,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;AAC9C,eAAe,OAAO,CAAC;AAEvB,YAAY,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACvD,YAAY,EACR,WAAW,EACX,sBAAsB,EACtB,kBAAkB,EAClB,iBAAiB,EACjB,0BAA0B,EAC1B,mBAAmB,EACnB,wBAAwB,EACxB,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,0BAA0B,EAC1B,8BAA8B,EAC9B,iCAAiC,EACjC,yBAAyB,EACzB,mBAAmB,EACnB,eAAe,EACf,WAAW,EACX,kBAAkB,EAClB,qBAAqB,EACrB,iBAAiB,EACjB,0BAA0B,EAC1B,aAAa,EACb,eAAe,EACf,gBAAgB,EAChB,qBAAqB,EACrB,0BAA0B,EAC1B,uBAAuB,EACvB,oBAAoB,EACpB,wBAAwB,EACxB,YAAY,EACZ,aAAa,EACb,kBAAkB,GACrB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-native-maplibre-lite",
|
|
3
|
-
"version": "0.1
|
|
3
|
+
"version": "0.2.1",
|
|
4
4
|
"description": "Lightweight MapLibre GL JS wrapper using WebView",
|
|
5
5
|
"main": "./lib/module/index.js",
|
|
6
6
|
"types": "./lib/typescript/src/index.d.ts",
|
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
},
|
|
15
15
|
"files": [
|
|
16
16
|
"demo",
|
|
17
|
+
"resources",
|
|
17
18
|
"src",
|
|
18
19
|
"lib",
|
|
19
20
|
"android",
|
|
@@ -65,9 +66,13 @@
|
|
|
65
66
|
"@eslint/eslintrc": "^3.3.0",
|
|
66
67
|
"@eslint/js": "^9.22.0",
|
|
67
68
|
"@evilmartians/lefthook": "^1.5.0",
|
|
69
|
+
"@react-native-async-storage/async-storage": "*",
|
|
70
|
+
"@react-native-community/geolocation": "*",
|
|
68
71
|
"@react-native/babel-preset": "0.78.2",
|
|
69
72
|
"@react-native/eslint-config": "^0.78.0",
|
|
70
73
|
"@release-it/conventional-changelog": "^9.0.2",
|
|
74
|
+
"@sayem314/react-native-keep-awake": "*",
|
|
75
|
+
"@types/geojson": "*",
|
|
71
76
|
"@types/jest": "^29.5.5",
|
|
72
77
|
"@types/react": "^19.0.12",
|
|
73
78
|
"commitlint": "^19.6.1",
|
|
@@ -80,18 +85,22 @@
|
|
|
80
85
|
"react": "19.0.0",
|
|
81
86
|
"react-native": "0.79.3",
|
|
82
87
|
"react-native-builder-bob": "^0.40.8",
|
|
88
|
+
"react-native-svg": "^15.0.0",
|
|
89
|
+
"react-native-video": "^6.0.0",
|
|
90
|
+
"react-native-webview": "*",
|
|
83
91
|
"release-it": "^17.10.0",
|
|
84
|
-
"typescript": "^5.8.3"
|
|
85
|
-
"@types/geojson": "*"
|
|
92
|
+
"typescript": "^5.8.3"
|
|
86
93
|
},
|
|
87
94
|
"peerDependencies": {
|
|
88
|
-
"react": "*",
|
|
89
|
-
"react-native": "*",
|
|
90
|
-
"react-native-webview": "*",
|
|
91
95
|
"@react-native-async-storage/async-storage": "*",
|
|
96
|
+
"@react-native-community/geolocation": "*",
|
|
92
97
|
"@sayem314/react-native-keep-awake": "*",
|
|
93
98
|
"@types/geojson": "*",
|
|
94
|
-
"
|
|
99
|
+
"react": "*",
|
|
100
|
+
"react-native": "*",
|
|
101
|
+
"react-native-svg": "*",
|
|
102
|
+
"react-native-video": "*",
|
|
103
|
+
"react-native-webview": "*"
|
|
95
104
|
},
|
|
96
105
|
"workspaces": [
|
|
97
106
|
"example"
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
# map.html — размещение в нативном приложении
|
|
2
|
+
|
|
3
|
+
Файл `map.html` генерируется при сборке `webProject` (`npm run build`) и содержит тот же single-file бандл, что и `src/components/webMapBuild.ts` (`MAP_HTML`).
|
|
4
|
+
|
|
5
|
+
Его можно положить в нативные ресурсы приложения и загружать в `WebView` по URI вместо inline HTML.
|
|
6
|
+
|
|
7
|
+
## MapView
|
|
8
|
+
|
|
9
|
+
```tsx
|
|
10
|
+
<MapView useNativeMapHtml mapStyle={...} center={...} zoom={...} style={...} />
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
При `useNativeMapHtml={true}` WebView загружает `map.html` из нативного bundle (не inline `MAP_HTML` из пакета). По умолчанию — inline HTML.
|
|
14
|
+
|
|
15
|
+
## Android
|
|
16
|
+
|
|
17
|
+
**Куда положить:**
|
|
18
|
+
|
|
19
|
+
```
|
|
20
|
+
android/app/src/main/assets/map.html
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
Папку `assets` создайте, если её ещё нет.
|
|
24
|
+
|
|
25
|
+
**URI (используется автоматически при `useNativeMapHtml`):**
|
|
26
|
+
|
|
27
|
+
```
|
|
28
|
+
file:///android_asset/map.html
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
## iOS
|
|
32
|
+
|
|
33
|
+
**Куда положить:**
|
|
34
|
+
|
|
35
|
+
```
|
|
36
|
+
ios/<ИмяПриложения>/map.html
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
Например: `ios/MyApp/map.html`. Можно использовать подпапку `Resources`, если так принято в проекте.
|
|
40
|
+
|
|
41
|
+
**Xcode:**
|
|
42
|
+
|
|
43
|
+
1. Перетащите `map.html` в дерево проекта приложения (не только в Finder).
|
|
44
|
+
2. В диалоге включите **Copy items if needed** и отметьте target приложения.
|
|
45
|
+
3. Убедитесь, что файл есть в **Build Phases → Copy Bundle Resources**.
|
|
46
|
+
|
|
47
|
+
**URI:** строится автоматически из пути к `.app` bundle (release / standalone). В Metro dev-сборке может понадобиться inline HTML или `developerLocalhostBundleUrl`.
|
|
48
|
+
|
|
49
|
+
## Обновление
|
|
50
|
+
|
|
51
|
+
После изменений в `webProject` пересоберите бандл и замените `map.html` в обеих платформах:
|
|
52
|
+
|
|
53
|
+
```bash
|
|
54
|
+
cd webProject
|
|
55
|
+
npm run build
|
|
56
|
+
cp ../resources/map.html android/app/src/main/assets/map.html
|
|
57
|
+
cp ../resources/map.html ios/<ИмяПриложения>/map.html
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
## Альтернатива
|
|
61
|
+
|
|
62
|
+
Без копирования в нативные ресурсы `MapView` по умолчанию использует inline HTML из сгенерированного `webMapBuild.ts` (`MAP_HTML` внутри пакета).
|