mirror of
https://github.com/jjbrunton/Sauci.git
synced 2026-10-31 10:19:43 +00:00
Measure untouched mobile source, add regression coverage for native media paths and account operations, and enforce ratcheting API and mobile thresholds in required CI checks.
98 lines
3.5 KiB
JSON
98 lines
3.5 KiB
JSON
{
|
|
"name": "@sauci/mobile",
|
|
"version": "1.0.0",
|
|
"private": true,
|
|
"main": "./index.js",
|
|
"scripts": {
|
|
"dev": "expo start",
|
|
"android": "expo run:android",
|
|
"ios": "expo run:ios",
|
|
"web": "expo start --web",
|
|
"lint": "expo lint",
|
|
"typecheck": "tsc --noEmit",
|
|
"test": "jest",
|
|
"test:watch": "jest --watch",
|
|
"test:ci": "jest --runInBand --ci",
|
|
"test:coverage": "jest --runInBand --ci --coverage",
|
|
"release:ios": "dotenv -e .env -- eas build --platform ios --profile production --local",
|
|
"release:ios:preview": "dotenv -e .env -- eas build --platform ios --profile preview --local",
|
|
"release:android": "dotenv -e .env -- eas build --platform android --profile production --local",
|
|
"release:android:preview": "dotenv -e .env -- eas build --platform android --profile preview --local",
|
|
"release:android:upload": "bundle exec fastlane android upload"
|
|
},
|
|
"dependencies": {
|
|
"@bacons/apple-targets": "^0.1.6",
|
|
"@bittingz/expo-widgets": "^3.0.2",
|
|
"@expo/ngrok": "^4.1.0",
|
|
"@expo/vector-icons": "^15.0.3",
|
|
"@react-native-async-storage/async-storage": "2.2.0",
|
|
"@react-native-community/cli": "^20.1.1",
|
|
"@react-native-firebase/analytics": "^23.8.2",
|
|
"@react-native-firebase/app": "^23.8.2",
|
|
"@react-native-firebase/crashlytics": "^23.8.4",
|
|
"@react-native-google-signin/google-signin": "^16.1.1",
|
|
"@react-navigation/bottom-tabs": "^7.0.0",
|
|
"@react-navigation/native": "^7.0.0",
|
|
"@react-navigation/native-stack": "^7.0.0",
|
|
"@shopify/react-native-skia": "2.2.12",
|
|
"@supabase/supabase-js": "^2.39.0",
|
|
"@tanstack/react-query": "^5.17.0",
|
|
"babel-preset-expo": "~54.0.12",
|
|
"base64-arraybuffer": "^1.0.2",
|
|
"expo": "~54.0.0",
|
|
"expo-apple-authentication": "~8.0.8",
|
|
"expo-asset": "~12.0.13",
|
|
"expo-av": "~16.0.8",
|
|
"expo-blur": "~15.0.8",
|
|
"expo-build-properties": "~1.0.10",
|
|
"expo-clipboard": "~8.0.8",
|
|
"expo-constants": "~18.0.14",
|
|
"expo-dev-client": "~6.0.21",
|
|
"expo-file-system": "~19.0.24",
|
|
"expo-font": "~14.0.12",
|
|
"expo-haptics": "~15.0.8",
|
|
"expo-image": "~3.0.11",
|
|
"expo-image-picker": "~17.0.11",
|
|
"expo-linear-gradient": "~15.0.8",
|
|
"expo-linking": "~8.0.12",
|
|
"expo-local-authentication": "~17.0.9",
|
|
"expo-media-library": "~18.2.1",
|
|
"expo-notifications": "~0.32.17",
|
|
"expo-router": "~6.0.24",
|
|
"expo-secure-store": "~15.0.8",
|
|
"expo-sharing": "~14.0.8",
|
|
"expo-status-bar": "~3.0.9",
|
|
"react": "19.1.0",
|
|
"react-dom": "19.1.0",
|
|
"react-native": "0.81.5",
|
|
"react-native-android-widget": "^0.22.1",
|
|
"react-native-compressor": "^1.13.0",
|
|
"react-native-gesture-handler": "~2.28.0",
|
|
"react-native-purchases": "^9.6.12",
|
|
"react-native-reanimated": "~4.1.1",
|
|
"react-native-safe-area-context": "~5.6.0",
|
|
"react-native-screens": "~4.16.0",
|
|
"react-native-svg": "15.12.1",
|
|
"react-native-url-polyfill": "^2.0.0",
|
|
"react-native-view-shot": "^4.0.3",
|
|
"react-native-web": "~0.21.0",
|
|
"react-native-worklets": "0.5.1",
|
|
"zustand": "^4.4.7"
|
|
},
|
|
"devDependencies": {
|
|
"@babel/core": "^7.24.0",
|
|
"@testing-library/jest-native": "^5.4.3",
|
|
"@testing-library/react-native": "^13.3.3",
|
|
"@types/jest": "29.5.14",
|
|
"@types/react": "~19.1.10",
|
|
"@types/react-test-renderer": "^19.1.0",
|
|
"dotenv-cli": "^11.0.0",
|
|
"eslint": "^8.57.0",
|
|
"eslint-config-expo": "~10.0.0",
|
|
"jest": "^29.7.0",
|
|
"jest-expo": "~54.0.18",
|
|
"react-test-renderer": "19.1.0",
|
|
"typescript": "~5.9.2"
|
|
}
|
|
}
|