Fetches every page of a paginated API and returns all items at once.
Use infinityFetchStream instead when the dataset is too large to hold in memory.
const { items, pages } = await infinityFetch({ fetcher: (params, { signal }) => api.list(params, { signal }), initialParams: { cursor: 0 }, isLastPage: (r) => r.done, getNextParams: (r) => ({ cursor: r.next }), getItems: (r) => r.items,}); Copy
const { items, pages } = await infinityFetch({ fetcher: (params, { signal }) => api.list(params, { signal }), initialParams: { cursor: 0 }, isLastPage: (r) => r.done, getNextParams: (r) => ({ cursor: r.next }), getItems: (r) => r.items,});
Fetches every page of a paginated API and returns all items at once.
Use infinityFetchStream instead when the dataset is too large to hold in memory.