From ff9dd7da2e15b30cba474f8865d391a21da370aa Mon Sep 17 00:00:00 2001 From: Fuwn Date: Sun, 22 Mar 2026 04:11:30 +0000 Subject: perf: fetch dummy media outside the app bundle --- src/lib/List/Anime/CompletedAnimeList.svelte | 12 ++++++++++-- src/lib/List/Manga/MangaListTemplate.svelte | 17 +++++++++++------ 2 files changed, 21 insertions(+), 8 deletions(-) (limited to 'src/lib') diff --git a/src/lib/List/Anime/CompletedAnimeList.svelte b/src/lib/List/Anime/CompletedAnimeList.svelte index 6a393dff..6bfdfdd1 100644 --- a/src/lib/List/Anime/CompletedAnimeList.svelte +++ b/src/lib/List/Anime/CompletedAnimeList.svelte @@ -9,7 +9,6 @@ import AnimeList from "./AnimeListTemplate.svelte"; import { addNotification } from "$lib/Notification/store"; import locale from "$stores/locale"; import identity from "$stores/identity"; -import sampleAnime from "$lib/Data/Static/SampleMedia/anime.json"; export let user: AniListAuthorisation = { accessToken: "", @@ -29,6 +28,10 @@ onMount(async () => { startTime = performance.now(); if (dummy) { + const sampleAnime = (await ( + await fetch("/sample-media/anime.json") + ).json()) as Media[]; + // Use deterministic selection for consistent display const filtered = sampleAnime.filter( (anime) => @@ -44,14 +47,19 @@ onMount(async () => { ); animeLists = Promise.resolve( filtered.slice(0, dummyCount).map((anime, index) => { + const mediaListEntry = + anime.mediaListEntry || + ({ progress: 0 } as NonNullable); + anime.status = "FINISHED"; anime.nextAiringEpisode = { airingAt: Math.floor(Date.now() / 1000) + (index + 1) * 24 * 60 * 60, episode: Math.floor((anime.episodes || 12) * 0.8), }; - anime.mediaListEntry.progress = Math.floor( + mediaListEntry.progress = Math.floor( (anime.nextAiringEpisode.episode || 5) * 0.6, ); + anime.mediaListEntry = mediaListEntry; return anime; }) as unknown as Media[], ); diff --git a/src/lib/List/Manga/MangaListTemplate.svelte b/src/lib/List/Manga/MangaListTemplate.svelte index c9f66dd4..eb7ffd83 100644 --- a/src/lib/List/Manga/MangaListTemplate.svelte +++ b/src/lib/List/Manga/MangaListTemplate.svelte @@ -1,5 +1,4 @@