From 689345a9a1364155a831f192c6cbdb7f35ed8ef4 Mon Sep 17 00:00:00 2001 From: Fuwn Date: Tue, 24 Dec 2024 11:19:40 -0800 Subject: feat(wrapped): exclude unrated & unwatched toggle --- src/lib/Tools/Wrapped/Tool.svelte | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) (limited to 'src/lib/Tools') diff --git a/src/lib/Tools/Wrapped/Tool.svelte b/src/lib/Tools/Wrapped/Tool.svelte index 1484ab5c..a68de8b9 100644 --- a/src/lib/Tools/Wrapped/Tool.svelte +++ b/src/lib/Tools/Wrapped/Tool.svelte @@ -69,6 +69,7 @@ let includeOVAs = true; let activityHistoryPosition: 'TOP' | 'BELOW_TOP' | 'ORIGINAL' = 'ORIGINAL'; let includeOngoingMediaFromPreviousYears = false; + let exlcludeUnratedUnwatched = true; $: { if (browser && mounted) { @@ -94,6 +95,7 @@ $page.url.searchParams.set('mediaSort', mediaSort.toString()); $page.url.searchParams.set('includeMovies', includeMovies.toString()); $page.url.searchParams.set('includeOVAs', includeOVAs.toString()); + $page.url.searchParams.set('excludeUnratedUnwatched', exlcludeUnratedUnwatched.toString()); history.replaceState(null, '', `?${$page.url.searchParams.toString()}`); } @@ -112,6 +114,7 @@ includeOVAs = includeOVAs; selectedYear = selectedYear; includeOngoingMediaFromPreviousYears = includeOngoingMediaFromPreviousYears; + exlcludeUnratedUnwatched = exlcludeUnratedUnwatched; update().then(updateWidth).catch(updateWidth); } @@ -305,7 +308,9 @@ : false)) && (includeMovies ? true : item.format !== 'MOVIE') && (includeSpecials ? true : item.format !== 'SPECIAL') && - (includeOVAs ? true : item.format !== 'OVA') + (includeOVAs ? true : item.format !== 'OVA') && + (exlcludeUnratedUnwatched ? item.mediaListEntry?.score !== 0 : true) && + (exlcludeUnratedUnwatched ? item.mediaListEntry?.progress !== 0 : true) ) .sort((a, b) => { switch (mediaSort) { @@ -394,7 +399,9 @@ ? new Date(item.mediaListEntry?.createdAt * 1000).getFullYear() === selectedYear : false) && item.mediaListEntry ? item.mediaListEntry?.progress >= 1 - : false)) + : false)) && + (exlcludeUnratedUnwatched ? item.mediaListEntry?.score !== 0 : true) && + (exlcludeUnratedUnwatched ? item.mediaListEntry?.progress !== 0 : true) ) .sort((a, b) => { if (a.mediaListEntry?.score === undefined) return 1; @@ -729,6 +736,8 @@ Include specials
Include OVAs
Include movies
+ Excluded unrated & + unwatched