tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

background-sync-sw.js (715B)


      1 import {getOneShotSyncPromise, getPeriodicSyncPromise} from './background-sync-helper.js';
      2 
      3 self.addEventListener('install', e => e.waitUntil(skipWaiting()));
      4 self.addEventListener('activate', e => e.waitUntil(clients.claim()));
      5 
      6 self.addEventListener('message', async e => {
      7  const {method, isPeriodic} = e.data;
      8  const promise = isPeriodic ?
      9      getPeriodicSyncPromise(self.registration, method) :
     10      getOneShotSyncPromise(self.registration, method);
     11  const message =
     12      await promise
     13          .then(() => {
     14            return `[background synnc ${method}] Unexpectedly started`;
     15          })
     16          .catch((e) => {
     17            return e.message;
     18          });
     19 
     20  e.source.postMessage(message);
     21 });