diff --git a/src/routes/web.ts b/src/routes/web.ts index af23457..ff515f6 100644 --- a/src/routes/web.ts +++ b/src/routes/web.ts @@ -167,6 +167,13 @@ const STYLE = ` .lead { display:flex; gap:12px; align-items:flex-start; min-width:0; } .svc-icon { width:34px; height:34px; border-radius:8px; flex:0 0 auto; object-fit:cover; box-shadow:0 1px 2px rgba(0,0,0,0.12); background:#fff; } + .sync-book { padding:14px 0; border-top:1px solid var(--stone-200); } + .sync-book:first-child { border-top:0; padding-top:0; } + .sync-book:last-child { padding-bottom:0; } + .sync-book .title { font-weight:600; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; } + .sync-book .meta { color:var(--stone-500); font-size:12px; margin-top:3px; } + .progress-track { height:6px; border-radius:999px; background:var(--stone-100); overflow:hidden; margin-top:10px; } + .progress-fill { height:100%; border-radius:inherit; background:var(--brand-500); } `; function shell(title: string, body: string, wide = false): string { @@ -337,6 +344,10 @@ const ACCOUNT = shell(
Loading…
One-time setup: turn on Send Document Metadata in your reader.
@@ -379,6 +390,9 @@ async function copyWithFeedback(btn, text) { renderKosync(); })(); + + + // Reader-setup panel shown once a sync account exists. The password is the one // the user chose (we never store or display plaintext), so we only echo server // + username and remind them to use their chosen password. @@ -631,6 +645,41 @@ async function startDeviceFlow() { ` ); +const PROGRESS = shell( + 'Reading progress', + ` +All synced books with their latest progress.
Loading…