blob: cbe70304d89c3835663d6ab9782a44482134af7c [file] [log] [blame]
import time
body = '''
onactivate = (e) => e.waitUntil(clients.claim());
var resolve_wait_until;
var wait_until = new Promise(resolve => {
resolve_wait_until = resolve;
});
onmessage = (e) => {
if (e.data == 'wait')
e.waitUntil(wait_until);
if (e.data == 'go')
resolve_wait_until();
};'''
def main(request, response):
headers = [('Cache-Control', 'no-cache, must-revalidate'),
('Pragma', 'no-cache'),
('Content-Type', 'application/javascript')]
skipWaiting = ''
if 'skip-waiting' in request.GET:
skipWaiting = 'skipWaiting();'
return headers, '/* %s %s */ %s %s' % (time.time(), time.clock(), skipWaiting, body)