import type { AgGridReact as AgGridReactType } from '@ag-grid-community/react/lib/agGridReact'; import { useMemo, useRef } from 'react'; import { useCurrentServer } from '../../../store/auth.store'; import { useListFilterByKey } from '../../../store/list.store'; import { AlbumArtistListQuery, LibraryItem } from '/@/renderer/api/types'; import { VirtualInfiniteGridRef } from '/@/renderer/components/virtual-grid'; import { ListContext } from '/@/renderer/context/list-context'; import { AlbumArtistListContent } from '/@/renderer/features/artists/components/album-artist-list-content'; import { AlbumArtistListHeader } from '/@/renderer/features/artists/components/album-artist-list-header'; import { AnimatedPage } from '/@/renderer/features/shared'; import { useAlbumArtistListCount } from '/@/renderer/features/artists/queries/album-artist-list-count-query'; const AlbumArtistListRoute = () => { const gridRef = useRef(null); const tableRef = useRef(null); const pageKey = LibraryItem.ALBUM_ARTIST; const server = useCurrentServer(); const albumArtistListFilter = useListFilterByKey({ key: pageKey }); const itemCountCheck = useAlbumArtistListCount({ options: { cacheTime: 1000 * 60, staleTime: 1000 * 60, }, query: albumArtistListFilter, serverId: server?.id, }); const itemCount = itemCountCheck.data === null ? undefined : itemCountCheck.data; const providerValue = useMemo(() => { return { id: undefined, pageKey, }; }, [pageKey]); return ( ); }; export default AlbumArtistListRoute;