Skip to content

Commit c0763e0

Browse files
authored
fix: restore webcontainer-fallback.js for Stackblitz support (#787)
1 parent e45c66c commit c0763e0

File tree

1 file changed

+23
-0
lines changed

1 file changed

+23
-0
lines changed

napi/webcontainer-fallback.js

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
const fs = require('node:fs');
2+
const childProcess = require('node:child_process');
3+
4+
const pkg = JSON.parse(
5+
fs.readFileSync(require.resolve('oxc-resolver/package.json'), 'utf-8'),
6+
);
7+
const version = pkg.version;
8+
const baseDir = `/tmp/oxc-resolver-${version}`;
9+
const bindingEntry = `${baseDir}/node_modules/@oxc-resolver/binding-wasm32-wasi/resolver.wasi.cjs`;
10+
11+
if (!fs.existsSync(bindingEntry)) {
12+
fs.rmSync(baseDir, { recursive: true, force: true });
13+
fs.mkdirSync(baseDir, { recursive: true });
14+
const bindingPkg = `@oxc-resolver/binding-wasm32-wasi@${version}`;
15+
// eslint-disable-next-line: no-console
16+
console.log(`[oxc-resolver] Downloading ${bindingPkg} on WebContainer...`);
17+
childProcess.execFileSync('pnpm', ['i', bindingPkg], {
18+
cwd: baseDir,
19+
stdio: 'inherit',
20+
});
21+
}
22+
23+
module.exports = require(bindingEntry);

0 commit comments

Comments
 (0)