summaryrefslogtreecommitdiff
path: root/ui/lib/session.svelte.js
diff options
context:
space:
mode:
Diffstat (limited to 'ui/lib/session.svelte.js')
-rw-r--r--ui/lib/session.svelte.js7
1 files changed, 6 insertions, 1 deletions
diff --git a/ui/lib/session.svelte.js b/ui/lib/session.svelte.js
index cd41aa4..74508ea 100644
--- a/ui/lib/session.svelte.js
+++ b/ui/lib/session.svelte.js
@@ -145,7 +145,12 @@ async function bootOrNavigate(navigateTo) {
} catch (err) {
switch (true) {
case err instanceof api.LoggedOut:
- await this.push.unsubscribe();
+ // Can't use `Push` state manager here as it requires boot, which we just failed to do.
+ const sw = await navigator.serviceWorker.ready;
+ const subscription = await sw.pushManager.getSubscription();
+ if (subscription !== null) {
+ await subscription.unsubscribe();
+ }
await navigateTo('/login');
break;
case err instanceof api.SetupRequired: