Files
pangolin/src/app/auth/verify-email/page.tsx
2025-01-04 20:22:01 -05:00

39 lines
976 B
TypeScript

import VerifyEmailForm from "@app/app/auth/verify-email/VerifyEmailForm";
import { verifySession } from "@app/lib/auth/verifySession";
import { pullEnv } from "@app/lib/pullEnv";
import { redirect } from "next/navigation";
import { cache } from "react";
export const dynamic = "force-dynamic";
export default async function Page(props: {
searchParams: Promise<{ [key: string]: string | string[] | undefined }>;
}) {
const env = pullEnv();
if (!env.flags.emailVerificationRequired) {
redirect("/");
}
const searchParams = await props.searchParams;
const getUser = cache(verifySession);
const user = await getUser({ skipCheckVerifyEmail: true });
if (!user) {
redirect("/");
}
if (user.emailVerified) {
redirect("/");
}
return (
<>
<VerifyEmailForm
email={user.email}
redirect={searchParams.redirect as string}
/>
</>
);
}