diff --git a/packages/lib/server-only/envelope-item/create-envelope-items.ts b/packages/lib/server-only/envelope-item/create-envelope-items.ts index b4e5dda38..c1cc9c429 100644 --- a/packages/lib/server-only/envelope-item/create-envelope-items.ts +++ b/packages/lib/server-only/envelope-item/create-envelope-items.ts @@ -57,7 +57,10 @@ export const UNSAFE_createEnvelopeItems = async ({ flattenForm: envelope.type !== 'TEMPLATE', }); - const { cleanedPdf, placeholders } = await extractPdfPlaceholders(normalized); + const { cleanedPdf, placeholders } = await extractPdfPlaceholders(normalized, { + envelopeId: envelope.id, + fileName: file.name, + }); const { documentData } = await putPdfFileServerSide({ name: file.name, diff --git a/packages/lib/server-only/envelope-item/replace-envelope-item-pdf.ts b/packages/lib/server-only/envelope-item/replace-envelope-item-pdf.ts index fb305e311..0af19138a 100644 --- a/packages/lib/server-only/envelope-item/replace-envelope-item-pdf.ts +++ b/packages/lib/server-only/envelope-item/replace-envelope-item-pdf.ts @@ -85,7 +85,10 @@ export const UNSAFE_replaceEnvelopeItemPdf = async ({ flattenForm: envelope.type !== 'TEMPLATE', }); - const { cleanedPdf, placeholders } = await extractPdfPlaceholders(normalized); + const { cleanedPdf, placeholders } = await extractPdfPlaceholders(normalized, { + envelopeId: envelope.id, + fileName: data.file.name, + }); // Upload the new PDF and get a new DocumentData record. const { documentData: newDocumentData, filePageCount } = await putPdfFileServerSide({ diff --git a/packages/lib/server-only/pdf/auto-place-fields.ts b/packages/lib/server-only/pdf/auto-place-fields.ts index 5095e5f07..d2c807af4 100644 --- a/packages/lib/server-only/pdf/auto-place-fields.ts +++ b/packages/lib/server-only/pdf/auto-place-fields.ts @@ -68,7 +68,15 @@ export type FieldToCreate = TFieldAndMeta & { height: number; }; -export const extractPlaceholdersFromPDF = async (pdf: Buffer): Promise => { +type ExtractPlaceholdersLogContext = { + envelopeId?: string; + fileName?: string; +}; + +export const extractPlaceholdersFromPDF = async ( + pdf: Buffer, + logContext?: ExtractPlaceholdersLogContext, +): Promise => { const pdfDoc = await PDF.load(new Uint8Array(pdf)); const placeholders: PlaceholderInfo[] = []; @@ -149,6 +157,8 @@ export const extractPlaceholdersFromPDF = async (pdf: Buffer): Promise => { - const placeholders = await extractPlaceholdersFromPDF(pdf); + const placeholders = await extractPlaceholdersFromPDF(pdf, logContext); if (placeholders.length === 0) { return { cleanedPdf: pdf, placeholders: [] }; diff --git a/packages/trpc/server/envelope-router/create-envelope.ts b/packages/trpc/server/envelope-router/create-envelope.ts index c721ad31e..eb92dab9f 100644 --- a/packages/trpc/server/envelope-router/create-envelope.ts +++ b/packages/trpc/server/envelope-router/create-envelope.ts @@ -124,7 +124,9 @@ export const createEnvelopeRouteCaller = async ({ }); // Todo: Embeds - Might need to add this for client-side embeds in the future. - const { cleanedPdf, placeholders } = await extractPdfPlaceholders(normalized); + const { cleanedPdf, placeholders } = await extractPdfPlaceholders(normalized, { + fileName: file.name, + }); const { documentData } = await putPdfFileServerSide({ name: file.name,