your personal website on atproto - mirror blento.app

redirect to last page on login

Florian 3685ad7f 4f117a2e

+12 -1
+2
src/lib/atproto/auth.svelte.ts
··· 126 scope: metadata.scope 127 }); 128 129 // let browser persist local storage 130 await new Promise((resolve) => setTimeout(resolve, 200)); 131
··· 126 scope: metadata.scope 127 }); 128 129 + localStorage.setItem('login-redirect', location.pathname + location.search); 130 + 131 // let browser persist local storage 132 await new Promise((resolve) => setTimeout(resolve, 200)); 133
+10 -1
src/routes/(auth)/oauth/callback/+page.svelte
··· 7 8 let startedErrorTimer = $state(); 9 10 $effect(() => { 11 if (user.profile) { 12 - goto('/' + getHandleOrDid(user.profile) + '/edit', {}); 13 } 14 15 if (!user.isInitializing && !startedErrorTimer) {
··· 7 8 let startedErrorTimer = $state(); 9 10 + let hasRedirected = $state(false); 11 + 12 $effect(() => { 13 if (user.profile) { 14 + if(hasRedirected) return; 15 + 16 + const redirect = localStorage.getItem('login-redirect'); 17 + localStorage.removeItem('login-redirect'); 18 + console.log('redirect', redirect) 19 + goto(redirect || '/' + getHandleOrDid(user.profile) + '/edit', {}); 20 + 21 + hasRedirected = true; 22 } 23 24 if (!user.isInitializing && !startedErrorTimer) {