import React, { useState } from 'react'; import { Select, HStack, Text, Box, IconButton } from '@chakra-ui/react'; import { ChevronLeftIcon, ChevronRightIcon } from '@chakra-ui/icons'; const Pagination = ({ totalItems, itemsPerPageOptions = [ 10, 15] }) => { const [pageSize, setPageSize] = useState(itemsPerPageOptions[0]); const [currentPage, setCurrentPage] = useState(1); const totalPages = Math.ceil(totalItems / pageSize); const handlePageSizeChange = (e) => { setPageSize(Number(e.target.value)); setCurrentPage(1); // Reset to first page whenever page size changes }; const paginationPrev = () => { if (currentPage > 1) { setCurrentPage(currentPage - 1); } }; const paginationNext = () => { if (currentPage < totalPages) { setCurrentPage(currentPage + 1); } }; const displayRange = { start: (currentPage - 1) * pageSize + 1, end: Math.min(currentPage * pageSize, totalItems), }; return ( {/* Tanami v0.1 */} } onClick={paginationPrev} className="link pointer" isDisabled={currentPage === 1} /> {displayRange.start} - {displayRange.end} of {totalItems} } size={'sm'} rounded="sm" onClick={paginationNext} className="link pointer" isDisabled={currentPage === totalPages} /> ); }; export default Pagination;