diff --git a/components/Global/helpers/slider.tsx b/components/Global/helpers/slider.tsx index ac9c33fc..d736d873 100644 --- a/components/Global/helpers/slider.tsx +++ b/components/Global/helpers/slider.tsx @@ -53,10 +53,10 @@ export function HorizontalSlider({ index={0} size={"$2"} hitSlop={{ - top: 20, - right: 40, - bottom: 20, - left: 40 + top: 35, + right: 70, + bottom: 70, + left: 70 }} /> diff --git a/components/Player/screens/index.tsx b/components/Player/screens/index.tsx index 19713f05..3c52c8e1 100644 --- a/components/Player/screens/index.tsx +++ b/components/Player/screens/index.tsx @@ -15,6 +15,9 @@ import TextTicker from "react-native-text-ticker"; import { ProgressMultiplier, TextTickerConfig } from "../component.config"; import { toUpper } from "lodash"; import { trigger } from "react-native-haptic-feedback"; +import { Gesture, GestureDetector } from "react-native-gesture-handler"; + +const scrubGesture = Gesture.Pan(); export default function PlayerScreen({ navigation @@ -192,54 +195,55 @@ export default function PlayerScreen({ { useMemo(() => { return ( - - 0 - ? progress.duration * ProgressMultiplier - : 1 - } - width={width / 1.1} - props={{ - // If user swipes off of the slider we should seek to the spot - onPressOut: () => { - setSeeking(false); - - navigation.setOptions({ - gestureEnabled: true - }); - - useSeekTo.mutate(Math.floor(progressState / ProgressMultiplier)); - }, - onSlideStart: () => { - trigger("impactLight"); - setSeeking(true); - - navigation.setOptions({ - gestureEnabled: false - }); - }, - onSlideMove: (event, value) => { - setSeeking(true); - - navigation.setOptions({ - gestureEnabled: false - }); - - setProgressState(value); - }, - onSlideEnd: (event, value) => { - setSeeking(false); - - navigation.setOptions({ - gestureEnabled: true - }); - - useSeekTo.mutate(Math.floor(value / ProgressMultiplier)); + + 0 + ? progress.duration * ProgressMultiplier + : 1 } - }} - /> + width={width / 1.1} + props={{ + // If user swipes off of the slider we should seek to the spot + onPressOut: () => { + setSeeking(false); + + navigation.setOptions({ + gestureEnabled: true + }); + + useSeekTo.mutate(Math.floor(progressState / ProgressMultiplier)); + }, + onSlideStart: () => { + trigger("impactLight"); + setSeeking(true); + + navigation.setOptions({ + gestureEnabled: false + }); + }, + onSlideMove: (event, value) => { + setSeeking(true); + + navigation.setOptions({ + gestureEnabled: false + }); + + setProgressState(value); + }, + onSlideEnd: (event, value) => { + setSeeking(false); + + navigation.setOptions({ + gestureEnabled: true + }); + + useSeekTo.mutate(Math.floor(value / ProgressMultiplier)); + } + }} + /> + )}, [ progressState ] diff --git a/ios/Jellify.xcodeproj/project.pbxproj b/ios/Jellify.xcodeproj/project.pbxproj index 0b401f25..b766b4ae 100644 --- a/ios/Jellify.xcodeproj/project.pbxproj +++ b/ios/Jellify.xcodeproj/project.pbxproj @@ -10,7 +10,7 @@ 00E356F31AD99517003FC87E /* JellifyTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 00E356F21AD99517003FC87E /* JellifyTests.m */; }; 13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 13B07FB51A68108700A75B9A /* Images.xcassets */; }; 217EBE16A3E8C5FBF476C905 /* PrivacyInfo.xcprivacy in Resources */ = {isa = PBXBuildFile; fileRef = F757EB73303E0AC21EF34F64 /* PrivacyInfo.xcprivacy */; }; - 5F0FC52F215B236BD44D7C79 /* libPods-Jellify.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9935A8933BC484E9F15EB747 /* libPods-Jellify.a */; }; + 6723E797280852DA94E45F9E /* libPods-Jellify.a in Frameworks */ = {isa = PBXBuildFile; fileRef = EC45863496A2250140B417A8 /* libPods-Jellify.a */; }; 81AB9BB82411601600AC10FF /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */; }; CF620D0C2CF2BB210045E433 /* Aileron-Italic.otf in Resources */ = {isa = PBXBuildFile; fileRef = CF620CFC2CF2BB1F0045E433 /* Aileron-Italic.otf */; }; CF620D0D2CF2BB210045E433 /* Aileron-Thin.otf in Resources */ = {isa = PBXBuildFile; fileRef = CF620CFD2CF2BB1F0045E433 /* Aileron-Thin.otf */; }; @@ -92,13 +92,13 @@ 00E356EE1AD99517003FC87E /* JellifyTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = JellifyTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; 00E356F11AD99517003FC87E /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 00E356F21AD99517003FC87E /* JellifyTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = JellifyTests.m; sourceTree = ""; }; - 033DCC69C010919376589BAA /* Pods-Jellify.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Jellify.debug.xcconfig"; path = "Target Support Files/Pods-Jellify/Pods-Jellify.debug.xcconfig"; sourceTree = ""; }; 13B07F961A680F5B00A75B9A /* Jellify.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Jellify.app; sourceTree = BUILT_PRODUCTS_DIR; }; 13B07FB51A68108700A75B9A /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Images.xcassets; path = Jellify/Images.xcassets; sourceTree = ""; }; 13B07FB61A68108700A75B9A /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = Jellify/Info.plist; sourceTree = ""; }; 13B07FB81A68108700A75B9A /* PrivacyInfo.xcprivacy */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = PrivacyInfo.xcprivacy; path = Jellify/PrivacyInfo.xcprivacy; sourceTree = ""; }; + 77F973B1ADE26736A0452E9B /* Pods-Jellify.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Jellify.release.xcconfig"; path = "Target Support Files/Pods-Jellify/Pods-Jellify.release.xcconfig"; sourceTree = ""; }; 81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; name = LaunchScreen.storyboard; path = Jellify/LaunchScreen.storyboard; sourceTree = ""; }; - 9935A8933BC484E9F15EB747 /* libPods-Jellify.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-Jellify.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 9200DFFBC18838CD4B4FB0BB /* Pods-Jellify.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Jellify.debug.xcconfig"; path = "Target Support Files/Pods-Jellify/Pods-Jellify.debug.xcconfig"; sourceTree = ""; }; CF620CFC2CF2BB1F0045E433 /* Aileron-Italic.otf */ = {isa = PBXFileReference; lastKnownFileType = file; name = "Aileron-Italic.otf"; path = "../assets/fonts/Aileron-Italic.otf"; sourceTree = ""; }; CF620CFD2CF2BB1F0045E433 /* Aileron-Thin.otf */ = {isa = PBXFileReference; lastKnownFileType = file; name = "Aileron-Thin.otf"; path = "../assets/fonts/Aileron-Thin.otf"; sourceTree = ""; }; CF620CFE2CF2BB1F0045E433 /* Aileron-HeavyItalic.otf */ = {isa = PBXFileReference; lastKnownFileType = file; name = "Aileron-HeavyItalic.otf"; path = "../assets/fonts/Aileron-HeavyItalic.otf"; sourceTree = ""; }; @@ -165,9 +165,9 @@ CF98CA442D3E99DF003D88B7 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; CF98CA452D3E99DF003D88B7 /* CarScene.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CarScene.swift; sourceTree = ""; }; CF98CA462D3E99DF003D88B7 /* PhoneScene.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PhoneScene.swift; sourceTree = ""; }; + EC45863496A2250140B417A8 /* libPods-Jellify.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-Jellify.a"; sourceTree = BUILT_PRODUCTS_DIR; }; ED297162215061F000B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = System/Library/Frameworks/JavaScriptCore.framework; sourceTree = SDKROOT; }; F757EB73303E0AC21EF34F64 /* PrivacyInfo.xcprivacy */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xml; name = PrivacyInfo.xcprivacy; path = Jellify/PrivacyInfo.xcprivacy; sourceTree = ""; }; - FEC9471A211EC40E4ACF0D6B /* Pods-Jellify.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Jellify.release.xcconfig"; path = "Target Support Files/Pods-Jellify/Pods-Jellify.release.xcconfig"; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -182,7 +182,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 5F0FC52F215B236BD44D7C79 /* libPods-Jellify.a in Frameworks */, + 6723E797280852DA94E45F9E /* libPods-Jellify.a in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -228,7 +228,7 @@ isa = PBXGroup; children = ( ED297162215061F000B7C4FE /* JavaScriptCore.framework */, - 9935A8933BC484E9F15EB747 /* libPods-Jellify.a */, + EC45863496A2250140B417A8 /* libPods-Jellify.a */, ); name = Frameworks; sourceTree = ""; @@ -284,8 +284,8 @@ BBD78D7AC51CEA395F1C20DB /* Pods */ = { isa = PBXGroup; children = ( - 033DCC69C010919376589BAA /* Pods-Jellify.debug.xcconfig */, - FEC9471A211EC40E4ACF0D6B /* Pods-Jellify.release.xcconfig */, + 9200DFFBC18838CD4B4FB0BB /* Pods-Jellify.debug.xcconfig */, + 77F973B1ADE26736A0452E9B /* Pods-Jellify.release.xcconfig */, ); path = Pods; sourceTree = ""; @@ -375,13 +375,13 @@ isa = PBXNativeTarget; buildConfigurationList = 13B07F931A680F5B00A75B9A /* Build configuration list for PBXNativeTarget "Jellify" */; buildPhases = ( - 32246748B66482B33E2F5455 /* [CP] Check Pods Manifest.lock */, + 1CAF0C0C553F5E233AC7F4AA /* [CP] Check Pods Manifest.lock */, 13B07F871A680F5B00A75B9A /* Sources */, 13B07F8C1A680F5B00A75B9A /* Frameworks */, 13B07F8E1A680F5B00A75B9A /* Resources */, 00DD1BFF1BD5951E006B06BC /* Bundle React Native code and images */, - 4A17A84D12B62AFA58A5D4B9 /* [CP] Embed Pods Frameworks */, - 4BC94ADC630BCFC6756F20CC /* [CP] Copy Pods Resources */, + 04743FC905BCE94857CC6B0B /* [CP] Embed Pods Frameworks */, + DE9C3F489EEB5AFE024D7C86 /* [CP] Copy Pods Resources */, ); buildRules = ( ); @@ -525,7 +525,24 @@ shellPath = /bin/sh; shellScript = "set -e\n\nWITH_ENVIRONMENT=\"$REACT_NATIVE_PATH/scripts/xcode/with-environment.sh\"\nREACT_NATIVE_XCODE=\"$REACT_NATIVE_PATH/scripts/react-native-xcode.sh\"\n\n/bin/sh -c \"$WITH_ENVIRONMENT $REACT_NATIVE_XCODE\"\n"; }; - 32246748B66482B33E2F5455 /* [CP] Check Pods Manifest.lock */ = { + 04743FC905BCE94857CC6B0B /* [CP] Embed Pods Frameworks */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Jellify/Pods-Jellify-frameworks-${CONFIGURATION}-input-files.xcfilelist", + ); + name = "[CP] Embed Pods Frameworks"; + outputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Jellify/Pods-Jellify-frameworks-${CONFIGURATION}-output-files.xcfilelist", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Jellify/Pods-Jellify-frameworks.sh\"\n"; + showEnvVarsInLog = 0; + }; + 1CAF0C0C553F5E233AC7F4AA /* [CP] Check Pods Manifest.lock */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -547,24 +564,7 @@ shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; showEnvVarsInLog = 0; }; - 4A17A84D12B62AFA58A5D4B9 /* [CP] Embed Pods Frameworks */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-Jellify/Pods-Jellify-frameworks-${CONFIGURATION}-input-files.xcfilelist", - ); - name = "[CP] Embed Pods Frameworks"; - outputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-Jellify/Pods-Jellify-frameworks-${CONFIGURATION}-output-files.xcfilelist", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Jellify/Pods-Jellify-frameworks.sh\"\n"; - showEnvVarsInLog = 0; - }; - 4BC94ADC630BCFC6756F20CC /* [CP] Copy Pods Resources */ = { + DE9C3F489EEB5AFE024D7C86 /* [CP] Copy Pods Resources */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -669,7 +669,7 @@ }; 13B07F941A680F5B00A75B9A /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 033DCC69C010919376589BAA /* Pods-Jellify.debug.xcconfig */; + baseConfigurationReference = 9200DFFBC18838CD4B4FB0BB /* Pods-Jellify.debug.xcconfig */; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CLANG_ENABLE_MODULES = YES; @@ -701,13 +701,14 @@ SWIFT_OBJC_BRIDGING_HEADER = "Jellify-Bridging-Header.h"; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; VERSIONING_SYSTEM = "apple-generic"; }; name = Debug; }; 13B07F951A680F5B00A75B9A /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = FEC9471A211EC40E4ACF0D6B /* Pods-Jellify.release.xcconfig */; + baseConfigurationReference = 77F973B1ADE26736A0452E9B /* Pods-Jellify.release.xcconfig */; buildSettings = { ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; CLANG_ENABLE_MODULES = YES; @@ -737,6 +738,7 @@ "PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = "match AppStore com.cosmonautical.jellify"; SWIFT_OBJC_BRIDGING_HEADER = "Jellify-Bridging-Header.h"; SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; VERSIONING_SYSTEM = "apple-generic"; }; name = Release; diff --git a/ios/Podfile.lock b/ios/Podfile.lock index 468c227c..61756037 100644 --- a/ios/Podfile.lock +++ b/ios/Podfile.lock @@ -1578,11 +1578,11 @@ PODS: - ReactNativeFileAccess (3.1.1): - React-Core - ZIPFoundation - - RNCMaskedView (0.1.11): - - React - - RNDeviceInfo (14.0.2): + - RNCMaskedView (0.3.1): - React-Core - - RNGestureHandler (2.22.1): + - RNDeviceInfo (14.0.4): + - React-Core + - RNGestureHandler (2.23.0): - DoubleConversion - glog - hermes-engine @@ -1711,7 +1711,7 @@ PODS: - ReactCommon/turbomodule/bridging - ReactCommon/turbomodule/core - Yoga - - RNScreens (4.5.0): + - RNScreens (4.6.0): - DoubleConversion - glog - hermes-engine @@ -1835,7 +1835,7 @@ DEPENDENCIES: - ReactCodegen (from `build/generated/ios`) - ReactCommon/turbomodule/core (from `../node_modules/react-native/ReactCommon`) - ReactNativeFileAccess (from `../node_modules/react-native-file-access`) - - "RNCMaskedView (from `../node_modules/@react-native-community/masked-view`)" + - "RNCMaskedView (from `../node_modules/@react-native-masked-view/masked-view`)" - RNDeviceInfo (from `../node_modules/react-native-device-info`) - RNGestureHandler (from `../node_modules/react-native-gesture-handler`) - RNReactNativeHapticFeedback (from `../node_modules/react-native-haptic-feedback`) @@ -2001,7 +2001,7 @@ EXTERNAL SOURCES: ReactNativeFileAccess: :path: "../node_modules/react-native-file-access" RNCMaskedView: - :path: "../node_modules/@react-native-community/masked-view" + :path: "../node_modules/@react-native-masked-view/masked-view" RNDeviceInfo: :path: "../node_modules/react-native-device-info" RNGestureHandler: @@ -2093,12 +2093,12 @@ SPEC CHECKSUMS: ReactCodegen: c08a5113d9c9c895fe10f3c296f74c6b705a60a9 ReactCommon: 1bd2dc684d7992acbf0dfee887b89a57a1ead86d ReactNativeFileAccess: 921d1223be7b739158410e6bc7199b4a9463a261 - RNCMaskedView: 4c5ee1c8667d56077246cc6d1977f77393923560 - RNDeviceInfo: 801c18d0525e86580900e7b5f562dca0c8c05021 - RNGestureHandler: 6d231bf41166c01b8234f0b7b24d73d82e44ef4c + RNCMaskedView: de80352547bd4f0d607bf6bab363d826822bd126 + RNDeviceInfo: d863506092aef7e7af3a1c350c913d867d795047 + RNGestureHandler: 720ec66534bee0cd17556f4c75e26ebaf7eeec53 RNReactNativeHapticFeedback: f9cfb40676f21a52e9e172648d033f539156a5ec RNReanimated: 9821995bd24f989b2618eac9510dc86c14d0a5df - RNScreens: e49492560a55c80ae227b4e05e055d0fdb03c080 + RNScreens: 86e5c168cdd055a8feead28eb756ca7103918b6a RNVectorIcons: f7a99433a71f4b38891c14c64b21fc521d064392 SocketRocket: d4aabe649be1e368d1318fdf28a022d714d65748 SwiftAudioEx: f6aa653770f3a0d3851edaf8d834a30aee4a7646 diff --git a/package-lock.json b/package-lock.json index 40130563..ba091d54 100644 --- a/package-lock.json +++ b/package-lock.json @@ -28,15 +28,15 @@ "react-native-background-actions": "^4.0.1", "react-native-blurhash": "^2.1.0", "react-native-carplay": "^2.4.1-beta.0", - "react-native-device-info": "^14.0.2", + "react-native-device-info": "^14.0.4", "react-native-draggable-flatlist": "^4.0.1", "react-native-file-access": "^3.1.1", - "react-native-gesture-handler": "^2.22.1", + "react-native-gesture-handler": "^2.23.0", "react-native-haptic-feedback": "^2.3.3", "react-native-mmkv": "^2.12.2", "react-native-reanimated": "^3.16.7", "react-native-safe-area-context": "^5.1.0", - "react-native-screens": "^4.5.0", + "react-native-screens": "^4.6.0", "react-native-swipeable-item": "^2.0.9", "react-native-text-ticker": "^1.14.0", "react-native-track-player": "^4.1.1", @@ -12379,9 +12379,9 @@ } }, "node_modules/react-native-device-info": { - "version": "14.0.2", - "resolved": "https://registry.npmjs.org/react-native-device-info/-/react-native-device-info-14.0.2.tgz", - "integrity": "sha512-W1oqu4dC4uLKT/Z4uimRP6birJprWjhMP/AwV9hxGSZ5K3wJ/yb34aQ22sd6HmegQHfT2PmkFs3mj+4uXLE1YQ==", + "version": "14.0.4", + "resolved": "https://registry.npmjs.org/react-native-device-info/-/react-native-device-info-14.0.4.tgz", + "integrity": "sha512-NX0wMAknSDBeFnEnSFQ8kkAcQrFHrG4Cl0mVjoD+0++iaKrOupiGpBXqs8xR0SeJyPC5zpdPl4h/SaBGly6UxA==", "license": "MIT", "peerDependencies": { "react-native": "*" @@ -12412,9 +12412,9 @@ } }, "node_modules/react-native-gesture-handler": { - "version": "2.22.1", - "resolved": "https://registry.npmjs.org/react-native-gesture-handler/-/react-native-gesture-handler-2.22.1.tgz", - "integrity": "sha512-E0C9D+Ia2UZYevoSV9rTKjhFWEVdR/3l4Z3TUoQrI/wewgzDlmJOrYvGW5aMlPUuQF2vHQOdFfAWhVEqFu4tWw==", + "version": "2.23.0", + "resolved": "https://registry.npmjs.org/react-native-gesture-handler/-/react-native-gesture-handler-2.23.0.tgz", + "integrity": "sha512-xtkdIU4S4uc4J2WO4hy7AXxD/1M8Be2yOrLdPTuWKAOF3KyL0D0xSdvuaWhI+GdZCNQQisj9kvbnMQGGb9XZNQ==", "license": "MIT", "dependencies": { "@egjs/hammerjs": "^2.0.17", @@ -12483,9 +12483,9 @@ } }, "node_modules/react-native-screens": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/react-native-screens/-/react-native-screens-4.5.0.tgz", - "integrity": "sha512-yBWeN5EHNeew9f0ia9VE7JSlUQzCZEwkb87r7A7/Sg41OJHuRKHNRhmdCOiMBUqwwQi3F+b4NZGywjeM/gWMyg==", + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/react-native-screens/-/react-native-screens-4.6.0.tgz", + "integrity": "sha512-PqGtR/moJLiTMSavhfo5spKXNHZrlxffq3g5UUVPmyuu7MmazFlPvYqiAYnR2iB9tkJYgvZO6sbjYAE7619M0A==", "license": "MIT", "dependencies": { "react-freeze": "^1.0.0", diff --git a/package.json b/package.json index fc8809fc..99b01715 100644 --- a/package.json +++ b/package.json @@ -37,15 +37,15 @@ "react-native-background-actions": "^4.0.1", "react-native-blurhash": "^2.1.0", "react-native-carplay": "^2.4.1-beta.0", - "react-native-device-info": "^14.0.2", + "react-native-device-info": "^14.0.4", "react-native-draggable-flatlist": "^4.0.1", "react-native-file-access": "^3.1.1", - "react-native-gesture-handler": "^2.22.1", + "react-native-gesture-handler": "^2.23.0", "react-native-haptic-feedback": "^2.3.3", "react-native-mmkv": "^2.12.2", "react-native-reanimated": "^3.16.7", "react-native-safe-area-context": "^5.1.0", - "react-native-screens": "^4.5.0", + "react-native-screens": "^4.6.0", "react-native-swipeable-item": "^2.0.9", "react-native-text-ticker": "^1.14.0", "react-native-track-player": "^4.1.1", diff --git a/screenshots/player.png b/screenshots/player.png index faeb769e..93bb193f 100644 Binary files a/screenshots/player.png and b/screenshots/player.png differ