first commit

This commit is contained in:
Romulus21
2021-12-17 15:37:05 +01:00
commit 2d49672d20
43 changed files with 39806 additions and 0 deletions

55
src/sw.js Normal file
View File

@@ -0,0 +1,55 @@
import { getFiles, setupPrecaching, setupRouting } from 'preact-cli/sw/';
setupRouting();
setupPrecaching(getFiles());
function wait(ms) {
return new Promise(resolve => {
setTimeout(resolve, ms);
});
}
const BASE = location.protocol + '//' + location.host
const PREFIX = "V1"
const CACHED_FILES = [
`${BASE}/sw.js`,
`${BASE}/js/app.js`,
`${BASE}/css/app.css`,
`${BASE}/offline.html`,
]
self.addEventListener('install', (event) => {
self.skipWaiting()
event.waitUntil(
(async () => {
const cache = await caches.open(PREFIX)
await cache.addAll(CACHED_FILES)
})()
)
console.log(`${PREFIX} Install`)
})
self.addEventListener('activate', (event) => {
clients.claim()
event.waitUntil((async() => {
const keys = await caches.keys()
await Promise.all(
keys.map(key => {
if (!key.includes(PREFIX)) {
return caches.delete(key)
}
})
)
})())
console.log(`${PREFIX} Activate`)
})
const delay = 1000 * 60 * 60 * 24
console.log(localStorage.getItem('data'))
wait(delay)
.then(() => {
// do thing
}).catch(err => console.log(err))