From 90d8fad0aebebd9844abde04800e08c6280ca476 Mon Sep 17 00:00:00 2001 From: leehuwuj Date: Fri, 27 Sep 2024 15:15:33 +0700 Subject: [PATCH] enhance error handling --- .../agent/tools/document_generator.ts | 28 ++++++++++--------- 1 file changed, 15 insertions(+), 13 deletions(-) diff --git a/templates/components/engines/typescript/agent/tools/document_generator.ts b/templates/components/engines/typescript/agent/tools/document_generator.ts index 0c0e9ef2..4c2dc4fb 100644 --- a/templates/components/engines/typescript/agent/tools/document_generator.ts +++ b/templates/components/engines/typescript/agent/tools/document_generator.ts @@ -165,15 +165,11 @@ export class DocumentGenerator implements BaseTool { } private static writeToFile(content: string | Buffer, filePath: string): void { - try { - fs.mkdirSync(path.dirname(filePath), { recursive: true }); - if (typeof content === "string") { - fs.writeFileSync(filePath, content, "utf8"); - } else { - fs.writeFileSync(filePath, content); - } - } catch (error) { - throw error; + fs.mkdirSync(path.dirname(filePath), { recursive: true }); + if (typeof content === "string") { + fs.writeFileSync(filePath, content, "utf8"); + } else { + fs.writeFileSync(filePath, content); } } @@ -187,10 +183,16 @@ export class DocumentGenerator implements BaseTool { private static async generatePdf(htmlContent: string): Promise { const browser = await puppeteer.launch(); const page = await browser.newPage(); - await page.setContent(htmlContent, { waitUntil: "networkidle0" }); - const pdf = await page.pdf({ format: "A4" }); - await browser.close(); - return pdf; + try { + await page.setContent(htmlContent, { waitUntil: "networkidle0" }); + const pdf = await page.pdf({ format: "A4" }); + return pdf; + } catch (error) { + console.error("Error generating PDF:", error); + throw new Error("Failed to generate PDF"); + } finally { + await browser.close(); + } } async call(input: DocumentParameter): Promise {