Files
cesizen-individuel/frontend/scripts/copy-dsfr.mjs
T
Azmog 85c744defa feat(frontend): socle de refonte au Système de Design de l'État (DSFR)
- charge le DSFR (CSS/JS officiels) en statique via public/dsfr + postinstall
- en-tête officiel (bloc Marianne « République Française » + nom de service)
- pied de page officiel DSFR (liens institutionnels, licence etalab)
- page d'accueil refondue (hero, fr-card, fr-tile, fr-callout, fr-btn)
- composant Button mappé sur fr-btn
- assets DSFR hors git (régénérés par `npm install`)

Build OK (19 routes). Pages internes encore en Tailwind : conversion à poursuivre.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-18 23:09:47 +02:00

20 lines
816 B
JavaScript

// Copie les assets du Système de Design de l'État (DSFR) vers public/dsfr,
// pour les servir en statique (CSS, JS, polices Marianne, icônes).
// Lancé automatiquement après `npm install` (script postinstall).
import { cpSync, rmSync, existsSync } from "node:fs";
import { fileURLToPath } from "node:url";
import { dirname, join } from "node:path";
const root = join(dirname(fileURLToPath(import.meta.url)), "..");
const src = join(root, "node_modules", "@codegouvfr", "react-dsfr", "dsfr");
const dest = join(root, "public", "dsfr");
if (!existsSync(src)) {
console.warn("[copy-dsfr] Source DSFR introuvable, étape ignorée.");
process.exit(0);
}
rmSync(dest, { recursive: true, force: true });
cpSync(src, dest, { recursive: true });
console.log("[copy-dsfr] Assets DSFR copiés vers public/dsfr.");