OverviewTable() — supabase Function Reference
Architecture documentation for the OverviewTable() function in OverviewTable.tsx from the supabase codebase.
Entity Profile
Relationship Graph
Source Code
apps/studio/components/interfaces/Auth/Overview/OverviewTable.tsx lines 20–71
export function OverviewTable<T>({ columns, data, isLoading, emptyMessage }: OverviewTable<T>) {
const hasData = !isLoading && data.length > 0
return (
<Table className="border-t mt-4">
{hasData && (
<TableHeader>
<TableRow>
{columns.map((col) => (
<TableHead key={String(col.key)} className={cn(col.className)}>
{col.header}
</TableHead>
))}
</TableRow>
</TableHeader>
)}
<TableBody className="text-foreground">
{isLoading ? (
<TableRow className="[&>td]:hover:bg-transparent">
<TableCell colSpan={columns.length} className="text-center text-foreground-light">
<div className="flex items-center justify-center gap-2 py-4">
<Loader2 className="size-4 animate-spin" />
</div>
</TableCell>
</TableRow>
) : data.length === 0 ? (
<TableRow className="[&>td]:hover:bg-transparent">
<TableCell colSpan={columns.length} className="text-center text-foreground-light">
<div className="p-2 pt-0">
<NoDataPlaceholder
size="normal"
message={emptyMessage || 'No data available'}
isFullHeight
/>
</div>
</TableCell>
</TableRow>
) : (
(data as unknown as T[]).map((row, idx) => (
<TableRow key={idx}>
{columns.map((col) => (
<TableCell key={String(col.key)} className={cn(col.className)}>
{col.render ? col.render(row) : (row as any)[col.key as string]}
</TableCell>
))}
</TableRow>
))
)}
</TableBody>
</Table>
)
}
Domain
Subdomains
Source
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free