Paginator - Paginate with minimal efforts
Paginator
This documentation provides complete coverage of all methods in the Paginator
class, organized into logical categories with detailed sections for each method.
Table of Contents
- Constructor
- Instance Creation Methods
- Pagination Calculation Methods
- Page Navigation Methods
- Utility Methods
- Static Methods
Constructor
Signature
constructor(options: PaginatorOptions)
Parameters
options
: Pagination configuration
interface PaginatorOptions {
totalItems: Numeric;
itemsPerPage?: Numeric; // default: 10
currentPage?: Numeric; // default: 1
}
Behavior
- Initializes paginator with provided values
- Applies safety clamping:
totalItems
≥ 0itemsPerPage
≥ 1currentPage
≥ 1
Example
new Paginator({
totalItems: 100,
itemsPerPage: 10,
currentPage: 3
});
Type Definitions
Numeric
type Numeric = number | `${number}`;
Union type accepting numbers or numeric strings
PaginatorOptions
interface PaginatorOptions {
totalItems: Numeric;
itemsPerPage?: Numeric;
currentPage?: Numeric;
}
Initialization options with defaults
PaginatorMeta
interface PaginatorMeta {
totalItems: number;
currentPage: number;
itemsPerPage: number;
totalPages: number;
hasPrev: boolean;
hasNext: boolean;
isFirst: boolean;
isLast: boolean;
offset: number;
}
Complete pagination metadata
PageListOptions
interface PageListOptions {
edgeCount?: number;
siblingCount?: number;
}
Page list generation options
FromMetaOptions
type FromMetaOptions = Pick<PaginatorMeta, 'totalItems' | 'itemsPerPage' | 'currentPage'>;