From 22f90971f98c3d9419702a6fc27ae46777515f1a Mon Sep 17 00:00:00 2001 From: Kevin Cantrell Date: Wed, 19 Nov 2025 10:17:53 +0000 Subject: [PATCH 1/2] testing a node export --- src/routes/api/devices/[devEui]/pdf/+server.ts | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/routes/api/devices/[devEui]/pdf/+server.ts b/src/routes/api/devices/[devEui]/pdf/+server.ts index bf9adfd5..a308f147 100644 --- a/src/routes/api/devices/[devEui]/pdf/+server.ts +++ b/src/routes/api/devices/[devEui]/pdf/+server.ts @@ -1,3 +1,5 @@ +export const runtime = 'node'; + import { ErrorHandlingService } from '$lib/errors/ErrorHandlingService'; import { i18n } from '$lib/i18n/index.svelte'; import type { DeviceDataRecord } from '$lib/models/DeviceDataRecord'; @@ -509,14 +511,11 @@ export const GET: RequestHandler = async ({ params, url, locals: { supabase } }) ].join(' | '); addFooterPageNumber(doc, footerText); - // Finalize - doc.end(); - const chunks: Buffer[] = []; // eslint-disable-next-line @typescript-eslint/no-explicit-any doc.on('data', (chunk: any) => chunks.push(Buffer.from(chunk))); - return new Promise((resolve, reject) => { + const pdfResponsePromise = new Promise((resolve, reject) => { doc.on('end', () => { const pdfBuffer = Buffer.concat(chunks); resolve( @@ -548,6 +547,11 @@ export const GET: RequestHandler = async ({ params, url, locals: { supabase } }) ); }); }); + + // Finalize once listeners are registered + doc.end(); + + return pdfResponsePromise; } catch (err) { console.error(`Error generating PDF for device ${params.devEui}:`, err); return json( From 700f0b7ff13343070f185d6755060d1e8ec4a7fa Mon Sep 17 00:00:00 2001 From: Kevin Cantrell Date: Wed, 19 Nov 2025 10:21:22 +0000 Subject: [PATCH 2/2] updating export --- src/routes/api/devices/[devEui]/pdf/+server.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/routes/api/devices/[devEui]/pdf/+server.ts b/src/routes/api/devices/[devEui]/pdf/+server.ts index a308f147..3d46939a 100644 --- a/src/routes/api/devices/[devEui]/pdf/+server.ts +++ b/src/routes/api/devices/[devEui]/pdf/+server.ts @@ -1,4 +1,4 @@ -export const runtime = 'node'; +export const config = { runtime: 'nodejs20.x' }; import { ErrorHandlingService } from '$lib/errors/ErrorHandlingService'; import { i18n } from '$lib/i18n/index.svelte';