More debugging on infinite scroll

This commit is contained in:
Jackson Harper
2024-08-15 11:39:26 +08:00
parent 5156753bbe
commit 39da8e60c1
2 changed files with 34 additions and 20 deletions

View File

@ -86,7 +86,7 @@ export function LibraryContainer(props: LibraryContainerProps): JSX.Element {
const [searchResults, setSearchResults] = useState<SearchItem[]>([])
const defaultQuery = {
limit: 10,
limit: 5,
folder: props.folder,
sortDescending: true,
searchQuery: undefined,
@ -178,22 +178,22 @@ export function LibraryContainer(props: LibraryContainerProps): JSX.Element {
}
}, [libraryItems])
const processingItems = useMemo(() => {
return libraryItems
.filter((li) => li.node.state === State.PROCESSING)
.map((li) => li.node.id)
}, [libraryItems])
// const processingItems = useMemo(() => {
// return libraryItems
// .filter((li) => li.node.state === State.PROCESSING)
// .map((li) => li.node.id)
// }, [libraryItems])
const refreshProcessingItems = useRefreshProcessingItems()
// const refreshProcessingItems = useRefreshProcessingItems()
useEffect(() => {
if (processingItems.length) {
refreshProcessingItems.mutateAsync({
attempt: 0,
itemIds: processingItems,
})
}
}, [processingItems])
// useEffect(() => {
// if (processingItems.length) {
// refreshProcessingItems.mutateAsync({
// attempt: 0,
// itemIds: processingItems,
// })
// }
// }, [processingItems])
const focusFirstItem = useCallback(() => {
if (libraryItems.length < 1) {

View File

@ -218,8 +218,9 @@ export function useGetLibraryItems(
? (`in:${folder} use:folders ` + (searchQuery ?? '')).trim()
: searchQuery ?? ''
console.log('fullQuery: ', fullQuery)
return useInfiniteQuery({
queryKey: ['libraryItems', fullQuery],
queryKey: ['libraryItems', folder, fullQuery],
queryFn: async ({ pageParam }) => {
const response = (await gqlFetcher(gqlSearchQuery(includeCount), {
after: pageParam,
@ -231,14 +232,25 @@ export function useGetLibraryItems(
},
enabled,
initialPageParam: '0',
refetchOnMount: false,
refetchOnWindowFocus: false,
staleTime: 10 * 60 * 1000,
// maxPages: 3,
getNextPageParam: (lastPage: LibraryItems) => {
console.log(
'lastPage.pageInfo.hasNextPage: ',
lastPage.pageInfo.hasNextPage,
'lastPage?.pageInfo?.endCursor:',
lastPage?.pageInfo?.endCursor
)
return lastPage.pageInfo.hasNextPage
? lastPage?.pageInfo?.endCursor
: undefined
},
// getPreviousPageParam: (firstPage, pages) => {
// return firstPage.pageInfo.hasPreviousPage
// ? firstPage?.pageInfo?.startCursor
// : undefined
// // console.log('getPreviousPageParam: firstPage, pages', firstPage, pages)
// // return undefined
// },
})
}
@ -531,7 +543,9 @@ export function useRefreshProcessingItems() {
attempt: number
itemIds: string[]
}) => {
const fullQuery = `in:all includes:${variables.itemIds.join(',')}`
const fullQuery = `in:all includes:${variables.itemIds
.slice(0, 5)
.join(',')}`
const result = (await gqlFetcher(gqlSearchQuery(), {
first: 10,
query: fullQuery,