From dedfb2a31725b8299515686a70b711fda04c134a Mon Sep 17 00:00:00 2001 From: Fuwn Date: Sun, 17 Dec 2023 06:53:58 -0800 Subject: fix(anime): position of subbed release --- src/lib/List/Anime/AnimeListTemplate.svelte | 28 ++++++++++++++++------------ src/lib/List/Anime/DueAnimeList.svelte | 11 +++++++++-- src/lib/List/Anime/UpcomingAnimeList.svelte | 8 +++++++- 3 files changed, 32 insertions(+), 15 deletions(-) (limited to 'src/lib/List/Anime') diff --git a/src/lib/List/Anime/AnimeListTemplate.svelte b/src/lib/List/Anime/AnimeListTemplate.svelte index d325895a..554897ba 100644 --- a/src/lib/List/Anime/AnimeListTemplate.svelte +++ b/src/lib/List/Anime/AnimeListTemplate.svelte @@ -7,11 +7,13 @@ import settings from '../../../stores/settings'; import CleanAnimeList from './CleanAnimeList.svelte'; import ListTitle from '../ListTitle.svelte'; + import type { SubsPlease } from '$lib/subsPlease'; export let endTime: number; export let cleanMedia: ( media: Media[], displayUnresolved: boolean, + subsPlease: SubsPlease | null, plannedOnly?: boolean ) => Media[]; export let animeLists: Promise; @@ -46,18 +48,20 @@ {/if} {:then media} - + {#await fetch(`/api/subsplease?tz=${Intl.DateTimeFormat().resolvedOptions().timeZone}`).then( (r) => r.json() ) then subsPlease} + + {/await} {:catch} diff --git a/src/lib/List/Anime/DueAnimeList.svelte b/src/lib/List/Anime/DueAnimeList.svelte index 270fc4ae..6bb3ea4f 100644 --- a/src/lib/List/Anime/DueAnimeList.svelte +++ b/src/lib/List/Anime/DueAnimeList.svelte @@ -6,6 +6,8 @@ import settings from '../../../stores/settings'; import lastPruneTimes from '../../../stores/lastPruneTimes'; import AnimeList from './AnimeListTemplate.svelte'; + import type { SubsPlease } from '$lib/subsPlease'; + import { injectAiringTime } from '$lib/Media/Anime/airing'; export let user: AniListAuthorisation; export let identity: UserIdentity; @@ -34,7 +36,11 @@ onDestroy(() => clearInterval(keyCacher)); - const cleanMedia = (anime: Media[], displayUnresolved: boolean) => { + const cleanMedia = ( + anime: Media[], + displayUnresolved: boolean, + subsPlease: SubsPlease | null + ) => { if (anime === undefined) return []; let dueAnime = anime @@ -58,7 +64,8 @@ media.nextAiringEpisode = { episode: -1 }; return media; - }); + }) + .map((media) => injectAiringTime(media, subsPlease)); if (!displayUnresolved) dueAnime = dueAnime.filter((media: Media) => media.nextAiringEpisode?.episode !== -1); diff --git a/src/lib/List/Anime/UpcomingAnimeList.svelte b/src/lib/List/Anime/UpcomingAnimeList.svelte index 3c180fd5..3f4bfd06 100644 --- a/src/lib/List/Anime/UpcomingAnimeList.svelte +++ b/src/lib/List/Anime/UpcomingAnimeList.svelte @@ -6,6 +6,7 @@ import lastPruneTimes from '../../../stores/lastPruneTimes'; import AnimeList from './AnimeListTemplate.svelte'; import settings from '../../../stores/settings'; + import type { SubsPlease } from '$lib/subsPlease'; export let user: AniListAuthorisation; export let identity: UserIdentity; @@ -19,7 +20,12 @@ animeLists = mediaListCollection(user, identity, Type.Anime, $anime, $lastPruneTimes.anime); }); - const cleanMedia = (anime: Media[], displayUnresolved: boolean, plannedOnly = true) => { + const cleanMedia = ( + anime: Media[], + displayUnresolved: boolean, + _subsPlease: SubsPlease | null, + plannedOnly = true + ) => { if (anime === undefined) return []; const filterAnime = (status: 'RELEASING' | 'NOT_YET_RELEASED') => -- cgit v1.2.3