import { useMemo } from "react"; import { Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, } from "src/components/ui/pagination"; import { cn, generatePageNumbers } from "src/lib/utils"; type CustomPaginationProps = { page: number; limit: number; totalCount: number; handlePageChange(page: number): void; }; export function CustomPagination({ page, totalCount, limit, handlePageChange, }: CustomPaginationProps) { const totalPages = Math.ceil(totalCount / limit); const pageNumbers = useMemo(() => { return generatePageNumbers(page, totalPages); }, [page, totalPages]); if (totalPages <= 1) { return null; } return (