diff --git a/packages/lib/jobs/definitions/internal/seal-document.ts b/packages/lib/jobs/definitions/internal/seal-document.ts index 84dddad9c..7586fc40b 100644 --- a/packages/lib/jobs/definitions/internal/seal-document.ts +++ b/packages/lib/jobs/definitions/internal/seal-document.ts @@ -128,7 +128,7 @@ export const SEAL_DOCUMENT_JOB_DEFINITION = { const pdfData = await getFile(documentData); const certificateData = - document.team?.teamGlobalSettings?.includeSigningCertificate ?? true + (document.team?.teamGlobalSettings?.includeSigningCertificate ?? true) ? await getCertificatePdf({ documentId, language: document.documentMeta?.language, @@ -167,10 +167,10 @@ export const SEAL_DOCUMENT_JOB_DEFINITION = { const pdfBytes = await pdfDoc.save(); const pdfBuffer = await signPdf({ pdf: Buffer.from(pdfBytes) }); - const { name, ext } = path.parse(document.title); + const { name } = path.parse(document.title); const documentData = await putPdfFile({ - name: `${name}_signed${ext}`, + name: `${name}_signed.pdf`, type: 'application/pdf', arrayBuffer: async () => Promise.resolve(pdfBuffer), }); diff --git a/packages/lib/server-only/document/seal-document.ts b/packages/lib/server-only/document/seal-document.ts index 9dc701ddc..5338a3862 100644 --- a/packages/lib/server-only/document/seal-document.ts +++ b/packages/lib/server-only/document/seal-document.ts @@ -101,7 +101,7 @@ export const sealDocument = async ({ const pdfData = await getFile(documentData); const certificateData = - document.team?.teamGlobalSettings?.includeSigningCertificate ?? true + (document.team?.teamGlobalSettings?.includeSigningCertificate ?? true) ? await getCertificatePdf({ documentId, language: document.documentMeta?.language, @@ -136,10 +136,10 @@ export const sealDocument = async ({ const pdfBuffer = await signPdf({ pdf: Buffer.from(pdfBytes) }); - const { name, ext } = path.parse(document.title); + const { name } = path.parse(document.title); const { data: newData } = await putPdfFile({ - name: `${name}_signed${ext}`, + name: `${name}_signed.pdf`, type: 'application/pdf', arrayBuffer: async () => Promise.resolve(pdfBuffer), }); diff --git a/packages/lib/server-only/document/send-document.tsx b/packages/lib/server-only/document/send-document.tsx index 7266963b7..8b6ec9ccb 100644 --- a/packages/lib/server-only/document/send-document.tsx +++ b/packages/lib/server-only/document/send-document.tsx @@ -114,8 +114,14 @@ export const sendDocument = async ({ formValues: document.formValues as Record, }); + let fileName = document.title; + + if (!document.title.endsWith('.pdf')) { + fileName = `${document.title}.pdf`; + } + const newDocumentData = await putPdfFile({ - name: document.title, + name: fileName, type: 'application/pdf', arrayBuffer: async () => Promise.resolve(prefilled), }); diff --git a/packages/lib/universal/upload/put-file.ts b/packages/lib/universal/upload/put-file.ts index 06ecd68ff..2b2132e0d 100644 --- a/packages/lib/universal/upload/put-file.ts +++ b/packages/lib/universal/upload/put-file.ts @@ -33,6 +33,10 @@ export const putPdfFile = async (file: File) => { }); } + if (!file.name.endsWith('.pdf')) { + file.name = `${file.name}.pdf`; + } + const { type, data } = await putFile(file); return await createDocumentData({ type, data });