1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
|
const cacheName = 'cache-v1'
const resourceToPrecache = [
'/',
'/index.html',
'/404.html',
'/pages/info/about.html',
'/pages/repo/github/repos.html',
'/css/style.css',
'/css/404.css',
'/css/index.css',
'/css/ghrepo.css',
'/css/about.css',
'/css/devicon.min.css',
'/js/main.js',
'/js/about.js',
'/js/dynamicBlob.js',
'/js/getrepo.js',
'/js/hacktype.js',
'/js/header.js',
'/js/index.js',
'/js/mouseblob.js',
'/js/randomblob.js',
'/js/rbg.js',
'/js/tilt.conf.js',
'/js/tilt.conf.noglare.js',
'/js/tilt.js',
'/js/2dtilt.js',
'/fonts/Hacked-KerX.ttf',
'/fonts/SmoothElegantRegular-ZLv3.ttf',
'/fonts/LigaJetBrainsMonoNerdFont-Regular.ttf',
'/fonts/Big500-8MLOM.ttf',
'/fonts/Monoton.ttf',
'/fonts/RockSalt-Regular.ttf',
'/fonts/audiowide.ttf'
// '/css/',
// '/js/',
// '/pages/',
// '/fonts/'
]
caches.keys().then(function(names) {
for (let name of resourceToPrecache)
caches.delete(name);
});
self.addEventListener('install', event => {
// console.log("Service Worker: Installed");
event.waitUntil(
caches.open(cacheName)
.then(cache => {
return cache.addAll(resourceToPrecache)
})
)
})
self.addEventListener('fetch', event => {
event.respondWith(caches.match(event.request)
.then(cachedResponse => {
return cachedResponse || fetch(event.request);
})
);
});
self.addEventListener('activate', function(event) {
event.waitUntil(
caches.keys().then(function(cacheNames) {
return Promise.all(
cacheNames.filter(function(cacheName) {
// Return true if you want to remove this cache,
// return currentCacheName !== cacheName;
return true
}).map(function(cacheName) {
return caches.delete(cacheName);
})
);
})
);
});
|