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>
This commit is contained in:
@@ -0,0 +1,19 @@
|
||||
// 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.");
|
||||
Reference in New Issue
Block a user