feat: add onmessage handler for service worker

This commit is contained in:
Julian Lam
2024-09-11 12:15:12 -04:00
parent fc4f6a4c56
commit 40fe4d88f9

View File

@@ -358,6 +358,20 @@ if (document.readyState === 'loading') {
if (!config.useragent.isSafari && 'serviceWorker' in navigator) {
navigator.serviceWorker.register(config.relative_path + '/service-worker.js', { scope: config.relative_path + '/' })
.then(function () {
navigator.serviceWorker.addEventListener('message', (event) => {
const { action, url } = event.data;
switch (action) {
case 'ajaxify': {
const check = ajaxify.check(url);
if (check) {
ajaxify.go(url);
} else {
window.location.href = url;
}
}
}
});
console.info('ServiceWorker registration succeeded.');
}).catch(function (err) {
console.info('ServiceWorker registration failed: ', err);