diff options
Diffstat (limited to 'ui/static/js/service_worker.js')
-rw-r--r-- | ui/static/js/service_worker.js | 44 |
1 files changed, 0 insertions, 44 deletions
diff --git a/ui/static/js/service_worker.js b/ui/static/js/service_worker.js deleted file mode 100644 index 37cce257..00000000 --- a/ui/static/js/service_worker.js +++ /dev/null @@ -1,44 +0,0 @@ - -// Incrementing OFFLINE_VERSION will kick off the install event and force -// previously cached resources to be updated from the network. -const OFFLINE_VERSION = 1; -const CACHE_NAME = "offline"; - -self.addEventListener("install", (event) => { - event.waitUntil( - (async () => { - const cache = await caches.open(CACHE_NAME); - - // Setting {cache: 'reload'} in the new request will ensure that the - // response isn't fulfilled from the HTTP cache; i.e., it will be from - // the network. - await cache.add(new Request(OFFLINE_URL, { cache: "reload" })); - })() - ); - - // Force the waiting service worker to become the active service worker. - self.skipWaiting(); -}); - -self.addEventListener("fetch", (event) => { - // We proxify requests through fetch() only if we are offline because it's slower. - if (navigator.onLine === false && event.request.mode === "navigate") { - event.respondWith( - (async () => { - try { - // Always try the network first. - const networkResponse = await fetch(event.request); - return networkResponse; - } catch (error) { - // catch is only triggered if an exception is thrown, which is likely - // due to a network error. - // If fetch() returns a valid HTTP response with a response code in - // the 4xx or 5xx range, the catch() will NOT be called. - const cache = await caches.open(CACHE_NAME); - const cachedResponse = await cache.match(OFFLINE_URL); - return cachedResponse; - } - })() - ); - } -}); |