diff --git a/src/app/darmasaba/(pages)/musik/lib/seek.ts b/src/app/darmasaba/(pages)/musik/lib/seek.ts index eca6ac81..25184919 100644 --- a/src/app/darmasaba/(pages)/musik/lib/seek.ts +++ b/src/app/darmasaba/(pages)/musik/lib/seek.ts @@ -1,25 +1,14 @@ export function seekTo( audioRef: React.RefObject, - time: number + time: number, + setCurrentTime?: (v: number) => void ) { if (!audioRef.current) return; + audioRef.current.currentTime = time; + + // Update state jika provided + if (setCurrentTime) { + setCurrentTime(time); + } } - - -// import { RefObject } from "react"; - -// export function seekTo( -// audioRef: RefObject, -// time: number, -// setCurrentTime: (v: number) => void -// ) { -// if (!audioRef.current) return; - -// audioRef.current.currentTime = time; -// setCurrentTime(time); -// } - -// //pakai di ui - -// // onChange={(v) => seekTo(audioRef, v, setCurrentTime)} diff --git a/src/app/darmasaba/(pages)/musik/musik-desa/page.tsx b/src/app/darmasaba/(pages)/musik/musik-desa/page.tsx index 8556c9a3..6fedfe87 100644 --- a/src/app/darmasaba/(pages)/musik/musik-desa/page.tsx +++ b/src/app/darmasaba/(pages)/musik/musik-desa/page.tsx @@ -149,10 +149,6 @@ const MusicPlayer = () => { handleRepeatOrNext(audioRef, isRepeat, playNext); }; - const handleSeek = (value: number) => { - seekTo(audioRef, value); - }; - const toggleMute = () => { toggleMuteUtil(audioRef, isMuted, setIsMuted); }; @@ -267,7 +263,14 @@ const MusicPlayer = () => { { + setIsSeeking(true); + setCurrentTime(v); + }} + onChangeEnd={(v) => { + setIsSeeking(false); + seekTo(audioRef, v, setCurrentTime); + }} color="#0B4F78" size="sm" style={{ flex: 1 }} @@ -404,11 +407,11 @@ const MusicPlayer = () => { max={duration} onChange={(v) => { setIsSeeking(true); - setCurrentTime(v); // preview + setCurrentTime(v); // preview - update UI saja }} onChangeEnd={(v) => { - seekTo(audioRef, v); // commit setIsSeeking(false); + seekTo(audioRef, v); // commit - update audio player }} color="#0B4F78" size="xs"