import { forwardRef } from "react"; /** * Pagination * * currentPage: number - 1-based active page * totalPages: number * onPageChange: (page: number) => void * renderItem: (page, { currentPage, go }) => ReactNode - custom page item renderer */ const Pagination = forwardRef(function Pagination( { currentPage = 1, totalPages = 1, onPageChange, renderItem, className = "", ...props }, ref ) { const go = (page) => { if (page < 1 || page > totalPages) return; onPageChange?.(page); }; const defaultItem = (page) => ( { e.preventDefault(); go(page); }} > {page} ); return ( ); }); export default Pagination; const ChevronLeft = () => ( ); const ChevronRight = () => ( );