From 8dbaec3943cdadcb3557e3e3adc706100b18b819 Mon Sep 17 00:00:00 2001 From: jeffvli Date: Sun, 2 Nov 2025 04:27:44 -0800 Subject: [PATCH] fix type errors --- src/renderer/api/subsonic/subsonic-controller.ts | 10 ++++++++-- src/renderer/components/card/card-rows.tsx | 6 +++--- .../albums/components/album-list-grid-view.tsx | 13 +++++++------ .../components/album-artist-list-grid-view.tsx | 13 +++++++------ .../artists/components/artist-list-grid-view.tsx | 13 +++++++------ .../genres/components/genre-list-grid-view.tsx | 13 +++++++------ .../components/playlist-list-grid-view.tsx | 13 +++++++------ .../songs/components/song-list-grid-view.tsx | 13 +++++++------ 8 files changed, 53 insertions(+), 41 deletions(-) diff --git a/src/renderer/api/subsonic/subsonic-controller.ts b/src/renderer/api/subsonic/subsonic-controller.ts index f7121cf9..80798883 100644 --- a/src/renderer/api/subsonic/subsonic-controller.ts +++ b/src/renderer/api/subsonic/subsonic-controller.ts @@ -252,7 +252,10 @@ export const SubsonicController: ControllerEndpoint = { }; }, getAlbumArtistListCount: (args) => - SubsonicController.getAlbumArtistList(args).then((res) => res!.totalRecordCount!), + SubsonicController.getAlbumArtistList({ + ...args, + query: { ...args.query, startIndex: 0 }, + }).then((res) => res!.totalRecordCount!), getAlbumDetail: async (args) => { const { apiClientProps, query } = args; @@ -602,7 +605,10 @@ export const SubsonicController: ControllerEndpoint = { }; }, getArtistListCount: async (args) => - SubsonicController.getArtistList(args).then((res) => res!.totalRecordCount!), + SubsonicController.getArtistList({ + ...args, + query: { ...args.query, startIndex: 0 }, + }).then((res) => res!.totalRecordCount!), getDownloadUrl: (args) => { const { apiClientProps, query } = args; diff --git a/src/renderer/components/card/card-rows.tsx b/src/renderer/components/card/card-rows.tsx index 31b06771..3f18d905 100644 --- a/src/renderer/components/card/card-rows.tsx +++ b/src/renderer/components/card/card-rows.tsx @@ -1,7 +1,7 @@ import clsx from 'clsx'; import formatDuration from 'format-duration'; import React from 'react'; -import { useTranslation } from 'react-i18next'; +import { TFunction, useTranslation } from 'react-i18next'; import { generatePath } from 'react-router'; import { Link } from 'react-router-dom'; @@ -180,7 +180,7 @@ export const ALBUM_CARD_ROWS: { [key: string]: CardRow } = { property: 'duration', }, explicitStatus: { - format: (album, t) => + format: (album, t: TFunction) => album.explicitStatus === ExplicitStatus.EXPLICIT ? t('common.explicit', { postProcess: 'sentenceCase' }) : album.explicitStatus === ExplicitStatus.CLEAN @@ -250,7 +250,7 @@ export const SONG_CARD_ROWS: { [key: string]: CardRow } = { property: 'duration', }, explicitStatus: { - format: (song, t) => + format: (song, t: TFunction) => song.explicitStatus === ExplicitStatus.EXPLICIT ? t('common.explicit', { postProcess: 'sentenceCase' }) : song.explicitStatus === ExplicitStatus.CLEAN diff --git a/src/renderer/features/albums/components/album-list-grid-view.tsx b/src/renderer/features/albums/components/album-list-grid-view.tsx index 626d6a0d..20b57cf1 100644 --- a/src/renderer/features/albums/components/album-list-grid-view.tsx +++ b/src/renderer/features/albums/components/album-list-grid-view.tsx @@ -129,12 +129,13 @@ export const AlbumListGridView = ({ gridRef, itemCount }: any) => { const queryKey = queryKeys.albums.list(server?.id || '', query, id); - const queriesFromCache: [QueryKey, AlbumListResponse][] = queryClient.getQueriesData({ - exact: false, - fetchStatus: 'idle', - queryKey, - stale: false, - }); + const queriesFromCache: [QueryKey, AlbumListResponse | undefined][] = + queryClient.getQueriesData({ + exact: false, + fetchStatus: 'idle', + queryKey, + stale: false, + }); const itemData: Album[] = []; diff --git a/src/renderer/features/artists/components/album-artist-list-grid-view.tsx b/src/renderer/features/artists/components/album-artist-list-grid-view.tsx index 194973d2..f6227889 100644 --- a/src/renderer/features/artists/components/album-artist-list-grid-view.tsx +++ b/src/renderer/features/artists/components/album-artist-list-grid-view.tsx @@ -45,12 +45,13 @@ export const AlbumArtistListGridView = ({ gridRef, itemCount }: AlbumArtistListG ...filter, }; - const queriesFromCache: [QueryKey, AlbumArtistListResponse][] = queryClient.getQueriesData({ - exact: false, - fetchStatus: 'idle', - queryKey: queryKeys.albumArtists.list(server?.id || '', query), - stale: false, - }); + const queriesFromCache: [QueryKey, AlbumArtistListResponse | undefined][] = + queryClient.getQueriesData({ + exact: false, + fetchStatus: 'idle', + queryKey: queryKeys.albumArtists.list(server?.id || '', query), + stale: false, + }); const itemData: AlbumArtist[] = []; diff --git a/src/renderer/features/artists/components/artist-list-grid-view.tsx b/src/renderer/features/artists/components/artist-list-grid-view.tsx index acd0c420..d87a539b 100644 --- a/src/renderer/features/artists/components/artist-list-grid-view.tsx +++ b/src/renderer/features/artists/components/artist-list-grid-view.tsx @@ -46,12 +46,13 @@ export const ArtistListGridView = ({ gridRef, itemCount }: ArtistListGridViewPro ...filter, }; - const queriesFromCache: [QueryKey, ArtistListResponse][] = queryClient.getQueriesData({ - exact: false, - fetchStatus: 'idle', - queryKey: queryKeys.artists.list(server?.id || '', query), - stale: false, - }); + const queriesFromCache: [QueryKey, ArtistListResponse | undefined][] = + queryClient.getQueriesData({ + exact: false, + fetchStatus: 'idle', + queryKey: queryKeys.artists.list(server?.id || '', query), + stale: false, + }); const itemData: AlbumArtist[] = []; diff --git a/src/renderer/features/genres/components/genre-list-grid-view.tsx b/src/renderer/features/genres/components/genre-list-grid-view.tsx index 46acb6b9..3bd31eab 100644 --- a/src/renderer/features/genres/components/genre-list-grid-view.tsx +++ b/src/renderer/features/genres/components/genre-list-grid-view.tsx @@ -62,12 +62,13 @@ export const GenreListGridView = ({ gridRef, itemCount }: any) => { ...filter, }; - const queriesFromCache: [QueryKey, GenreListResponse][] = queryClient.getQueriesData({ - exact: false, - fetchStatus: 'idle', - queryKey: queryKeys.genres.list(server?.id || '', query), - stale: false, - }); + const queriesFromCache: [QueryKey, GenreListResponse | undefined][] = + queryClient.getQueriesData({ + exact: false, + fetchStatus: 'idle', + queryKey: queryKeys.genres.list(server?.id || '', query), + stale: false, + }); const itemData: Genre[] = []; diff --git a/src/renderer/features/playlists/components/playlist-list-grid-view.tsx b/src/renderer/features/playlists/components/playlist-list-grid-view.tsx index 4e3094ca..9d834e2b 100644 --- a/src/renderer/features/playlists/components/playlist-list-grid-view.tsx +++ b/src/renderer/features/playlists/components/playlist-list-grid-view.tsx @@ -78,12 +78,13 @@ export const PlaylistListGridView = ({ gridRef, itemCount }: PlaylistListGridVie ...filter, }; - const queriesFromCache: [QueryKey, PlaylistListResponse][] = queryClient.getQueriesData({ - exact: false, - fetchStatus: 'idle', - queryKey: queryKeys.playlists.list(server?.id || '', query), - stale: false, - }); + const queriesFromCache: [QueryKey, PlaylistListResponse | undefined][] = + queryClient.getQueriesData({ + exact: false, + fetchStatus: 'idle', + queryKey: queryKeys.playlists.list(server?.id || '', query), + stale: false, + }); const itemData: Playlist[] = []; diff --git a/src/renderer/features/songs/components/song-list-grid-view.tsx b/src/renderer/features/songs/components/song-list-grid-view.tsx index 886c0e44..cf2d5d58 100644 --- a/src/renderer/features/songs/components/song-list-grid-view.tsx +++ b/src/renderer/features/songs/components/song-list-grid-view.tsx @@ -140,12 +140,13 @@ export const SongListGridView = ({ gridRef, itemCount }: SongListGridViewProps) const queryKey = queryKeys.songs.list(server?.id || '', query, id); - const queriesFromCache: [QueryKey, SongListResponse][] = queryClient.getQueriesData({ - exact: false, - fetchStatus: 'idle', - queryKey, - stale: false, - }); + const queriesFromCache: [QueryKey, SongListResponse | undefined][] = + queryClient.getQueriesData({ + exact: false, + fetchStatus: 'idle', + queryKey, + stale: false, + }); const itemData: Song[] = [];