personal web client for Bluesky
typescript solidjs bluesky atcute

fix: better pagination check

mary.my.id 325fb21b 24df5fa7

verified
+13 -2
+13 -2
src/api/queries/bookmark.ts
··· 26 ); 27 28 return { 29 - cursor: data.bookmarks.length !== 0 ? data.cursor : undefined, 30 bookmarks: data.bookmarks, 31 }; 32 }, 33 structuralSharing: false, 34 initialPageParam: undefined, 35 - getNextPageParam: (last) => last.cursor, 36 }; 37 }); 38 };
··· 26 ); 27 28 return { 29 + cursor: data.cursor, 30 bookmarks: data.bookmarks, 31 }; 32 }, 33 structuralSharing: false, 34 initialPageParam: undefined, 35 + getNextPageParam: (last, all) => { 36 + // stop pagination if the last 4 pages have no bookmarks 37 + if (all.length >= 4) { 38 + const recentPages = all.slice(-4); 39 + const allEmpty = recentPages.every((page) => page.bookmarks.length === 0); 40 + if (allEmpty) { 41 + return undefined; 42 + } 43 + } 44 + 45 + return last.cursor; 46 + }, 47 }; 48 }); 49 };