From 26d5701217434c6d5a58543edb5fc3373feffefe Mon Sep 17 00:00:00 2001 From: Rosa Gutierrez Date: Fri, 23 Jan 2026 13:40:19 +0100 Subject: [PATCH] Wait for service worker to be active before subscribing The push subscription requires an active service worker. When registering a new service worker, we now wait for it to become active using navigator.serviceWorker.ready before attempting to subscribe to push notifications. Co-Authored-By: Claude Opus 4.5 --- app/javascript/controllers/notifications_controller.js | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/app/javascript/controllers/notifications_controller.js b/app/javascript/controllers/notifications_controller.js index 304bb279d..7104cfa8b 100644 --- a/app/javascript/controllers/notifications_controller.js +++ b/app/javascript/controllers/notifications_controller.js @@ -55,8 +55,9 @@ export default class extends Controller { return navigator.serviceWorker.getRegistration("/service-worker.js", { scope: "/" }) } - #registerServiceWorker() { - return navigator.serviceWorker.register("/service-worker.js", { scope: "/" }) + async #registerServiceWorker() { + await navigator.serviceWorker.register("/service-worker.js", { scope: "/" }) + return navigator.serviceWorker.ready } async #subscribe(registration) {