feat: add "Derniers fichiers ouverts" widget to main dashboard

- Replace welcome message with a professional dashboard widget displaying the last opened files.
- Implement configurable file limit via existing settings.
- Design includes responsive grid layout and various UI states (loading, empty, error).
- Introduce new JavaScript module `DashboardRecentWidget` for handling file loading and rendering.
- Ensure accessibility compliance and responsive design breakpoints.
This commit is contained in:
2026-03-27 11:25:08 -04:00
parent 0bbd793e97
commit 4afa0ab5f9
4 changed files with 2093 additions and 1130 deletions
+1128 -901
View File
File diff suppressed because it is too large Load Diff
+27 -4
View File
@@ -350,10 +350,33 @@
<!-- Content -->
<main class="content-area" id="content-area" aria-label="Contenu principal">
<div class="welcome" id="welcome" role="status">
<i data-lucide="library" style="width:48px;height:48px;color:var(--text-muted)"></i>
<h2>ObsiGate</h2>
<p>Sélectionnez un fichier dans la sidebar ou utilisez la recherche pour commencer.</p>
<div id="dashboard-home" class="dashboard-home" role="region" aria-label="Derniers fichiers ouverts">
<div class="dashboard-header">
<div class="dashboard-title-row">
<i data-lucide="clock" class="dashboard-icon"></i>
<h2>Derniers fichiers ouverts</h2>
</div>
<div class="dashboard-filter-row">
<select id="dashboard-vault-filter" class="dashboard-select">
<option value="">Tous les vaults</option>
</select>
<span class="dashboard-count" id="dashboard-count"></span>
</div>
</div>
<div id="dashboard-recent-grid" class="dashboard-recent-grid"></div>
<div id="dashboard-loading" class="dashboard-loading">
<div class="skeleton-card"></div>
<div class="skeleton-card"></div>
<div class="skeleton-card"></div>
<div class="skeleton-card"></div>
<div class="skeleton-card"></div>
<div class="skeleton-card"></div>
</div>
<div id="dashboard-recent-empty" class="dashboard-recent-empty hidden">
<i data-lucide="inbox"></i>
<span>Aucun fichier récent</span>
<p>Ouvrez un fichier pour le voir apparaître ici</p>
</div>
</div>
</main>
+777 -225
View File
File diff suppressed because it is too large Load Diff