From cecc9ef576a8e1a4210f6934656d20e7b3acd2f0 Mon Sep 17 00:00:00 2001 From: Tom Moor Date: Sat, 30 May 2026 16:48:19 -0400 Subject: [PATCH] perf: Lazy import Mammoth dep (#12538) --- server/utils/DocumentConverter.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/server/utils/DocumentConverter.ts b/server/utils/DocumentConverter.ts index 3b4011078a..c58e9ca7a4 100644 --- a/server/utils/DocumentConverter.ts +++ b/server/utils/DocumentConverter.ts @@ -2,7 +2,6 @@ import { parse } from "@fast-csv/parse"; import { JSDOM } from "jsdom"; import { escapeRegExp } from "es-toolkit/compat"; import { simpleParser } from "mailparser"; -import mammoth from "mammoth"; import type { Node } from "prosemirror-model"; import { DOMParser as ProsemirrorDOMParser } from "prosemirror-model"; import yaml from "js-yaml"; @@ -259,6 +258,8 @@ export class DocumentConverter { */ private static async docxToHtml(content: Buffer | string): Promise { if (content instanceof Buffer) { + // Loaded lazily to keep mammoth off the startup path — only docx imports need it. + const mammoth = (await import("mammoth")).default; const { value } = await traceFunction({ spanName: "convertToHtml" })( mammoth.convertToHtml )({