mirror of
https://github.com/ThatGuySam/doesitarm.git
synced 2026-05-18 06:44:46 -07:00
Add hasNextPage to pagination
This commit is contained in:
parent
e4ab3384eb
commit
f838955dc3
2 changed files with 8 additions and 0 deletions
|
|
@ -31,12 +31,17 @@ export class PaginatedList {
|
|||
return this.list.slice(start, end)
|
||||
}
|
||||
|
||||
hasPage ( pageNumber ) {
|
||||
return pageNumber > 0 && pageNumber <= this.pageCount
|
||||
}
|
||||
|
||||
makePage ( pageNumber ) {
|
||||
const items = this.makePageItems( pageNumber )
|
||||
|
||||
return {
|
||||
number: pageNumber,
|
||||
items,
|
||||
hasNextPage: this.hasPage( pageNumber + 1 ),
|
||||
get json() {
|
||||
return JSON.stringify( items )
|
||||
}
|
||||
|
|
|
|||
|
|
@ -193,11 +193,13 @@ test('Can paginate', async (t) => {
|
|||
pages: [
|
||||
{
|
||||
number: 1,
|
||||
hasNextPage: true,
|
||||
items: [1, 2],
|
||||
json: '[1,2]'
|
||||
},
|
||||
{
|
||||
number: 2,
|
||||
hasNextPage: true,
|
||||
items: [3, 4],
|
||||
json: '[3,4]'
|
||||
},
|
||||
|
|
@ -205,6 +207,7 @@ test('Can paginate', async (t) => {
|
|||
// Last page should have less than perPage items
|
||||
{
|
||||
number: 5,
|
||||
hasNextPage: false,
|
||||
items: [9],
|
||||
json: '[9]'
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue