aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorAdam Soltys <[email protected]>2026-03-06 22:57:02 -0800
committerAdam Soltys <[email protected]>2026-03-06 22:57:02 -0800
commitd51f8c8629c804e5b86ca29873175ba922e64e92 (patch)
tree68cabe954dbae3beb9ee006bac98b297808811de /src
parent7a4a59b044026f139ecfb144d1e24664d0f6f4cc (diff)
downloadcoinos-ui-d51f8c8629c804e5b86ca29873175ba922e64e92.tar.gz
coinos-ui-d51f8c8629c804e5b86ca29873175ba922e64e92.zip
register service worker on demand for push notifications
If no service worker is registered (e.g. staging static file serving), register it explicitly so pushManager is available. Co-Authored-By: Claude Opus 4.6 <[email protected]>
Diffstat (limited to 'src')
-rw-r--r--src/routes/(app)/settings/account/+page.svelte5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/routes/(app)/settings/account/+page.svelte b/src/routes/(app)/settings/account/+page.svelte
index 7560aad0..86d6c7f4 100644
--- a/src/routes/(app)/settings/account/+page.svelte
+++ b/src/routes/(app)/settings/account/+page.svelte
@@ -32,7 +32,10 @@
if (!browser) return;
try {
- pm = navigator?.serviceWorker && (await navigator.serviceWorker.getRegistration())?.pushManager;
+ if (!navigator?.serviceWorker) { pmReady = true; return; }
+ let reg = await navigator.serviceWorker.getRegistration();
+ if (!reg) reg = await navigator.serviceWorker.register("/service-worker.js");
+ pm = reg?.pushManager;
if (!pm) { pmReady = true; return; }
permission = await pm.permissionState({