From d20ae93b40467b3fdc6a7e2bdef2001975e93054 Mon Sep 17 00:00:00 2001 From: bruno Date: Wed, 28 Oct 2026 15:59:08 -0400 Subject: [PATCH] recherche: appliquer le theme ObsiGate (defaut 4) --- frontend/recherche.html | 66 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) diff --git a/frontend/recherche.html b/frontend/recherche.html index 23d5b3a..9a6944b 100644 --- a/frontend/recherche.html +++ b/frontend/recherche.html @@ -25,6 +25,46 @@ comportements de la SPA et ne sont pas rejoués ici. Sidebar statique (navigation de l'app) : les vaults, tags et récents dynamiques vivent dans la SPA, pas sur cette page. --> + Thème (défaut 4) : le thème ObsiGate n'est PAS une préférence + serveur — il vit dans localStorage, lu par la SPA au démarrage + (frontend/js/ui.js initTheme : mode ; frontend/js/sync.js + init() -> themes.js initThemes : clé + mode). Étape 1 ci-dessous + (script synchrone en tête, avant les feuilles) : pose + data-theme = mode persisté (obsigate-theme-mode, repli + obsigate-theme historique quand il valait déjà un mode, sinon + 'dark', le défaut SPA) pour que la première peinture soit déjà + dans le bon mode clair/sombre. Étape 2 en fin de page (module + différé) : initThemes() de themes.js applique la palette + complète — 16 thèmes intégrés, modes high-contrast/sepia + générés, thèmes personnalisés — via variables inline sur :root, + exactement comme la SPA. data-theme="dark" sur n'est + plus que le repli sans JS. Aucun endpoint serveur, aucune + police externe ajoutée (la CSP stricte de /recherche et le + repli typographique système sont inchangés). + @@ -149,5 +189,31 @@ + +