import React from 'react'; import { Pagination } from './schema'; import { getTranslation, LanguageKey } from './language'; interface PaginationToolsComponentProps { pagination: Pagination; updatePagination: (updates: Partial) => void; lang?: LanguageKey; } export function PaginationToolsComponent({ pagination, updatePagination, lang = 'en' }: PaginationToolsComponentProps) { const t = getTranslation(lang); const handlePageChange = (newPage: number) => { if (newPage >= 1 && newPage <= pagination.totalPages) { updatePagination({ page: newPage }); } }; const handleSizeChange = (e: React.ChangeEvent) => { updatePagination({ size: Number(e.target.value), page: 1 }); }; return (
{/* Navigation buttons */}
{t.page} {pagination.page} {t.of} {pagination.totalPages}
{/* Items per page selector */}
{/* Pagination stats */}
{t.showing} {pagination.pageCount} {t.of} {pagination.totalCount} {t.items}
{t.total}: {pagination.allCount} {t.items}
); }