@hoangnguyen035/paginova-core
v0.1.0
Published
Core pagination logic — range, ellipsis, page math. Zero dependencies.
Downloads
85
Readme
@hoangnguyen035/paginova-core
Pure logic for Paginova — pagination range, ellipsis, page math. Zero dependencies.
npm install @hoangnguyen035/paginova-coreimport { buildState, buildRange, ELLIPSIS } from '@hoangnguyen035/paginova-core';
const state = buildState({ totalPages: 20, currentPage: 5 });
// {
// currentPage: 5, totalPages: 20,
// range: [1, '...', 4, 5, 6, '...', 20],
// hasPrev: true, hasNext: true, isFirst: false, isLast: false
// }
buildRange({ totalPages: 20, currentPage: 1 });
// [1, 2, 3, 4, '...', 20]API
buildState(options): PaginationState
buildRange(options): RangeItem[]
clampPage(page, totalPages): number
interface PaginationOptions {
totalPages: number;
currentPage: number;
siblingCount?: number; // default 1
boundaryCount?: number; // default 1
}License: MIT
