Skip to content
This repository was archived by the owner on Sep 19, 2025. It is now read-only.

Commit ed173a0

Browse files
committed
init workerd shim
1 parent 5edb687 commit ed173a0

File tree

3 files changed

+24
-1
lines changed

3 files changed

+24
-1
lines changed

js/Makefile

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,9 @@ build:
44
$(MAKE) build-target WASM_PATH=$(WASM_PATH) TARGET=experimental-nodejs-module
55
$(MAKE) build-target WASM_PATH=$(WASM_PATH) TARGET=deno
66

7+
# shim workerd
8+
cp $(ROOT_DIR)/shim-workerd.js $(ROOT_DIR)/pkg-experimental-nodejs-module/
9+
710
build-target:
811
wasm-bindgen --target $(TARGET) --out-dir $(ROOT_DIR)/pkg-$(TARGET) --typescript $(WASM_PATH)
912
# jsr requires explicit d.ts reference, https://github.com/jsr-io/jsr/issues/370#issuecomment-2044467118

js/package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,8 @@
1212
"exports": {
1313
".": "./pkg-experimental-nodejs-module/pulsebeam_core.js",
1414
"./node": "./pkg-experimental-nodejs-module/pulsebeam_core.js",
15-
"./deno": "./pkg-deno/pulsebeam_core.js"
15+
"./deno": "./pkg-deno/pulsebeam_core.js",
16+
"./workerd": "./pkg-experimental-nodejs-module/shim-workerd.js"
1617
},
1718
"files": [
1819
"pkg-experimental-nodejs-module",

js/shim-workerd.js

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
// Cloudflare doesn't support URL, import.meta.url, and fs.readFileSync
2+
// https://github.com/cloudflare/workers-sdk/issues/7265#issuecomment-2480871605
3+
4+
let imports = {};
5+
import * as import0 from "./pulsebeam_core_bg.js";
6+
import wasmModule from "./pulsebeam_core_bg.wasm";
7+
imports["./pulsebeam_core_bg.js"] = import0;
8+
9+
const wasmInstance = await WebAssembly.instantiate(wasmModule, imports);
10+
const wasm = wasmInstance.exports;
11+
export const __wasm = wasm;
12+
13+
imports["./pulsebeam_core_bg.js"].__wbg_set_wasm(
14+
wasm,
15+
wasmModule,
16+
);
17+
wasm.__wbindgen_start();
18+
19+
export * from "./pulsebeam_core_bg.js";

0 commit comments

Comments
 (0)