Improve message listener
This commit is contained in:
parent
92a9c6e455
commit
d161402e1e
@ -8,24 +8,34 @@ self.addEventListener('activate', (event) => {
|
|||||||
event.waitUntil(self.clients.claim()); // Become available to all pages
|
event.waitUntil(self.clients.claim()); // Become available to all pages
|
||||||
});
|
});
|
||||||
|
|
||||||
// Event listener for messages from clients
|
// ============================================
|
||||||
|
// MESSAGE HANDLER
|
||||||
|
// ============================================
|
||||||
|
|
||||||
self.addEventListener('message', async (event) => {
|
self.addEventListener('message', async (event) => {
|
||||||
const data = event.data;
|
const data = event.data;
|
||||||
console.log(data);
|
console.log('[Service Worker] Message received:', data.type);
|
||||||
|
|
||||||
if (data.type === 'SCAN') {
|
if (data.type === 'SCAN') {
|
||||||
try {
|
try {
|
||||||
const myProcessesId = data.payload;
|
const myProcessesId = data.payload;
|
||||||
if (myProcessesId && myProcessesId.length != 0) {
|
if (myProcessesId && myProcessesId.length != 0) {
|
||||||
const toDownload = await scanMissingData(myProcessesId);
|
const scanResult = await scanMissingData(myProcessesId, event.source);
|
||||||
if (toDownload.length != 0) {
|
|
||||||
console.log('Sending TO_DOWNLOAD message');
|
if (scanResult.toDownload.length != 0) {
|
||||||
event.source.postMessage({ type: 'TO_DOWNLOAD', data: toDownload});
|
console.log('[Service Worker] Sending TO_DOWNLOAD message');
|
||||||
|
event.source.postMessage({ type: 'TO_DOWNLOAD', data: scanResult.toDownload });
|
||||||
|
}
|
||||||
|
|
||||||
|
if (scanResult.diffsToCreate.length > 0) {
|
||||||
|
console.log('[Service Worker] Sending DIFFS_TO_CREATE message');
|
||||||
|
event.source.postMessage({ type: 'DIFFS_TO_CREATE', data: scanResult.diffsToCreate });
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
event.source.postMessage({ status: 'error', message: 'Empty lists' });
|
event.source.postMessage({ status: 'error', message: 'Empty lists' });
|
||||||
}
|
}
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
|
console.error('[Service Worker] Scan error:', error);
|
||||||
event.source.postMessage({ status: 'error', message: error.message });
|
event.source.postMessage({ status: 'error', message: error.message });
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user