From c780fcfab667071f9d8b4ed7c0936f48a099e631 Mon Sep 17 00:00:00 2001 From: Julien Oculi Date: Wed, 17 Jul 2024 02:34:22 +0200 Subject: [PATCH] fix(pwa): :technologist: better error handling while getting push subscription --- islands/RegisterServiceWorker.tsx | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/islands/RegisterServiceWorker.tsx b/islands/RegisterServiceWorker.tsx index c4b237c..df34f52 100644 --- a/islands/RegisterServiceWorker.tsx +++ b/islands/RegisterServiceWorker.tsx @@ -17,7 +17,7 @@ export default function RegisterServiceWorker() { // }) // }) - const subscription = await (async () => { + async function getSubscription() { const currentSubscription = await registration.pushManager .getSubscription() if (currentSubscription) return currentSubscription @@ -31,9 +31,14 @@ export default function RegisterServiceWorker() { userVisibleOnly: true, applicationServerKey, }) - })() + } - await requestApi('webpush/subscription', 'POST', subscription) + try { + const subscription = await getSubscription() + await requestApi('webpush/subscription', 'POST', subscription) + } catch (cause) { + console.error('Push subscription is not available', { cause }) + } }) }