import { DEFAULT_PAGE_SIZES, INITIAL_PAGE_INDEX } from "@/lib/hooks"; import { cn } from "@/lib/utils"; import { Button, Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from "@/ui"; import { Table } from "@tanstack/react-table"; import { ChevronLeftIcon, ChevronRightIcon, ChevronsLeftIcon, ChevronsRightIcon, } from "lucide-react"; import { useMemo } from "react"; export type DataTablePaginationProps = { table: Table; className?: string; visible?: boolean | "auto"; }; export function DataTablePagination({ table, className, visible = "auto", }: DataTablePaginationProps) { const isVisible = useMemo(() => visible === true, [visible]); const isAuto = useMemo(() => visible === "auto", [visible]); if (!isVisible || (isAuto && table.getPageCount() < 1)) { return null; } return (
{table.getFilteredSelectedRowModel().rows.length} de{" "} {table.getFilteredRowModel().rows.length} filas(s) seleccionadas.

Filas por página

Página {table.getState().pagination.pageIndex + 1} de {table.getPageCount()}
); }