Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- buildPageNumbers(totalReports) {
- const {
- reportsKind,
- [reportsKind]: {
- currentPage,
- },
- } = this.props
- let pages = []
- let totalPages = totalReports / this.props.pageSize
- totalPages = totalPages - Math.floor(totalPages) > 0 ? Math.floor(totalPages) + 1 : Math.floor(totalPages)
- const middlePages = [ ...Array(this.MIDDLE_PAGES_LENGTH).keys() ].map((pageIndex) => { return pageIndex + currentPage - this.CURRENT_PAGE_RADIUS } ).filter((pageIndex) => { return 1 <= pageIndex && pageIndex <= totalPages })
- const leftMarginPages = [ ...Array(this.MARGIN_PAGES_LENGTH).keys() ].map((pageIndex) => { return pageIndex + 1 } )
- const rightMarginPages = [ ...Array(this.MARGIN_PAGES_LENGTH).keys() ].map((pageIndex) => { return pageIndex + totalPages - this.MARGIN_PAGES_LENGTH + 1 })
- console.log(leftMarginPages)
- console.log(middlePages)
- console.log(rightMarginPages)
- if (Math.max(leftMarginPages) + 1 < Math.min(middlePages)) {
- pages = leftMarginPages.concat([ this.MARGINS_SEPARATOR ]).concat(middlePages)
- } else {
- pages = middlePages
- }
- console.log(pages)
- if (Math.max(middlePages) + 1 < Math.min(rightMarginPages)) {
- pages = pages.concat([ this.MARGINS_SEPARATOR ]).concat(rightMarginPages)
- }
- console.log(pages)
- return pages
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement