2d59a3e636
- Svepte 51 hårdkodade strängar -> t() över konto, sök/bläddra, sparade recept, kök, planera, skanna, byt måltid, inköp, minne, cooking, api-fel (+ locLabel/ kategorier via nycklar). 47 nya nycklar, översatta till alla 12 språk. - NY: apps/mobile/scripts/i18n-check.mjs (i18n:check) – fäller bygget om ett språk saknar en nyckel, en använd nyckel saknas, eller det finns hårdkodad UI-text. Wire:ad i CI (.github/workflows/ci.yml) efter typecheck. => 'lägg till språk' blir: kör vakten, den listar exakt vad som fattas. Aldrig mer leta för hand. - Prettier-fixade 5 filer från tidigare leveranser så format:check blir grön. - submit-recipe fri-text-payload + firebase dev-stubs markerade // i18n-ignore. Co-Authored-By: Claude <noreply@anthropic.com>
62 lines
1.8 KiB
JSON
62 lines
1.8 KiB
JSON
{
|
|
"name": "@app/mobile",
|
|
"version": "0.1.0",
|
|
"private": true,
|
|
"main": "expo-router/entry",
|
|
"scripts": {
|
|
"start": "expo start",
|
|
"android": "expo start --android",
|
|
"ios": "expo start --ios",
|
|
"typecheck": "tsc --noEmit",
|
|
"test": "vitest run --passWithNoTests",
|
|
"i18n:check": "node scripts/i18n-check.mjs"
|
|
},
|
|
"dependencies": {
|
|
"@app/analytics": "workspace:*",
|
|
"@app/shared-types": "workspace:*",
|
|
"@expo/metro-runtime": "^6.1.2",
|
|
"@react-native-async-storage/async-storage": "^2.2.0",
|
|
"@tanstack/query-async-storage-persister": "^5.90.0",
|
|
"@tanstack/react-query": "^5.90.0",
|
|
"@tanstack/react-query-persist-client": "^5.90.0",
|
|
"expo": "~54.0.36",
|
|
"expo-camera": "~17.0.10",
|
|
"expo-constants": "~18.0.13",
|
|
"expo-haptics": "~15.0.8",
|
|
"expo-image": "~3.0.11",
|
|
"expo-image-picker": "~17.0.11",
|
|
"expo-keep-awake": "~15.0.8",
|
|
"expo-linking": "~8.0.12",
|
|
"expo-localization": "^17.0.9",
|
|
"expo-router": "~6.0.24",
|
|
"expo-secure-store": "~15.0.8",
|
|
"expo-splash-screen": "~31.0.13",
|
|
"expo-status-bar": "~3.0.9",
|
|
"expo-system-ui": "~6.0.9",
|
|
"firebase": "^12.17.1",
|
|
"i18next": "^26.3.6",
|
|
"react": "19.1.0",
|
|
"react-dom": "19.1.0",
|
|
"react-native": "0.81.5",
|
|
"react-native-gesture-handler": "~2.28.0",
|
|
"react-native-reanimated": "4.1.7",
|
|
"react-native-safe-area-context": "~5.6.2",
|
|
"react-native-screens": "~4.16.0",
|
|
"react-native-web": "~0.21.2",
|
|
"react-native-worklets": "~0.5.1",
|
|
"zustand": "^5.0.0"
|
|
},
|
|
"devDependencies": {
|
|
"@expo/ngrok": "^4.1.0",
|
|
"@types/react": "~19.1.17",
|
|
"typescript": "~5.9.3"
|
|
},
|
|
"expo": {
|
|
"doctor": {
|
|
"reactNativeDirectoryCheck": {
|
|
"listUnknownPackages": false
|
|
}
|
|
}
|
|
}
|
|
}
|