changed logic in service worker.js
Some checks failed
Scan for leaked secrets using Kingfisher / kingfisher-secrets-scan (push) Has been cancelled
Gemini PR Review / Gemini PR Review (pull_request) Successful in 13s
Scan for leaked secrets using Kingfisher / kingfisher-secrets-scan (pull_request) Successful in 11s
Laravel Larastan / larastan (pull_request) Failing after 2m31s
Laravel Pint / pint (pull_request) Failing after 2m54s

This commit is contained in:
dhanabalan
2026-01-24 11:28:29 +05:30
parent 1adfd59a0e
commit 92da8af6d2

View File

@@ -1,10 +1,37 @@
self.addEventListener('push', function (event) {
const data = event.data.json();
console.log('[SW] Push received');
let payload = {};
if (event.data) {
try {
payload = event.data.json();
} catch (e) {
payload = { body: event.data.text() };
}
}
const title = payload.title || 'Notification';
const options = {
body: payload.body || '',
icon: payload.icon || '/pwa-192x192.png',
badge: payload.icon || '/pwa-192x192.png',
data: payload.data || {},
};
event.waitUntil(
self.registration.showNotification(data.title, {
body: data.body,
icon: data.icon,
data: data.data
})
self.registration.showNotification(title, options)
);
});
self.addEventListener('notificationclick', function (event) {
event.notification.close();
const url = event.notification.data?.url || '/admin';
event.waitUntil(
clients.openWindow(url)
);
});