refactor: merge onDeck and ongoingBooks into single "continue reading" carousel
Some checks failed
Build, Push & Deploy / deploy (push) Has been cancelled
Some checks failed
Build, Push & Deploy / deploy (push) Has been cancelled
Uses /books/ongoing as single source for Stripstream, displayed with featured header style. Removes separate "up next" section. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -199,13 +199,14 @@ export class StripstreamProvider implements IMediaProvider {
|
||||
async getHomeData(): Promise<HomeData> {
|
||||
const homeOpts = { revalidate: CACHE_TTL_MED, tags: [HOME_CACHE_TAG] };
|
||||
const [ongoingBooksResult, ongoingSeriesResult, booksPage, libraries] = await Promise.allSettled([
|
||||
this.client.fetch<StripstreamBookItem[]>("books/ongoing", { limit: "10" }, homeOpts),
|
||||
this.client.fetch<StripstreamBookItem[]>("books/ongoing", { limit: "20" }, homeOpts),
|
||||
this.client.fetch<StripstreamSeriesItem[]>("series/ongoing", { limit: "10" }, homeOpts),
|
||||
this.client.fetch<StripstreamBooksPage>("books", { limit: "10" }, homeOpts),
|
||||
this.client.fetch<StripstreamLibraryResponse[]>("libraries", undefined, { revalidate: CACHE_TTL_LONG, tags: [HOME_CACHE_TAG] }),
|
||||
]);
|
||||
|
||||
const onDeck = ongoingBooksResult.status === "fulfilled"
|
||||
// /books/ongoing returns both currently reading and next unread per series
|
||||
const ongoingBooks = ongoingBooksResult.status === "fulfilled"
|
||||
? ongoingBooksResult.value.map(StripstreamAdapter.toNormalizedBook)
|
||||
: [];
|
||||
|
||||
@@ -213,10 +214,6 @@ export class StripstreamProvider implements IMediaProvider {
|
||||
? ongoingSeriesResult.value.map(StripstreamAdapter.toNormalizedSeries)
|
||||
: [];
|
||||
|
||||
const ongoingBooks = booksPage.status === "fulfilled"
|
||||
? booksPage.value.items.filter((b) => b.reading_status === "reading").map(StripstreamAdapter.toNormalizedBook)
|
||||
: [];
|
||||
|
||||
const recentlyRead = booksPage.status === "fulfilled"
|
||||
? booksPage.value.items.map(StripstreamAdapter.toNormalizedBook)
|
||||
: [];
|
||||
@@ -241,9 +238,9 @@ export class StripstreamProvider implements IMediaProvider {
|
||||
|
||||
return {
|
||||
ongoing: ongoingSeries,
|
||||
ongoingBooks,
|
||||
ongoingBooks: [],
|
||||
recentlyRead,
|
||||
onDeck,
|
||||
onDeck: ongoingBooks,
|
||||
latestSeries,
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user