From 995efedcbed4bbd6bd9f643f6ce6d4785f4dd646 Mon Sep 17 00:00:00 2001 From: Georges-Antoine Assi Date: Thu, 1 Jan 2026 11:17:57 -0500 Subject: [PATCH] get it to run in worker --- .trunk/trunk.yaml | 2 - .../public/assets/patcherjs/patcher.worker.js | 49 +++++++++++-------- frontend/src/views/Patcher.vue | 2 +- 3 files changed, 29 insertions(+), 24 deletions(-) diff --git a/.trunk/trunk.yaml b/.trunk/trunk.yaml index 4dea9795c..9cb531096 100644 --- a/.trunk/trunk.yaml +++ b/.trunk/trunk.yaml @@ -48,8 +48,6 @@ lint: ignore: - linters: [ALL] paths: - - frontend/assets/patcherjs/** - - frontend/public/assets/patcherjs/patcher.worker.js - frontend/src/__generated__/** - docker/Dockerfile - docker/nginx/js/** diff --git a/frontend/public/assets/patcherjs/patcher.worker.js b/frontend/public/assets/patcherjs/patcher.worker.js index 735f0a5b6..55b64a0eb 100644 --- a/frontend/public/assets/patcherjs/patcher.worker.js +++ b/frontend/public/assets/patcherjs/patcher.worker.js @@ -1,33 +1,40 @@ /// -// Web Worker for ROM patching -const PATCHER_BASE_PATH = "/assets/patcherjs"; -const CORE_SCRIPTS = [ - `${PATCHER_BASE_PATH}/modules/HashCalculator.js`, - `${PATCHER_BASE_PATH}/modules/BinFile.js`, - `${PATCHER_BASE_PATH}/modules/RomPatcher.format.ips.js`, - `${PATCHER_BASE_PATH}/modules/RomPatcher.format.ups.js`, - `${PATCHER_BASE_PATH}/modules/RomPatcher.format.aps_n64.js`, - `${PATCHER_BASE_PATH}/modules/RomPatcher.format.aps_gba.js`, - `${PATCHER_BASE_PATH}/modules/RomPatcher.format.bps.js`, - `${PATCHER_BASE_PATH}/modules/RomPatcher.format.rup.js`, - `${PATCHER_BASE_PATH}/modules/RomPatcher.format.ppf.js`, - `${PATCHER_BASE_PATH}/modules/RomPatcher.format.bdf.js`, - `${PATCHER_BASE_PATH}/modules/RomPatcher.format.pmsr.js`, - `${PATCHER_BASE_PATH}/modules/RomPatcher.format.vcdiff.js`, - `${PATCHER_BASE_PATH}/RomPatcher.js`, -]; - // Load all patcher scripts let scriptsLoaded = false; async function loadScripts() { if (scriptsLoaded) return; + self.BinFile = + self.IPS = + self.UPS = + self.APS = + self.APSGBA = + self.BPS = + self.RUP = + self.PPF = + self.BDF = + self.PMSR = + self.VCDIFF = + null; + try { - for (const script of CORE_SCRIPTS) { - importScripts(script); - } + importScripts( + "/node_modules/rom-patcher/rom-patcher-js/modules/BinFile.js", + "/node_modules/rom-patcher/rom-patcher-js/modules/HashCalculator.js", + "/node_modules/rom-patcher/rom-patcher-js/modules/RomPatcher.format.aps_gba.js", + "/node_modules/rom-patcher/rom-patcher-js/modules/RomPatcher.format.aps_n64.js", + "/node_modules/rom-patcher/rom-patcher-js/modules/RomPatcher.format.bdf.js", + "/node_modules/rom-patcher/rom-patcher-js/modules/RomPatcher.format.bps.js", + "/node_modules/rom-patcher/rom-patcher-js/modules/RomPatcher.format.ips.js", + "/node_modules/rom-patcher/rom-patcher-js/modules/RomPatcher.format.pmsr.js", + "/node_modules/rom-patcher/rom-patcher-js/modules/RomPatcher.format.ppf.js", + "/node_modules/rom-patcher/rom-patcher-js/modules/RomPatcher.format.rup.js", + "/node_modules/rom-patcher/rom-patcher-js/modules/RomPatcher.format.ups.js", + "/node_modules/rom-patcher/rom-patcher-js/modules/RomPatcher.format.vcdiff.js", + "/node_modules/rom-patcher/rom-patcher-js/RomPatcher.js", + ); scriptsLoaded = true; return true; } catch (error) { diff --git a/frontend/src/views/Patcher.vue b/frontend/src/views/Patcher.vue index 33af0cea1..1ba845ff7 100644 --- a/frontend/src/views/Patcher.vue +++ b/frontend/src/views/Patcher.vue @@ -217,7 +217,7 @@ async function patchRom() { const romArrayBuffer = await romFile.value.arrayBuffer(); const patchArrayBuffer = await patchFile.value.arrayBuffer(); - // Create and use Web Worker for patching + // Create and use web worker for patching const worker = new Worker("/assets/patcherjs/patcher.worker.js"); const patchedResult = await new Promise<{