This commit is contained in:
nnduc
2026-10-24 14:03:52 +07:00
commit 4fe046de58
4790 changed files with 311146 additions and 0 deletions
+67
View File
@@ -0,0 +1,67 @@
/**
* Register a service worker for the Progressive Web App
*/
if ('serviceWorker' in navigator) {
navigator.serviceWorker
.register(SW_URI)
.then(e => navigator.serviceWorker.ready)
.then((r) => {
console.log('Service Worker Registered');
});
let refreshing = false;
navigator.serviceWorker.addEventListener('controllerchange', () => {
if (refreshing) return;
refreshing = true;
window.location.reload();
});
const channel = new BroadcastChannel('messages');
channel.addEventListener('message', event => {
Notif.snackbarClear();
window.focus();
switch (event.data.type) {
case 'call':
break;
case 'call_reject':
VisioUtils.cancelLobby(event.data.data.fullJid, event.data.data.callId);
break;
case 'space_chat':
MovimUtils.reload(event.data.data.server, event.data.data.node, event.data.data.room);
break;
case 'chat':
Search.chat(event.data.data.jid, event.data.data.muc);
break;
default:
if (event.data.data.url) {
MovimUtils.reload(event.data.data.url);
}
break;
}
});
}
MovimEvents.registerWindow('loaded', 'movimbase', () => {
const pwaButton = document.querySelector('#pwa');
if (pwaButton) {
window.addEventListener('beforeinstallprompt', (e) => {
e.preventDefault();
deferredPrompt = e;
pwaButton.style.display = 'initial';
pwaButton.addEventListener('click', () => {
deferredPrompt.prompt();
deferredPrompt.userChoice.then((choiceResult) => {
if (choiceResult.outcome === 'accepted') {
console.log('Movim App installed');
}
deferredPrompt = null;
});
});
});
}
});