diff --git a/apps/api/src/modules/templates/extract.ts b/apps/api/src/modules/templates/extract.ts index 0e9f616..f9092f3 100644 --- a/apps/api/src/modules/templates/extract.ts +++ b/apps/api/src/modules/templates/extract.ts @@ -4,12 +4,12 @@ import { tmpdir } from 'node:os'; import { join } from 'node:path'; import { promisify } from 'node:util'; import mammoth from 'mammoth'; -import * as pdfParseNs from 'pdf-parse'; +// pdf-parse имеет auto-test mode в index.js, ломающий ESM. Импортируем функцию напрямую из lib. +// @ts-expect-error пакет без declaration на этом пути +import pdfParseRaw from 'pdf-parse/lib/pdf-parse.js'; -// pdf-parse в ESM экспортирует default или сам namespace — нормализуем. const pdfParse: (buf: Buffer) => Promise<{ text: string; numpages: number }> = - // @ts-expect-error namespace shape varies between cjs/esm - (pdfParseNs.default ?? pdfParseNs) as never; + pdfParseRaw as unknown as (buf: Buffer) => Promise<{ text: string; numpages: number }>; const execFileP = promisify(execFile);