Files
formbricks/apps/web/modules/auth/verification-requested/actions.ts
Piyush Gupta 9905199055 fix: email smtp auth mode (#4571)
Co-authored-by: pandeymangg <anshuman.pandey9999@gmail.com>
2025-01-10 09:30:28 +00:00

25 lines
872 B
TypeScript

"use server";
import { actionClient } from "@/lib/utils/action-client";
import { getUserByEmail } from "@/modules/auth/lib/user";
import { sendVerificationEmail } from "@/modules/email";
import { z } from "zod";
import { InvalidInputError, ResourceNotFoundError } from "@formbricks/types/errors";
const ZResendVerificationEmailAction = z.object({
email: z.string().max(255).email({ message: "Invalid email" }),
});
export const resendVerificationEmailAction = actionClient
.schema(ZResendVerificationEmailAction)
.action(async ({ parsedInput }) => {
const user = await getUserByEmail(parsedInput.email);
if (!user) {
throw new ResourceNotFoundError("user", parsedInput.email);
}
if (user.emailVerified) {
throw new InvalidInputError("Email address has already been verified");
}
return await sendVerificationEmail(user);
});