Send debug messages back to client
Test / test (push) Failing after 52s Details

This commit is contained in:
Jeff 2024-10-12 14:38:35 -04:00
parent 4a7d752230
commit 07d638b66c
1 changed files with 38 additions and 25 deletions

View File

@ -40,19 +40,43 @@ export default function start(self: ServiceWorkerGlobalScope) {
// ) // )
// }) // })
self.addEventListener("message", async function (event) { async function sendMessage(message: any) {
const clients = await self.clients.matchAll()
await Promise.all(
clients.map(async (client) => client.postMessage(message))
)
}
self.addEventListener("message", function (event) {
const waitEvent = event as ExtendableEvent
waitEvent.waitUntil(
(async () => {
if ( if (
"type" in event && "type" in event &&
event.type === "subscribed" && event.type === "subscribed" &&
"subscription" in event "subscription" in event
) { ) {
try {
await event.waitUntil( await event.waitUntil(
submitSubscription( submitSubscription(
self.registration, self.registration,
event.subscription as PushSubscription event.subscription as PushSubscription
) )
) )
} catch (e) {
await sendMessage({
message: "Got error processing subscription",
error: (e as Error).toString(),
})
} }
}
await sendMessage({
message: "Processed subscription",
})
})()
)
}) })
self.addEventListener("pushsubscriptionchange", function (event) { self.addEventListener("pushsubscriptionchange", function (event) {
@ -67,18 +91,7 @@ export default function start(self: ServiceWorkerGlobalScope) {
existingSubscription existingSubscription
) )
const clients = await self.clients.matchAll() await sendMessage({ type: "sent subscription", newSubscription })
await Promise.all(
clients.map(async (client) =>
client.postMessage({
subscription:
await self.registration.pushManager.getSubscription(),
event,
newSubscription,
})
)
)
})() })()
) )
}) })