MyBotBoxMyBotBox

@yarlisai/file-parsers

Erweiterungsbasiertes Dokument-Parsing — PDF, CSV, DOCX, XLSX, PPTX, HTML, JSON, YAML und mehr, mit lazy-geladenen optionalen Vendor-Adaptern.

Erweiterungsbasiertes Dokument-Parsing — PDF, CSV, DOCX, XLSX, PPTX, HTML, JSON, YAML, Markdown und Klartext, mit lazy-geladenen optionalen Vendor-Adaptern.

Installation

npm install @yarlisai/file-parsers

Vendor-Bibliotheken sind optionale Peer-Dependencies — installiere nur die Bibliotheken für die Formate, die du verarbeitest (pdf-parse, csv-parse, mammoth, officeparser, exceljs, cheerio, js-yaml). Jeder Adapter lädt seine Vendor-Bibliothek beim ersten Parsen des jeweiligen Formats; JSON, Markdown und Klartext benötigen überhaupt keinen Vendor.

Warum

@yarlisai/file-parsers folgt dem Port/Adapter-Vertrag: Konsumenten hängen von einem Port (dem FileParser-Interface) ab, und die createParserRegistry()-Factory leitet eine Dateiendung zur Laufzeit an den richtigen Adapter weiter. Ein neues Format hinzuzufügen erfordert lediglich eine neue Adapter-Datei und einen Registry-Eintrag.

Verwendung

import { isSupportedFileType, parseBuffer, parseFile } from '@yarlisai/file-parsers'

if (isSupportedFileType('pdf')) {
  const fromDisk = await parseFile('/tmp/report.pdf')
  const fromMemory = await parseBuffer(buffer, 'csv')
}

Die README des Pakets enthält einen vollständigen Schnellstart. mybotbox-platform selbst ist der Referenz-Konsument — apps/sat/lib/file-parsers/ ist ein schlankes Shim, das dieses Paket für die Datei-Parse-API-Route und den Wissensdatenbank-Dokumentenprozessor re-exportiert.

Siehe auch