Files
formbricks/apps/web/modules/auth/components/SignupOptions/actions.ts
T
2024-11-13 11:57:53 +00:00

22 lines
642 B
TypeScript

"use server";
import { actionClient } from "@/lib/utils/action-client";
import { z } from "zod";
import { createEmailToken } from "@formbricks/lib/jwt";
import { getUserByEmail } from "@formbricks/lib/user/service";
const ZCreateEmailTokenAction = z.object({
email: z.string().min(5).max(255).email({ message: "Invalid email" }),
});
export const createEmailTokenAction = actionClient
.schema(ZCreateEmailTokenAction)
.action(async ({ parsedInput }) => {
const user = await getUserByEmail(parsedInput.email);
if (!user) {
throw new Error("Invalid request");
}
return createEmailToken(parsedInput.email);
});