Metadata field
Useful data about pagination.
calculateOffset(limit: number, page: number) {
return (page - 1) * limit;
}export interface PaginationMeta {
readonly itemsPerPage: number;
readonly totalItems: number;
readonly currentPage: number;
readonly totalPages: number;
readonly hasNextPage: boolean;
readonly hasPreviousPage: boolean;
}createMeta(limit: number, page: number, count: number): PaginationMeta {
const totalPages = Math.ceil(count / limit);
if (page > totalPages) return;
const hasNextPage = page < totalPages;
const hasPreviousPage = page > 1;
return {
itemsPerPage: limit,
totalItems: count,
currentPage: page,
totalPages,
hasNextPage,
hasPreviousPage,
};
}Last updated