make artist stats for navidrome api sane

This commit is contained in:
Kendall Garner 2025-03-09 19:18:11 -07:00
parent 592376316f
commit 41c2a7da69
No known key found for this signature in database
GPG key ID: 9355F387FE765C94
2 changed files with 9 additions and 2 deletions

View file

@ -279,7 +279,7 @@ const normalizeAlbumArtist = (
}
return {
albumCount: item.albumCount,
albumCount: item.stats?.albumartist.albumCount || item.albumCount,
backgroundImageUrl: null,
biography: item.biography || null,
duration: null,
@ -304,7 +304,7 @@ const normalizeAlbumArtist = (
imageUrl: artist?.artistImageUrl || null,
name: artist.name,
})) || null,
songCount: item.songCount,
songCount: item.stats?.albumartist.songCount || item.songCount,
userFavorite: item.starred,
userRating: item.rating,
};

View file

@ -70,6 +70,12 @@ const genreListParameters = paginationParameters.extend({
const genreList = z.array(genre);
const stats = z.object({
albumCount: z.number(),
size: z.number(),
songCount: z.number(),
});
const albumArtist = z.object({
albumCount: z.number(),
biography: z.string(),
@ -91,6 +97,7 @@ const albumArtist = z.object({
songCount: z.number(),
starred: z.boolean(),
starredAt: z.string(),
stats: z.record(z.string(), stats).optional(),
});
const albumArtistList = z.array(albumArtist);