From e8612618fb20f779ebe2e85edf32d71961d2f1d4 Mon Sep 17 00:00:00 2001 From: Fuwn Date: Thu, 12 Jun 2025 22:06:31 -0700 Subject: feat: Move remaining localStorage usages to localforage --- src/routes/user/+page.svelte | 26 +++++++++++++------------- src/routes/user/[user]/badges/+page.svelte | 7 ++++--- 2 files changed, 17 insertions(+), 16 deletions(-) (limited to 'src/routes/user') diff --git a/src/routes/user/+page.svelte b/src/routes/user/+page.svelte index 29bd132b..eab089c6 100644 --- a/src/routes/user/+page.svelte +++ b/src/routes/user/+page.svelte @@ -7,23 +7,23 @@ import HeadTitle from '$lib/Home/HeadTitle.svelte'; import root from '$lib/Utility/root'; import { page } from '$app/stores'; + import localforage from 'localforage'; - const user = - browser && localStorage.getItem('identity') - ? (JSON.parse(localStorage.getItem('identity') || '') as UserIdentity).name - : null; + onMount(async () => { + if (browser) { + const user = ((await localforage.getItem('identity')) as UserIdentity).name; - onMount(() => { - if (user) { - if (browser && $page.url.searchParams.get('badges') !== null) { - goto(root(`/user/${user}/badges`)); + if (user) { + if (browser && $page.url.searchParams.get('badges') !== null) { + goto(root(`/user/${user}/badges`)); + } else { + goto(root(`/user/${user}`)); + } } else { - goto(root(`/user/${user}`)); + goto( + `https://anilist.co/api/v2/oauth/authorize?client_id=${env.PUBLIC_ANILIST_CLIENT_ID}&redirect_uri=${env.PUBLIC_ANILIST_REDIRECT_URI}&response_type=code` + ); } - } else { - goto( - `https://anilist.co/api/v2/oauth/authorize?client_id=${env.PUBLIC_ANILIST_CLIENT_ID}&redirect_uri=${env.PUBLIC_ANILIST_REDIRECT_URI}&response_type=code` - ); } }); diff --git a/src/routes/user/[user]/badges/+page.svelte b/src/routes/user/[user]/badges/+page.svelte index 9fca60b2..43beddea 100644 --- a/src/routes/user/[user]/badges/+page.svelte +++ b/src/routes/user/[user]/badges/+page.svelte @@ -23,6 +23,7 @@ import type { IndexedBadge } from '$lib/User/BadgeWall/badge'; import { graphql } from '$houdini'; import type { Preferences } from '../../../../graphql/user/$types'; + import localforage from 'localforage'; export let data; @@ -205,7 +206,7 @@ }); onMount(async () => { - if (browser && localStorage.getItem('badgeWallNoticeDismissed')) noticeDismissed = true; + if (browser && (await localforage.getItem('badgeWallNoticeDismissed'))) noticeDismissed = true; badger = isId ? { @@ -573,10 +574,10 @@ of all badges from your Badge Wall.