summaryrefslogtreecommitdiff
path: root/lib/email-log/table/email-log-table-columns.tsx
diff options
context:
space:
mode:
Diffstat (limited to 'lib/email-log/table/email-log-table-columns.tsx')
-rw-r--r--lib/email-log/table/email-log-table-columns.tsx61
1 files changed, 61 insertions, 0 deletions
diff --git a/lib/email-log/table/email-log-table-columns.tsx b/lib/email-log/table/email-log-table-columns.tsx
new file mode 100644
index 00000000..68f2795f
--- /dev/null
+++ b/lib/email-log/table/email-log-table-columns.tsx
@@ -0,0 +1,61 @@
+"use client"
+
+import * as React from "react"
+import { type ColumnDef } from "@tanstack/react-table"
+import { type InferSelectModel } from "drizzle-orm"
+import { emailLogs } from "@/db/schema/emailLogs"
+
+export function getColumns<T extends InferSelectModel<typeof emailLogs>>(): ColumnDef<T>[] {
+ return [
+ {
+ id: "subject",
+ header: () => <div className="text-left">Subject</div>,
+ accessorKey: "subject",
+ cell: ({ row }) => (
+ <div className="whitespace-pre-wrap break-all">{String(row.original.subject ?? "")}</div>
+ ),
+ size: 360,
+ },
+ {
+ id: "from",
+ header: () => <div className="text-left">From</div>,
+ accessorKey: "from",
+ cell: ({ row }) => (
+ <div className="whitespace-pre-wrap break-all">{String(row.original.from ?? "")}</div>
+ ),
+ size: 220,
+ },
+ {
+ id: "to",
+ header: () => <div className="text-left">To</div>,
+ accessorKey: "to",
+ cell: ({ row }) => (
+ <div className="whitespace-pre-wrap break-all">{String(row.original.to ?? "")}</div>
+ ),
+ size: 220,
+ },
+ {
+ id: "cc",
+ header: () => <div className="text-left">CC</div>,
+ accessorKey: "cc",
+ cell: ({ row }) => (
+ <div className="whitespace-pre-wrap break-all">{String(row.original.cc ?? "")}</div>
+ ),
+ size: 220,
+ },
+ {
+ id: "createdAt",
+ header: () => <div className="text-left">Created At</div>,
+ accessorKey: "createdAt",
+ cell: ({ row }) => (
+ <div className="whitespace-nowrap">
+ {new Date(row.original.createdAt as unknown as string).toLocaleString()}
+ </div>
+ ),
+ size: 180,
+ },
+
+ ]
+}
+
+