npm.io
0.1.0 • Published 18h ago

@mostajs/file-export

Licence
AGPL-3.0-or-later
Version
0.1.0
Deps
0
Size
31 kB
Vulns
0
Weekly
0

@mostajs/file-export

Export de données structurées (titre + items {intitulé, lien, champs}) vers des fichiers, avec un dialecte par format (façon dialects @mostajs/orm) : html, csv, pdf, docx, ods (OpenOffice/Calc), xlsx (Excel).

Auteur : Dr Hamid MADANI drmdh@msn.com · Licence : AGPL-3.0-or-later

Principes

  • fs-free : le module produit des octets, il ne touche jamais au système de fichiers. La persistance est du ressort de @mostajs/storage (seul contrôleur des fichiers).
  • html/csv : zéro dépendance. pdf/docx/ods/xlsx : drivers npm optionnels, lazy (pdfkit, docx, xlsx).

Usage

import { exportDoc, availableFormats } from "@mostajs/file-export";

const doc = {
  title: "Appareils d'ophtalmologie",
  columns: ["catégorie", "fabricants"],
  items: [{ title: "OCT", url: "https://…", fields: { catégorie: "Imagerie", fabricants: "Zeiss, Heidelberg" } }],
};
const { bytes, mime, filename } = await exportDoc("html", doc);   // ou "csv" | "pdf" | "docx" | "ods" | "xlsx"
// → la persistance se fait via @mostajs/storage côté app (ex. saveUpload(new File([bytes], filename, { type: mime })))

await availableFormats(); // formats réellement disponibles ici (drivers présents)

Rendu haute-fidélité via LibreOffice (basé fichiers) → module serveur séparé @mostajs/file-exoffice (à venir).

Keywords