Add a utility method to allow easily paginating a list of data

This commit is contained in:
Oliver 2026-01-23 21:19:10 -07:00
parent d61a1642f2
commit 82ba07414c

View file

@ -0,0 +1,13 @@
export function paginate(data, page, pageSize) {
const pageStart = pageSize * Math.max(0, page - 1);
const pageEnd = pageSize * page;
const pageData = data.slice(pageStart, pageEnd);
const partialPage = (data.length % pageSize) !== 0;
const total = Math.floor(data.length / pageSize) + (partialPage ? 1 : 0);
return {
page: pageData,
total,
prev: page > 1,
next: pageEnd < data.length,
};
};