From df4967dd55d52ea85cc15500e756da539cf351d7 Mon Sep 17 00:00:00 2001 From: Markury Date: Thu, 16 Oct 2025 12:37:00 -0400 Subject: [PATCH] fix(ui): update track number styling and playlist track mapping --- src/lib/components/DeezerCollectionView.svelte | 2 +- src/lib/components/SpotifyCollectionView.svelte | 2 +- src/lib/library/deezer-database.ts | 2 +- src/lib/library/spotify-database.ts | 2 +- .../services/deezer/playlists/[id]/+page.svelte | 1 - .../services/spotify/playlists/[id]/+page.svelte | 12 ++++++------ 6 files changed, 10 insertions(+), 11 deletions(-) diff --git a/src/lib/components/DeezerCollectionView.svelte b/src/lib/components/DeezerCollectionView.svelte index 65b2d98..9b2ec15 100644 --- a/src/lib/components/DeezerCollectionView.svelte +++ b/src/lib/components/DeezerCollectionView.svelte @@ -280,7 +280,7 @@ .track-number { text-align: center; - opacity: 0.6; + z-index: 0; } .duration { diff --git a/src/lib/components/SpotifyCollectionView.svelte b/src/lib/components/SpotifyCollectionView.svelte index 9f47332..ac5a2cd 100644 --- a/src/lib/components/SpotifyCollectionView.svelte +++ b/src/lib/components/SpotifyCollectionView.svelte @@ -225,7 +225,7 @@ .track-number { text-align: center; - opacity: 0.6; + z-index: 0; } .duration { diff --git a/src/lib/library/deezer-database.ts b/src/lib/library/deezer-database.ts index a767345..42fbbdc 100644 --- a/src/lib/library/deezer-database.ts +++ b/src/lib/library/deezer-database.ts @@ -115,7 +115,7 @@ export async function getCachedArtists(): Promise { export async function getCachedTracks(): Promise { const database = await initDeezerDatabase(); const tracks = await database.select( - 'SELECT * FROM deezer_tracks ORDER BY title COLLATE NOCASE' + 'SELECT * FROM deezer_tracks ORDER BY ROWID DESC' ); return tracks || []; } diff --git a/src/lib/library/spotify-database.ts b/src/lib/library/spotify-database.ts index d4b3e7c..ac40439 100644 --- a/src/lib/library/spotify-database.ts +++ b/src/lib/library/spotify-database.ts @@ -114,7 +114,7 @@ export async function getCachedArtists(): Promise { export async function getCachedTracks(): Promise { const database = await initSpotifyDatabase(); const tracks = await database.select( - 'SELECT * FROM spotify_tracks ORDER BY name COLLATE NOCASE' + 'SELECT * FROM spotify_tracks ORDER BY ROWID ASC' ); return tracks || []; } diff --git a/src/routes/services/deezer/playlists/[id]/+page.svelte b/src/routes/services/deezer/playlists/[id]/+page.svelte index ded2608..7e851ef 100644 --- a/src/routes/services/deezer/playlists/[id]/+page.svelte +++ b/src/routes/services/deezer/playlists/[id]/+page.svelte @@ -239,7 +239,6 @@ title: dbTrack.title, artist: dbTrack.artist_name, album: dbTrack.album_title || undefined, - trackNumber: dbTrack.track_number || undefined, duration: dbTrack.duration } }; diff --git a/src/routes/services/spotify/playlists/[id]/+page.svelte b/src/routes/services/spotify/playlists/[id]/+page.svelte index d78671f..d3a16e1 100644 --- a/src/routes/services/spotify/playlists/[id]/+page.svelte +++ b/src/routes/services/spotify/playlists/[id]/+page.svelte @@ -26,13 +26,13 @@ // Convert Spotify tracks to Track type for CollectionView let tracks = $derived( playlistTracks.map((track, i) => ({ - path: '', // Not applicable for Spotify - filename: '', // Not applicable for Spotify - format: 'unknown' as AudioFormat, // Not applicable for Spotify + path: '', + filename: '', + format: 'unknown' as AudioFormat, metadata: { - title: track.name, - artist: track.artist_name, - album: track.album_name, + title: track.name || 'Unknown Title', + artist: track.artist_name || 'Unknown Artist', + album: track.album_name || 'Unknown Album', trackNumber: track.track_number ?? i + 1, duration: Math.floor(track.duration_ms / 1000) }