Split key pagination in central handler

This commit is contained in:
jeffvli 2023-07-20 01:55:49 -07:00
parent 1cb0a1d72a
commit 6821735f65
4 changed files with 91 additions and 103 deletions

View file

@ -3,7 +3,7 @@ import { useCallback, useMemo } from 'react';
import AutoSizer from 'react-virtualized-auto-sizer';
import { ListOnScrollProps } from 'react-window';
import { controller } from '/@/renderer/api/controller';
import { queryKeys, splitPaginatedQuery } from '/@/renderer/api/query-keys';
import { queryKeys } from '/@/renderer/api/query-keys';
import {
Album,
AlbumListQuery,
@ -169,16 +169,14 @@ export const AlbumListGridView = ({ gridRef, itemCount }: any) => {
return [];
}
const listQuery: AlbumListQuery = {
const query: AlbumListQuery = {
limit: take,
startIndex: skip,
...filter,
...customFilters,
};
const { query, pagination } = splitPaginatedQuery(listQuery);
const queryKey = queryKeys.albums.list(server?.id || '', query, pagination);
const queryKey = queryKeys.albums.list(server?.id || '', query);
const albums = await queryClient.fetchQuery(queryKey, async ({ signal }) =>
controller.getAlbumList({
@ -186,7 +184,7 @@ export const AlbumListGridView = ({ gridRef, itemCount }: any) => {
server,
signal,
},
query: listQuery,
query,
}),
);