import * as fs from 'fs' import { execSync } from 'child_process' import { chdir } from 'process' chdir('wasm') execSync('wasm-pack build -t nodejs') const pkg_name = JSON.parse(fs.readFileSync('pkg/package.json', 'utf8'))['name'] const js_path = `pkg/${pkg_name}.js` let loader_js = fs.readFileSync(js_path, 'utf8') loader_js = `import wasmModule from './${pkg_name}_bg.wasm'\n\n` + loader_js loader_js = loader_js.replace('const { TextDecoder, TextEncoder } = require(`util`);\n', '') loader_js = loader_js.replace(`const path = require('path').join(__dirname, '${pkg_name}_bg.wasm');\n`, '') loader_js = loader_js.replace("const bytes = require('fs').readFileSync(path);\n\n", '') loader_js = loader_js.replace('const wasmModule = new WebAssembly.Module(bytes);\n', '') fs.writeFileSync(js_path, loader_js)