<InfiniteLoader
items={items}
isLoading={query.isLoading}
hasMore={query.hasNextPage}
isFetchingNextPage={query.isFetchingNextPage}
fetchNextPage={query.fetchNextPage}
loadingFallback={<Skeleton />}
emptyFallback={<EmptyState title="Nothing here" />}
>
{(items) => items.map(item => <ListItem key={item.id} {...item} />)}
</InfiniteLoader>
Renders an infinite-scroll list with automatic load-more detection.
Handles loading, empty, and paginated states. Place inside a scrollable container — the built-in
LoadMoreSentineltriggersfetchNextPagewhen the user scrolls near the bottom.