diff --git a/apps/web/src/app/(signing)/sign/[token]/form.tsx b/apps/web/src/app/(signing)/sign/[token]/form.tsx index 4f20a8199..f5c94e6ec 100644 --- a/apps/web/src/app/(signing)/sign/[token]/form.tsx +++ b/apps/web/src/app/(signing)/sign/[token]/form.tsx @@ -49,6 +49,11 @@ export const SigningForm = ({ document, recipient, fields }: SigningFormProps) = return sortFieldsByPosition(fields.filter((field) => !field.inserted)); }, [fields]); + const fieldsValidated = () => { + setValidateUninsertedFields(true); + validateFieldsInserted(fields); + }; + const onFormSubmit = async () => { setValidateUninsertedFields(true); @@ -154,6 +159,7 @@ export const SigningForm = ({ document, recipient, fields }: SigningFormProps) = onSignatureComplete={handleSubmit(onFormSubmit)} document={document} fields={fields} + fieldsValidated={fieldsValidated} /> diff --git a/apps/web/src/app/(signing)/sign/[token]/sign-dialog.tsx b/apps/web/src/app/(signing)/sign/[token]/sign-dialog.tsx index faecf5d7e..e4d4571fc 100644 --- a/apps/web/src/app/(signing)/sign/[token]/sign-dialog.tsx +++ b/apps/web/src/app/(signing)/sign/[token]/sign-dialog.tsx @@ -15,6 +15,7 @@ export type SignDialogProps = { isSubmitting: boolean; document: Document; fields: Field[]; + fieldsValidated: () => void | Promise; onSignatureComplete: () => void | Promise; }; @@ -22,6 +23,7 @@ export const SignDialog = ({ isSubmitting, document, fields, + fieldsValidated, onSignatureComplete, }: SignDialogProps) => { const [showDialog, setShowDialog] = useState(false); @@ -29,16 +31,16 @@ export const SignDialog = ({ const isComplete = fields.every((field) => field.inserted); return ( - +