fix: refactor how non-s3 pdfs are loaded

This commit is contained in:
David Nguyen
2026-02-24 18:47:50 +11:00
parent ab3e8a4074
commit 5fa4c42098
15 changed files with 494 additions and 18 deletions
@@ -1,3 +1,4 @@
import { DocumentDataType } from '@prisma/client';
import { z } from 'zod';
import DocumentDataSchema from '@documenso/prisma/generated/zod/modelSchema/DocumentDataSchema';
@@ -76,6 +77,7 @@ export type TGetEnvelopeItemFileTokenDownloadRequestParams = z.infer<
export const ZGetEnvelopeItemMetaSchema = z.object({
envelopeItemId: z.string(),
documentDataId: z.string(),
documentDataType: z.nativeEnum(DocumentDataType),
pages: z
.object({
originalWidth: z.number(),
@@ -110,10 +110,12 @@ export const handleEnvelopeItemsMetaRequest = async ({
const pdfPageMetadata: TDocumentDataMeta['pages'] = await extractAndStorePdfImages(
new Uint8Array(pdfBytes).buffer,
item.documentData.id,
item.documentData.type,
);
pageMetadata = {
pages: pdfPageMetadata,
documentDataType: item.documentData.type,
};
}
@@ -122,6 +124,7 @@ export const handleEnvelopeItemsMetaRequest = async ({
return {
envelopeItemId: item.id,
documentDataId: item.documentData.id,
documentDataType: item.documentData.type,
pages: pages.map((page) => ({
originalWidth: page.originalWidth,
originalHeight: page.originalHeight,