A generic, framework agnostic, pagination calculator
- 🔌 Framework agnostic
- 🏆 Dependency free
- 🔥 Higly flexible
✨ Demo
yarn add pagix
import { pagix } from 'pagix'
const paginate = pagix({ records: 100 })
The pagix
function returns an object with some calculated props:
- total: total number of pages
- current: current page number, constrained between
1
andtotal
- start: an array of page numbers, the first
fixed
page numbers - middle: an array of page numbers, calculated from
current
page - end: an array of page numbers, the last
fixed
page numbers - prev: the previous page number between
start
andmiddle
, false if there is no truncated pages betweenstart
andmiddle
- next: the next page number between
middle
andend
, false if there is no truncated pages betweenmiddle
andend
- from: initial record in current page
- to: last record in current page
pagix({ records [, limit, current, delta, fixed ] }): Main method to calculate pagination
Prop | Required | Default | Description |
---|---|---|---|
records | true | - | total of records to paginate |
limit | false | 10 | total of records to show per page |
current | true | 1 | current page |
delta | true | 1 | total of pages to show in each side of current page |
fixed | true | 1 | total of pages to show before prev button and after next button |
Contributions, issues and feature requests are welcome!
Feel free to check issues page.
Give a ⭐️ if this project helped you!