MB3 (PBX spec 13 §5). Expo SDK 58 + Expo Router, with the PBX repo as a submodule for @selfphoneng/shared types (import type only). - pair by scanning the QR from My settings → Mobile app, by typing the server and code, or from a selfphoneng://pair link (waits for a tap) - the device token lives in expo-secure-store; a 401 goes back to pairing - home shows who and which extension the phone is paired as; Sign out removes the phone on the server too - README: Android APK build (and the Windows long-path fix), iPhone builds with ios-builder
42 lines
1.1 KiB
JSON
42 lines
1.1 KiB
JSON
{
|
|
"name": "@selfphoneng/mobile",
|
|
"version": "0.0.1",
|
|
"main": "expo-router/entry",
|
|
"dependencies": {
|
|
"@selfphoneng/shared": "file:vendor/selfphoneng/packages/shared",
|
|
"@tanstack/react-query": "^5.105.0",
|
|
"eslint-config-expo": "~58.0.4",
|
|
"expo": "~58.0.19",
|
|
"expo-camera": "~58.0.12",
|
|
"expo-constants": "~58.0.13",
|
|
"expo-device": "~58.0.5",
|
|
"expo-linking": "~58.0.14",
|
|
"expo-router": "~58.0.26",
|
|
"expo-secure-store": "~58.0.2",
|
|
"expo-status-bar": "~58.0.4",
|
|
"react": "19.3.0",
|
|
"react-dom": "19.3.0",
|
|
"react-native": "0.88.0",
|
|
"react-native-safe-area-context": "~5.10.1",
|
|
"react-native-screens": "~4.30.0",
|
|
"zod": "^4.6.7",
|
|
"zustand": "^5.0.16"
|
|
},
|
|
"devDependencies": {
|
|
"@types/react": "~19.3.0",
|
|
"eslint": "^9.39.5",
|
|
"prettier": "^3.9.10",
|
|
"typescript": "~6.0.3"
|
|
},
|
|
"scripts": {
|
|
"start": "expo start",
|
|
"android": "expo run:android",
|
|
"ios": "expo run:ios",
|
|
"typecheck": "tsc --noEmit",
|
|
"lint": "expo lint && prettier --check .",
|
|
"format": "prettier --write ."
|
|
},
|
|
"private": true,
|
|
"license": "AGPL-3.0-or-later"
|
|
}
|