feat: auth & admin
This commit is contained in:
+27
-12
@@ -1,7 +1,10 @@
|
||||
import { useEffect, useRef, useCallback } from 'react';
|
||||
import { useAppDispatch, useAppSelector } from './useAppDispatch';
|
||||
import {
|
||||
pause, resume, setPosition, setDuration,
|
||||
pause,
|
||||
resume,
|
||||
setPosition,
|
||||
setDuration,
|
||||
setVolume as setVolumeAction,
|
||||
} from '../store/slices/player';
|
||||
import { nextTrack, prevTrack } from '../store/slices/queue';
|
||||
@@ -87,7 +90,9 @@ export function useAudioPlayer() {
|
||||
|
||||
useEffect(() => {
|
||||
if (!('mediaSession' in navigator)) return;
|
||||
navigator.mediaSession.playbackState = player.isPlaying ? 'playing' : 'paused';
|
||||
navigator.mediaSession.playbackState = player.isPlaying
|
||||
? 'playing'
|
||||
: 'paused';
|
||||
}, [player.isPlaying]);
|
||||
|
||||
useEffect(() => {
|
||||
@@ -120,18 +125,28 @@ export function useAudioPlayer() {
|
||||
}
|
||||
}, [queue.currentIndex, queue.entries, player.currentTrackId, dispatch]);
|
||||
|
||||
const seek = useCallback((seconds: number) => {
|
||||
const audio = getAudio();
|
||||
audio.currentTime = seconds;
|
||||
dispatch(setPosition(seconds));
|
||||
}, [dispatch]);
|
||||
const seek = useCallback(
|
||||
(seconds: number) => {
|
||||
const audio = getAudio();
|
||||
audio.currentTime = seconds;
|
||||
dispatch(setPosition(seconds));
|
||||
},
|
||||
[dispatch],
|
||||
);
|
||||
|
||||
const setPlayerVolume = useCallback((vol: number) => {
|
||||
dispatch(setVolumeAction(vol));
|
||||
}, [dispatch]);
|
||||
const setPlayerVolume = useCallback(
|
||||
(vol: number) => {
|
||||
dispatch(setVolumeAction(vol));
|
||||
},
|
||||
[dispatch],
|
||||
);
|
||||
|
||||
const playNext = useCallback(() => { dispatch(nextTrack()); }, [dispatch]);
|
||||
const playPrev = useCallback(() => { dispatch(prevTrack()); }, [dispatch]);
|
||||
const playNext = useCallback(() => {
|
||||
dispatch(nextTrack());
|
||||
}, [dispatch]);
|
||||
const playPrev = useCallback(() => {
|
||||
dispatch(prevTrack());
|
||||
}, [dispatch]);
|
||||
|
||||
return { seek, setVolume: setPlayerVolume, playNext, playPrev };
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user