Skip to content
Snippets Groups Projects
Unverified Commit 4657d2b1 authored by Rodrigo Nascimento's avatar Rodrigo Nascimento Committed by GitHub
Browse files

regression(E2EEncryption): Service Worker not installing on first load (#32674)

parent 3bffa750
No related branches found
No related tags found
No related merge requests found
......@@ -8,19 +8,6 @@ import { imperativeModal } from '../../imperativeModal';
import { prependReplies } from '../../utils/prependReplies';
import type { ChatAPI } from '../ChatAPI';
if ('serviceWorker' in navigator) {
navigator.serviceWorker
.register('/enc.js', {
scope: '/',
})
.then((reg) => {
if (reg.active) console.log('service worker installed');
})
.catch((err) => {
console.log(`registration failed: ${err}`);
});
}
const getHeightAndWidthFromDataUrl = (dataURL: string): Promise<{ height: number; width: number }> => {
return new Promise((resolve) => {
const img = new Image();
......
import './serviceWorker';
import './startup/accounts';
import { FlowRouter } from 'meteor/kadira:flow-router';
......
const KEY = 'sw_last_reload';
const RELOAD_WINDOW = 1000 * 10;
function reload() {
const lastReload = localStorage.getItem(KEY);
if (lastReload) {
const last = Date.parse(lastReload);
if (!isNaN(last)) {
const elapsed = Date.now() - last;
if (elapsed < RELOAD_WINDOW) {
return;
}
}
}
localStorage.setItem(KEY, new Date().toISOString());
console.log('service worker: reloading to activate');
window.location.reload();
}
if ('serviceWorker' in navigator) {
navigator.serviceWorker
.register('/enc.js', {
scope: '/',
})
.then((reg) => {
if (reg.active) {
console.log('service worker: installed');
if (!navigator.serviceWorker.controller) {
reload();
}
}
})
.catch((err) => {
console.log(`registration failed: ${err}`);
});
}
self.addEventListener('install', function(event) {
event.waitUntil(self.skipWaiting()); // Activate worker immediately
});
self.addEventListener('activate', function(event) {
event.waitUntil(self.clients.claim()); // Become available to all pages
});
function base64Decode(string) {
string = atob(string);
const length = string.length,
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment