Fix ESLint errors

This commit is contained in:
2025-06-19 16:35:01 +00:00
committed by GitHub
parent c954348ad1
commit eba6c76a61
5 changed files with 30 additions and 30 deletions

View File

@@ -24,13 +24,13 @@ export const AudioPlayer: React.FC = () => {
// Save position when component unmounts or track changes
useEffect(() => {
const audioCurrent = audioRef.current;
return () => {
const audioCurrent = audioRef.current;
if (audioCurrent && currentTrack && audioCurrent.currentTime > 10) {
localStorage.setItem(`navidrome-track-time-${currentTrack.id}`, audioCurrent.currentTime.toString());
}
};
}, [currentTrack?.id]);
}, [currentTrack]);
useEffect(() => {
const audioCurrent = audioRef.current;
@@ -62,7 +62,7 @@ export const AudioPlayer: React.FC = () => {
audioCurrent.play();
setIsPlaying(true);
}
}, [currentTrack?.id, currentTrack?.url]);
}, [currentTrack]);
useEffect(() => {
const audioCurrent = audioRef.current;

View File

@@ -116,15 +116,15 @@ export const AudioPlayerProvider: React.FC<{ children: React.ReactNode }> = ({ c
setQueue((prevQueue) => prevQueue.filter((_, i) => i !== index));
}, []);
const playNextTrack = () => {
const playNextTrack = useCallback(() => {
if (queue.length > 0) {
const nextTrack = queue[0];
setQueue((prevQueue) => prevQueue.slice(1));
playTrack(nextTrack);
}
};
}, [queue, playTrack]);
const playPreviousTrack = () => {
const playPreviousTrack = useCallback(() => {
if (playedTracks.length > 0) {
const previousTrack = playedTracks[playedTracks.length - 1];
setPlayedTracks((prevPlayedTracks) => prevPlayedTracks.slice(0, -1));
@@ -136,9 +136,9 @@ export const AudioPlayerProvider: React.FC<{ children: React.ReactNode }> = ({ c
setCurrentTrack(previousTrack);
}
};
}, [playedTracks, currentTrack]);
const addAlbumToQueue = async (albumId: string) => {
const addAlbumToQueue = useCallback(async (albumId: string) => {
setIsLoading(true);
try {
const { album, songs } = await api.getAlbum(albumId);
@@ -159,9 +159,9 @@ export const AudioPlayerProvider: React.FC<{ children: React.ReactNode }> = ({ c
} finally {
setIsLoading(false);
}
};
}, [api, songToTrack, toast]);
const addArtistToQueue = async (artistId: string) => {
const addArtistToQueue = useCallback(async (artistId: string) => {
setIsLoading(true);
try {
const { artist, albums } = await api.getArtist(artistId);
@@ -187,8 +187,8 @@ export const AudioPlayerProvider: React.FC<{ children: React.ReactNode }> = ({ c
} finally {
setIsLoading(false);
}
};
const playAlbum = async (albumId: string) => {
}, [api, songToTrack, toast]);
const playAlbum = useCallback(async (albumId: string) => {
setIsLoading(true);
try {
const { album, songs } = await api.getAlbum(albumId);
@@ -216,9 +216,9 @@ export const AudioPlayerProvider: React.FC<{ children: React.ReactNode }> = ({ c
} finally {
setIsLoading(false);
}
};
}, [api, playTrack, songToTrack, toast]);
const playAlbumFromTrack = async (albumId: string, startingSongId: string) => {
const playAlbumFromTrack = useCallback(async (albumId: string, startingSongId: string) => {
setIsLoading(true);
try {
const { album, songs } = await api.getAlbum(albumId);
@@ -251,7 +251,7 @@ export const AudioPlayerProvider: React.FC<{ children: React.ReactNode }> = ({ c
} finally {
setIsLoading(false);
}
};
}, [api, playTrack, songToTrack, toast]);
const skipToTrackInQueue = useCallback((index: number) => {
if (index >= 0 && index < queue.length) {

View File

@@ -53,7 +53,7 @@ export const NavidromeProvider: React.FC<NavidromeProviderProps> = ({ children }
const api = getNavidromeAPI();
const loadAlbums = async () => {
const loadAlbums = useCallback(async () => {
setAlbumsLoading(true);
setError(null);
try {
@@ -73,9 +73,9 @@ export const NavidromeProvider: React.FC<NavidromeProviderProps> = ({ children }
} finally {
setAlbumsLoading(false);
}
};
}, [api]);
const loadArtists = async () => {
const loadArtists = useCallback(async () => {
setArtistsLoading(true);
setError(null);
try {
@@ -87,9 +87,9 @@ export const NavidromeProvider: React.FC<NavidromeProviderProps> = ({ children }
} finally {
setArtistsLoading(false);
}
};
}, [api]);
const loadPlaylists = async () => {
const loadPlaylists = useCallback(async () => {
setPlaylistsLoading(true);
setError(null);
try {
@@ -101,11 +101,11 @@ export const NavidromeProvider: React.FC<NavidromeProviderProps> = ({ children }
} finally {
setPlaylistsLoading(false);
}
};
}, [api]);
const refreshData = async () => {
const refreshData = useCallback(async () => {
await Promise.all([loadAlbums(), loadArtists(), loadPlaylists()]);
};
}, [loadAlbums, loadArtists, loadPlaylists]);
const searchMusic = async (query: string) => {
setError(null);
@@ -247,7 +247,7 @@ export const NavidromeProvider: React.FC<NavidromeProviderProps> = ({ children }
};
initialize();
}, []);
}, [api, refreshData]);
const value: NavidromeContextType = {
// Data

View File

@@ -86,7 +86,7 @@ export default function PlaylistPage() {
<div className="h-full px-4 py-6 lg:px-8">
<div className="text-center">
<h2 className="text-2xl font-bold">Playlist not found</h2>
<p className="text-muted-foreground">The playlist you're looking for doesn't exist.</p>
<p className="text-muted-foreground">The playlist you&apos;re looking for doesn&apos;t exist.</p>
</div>
</div>
);