diff --git a/helpers/app-files-scanner.js b/helpers/app-files-scanner.js index db26664..7b34be3 100644 --- a/helpers/app-files-scanner.js +++ b/helpers/app-files-scanner.js @@ -620,7 +620,12 @@ export default class AppFilesScanner { if ( scannerVersion === '2' ) { - const { scan } = await runScanWorker( file.instance ) + const { scan } = await runScanWorker( file.instance, messageDetails => { + console.log( 'messageDetails', messageDetails ) + + file.statusMessage = messageDetails.message + file.status = messageDetails.status + } ) console.log('scan', scan) diff --git a/helpers/scanner/client.mjs b/helpers/scanner/client.mjs index f30c6f4..e45bd61 100644 --- a/helpers/scanner/client.mjs +++ b/helpers/scanner/client.mjs @@ -1,6 +1,8 @@ import AppScanWorker from './worker.mjs?worker' -export async function runScanWorker ( file ) { +const noop = () => {} + +export async function runScanWorker ( file, messageReceiver = noop ) { // console.log( 'file', file ) const appScanWorker = new AppScanWorker() @@ -12,7 +14,9 @@ export async function runScanWorker ( file ) { appScanWorker.onmessage = async (event) => { // console.log( 'Main received message', event ) - const { status } = event.data + const { status, message } = event.data + + messageReceiver({ status, message }) // Resolves promise on finished status if ( status === 'finished' ) { @@ -23,10 +27,11 @@ export async function runScanWorker ( file ) { // Set up the worker error handler appScanWorker.onerror = async ( errorEvent ) => { - // console.log( 'appScanWorker.onerror', errorEvent ) + console.error( 'Error received from App Scan Worker', errorEvent ) reject() } + // Start the worker // https://developer.mozilla.org/en-US/docs/Web/API/Worker/postMessage appScanWorker.postMessage( {