This pagacke includes a pagination calculation, where you can simply pass some basic information to the calcualtion function, and in return you receive an object with all relevant pagination information.
First, you have to install the package:
npm install @aboutbits/paginationSecond, you can call the calculate function by passing the following information:
page: The current pagesize: The amount of items shown per pagetotal: The amount of total items in the list/collectionconfig: A configuration object containing the following possible configuration values:indexType: The starting point of the pagination (default: IndexType.ONE_BASED)maxPages: The maximum amount of pages that should be shown (default: 5)
In return, you receive an object with all relevant information:
import { calculatePagination } from '@aboutbits/pagination'
let pagination = calculatePagination(1, 5, 100)
console.log(pagination)This would return the following object:
{
"previous": {
"indexNumber": 1,
"isDisabled": true
},
"next": {
"indexNumber": 2,
"isDisabled": false
},
"pages": [
{
"indexNumber": 1,
"displayNumber": 1,
"isCurrent": true
},
{
"indexNumber": 2,
"displayNumber": 2,
"isCurrent": false
},
{
"indexNumber": 3,
"displayNumber": 3,
"isCurrent": false
},
{
"indexNumber": 4,
"displayNumber": 4,
"isCurrent": false
},
{
"indexNumber": 5,
"displayNumber": 5,
"isCurrent": false
}
]
}To build and publish the package, visit the GitHub Actions page of the repository.
You can choose between two workflows:
Release Packageto publish a new version of the package.Pre-Release Packageto publish a new pre-release version of the package.
Note: Pre-releases need to be supplied with a pre-id.
Note: To increment a pre-release, you have to run the normal release workflow and select "prerelease". For this action you need to already be on a pre-release version.
About Bits is a company based in South Tyrol, Italy. You can find more information about us on our website.
For support, please contact info@aboutbits.it.
The MIT License (MIT). Please see the license file for more information.