import { config } from ".."; import { rewriteJs } from "./js"; import { URLMeta } from "./url"; export function rewriteWorkers( js: string | Uint8Array, type: string, url: string, meta: URLMeta ) { let str = ""; const module = type === "module"; const script = (script) => { if (module) { str += `import "${config.files[script]}"\n`; } else { str += `importScripts("${config.files[script]}");\n`; } }; script("wasm"); script("all"); str += `$scramjetLoadClient(${JSON.stringify(config)});`; let rewritten = rewriteJs(js, url, meta, module); if (rewritten instanceof Uint8Array) { rewritten = new TextDecoder().decode(rewritten); } str += rewritten; return str; }