diff options
Diffstat (limited to 'src/lib/List')
| -rw-r--r-- | src/lib/List/Anime/CleanAnimeList.svelte | 10 | ||||
| -rw-r--r-- | src/lib/List/Manga/CleanMangaList.svelte | 36 | ||||
| -rw-r--r-- | src/lib/List/Manga/MangaListTemplate.svelte | 7 | ||||
| -rw-r--r-- | src/lib/List/MediaRoulette.svelte | 34 |
4 files changed, 53 insertions, 34 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> diff --git a/src/lib/List/Manga/CleanMangaList.svelte b/src/lib/List/Manga/CleanMangaList.svelte index a52a9d7e..25e6d48f 100644 --- a/src/lib/List/Manga/CleanMangaList.svelte +++ b/src/lib/List/Manga/CleanMangaList.svelte @@ -145,7 +145,7 @@ const increment = (manga: Media) => { {#if !dummy} <button class="small-button" - title="Force a full refresh" + title={$locale().lists.actions?.forceFullRefresh} onclick={cleanCache} data-umami-event="Force Refresh Manga">Refresh</button > @@ -153,7 +153,7 @@ const increment = (manga: Media) => { <button class="small-button" onclick={() => (showRoulette = true)} - title="Pick a random manga to read" + title={$locale().lists.actions?.pickRandomManga} > Roulette </button> @@ -168,11 +168,13 @@ const increment = (manga: Media) => { {:then status} {#if status} {#if status.status === 503} - <a href="https://due.moe">due.moe</a>'s manga data source is currently down for maintenance. - Please check back later. + {$locale().lists.errors?.mangaDataDown?.split("due.moe's")[0]}<a href="https://due.moe" + >due.moe</a + >{$locale().lists.errors?.mangaDataDown?.split("due.moe")[1]} {:else if status.status !== 200} - <a href="https://due.moe">due.moe</a>'s manga data source is currently unavailable. Please - check back later. + {$locale().lists.errors?.mangaDataUnavailable?.split("due.moe's")[0]}<a + href="https://due.moe">due.moe</a + >{$locale().lists.errors?.mangaDataUnavailable?.split("due.moe")[1]} {:else} <RateLimitedError /> {/if} @@ -180,8 +182,9 @@ const increment = (manga: Media) => { <Skeleton card={false} count={1} height="0.9rem" list /> {/if} {:catch} - <a href="https://due.moe">due.moe</a>'s manga data source is currently unreachable. Please check - back later. + {$locale().lists.errors?.mangaDataUnreachable?.split("due.moe's")[0]}<a href="https://due.moe" + >due.moe</a + >{$locale().lists.errors?.mangaDataUnreachable?.split("due.moe")[1]} {/await} {/if} @@ -191,21 +194,24 @@ const increment = (manga: Media) => { {/if} <p> - No manga to display. <button onclick={cleanCache} data-umami-event="Force Refresh No Manga" - >Force refresh</button + {$locale().lists.empty?.manga} + <button onclick={cleanCache} data-umami-event="Force Refresh No Manga" + >{$locale().lists.actions?.forceRefresh}</button > </p> <span> - Don't read manga? <button - onclick={() => ($settings.disableManga = true)} - data-umami-event="Disable No Manga">Hide the manga panel</button + {$locale().lists.dontReadMangaPrefix} + <button onclick={() => ($settings.disableManga = true)} data-umami-event="Disable No Manga" + >{$locale().lists.hideMangaPanel}</button > - You can re-enable it later in the <a href={root('/settings')}>Settings</a>. + {$locale().lists.reenableInSettings?.split('Settings')[0]}<a href={root('/settings')} + >{$locale().navigation.settings}</a + >. </span> {: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> diff --git a/src/lib/List/Manga/MangaListTemplate.svelte b/src/lib/List/Manga/MangaListTemplate.svelte index df894910..1bb53be1 100644 --- a/src/lib/List/Manga/MangaListTemplate.svelte +++ b/src/lib/List/Manga/MangaListTemplate.svelte @@ -18,6 +18,7 @@ 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"; @@ -211,8 +212,10 @@ const cleanMedia = async ( if (refreshing) { addNotification( options({ - heading: "Manga", - description: "Re-freshing manga data ...", + heading: get(locale)().notifications?.mangaHeading ?? "Manga", + description: + get(locale)().notifications?.mangaRefreshing ?? + "Re-freshing manga data ...", }), ); } diff --git a/src/lib/List/MediaRoulette.svelte b/src/lib/List/MediaRoulette.svelte index 3fbc89d6..dc9a2269 100644 --- a/src/lib/List/MediaRoulette.svelte +++ b/src/lib/List/MediaRoulette.svelte @@ -3,6 +3,7 @@ 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 { mediaTitle } from "./mediaTitle"; interface Props { @@ -96,14 +97,16 @@ const handleOverlayClick = (e: MouseEvent) => { }} > <div class="roulette-container card {isClosing ? 'fade-out' : 'fade-in'}"> - <button class="close-button" onclick={handleClose} aria-label="Close roulette">×</button> + <button class="close-button" onclick={handleClose} aria-label={$locale().lists.roulette?.closeAriaLabel} + >×</button + > <h3 class="roulette-title"> - {type === 'anime' ? 'Watch' : 'Read'} Roulette + {type === 'anime' ? $locale().lists.roulette?.watchTitle : $locale().lists.roulette?.readTitle} </h3> {#if media.length === 0} - <p>No media available for roulette.</p> + <p>{$locale().lists.roulette?.noMedia}</p> {:else} <div class="roulette-display" class:spinning={isSpinning} class:result={showResult}> {#if currentMedia} @@ -129,13 +132,18 @@ const handleOverlayClick = (e: MouseEvent) => { target="_blank" class="view-link" > - View on {$settings.displayOutboundLinksTo === 'anilist' - ? 'AniList' - : $settings.displayOutboundLinksTo === 'livechartme' - ? 'LiveChart.me' - : $settings.displayOutboundLinksTo === 'animeschedule' - ? 'AnimeSchedule' - : 'MyAnimeList'} + {$locale({ + values: { + site: + $settings.displayOutboundLinksTo === 'anilist' + ? 'AniList' + : $settings.displayOutboundLinksTo === 'livechartme' + ? 'LiveChart.me' + : $settings.displayOutboundLinksTo === 'animeschedule' + ? 'AnimeSchedule' + : 'MyAnimeList' + } + }).lists.roulette?.viewOn} </a> {/if} </div> @@ -145,11 +153,11 @@ const handleOverlayClick = (e: MouseEvent) => { <div class="roulette-actions"> {#if !isSpinning && !showResult} - <button onclick={startRoulette}>Spin!</button> + <button onclick={startRoulette}>{$locale().lists.roulette?.spin}</button> {:else if showResult} - <button onclick={startRoulette}>Spin Again</button> + <button onclick={startRoulette}>{$locale().lists.roulette?.spinAgain}</button> {:else} - <button disabled>Spinning ...</button> + <button disabled>{$locale().lists.roulette?.spinning}</button> {/if} </div> {/if} |