Check if service worker is available in browser before tying to register

Signed-off-by: Thomas Citharel <tcit@tcit.fr>
This commit is contained in:
Thomas Citharel 2021-05-12 18:24:38 +02:00
parent 80f951680f
commit 7e7bbacbbf
No known key found for this signature in database
GPG Key ID: A061B9DDE0CA0773

View File

@ -2,33 +2,38 @@
import { register } from "register-service-worker"; import { register } from "register-service-worker";
// if (process.env.NODE_ENV === "production") { if ("serviceWorker" in navigator && isProduction()) {
register(`${process.env.BASE_URL}service-worker.js`, { register(`${process.env.BASE_URL}service-worker.js`, {
ready() { ready() {
console.log( console.log(
"App is being served from cache by a service worker.\n" + "App is being served from cache by a service worker.\n" +
"For more details, visit https://goo.gl/AFskqB" "For more details, visit https://goo.gl/AFskqB"
); );
}, },
registered() { registered() {
console.log("Service worker has been registered."); console.log("Service worker has been registered.");
}, },
cached() { cached() {
console.log("Content has been cached for offline use."); console.log("Content has been cached for offline use.");
}, },
updatefound() { updatefound() {
console.log("New content is downloading."); console.log("New content is downloading.");
}, },
updated() { updated() {
console.log("New content is available; please refresh."); console.log("New content is available; please refresh.");
}, },
offline() { offline() {
console.log( console.log(
"No internet connection found. App is running in offline mode." "No internet connection found. App is running in offline mode."
); );
}, },
error(error) { error(error) {
console.error("Error during service worker registration:", error); console.error("Error during service worker registration:", error);
}, },
}); });
// } }
function isProduction(): boolean {
// return true;
return process.env.NODE_ENV === "production";
}