cal.pub0.org/packages/trpc/server/routers/viewer/auth/resendVerifyEmail.handler.ts

31 lines
729 B
TypeScript

import { sendEmailVerification } from "@calcom/features/auth/lib/verifyEmail";
import logger from "@calcom/lib/logger";
import type { TrpcSessionUser } from "../../../trpc";
type ResendEmailOptions = {
ctx: {
user: NonNullable<TrpcSessionUser>;
};
};
const log = logger.getChildLogger({ prefix: [`[[Auth] `] });
export const resendVerifyEmail = async ({ ctx }: ResendEmailOptions) => {
if (ctx.user.emailVerified) {
log.info(`User ${ctx.user.id} already verified email`);
return {
ok: true,
skipped: true,
};
}
const email = await sendEmailVerification({
email: ctx.user.email,
username: ctx.user?.username ?? undefined,
language: ctx.user.locale,
});
return email;
};