From b684b9574dbb335e02e5e254ea56a87e5f50d446 Mon Sep 17 00:00:00 2001 From: Catalin Pit <25515812+catalinpit@users.noreply.github.com> Date: Thu, 6 Feb 2025 15:17:06 +0200 Subject: [PATCH] chore: reverse some code changes --- packages/lib/server-only/field/set-fields-for-document.ts | 6 +++++- packages/trpc/server/field-router/router.ts | 3 ++- packages/trpc/server/field-router/schema.ts | 2 ++ packages/ui/primitives/document-flow/add-fields.tsx | 6 +++++- packages/ui/primitives/document-flow/add-fields.types.ts | 1 + 5 files changed, 15 insertions(+), 3 deletions(-) diff --git a/packages/lib/server-only/field/set-fields-for-document.ts b/packages/lib/server-only/field/set-fields-for-document.ts index 4cbf6027f..ecc0cbd4a 100644 --- a/packages/lib/server-only/field/set-fields-for-document.ts +++ b/packages/lib/server-only/field/set-fields-for-document.ts @@ -125,6 +125,8 @@ export const setFieldsForDocument = async ({ const persistedFields = await prisma.$transaction(async (tx) => { return await Promise.all( linkedFields.map(async (field) => { + const fieldSignerEmail = field.signerEmail.toLowerCase(); + const parsedFieldMeta = field.fieldMeta ? ZFieldMetaSchema.parse(field.fieldMeta) : undefined; @@ -239,6 +241,7 @@ export const setFieldsForDocument = async ({ }, recipient: { connect: { + documentId, id: field.recipientId, }, }, @@ -251,7 +254,7 @@ export const setFieldsForDocument = async ({ const baseAuditLog = { fieldId: upsertedField.secondaryId, - fieldRecipientEmail: upsertedField.recipient?.email ?? '', + fieldRecipientEmail: fieldSignerEmail, fieldRecipientId: upsertedField.recipientId, fieldType: upsertedField.type, }; @@ -339,6 +342,7 @@ export const setFieldsForDocument = async ({ type FieldData = { id?: number | null; type: FieldType; + signerEmail: string; recipientId: number; pageNumber: number; pageX: number; diff --git a/packages/trpc/server/field-router/router.ts b/packages/trpc/server/field-router/router.ts index eedd68613..3e55bcffa 100644 --- a/packages/trpc/server/field-router/router.ts +++ b/packages/trpc/server/field-router/router.ts @@ -232,8 +232,9 @@ export const fieldRouter = router({ teamId, fields: fields.map((field) => ({ id: field.nativeId, - signerEmail: field.signerEmail, + recipientId: field.recipientId, type: field.type, + signerEmail: field.signerEmail, pageNumber: field.pageNumber, pageX: field.pageX, pageY: field.pageY, diff --git a/packages/trpc/server/field-router/schema.ts b/packages/trpc/server/field-router/schema.ts index 76a6e8436..358e2b6ed 100644 --- a/packages/trpc/server/field-router/schema.ts +++ b/packages/trpc/server/field-router/schema.ts @@ -115,6 +115,7 @@ export const ZSetDocumentFieldsRequestSchema = z.object({ id: z.number().optional(), type: z.nativeEnum(FieldType), recipientId: z.number(), + signerEmail: z.string().min(1), pageNumber: ZFieldPageNumberSchema, pageX: ZFieldPageXSchema, pageY: ZFieldPageYSchema, @@ -137,6 +138,7 @@ export const ZSetFieldsForTemplateRequestSchema = z.object({ nativeId: z.number().optional(), type: z.nativeEnum(FieldType), signerEmail: z.string().min(1), + recipientId: z.number().min(1), pageNumber: z.number().min(1), pageX: z.number().min(0), pageY: z.number().min(0), diff --git a/packages/ui/primitives/document-flow/add-fields.tsx b/packages/ui/primitives/document-flow/add-fields.tsx index 71cc4afb4..987822c4d 100644 --- a/packages/ui/primitives/document-flow/add-fields.tsx +++ b/packages/ui/primitives/document-flow/add-fields.tsx @@ -93,6 +93,7 @@ export type FieldFormType = { pageWidth: number; pageHeight: number; recipientId: number; + signerEmail: string; fieldMeta?: FieldMeta; }; @@ -144,6 +145,7 @@ export const AddFieldsFormPartial = ({ pageWidth: Number(field.width), pageHeight: Number(field.height), recipientId: field.recipientId, + signerEmail: recipients.find((r) => r.id === field.recipientId)?.email || '', fieldMeta: field.fieldMeta ? ZFieldMetaSchema.parse(field.fieldMeta) : undefined, })), typedSignatureEnabled: typedSignatureEnabled ?? false, @@ -348,6 +350,7 @@ export const AddFieldsFormPartial = ({ pageWidth: fieldPageWidth, pageHeight: fieldPageHeight, recipientId: selectedSigner.id, + signerEmail: selectedSigner.email, fieldMeta: undefined, }; @@ -441,6 +444,7 @@ export const AddFieldsFormPartial = ({ ...structuredClone(lastActiveField), formId: nanoid(12), recipientId: selectedSigner?.id ?? lastActiveField.recipientId, + signerEmail: selectedSigner?.email ?? lastActiveField.signerEmail, pageX: lastActiveField.pageX + 3, pageY: lastActiveField.pageY + 3, }; @@ -448,7 +452,7 @@ export const AddFieldsFormPartial = ({ append(newField); } }, - [append, lastActiveField, selectedSigner?.id, toast], + [append, lastActiveField, selectedSigner?.id, selectedSigner?.email, toast], ); const onFieldPaste = useCallback( diff --git a/packages/ui/primitives/document-flow/add-fields.types.ts b/packages/ui/primitives/document-flow/add-fields.types.ts index e86dcd108..8657ca0ce 100644 --- a/packages/ui/primitives/document-flow/add-fields.types.ts +++ b/packages/ui/primitives/document-flow/add-fields.types.ts @@ -10,6 +10,7 @@ export const ZAddFieldsFormSchema = z.object({ nativeId: z.number().optional(), type: z.nativeEnum(FieldType), recipientId: z.number(), + signerEmail: z.string(), pageNumber: z.number().min(1), pageX: z.number().min(0), pageY: z.number().min(0),