feat: #65 systeme de themes — 15 themes x dark/light
CI / lint (push) Failing after 2s
CI / test (push) Has been skipped
CI / build (push) Has been skipped
CI / e2e (push) Has been skipped
CI / security (push) Failing after -8s

- themes.js: 15 palettes (Defaut ObsiGate, GitHub, Linear, Spotify, Notion,
  Discord, Dracula, One Dark, Tokyo Night, Nord, Night Owl, Anthracite,
  Cyberpunk, Navy Elegance, Tons Terreux)
- Chaque theme a un mode sombre ET clair
- UI: grille de themes dans Configuration → Themes
- Toggle Sombre/Clair par theme
- Persistance localStorage (obsigate-theme + obsigate-theme-mode)
- Preview visuel: barre de couleur + accent bouton
- initThemes() appele au startup dans sync.js
- Defaut ObsiGate conserve le theme actuel
This commit is contained in:
2026-06-15 23:20:35 -04:00
parent 671befe610
commit d1841a057d
5 changed files with 723 additions and 0 deletions
+2
View File
@@ -6,6 +6,7 @@ import { loadVaults, loadTags, refreshTagsForContext, refreshSidebarTreePreservi
import { loadRecentFiles } from './config.js';
import { openFile } from './viewer.js';
import { initOffline, syncFileIndexFromServer } from './offline.js';
import { initThemes } from './themes.js';
// ---------------------------------------------------------------------------
// SSE Client — IndexUpdateManager
@@ -552,6 +553,7 @@ export { initSyncStatus, initDashboardTabs };
export function init() {
registerServiceWorker();
initOffline();
initThemes();
// Sync file index after a short delay (let vaults load first)
setTimeout(() => syncFileIndexFromServer(), 3000);
initDashboardTabs();