add version to track/album titles

This commit is contained in:
uh wot 2024-07-30 18:00:50 +02:00
parent b0ca7e7c78
commit 2c55e72676
No known key found for this signature in database
GPG Key ID: CB2454984587B781
3 changed files with 8 additions and 4 deletions

View File

@ -117,6 +117,7 @@ export function parseAlbum(album: DeezerAlbum): Album {
export interface DeezerTrack { export interface DeezerTrack {
SNG_ID: string SNG_ID: string
SNG_TITLE: string SNG_TITLE: string
VERSION: string
EXPLICIT_LYRICS: '0' | '1' EXPLICIT_LYRICS: '0' | '1'
TRACK_NUMBER: string TRACK_NUMBER: string
DISK_NUMBER: string DISK_NUMBER: string
@ -151,7 +152,7 @@ export function parseTrack(track: DeezerTrack): Track {
if (track.SNG_CONTRIBUTORS?.composer) addt.lyricists = track.SNG_CONTRIBUTORS?.lyricist if (track.SNG_CONTRIBUTORS?.composer) addt.lyricists = track.SNG_CONTRIBUTORS?.lyricist
return { return {
title: track.SNG_TITLE, title: track.VERSION ? `${track.SNG_TITLE} ${track.VERSION}` : track.SNG_TITLE,
id: track.SNG_ID, id: track.SNG_ID,
url: `https://www.deezer.com/track/${track.SNG_ID}`, url: `https://www.deezer.com/track/${track.SNG_ID}`,
explicit: track.EXPLICIT_LYRICS == '1', explicit: track.EXPLICIT_LYRICS == '1',

View File

@ -34,6 +34,7 @@ export function parseArtist(raw: RawArtist): Artist {
export interface RawAlbum { export interface RawAlbum {
title: string title: string
version?: string
id: string id: string
url: string url: string
image: { image: {
@ -62,7 +63,7 @@ export interface RawAlbum {
export function parseAlbum(raw: RawAlbum) { export function parseAlbum(raw: RawAlbum) {
const album: Album = { const album: Album = {
title: raw.title, title: raw.version ? `${raw.title} (${raw.version})` : raw.title,
id: raw.id, id: raw.id,
url: raw.url ?? `https://play.qobuz.com/album/${raw.id}`, url: raw.url ?? `https://play.qobuz.com/album/${raw.id}`,
coverArtwork: [ coverArtwork: [
@ -96,6 +97,7 @@ export function parseAlbum(raw: RawAlbum) {
export interface RawTrack { export interface RawTrack {
title: string title: string
version?: string
id: number id: number
copyright?: string copyright?: string
performer: RawArtist performer: RawArtist
@ -110,7 +112,7 @@ export interface RawTrack {
export function parseTrack(raw: RawTrack): Track { export function parseTrack(raw: RawTrack): Track {
let track: Track = { let track: Track = {
title: raw.title, title: raw.version ? `${raw.title} (${raw.version})` : raw.title,
id: raw.id.toString(), id: raw.id.toString(),
url: `https://play.qobuz.com/track/${raw.id.toString()}`, url: `https://play.qobuz.com/track/${raw.id.toString()}`,
copyright: raw.copyright, copyright: raw.copyright,

View File

@ -92,6 +92,7 @@ export interface RawTrack {
trackNumber?: number trackNumber?: number
volumeNumber?: number volumeNumber?: number
title: string title: string
version?: string
album: RawAlbum album: RawAlbum
} }
@ -99,7 +100,7 @@ export function parseTrack(raw: RawTrack): Track {
const track: Track = { const track: Track = {
url: raw.url, url: raw.url,
id: raw.id, id: raw.id,
title: raw.title, title: raw.version ? `${raw.title} (${raw.version})` : raw.title,
durationMs: raw.duration * 1000, durationMs: raw.duration * 1000,
artists: raw.artists.map(parseArtist), artists: raw.artists.map(parseArtist),
album: parseAlbum(raw.album) album: parseAlbum(raw.album)