import init, {ludus} from "./rudus.js"; export function io (out) { if (out.length > 0) postMessage(out) return new Promise((resolve, _) => { onmessage = (e) => { // console.log("Worker: from Ludus:", e.data) resolve(JSON.stringify(e.data)) } }) } let loaded_wasm = false async function run(e) { if (!loaded_wasm) { await init() console.log("Worker: Ludus has been initialized.") loaded_wasm = true } let msgs = e.data for (const msg of msgs) { if (msg.verb === "run" && typeof msg.data === 'string') { // console.log("running ludus!") onmessage = () => {} console.log("Worker: Beginning new Ludus run.") await ludus(msg.data) onmessage = run } else { console.log("Worker: Did not get valid startup message. Instead got:") console.log(e.data) } } } onmessage = run