aboutsummaryrefslogtreecommitdiff
path: root/src/lib/List/Anime/CleanAnimeList.svelte
diff options
context:
space:
mode:
authorFuwn <[email protected]>2026-05-24 13:22:34 +0000
committerFuwn <[email protected]>2026-05-24 13:22:34 +0000
commit56a7a7851b09cb30a5cd543c8cb4f926109b4290 (patch)
treea620f908405fa48fd601580c5a48432831ec5c33 /src/lib/List/Anime/CleanAnimeList.svelte
parentfix(layout): preserve list panel when clicking action buttons in summary (diff)
downloaddue.moe-56a7a7851b09cb30a5cd543c8cb4f926109b4290.tar.xz
due.moe-56a7a7851b09cb30a5cd543c8cb4f926109b4290.zip
refactor(locale): move hardcoded UI strings into english locale
Adds optional namespaces (common, errors, commandPalette, headTitle, notifications, schedule, events, home, reader, routes, badgePreview, badgeWall) and extends existing ones (settings.*, lists.*, tools.*, user.*, hololive.*) on the Locale interface. New fields are optional so japanese.ts can omit them; svelte-i18n's fallbackLocale handles the runtime miss. HeadTitle gains an optional routeKey prop for type-safe lookup. defaultActions becomes a factory so the command palette re-reads locale on language toggle. The existing JP feedback translation in routes/settings is preserved via japanese.ts. Out of scope (kept hardcoded): service-worker.ts, app.html, Landing*.svelte, tools.ts registry, Easter Event 2025 pages.
Diffstat (limited to 'src/lib/List/Anime/CleanAnimeList.svelte')
-rw-r--r--src/lib/List/Anime/CleanAnimeList.svelte10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/lib/List/Anime/CleanAnimeList.svelte b/src/lib/List/Anime/CleanAnimeList.svelte
index 42f4d933..5cb6cb1e 100644
--- a/src/lib/List/Anime/CleanAnimeList.svelte
+++ b/src/lib/List/Anime/CleanAnimeList.svelte
@@ -1,5 +1,6 @@
<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";
@@ -250,7 +251,7 @@ const increment = (anime: Media, progress: number) => {
<button
class="small-button"
onclick={() => (showRoulette = true)}
- title="Pick a random anime to watch"
+ title={$locale().lists.actions?.pickRandomAnime}
>
Roulette
</button>
@@ -258,12 +259,13 @@ const increment = (anime: Media, progress: number) => {
</ListTitle>
{#if media.length === 0}
- No anime to display. <button onclick={() => (animeLists = cleanCache(user, $identity))}>
- Force refresh
+ {$locale().lists.empty?.anime}
+ <button onclick={() => (animeLists = cleanCache(user, $identity))}>
+ {$locale().lists.actions?.forceRefresh}
</button>
{:else if $settings.displayMediaListFilter && !disableFilter && hasDistinguishingList}
<select value={selectedList} onchange={updateSelectedList}>
- <option value="All">All</option>
+ <option value="All">{$locale().lists.actions?.all}</option>
{#each lists as list}
<option value={list}>{list}</option>