feat: infinite scroll for folder view

Replace page buttons with IntersectionObserver sentinel — scrolling near
the bottom automatically fetches and appends the next page of results.
Shows a loading indicator while fetching and a total count footer when
all emails are loaded.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
cesnimda
2026-06-30 20:05:17 +02:00
parent 20d51b2c15
commit 4b1d1b1b6e
2 changed files with 73 additions and 45 deletions
+3 -3
View File
@@ -225,9 +225,9 @@ input, select { background: var(--panel-2); border: 1px solid #2c3550; color: va
.el-size { font-size: 11px; color: var(--muted); }
.el-date { width: 70px; padding: 10px 0 10px 8px; text-align: right; color: var(--muted); white-space: nowrap; font-size: 12px; }
.fv-pagination { display: flex; align-items: center; gap: 14px; margin-top: 16px; font-size: 13px; color: var(--muted); }
.fv-pagination button { background: var(--panel); border: 1px solid #2c3550; color: var(--text); padding: 6px 12px; }
.fv-pagination button:disabled { opacity: 0.35; cursor: default; }
.fv-sentinel { height: 1px; }
.fv-loading-more { color: var(--muted); font-size: 13px; padding: 16px 0; text-align: center; }
.fv-end { color: var(--muted); font-size: 12px; padding: 20px 0 8px; text-align: center; }
/* ── Sync splash ── */
.splash {