diff --git a/apps/web/package.json b/apps/web/package.json index fa54891..06bcc50 100644 --- a/apps/web/package.json +++ b/apps/web/package.json @@ -27,6 +27,7 @@ "@trpc/react-query": "next", "@trpc/server": "next", "@unsend/ui": "workspace:*", + "date-fns": "^3.6.0", "install": "^0.13.0", "lucide-react": "^0.359.0", "next": "^14.1.3", diff --git a/apps/web/prisma/schema.prisma b/apps/web/prisma/schema.prisma index 8f1fd3e..f19661d 100644 --- a/apps/web/prisma/schema.prisma +++ b/apps/web/prisma/schema.prisma @@ -101,17 +101,19 @@ enum DomainStatus { } model Domain { - id Int @id @default(autoincrement()) - name String @unique - teamId Int - status DomainStatus @default(PENDING) - region String @default("us-east-1") - publicKey String - dkimStatus String? - spfDetails String? - createdAt DateTime @default(now()) - updatedAt DateTime @updatedAt - team Team @relation(fields: [teamId], references: [id], onDelete: Cascade) + id Int @id @default(autoincrement()) + name String @unique + teamId Int + status DomainStatus @default(PENDING) + region String @default("us-east-1") + clickTracking Boolean @default(false) + openTracking Boolean @default(false) + publicKey String + dkimStatus String? + spfDetails String? + createdAt DateTime @default(now()) + updatedAt DateTime @updatedAt + team Team @relation(fields: [teamId], references: [id], onDelete: Cascade) } enum ApiPermission { diff --git a/apps/web/src/app/(dashboard)/domains/domain-list.tsx b/apps/web/src/app/(dashboard)/domains/domain-list.tsx index a13b8ed..24884f8 100644 --- a/apps/web/src/app/(dashboard)/domains/domain-list.tsx +++ b/apps/web/src/app/(dashboard)/domains/domain-list.tsx @@ -1,6 +1,9 @@ "use client"; +import { DomainStatus } from "@prisma/client"; +import { formatDistanceToNow } from "date-fns"; import Link from "next/link"; +import { Switch } from "@unsend/ui/src/switch"; import { api } from "~/trpc/react"; export default function DomainsList() { @@ -8,15 +11,54 @@ export default function DomainsList() { return (
{domain.name}
-{domain.status.toLowerCase()}
++ Created at +
++ {formatDistanceToNow(new Date(domain.createdAt), { + addSuffix: true, + })} +
+Region
+ ++ 🇺🇸 {domain.region} +
+Click tracking
+Open tracking
+{email.to}
-- {email.latestStatus?.toLowerCase()} -
-{email.subject}
-{email.createdAt.toLocaleDateString()}
-