volume cleanup

This commit is contained in:
Jorrin
2024-02-14 20:00:36 +01:00
parent 82a3f431fa
commit c670047713
6 changed files with 70 additions and 28 deletions

View File

@@ -0,0 +1,24 @@
import { useCallback, useState } from "react";
import { useSharedValue } from "react-native-reanimated";
import { useDebounce } from "../useDebounce";
export const useVolume = () => {
const [showVolumeOverlay, setShowVolumeOverlay] = useState(false);
const debouncedShowVolumeOverlay = useDebounce(showVolumeOverlay, 20);
const volume = useSharedValue(1);
const debouncedVolume = useDebounce(volume.value, 20);
const handleVolumeChange = useCallback((newValue: number) => {
volume.value = newValue;
setShowVolumeOverlay(true);
}, []);
return {
showVolumeOverlay: debouncedShowVolumeOverlay,
currentVolume: volume,
debouncedVolume: `${Math.round(debouncedVolume * 100)}%`,
setShowVolumeOverlay,
handleVolumeChange,
} as const;
};