@bytecodealliance/jco 1.32.1 → 1.34.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (264) hide show
  1. package/README.md +12 -1
  2. package/dist/bundle.d.ts +2 -0
  3. package/dist/bundle.d.ts.map +1 -1
  4. package/dist/bundle.js +12 -0
  5. package/dist/bundle.js.map +1 -1
  6. package/dist/cmd/componentize.d.ts +33 -0
  7. package/dist/cmd/componentize.d.ts.map +1 -1
  8. package/dist/cmd/componentize.js +92 -8
  9. package/dist/cmd/componentize.js.map +1 -1
  10. package/dist/cmd/new.js +2 -1
  11. package/dist/cmd/new.js.map +1 -1
  12. package/dist/cmd/run.d.ts.map +1 -1
  13. package/dist/cmd/run.js +58 -1
  14. package/dist/cmd/run.js.map +1 -1
  15. package/dist/cmd/transpile.d.ts +5 -1
  16. package/dist/cmd/transpile.d.ts.map +1 -1
  17. package/dist/cmd/transpile.js +124 -0
  18. package/dist/cmd/transpile.js.map +1 -1
  19. package/dist/engine-compat.d.ts +11 -0
  20. package/dist/engine-compat.d.ts.map +1 -0
  21. package/dist/engine-compat.js +56 -0
  22. package/dist/engine-compat.js.map +1 -0
  23. package/dist/jco.js +12 -1
  24. package/dist/jco.js.map +1 -1
  25. package/dist/node-builtins/assert.d.ts +3 -0
  26. package/dist/node-builtins/assert.d.ts.map +1 -0
  27. package/dist/node-builtins/assert.js +65 -0
  28. package/dist/node-builtins/assert.js.map +1 -0
  29. package/dist/node-builtins/async-hooks.d.ts +3 -0
  30. package/dist/node-builtins/async-hooks.d.ts.map +1 -0
  31. package/dist/node-builtins/async-hooks.js +27 -0
  32. package/dist/node-builtins/async-hooks.js.map +1 -0
  33. package/dist/node-builtins/buffer.d.ts +4 -0
  34. package/dist/node-builtins/buffer.d.ts.map +1 -0
  35. package/dist/node-builtins/buffer.js +87 -0
  36. package/dist/node-builtins/buffer.js.map +1 -0
  37. package/dist/node-builtins/child-process.d.ts +3 -0
  38. package/dist/node-builtins/child-process.d.ts.map +1 -0
  39. package/dist/node-builtins/child-process.js +23 -0
  40. package/dist/node-builtins/child-process.js.map +1 -0
  41. package/dist/node-builtins/cluster.d.ts +3 -0
  42. package/dist/node-builtins/cluster.d.ts.map +1 -0
  43. package/dist/node-builtins/cluster.js +28 -0
  44. package/dist/node-builtins/cluster.js.map +1 -0
  45. package/dist/node-builtins/console.d.ts +3 -0
  46. package/dist/node-builtins/console.d.ts.map +1 -0
  47. package/dist/node-builtins/console.js +39 -0
  48. package/dist/node-builtins/console.js.map +1 -0
  49. package/dist/node-builtins/crypto.d.ts +3 -0
  50. package/dist/node-builtins/crypto.d.ts.map +1 -0
  51. package/dist/node-builtins/crypto.js +5 -0
  52. package/dist/node-builtins/crypto.js.map +1 -0
  53. package/dist/node-builtins/dgram.d.ts +4 -0
  54. package/dist/node-builtins/dgram.d.ts.map +1 -0
  55. package/dist/node-builtins/dgram.js +13 -0
  56. package/dist/node-builtins/dgram.js.map +1 -0
  57. package/dist/node-builtins/diagnostics-channel.d.ts +3 -0
  58. package/dist/node-builtins/diagnostics-channel.d.ts.map +1 -0
  59. package/dist/node-builtins/diagnostics-channel.js +26 -0
  60. package/dist/node-builtins/diagnostics-channel.js.map +1 -0
  61. package/dist/node-builtins/dns.d.ts +3 -0
  62. package/dist/node-builtins/dns.d.ts.map +1 -0
  63. package/dist/node-builtins/dns.js +12 -0
  64. package/dist/node-builtins/dns.js.map +1 -0
  65. package/dist/node-builtins/domain.d.ts +3 -0
  66. package/dist/node-builtins/domain.d.ts.map +1 -0
  67. package/dist/node-builtins/domain.js +19 -0
  68. package/dist/node-builtins/domain.js.map +1 -0
  69. package/dist/node-builtins/events.d.ts +3 -0
  70. package/dist/node-builtins/events.d.ts.map +1 -0
  71. package/dist/node-builtins/events.js +39 -0
  72. package/dist/node-builtins/events.js.map +1 -0
  73. package/dist/node-builtins/ffi.d.ts +3 -0
  74. package/dist/node-builtins/ffi.d.ts.map +1 -0
  75. package/dist/node-builtins/ffi.js +59 -0
  76. package/dist/node-builtins/ffi.js.map +1 -0
  77. package/dist/node-builtins/fs.d.ts +3 -0
  78. package/dist/node-builtins/fs.d.ts.map +1 -0
  79. package/dist/node-builtins/fs.js +16 -0
  80. package/dist/node-builtins/fs.js.map +1 -0
  81. package/dist/node-builtins/globals.d.ts +19 -0
  82. package/dist/node-builtins/globals.d.ts.map +1 -0
  83. package/dist/node-builtins/globals.js +56 -0
  84. package/dist/node-builtins/globals.js.map +1 -0
  85. package/dist/node-builtins/http-common.d.ts +6 -0
  86. package/dist/node-builtins/http-common.d.ts.map +1 -0
  87. package/dist/node-builtins/http-common.js +111 -0
  88. package/dist/node-builtins/http-common.js.map +1 -0
  89. package/dist/node-builtins/http.d.ts +4 -0
  90. package/dist/node-builtins/http.d.ts.map +1 -0
  91. package/dist/node-builtins/http.js +15 -0
  92. package/dist/node-builtins/http.js.map +1 -0
  93. package/dist/node-builtins/http2.d.ts +4 -0
  94. package/dist/node-builtins/http2.d.ts.map +1 -0
  95. package/dist/node-builtins/http2.js +79 -0
  96. package/dist/node-builtins/http2.js.map +1 -0
  97. package/dist/node-builtins/https.d.ts +3 -0
  98. package/dist/node-builtins/https.d.ts.map +1 -0
  99. package/dist/node-builtins/https.js +5 -0
  100. package/dist/node-builtins/https.js.map +1 -0
  101. package/dist/node-builtins/index.d.ts +10 -0
  102. package/dist/node-builtins/index.d.ts.map +1 -0
  103. package/dist/node-builtins/index.js +164 -0
  104. package/dist/node-builtins/index.js.map +1 -0
  105. package/dist/node-builtins/inspector.d.ts +12 -0
  106. package/dist/node-builtins/inspector.d.ts.map +1 -0
  107. package/dist/node-builtins/inspector.js +70 -0
  108. package/dist/node-builtins/inspector.js.map +1 -0
  109. package/dist/node-builtins/module.d.ts +3 -0
  110. package/dist/node-builtins/module.d.ts.map +1 -0
  111. package/dist/node-builtins/module.js +55 -0
  112. package/dist/node-builtins/module.js.map +1 -0
  113. package/dist/node-builtins/net.d.ts +3 -0
  114. package/dist/node-builtins/net.d.ts.map +1 -0
  115. package/dist/node-builtins/net.js +46 -0
  116. package/dist/node-builtins/net.js.map +1 -0
  117. package/dist/node-builtins/os.d.ts +3 -0
  118. package/dist/node-builtins/os.d.ts.map +1 -0
  119. package/dist/node-builtins/os.js +39 -0
  120. package/dist/node-builtins/os.js.map +1 -0
  121. package/dist/node-builtins/path.d.ts +3 -0
  122. package/dist/node-builtins/path.d.ts.map +1 -0
  123. package/dist/node-builtins/path.js +91 -0
  124. package/dist/node-builtins/path.js.map +1 -0
  125. package/dist/node-builtins/perf-hooks.d.ts +3 -0
  126. package/dist/node-builtins/perf-hooks.d.ts.map +1 -0
  127. package/dist/node-builtins/perf-hooks.js +12 -0
  128. package/dist/node-builtins/perf-hooks.js.map +1 -0
  129. package/dist/node-builtins/process.d.ts +3 -0
  130. package/dist/node-builtins/process.d.ts.map +1 -0
  131. package/dist/node-builtins/process.js +9 -0
  132. package/dist/node-builtins/process.js.map +1 -0
  133. package/dist/node-builtins/querystring.d.ts +3 -0
  134. package/dist/node-builtins/querystring.d.ts.map +1 -0
  135. package/dist/node-builtins/querystring.js +18 -0
  136. package/dist/node-builtins/querystring.js.map +1 -0
  137. package/dist/node-builtins/readline.d.ts +3 -0
  138. package/dist/node-builtins/readline.d.ts.map +1 -0
  139. package/dist/node-builtins/readline.js +11 -0
  140. package/dist/node-builtins/readline.js.map +1 -0
  141. package/dist/node-builtins/repl.d.ts +9 -0
  142. package/dist/node-builtins/repl.d.ts.map +1 -0
  143. package/dist/node-builtins/repl.js +12 -0
  144. package/dist/node-builtins/repl.js.map +1 -0
  145. package/dist/node-builtins/shared.d.ts +24 -0
  146. package/dist/node-builtins/shared.d.ts.map +1 -0
  147. package/dist/node-builtins/shared.js +68 -0
  148. package/dist/node-builtins/shared.js.map +1 -0
  149. package/dist/node-builtins/sqlite.d.ts +3 -0
  150. package/dist/node-builtins/sqlite.d.ts.map +1 -0
  151. package/dist/node-builtins/sqlite.js +9 -0
  152. package/dist/node-builtins/sqlite.js.map +1 -0
  153. package/dist/node-builtins/stream.d.ts +3 -0
  154. package/dist/node-builtins/stream.d.ts.map +1 -0
  155. package/dist/node-builtins/stream.js +64 -0
  156. package/dist/node-builtins/stream.js.map +1 -0
  157. package/dist/node-builtins/string-decoder.d.ts +3 -0
  158. package/dist/node-builtins/string-decoder.d.ts.map +1 -0
  159. package/dist/node-builtins/string-decoder.js +14 -0
  160. package/dist/node-builtins/string-decoder.js.map +1 -0
  161. package/dist/node-builtins/test.d.ts +4 -0
  162. package/dist/node-builtins/test.d.ts.map +1 -0
  163. package/dist/node-builtins/test.js +8 -0
  164. package/dist/node-builtins/test.js.map +1 -0
  165. package/dist/node-builtins/timers.d.ts +4 -0
  166. package/dist/node-builtins/timers.d.ts.map +1 -0
  167. package/dist/node-builtins/timers.js +9 -0
  168. package/dist/node-builtins/timers.js.map +1 -0
  169. package/dist/node-builtins/tls.d.ts +3 -0
  170. package/dist/node-builtins/tls.d.ts.map +1 -0
  171. package/dist/node-builtins/tls.js +10 -0
  172. package/dist/node-builtins/tls.js.map +1 -0
  173. package/dist/node-builtins/trace-events.d.ts +3 -0
  174. package/dist/node-builtins/trace-events.d.ts.map +1 -0
  175. package/dist/node-builtins/trace-events.js +9 -0
  176. package/dist/node-builtins/trace-events.js.map +1 -0
  177. package/dist/node-builtins/tty.d.ts +8 -0
  178. package/dist/node-builtins/tty.d.ts.map +1 -0
  179. package/dist/node-builtins/tty.js +12 -0
  180. package/dist/node-builtins/tty.js.map +1 -0
  181. package/dist/node-builtins/types.d.ts +159 -0
  182. package/dist/node-builtins/types.d.ts.map +1 -0
  183. package/dist/node-builtins/types.js +2 -0
  184. package/dist/node-builtins/types.js.map +1 -0
  185. package/dist/node-builtins/unenv.d.ts +6 -0
  186. package/dist/node-builtins/unenv.d.ts.map +1 -0
  187. package/dist/node-builtins/unenv.js +27 -0
  188. package/dist/node-builtins/unenv.js.map +1 -0
  189. package/dist/node-builtins/url-pattern.d.ts +8 -0
  190. package/dist/node-builtins/url-pattern.d.ts.map +1 -0
  191. package/dist/node-builtins/url-pattern.js +19 -0
  192. package/dist/node-builtins/url-pattern.js.map +1 -0
  193. package/dist/node-builtins/url.d.ts +4 -0
  194. package/dist/node-builtins/url.d.ts.map +1 -0
  195. package/dist/node-builtins/url.js +100 -0
  196. package/dist/node-builtins/url.js.map +1 -0
  197. package/dist/node-builtins/util.d.ts +3 -0
  198. package/dist/node-builtins/util.d.ts.map +1 -0
  199. package/dist/node-builtins/util.js +7 -0
  200. package/dist/node-builtins/util.js.map +1 -0
  201. package/dist/node-builtins/v8.d.ts +3 -0
  202. package/dist/node-builtins/v8.d.ts.map +1 -0
  203. package/dist/node-builtins/v8.js +6 -0
  204. package/dist/node-builtins/v8.js.map +1 -0
  205. package/dist/node-builtins/vfs.d.ts +3 -0
  206. package/dist/node-builtins/vfs.d.ts.map +1 -0
  207. package/dist/node-builtins/vfs.js +42 -0
  208. package/dist/node-builtins/vfs.js.map +1 -0
  209. package/dist/node-builtins/vm.d.ts +4 -0
  210. package/dist/node-builtins/vm.d.ts.map +1 -0
  211. package/dist/node-builtins/vm.js +6 -0
  212. package/dist/node-builtins/vm.js.map +1 -0
  213. package/dist/node-builtins/wasi-sockets.d.ts +10 -0
  214. package/dist/node-builtins/wasi-sockets.d.ts.map +1 -0
  215. package/dist/node-builtins/wasi-sockets.js +25 -0
  216. package/dist/node-builtins/wasi-sockets.js.map +1 -0
  217. package/dist/node-builtins/wasi.d.ts +10 -0
  218. package/dist/node-builtins/wasi.d.ts.map +1 -0
  219. package/dist/node-builtins/wasi.js +14 -0
  220. package/dist/node-builtins/wasi.js.map +1 -0
  221. package/dist/node-builtins/worker-threads.d.ts +3 -0
  222. package/dist/node-builtins/worker-threads.d.ts.map +1 -0
  223. package/dist/node-builtins/worker-threads.js +16 -0
  224. package/dist/node-builtins/worker-threads.js.map +1 -0
  225. package/dist/node-builtins/zlib.d.ts +3 -0
  226. package/dist/node-builtins/zlib.d.ts.map +1 -0
  227. package/dist/node-builtins/zlib.js +6 -0
  228. package/dist/node-builtins/zlib.js.map +1 -0
  229. package/dist/node-wit.d.ts +102 -0
  230. package/dist/node-wit.d.ts.map +1 -0
  231. package/dist/node-wit.js +469 -0
  232. package/dist/node-wit.js.map +1 -0
  233. package/lib/wasi_snapshot_preview1.command.wasm +0 -0
  234. package/lib/wasi_snapshot_preview1.reactor.wasm +0 -0
  235. package/lib/wit/builtin/0.2.10/wasi-clocks/package.wit +35 -0
  236. package/lib/wit/builtin/0.2.10/wasi-io/package.wit +47 -0
  237. package/lib/wit/builtin/0.2.10/wasi-sockets/package.wit +168 -0
  238. package/lib/wit/builtin/jco-node-0.1.0/child-process.wit +42 -0
  239. package/lib/wit/builtin/jco-node-0.1.0/cluster.wit +112 -0
  240. package/lib/wit/builtin/jco-node-0.1.0/console.wit +12 -0
  241. package/lib/wit/builtin/jco-node-0.1.0/dgram.wit +142 -0
  242. package/lib/wit/builtin/jco-node-0.1.0/dns.wit +145 -0
  243. package/lib/wit/builtin/jco-node-0.1.0/ffi.wit +116 -0
  244. package/lib/wit/builtin/jco-node-0.1.0/fs.wit +208 -0
  245. package/lib/wit/builtin/jco-node-0.1.0/http.wit +151 -0
  246. package/lib/wit/builtin/jco-node-0.1.0/http2.wit +190 -0
  247. package/lib/wit/builtin/jco-node-0.1.0/inspector.wit +142 -0
  248. package/lib/wit/builtin/jco-node-0.1.0/os.wit +120 -0
  249. package/lib/wit/builtin/jco-node-0.1.0/process.wit +245 -0
  250. package/lib/wit/builtin/jco-node-0.1.0/sqlite.wit +154 -0
  251. package/lib/wit/builtin/jco-node-0.1.0/tls.wit +108 -0
  252. package/lib/wit/builtin/jco-node-0.1.0/trace-events.wit +27 -0
  253. package/lib/wit/builtin/jco-node-0.1.0/tty.wit +59 -0
  254. package/lib/wit/builtin/jco-node-0.1.0/types.wit +12 -0
  255. package/lib/wit/builtin/jco-node-0.1.0/v8.wit +102 -0
  256. package/lib/wit/builtin/jco-node-0.1.0/wasi.wit +57 -0
  257. package/lib/wit/builtin/jco-node-0.1.0/worker-threads.wit +67 -0
  258. package/lib/wit/builtin/jco-node-0.1.0/zlib.wit +77 -0
  259. package/lib/wit/builtin/wasi-tls-0.2.0-draft/LICENSE.md +8 -0
  260. package/lib/wit/builtin/wasi-tls-0.2.0-draft/README.md +25 -0
  261. package/lib/wit/builtin/wasi-tls-0.2.0-draft/deps/io/package.wit +66 -0
  262. package/lib/wit/builtin/wasi-tls-0.2.0-draft/types.wit +27 -0
  263. package/lib/wit/builtin/wasi-tls-0.2.0-draft/world.wit +8 -0
  264. package/package.json +9 -5
