From 81d3d2e620e7210200ddce5b1138af755aed0dfa Mon Sep 17 00:00:00 2001 From: jeffvli Date: Sat, 15 Nov 2025 13:42:24 -0800 Subject: [PATCH] fix Song domain type year value --- src/shared/api/jellyfin/jellyfin-normalize.ts | 2 +- src/shared/api/navidrome/navidrome-normalize.ts | 4 ++-- src/shared/api/subsonic/subsonic-normalize.ts | 4 ++-- src/shared/types/domain-types.ts | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/shared/api/jellyfin/jellyfin-normalize.ts b/src/shared/api/jellyfin/jellyfin-normalize.ts index a251146ef..94126376b 100644 --- a/src/shared/api/jellyfin/jellyfin-normalize.ts +++ b/src/shared/api/jellyfin/jellyfin-normalize.ts @@ -291,7 +291,7 @@ const normalizeSong = ( : item.ProductionYear ? new Date(item.ProductionYear, 0, 1).toISOString() : null, - releaseYear: item.ProductionYear ? String(item.ProductionYear) : null, + releaseYear: item.ProductionYear || null, sampleRate, size, streamUrl, diff --git a/src/shared/api/navidrome/navidrome-normalize.ts b/src/shared/api/navidrome/navidrome-normalize.ts index b327bf952..47819e928 100644 --- a/src/shared/api/navidrome/navidrome-normalize.ts +++ b/src/shared/api/navidrome/navidrome-normalize.ts @@ -205,7 +205,7 @@ const normalizeSong = ( ? new Date(item.releaseDate) : new Date(Date.UTC(item.year, 0, 1)) ).toISOString(), - releaseYear: String(item.year), + releaseYear: item.year || null, sampleRate: item.sampleRate || null, size: item.size, streamUrl: `${server?.url}/rest/stream.view?id=${id}&v=1.13.0&c=Feishin&${server?.credential}`, @@ -320,7 +320,7 @@ const normalizeAlbum = ( ? new Date(item.releaseDate) : new Date(Date.UTC(item.minYear, 0, 1)) ).toISOString(), - releaseYear: item.minYear, + releaseYear: item.minYear || null, size: item.size, songCount: item.songCount, songs: item.songs ? item.songs.map((song) => normalizeSong(song, server)) : undefined, diff --git a/src/shared/api/subsonic/subsonic-normalize.ts b/src/shared/api/subsonic/subsonic-normalize.ts index c16c51ed5..4d07f1bcf 100644 --- a/src/shared/api/subsonic/subsonic-normalize.ts +++ b/src/shared/api/subsonic/subsonic-normalize.ts @@ -187,7 +187,7 @@ const normalizeSong = ( : null, playCount: item?.playCount || 0, releaseDate: null, - releaseYear: item.year ? String(item.year) : null, + releaseYear: item.year || null, sampleRate: item.samplingRate || null, size: item.size, streamUrl, @@ -280,7 +280,7 @@ const normalizeAlbum = ( recordLabels: item.recordLabels?.map((item) => item.name) || [], releaseDate: item.year ? new Date(Date.UTC(item.year, 0, 1)).toISOString() : null, releaseTypes: item.releaseTypes || [], - releaseYear: item.year ? Number(item.year) : null, + releaseYear: item.year || null, size: null, songCount: item.songCount, songs: diff --git a/src/shared/types/domain-types.ts b/src/shared/types/domain-types.ts index 473d1679b..4a0b06c2b 100644 --- a/src/shared/types/domain-types.ts +++ b/src/shared/types/domain-types.ts @@ -367,7 +367,7 @@ export type Song = { playCount: number; playlistItemId?: string; releaseDate: null | string; - releaseYear: null | string; + releaseYear: null | number; sampleRate: null | number; size: number; streamUrl: string;