UNPKG

@exromany/lido-csm-sdk

Version:

[![GitHub license](https://img.shields.io/github/license/lidofinance/lido-csm-sdk?color=limegreen)](https://github.com/lidofinance/lido-csm-sdk/blob/main/LICENSE.txt) [![Version npm](https://img.shields.io/npm/v/@lidofinance/lido-csm-sdk?label=version)](h

17 lines 686 B
export const iteratePages = async (fetchPage, pagination, getNextOffset) => { const allResults = []; const limit = pagination?.limit ?? 1000n; let offset = pagination?.offset ?? 0n; while (offset !== undefined) { const items = await fetchPage({ offset, limit }); allResults.push(...Array.from(items)); offset = getNextOffset?.({ items: items, offset, limit }); } return allResults; }; export const byTotalCount = (totalCount) => ({ offset, limit }) => { const nextOffset = offset + limit; return nextOffset < totalCount ? nextOffset : undefined; }; export const onePage = () => undefined; //# sourceMappingURL=iterate-pages.js.map