@@ -0,0 +1 @@
1
+ {"version":3,"file":"console.d.ts","sourceRoot":"","sources":["../../src/node-builtins/console.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,cAAc,EAAsB,MAAM,aAAa,CAAC;AAsC3F,wBAAgB,oBAAoB,CAAC,EAAE,OAAO,EAAE,EAAE,cAAc,GAAG,cAAc,CAMhF"}
@@ -0,0 +1,39 @@
1
+ import { builtin, stdModule } from "./shared.js";
2
+ import { CONSOLE_WIT_REQUIREMENT } from "../node-wit.js";
3
+ const CONSOLE_SPECIFIER = "node:console";
4
+ /** Source of the `node:console` ESM facade. */
5
+ function consoleAdapter(consoleModule) {
6
+ return `
7
+ import console from ${JSON.stringify(consoleModule)};
8
+ export default console;
9
+ export {
10
+ Console,
11
+ assert,
12
+ clear,
13
+ count,
14
+ countReset,
15
+ debug,
16
+ dir,
17
+ dirxml,
18
+ error,
19
+ group,
20
+ groupCollapsed,
21
+ groupEnd,
22
+ info,
23
+ log,
24
+ profile,
25
+ profileEnd,
26
+ table,
27
+ time,
28
+ timeEnd,
29
+ timeLog,
30
+ timeStamp,
31
+ trace,
32
+ warn,
33
+ } from ${JSON.stringify(consoleModule)};
34
+ `;
35
+ }
36
+ export function createConsoleBuiltin({ options }) {
37
+ return builtin(CONSOLE_SPECIFIER, () => consoleAdapter(stdModule(options.consoleModule, "console")), () => options.onWitRequirement?.(CONSOLE_WIT_REQUIREMENT));
38
+ }
39
+ //# sourceMappingURL=console.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"console.js","sourceRoot":"","sources":["../../src/node-builtins/console.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC3F,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAEzD,MAAM,iBAAiB,GAAG,cAAc,CAAC;AAEzC,+CAA+C;AAC/C,SAAS,cAAc,CAAC,aAAqB;IACzC,OAAO;sBACW,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;SA0B1C,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC;CACrC,CAAC;AACF,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,EAAE,OAAO,EAAkB;IAC5D,OAAO,OAAO,CACV,iBAAiB,EACjB,GAAG,EAAE,CAAC,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC,EACjE,GAAG,EAAE,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC,uBAAuB,CAAC,CAC5D,CAAC;AACN,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { type BuiltinContext, type BuiltinAdapter } from "./shared.js";
2
+ export declare function createCryptoBuiltin({ options }: BuiltinContext): BuiltinAdapter;
3
+ //# sourceMappingURL=crypto.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"crypto.d.ts","sourceRoot":"","sources":["../../src/node-builtins/crypto.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,cAAc,EAA2C,MAAM,aAAa,CAAC;AAEhH,wBAAgB,mBAAmB,CAAC,EAAE,OAAO,EAAE,EAAE,cAAc,GAAG,cAAc,CAI/E"}
@@ -0,0 +1,5 @@
1
+ import { builtin, stdModule, starReexportAdapter } from "./shared.js";
2
+ export function createCryptoBuiltin({ options }) {
3
+ return builtin("node:crypto", () => starReexportAdapter(stdModule(options.cryptoModule, "crypto"), "implementation"));
4
+ }
5
+ //# sourceMappingURL=crypto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"crypto.js","sourceRoot":"","sources":["../../src/node-builtins/crypto.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4C,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAEhH,MAAM,UAAU,mBAAmB,CAAC,EAAE,OAAO,EAAkB;IAC3D,OAAO,OAAO,CAAC,aAAa,EAAE,GAAG,EAAE,CAC/B,mBAAmB,CAAC,SAAS,CAAC,OAAO,CAAC,YAAY,EAAE,QAAQ,CAAC,EAAE,gBAAgB,CAAC,CACnF,CAAC;AACN,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { type BuiltinContext, type BuiltinAdapter } from "./shared.js";
2
+ export declare const DGRAM_CALLBACKS_SPECIFIER = "jco:node-dgram-callbacks";
3
+ export declare function createDgramBuiltin({ options }: BuiltinContext): BuiltinAdapter;
4
+ //# sourceMappingURL=dgram.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dgram.d.ts","sourceRoot":"","sources":["../../src/node-builtins/dgram.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,KAAK,cAAc,EACnB,KAAK,cAAc,EAMtB,MAAM,aAAa,CAAC;AAGrB,eAAO,MAAM,yBAAyB,6BAA6B,CAAC;AAEpE,wBAAgB,kBAAkB,CAAC,EAAE,OAAO,EAAE,EAAE,cAAc,GAAG,cAAc,CAgB9E"}
@@ -0,0 +1,13 @@
1
+ import { builtin, composeBuiltins, stdModule, virtualBuiltin, VIRTUAL_PREFIX, } from "./shared.js";
2
+ import { DGRAM_WIT_REQUIREMENT } from "../node-wit.js";
3
+ export const DGRAM_CALLBACKS_SPECIFIER = "jco:node-dgram-callbacks";
4
+ export function createDgramBuiltin({ options }) {
5
+ return composeBuiltins([
6
+ builtin("node:dgram", () => {
7
+ const module = JSON.stringify(stdModule(options.dgramModule, "dgram"));
8
+ return `export { default, Socket, createSocket, _createSocketHandle } from ${module};`;
9
+ }, () => options.onWitRequirement?.(DGRAM_WIT_REQUIREMENT)),
10
+ virtualBuiltin(DGRAM_CALLBACKS_SPECIFIER, `${VIRTUAL_PREFIX}dgram-callbacks`, () => `export { dgramCallbacks } from ${JSON.stringify(stdModule(options.dgramModule, "dgram"))};`),
11
+ ]);
12
+ }
13
+ //# sourceMappingURL=dgram.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dgram.js","sourceRoot":"","sources":["../../src/node-builtins/dgram.ts"],"names":[],"mappings":"AAAA,OAAO,EAGH,OAAO,EACP,eAAe,EACf,SAAS,EACT,cAAc,EACd,cAAc,GACjB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAEvD,MAAM,CAAC,MAAM,yBAAyB,GAAG,0BAA0B,CAAC;AAEpE,MAAM,UAAU,kBAAkB,CAAC,EAAE,OAAO,EAAkB;IAC1D,OAAO,eAAe,CAAC;QACnB,OAAO,CACH,YAAY,EACZ,GAAG,EAAE;YACD,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC;YACvE,OAAO,sEAAsE,MAAM,GAAG,CAAC;QAC3F,CAAC,EACD,GAAG,EAAE,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC,qBAAqB,CAAC,CAC1D;QACD,cAAc,CACV,yBAAyB,EACzB,GAAG,cAAc,iBAAiB,EAClC,GAAG,EAAE,CAAC,kCAAkC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,GAAG,CACrG;KACJ,CAAC,CAAC;AACP,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { type BuiltinContext, type BuiltinAdapter } from "./shared.js";
2
+ export declare function createDiagnosticsChannelBuiltin({ options }: BuiltinContext): BuiltinAdapter;
3
+ //# sourceMappingURL=diagnostics-channel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diagnostics-channel.d.ts","sourceRoot":"","sources":["../../src/node-builtins/diagnostics-channel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,cAAc,EAAsB,MAAM,aAAa,CAAC;AAyB3F,wBAAgB,+BAA+B,CAAC,EAAE,OAAO,EAAE,EAAE,cAAc,GAAG,cAAc,CAI3F"}
@@ -0,0 +1,26 @@
1
+ import { builtin, stdModule } from "./shared.js";
2
+ const DIAGNOSTICS_CHANNEL_SPECIFIER = "node:diagnostics_channel";
3
+ /**
4
+ * Source of the `node:diagnostics_channel` adapter.
5
+ *
6
+ * Capability-free: in-process publish/subscribe with no host involvement.
7
+ */
8
+ function diagnosticsChannelAdapter(diagnosticsChannelModule) {
9
+ return `
10
+ import diagnosticsChannel from ${JSON.stringify(diagnosticsChannelModule)};
11
+ export default diagnosticsChannel;
12
+ export {
13
+ Channel,
14
+ TracingChannel,
15
+ channel,
16
+ hasSubscribers,
17
+ subscribe,
18
+ tracingChannel,
19
+ unsubscribe,
20
+ } from ${JSON.stringify(diagnosticsChannelModule)};
21
+ `;
22
+ }
23
+ export function createDiagnosticsChannelBuiltin({ options }) {
24
+ return builtin(DIAGNOSTICS_CHANNEL_SPECIFIER, () => diagnosticsChannelAdapter(stdModule(options.diagnosticsChannelModule, "diagnostics-channel")));
25
+ }
26
+ //# sourceMappingURL=diagnostics-channel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diagnostics-channel.js","sourceRoot":"","sources":["../../src/node-builtins/diagnostics-channel.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE3F,MAAM,6BAA6B,GAAG,0BAA0B,CAAC;AAEjE;;;;GAIG;AACH,SAAS,yBAAyB,CAAC,wBAAgC;IAC/D,OAAO;iCACsB,IAAI,CAAC,SAAS,CAAC,wBAAwB,CAAC;;;;;;;;;;SAUhE,IAAI,CAAC,SAAS,CAAC,wBAAwB,CAAC;CAChD,CAAC;AACF,CAAC;AAED,MAAM,UAAU,+BAA+B,CAAC,EAAE,OAAO,EAAkB;IACvE,OAAO,OAAO,CAAC,6BAA6B,EAAE,GAAG,EAAE,CAC/C,yBAAyB,CAAC,SAAS,CAAC,OAAO,CAAC,wBAAwB,EAAE,qBAAqB,CAAC,CAAC,CAChG,CAAC;AACN,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { type BuiltinContext, type BuiltinAdapter } from "./shared.js";
2
+ export declare function createDnsBuiltin({ options }: BuiltinContext): BuiltinAdapter;
3
+ //# sourceMappingURL=dns.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dns.d.ts","sourceRoot":"","sources":["../../src/node-builtins/dns.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,cAAc,EAAE,KAAK,cAAc,EAAsB,MAAM,aAAa,CAAC;AAShH,wBAAgB,gBAAgB,CAAC,EAAE,OAAO,EAAE,EAAE,cAAc,GAAG,cAAc,CAc5E"}
@@ -0,0 +1,12 @@
1
+ import { starReexportAdapter, builtin, stdModule } from "./shared.js";
2
+ import { DNS_PROMISES_WIT_REQUIREMENT, DNS_WIT_REQUIREMENT } from "../node-wit.js";
3
+ const DNS_SPECIFIERS = new Set(["node:dns", "node:dns/promises"]);
4
+ function dnsAdapter(dnsModule) {
5
+ return starReexportAdapter(dnsModule, "dns");
6
+ }
7
+ export function createDnsBuiltin({ options }) {
8
+ return builtin(DNS_SPECIFIERS, (specifier) => dnsAdapter(specifier === "node:dns/promises"
9
+ ? stdModule(options.dnsPromisesModule, "dns/promises")
10
+ : stdModule(options.dnsModule, "dns")), (specifier) => options.onWitRequirement?.(specifier === "node:dns/promises" ? DNS_PROMISES_WIT_REQUIREMENT : DNS_WIT_REQUIREMENT));
11
+ }
12
+ //# sourceMappingURL=dns.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dns.js","sourceRoot":"","sources":["../../src/node-builtins/dns.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAA4C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAChH,OAAO,EAAE,4BAA4B,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAEnF,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,CAAC,UAAU,EAAE,mBAAmB,CAAC,CAAC,CAAC;AAElE,SAAS,UAAU,CAAC,SAAiB;IACjC,OAAO,mBAAmB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;AACjD,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,EAAE,OAAO,EAAkB;IACxD,OAAO,OAAO,CACV,cAAc,EACd,CAAC,SAAS,EAAE,EAAE,CACV,UAAU,CACN,SAAS,KAAK,mBAAmB;QAC7B,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,iBAAiB,EAAE,cAAc,CAAC;QACtD,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,CAC5C,EACL,CAAC,SAAS,EAAE,EAAE,CACV,OAAO,CAAC,gBAAgB,EAAE,CACtB,SAAS,KAAK,mBAAmB,CAAC,CAAC,CAAC,4BAA4B,CAAC,CAAC,CAAC,mBAAmB,CACzF,CACR,CAAC;AACN,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { type BuiltinContext, type BuiltinAdapter } from "./shared.js";
2
+ export declare function createDomainBuiltin({ options }: BuiltinContext): BuiltinAdapter;
3
+ //# sourceMappingURL=domain.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"domain.d.ts","sourceRoot":"","sources":["../../src/node-builtins/domain.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,cAAc,EAAsB,MAAM,aAAa,CAAC;AAkB3F,wBAAgB,mBAAmB,CAAC,EAAE,OAAO,EAAE,EAAE,cAAc,GAAG,cAAc,CAE/E"}
@@ -0,0 +1,19 @@
1
+ import { builtin, stdModule } from "./shared.js";
2
+ const DOMAIN_SPECIFIER = "node:domain";
3
+ /**
4
+ * Source of the `node:domain` adapter.
5
+ *
6
+ * Resolves so the failure can explain itself: `node:domain` is deprecated upstream and every use
7
+ * throws. Leaving it unresolved would fail the build with an unrelated-sounding message.
8
+ */
9
+ function domainAdapter(domainModule) {
10
+ return `
11
+ import domain from ${JSON.stringify(domainModule)};
12
+ export default domain;
13
+ export { Domain, create, createDomain } from ${JSON.stringify(domainModule)};
14
+ `;
15
+ }
16
+ export function createDomainBuiltin({ options }) {
17
+ return builtin(DOMAIN_SPECIFIER, () => domainAdapter(stdModule(options.domainModule, "domain")));
18
+ }
19
+ //# sourceMappingURL=domain.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"domain.js","sourceRoot":"","sources":["../../src/node-builtins/domain.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE3F,MAAM,gBAAgB,GAAG,aAAa,CAAC;AAEvC;;;;;GAKG;AACH,SAAS,aAAa,CAAC,YAAoB;IACvC,OAAO;qBACU,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;;+CAEF,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;CAC1E,CAAC;AACF,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,EAAE,OAAO,EAAkB;IAC3D,OAAO,OAAO,CAAC,gBAAgB,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,SAAS,CAAC,OAAO,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;AACrG,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { type BuiltinContext, type BuiltinAdapter } from "./shared.js";
2
+ export declare function createEventsBuiltin({ options }: BuiltinContext): BuiltinAdapter;
3
+ //# sourceMappingURL=events.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/node-builtins/events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,cAAc,EAAsB,MAAM,aAAa,CAAC;AAsC3F,wBAAgB,mBAAmB,CAAC,EAAE,OAAO,EAAE,EAAE,cAAc,GAAG,cAAc,CAI/E"}
@@ -0,0 +1,39 @@
1
+ import { builtin, stdModule } from "./shared.js";
2
+ import { unenvModule } from "./unenv.js";
3
+ const EVENTS_SPECIFIER = "node:events";
4
+ /**
5
+ * Source of the `node:events` adapter.
6
+ *
7
+ * unenv's `EventEmitter` is faithful to Node and is reused whole, including `once`, `on`,
8
+ * `getEventListeners`, `addAbortListener` and `EventEmitterAsyncResource`. Three module-level
9
+ * functions are not: `listenerCount` and `setMaxListeners` are `notImplemented` stubs that throw
10
+ * when called, and `getMaxListeners` throws when handed an `EventTarget`. jco-std implements those
11
+ * three against the core, so guests get a complete module rather than one that fails at runtime.
12
+ *
13
+ * @param eventsCoreModule - unenv's `node:events`, supplying `EventEmitter`
14
+ * @param eventsModule - jco-std's `completeEvents`
15
+ */
16
+ function eventsAdapter(eventsCoreModule, eventsModule) {
17
+ return `
18
+ import { completeEvents } from ${JSON.stringify(eventsModule)};
19
+ import events from ${JSON.stringify(eventsCoreModule)};
20
+ export * from ${JSON.stringify(eventsCoreModule)};
21
+ const completed = completeEvents(events);
22
+ // Explicit exports shadow the star re-export above, replacing the stubs with the real thing.
23
+ export const getMaxListeners = completed.getMaxListeners;
24
+ export const listenerCount = completed.listenerCount;
25
+ export const setMaxListeners = completed.setMaxListeners;
26
+ // Node's module object *is* the EventEmitter class, so \`events === events.EventEmitter\` holds and
27
+ // every module export is also a static. Anything reaching these through the class -- or through a
28
+ // captured default export -- has to see the completed versions too. Defined rather than assigned:
29
+ // unenv exposes \`getMaxListeners\` as a getter-only accessor, so assigning to it throws.
30
+ for (const [name, value] of Object.entries(completed)) {
31
+ Object.defineProperty(events, name, { configurable: true, value, writable: true });
32
+ }
33
+ export default events;
34
+ `;
35
+ }
36
+ export function createEventsBuiltin({ options }) {
37
+ return builtin(EVENTS_SPECIFIER, () => eventsAdapter(unenvModule(EVENTS_SPECIFIER, options), stdModule(options.eventsModule, "events")));
38
+ }
39
+ //# sourceMappingURL=events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/node-builtins/events.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC3F,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzC,MAAM,gBAAgB,GAAG,aAAa,CAAC;AAEvC;;;;;;;;;;;GAWG;AACH,SAAS,aAAa,CAAC,gBAAwB,EAAE,YAAoB;IACjE,OAAO;iCACsB,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;qBACxC,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC;gBACrC,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC;;;;;;;;;;;;;;CAc/C,CAAC;AACF,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,EAAE,OAAO,EAAkB;IAC3D,OAAO,OAAO,CAAC,gBAAgB,EAAE,GAAG,EAAE,CAClC,aAAa,CAAC,WAAW,CAAC,gBAAgB,EAAE,OAAO,CAAC,EAAE,SAAS,CAAC,OAAO,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC,CACnG,CAAC;AACN,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { type BuiltinContext, type BuiltinAdapter } from "./shared.js";
2
+ export declare function createFfiBuiltin({ options }: BuiltinContext): BuiltinAdapter;
3
+ //# sourceMappingURL=ffi.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ffi.d.ts","sourceRoot":"","sources":["../../src/node-builtins/ffi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,cAAc,EAAsB,MAAM,aAAa,CAAC;AA0D3F,wBAAgB,gBAAgB,CAAC,EAAE,OAAO,EAAE,EAAE,cAAc,GAAG,cAAc,CAM5E"}
@@ -0,0 +1,59 @@
1
+ import { builtin, stdModule } from "./shared.js";
2
+ import { FFI_WIT_REQUIREMENT } from "../node-wit.js";
3
+ const FFI_SPECIFIER = "node:ffi";
4
+ /**
5
+ * Source of the `node:ffi` adapter.
6
+ *
7
+ * Host-backed, like `node:child_process`: WASI has no dynamic loader and a component has no host
8
+ * address space, so the jco-std module imports the WIT interface itself and this adapter only has
9
+ * to re-export Node's module shape.
10
+ *
11
+ * Note the module this resolves to lives under `node/26.x.x`: `node:ffi` does not exist in Node 24.
12
+ */
13
+ function ffiAdapter(ffiModule) {
14
+ return `
15
+ import ffi from ${JSON.stringify(ffiModule)};
16
+ export default ffi;
17
+ export {
18
+ DynamicLibrary,
19
+ dlclose,
20
+ dlopen,
21
+ dlsym,
22
+ exportArrayBuffer,
23
+ exportArrayBufferView,
24
+ exportBuffer,
25
+ exportString,
26
+ getCurrentEventLoop,
27
+ getFloat32,
28
+ getFloat64,
29
+ getInt16,
30
+ getInt32,
31
+ getInt64,
32
+ getInt8,
33
+ getRawPointer,
34
+ getUint16,
35
+ getUint32,
36
+ getUint64,
37
+ getUint8,
38
+ setFloat32,
39
+ setFloat64,
40
+ setInt16,
41
+ setInt32,
42
+ setInt64,
43
+ setInt8,
44
+ setUint16,
45
+ setUint32,
46
+ setUint64,
47
+ setUint8,
48
+ suffix,
49
+ toArrayBuffer,
50
+ toBuffer,
51
+ toString,
52
+ types,
53
+ } from ${JSON.stringify(ffiModule)};
54
+ `;
55
+ }
56
+ export function createFfiBuiltin({ options }) {
57
+ return builtin(FFI_SPECIFIER, () => ffiAdapter(stdModule(options.ffiModule, "ffi", "26.x.x")), () => options.onWitRequirement?.(FFI_WIT_REQUIREMENT));
58
+ }
59
+ //# sourceMappingURL=ffi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ffi.js","sourceRoot":"","sources":["../../src/node-builtins/ffi.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC3F,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAErD,MAAM,aAAa,GAAG,UAAU,CAAC;AAEjC;;;;;;;;GAQG;AACH,SAAS,UAAU,CAAC,SAAiB;IACjC,OAAO;kBACO,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SAsClC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC;CACjC,CAAC;AACF,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,EAAE,OAAO,EAAkB;IACxD,OAAO,OAAO,CACV,aAAa,EACb,GAAG,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,EAC/D,GAAG,EAAE,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC,mBAAmB,CAAC,CACxD,CAAC;AACN,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { type BuiltinContext, type BuiltinAdapter } from "./shared.js";
2
+ export declare function createFsBuiltin({ options }: BuiltinContext): BuiltinAdapter;
3
+ //# sourceMappingURL=fs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fs.d.ts","sourceRoot":"","sources":["../../src/node-builtins/fs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,cAAc,EAAsB,MAAM,aAAa,CAAC;AAe3F,wBAAgB,eAAe,CAAC,EAAE,OAAO,EAAE,EAAE,cAAc,GAAG,cAAc,CAO3E"}
@@ -0,0 +1,16 @@
1
+ import { builtin, stdModule } from "./shared.js";
2
+ import { FS_WIT_REQUIREMENT } from "../node-wit.js";
3
+ const FS_SPECIFIERS = new Set(["node:fs", "node:fs/promises"]);
4
+ /** Source of the `node:fs` and `node:fs/promises` ESM facades. */
5
+ function fsAdapter(specifier, fsModule, fsPromisesModule) {
6
+ const module = specifier === "node:fs" ? fsModule : fsPromisesModule;
7
+ return `
8
+ import fs from ${JSON.stringify(module)};
9
+ export * from ${JSON.stringify(module)};
10
+ export default fs;
11
+ `;
12
+ }
13
+ export function createFsBuiltin({ options }) {
14
+ return builtin(FS_SPECIFIERS, (specifier) => fsAdapter(specifier, stdModule(options.fsModule, "fs"), stdModule(options.fsPromisesModule, "fs/promises")), () => options.onWitRequirement?.(FS_WIT_REQUIREMENT));
15
+ }
16
+ //# sourceMappingURL=fs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fs.js","sourceRoot":"","sources":["../../src/node-builtins/fs.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC3F,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEpD,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,CAAC,SAAS,EAAE,kBAAkB,CAAC,CAAC,CAAC;AAE/D,kEAAkE;AAClE,SAAS,SAAS,CAAC,SAAiB,EAAE,QAAgB,EAAE,gBAAwB;IAC5E,MAAM,MAAM,GAAG,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC;IACrE,OAAO;iBACM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;gBACvB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;;CAErC,CAAC;AACF,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,EAAE,OAAO,EAAkB;IACvD,OAAO,OAAO,CACV,aAAa,EACb,CAAC,SAAS,EAAE,EAAE,CACV,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,SAAS,CAAC,OAAO,CAAC,gBAAgB,EAAE,aAAa,CAAC,CAAC,EAC/G,GAAG,EAAE,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC,kBAAkB,CAAC,CACvD,CAAC;AACN,CAAC"}
@@ -0,0 +1,19 @@
1
+ import { type BuiltinContext, type BuiltinAdapter } from "./shared.js";
2
+ import { type NodeErrorGlobalsOptions, type NodeGlobalsOptions } from "./types.js";
3
+ /**
4
+ * Rolldown injection map for Node's global error constructors.
5
+ *
6
+ * Injection is demand-driven: if source never references one of these globals,
7
+ * Rolldown does not include the errors module in the generated bundle.
8
+ */
9
+ export declare function nodeErrorGlobals(options?: NodeErrorGlobalsOptions): Record<string, [module: string, exportName: string]>;
10
+ /**
11
+ * Rolldown injection map for Node globals backed by Jco implementations.
12
+ *
13
+ * Web globals are supplied by the engine; Abort globals have a compatibility adapter
14
+ * for engines with the legacy variadic AbortSignal.any implementation.
15
+ * Rolldown includes these adapters only when their free identifiers survive bundling.
16
+ */
17
+ export declare function nodeGlobals(options?: NodeGlobalsOptions): Record<string, [module: string, exportName: string]>;
18
+ export declare function createGlobalsBuiltin({ options }: BuiltinContext): BuiltinAdapter;
19
+ //# sourceMappingURL=globals.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"globals.d.ts","sourceRoot":"","sources":["../../src/node-builtins/globals.ts"],"names":[],"mappings":"AACA,OAAO,EAEH,KAAK,cAAc,EACnB,KAAK,cAAc,EAKtB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,KAAK,uBAAuB,EAAE,KAAK,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAuBnF;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC5B,OAAO,GAAE,uBAA4B,GACtC,MAAM,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC,CAGtD;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,OAAO,GAAE,kBAAuB,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC,CAUlH;AAED,wBAAgB,oBAAoB,CAAC,EAAE,OAAO,EAAE,EAAE,cAAc,GAAG,cAAc,CAkBhF"}
@@ -0,0 +1,56 @@
1
+ import { unenvModule } from "./unenv.js";
2
+ import { VIRTUAL_PREFIX, composeBuiltins, virtualBuiltin, stdModule, starReexportAdapter, } from "./shared.js";
3
+ const ABORT_GLOBALS_SPECIFIER = "jco:node-abort-globals";
4
+ const ABORT_GLOBALS_MODULE = `${VIRTUAL_PREFIX}abort-globals`;
5
+ const ERROR_GLOBALS_SPECIFIER = "jco:node-error-globals";
6
+ const ERROR_GLOBALS_MODULE = `${VIRTUAL_PREFIX}error-globals`;
7
+ const NODE_ERROR_GLOBAL_NAMES = [
8
+ "AggregateError",
9
+ "DOMException",
10
+ "Error",
11
+ "EvalError",
12
+ "RangeError",
13
+ "ReferenceError",
14
+ "SuppressedError",
15
+ "SyntaxError",
16
+ "TypeError",
17
+ "URIError",
18
+ ];
19
+ /**
20
+ * Rolldown injection map for Node's global error constructors.
21
+ *
22
+ * Injection is demand-driven: if source never references one of these globals,
23
+ * Rolldown does not include the errors module in the generated bundle.
24
+ */
25
+ export function nodeErrorGlobals(options = {}) {
26
+ const errorsModule = options.errorsModule ?? ERROR_GLOBALS_SPECIFIER;
27
+ return Object.fromEntries(NODE_ERROR_GLOBAL_NAMES.map((name) => [name, [errorsModule, name]]));
28
+ }
29
+ /**
30
+ * Rolldown injection map for Node globals backed by Jco implementations.
31
+ *
32
+ * Web globals are supplied by the engine; Abort globals have a compatibility adapter
33
+ * for engines with the legacy variadic AbortSignal.any implementation.
34
+ * Rolldown includes these adapters only when their free identifiers survive bundling.
35
+ */
36
+ export function nodeGlobals(options = {}) {
37
+ return {
38
+ ...nodeErrorGlobals(options),
39
+ AbortController: [options.abortGlobalsModule ?? ABORT_GLOBALS_SPECIFIER, "AbortController"],
40
+ AbortSignal: [options.abortGlobalsModule ?? ABORT_GLOBALS_SPECIFIER, "AbortSignal"],
41
+ Buffer: [options.bufferModule ?? "node:buffer", "Buffer"],
42
+ process: [options.processModule ?? "jco:node-process-globals", "default"],
43
+ setImmediate: [options.timersModule ?? "node:timers", "setImmediate"],
44
+ clearImmediate: [options.timersModule ?? "node:timers", "clearImmediate"],
45
+ };
46
+ }
47
+ export function createGlobalsBuiltin({ options }) {
48
+ return composeBuiltins([
49
+ // Dependency initialization cannot call host-backed node:process during Wizer.
50
+ // Keep this portable global distinct from explicit imports of that API.
51
+ virtualBuiltin("jco:node-process-globals", `${VIRTUAL_PREFIX}process-globals`, () => starReexportAdapter(unenvModule("node:process", options), "process")),
52
+ virtualBuiltin(ABORT_GLOBALS_SPECIFIER, ABORT_GLOBALS_MODULE, () => `export * from ${JSON.stringify(stdModule(options.abortGlobalsModule, "abort-globals"))};`),
53
+ virtualBuiltin(ERROR_GLOBALS_SPECIFIER, ERROR_GLOBALS_MODULE, () => `export * from ${JSON.stringify(stdModule(options.errorsModule, "errors"))};`),
54
+ ]);
55
+ }
56
+ //# sourceMappingURL=globals.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"globals.js","sourceRoot":"","sources":["../../src/node-builtins/globals.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EACH,cAAc,EAGd,eAAe,EACf,cAAc,EACd,SAAS,EACT,mBAAmB,GACtB,MAAM,aAAa,CAAC;AAGrB,MAAM,uBAAuB,GAAG,wBAAwB,CAAC;AAEzD,MAAM,oBAAoB,GAAG,GAAG,cAAc,eAAe,CAAC;AAE9D,MAAM,uBAAuB,GAAG,wBAAwB,CAAC;AAEzD,MAAM,oBAAoB,GAAG,GAAG,cAAc,eAAe,CAAC;AAE9D,MAAM,uBAAuB,GAAG;IAC5B,gBAAgB;IAChB,cAAc;IACd,OAAO;IACP,WAAW;IACX,YAAY;IACZ,gBAAgB;IAChB,iBAAiB;IACjB,aAAa;IACb,WAAW;IACX,UAAU;CACJ,CAAC;AAEX;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAC5B,OAAO,GAA4B,EAAE;IAErC,MAAM,YAAY,GAAG,OAAO,CAAC,YAAY,IAAI,uBAAuB,CAAC;IACrE,OAAO,MAAM,CAAC,WAAW,CAAC,uBAAuB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AACnG,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CAAC,OAAO,GAAuB,EAAE;IACxD,OAAO;QACH,GAAG,gBAAgB,CAAC,OAAO,CAAC;QAC5B,eAAe,EAAE,CAAC,OAAO,CAAC,kBAAkB,IAAI,uBAAuB,EAAE,iBAAiB,CAAC;QAC3F,WAAW,EAAE,CAAC,OAAO,CAAC,kBAAkB,IAAI,uBAAuB,EAAE,aAAa,CAAC;QACnF,MAAM,EAAE,CAAC,OAAO,CAAC,YAAY,IAAI,aAAa,EAAE,QAAQ,CAAC;QACzD,OAAO,EAAE,CAAC,OAAO,CAAC,aAAa,IAAI,0BAA0B,EAAE,SAAS,CAAC;QACzE,YAAY,EAAE,CAAC,OAAO,CAAC,YAAY,IAAI,aAAa,EAAE,cAAc,CAAC;QACrE,cAAc,EAAE,CAAC,OAAO,CAAC,YAAY,IAAI,aAAa,EAAE,gBAAgB,CAAC;KAC5E,CAAC;AACN,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,EAAE,OAAO,EAAkB;IAC5D,OAAO,eAAe,CAAC;QACnB,+EAA+E;QAC/E,wEAAwE;QACxE,cAAc,CAAC,0BAA0B,EAAE,GAAG,cAAc,iBAAiB,EAAE,GAAG,EAAE,CAChF,mBAAmB,CAAC,WAAW,CAAC,cAAc,EAAE,OAAO,CAAC,EAAE,SAAS,CAAC,CACvE;QACD,cAAc,CACV,uBAAuB,EACvB,oBAAoB,EACpB,GAAG,EAAE,CAAC,iBAAiB,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC,kBAAkB,EAAE,eAAe,CAAC,CAAC,GAAG,CACnG;QACD,cAAc,CACV,uBAAuB,EACvB,oBAAoB,EACpB,GAAG,EAAE,CAAC,iBAAiB,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC,GAAG,CACtF;KACJ,CAAC,CAAC;AACP,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { type BuiltinContext, type BuiltinAdapter } from "./shared.js";
2
+ /** The two protocol modules share one core, one implementation set, and one host interface. */
3
+ type HttpProtocol = "http" | "https";
4
+ export declare function createProtocolBuiltin({ options, worldMetadata }: BuiltinContext, protocol: HttpProtocol): BuiltinAdapter;
5
+ export {};
6
+ //# sourceMappingURL=http-common.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"http-common.d.ts","sourceRoot":"","sources":["../../src/node-builtins/http-common.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,cAAc,EAAsB,MAAM,aAAa,CAAC;AA6B3F,+FAA+F;AAC/F,KAAK,YAAY,GAAG,MAAM,GAAG,OAAO,CAAC;AA4ErC,wBAAgB,qBAAqB,CACjC,EAAE,OAAO,EAAE,aAAa,EAAE,EAAE,cAAc,EAC1C,QAAQ,EAAE,YAAY,GACvB,cAAc,CA6ChB"}
@@ -0,0 +1,111 @@
1
+ import { wasiSocketsProviderSource, requireWasiHttpVersion } from "./wasi-sockets.js";
2
+ import { HTTPS_WIT_REQUIREMENT, TLS_WIT_REQUIREMENT, HTTP_WIT_REQUIREMENT, HTTPS_WASI_SOCKETS_WIT_REQUIREMENTS, HTTP_WASI_SOCKETS_WIT_REQUIREMENTS, HTTPS_WASI_SOCKETS_0_2_10_WIT_REQUIREMENTS, HTTP_WASI_SOCKETS_0_2_10_WIT_REQUIREMENTS, HTTPS_WASI_HTTP_WIT_REQUIREMENTS, HTTP_WASI_HTTP_WIT_REQUIREMENTS, } from "../node-wit.js";
3
+ import { builtin, stdModule } from "./shared.js";
4
+ const HTTP_EXPORTS = [
5
+ "Agent",
6
+ "ClientRequest",
7
+ "CloseEvent",
8
+ "IncomingMessage",
9
+ "METHODS",
10
+ "MessageEvent",
11
+ "OutgoingMessage",
12
+ "STATUS_CODES",
13
+ "Server",
14
+ "ServerResponse",
15
+ "WebSocket",
16
+ "_connectionListener",
17
+ "createServer",
18
+ "get",
19
+ "globalAgent",
20
+ "maxHeaderSize",
21
+ "request",
22
+ "setGlobalProxyFromEnv",
23
+ "setMaxIdleHTTPParsers",
24
+ "validateHeaderName",
25
+ "validateHeaderValue",
26
+ ];
27
+ /** `node:https` at the pinned release: six exports, no deprecated members. */
28
+ const HTTPS_EXPORTS = ["Agent", "Server", "createServer", "get", "globalAgent", "request"];
29
+ const PROTOCOL_EXPORTS = {
30
+ http: HTTP_EXPORTS,
31
+ https: HTTPS_EXPORTS,
32
+ };
33
+ /** Factory exported by the protocol's core module (`createHttp` / `createHttps`). */
34
+ const PROTOCOL_FACTORY = { http: "createHttp", https: "createHttps" };
35
+ function protocolExports(protocol, moduleExpression) {
36
+ return `
37
+ const ${protocol} = ${moduleExpression};
38
+ export default ${protocol};
39
+ export const { ${PROTOCOL_EXPORTS[protocol].join(", ")} } = ${protocol};
40
+ `;
41
+ }
42
+ function protocolDirectAdapter(protocol, entryModule) {
43
+ return `
44
+ import direct from ${JSON.stringify(entryModule)};
45
+ ${protocolExports(protocol, "direct")}
46
+ `;
47
+ }
48
+ function protocolWasiSocketsAdapter(protocol, coreModule, implementationModule, version) {
49
+ const factory = PROTOCOL_FACTORY[protocol];
50
+ const provider = wasiSocketsProviderSource(version);
51
+ const tlsImports = protocol === "https" ? 'import * as tls from "jco:node/tls@0.1.0";' : "";
52
+ const providerValue = protocol === "https" ? `{ ...${provider.value}, tls }` : provider.value;
53
+ return `
54
+ ${provider.imports}
55
+ ${tlsImports}
56
+ import { ${factory} } from ${JSON.stringify(coreModule)};
57
+ import { createWasiSocketsHttpImplementation } from ${JSON.stringify(implementationModule)};
58
+ ${protocolExports(protocol, `${factory}(createWasiSocketsHttpImplementation(${providerValue}))`)}
59
+ `;
60
+ }
61
+ function protocolWasiHttpAdapter(protocol, coreModule, implementationModule) {
62
+ const factory = PROTOCOL_FACTORY[protocol];
63
+ return `
64
+ import * as outgoingHandler from "wasi:http/outgoing-handler@0.2.12";
65
+ import * as types from "wasi:http/types@0.2.12";
66
+ import { ${factory} } from ${JSON.stringify(coreModule)};
67
+ import { createWasiHttpImplementation } from ${JSON.stringify(implementationModule)};
68
+ ${protocolExports(protocol, `${factory}(createWasiHttpImplementation({ outgoingHandler, types }))`)}
69
+ `;
70
+ }
71
+ /** WIT requirements for one protocol module under one `--with-nodejs-http-via` selection. */
72
+ function protocolWitRequirements(protocol, via, wasiSocketsVersion) {
73
+ const https = protocol === "https";
74
+ if (via === "direct") {
75
+ return https
76
+ ? [HTTPS_WIT_REQUIREMENT, { ...TLS_WIT_REQUIREMENT, nodeSpecifier: "node:https", guestExports: [] }]
77
+ : [HTTP_WIT_REQUIREMENT];
78
+ }
79
+ if (via === "wasi-sockets") {
80
+ if (wasiSocketsVersion === "0.2.12") {
81
+ return https ? HTTPS_WASI_SOCKETS_WIT_REQUIREMENTS : HTTP_WASI_SOCKETS_WIT_REQUIREMENTS;
82
+ }
83
+ return https ? HTTPS_WASI_SOCKETS_0_2_10_WIT_REQUIREMENTS : HTTP_WASI_SOCKETS_0_2_10_WIT_REQUIREMENTS;
84
+ }
85
+ return https ? HTTPS_WASI_HTTP_WIT_REQUIREMENTS : HTTP_WASI_HTTP_WIT_REQUIREMENTS;
86
+ }
87
+ export function createProtocolBuiltin({ options, worldMetadata }, protocol) {
88
+ const via = options.nodejsHttpVia ?? "direct";
89
+ const socketsVersion = options.wasiSocketsVersion ?? "0.2.12";
90
+ return builtin("node:" + protocol, () => {
91
+ if (via === "direct") {
92
+ return protocolDirectAdapter(protocol, protocol === "http"
93
+ ? stdModule(options.httpModule, "http")
94
+ : stdModule(options.httpsModule, "https"));
95
+ }
96
+ const core = protocol === "http"
97
+ ? stdModule(options.httpCoreModule, "http/core")
98
+ : stdModule(options.httpsCoreModule, "https/core");
99
+ return via === "wasi-sockets"
100
+ ? protocolWasiSocketsAdapter(protocol, core, stdModule(options.httpWasiSocketsImplementationModule, "http/impl/wasi-sockets"), socketsVersion)
101
+ : protocolWasiHttpAdapter(protocol, core, stdModule(options.httpWasiHttpImplementationModule, "http/impl/wasi-http"));
102
+ }, (specifier) => {
103
+ if (via !== "direct") {
104
+ requireWasiHttpVersion(worldMetadata, specifier, via, via === "wasi-sockets" ? socketsVersion : "0.2.12");
105
+ }
106
+ for (const requirement of protocolWitRequirements(protocol, via, socketsVersion)) {
107
+ options.onWitRequirement?.(requirement);
108
+ }
109
+ });
110
+ }
111
+ //# sourceMappingURL=http-common.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"http-common.js","sourceRoot":"","sources":["../../src/node-builtins/http-common.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import { type BuiltinContext, type BuiltinAdapter } from "./shared.js";
2
+ export declare const HTTP_CALLBACKS_SPECIFIER = "jco:node-http-callbacks";
3
+ export declare function createHttpBuiltin(context: BuiltinContext): BuiltinAdapter;
4
+ //# sourceMappingURL=http.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../src/node-builtins/http.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,KAAK,cAAc,EACnB,KAAK,cAAc,EAItB,MAAM,aAAa,CAAC;AAGrB,eAAO,MAAM,wBAAwB,4BAA4B,CAAC;AASlE,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,cAAc,GAAG,cAAc,CAOzE"}
@@ -0,0 +1,15 @@
1
+ import { VIRTUAL_PREFIX, composeBuiltins, virtualBuiltin, stdModule, } from "./shared.js";
2
+ import { createProtocolBuiltin } from "./http-common.js";
3
+ export const HTTP_CALLBACKS_SPECIFIER = "jco:node-http-callbacks";
4
+ const HTTP_CALLBACKS_MODULE = `${VIRTUAL_PREFIX}http-callbacks`;
5
+ /** Source for the guest-exported HTTP callback interface used by the component entry wrapper. */
6
+ function httpCallbacksAdapter(httpModule) {
7
+ return `export { httpCallbacks } from ${JSON.stringify(httpModule)};`;
8
+ }
9
+ export function createHttpBuiltin(context) {
10
+ return composeBuiltins([
11
+ virtualBuiltin(HTTP_CALLBACKS_SPECIFIER, HTTP_CALLBACKS_MODULE, () => httpCallbacksAdapter(stdModule(context.options.httpModule, "http"))),
12
+ createProtocolBuiltin(context, "http"),
13
+ ]);
14
+ }
15
+ //# sourceMappingURL=http.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"http.js","sourceRoot":"","sources":["../../src/node-builtins/http.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,cAAc,EAGd,eAAe,EACf,cAAc,EACd,SAAS,GACZ,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAEzD,MAAM,CAAC,MAAM,wBAAwB,GAAG,yBAAyB,CAAC;AAElE,MAAM,qBAAqB,GAAG,GAAG,cAAc,gBAAgB,CAAC;AAEhE,iGAAiG;AACjG,SAAS,oBAAoB,CAAC,UAAkB;IAC5C,OAAO,iCAAiC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC;AAC1E,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,OAAuB;IACrD,OAAO,eAAe,CAAC;QACnB,cAAc,CAAC,wBAAwB,EAAE,qBAAqB,EAAE,GAAG,EAAE,CACjE,oBAAoB,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CACtE;QACD,qBAAqB,CAAC,OAAO,EAAE,MAAM,CAAC;KACzC,CAAC,CAAC;AACP,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { type BuiltinContext, type BuiltinAdapter } from "./shared.js";
2
+ export declare const HTTP2_CALLBACKS_SPECIFIER = "jco:node-http2-callbacks";
3
+ export declare function createHttp2Builtin({ options, worldMetadata }: BuiltinContext): BuiltinAdapter;
4
+ //# sourceMappingURL=http2.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"http2.d.ts","sourceRoot":"","sources":["../../src/node-builtins/http2.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,KAAK,cAAc,EACnB,KAAK,cAAc,EAKtB,MAAM,aAAa,CAAC;AAYrB,eAAO,MAAM,yBAAyB,6BAA6B,CAAC;AAuDpE,wBAAgB,kBAAkB,CAAC,EAAE,OAAO,EAAE,aAAa,EAAE,EAAE,cAAc,GAAG,cAAc,CAyC7F"}