summaryrefslogtreecommitdiff
path: root/lib/email-log/table/email-log-table-columns.tsx
diff options
context:
space:
mode:
author0-Zz-ang <s1998319@gmail.com>2025-09-26 16:45:59 +0900
committer0-Zz-ang <s1998319@gmail.com>2025-09-26 16:45:59 +0900
commite9f707b10b81d9759243473dd03fa463573d0772 (patch)
tree3fa08deea9a5909acd32a9a1277345de3296cc97 /lib/email-log/table/email-log-table-columns.tsx
parentf8fc02e175f93466cd7693eb6e549c45362e785b (diff)
(박서영)이메일발신인조회페이지 생성
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,
+ },
+
+ ]
+}
+
+