Skip to content

Omnibus v1.1.0-beta.063

Choose a tag to compare

@github-actions github-actions released this 27 Jun 14:20
· 7 commits to main since this release

v1.1.0-beta.063 - feat: library-wide "All Issues" view (cursor-paginated, infinite scroll)

πŸ“… New /library/issues page β€” every issue across the library by release date

  • A new view listing INDIVIDUAL issues library-wide, ordered by release date (newest/oldest), filterable by era, publisher, library (comics/manga), download status, and a title search. Reached via an "All Issues" button on the library page. Reuses the library page's IntersectionObserver infinite scroll, debounced search, and reset-on-filter patterns. Only issues with a known release date are shown.

πŸš€ GET /api/library/issues β€” cursor (keyset) pagination, no offset / no COUNT

  • The Issue table can be huge, so the endpoint avoids offset paging (O(offset) per page on SQLite) and a per-page COUNT(*): it orders by [releaseDate, id], over-fetches one row to derive hasMore, and pages forward by the last row's id β€” O(limit) at any scroll depth. Series-level filters (publisher / era / library + the per-library access gate) traverse the series relation; the payload is trimmed to grid fields with the server-side cover transform; the publisher list is returned only on the first page.

πŸ—ƒοΈ Schema: @@index([seriesId, releaseDate]) on Issue

  • Supports per-series releaseDate scans when the view is filtered by a Series field. Applies via db push on next container start.

βœ… Verification

  • tsc clean; eslint . 0 errors; vitest 282 passed; next build clean (/library/issues 6.8 kB)