feat: implement per-user read status tracking

- add user_book_status table (userId, bookId, status, source, timestamps)
- add UserBookStatusModule with repository and service
- auto-update status on progress save (fire-and-forget, skips manual overrides)
- expose PATCH /api/v1/books/:id/status endpoint
- include readStatus on BookCard and BookDetail responses
- surface status icon overlay on cover cards (toggleable)
- add status dropdown in book detail page inline with rating stars
- rewrite statistics summary to query user_book_status directly
This commit is contained in:
neon
2026-03-20 05:07:16 -06:00
parent 7d3a88e23d
commit 2df7e093c5
27 changed files with 565 additions and 42 deletions
+1 -5
View File
@@ -218,11 +218,7 @@
inset: 0;
z-index: -1;
pointer-events: none;
background: linear-gradient(
to bottom,
transparent 50%,
color-mix(in oklch, var(--primary) 5%, transparent) 50%
);
background: linear-gradient(to bottom, transparent 50%, color-mix(in oklch, var(--primary) 5%, transparent) 50%);
background-size: 100% 4px;
}