import createModule from "../../build-wasm/linuxcnc-sim-core.js"; import { XyzacSession } from "./xyzac-session.mjs"; import { handleWorkerMessage } from "./opfs-worker-bridge.mjs"; const core = await createModule(); const session = new XyzacSession(core, { planner: "linuxcnc-tp" }); let serial = Promise.resolve(); self.onmessage = (event) => { serial = serial.then(async () => { try { self.postMessage(await handleWorkerMessage(session, event.data)); } catch (error) { self.postMessage({ schema_version: 1, kind: "ERROR", context_id: session.contextId, session_id: session.sessionId, seq: event.data?.seq ?? 0, payload: { status: "error", code: "worker_exception", message_key: String(error?.message ?? error), retryable: false }, }); } }); };