sourcebot/packages/web/src/app/[domain]/settings/components/inviteTable.tsx

37 lines
956 B
TypeScript
Raw Normal View History

'use client';
2025-02-10 22:55:40 +00:00
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(() => {
2025-02-10 22:55:40 +00:00
return initialInvites.map(invite => {
return {
id: invite.id!,
email: invite.email!,
createdAt: invite.createdAt!,
}
})
2025-02-10 22:55:40 +00:00
}, [initialInvites]);
return (
<div>
<DataTable
columns={inviteTableColumns()}
data={inviteRows}
searchKey="email"
searchPlaceholder="Search invites..."
/>
</div>
)
}