import { Text } from "react-native"; import { api } from "@/lib/trpc"; import type { ZGetBookmarksRequest } from "@hoarder/shared/types/bookmarks"; import FullPageSpinner from "../ui/FullPageSpinner"; import BookmarkList from "./BookmarkList"; export default function UpdatingBookmarkList({ query, header, }: { query: ZGetBookmarksRequest; header?: React.ReactElement; }) { const apiUtils = api.useUtils(); const { data, isPending, isPlaceholderData, error, fetchNextPage, isFetchingNextPage, } = api.bookmarks.getBookmarks.useInfiniteQuery(query, { initialCursor: null, getNextPageParam: (lastPage) => lastPage.nextCursor, }); if (error) { return {JSON.stringify(error)}; } if (isPending || !data) { return ; } const onRefresh = () => { apiUtils.bookmarks.getBookmarks.invalidate(); apiUtils.bookmarks.getBookmark.invalidate(); }; return ( p.bookmarks)} header={header} onRefresh={onRefresh} fetchNextPage={fetchNextPage} isFetchingNextPage={isFetchingNextPage} isRefreshing={isPending || isPlaceholderData} /> ); }