diff options
| author | Fuwn <[email protected]> | 2026-05-29 23:44:08 +0000 |
|---|---|---|
| committer | Fuwn <[email protected]> | 2026-05-29 23:44:08 +0000 |
| commit | 49879c43ebd9f36ec19f4c02fa2b121314126286 (patch) | |
| tree | bbf1e42eba5996640ffcc7f44d07245cdf2c5e5c /src/lib/List | |
| parent | chore(biome): scope linting to remove Svelte false positives (diff) | |
| download | due.moe-49879c43ebd9f36ec19f4c02fa2b121314126286.tar.xz due.moe-49879c43ebd9f36ec19f4c02fa2b121314126286.zip | |
Auto-fixed cosmetic findings (import ordering, obj["k"]->obj.k, optional
chaining, template literals, Date.now, parseInt radix, useless ternaries/
switch cases). Resolved the non-autofixable rest by hand:
- Senpy: static-only class -> object literal (no this/static reliance).
- app.html: var global shim -> window.global = window (keeps the shim,
drops the unused-var flag).
- biome-ignore with rationale for the logout document.cookie clear and the
holodule scrape non-null assertion.
Verified: biome check 0 diagnostics, svelte-check 0/0, 24/24 unit tests.
Diffstat (limited to 'src/lib/List')
| -rw-r--r-- | src/lib/List/Anime/AnimeListTemplate.svelte | 18 | ||||
| -rw-r--r-- | src/lib/List/Anime/CleanAnimeList.svelte | 27 | ||||
| -rw-r--r-- | src/lib/List/Anime/CompletedAnimeList.svelte | 10 | ||||
| -rw-r--r-- | src/lib/List/Anime/DueAnimeList.svelte | 18 | ||||
| -rw-r--r-- | src/lib/List/Anime/DueIndexColumn.svelte | 6 | ||||
| -rw-r--r-- | src/lib/List/Anime/UpcomingAnimeList.svelte | 24 | ||||
| -rw-r--r-- | src/lib/List/CleanGrid.svelte | 2 | ||||
| -rw-r--r-- | src/lib/List/CleanList.svelte | 2 | ||||
| -rw-r--r-- | src/lib/List/ListTitle.svelte | 2 | ||||
| -rw-r--r-- | src/lib/List/Manga/MangaListTemplate.svelte | 4 | ||||
| -rw-r--r-- | src/lib/List/MediaRoulette.svelte | 4 | ||||
| -rw-r--r-- | src/lib/List/MediaTitleDisplay.svelte | 4 | ||||
| -rw-r--r-- | src/lib/List/mediaTitle.ts | 2 |
13 files changed, 61 insertions, 62 deletions
diff --git a/src/lib/List/Anime/AnimeListTemplate.svelte b/src/lib/List/Anime/AnimeListTemplate.svelte index 538889b4..ae7ee1f1 100644 --- a/src/lib/List/Anime/AnimeListTemplate.svelte +++ b/src/lib/List/Anime/AnimeListTemplate.svelte @@ -1,18 +1,18 @@ <script lang="ts"> +import localforage from "localforage"; +import { onMount } from "svelte"; +import { browser } from "$app/environment"; import type { AniListAuthorisation } from "$lib/Data/AniList/identity"; import type { Media } from "$lib/Data/AniList/media"; import RateLimitedError from "$lib/Error/RateLimited.svelte"; -import settings from "$stores/settings"; -import CleanAnimeList from "./CleanAnimeList.svelte"; -import ListTitle from "../ListTitle.svelte"; import type { SubsPlease } from "$lib/Media/Anime/Airing/Subtitled/subsPlease"; -import PlaceholderList from "./PlaceholderList.svelte"; -import { browser } from "$app/environment"; -import { onMount } from "svelte"; -import subsPlease from "$stores/subsPlease"; import identity from "$stores/identity"; -import localforage from "localforage"; +import settings from "$stores/settings"; +import subsPlease from "$stores/subsPlease"; +import ListTitle from "../ListTitle.svelte"; import type { Title } from "../mediaTitle"; +import CleanAnimeList from "./CleanAnimeList.svelte"; +import PlaceholderList from "./PlaceholderList.svelte"; export let endTime: number; export let cleanMedia: ( @@ -51,7 +51,7 @@ onMount(async () => { }AnimeListLength`, )) as string | null; - if (lastStoredList) lastListSize = parseInt(lastStoredList); + if (lastStoredList) lastListSize = parseInt(lastStoredList, 10); } }); </script> diff --git a/src/lib/List/Anime/CleanAnimeList.svelte b/src/lib/List/Anime/CleanAnimeList.svelte index c8bf1b7d..0bc88489 100644 --- a/src/lib/List/Anime/CleanAnimeList.svelte +++ b/src/lib/List/Anime/CleanAnimeList.svelte @@ -1,27 +1,26 @@ <script lang="ts"> -import Spacer from "$lib/Layout/Spacer.svelte"; -import locale from "$stores/locale"; - -import settings from "$stores/settings"; -import type { Media } from "$lib/Data/AniList/media"; -import { cleanCache, incrementMediaProgress } from "$lib/Media/Anime/cache"; -import { totalEpisodes } from "$lib/Media/Anime/episodes"; -import type { AniListAuthorisation } from "$lib/Data/AniList/identity"; -import ListTitle from "../ListTitle.svelte"; import { onDestroy, onMount } from "svelte"; +import { browser } from "$app/environment"; +import type { AniListAuthorisation } from "$lib/Data/AniList/identity"; +import type { Media } from "$lib/Data/AniList/media"; +import Spacer from "$lib/Layout/Spacer.svelte"; import AiringTime from "$lib/Media/Anime/Airing/AiringTime.svelte"; import { hasDueEpisodes } from "$lib/Media/Anime/Airing/classify"; -import { browser } from "$app/environment"; +import { cleanCache, incrementMediaProgress } from "$lib/Media/Anime/cache"; +import { totalEpisodes } from "$lib/Media/Anime/episodes"; import identity from "$stores/identity"; +import locale from "$stores/locale"; +import settings from "$stores/settings"; +import ListTitle from "../ListTitle.svelte"; import "../covers.css"; -import revalidateAnime from "$stores/revalidateAnime"; +import localforage from "localforage"; +import { track } from "$lib/analytics"; import CleanGrid from "$lib/List/CleanGrid.svelte"; -import CleanList from "../CleanList.svelte"; +import revalidateAnime from "$stores/revalidateAnime"; import stateBin from "$stores/stateBin"; -import localforage from "localforage"; +import CleanList from "../CleanList.svelte"; import MediaRoulette from "../MediaRoulette.svelte"; import type { Title } from "../mediaTitle"; -import { track } from "$lib/analytics"; export let media: Media[]; export let title: Title; diff --git a/src/lib/List/Anime/CompletedAnimeList.svelte b/src/lib/List/Anime/CompletedAnimeList.svelte index 9c58a311..ba5df51b 100644 --- a/src/lib/List/Anime/CompletedAnimeList.svelte +++ b/src/lib/List/Anime/CompletedAnimeList.svelte @@ -1,15 +1,15 @@ <script lang="ts"> -import { mediaListCollection, Type, type Media } from "$lib/Data/AniList/media"; +import { onMount } from "svelte"; import { hydrateMediaListCache } from "$lib/Data/AniList/cacheHydration"; import type { AniListAuthorisation } from "$lib/Data/AniList/identity"; -import { onMount } from "svelte"; +import { type Media, mediaListCollection, Type } from "$lib/Data/AniList/media"; +import { addNotification } from "$lib/Notification/store"; import anime from "$stores/anime"; +import identity from "$stores/identity"; import lastPruneTimes from "$stores/lastPruneTimes"; +import locale from "$stores/locale"; import settings from "$stores/settings"; import AnimeList from "./AnimeListTemplate.svelte"; -import { addNotification } from "$lib/Notification/store"; -import locale from "$stores/locale"; -import identity from "$stores/identity"; export let user: AniListAuthorisation = { accessToken: "", diff --git a/src/lib/List/Anime/DueAnimeList.svelte b/src/lib/List/Anime/DueAnimeList.svelte index 29af4a88..8ff0539d 100644 --- a/src/lib/List/Anime/DueAnimeList.svelte +++ b/src/lib/List/Anime/DueAnimeList.svelte @@ -1,22 +1,22 @@ <script lang="ts"> -import { mediaListCollection, Type, type Media } from "$lib/Data/AniList/media"; +import { onDestroy, onMount } from "svelte"; import { hydrateMediaListCache } from "$lib/Data/AniList/cacheHydration"; import type { AniListAuthorisation } from "$lib/Data/AniList/identity"; -import { onDestroy, onMount } from "svelte"; -import anime from "$stores/anime"; -import settings from "$stores/settings"; -import lastPruneTimes from "$stores/lastPruneTimes"; -import AnimeList from "./AnimeListTemplate.svelte"; -import type { SubsPlease } from "$lib/Media/Anime/Airing/Subtitled/subsPlease"; -import { injectAiringTime } from "$lib/Media/Anime/Airing/Subtitled/match"; +import { type Media, mediaListCollection, Type } from "$lib/Data/AniList/media"; import { hasDueEpisodes, hasNoAiredEpisodes, } from "$lib/Media/Anime/Airing/classify"; +import { injectAiringTime } from "$lib/Media/Anime/Airing/Subtitled/match"; +import type { SubsPlease } from "$lib/Media/Anime/Airing/Subtitled/subsPlease"; import { addNotification } from "$lib/Notification/store"; -import locale from "$stores/locale"; +import anime from "$stores/anime"; import identity from "$stores/identity"; +import lastPruneTimes from "$stores/lastPruneTimes"; +import locale from "$stores/locale"; import revalidateAnime from "$stores/revalidateAnime"; +import settings from "$stores/settings"; +import AnimeList from "./AnimeListTemplate.svelte"; export let user: AniListAuthorisation; let animeLists: Promise<Media[]>; diff --git a/src/lib/List/Anime/DueIndexColumn.svelte b/src/lib/List/Anime/DueIndexColumn.svelte index 3fadc8c2..a1bc3f50 100644 --- a/src/lib/List/Anime/DueIndexColumn.svelte +++ b/src/lib/List/Anime/DueIndexColumn.svelte @@ -1,11 +1,11 @@ <script lang="ts"> +import { onMount } from "svelte"; import type { AniListAuthorisation } from "$lib/Data/AniList/identity"; +import AnimeList from "$lib/List/Anime/DueAnimeList.svelte"; import Skeleton from "$lib/Loading/Skeleton.svelte"; import locale from "$stores/locale"; -import ListTitle from "../ListTitle.svelte"; -import AnimeList from "$lib/List/Anime/DueAnimeList.svelte"; -import { onMount } from "svelte"; import stateBin, { hydrateStateBin } from "$stores/stateBin"; +import ListTitle from "../ListTitle.svelte"; export let userIdentity: { id: number }; export let user: AniListAuthorisation; diff --git a/src/lib/List/Anime/UpcomingAnimeList.svelte b/src/lib/List/Anime/UpcomingAnimeList.svelte index ed47f22f..b88937e9 100644 --- a/src/lib/List/Anime/UpcomingAnimeList.svelte +++ b/src/lib/List/Anime/UpcomingAnimeList.svelte @@ -1,23 +1,23 @@ <script lang="ts"> -import Spacer from "$lib/Layout/Spacer.svelte"; -import { mediaListCollection, Type, type Media } from "$lib/Data/AniList/media"; +import { onMount } from "svelte"; import { hydrateMediaListCache } from "$lib/Data/AniList/cacheHydration"; import type { AniListAuthorisation } from "$lib/Data/AniList/identity"; -import { onMount } from "svelte"; -import anime from "$stores/anime"; -import lastPruneTimes from "$stores/lastPruneTimes"; -import AnimeList from "./AnimeListTemplate.svelte"; -import settings from "$stores/settings"; -import type { SubsPlease } from "$lib/Media/Anime/Airing/Subtitled/subsPlease"; -import { addNotification } from "$lib/Notification/store"; -import locale from "$stores/locale"; -import identity from "$stores/identity"; -import { injectAiringTime } from "$lib/Media/Anime/Airing/Subtitled/match"; +import { type Media, mediaListCollection, Type } from "$lib/Data/AniList/media"; +import Spacer from "$lib/Layout/Spacer.svelte"; import { hasDueEpisodes, hasNoAiredEpisodes, } from "$lib/Media/Anime/Airing/classify"; +import { injectAiringTime } from "$lib/Media/Anime/Airing/Subtitled/match"; +import type { SubsPlease } from "$lib/Media/Anime/Airing/Subtitled/subsPlease"; +import { addNotification } from "$lib/Notification/store"; +import anime from "$stores/anime"; +import identity from "$stores/identity"; +import lastPruneTimes from "$stores/lastPruneTimes"; +import locale from "$stores/locale"; import revalidateAnime from "$stores/revalidateAnime"; +import settings from "$stores/settings"; +import AnimeList from "./AnimeListTemplate.svelte"; export let user: AniListAuthorisation; let animeLists: Promise<Media[]>; diff --git a/src/lib/List/CleanGrid.svelte b/src/lib/List/CleanGrid.svelte index 384d4940..011a3e5d 100644 --- a/src/lib/List/CleanGrid.svelte +++ b/src/lib/List/CleanGrid.svelte @@ -16,7 +16,7 @@ export let notYetReleased = false; export let reverseSort = false; export let limit: number | undefined = undefined; -let uniqueID = new Date().getTime(); +let uniqueID = Date.now(); $: sortedMedia = reverseSort ? [...media].reverse() : media; $: processedMedia = diff --git a/src/lib/List/CleanList.svelte b/src/lib/List/CleanList.svelte index bb6c15f3..adc4ca19 100644 --- a/src/lib/List/CleanList.svelte +++ b/src/lib/List/CleanList.svelte @@ -1,6 +1,6 @@ <script lang="ts"> -import MediaTitleDisplay from "$lib/List/MediaTitleDisplay.svelte"; import type { Media } from "$lib/Data/AniList/media"; +import MediaTitleDisplay from "$lib/List/MediaTitleDisplay.svelte"; import { outboundLink } from "$lib/Media/links"; import LinkedTooltip from "$lib/Tooltip/LinkedTooltip.svelte"; import settings from "$stores/settings"; diff --git a/src/lib/List/ListTitle.svelte b/src/lib/List/ListTitle.svelte index e9603066..f24476fe 100644 --- a/src/lib/List/ListTitle.svelte +++ b/src/lib/List/ListTitle.svelte @@ -1,7 +1,7 @@ <script lang="ts"> +import NumberTicker from "$lib/Layout/NumberTicker.svelte"; import tooltip from "$lib/Tooltip/tooltip"; import settings from "$stores/settings"; -import NumberTicker from "$lib/Layout/NumberTicker.svelte"; import type { Title } from "./mediaTitle"; export let time: number | undefined = undefined; diff --git a/src/lib/List/Manga/MangaListTemplate.svelte b/src/lib/List/Manga/MangaListTemplate.svelte index 1bb53be1..d4e7dec9 100644 --- a/src/lib/List/Manga/MangaListTemplate.svelte +++ b/src/lib/List/Manga/MangaListTemplate.svelte @@ -1,6 +1,7 @@ <script lang="ts"> import localforage from "localforage"; import { onDestroy, onMount } from "svelte"; +import { get } from "svelte/store"; import { browser } from "$app/environment"; import { env } from "$env/dynamic/public"; import { hydrateMediaListCache } from "$lib/Data/AniList/cacheHydration"; @@ -18,7 +19,6 @@ import privilegedUser from "$lib/Utility/privilegedUser"; import identity from "$stores/identity"; import lastPruneTimes from "$stores/lastPruneTimes"; import locale from "$stores/locale"; -import { get } from "svelte/store"; import manga from "$stores/manga"; import revalidateManga from "$stores/revalidateManga"; import settings from "$stores/settings"; @@ -334,7 +334,7 @@ const updateMedia = async ( const foundEntry = media.find((m) => m.id === id); - if (foundEntry && foundEntry.mediaListEntry) + if (foundEntry?.mediaListEntry) foundEntry.mediaListEntry.progress = (progress || 0) + 1; mangaLists = mediaListCollection( diff --git a/src/lib/List/MediaRoulette.svelte b/src/lib/List/MediaRoulette.svelte index 64c585df..6fb11a8e 100644 --- a/src/lib/List/MediaRoulette.svelte +++ b/src/lib/List/MediaRoulette.svelte @@ -1,11 +1,11 @@ <script lang="ts"> +import { track } from "$lib/analytics"; import type { Media } from "$lib/Data/AniList/media"; import ParallaxImage from "$lib/Image/ParallaxImage.svelte"; import { outboundLink } from "$lib/Media/links"; -import settings from "$stores/settings"; import locale from "$stores/locale"; +import settings from "$stores/settings"; import { mediaTitle } from "./mediaTitle"; -import { track } from "$lib/analytics"; interface Props { media: Media[]; diff --git a/src/lib/List/MediaTitleDisplay.svelte b/src/lib/List/MediaTitleDisplay.svelte index e7c26fb0..83073b04 100644 --- a/src/lib/List/MediaTitleDisplay.svelte +++ b/src/lib/List/MediaTitleDisplay.svelte @@ -1,10 +1,10 @@ <script lang="ts"> +import LZString from "lz-string"; +import * as wanakana from "wanakana"; import type { MediaTitle } from "$lib/Data/AniList/media"; import LinkedTooltip from "$lib/Tooltip/LinkedTooltip.svelte"; import { abbreviate as abbreviated } from "$lib/Utility/string"; import settings from "$stores/settings"; -import LZString from "lz-string"; -import * as wanakana from "wanakana"; export let title: MediaTitle; export let abbreviate = false; diff --git a/src/lib/List/mediaTitle.ts b/src/lib/List/mediaTitle.ts index 0e1d65cf..1e469f41 100644 --- a/src/lib/List/mediaTitle.ts +++ b/src/lib/List/mediaTitle.ts @@ -1,6 +1,6 @@ +import { get } from "svelte/store"; import type { Media } from "$lib/Data/AniList/media"; import settings from "$stores/settings"; -import { get } from "svelte/store"; export interface Title { title: string; |