@ragrabbit/mcp

by madarco
Verified
import { authOrLogin } from "@repo/auth"; import { Card, CardContent, CardDescription, CardHeader, CardTitle } from "@repo/design/shadcn/card"; import { Metadata } from "next"; import ProfileForm, { ProfileFormValues } from "./components/profile-form"; import { User, usersTable } from "@repo/db/schema"; import db from "@repo/db"; import { eq } from "@repo/db/drizzle"; export const metadata: Metadata = { title: "Profile", description: "This is how others will see you on the site.", }; async function ProfilePage() { const session = await authOrLogin(); // NB: don't send the whole user object to the client: const user: User = await db.query.usersTable.findFirst({ where: eq(usersTable.email, session?.user.email), }); const defaultValues: ProfileFormValues = { email: user.email, name: user.name || "", }; return ( <div className="grid gap-6"> <Card x-chunk="dashboard-04-chunk-1"> <CardHeader> <CardTitle>{metadata.title as string}</CardTitle> <CardDescription>{metadata.description}</CardDescription> </CardHeader> <CardContent> <ProfileForm defaultValues={defaultValues} /> </CardContent> </Card> </div> ); } export default ProfilePage;