2022-09-01 00:50:55 -04:00
|
|
|
const service_worker = navigator.serviceWorker;
|
|
|
|
|
|
2022-08-31 16:35:25 -04:00
|
|
|
async function start_service_worker() {
|
2022-09-01 11:12:24 -04:00
|
|
|
const version = self.gapp.version;
|
2022-08-31 21:41:51 -04:00
|
|
|
function debug() {
|
|
|
|
|
console.log(`[${version}]`, ...arguments);
|
|
|
|
|
}
|
|
|
|
|
|
2022-08-31 16:35:25 -04:00
|
|
|
// install service worker
|
2022-09-01 11:12:24 -04:00
|
|
|
debug('service worker registration');
|
2022-08-31 16:35:25 -04:00
|
|
|
|
|
|
|
|
try {
|
|
|
|
|
// const reg = await navigator.serviceWorker.register("/src/moto/service.js?013", { scope: "/" });
|
2022-08-31 21:41:51 -04:00
|
|
|
const reg = await navigator.serviceWorker.register("/code/service.js?"+version, { scope: "/" });
|
2022-08-31 16:35:25 -04:00
|
|
|
if (reg.installing) {
|
2022-08-31 21:41:51 -04:00
|
|
|
debug('service worker installing');
|
2022-08-31 16:35:25 -04:00
|
|
|
} else if (reg.waiting) {
|
2022-08-31 21:41:51 -04:00
|
|
|
debug('service worker waiting');
|
2022-08-31 16:35:25 -04:00
|
|
|
} else if (reg.active) {
|
2022-08-31 21:41:51 -04:00
|
|
|
debug('service worker active');
|
2022-08-31 16:35:25 -04:00
|
|
|
} else {
|
2022-08-31 21:41:51 -04:00
|
|
|
debug({ service_worker: reg });
|
2022-08-31 16:35:25 -04:00
|
|
|
}
|
2022-09-01 00:50:55 -04:00
|
|
|
|
|
|
|
|
if (service_worker.controller) {
|
|
|
|
|
service_worker.controller.postMessage('ctrl message');
|
|
|
|
|
}
|
2022-08-31 16:35:25 -04:00
|
|
|
} catch (err) {
|
2022-09-01 00:50:55 -04:00
|
|
|
debug('service worker registration failed', err);
|
2022-08-31 16:35:25 -04:00
|
|
|
}
|
|
|
|
|
}
|
2022-09-01 00:50:55 -04:00
|
|
|
|
2022-09-01 21:56:51 -04:00
|
|
|
if (service_worker && self.debug_version) start_service_worker();
|