From 03345438ea0981882235a90bce97feda2e7df363 Mon Sep 17 00:00:00 2001 From: Fuwn Date: Thu, 25 Jan 2024 03:30:53 -0800 Subject: feat(locale): localise profile page --- src/routes/user/[user]/+page.svelte | 33 ++++++++++++++++++++++----------- 1 file changed, 22 insertions(+), 11 deletions(-) (limited to 'src/routes') diff --git a/src/routes/user/[user]/+page.svelte b/src/routes/user/[user]/+page.svelte index d6248a3b..0fd32101 100644 --- a/src/routes/user/[user]/+page.svelte +++ b/src/routes/user/[user]/+page.svelte @@ -4,12 +4,21 @@ import { estimatedDayReading } from '$lib/Media/Manga/time'; import Skeleton from '$lib/Skeleton.svelte'; import root from '$lib/Utility/root.js'; + import locale from '$stores/locale.js'; import { onMount } from 'svelte'; export let data; let userData: User | undefined = undefined; + $: displayBadges = (username: string, badges: number | string) => + $locale({ + values: { + badges: badges, + username + } + }).user.profile.badges; + onMount(() => { user(data.username).then((profile) => { userData = profile; @@ -67,27 +76,29 @@ Badge Wall

- {data.username} has watched {(userData.statistics.anime.minutesWatched / 60 / 24).toFixed( - 1 - )} days of anime and read - {estimatedDayReading(userData.statistics.manga.chaptersRead).toFixed(1)} days of manga. + {$locale({ + values: { + username: data.username, + anime: (userData.statistics.anime.minutesWatched / 60 / 24).toFixed(1), + manga: estimatedDayReading(userData.statistics.manga.chaptersRead).toFixed(1) + } + }).user.profile.statistics}

- {data.username} has collected {#await fetch(root(`/api/badges?id=${userData.id}`))} - ... + {#await fetch(root(`/api/badges?id=${userData.id}`))} + {displayBadges(userData.name, '…')} {:then badges} {#await badges.json()} - ... + {displayBadges(userData.name, '…')} {:then badges} - {badges.length} + {displayBadges(userData.name, badges.length)} {:catch} - ? + {displayBadges(userData.name, '?')} {/await} {:catch} - ? + {displayBadges(userData.name, '?')} {/await} - badges using Badge Wall. -- cgit v1.2.3