send push notification to guest
Main daploy / deploy (push) Failing after 6s

This commit is contained in:
2024-12-02 10:01:23 +02:00
parent 096c1547d4
commit b5a25a6ece
6 changed files with 124 additions and 78 deletions
@@ -78,7 +78,10 @@ async function requestNotificationPermission() {
}
try {
const applicationServerKeyPromise = getVapidPublicKey()
const subscribeOptionsPromise = getVapidPublicKey().then((applicationServerKey) => ({
userVisibleOnly: true,
applicationServerKey,
}))
const permission = await Notification.requestPermission()
if (permission !== 'granted') {
@@ -87,10 +90,16 @@ async function requestNotificationPermission() {
const registration = await navigator.serviceWorker.ready
const subscription = await registration.pushManager.subscribe({
userVisibleOnly: true,
applicationServerKey: await applicationServerKeyPromise,
})
const subscription = await registration.pushManager
.subscribe(await subscribeOptionsPromise)
.catch(async (error) => {
const oldSubscription = await registration.pushManager.getSubscription()
if (!oldSubscription) {
throw error
}
await oldSubscription.unsubscribe()
return registration.pushManager.subscribe(await subscribeOptionsPromise)
})
const webPushSubscriptionDoc = await saveWebPushSubscription(subscription)
emit('change')