fix: replace z.string().email() with RFC 5322 compliant ZEmail/zEmail (#2655)

This commit is contained in:
Lucas Smith
2026-03-26 13:31:26 +11:00
committed by GitHub
parent 0434bdfacf
commit 814f6e62de
49 changed files with 172 additions and 95 deletions
@@ -6,6 +6,7 @@ import {
ZDocumentMetaLanguageSchema,
} from '@documenso/lib/types/document-meta';
import { ZRecipientEmailSchema } from '@documenso/lib/types/recipient';
import { zEmail } from '@documenso/lib/utils/zod';
import { DocumentDistributionMethod } from '@documenso/prisma/generated/types';
// Define the schema for configuration
@@ -19,7 +20,7 @@ export const ZConfigureEmbedFormSchema = z.object({
nativeId: z.number().optional(),
formId: z.string(),
name: z.string(),
email: z.string().email('Invalid email address'),
email: zEmail('Invalid email address'),
role: z.enum(['SIGNER', 'CC', 'APPROVER', 'VIEWER', 'ASSISTANT']),
signingOrder: z.number().optional(),
disabled: z.boolean().optional(),
@@ -29,6 +29,7 @@ import {
import { getDocumentDataUrlForPdfViewer } from '@documenso/lib/utils/envelope-download';
import { sortFieldsByPosition, validateFieldsInserted } from '@documenso/lib/utils/fields';
import { dynamicActivate } from '@documenso/lib/utils/i18n';
import { ZEmail } from '@documenso/lib/utils/zod';
import { isSignatureFieldType } from '@documenso/prisma/guards/is-signature-field';
import { trpc } from '@documenso/trpc/react';
import type {
@@ -210,7 +211,7 @@ export const EmbedDirectTemplateClientPage = ({
return;
}
const { success: isEmailValid } = z.string().email().safeParse(email);
const { success: isEmailValid } = ZEmail.safeParse(email);
if (!isEmailValid) {
setEmailError(_(msg`A valid email is required`));