From 6b9696e7158cea66f3ded4f4984e3055ff3a7148 Mon Sep 17 00:00:00 2001 From: Shree Krishna Lamichhane <47468714+shreekrishnalamichhane@users.noreply.github.com> Date: Sat, 25 Jan 2025 18:45:12 +0545 Subject: [PATCH] feat: contact gravatar (#89) (#90) --- apps/web/next.config.js | 8 +++ .../contacts/[contactBookId]/contact-list.tsx | 38 ++++++++---- apps/web/src/utils/gravatar-utils.ts | 62 +++++++++++++++++++ 3 files changed, 97 insertions(+), 11 deletions(-) create mode 100644 apps/web/src/utils/gravatar-utils.ts diff --git a/apps/web/next.config.js b/apps/web/next.config.js index 5e6f420..2df5c00 100644 --- a/apps/web/next.config.js +++ b/apps/web/next.config.js @@ -12,6 +12,14 @@ const config = { esmExternals: "loose", serverComponentsExternalPackages: ["bullmq"], }, + images: { + remotePatterns: [ + { + protocol: "https", + hostname: "www.gravatar.com", + }, + ], + }, }; export default config; diff --git a/apps/web/src/app/(dashboard)/contacts/[contactBookId]/contact-list.tsx b/apps/web/src/app/(dashboard)/contacts/[contactBookId]/contact-list.tsx index ca9fd7c..44f8c62 100644 --- a/apps/web/src/app/(dashboard)/contacts/[contactBookId]/contact-list.tsx +++ b/apps/web/src/app/(dashboard)/contacts/[contactBookId]/contact-list.tsx @@ -1,15 +1,5 @@ "use client"; -import { - Table, - TableHeader, - TableRow, - TableHead, - TableBody, - TableCell, -} from "@unsend/ui/src/table"; -import { api } from "~/trpc/react"; -import { useUrlState } from "~/hooks/useUrlState"; import { Button } from "@unsend/ui/src/button"; import { Select, @@ -18,7 +8,19 @@ import { SelectTrigger, } from "@unsend/ui/src/select"; import Spinner from "@unsend/ui/src/spinner"; +import { + Table, + TableBody, + TableCell, + TableHead, + TableHeader, + TableRow, +} from "@unsend/ui/src/table"; import { formatDistanceToNow } from "date-fns"; +import Image from "next/image"; +import { useUrlState } from "~/hooks/useUrlState"; +import { api } from "~/trpc/react"; +import { getGravatarUrl } from "~/utils/gravatar-utils"; import DeleteContact from "./delete-contact"; import EditContact from "./edit-contact"; @@ -89,7 +91,21 @@ export default function ContactList({ ) : contactsQuery.data?.contacts.length ? ( contactsQuery.data?.contacts.map((contact) => ( - {contact.email} + +
+ {contact.email + {contact.email} +
+