diff --git a/inline-binary.js b/inline-binary.js new file mode 100644 index 0000000..64895e9 --- /dev/null +++ b/inline-binary.js @@ -0,0 +1,10 @@ +const { readFileSync, writeFileSync } = require("node:fs"); + +const wasm = readFileSync("./pkg/orchestrion_js_bg.wasm"); +const wasmBase64 = wasm.toString("base64"); + +let js = readFileSync("./pkg/orchestrion_js.js", "utf8"); + +js = js.replace(/const path[\S\s]+readFileSync\(path\)/, `const bytes = Buffer.from('${wasmBase64}', 'base64')`); + +writeFileSync("./pkg/orchestrion_js.js", js); \ No newline at end of file diff --git a/package.json b/package.json index fc9f18b..cdb6e7e 100644 --- a/package.json +++ b/package.json @@ -7,7 +7,6 @@ "url": "https://github.com/apm-js-collab/orchestrion-js.git" }, "files": [ - "./pkg/orchestrion_js_bg.wasm", "./pkg/orchestrion_js.js", "./pkg/orchestrion_js.d.ts", "LICENSE", @@ -17,6 +16,7 @@ "types": "./pkg/orchestrion_js.d.ts", "scripts": { "build": "wasm-pack build --target nodejs --release -- --features wasm", + "postbuild": "node inline-binary.js", "test": "vitest run", "test:watch": "vitest" },