mirror of
https://github.com/streamyfin/streamyfin.git
synced 2026-01-15 23:59:08 +00:00
Removes caret ranges from development dependencies to ensure consistent builds across environments and prevent unexpected version drift during installation. Updates multiple packages including Babel, Biome, React Native CLI, TypeScript tooling, and testing utilities to their exact versions.
156 lines
5.1 KiB
JSON
156 lines
5.1 KiB
JSON
{
|
|
"name": "streamyfin",
|
|
"main": "./index",
|
|
"version": "1.0.0",
|
|
"scripts": {
|
|
"submodule-reload": "git submodule update --init --remote --recursive",
|
|
"clean": "echo y | expo prebuild --clean",
|
|
"start": "bun run submodule-reload && expo start",
|
|
"prebuild": "cross-env EXPO_TV=0 bun run clean",
|
|
"prebuild:tv": "cross-env EXPO_TV=1 bun run clean",
|
|
"ios": "cross-env EXPO_TV=0 expo run:ios",
|
|
"ios:tv": "cross-env EXPO_TV=1 expo run:ios",
|
|
"android": "cross-env EXPO_TV=0 expo run:android",
|
|
"android:tv": "cross-env EXPO_TV=1 expo run:android",
|
|
"build:android:local": "cd android && cross-env NODE_ENV=production ./gradlew assembleRelease",
|
|
"prepare": "husky",
|
|
"typecheck": "tsc -p tsconfig.json --noEmit | grep -v \"utils/jellyseerr\"",
|
|
"check": "biome check . --max-diagnostics 1000",
|
|
"lint": "biome check --write --unsafe --max-diagnostics 1000",
|
|
"format": "biome format --write .",
|
|
"doctor": "expo-doctor",
|
|
"test": "bun run typecheck && bun run lint && bun run format && bun run doctor"
|
|
},
|
|
"dependencies": {
|
|
"@bottom-tabs/react-navigation": "^0.9.2",
|
|
"@expo/metro-runtime": "~5.0.4",
|
|
"@expo/react-native-action-sheet": "^4.1.1",
|
|
"@expo/vector-icons": "^15.0.2",
|
|
"@gorhom/bottom-sheet": "^5.1.0",
|
|
"@jellyfin/sdk": "^0.11.0",
|
|
"@kesha-antonov/react-native-background-downloader": "^3.2.6",
|
|
"@react-native-community/netinfo": "^11.4.1",
|
|
"@react-native-menu/menu": "^1.2.3",
|
|
"@react-navigation/material-top-tabs": "^7.2.14",
|
|
"@react-navigation/native": "^7.0.14",
|
|
"@shopify/flash-list": "^1.8.3",
|
|
"@tanstack/react-query": "^5.66.0",
|
|
"axios": "^1.7.9",
|
|
"expo": "^53.0.22",
|
|
"expo-application": "~6.1.4",
|
|
"expo-asset": "~11.1.7",
|
|
"expo-background-task": "~0.2.8",
|
|
"expo-blur": "~14.1.4",
|
|
"expo-brightness": "~13.1.4",
|
|
"expo-build-properties": "~0.14.6",
|
|
"expo-constants": "~17.1.5",
|
|
"expo-dev-client": "^5.2.0",
|
|
"expo-device": "~7.1.4",
|
|
"expo-font": "~13.3.1",
|
|
"expo-haptics": "~14.1.4",
|
|
"expo-image": "~2.4.0",
|
|
"expo-linear-gradient": "~14.1.4",
|
|
"expo-linking": "~7.1.4",
|
|
"expo-localization": "~16.1.5",
|
|
"expo-notifications": "~0.31.2",
|
|
"expo-router": "~5.1.5",
|
|
"expo-screen-orientation": "~8.1.6",
|
|
"expo-sensors": "~14.1.4",
|
|
"expo-sharing": "~13.1.5",
|
|
"expo-splash-screen": "~0.30.8",
|
|
"expo-status-bar": "~2.2.3",
|
|
"expo-system-ui": "~5.0.11",
|
|
"expo-task-manager": "~13.1.6",
|
|
"expo-web-browser": "~14.2.0",
|
|
"i18next": "^25.0.0",
|
|
"jotai": "^2.12.5",
|
|
"lodash": "^4.17.21",
|
|
"nativewind": "^2.0.11",
|
|
"react": "19.0.0",
|
|
"react-dom": "19.0.0",
|
|
"react-i18next": "^15.4.0",
|
|
"react-native": "npm:react-native-tvos@0.79.5-0",
|
|
"react-native-awesome-slider": "^2.9.0",
|
|
"react-native-bottom-tabs": "^0.9.2",
|
|
"react-native-circular-progress": "^1.4.1",
|
|
"react-native-collapsible": "^1.6.2",
|
|
"react-native-country-flag": "^2.0.2",
|
|
"react-native-device-info": "^14.0.4",
|
|
"react-native-gesture-handler": "~2.24.0",
|
|
"react-native-google-cast": "^4.9.0",
|
|
"react-native-image-colors": "^2.4.0",
|
|
"react-native-ios-context-menu": "^3.1.0",
|
|
"react-native-ios-utilities": "5.1.8",
|
|
"react-native-mmkv": "2.12.2",
|
|
"react-native-pager-view": "^6.9.1",
|
|
"react-native-reanimated": "~3.17.4",
|
|
"react-native-reanimated-carousel": "4.0.2",
|
|
"react-native-safe-area-context": "5.4.0",
|
|
"react-native-screens": "~4.11.1",
|
|
"react-native-svg": "15.11.2",
|
|
"react-native-udp": "^4.1.7",
|
|
"react-native-url-polyfill": "^2.0.0",
|
|
"react-native-uuid": "^2.0.3",
|
|
"react-native-video": "6.14.1",
|
|
"react-native-volume-manager": "^2.0.8",
|
|
"react-native-web": "^0.20.0",
|
|
"sonner-native": "^0.21.0",
|
|
"tailwindcss": "3.3.2",
|
|
"use-debounce": "^10.0.4",
|
|
"zeego": "^3.0.6",
|
|
"zod": "^4.1.3"
|
|
},
|
|
"devDependencies": {
|
|
"@babel/core": "7.28.3",
|
|
"@biomejs/biome": "2.2.2",
|
|
"@react-native-community/cli": "20.0.1",
|
|
"@react-native-tvos/config-tv": "0.1.3",
|
|
"@types/jest": "29.5.14",
|
|
"@types/lodash": "4.17.20",
|
|
"@types/react": "~19.0.10",
|
|
"@types/react-test-renderer": "19.1.0",
|
|
"expo-doctor": "1.17.2",
|
|
"cross-env": "10.0.0",
|
|
"husky": "9.1.7",
|
|
"lint-staged": "16.1.6",
|
|
"postinstall-postinstall": "2.1.0",
|
|
"react-test-renderer": "19.1.1",
|
|
"typescript": "5.8.3"
|
|
},
|
|
"expo": {
|
|
"install": {
|
|
"exclude": [
|
|
"react-native",
|
|
"@shopify/flash-list",
|
|
"react-native-reanimated",
|
|
"react-native-pager-view"
|
|
]
|
|
},
|
|
"doctor": {
|
|
"reactNativeDirectoryCheck": {
|
|
"exclude": [
|
|
"react-native-google-cast",
|
|
"react-native-udp",
|
|
"@bottom-tabs/react-navigation",
|
|
"@jellyfin/sdk",
|
|
"expo-doctor"
|
|
],
|
|
"listUnknownPackages": false
|
|
}
|
|
}
|
|
},
|
|
"private": true,
|
|
"lint-staged": {
|
|
"*.{js,jsx,ts,tsx}": [
|
|
"biome check --write --unsafe --no-errors-on-unmatched"
|
|
],
|
|
"*.json": [
|
|
"biome format --write"
|
|
]
|
|
},
|
|
"trustedDependencies": [
|
|
"postinstall-postinstall",
|
|
"unrs-resolver"
|
|
]
|
|
}
|