Browse Source

update sw

main
familyfriendlymikey 2 years ago
parent
commit
07a1e455a0
  1. 2
      package.json
  2. 23
      sw.imba

2
package.json

@ -1,6 +1,6 @@
{
"name": "fuzzyhome",
"version": "0.1.29",
"version": "0.1.32",
"scripts": {
"start": "imba run -SMH --baseurl . -w server.imba",
"build-app": "rm -rf dist && imba build -SMH --baseurl . server.imba",

23
sw.imba

@ -1,9 +1,9 @@
const app_name = "fuzzyhome"
let p = console.log
import { version } from './package.json'
const app_prefix = "{app_name}_cache"
const cache_name = "sw-{app_prefix}-{version}"
p cache_name
let p = do |s| console.log "{cache_name} {s}"
p "loaded"
let urls = [
'./',
@ -13,31 +13,32 @@ let urls = [
]
self.addEventListener('fetch') do |e|
p "{cache_name} fetch"
p "fetch"
def intercept request
if request
p "{cache_name} responding with cache {e.request.url}"
p "responding with cache {e.request.url}"
request
else
p "{cache_name} not cached, fetching {e.request.url}"
p "not cached, fetching {e.request.url}"
fetch e.request
e.respondWith(caches.match(e.request.url).then(intercept))
self.addEventListener('install') do |e|
p "{cache_name} install"
p "install"
def add_urls_to_cache cache
p "{cache_name} adding urls to cache"
p "adding urls to cache"
cache.addAll urls
skipWaiting!
e.waitUntil(caches.open(cache_name).then(add_urls_to_cache))
self.addEventListener('activate') do |e|
p "{cache_name} activate"
p "activate"
def delete_cached keys
let temp = keys.map! do |key, i|
p "{cache_name} checking cache {key}"
p "checking cache {key}"
if key !== cache_name
p "{cache_name} deleting cache {keys[i]}"
caches.delete key
p "deleting cache {key}"
let result = await caches.delete key
p "deletion of {key} result: {result}"
Promise.all(temp)
e.waitUntil(caches.keys().then(delete_cached))

Loading…
Cancel
Save