From ba798ff999299e2c2ed6de9599db0da5912553d6 Mon Sep 17 00:00:00 2001 From: FragginWagon Date: Wed, 28 Jan 2026 21:07:09 +0000 Subject: [PATCH] =?UTF-8?q?=F0=9F=94=A7=20Enhance=20search=20worker=20init?= =?UTF-8?q?ialization=20with=20error=20handling=20and=20logging?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/views/GamemasterExplorer.vue | 25 +++++++++++++++---- 1 file changed, 20 insertions(+), 5 deletions(-) diff --git a/code/websites/pokedex.online/src/views/GamemasterExplorer.vue b/code/websites/pokedex.online/src/views/GamemasterExplorer.vue index 67a7b29..c7f8811 100644 --- a/code/websites/pokedex.online/src/views/GamemasterExplorer.vue +++ b/code/websites/pokedex.online/src/views/GamemasterExplorer.vue @@ -401,11 +401,26 @@ let searchWorker = null; let searchWorkerRequestId = 0; const initSearchWorker = () => { if (!searchWorker) { - searchWorker = new Worker( - new URL('../workers/search.worker.js', import.meta.url), - { type: 'module' } - ); - searchWorker.onmessage = handleSearchWorkerMessage; + try { + const workerUrl = new URL('../workers/search.worker.js', import.meta.url); + console.log('🔧 Creating worker with URL:', workerUrl.href); + searchWorker = new Worker(workerUrl, { type: 'module' }); + console.log('✅ Worker created successfully'); + + searchWorker.onmessage = handleSearchWorkerMessage; + searchWorker.onerror = (error) => { + console.error('❌ Worker error:', error.message, error.filename, error.lineno); + operationProgress.value.active = false; + operationProgress.value.message = 'Search error: ' + error.message; + }; + + console.log('✅ Worker event handlers attached'); + } catch (error) { + console.error('❌ Failed to create worker:', error); + operationProgress.value.active = false; + operationProgress.value.message = 'Failed to initialize search'; + searchWorker = null; + } } };