feat: updated signer logic

Signed-off-by: Adithya Krishna <aadithya794@gmail.com>
This commit is contained in:
Adithya Krishna
2024-04-30 12:05:42 +05:30
parent db9e605031
commit 6df525b670

View File

@ -110,6 +110,8 @@ export const AddSignersFormPartial = ({
const [showAdvancedSettings, setShowAdvancedSettings] = useState(alwaysShowAdvancedSettings); const [showAdvancedSettings, setShowAdvancedSettings] = useState(alwaysShowAdvancedSettings);
const { const {
setValue,
getValues,
formState: { errors, isSubmitting }, formState: { errors, isSubmitting },
control, control,
} = form; } = form;
@ -164,18 +166,29 @@ export const AddSignersFormPartial = ({
removeSigner(index); removeSigner(index);
}; };
const emptySignerIndex = signers.findIndex(
(signer) =>
!getValues(`signers.${signers.indexOf(signer)}.name`) ||
!getValues(`signers.${signers.indexOf(signer)}.email`),
);
const onAddSelfSigner = () => { const onAddSelfSigner = () => {
const lastSignerIndex = signers.length - 1; const lastSignerIndex = signers.length - 1;
if (!signers[lastSignerIndex].name || !signers[lastSignerIndex].email) { if (!signers[lastSignerIndex].name && !signers[lastSignerIndex].email) {
onRemoveSigner(lastSignerIndex); onRemoveSigner(lastSignerIndex);
} }
appendSigner({ if (emptySignerIndex !== -1) {
formId: nanoid(12), setValue(`signers.${emptySignerIndex}.name`, user?.name ?? '');
name: user?.name ?? '', setValue(`signers.${emptySignerIndex}.email`, user?.email ?? '');
email: user?.email ?? '', } else {
role: RecipientRole.SIGNER, appendSigner({
actionAuth: undefined, formId: nanoid(12),
}); name: user?.name ?? '',
email: user?.email ?? '',
role: RecipientRole.SIGNER,
actionAuth: undefined,
});
}
}; };
const onKeyDown = (event: React.KeyboardEvent<HTMLInputElement>) => { const onKeyDown = (event: React.KeyboardEvent<HTMLInputElement>) => {