import React from 'react'; import { ProgressBar } from '../ProgressBar'; import { Typography } from '../Typography'; import { ActionButton, BarBox, PaginationBox } from './Pagination.styled'; export type PaginationProps = { disabled?: boolean; maxPages: number; onNextPageClick: () => void; onPreviousPageClick: () => void; page: number; }; export const Pagination: React.FunctionComponent = ({ onPreviousPageClick, onNextPageClick, maxPages, page, disabled = false, }) => { const nextDisabled = page === maxPages - 1; const previousDisabled = page === 0; const handleOnNextPageClick = () => { if (nextDisabled) { return; } onNextPageClick(); }; const handleOnPreviousPageClick = () => { if (previousDisabled) { return; } onPreviousPageClick(); }; return ( {previousDisabled ? `Current ${(page + 1).toString().padStart(2, '0')}` : `< Previous ${page.toString().padStart(2, '0')}`} {nextDisabled ? `${maxPages.toString().padStart(2, '0')} Last` : `${maxPages.toString().padStart(2, '0')} Next >`} ); };