import { useState, useMemo } from "react"; const usePagination = (data, itemsPerPage) => { const [currentPage, setCurrentPage] = useState(1); const totalPages = Math.ceil(data?.length / itemsPerPage); const currentItems = useMemo(() => { const startIndex = (currentPage - 1) * itemsPerPage; return data?.slice(startIndex, startIndex + itemsPerPage); }, [data, currentPage, itemsPerPage]); const paginate = (pageNumber) => { if (pageNumber < 1 || pageNumber > totalPages) return; setCurrentPage(pageNumber); }; return { currentPage, totalPages, currentItems, paginate,setCurrentPage }; }; export default usePagination;