sourcebot/packages/web/src/app/[domain]/settings/components/inviteTable.tsx
2025-02-12 13:45:12 -08:00

37 lines
No EOL
956 B
TypeScript

'use client';
import { useMemo } from "react";
import { DataTable } from "@/components/ui/data-table";
import { InviteColumnInfo, inviteTableColumns } from "./inviteTableColumns"
export interface InviteInfo {
id: string;
email: string;
createdAt: Date;
}
interface InviteTableProps {
initialInvites: InviteInfo[];
}
export const InviteTable = ({ initialInvites }: InviteTableProps) => {
const inviteRows: InviteColumnInfo[] = useMemo(() => {
return initialInvites.map(invite => {
return {
id: invite.id!,
email: invite.email!,
createdAt: invite.createdAt!,
}
})
}, [initialInvites]);
return (
<div>
<DataTable
columns={inviteTableColumns()}
data={inviteRows}
searchKey="email"
searchPlaceholder="Search invites..."
/>
</div>
)
}