import type { FC } from 'react'; import classNames from 'classnames'; import { Pagination, PaginationItem, PaginationLink } from 'reactstrap'; import type { NumberOrEllipsis } from '../utils/helpers/pagination'; import { pageIsEllipsis, keyForPage, progressivePagination, prettifyPageNumber, } from '../utils/helpers/pagination'; import './SimplePaginator.scss'; interface SimplePaginatorProps { pagesCount: number; currentPage: number; setCurrentPage: (currentPage: number) => void; centered?: boolean; } export const SimplePaginator: FC = ( { pagesCount, currentPage, setCurrentPage, centered = true }, ) => { if (pagesCount < 2) { return null; } const onClick = (page: NumberOrEllipsis) => () => !pageIsEllipsis(page) && setCurrentPage(page); return ( {progressivePagination(currentPage, pagesCount).map((pageNumber, index) => ( {prettifyPageNumber(pageNumber)} ))} = pagesCount}> ); };