import { Table, TableBody, TableCell, TableHead, TableHeader, TableRow, } from "~/components/ui/table"; import { ScrollArea, ScrollBar } from "../ui/scroll-area"; export interface TableColumn { header: string; accessor: keyof T; cell?: (value: T[keyof T]) => React.ReactNode; } interface TableProps> { columns: TableColumn[]; data: T[]; } export default function TableComponent>({ columns, data, }: TableProps) { return ( <> {columns.map((column, index) => ( {column.header} ))} {data.map((row, rowIndex) => ( {columns.map((column, cellIndex) => ( {column.cell ? column.cell(row[column.accessor]) : (row[column.accessor] as React.ReactNode)} ))} ))} {data.length === 0 && ( Tidak ada data yang tersedia )}

Menampilkan {data.length} Data terakhir

); }