1// register service worker if supported 2// Service-worker file needs to exist in root folder, because it defines its scope = it can intercept only requests below it in the tree structure 3 4window.addEventListener('load', async function () { 5 if ('serviceWorker' in navigator && 6 (pwaEnabled || !swCacheDisabled)) { 7 var controler = await navigator.serviceWorker.controller; 8 var scriptUrl = controler ? await navigator.serviceWorker.controller.scriptURL : ''; 9 if (scriptUrl.includes('OneSignalSDKWorker.js') && !scriptUrl.includes('push/onesignal')) { 10 var registrations = await navigator.serviceWorker.getRegistrations(); 11 registrations.forEach( async (reg) => { 12 if (reg && reg.active && reg.active.scriptURL && reg.active.scriptURL === scriptUrl) { 13 await reg.unregister(); 14 } 15 }) 16 } else { 17 var sw = '/sw.js'; 18 if (pwaEnabled) { 19 sw = sw.indexOf('?') > -1 ? sw + '&pwa=true' : sw + '?pwa=true'; 20 } 21 if (swCacheDisabled) { 22 sw = sw.indexOf('?') > -1 ? sw + '&sw-cache-dis=true' : sw + '?sw-cache-dis=true'; 23 } 24 navigator.serviceWorker.register(sw).then(function (registration) { 25 console.log('ServiceWorker registration successful with scope: ', registration.scope); 26 }, function (err) { 27 console.log('ServiceWorker registration failed: ', err); 28 }); 29 } 30 } 31});
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.