diff --git a/apps/remix/app/components/dialogs/assistant-confirmation-dialog.tsx b/apps/remix/app/components/dialogs/assistant-confirmation-dialog.tsx index f148633e9..b6c38e4d0 100644 --- a/apps/remix/app/components/dialogs/assistant-confirmation-dialog.tsx +++ b/apps/remix/app/components/dialogs/assistant-confirmation-dialog.tsx @@ -5,6 +5,7 @@ import { Trans, useLingui } from '@lingui/react/macro'; import { useForm } from 'react-hook-form'; import { z } from 'zod'; +import { zEmail } from '@documenso/lib/utils/zod'; import { Button } from '@documenso/ui/primitives/button'; import { Dialog, @@ -43,7 +44,7 @@ type ConfirmationDialogProps = { const ZNextSignerFormSchema = z.object({ name: z.string().min(1, 'Name is required'), - email: z.string().email('Invalid email address'), + email: zEmail('Invalid email address'), }); type TNextSignerFormSchema = z.infer; diff --git a/apps/remix/app/components/dialogs/envelope-distribute-dialog.tsx b/apps/remix/app/components/dialogs/envelope-distribute-dialog.tsx index 93e59ec67..c72634134 100644 --- a/apps/remix/app/components/dialogs/envelope-distribute-dialog.tsx +++ b/apps/remix/app/components/dialogs/envelope-distribute-dialog.tsx @@ -16,6 +16,7 @@ import { useCurrentOrganisation } from '@documenso/lib/client-only/providers/org import { DO_NOT_INVALIDATE_QUERY_ON_MUTATION } from '@documenso/lib/constants/trpc'; import { extractDocumentAuthMethods } from '@documenso/lib/utils/document-auth'; import { getRecipientsWithMissingFields } from '@documenso/lib/utils/recipients'; +import { ZEmail } from '@documenso/lib/utils/zod'; import { trpc, trpc as trpcReact } from '@documenso/trpc/react'; import { DocumentSendEmailMessageHelper } from '@documenso/ui/components/document/document-send-email-message-helper'; import { cn } from '@documenso/ui/lib/utils'; @@ -62,10 +63,7 @@ export type EnvelopeDistributeDialogProps = { export const ZEnvelopeDistributeFormSchema = z.object({ meta: z.object({ emailId: z.string().nullable(), - emailReplyTo: z.preprocess( - (val) => (val === '' ? undefined : val), - z.string().email().optional(), - ), + emailReplyTo: z.preprocess((val) => (val === '' ? undefined : val), ZEmail.optional()), subject: z.string(), message: z.string(), distributionMethod: z diff --git a/apps/remix/app/components/dialogs/organisation-member-invite-dialog.tsx b/apps/remix/app/components/dialogs/organisation-member-invite-dialog.tsx index acc52ca08..5126c5c72 100644 --- a/apps/remix/app/components/dialogs/organisation-member-invite-dialog.tsx +++ b/apps/remix/app/components/dialogs/organisation-member-invite-dialog.tsx @@ -17,6 +17,7 @@ import { IS_BILLING_ENABLED, SUPPORT_EMAIL } from '@documenso/lib/constants/app' import { ORGANISATION_MEMBER_ROLE_HIERARCHY } from '@documenso/lib/constants/organisations'; import { ORGANISATION_MEMBER_ROLE_MAP } from '@documenso/lib/constants/organisations-translations'; import { INTERNAL_CLAIM_ID } from '@documenso/lib/types/subscription'; +import { ZEmail } from '@documenso/lib/utils/zod'; import { trpc } from '@documenso/trpc/react'; import { ZCreateOrganisationMemberInvitesRequestSchema } from '@documenso/trpc/server/organisation-router/create-organisation-member-invites.types'; import { cn } from '@documenso/ui/lib/utils'; @@ -94,7 +95,7 @@ type TabTypes = 'INDIVIDUAL' | 'BULK'; const ZImportOrganisationMemberSchema = z.array( z.object({ - email: z.string().email(), + email: ZEmail, organisationRole: z.nativeEnum(OrganisationMemberRole), }), ); @@ -329,12 +330,12 @@ export const OrganisationMemberInviteDialog = ({ onValueChange={(value) => setInvitationType(value as TabTypes)} > - + Invite Members - + Bulk Import @@ -382,7 +383,7 @@ export const OrganisationMemberInviteDialog = ({ )}