| ... |
... |
@@ -1,6 +1,19 @@ |
| 1 |
1 |
if ('serviceWorker' in navigator) { |
| 2 |
|
- navigator.serviceWorker.register('/bin/get/LiveTableServiceWorker?xcontent=plain&outputSyntax=plain', { 'scope': '/bin/get/XWiki/LiveTableResults'}) |
|
2 |
+ navigator.serviceWorker.register('/bin/jsx/LiveTableServiceWorker?minify=false', { 'scope': '/bin/view/Membership'}) |
| 3 |
3 |
.then((reg) => { |
|
4 |
+ if(reg.installing) { |
|
5 |
+ const sw = reg.installing || reg.waiting; |
|
6 |
+ sw.onstatechange = function() { |
|
7 |
+ if (sw.state === 'installed') { |
|
8 |
+ // SW installed. Reload for SW intercept serving SW-enabled page. |
|
9 |
+ window.location.reload(); |
|
10 |
+ } |
|
11 |
+ }; |
|
12 |
+ } else if (reg.active) { |
|
13 |
+ // something's not right or SW is bypassed. previously-installed SW should have redirected this request to different page |
|
14 |
+ throw(new Error('Service Worker is installed and not redirecting.')) |
|
15 |
+} |
|
16 |
+ |
| 4 |
4 |
// registration worked |
| 5 |
5 |
console.log('Registration succeeded. Scope is ' + reg.scope); |
| 6 |
6 |
}).catch((error) => { |