aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
author2022-01-09 12:39:15 +0530
committer2022-01-09 12:39:15 +0530
commit3f2ad6136f61691c0dd0dcac23e852eae257c0fc (patch)
tree2ec42932be46c505b530e7deba8e591b1a9598eb
parentcreate a json file (diff)
downloadsudomsg-3f2ad6136f61691c0dd0dcac23e852eae257c0fc.tar
sudomsg-3f2ad6136f61691c0dd0dcac23e852eae257c0fc.tar.gz
sudomsg-3f2ad6136f61691c0dd0dcac23e852eae257c0fc.tar.bz2
sudomsg-3f2ad6136f61691c0dd0dcac23e852eae257c0fc.tar.lz
sudomsg-3f2ad6136f61691c0dd0dcac23e852eae257c0fc.tar.xz
sudomsg-3f2ad6136f61691c0dd0dcac23e852eae257c0fc.tar.zst
sudomsg-3f2ad6136f61691c0dd0dcac23e852eae257c0fc.zip
fixed feed aria and fixed cache issues
Signed-off-by: Marc Pervaz Boocha <mboocha@sudomsg.xyz>
-rw-r--r--src/assets/sw.mjs34
1 files changed, 23 insertions, 11 deletions
diff --git a/src/assets/sw.mjs b/src/assets/sw.mjs
index e20102a..48ead74 100644
--- a/src/assets/sw.mjs
+++ b/src/assets/sw.mjs
@@ -1,24 +1,32 @@
-const get_cache_info = async() => {
- const response = await fetch('/cache.json')
- return response.json()
+const sw_cache = {
+ offline: "/offline.html",
+ default: [
+ "/index.css",
+ "/prism.css",
+ "/index.js",
+ "/favicon.svg",
+ "/offline.html",
+ "/"
+ ],
+ // eslint-disable-next-line no-undef
+ store: VERSION,
}
self.addEventListener('install', async event => {
+ self.skipWaiting()
const precache = async() => {
- const ver = await get_cache_info()
- const cache = await self.caches.open(ver.store);
- return cache.addAll(ver.default)
+ const cache = await self.caches.open(sw_cache.store);
+ return cache.addAll(sw_cache.default)
}
event.waitUntil(precache())
})
self.addEventListener('activate', async event => {
const invalidatecache = async() => {
- const ver = await get_cache_info()
const keys = await self.caches.keys()
Promise.all(
keys.map(key => {
- if (key !== ver.store) {
+ if (key !== sw_cache.store) {
return self.caches.delete(key)
}
}))
@@ -28,21 +36,25 @@ self.addEventListener('activate', async event => {
self.addEventListener('fetch', async event => {
const cache_fetch = async() => {
- const ver = await get_cache_info()
if (event.request.method != 'GET') {
return
}
+
+ if (event.request.url.origin != self.location.origin) {
+ return
+ }
+
const cacheres = await self.caches.match(event.request)
if (cacheres !== undefined) {
return cacheres
}
try {
const response = await self.fetch(event.request)
- const cache = await self.caches.open(ver.store)
+ const cache = await self.caches.open(sw_cache.store)
cache.put(event.request, response.clone())
return response
} catch {
- return self.caches.match(ver.offline)
+ return self.caches.match(sw_cache.offline)
}
}