@bytecodealliance/jco 1.33.0 → 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.
- package/dist/bundle.d.ts.map +1 -1
- package/dist/bundle.js +5 -0
- package/dist/bundle.js.map +1 -1
- package/dist/cmd/componentize.d.ts +10 -1
- package/dist/cmd/componentize.d.ts.map +1 -1
- package/dist/cmd/componentize.js +14 -4
- package/dist/cmd/componentize.js.map +1 -1
- package/dist/cmd/new.js +2 -1
- package/dist/cmd/new.js.map +1 -1
- package/dist/cmd/transpile.d.ts.map +1 -1
- package/dist/cmd/transpile.js +28 -1
- package/dist/cmd/transpile.js.map +1 -1
- package/dist/engine-compat.d.ts +11 -0
- package/dist/engine-compat.d.ts.map +1 -0
- package/dist/engine-compat.js +56 -0
- package/dist/engine-compat.js.map +1 -0
- package/dist/jco.js +6 -2
- package/dist/jco.js.map +1 -1
- package/dist/node-builtins/assert.d.ts +3 -0
- package/dist/node-builtins/assert.d.ts.map +1 -0
- package/dist/node-builtins/assert.js +65 -0
- package/dist/node-builtins/assert.js.map +1 -0
- package/dist/node-builtins/async-hooks.d.ts +3 -0
- package/dist/node-builtins/async-hooks.d.ts.map +1 -0
- package/dist/node-builtins/async-hooks.js +27 -0
- package/dist/node-builtins/async-hooks.js.map +1 -0
- package/dist/node-builtins/buffer.d.ts +4 -0
- package/dist/node-builtins/buffer.d.ts.map +1 -0
- package/dist/node-builtins/buffer.js +87 -0
- package/dist/node-builtins/buffer.js.map +1 -0
- package/dist/node-builtins/child-process.d.ts +3 -0
- package/dist/node-builtins/child-process.d.ts.map +1 -0
- package/dist/node-builtins/child-process.js +23 -0
- package/dist/node-builtins/child-process.js.map +1 -0
- package/dist/node-builtins/cluster.d.ts +3 -0
- package/dist/node-builtins/cluster.d.ts.map +1 -0
- package/dist/node-builtins/cluster.js +28 -0
- package/dist/node-builtins/cluster.js.map +1 -0
- package/dist/node-builtins/console.d.ts +3 -0
- package/dist/node-builtins/console.d.ts.map +1 -0
- package/dist/node-builtins/console.js +39 -0
- package/dist/node-builtins/console.js.map +1 -0
- package/dist/node-builtins/crypto.d.ts +3 -0
- package/dist/node-builtins/crypto.d.ts.map +1 -0
- package/dist/node-builtins/crypto.js +5 -0
- package/dist/node-builtins/crypto.js.map +1 -0
- package/dist/node-builtins/dgram.d.ts +4 -0
- package/dist/node-builtins/dgram.d.ts.map +1 -0
- package/dist/node-builtins/dgram.js +13 -0
- package/dist/node-builtins/dgram.js.map +1 -0
- package/dist/node-builtins/diagnostics-channel.d.ts +3 -0
- package/dist/node-builtins/diagnostics-channel.d.ts.map +1 -0
- package/dist/node-builtins/diagnostics-channel.js +26 -0
- package/dist/node-builtins/diagnostics-channel.js.map +1 -0
- package/dist/node-builtins/dns.d.ts +3 -0
- package/dist/node-builtins/dns.d.ts.map +1 -0
- package/dist/node-builtins/dns.js +12 -0
- package/dist/node-builtins/dns.js.map +1 -0
- package/dist/node-builtins/domain.d.ts +3 -0
- package/dist/node-builtins/domain.d.ts.map +1 -0
- package/dist/node-builtins/domain.js +19 -0
- package/dist/node-builtins/domain.js.map +1 -0
- package/dist/node-builtins/events.d.ts +3 -0
- package/dist/node-builtins/events.d.ts.map +1 -0
- package/dist/node-builtins/events.js +39 -0
- package/dist/node-builtins/events.js.map +1 -0
- package/dist/node-builtins/ffi.d.ts +3 -0
- package/dist/node-builtins/ffi.d.ts.map +1 -0
- package/dist/node-builtins/ffi.js +59 -0
- package/dist/node-builtins/ffi.js.map +1 -0
- package/dist/node-builtins/fs.d.ts +3 -0
- package/dist/node-builtins/fs.d.ts.map +1 -0
- package/dist/node-builtins/fs.js +16 -0
- package/dist/node-builtins/fs.js.map +1 -0
- package/dist/node-builtins/globals.d.ts +19 -0
- package/dist/node-builtins/globals.d.ts.map +1 -0
- package/dist/node-builtins/globals.js +56 -0
- package/dist/node-builtins/globals.js.map +1 -0
- package/dist/node-builtins/http-common.d.ts +6 -0
- package/dist/node-builtins/http-common.d.ts.map +1 -0
- package/dist/node-builtins/http-common.js +111 -0
- package/dist/node-builtins/http-common.js.map +1 -0
- package/dist/node-builtins/http.d.ts +4 -0
- package/dist/node-builtins/http.d.ts.map +1 -0
- package/dist/node-builtins/http.js +15 -0
- package/dist/node-builtins/http.js.map +1 -0
- package/dist/node-builtins/http2.d.ts +4 -0
- package/dist/node-builtins/http2.d.ts.map +1 -0
- package/dist/node-builtins/http2.js +79 -0
- package/dist/node-builtins/http2.js.map +1 -0
- package/dist/node-builtins/https.d.ts +3 -0
- package/dist/node-builtins/https.d.ts.map +1 -0
- package/dist/node-builtins/https.js +5 -0
- package/dist/node-builtins/https.js.map +1 -0
- package/dist/node-builtins/index.d.ts +10 -0
- package/dist/node-builtins/index.d.ts.map +1 -0
- package/dist/node-builtins/index.js +164 -0
- package/dist/node-builtins/index.js.map +1 -0
- package/dist/node-builtins/inspector.d.ts +12 -0
- package/dist/node-builtins/inspector.d.ts.map +1 -0
- package/dist/node-builtins/inspector.js +70 -0
- package/dist/node-builtins/inspector.js.map +1 -0
- package/dist/node-builtins/module.d.ts +3 -0
- package/dist/node-builtins/module.d.ts.map +1 -0
- package/dist/node-builtins/module.js +55 -0
- package/dist/node-builtins/module.js.map +1 -0
- package/dist/node-builtins/net.d.ts +3 -0
- package/dist/node-builtins/net.d.ts.map +1 -0
- package/dist/node-builtins/net.js +46 -0
- package/dist/node-builtins/net.js.map +1 -0
- package/dist/node-builtins/os.d.ts +3 -0
- package/dist/node-builtins/os.d.ts.map +1 -0
- package/dist/node-builtins/os.js +39 -0
- package/dist/node-builtins/os.js.map +1 -0
- package/dist/node-builtins/path.d.ts +3 -0
- package/dist/node-builtins/path.d.ts.map +1 -0
- package/dist/node-builtins/path.js +91 -0
- package/dist/node-builtins/path.js.map +1 -0
- package/dist/node-builtins/perf-hooks.d.ts +3 -0
- package/dist/node-builtins/perf-hooks.d.ts.map +1 -0
- package/dist/node-builtins/perf-hooks.js +12 -0
- package/dist/node-builtins/perf-hooks.js.map +1 -0
- package/dist/node-builtins/process.d.ts +3 -0
- package/dist/node-builtins/process.d.ts.map +1 -0
- package/dist/node-builtins/process.js +9 -0
- package/dist/node-builtins/process.js.map +1 -0
- package/dist/node-builtins/querystring.d.ts +3 -0
- package/dist/node-builtins/querystring.d.ts.map +1 -0
- package/dist/node-builtins/querystring.js +18 -0
- package/dist/node-builtins/querystring.js.map +1 -0
- package/dist/node-builtins/readline.d.ts +3 -0
- package/dist/node-builtins/readline.d.ts.map +1 -0
- package/dist/node-builtins/readline.js +11 -0
- package/dist/node-builtins/readline.js.map +1 -0
- package/dist/node-builtins/repl.d.ts +9 -0
- package/dist/node-builtins/repl.d.ts.map +1 -0
- package/dist/node-builtins/repl.js +12 -0
- package/dist/node-builtins/repl.js.map +1 -0
- package/dist/node-builtins/shared.d.ts +24 -0
- package/dist/node-builtins/shared.d.ts.map +1 -0
- package/dist/node-builtins/shared.js +68 -0
- package/dist/node-builtins/shared.js.map +1 -0
- package/dist/node-builtins/sqlite.d.ts +3 -0
- package/dist/node-builtins/sqlite.d.ts.map +1 -0
- package/dist/node-builtins/sqlite.js +9 -0
- package/dist/node-builtins/sqlite.js.map +1 -0
- package/dist/node-builtins/stream.d.ts +3 -0
- package/dist/node-builtins/stream.d.ts.map +1 -0
- package/dist/node-builtins/stream.js +64 -0
- package/dist/node-builtins/stream.js.map +1 -0
- package/dist/node-builtins/string-decoder.d.ts +3 -0
- package/dist/node-builtins/string-decoder.d.ts.map +1 -0
- package/dist/node-builtins/string-decoder.js +14 -0
- package/dist/node-builtins/string-decoder.js.map +1 -0
- package/dist/node-builtins/test.d.ts +4 -0
- package/dist/node-builtins/test.d.ts.map +1 -0
- package/dist/node-builtins/test.js +8 -0
- package/dist/node-builtins/test.js.map +1 -0
- package/dist/node-builtins/timers.d.ts +4 -0
- package/dist/node-builtins/timers.d.ts.map +1 -0
- package/dist/node-builtins/timers.js +9 -0
- package/dist/node-builtins/timers.js.map +1 -0
- package/dist/node-builtins/tls.d.ts +3 -0
- package/dist/node-builtins/tls.d.ts.map +1 -0
- package/dist/node-builtins/tls.js +10 -0
- package/dist/node-builtins/tls.js.map +1 -0
- package/dist/node-builtins/trace-events.d.ts +3 -0
- package/dist/node-builtins/trace-events.d.ts.map +1 -0
- package/dist/node-builtins/trace-events.js +9 -0
- package/dist/node-builtins/trace-events.js.map +1 -0
- package/dist/node-builtins/tty.d.ts +8 -0
- package/dist/node-builtins/tty.d.ts.map +1 -0
- package/dist/node-builtins/tty.js +12 -0
- package/dist/node-builtins/tty.js.map +1 -0
- package/dist/{node-builtins.d.ts → node-builtins/types.d.ts} +73 -41
- package/dist/node-builtins/types.d.ts.map +1 -0
- package/dist/node-builtins/types.js +2 -0
- package/dist/node-builtins/types.js.map +1 -0
- package/dist/node-builtins/unenv.d.ts +6 -0
- package/dist/node-builtins/unenv.d.ts.map +1 -0
- package/dist/node-builtins/unenv.js +27 -0
- package/dist/node-builtins/unenv.js.map +1 -0
- package/dist/node-builtins/url-pattern.d.ts +8 -0
- package/dist/node-builtins/url-pattern.d.ts.map +1 -0
- package/dist/node-builtins/url-pattern.js +19 -0
- package/dist/node-builtins/url-pattern.js.map +1 -0
- package/dist/node-builtins/url.d.ts +4 -0
- package/dist/node-builtins/url.d.ts.map +1 -0
- package/dist/node-builtins/url.js +100 -0
- package/dist/node-builtins/url.js.map +1 -0
- package/dist/node-builtins/util.d.ts +3 -0
- package/dist/node-builtins/util.d.ts.map +1 -0
- package/dist/node-builtins/util.js +7 -0
- package/dist/node-builtins/util.js.map +1 -0
- package/dist/node-builtins/v8.d.ts +3 -0
- package/dist/node-builtins/v8.d.ts.map +1 -0
- package/dist/node-builtins/v8.js +6 -0
- package/dist/node-builtins/v8.js.map +1 -0
- package/dist/node-builtins/vfs.d.ts +3 -0
- package/dist/node-builtins/vfs.d.ts.map +1 -0
- package/dist/node-builtins/vfs.js +42 -0
- package/dist/node-builtins/vfs.js.map +1 -0
- package/dist/node-builtins/vm.d.ts +4 -0
- package/dist/node-builtins/vm.d.ts.map +1 -0
- package/dist/node-builtins/vm.js +6 -0
- package/dist/node-builtins/vm.js.map +1 -0
- package/dist/node-builtins/wasi-sockets.d.ts +10 -0
- package/dist/node-builtins/wasi-sockets.d.ts.map +1 -0
- package/dist/node-builtins/wasi-sockets.js +25 -0
- package/dist/node-builtins/wasi-sockets.js.map +1 -0
- package/dist/node-builtins/wasi.d.ts +10 -0
- package/dist/node-builtins/wasi.d.ts.map +1 -0
- package/dist/node-builtins/wasi.js +14 -0
- package/dist/node-builtins/wasi.js.map +1 -0
- package/dist/node-builtins/worker-threads.d.ts +3 -0
- package/dist/node-builtins/worker-threads.d.ts.map +1 -0
- package/dist/node-builtins/worker-threads.js +16 -0
- package/dist/node-builtins/worker-threads.js.map +1 -0
- package/dist/node-builtins/zlib.d.ts +3 -0
- package/dist/node-builtins/zlib.d.ts.map +1 -0
- package/dist/node-builtins/zlib.js +6 -0
- package/dist/node-builtins/zlib.js.map +1 -0
- package/dist/node-wit.d.ts +35 -0
- package/dist/node-wit.d.ts.map +1 -1
- package/dist/node-wit.js +135 -4
- package/dist/node-wit.js.map +1 -1
- package/lib/wit/builtin/jco-node-0.1.0/cluster.wit +3 -2
- package/lib/wit/builtin/jco-node-0.1.0/dgram.wit +142 -0
- package/lib/wit/builtin/jco-node-0.1.0/http.wit +7 -0
- package/lib/wit/builtin/jco-node-0.1.0/http2.wit +4 -5
- package/lib/wit/builtin/jco-node-0.1.0/process.wit +245 -0
- package/lib/wit/builtin/jco-node-0.1.0/sqlite.wit +154 -0
- package/lib/wit/builtin/jco-node-0.1.0/tls.wit +108 -0
- package/lib/wit/builtin/jco-node-0.1.0/trace-events.wit +27 -0
- package/lib/wit/builtin/jco-node-0.1.0/tty.wit +59 -0
- package/lib/wit/builtin/jco-node-0.1.0/v8.wit +102 -0
- package/lib/wit/builtin/jco-node-0.1.0/wasi.wit +57 -0
- package/lib/wit/builtin/jco-node-0.1.0/worker-threads.wit +67 -0
- package/lib/wit/builtin/jco-node-0.1.0/zlib.wit +77 -0
- package/lib/wit/builtin/wasi-tls-0.2.0-draft/LICENSE.md +8 -0
- package/lib/wit/builtin/wasi-tls-0.2.0-draft/README.md +25 -0
- package/lib/wit/builtin/wasi-tls-0.2.0-draft/deps/io/package.wit +66 -0
- package/lib/wit/builtin/wasi-tls-0.2.0-draft/types.wit +27 -0
- package/lib/wit/builtin/wasi-tls-0.2.0-draft/world.wit +8 -0
- package/package.json +7 -5
- package/dist/node-builtins.d.ts.map +0 -1
- package/dist/node-builtins.js +0 -1085
- package/dist/node-builtins.js.map +0 -1
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { builtin, stdModule } from "./shared.js";
|
|
2
|
+
const MODULE_SPECIFIER = "node:module";
|
|
3
|
+
/**
|
|
4
|
+
* Source of the `node:module` adapter.
|
|
5
|
+
*
|
|
6
|
+
* Capability-free: what this module can do here is classification and source-map arithmetic, and
|
|
7
|
+
* what it cannot do -- loading -- no host could supply, because the missing piece is the guest
|
|
8
|
+
* engine's ability to instantiate code that was not bundled.
|
|
9
|
+
*/
|
|
10
|
+
function moduleAdapter(moduleModule) {
|
|
11
|
+
return `
|
|
12
|
+
import nodeModule from ${JSON.stringify(moduleModule)};
|
|
13
|
+
export default nodeModule;
|
|
14
|
+
export {
|
|
15
|
+
Module,
|
|
16
|
+
SourceMap,
|
|
17
|
+
_cache,
|
|
18
|
+
_debug,
|
|
19
|
+
_extensions,
|
|
20
|
+
_findPath,
|
|
21
|
+
_initPaths,
|
|
22
|
+
_load,
|
|
23
|
+
_nodeModulePaths,
|
|
24
|
+
_pathCache,
|
|
25
|
+
_preloadModules,
|
|
26
|
+
_readPackage,
|
|
27
|
+
_resolveFilename,
|
|
28
|
+
_resolveLookupPaths,
|
|
29
|
+
_stat,
|
|
30
|
+
builtinModules,
|
|
31
|
+
constants,
|
|
32
|
+
createRequire,
|
|
33
|
+
enableCompileCache,
|
|
34
|
+
findPackageJSON,
|
|
35
|
+
findSourceMap,
|
|
36
|
+
flushCompileCache,
|
|
37
|
+
getCompileCacheDir,
|
|
38
|
+
getSourceMapsSupport,
|
|
39
|
+
globalPaths,
|
|
40
|
+
isBuiltin,
|
|
41
|
+
register,
|
|
42
|
+
registerHooks,
|
|
43
|
+
runMain,
|
|
44
|
+
setSourceMapsSupport,
|
|
45
|
+
stripTypeScriptTypes,
|
|
46
|
+
syncBuiltinESMExports,
|
|
47
|
+
wrap,
|
|
48
|
+
wrapper,
|
|
49
|
+
} from ${JSON.stringify(moduleModule)};
|
|
50
|
+
`;
|
|
51
|
+
}
|
|
52
|
+
export function createModuleBuiltin({ options }) {
|
|
53
|
+
return builtin(MODULE_SPECIFIER, () => moduleAdapter(stdModule(options.moduleModule, "module")));
|
|
54
|
+
}
|
|
55
|
+
//# sourceMappingURL=module.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"module.js","sourceRoot":"","sources":["../../src/node-builtins/module.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE3F,MAAM,gBAAgB,GAAG,aAAa,CAAC;AAEvC;;;;;;GAMG;AACH,SAAS,aAAa,CAAC,YAAoB;IACvC,OAAO;yBACc,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SAqC5C,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;CACpC,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 @@
|
|
|
1
|
+
{"version":3,"file":"net.d.ts","sourceRoot":"","sources":["../../src/node-builtins/net.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,cAAc,EAAsB,MAAM,aAAa,CAAC;AAqC3F,wBAAgB,gBAAgB,CAAC,EAAE,OAAO,EAAE,aAAa,EAAE,EAAE,cAAc,GAAG,cAAc,CAc3F"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { wasiSocketsProviderSource, requireWasiHttpVersion } from "./wasi-sockets.js";
|
|
2
|
+
import { builtin, stdModule } from "./shared.js";
|
|
3
|
+
import { NET_WASI_SOCKETS_WIT_REQUIREMENTS, NET_WASI_SOCKETS_0_2_10_WIT_REQUIREMENTS } from "../node-wit.js";
|
|
4
|
+
const NET_SPECIFIER = "node:net";
|
|
5
|
+
const NET_EXPORTS = [
|
|
6
|
+
"BlockList",
|
|
7
|
+
"BoundSocket",
|
|
8
|
+
"Server",
|
|
9
|
+
"Socket",
|
|
10
|
+
"SocketAddress",
|
|
11
|
+
"Stream",
|
|
12
|
+
"_createServerHandle",
|
|
13
|
+
"_normalizeArgs",
|
|
14
|
+
"connect",
|
|
15
|
+
"createConnection",
|
|
16
|
+
"createServer",
|
|
17
|
+
"getDefaultAutoSelectFamily",
|
|
18
|
+
"getDefaultAutoSelectFamilyAttemptTimeout",
|
|
19
|
+
"isIP",
|
|
20
|
+
"isIPv4",
|
|
21
|
+
"isIPv6",
|
|
22
|
+
"setDefaultAutoSelectFamily",
|
|
23
|
+
"setDefaultAutoSelectFamilyAttemptTimeout",
|
|
24
|
+
];
|
|
25
|
+
function netAdapter(coreModule, version) {
|
|
26
|
+
const provider = wasiSocketsProviderSource(version);
|
|
27
|
+
return `
|
|
28
|
+
${provider.imports}
|
|
29
|
+
import { createNet } from ${JSON.stringify(coreModule)};
|
|
30
|
+
const net = createNet(${provider.value});
|
|
31
|
+
export default net;
|
|
32
|
+
export const { ${NET_EXPORTS.join(", ")} } = net;
|
|
33
|
+
`;
|
|
34
|
+
}
|
|
35
|
+
export function createNetBuiltin({ options, worldMetadata }) {
|
|
36
|
+
const socketsVersion = options.wasiSocketsVersion ?? "0.2.12";
|
|
37
|
+
return builtin(NET_SPECIFIER, () => netAdapter(stdModule(options.netCoreModule, "net/core"), socketsVersion), () => {
|
|
38
|
+
requireWasiHttpVersion(worldMetadata, NET_SPECIFIER, "wasi-sockets", socketsVersion);
|
|
39
|
+
for (const requirement of socketsVersion === "0.2.12"
|
|
40
|
+
? NET_WASI_SOCKETS_WIT_REQUIREMENTS
|
|
41
|
+
: NET_WASI_SOCKETS_0_2_10_WIT_REQUIREMENTS) {
|
|
42
|
+
options.onWitRequirement?.(requirement);
|
|
43
|
+
}
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=net.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"net.js","sourceRoot":"","sources":["../../src/node-builtins/net.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AACtF,OAAO,EAA4C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC3F,OAAO,EAAE,iCAAiC,EAAE,wCAAwC,EAAE,MAAM,gBAAgB,CAAC;AAE7G,MAAM,aAAa,GAAG,UAAU,CAAC;AAEjC,MAAM,WAAW,GAAG;IAChB,WAAW;IACX,aAAa;IACb,QAAQ;IACR,QAAQ;IACR,eAAe;IACf,QAAQ;IACR,qBAAqB;IACrB,gBAAgB;IAChB,SAAS;IACT,kBAAkB;IAClB,cAAc;IACd,4BAA4B;IAC5B,0CAA0C;IAC1C,MAAM;IACN,QAAQ;IACR,QAAQ;IACR,4BAA4B;IAC5B,0CAA0C;CACpC,CAAC;AAEX,SAAS,UAAU,CAAC,UAAkB,EAAE,OAAe;IACnD,MAAM,QAAQ,GAAG,yBAAyB,CAAC,OAAO,CAAC,CAAC;IACpD,OAAO;EACT,QAAQ,CAAC,OAAO;4BACU,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;wBAC9B,QAAQ,CAAC,KAAK;;iBAErB,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC;CACtC,CAAC;AACF,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,EAAE,OAAO,EAAE,aAAa,EAAkB;IACvE,MAAM,cAAc,GAAG,OAAO,CAAC,kBAAkB,IAAI,QAAQ,CAAC;IAC9D,OAAO,OAAO,CACV,aAAa,EACb,GAAG,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,aAAa,EAAE,UAAU,CAAC,EAAE,cAAc,CAAC,EAC9E,GAAG,EAAE;QACD,sBAAsB,CAAC,aAAa,EAAE,aAAa,EAAE,cAAc,EAAE,cAAc,CAAC,CAAC;QACrF,KAAK,MAAM,WAAW,IAAI,cAAc,KAAK,QAAQ;YACjD,CAAC,CAAC,iCAAiC;YACnC,CAAC,CAAC,wCAAwC,EAAE,CAAC;YAC7C,OAAO,CAAC,gBAAgB,EAAE,CAAC,WAAW,CAAC,CAAC;QAC5C,CAAC;IACL,CAAC,CACJ,CAAC;AACN,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"os.d.ts","sourceRoot":"","sources":["../../src/node-builtins/os.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,cAAc,EAAsB,MAAM,aAAa,CAAC;AAsC3F,wBAAgB,eAAe,CAAC,EAAE,OAAO,EAAE,EAAE,cAAc,GAAG,cAAc,CAM3E"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { builtin, stdModule } from "./shared.js";
|
|
2
|
+
import { OS_WIT_REQUIREMENT } from "../node-wit.js";
|
|
3
|
+
const OS_SPECIFIER = "node:os";
|
|
4
|
+
/** Source of the host-backed `node:os` ESM facade. */
|
|
5
|
+
function osAdapter(osModule) {
|
|
6
|
+
return `
|
|
7
|
+
import os from ${JSON.stringify(osModule)};
|
|
8
|
+
export default os;
|
|
9
|
+
export {
|
|
10
|
+
EOL,
|
|
11
|
+
arch,
|
|
12
|
+
availableParallelism,
|
|
13
|
+
constants,
|
|
14
|
+
cpus,
|
|
15
|
+
devNull,
|
|
16
|
+
endianness,
|
|
17
|
+
freemem,
|
|
18
|
+
getPriority,
|
|
19
|
+
homedir,
|
|
20
|
+
hostname,
|
|
21
|
+
loadavg,
|
|
22
|
+
machine,
|
|
23
|
+
networkInterfaces,
|
|
24
|
+
platform,
|
|
25
|
+
release,
|
|
26
|
+
setPriority,
|
|
27
|
+
tmpdir,
|
|
28
|
+
totalmem,
|
|
29
|
+
type,
|
|
30
|
+
uptime,
|
|
31
|
+
userInfo,
|
|
32
|
+
version,
|
|
33
|
+
} from ${JSON.stringify(osModule)};
|
|
34
|
+
`;
|
|
35
|
+
}
|
|
36
|
+
export function createOsBuiltin({ options }) {
|
|
37
|
+
return builtin(OS_SPECIFIER, () => osAdapter(stdModule(options.osModule, "os")), () => options.onWitRequirement?.(OS_WIT_REQUIREMENT));
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=os.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"os.js","sourceRoot":"","sources":["../../src/node-builtins/os.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC3F,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEpD,MAAM,YAAY,GAAG,SAAS,CAAC;AAE/B,sDAAsD;AACtD,SAAS,SAAS,CAAC,QAAgB;IAC/B,OAAO;iBACM,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;SA0BhC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;CAChC,CAAC;AACF,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,EAAE,OAAO,EAAkB;IACvD,OAAO,OAAO,CACV,YAAY,EACZ,GAAG,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,EAClD,GAAG,EAAE,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC,kBAAkB,CAAC,CACvD,CAAC;AACN,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"path.d.ts","sourceRoot":"","sources":["../../src/node-builtins/path.ts"],"names":[],"mappings":"AAEA,OAAO,EAAkB,KAAK,cAAc,EAAE,KAAK,cAAc,EAAa,MAAM,aAAa,CAAC;AAuElG,wBAAgB,iBAAiB,CAAC,EAAE,OAAO,EAAE,aAAa,EAAE,EAAE,cAAc,GAAG,cAAc,CA2B5F"}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import { PATH_WIT_REQUIREMENT } from "../node-wit.js";
|
|
2
|
+
import { VIRTUAL_PREFIX, stdModule } from "./shared.js";
|
|
3
|
+
const PATH_SPECIFIERS = new Map([
|
|
4
|
+
["node:path", "default"],
|
|
5
|
+
["node:path/posix", "posix"],
|
|
6
|
+
["node:path/win32", "win32"],
|
|
7
|
+
]);
|
|
8
|
+
/**
|
|
9
|
+
* Determine the `wasi:cli/environment` version a WIT world imports.
|
|
10
|
+
*
|
|
11
|
+
* `node:path` is backed by WASI, so the world has to import the interface it needs, at exactly
|
|
12
|
+
* one version.
|
|
13
|
+
*/
|
|
14
|
+
function environmentVersion(worldMetadata) {
|
|
15
|
+
const matches = (worldMetadata?.imports ?? []).filter((iface) => iface.namespace === "wasi" &&
|
|
16
|
+
iface.package === "cli" &&
|
|
17
|
+
iface.interface === "environment" &&
|
|
18
|
+
iface.version?.major === 0n &&
|
|
19
|
+
iface.version?.minor === 2n);
|
|
20
|
+
if (matches.length === 0) {
|
|
21
|
+
return undefined;
|
|
22
|
+
}
|
|
23
|
+
if (matches.length > 1) {
|
|
24
|
+
throw new Error("node:path cannot select a WASI environment adapter because the selected WIT world imports multiple wasi:cli/environment@0.2.x versions");
|
|
25
|
+
}
|
|
26
|
+
const { major, minor, patch, pre } = matches[0].version;
|
|
27
|
+
return `${major}.${minor}.${patch}${pre ? `-${pre}` : ""}`;
|
|
28
|
+
}
|
|
29
|
+
/** Source of the shared `node:path` core, which owns the single WASI-backed path instance */
|
|
30
|
+
function pathCore(version, factoryPath) {
|
|
31
|
+
return `
|
|
32
|
+
import { initialCwd, getEnvironment } from "wasi:cli/environment@${version}";
|
|
33
|
+
import { createPath } from ${JSON.stringify(factoryPath)};
|
|
34
|
+
export const portablePath = createPath({ initialCwd, getEnvironment });
|
|
35
|
+
`;
|
|
36
|
+
}
|
|
37
|
+
/** Source of a `node:path`, `node:path/posix`, or `node:path/win32` adapter */
|
|
38
|
+
function pathAdapter(specifier, version) {
|
|
39
|
+
const namespace = PATH_SPECIFIERS.get(specifier);
|
|
40
|
+
return `
|
|
41
|
+
import { portablePath } from ${JSON.stringify(`${VIRTUAL_PREFIX}path-core@${version}`)};
|
|
42
|
+
const path = ${namespace === "default" ? "portablePath" : `portablePath.${namespace}`};
|
|
43
|
+
export default path;
|
|
44
|
+
export const _makeLong = path._makeLong;
|
|
45
|
+
export const basename = path.basename;
|
|
46
|
+
export const delimiter = path.delimiter;
|
|
47
|
+
export const dirname = path.dirname;
|
|
48
|
+
export const extname = path.extname;
|
|
49
|
+
export const format = path.format;
|
|
50
|
+
export const matchesGlob = path.matchesGlob;
|
|
51
|
+
export const isAbsolute = path.isAbsolute;
|
|
52
|
+
export const join = path.join;
|
|
53
|
+
export const normalize = path.normalize;
|
|
54
|
+
export const parse = path.parse;
|
|
55
|
+
export const posix = path.posix;
|
|
56
|
+
export const relative = path.relative;
|
|
57
|
+
export const resolve = path.resolve;
|
|
58
|
+
export const sep = path.sep;
|
|
59
|
+
export const toNamespacedPath = path.toNamespacedPath;
|
|
60
|
+
export const win32 = path.win32;
|
|
61
|
+
`;
|
|
62
|
+
}
|
|
63
|
+
export function createPathBuiltin({ options, worldMetadata }) {
|
|
64
|
+
return {
|
|
65
|
+
resolveId(id) {
|
|
66
|
+
if (!PATH_SPECIFIERS.has(id)) {
|
|
67
|
+
return null;
|
|
68
|
+
}
|
|
69
|
+
let version = environmentVersion(worldMetadata);
|
|
70
|
+
if (!version) {
|
|
71
|
+
options.onWitRequirement?.(PATH_WIT_REQUIREMENT);
|
|
72
|
+
version = "0.2.12";
|
|
73
|
+
}
|
|
74
|
+
return `${VIRTUAL_PREFIX}${id}@${version}`;
|
|
75
|
+
},
|
|
76
|
+
load(id) {
|
|
77
|
+
if (!id.startsWith(VIRTUAL_PREFIX)) {
|
|
78
|
+
return null;
|
|
79
|
+
}
|
|
80
|
+
const value = id.slice(VIRTUAL_PREFIX.length);
|
|
81
|
+
const separator = value.lastIndexOf("@");
|
|
82
|
+
const specifier = value.slice(0, separator);
|
|
83
|
+
const version = value.slice(separator + 1);
|
|
84
|
+
if (specifier === "path-core") {
|
|
85
|
+
return pathCore(version, stdModule(options.pathFactory, "path"));
|
|
86
|
+
}
|
|
87
|
+
return PATH_SPECIFIERS.has(specifier) ? pathAdapter(specifier, version) : null;
|
|
88
|
+
},
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
//# sourceMappingURL=path.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"path.js","sourceRoot":"","sources":["../../src/node-builtins/path.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"perf-hooks.d.ts","sourceRoot":"","sources":["../../src/node-builtins/perf-hooks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,cAAc,EAAsB,MAAM,aAAa,CAAC;AAU3F,wBAAgB,sBAAsB,CAAC,EAAE,OAAO,EAAE,EAAE,cAAc,GAAG,cAAc,CAElF"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { builtin, stdModule } from "./shared.js";
|
|
2
|
+
/** Source of the capability-free `node:perf_hooks` ESM facade. */
|
|
3
|
+
function perfHooksAdapter(perfHooksModule) {
|
|
4
|
+
return `
|
|
5
|
+
export { default } from ${JSON.stringify(perfHooksModule)};
|
|
6
|
+
export * from ${JSON.stringify(perfHooksModule)};
|
|
7
|
+
`;
|
|
8
|
+
}
|
|
9
|
+
export function createPerfHooksBuiltin({ options }) {
|
|
10
|
+
return builtin("node:perf_hooks", () => perfHooksAdapter(stdModule(options.perfHooksModule, "perf-hooks")));
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=perf-hooks.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"perf-hooks.js","sourceRoot":"","sources":["../../src/node-builtins/perf-hooks.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE3F,kEAAkE;AAClE,SAAS,gBAAgB,CAAC,eAAuB;IAC7C,OAAO;0BACe,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC;gBACzC,IAAI,CAAC,SAAS,CAAC,eAAe,CAAC;CAC9C,CAAC;AACF,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,EAAE,OAAO,EAAkB;IAC9D,OAAO,OAAO,CAAC,iBAAiB,EAAE,GAAG,EAAE,CAAC,gBAAgB,CAAC,SAAS,CAAC,OAAO,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;AAChH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"process.d.ts","sourceRoot":"","sources":["../../src/node-builtins/process.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,cAAc,EAAsB,MAAM,aAAa,CAAC;AAG3F,wBAAgB,oBAAoB,CAAC,EAAE,OAAO,EAAE,EAAE,cAAc,GAAG,cAAc,CAShF"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { builtin, stdModule } from "./shared.js";
|
|
2
|
+
import { PROCESS_WIT_REQUIREMENT } from "../node-wit.js";
|
|
3
|
+
export function createProcessBuiltin({ options }) {
|
|
4
|
+
return builtin("node:process", () => {
|
|
5
|
+
const module = JSON.stringify(stdModule(options.processModule, "process"));
|
|
6
|
+
return `export { default } from ${module}; export * from ${module};`;
|
|
7
|
+
}, () => options.onWitRequirement?.(PROCESS_WIT_REQUIREMENT));
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=process.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"process.js","sourceRoot":"","sources":["../../src/node-builtins/process.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC3F,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAEzD,MAAM,UAAU,oBAAoB,CAAC,EAAE,OAAO,EAAkB;IAC5D,OAAO,OAAO,CACV,cAAc,EACd,GAAG,EAAE;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC,CAAC;QAC3E,OAAO,2BAA2B,MAAM,mBAAmB,MAAM,GAAG,CAAC;IACzE,CAAC,EACD,GAAG,EAAE,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC,uBAAuB,CAAC,CAC5D,CAAC;AACN,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"querystring.d.ts","sourceRoot":"","sources":["../../src/node-builtins/querystring.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,cAAc,EAAW,MAAM,aAAa,CAAC;AAYhF,wBAAgB,wBAAwB,CAAC,EAAE,OAAO,EAAE,EAAE,cAAc,GAAG,cAAc,CAQpF"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { unenvModule } from "./unenv.js";
|
|
2
|
+
import { UNENV_BUFFER_CORE } from "./buffer.js";
|
|
3
|
+
import { builtin } from "./shared.js";
|
|
4
|
+
function querystringAdapter(options) {
|
|
5
|
+
const querystringModule = unenvModule("node:querystring", options);
|
|
6
|
+
return `
|
|
7
|
+
import ${JSON.stringify(UNENV_BUFFER_CORE)};
|
|
8
|
+
import querystring from ${JSON.stringify(querystringModule)};
|
|
9
|
+
export * from ${JSON.stringify(querystringModule)};
|
|
10
|
+
export default querystring;
|
|
11
|
+
`;
|
|
12
|
+
}
|
|
13
|
+
export function createQuerystringBuiltin({ options }) {
|
|
14
|
+
return builtin("node:querystring", () => querystringAdapter(options), () => {
|
|
15
|
+
querystringAdapter(options);
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=querystring.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"querystring.js","sourceRoot":"","sources":["../../src/node-builtins/querystring.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAA4C,OAAO,EAAE,MAAM,aAAa,CAAC;AAEhF,SAAS,kBAAkB,CAAC,OAA2B;IACnD,MAAM,iBAAiB,GAAG,WAAW,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC;IACnE,OAAO;SACF,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC;0BAChB,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC;gBAC3C,IAAI,CAAC,SAAS,CAAC,iBAAiB,CAAC;;CAEhD,CAAC;AACF,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,EAAE,OAAO,EAAkB;IAChE,OAAO,OAAO,CACV,kBAAkB,EAClB,GAAG,EAAE,CAAC,kBAAkB,CAAC,OAAO,CAAC,EACjC,GAAG,EAAE;QACD,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAChC,CAAC,CACJ,CAAC;AACN,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"readline.d.ts","sourceRoot":"","sources":["../../src/node-builtins/readline.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,cAAc,EAAE,KAAK,cAAc,EAAsB,MAAM,aAAa,CAAC;AAIhH,wBAAgB,qBAAqB,CAAC,EAAE,OAAO,EAAE,EAAE,cAAc,GAAG,cAAc,CAQjF"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { starReexportAdapter, builtin, stdModule } from "./shared.js";
|
|
2
|
+
const READLINE_SPECIFIERS = new Set(["node:readline", "node:readline/promises"]);
|
|
3
|
+
export function createReadlineBuiltin({ options }) {
|
|
4
|
+
return builtin(READLINE_SPECIFIERS, (specifier) => {
|
|
5
|
+
const module = specifier === "node:readline"
|
|
6
|
+
? stdModule(options.readlineModule, "readline")
|
|
7
|
+
: stdModule(options.readlinePromisesModule, "readline/promises");
|
|
8
|
+
return starReexportAdapter(module, "readline");
|
|
9
|
+
});
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=readline.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"readline.js","sourceRoot":"","sources":["../../src/node-builtins/readline.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAA4C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAEhH,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC,CAAC,eAAe,EAAE,wBAAwB,CAAC,CAAC,CAAC;AAEjF,MAAM,UAAU,qBAAqB,CAAC,EAAE,OAAO,EAAkB;IAC7D,OAAO,OAAO,CAAC,mBAAmB,EAAE,CAAC,SAAS,EAAE,EAAE;QAC9C,MAAM,MAAM,GACR,SAAS,KAAK,eAAe;YACzB,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,cAAc,EAAE,UAAU,CAAC;YAC/C,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,sBAAsB,EAAE,mBAAmB,CAAC,CAAC;QACzE,OAAO,mBAAmB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;AACP,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { type BuiltinContext, type BuiltinAdapter } from "./shared.js";
|
|
2
|
+
/**
|
|
3
|
+
* `node:repl` is entirely guest-side -- evaluation, line editing and completion over the streams
|
|
4
|
+
* the application supplies -- so it reports no WIT requirement. The jco-std module is the only one
|
|
5
|
+
* that bundles acorn; resolving it here, and nowhere else, keeps the parser out of every other
|
|
6
|
+
* component.
|
|
7
|
+
*/
|
|
8
|
+
export declare function createReplBuiltin({ options }: BuiltinContext): BuiltinAdapter;
|
|
9
|
+
//# sourceMappingURL=repl.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"repl.d.ts","sourceRoot":"","sources":["../../src/node-builtins/repl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,cAAc,EAAE,KAAK,cAAc,EAAsB,MAAM,aAAa,CAAC;AAIhH;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,OAAO,EAAE,EAAE,cAAc,GAAG,cAAc,CAE7E"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { starReexportAdapter, builtin, stdModule } from "./shared.js";
|
|
2
|
+
const REPL_SPECIFIER = "node:repl";
|
|
3
|
+
/**
|
|
4
|
+
* `node:repl` is entirely guest-side -- evaluation, line editing and completion over the streams
|
|
5
|
+
* the application supplies -- so it reports no WIT requirement. The jco-std module is the only one
|
|
6
|
+
* that bundles acorn; resolving it here, and nowhere else, keeps the parser out of every other
|
|
7
|
+
* component.
|
|
8
|
+
*/
|
|
9
|
+
export function createReplBuiltin({ options }) {
|
|
10
|
+
return builtin(REPL_SPECIFIER, () => starReexportAdapter(stdModule(options.replModule, "repl"), "repl"));
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=repl.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"repl.js","sourceRoot":"","sources":["../../src/node-builtins/repl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAA4C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAEhH,MAAM,cAAc,GAAG,WAAW,CAAC;AAEnC;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAC,EAAE,OAAO,EAAkB;IACzD,OAAO,OAAO,CAAC,cAAc,EAAE,GAAG,EAAE,CAAC,mBAAmB,CAAC,SAAS,CAAC,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;AAC7G,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { type WorldMetadata, type NodeBuiltinOptions } from "./types.js";
|
|
2
|
+
export declare const VIRTUAL_PREFIX = "\0jco-node-builtin:";
|
|
3
|
+
/**
|
|
4
|
+
* Source of an adapter that forwards a module's default export and re-exports its whole named
|
|
5
|
+
* surface. `localName` only names the default-import binding in the generated source.
|
|
6
|
+
*/
|
|
7
|
+
export declare function starReexportAdapter(module: string, localName: string): string;
|
|
8
|
+
export interface BuiltinAdapter {
|
|
9
|
+
resolveId(id: string, importer?: string): string | null;
|
|
10
|
+
load(id: string): string | null;
|
|
11
|
+
}
|
|
12
|
+
export interface BuiltinContext {
|
|
13
|
+
worldMetadata: WorldMetadata;
|
|
14
|
+
options: NodeBuiltinOptions;
|
|
15
|
+
}
|
|
16
|
+
/** Keep both the WASI and Node major pinned; resolve only when an adapter is loaded. */
|
|
17
|
+
export declare function stdModule(override: string | undefined, subpath: string, major?: string): string;
|
|
18
|
+
/** Register ordinary node: specifiers without eagerly resolving their implementations. */
|
|
19
|
+
export declare function builtin(specifiers: string | Iterable<string>, load: (specifier: string) => string, onResolve?: (specifier: string) => void): BuiltinAdapter;
|
|
20
|
+
/** Register a shared virtual module, such as a guest callback interface. */
|
|
21
|
+
export declare function virtualBuiltin(specifier: string, virtualId: string, load: () => string): BuiltinAdapter;
|
|
22
|
+
/** Compose adapters in order, stopping at the first one that handles the request. */
|
|
23
|
+
export declare function composeBuiltins(adapters: BuiltinAdapter[]): BuiltinAdapter;
|
|
24
|
+
//# sourceMappingURL=shared.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/node-builtins/shared.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAGzE,eAAO,MAAM,cAAc,wBAAwB,CAAC;AAEpD;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAM7E;AAED,MAAM,WAAW,cAAc;IAC3B,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IACxD,IAAI,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;CACnC;AAED,MAAM,WAAW,cAAc;IAC3B,aAAa,EAAE,aAAa,CAAC;IAC7B,OAAO,EAAE,kBAAkB,CAAC;CAC/B;AAED,wFAAwF;AACxF,wBAAgB,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,SAAW,GAAG,MAAM,CAIjG;AAED,0FAA0F;AAC1F,wBAAgB,OAAO,CACnB,UAAU,EAAE,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,EACrC,IAAI,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,EACnC,SAAS,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,GACxC,cAAc,CAkBhB;AAED,4EAA4E;AAC5E,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,MAAM,GAAG,cAAc,CAKvG;AAED,qFAAqF;AACrF,wBAAgB,eAAe,CAAC,QAAQ,EAAE,cAAc,EAAE,GAAG,cAAc,CAqB1E"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { fileURLToPath } from "node:url";
|
|
2
|
+
export const VIRTUAL_PREFIX = "\0jco-node-builtin:";
|
|
3
|
+
/**
|
|
4
|
+
* Source of an adapter that forwards a module's default export and re-exports its whole named
|
|
5
|
+
* surface. `localName` only names the default-import binding in the generated source.
|
|
6
|
+
*/
|
|
7
|
+
export function starReexportAdapter(module, localName) {
|
|
8
|
+
return `
|
|
9
|
+
import ${localName} from ${JSON.stringify(module)};
|
|
10
|
+
export default ${localName};
|
|
11
|
+
export * from ${JSON.stringify(module)};
|
|
12
|
+
`;
|
|
13
|
+
}
|
|
14
|
+
/** Keep both the WASI and Node major pinned; resolve only when an adapter is loaded. */
|
|
15
|
+
export function stdModule(override, subpath, major = "24.x.x") {
|
|
16
|
+
return (override ?? fileURLToPath(import.meta.resolve(`@bytecodealliance/jco-std/wasi/0.2.x/node/${major}/${subpath}`)));
|
|
17
|
+
}
|
|
18
|
+
/** Register ordinary node: specifiers without eagerly resolving their implementations. */
|
|
19
|
+
export function builtin(specifiers, load, onResolve) {
|
|
20
|
+
const supported = new Set(typeof specifiers === "string" ? [specifiers] : specifiers);
|
|
21
|
+
return {
|
|
22
|
+
resolveId(id) {
|
|
23
|
+
if (!supported.has(id)) {
|
|
24
|
+
return null;
|
|
25
|
+
}
|
|
26
|
+
onResolve?.(id);
|
|
27
|
+
return VIRTUAL_PREFIX + id;
|
|
28
|
+
},
|
|
29
|
+
load(id) {
|
|
30
|
+
if (!id.startsWith(VIRTUAL_PREFIX)) {
|
|
31
|
+
return null;
|
|
32
|
+
}
|
|
33
|
+
const specifier = id.slice(VIRTUAL_PREFIX.length);
|
|
34
|
+
return supported.has(specifier) ? load(specifier) : null;
|
|
35
|
+
},
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
/** Register a shared virtual module, such as a guest callback interface. */
|
|
39
|
+
export function virtualBuiltin(specifier, virtualId, load) {
|
|
40
|
+
return {
|
|
41
|
+
resolveId: (id) => (id === specifier ? virtualId : null),
|
|
42
|
+
load: (id) => (id === virtualId ? load() : null),
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
/** Compose adapters in order, stopping at the first one that handles the request. */
|
|
46
|
+
export function composeBuiltins(adapters) {
|
|
47
|
+
return {
|
|
48
|
+
resolveId(id, importer) {
|
|
49
|
+
for (const adapter of adapters) {
|
|
50
|
+
const result = adapter.resolveId(id, importer);
|
|
51
|
+
if (result !== null) {
|
|
52
|
+
return result;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
return null;
|
|
56
|
+
},
|
|
57
|
+
load(id) {
|
|
58
|
+
for (const adapter of adapters) {
|
|
59
|
+
const result = adapter.load(id);
|
|
60
|
+
if (result !== null) {
|
|
61
|
+
return result;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
return null;
|
|
65
|
+
},
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
//# sourceMappingURL=shared.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/node-builtins/shared.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sqlite.d.ts","sourceRoot":"","sources":["../../src/node-builtins/sqlite.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,cAAc,EAAsB,MAAM,aAAa,CAAC;AAG3F,wBAAgB,mBAAmB,CAAC,EAAE,OAAO,EAAE,EAAE,cAAc,GAAG,cAAc,CAS/E"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { builtin, stdModule } from "./shared.js";
|
|
2
|
+
import { SQLITE_WIT_REQUIREMENT } from "../node-wit.js";
|
|
3
|
+
export function createSqliteBuiltin({ options }) {
|
|
4
|
+
return builtin("node:sqlite", () => {
|
|
5
|
+
const module = JSON.stringify(stdModule(options.sqliteModule, "sqlite"));
|
|
6
|
+
return `export { default } from ${module}; export * from ${module};`;
|
|
7
|
+
}, () => options.onWitRequirement?.(SQLITE_WIT_REQUIREMENT));
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=sqlite.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sqlite.js","sourceRoot":"","sources":["../../src/node-builtins/sqlite.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC3F,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAExD,MAAM,UAAU,mBAAmB,CAAC,EAAE,OAAO,EAAkB;IAC3D,OAAO,OAAO,CACV,aAAa,EACb,GAAG,EAAE;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC;QACzE,OAAO,2BAA2B,MAAM,mBAAmB,MAAM,GAAG,CAAC;IACzE,CAAC,EACD,GAAG,EAAE,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC,sBAAsB,CAAC,CAC3D,CAAC;AACN,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stream.d.ts","sourceRoot":"","sources":["../../src/node-builtins/stream.ts"],"names":[],"mappings":"AACA,OAAO,EAEH,KAAK,cAAc,EACnB,KAAK,cAAc,EAKtB,MAAM,aAAa,CAAC;AAiBrB,wBAAgB,mBAAmB,CAAC,EAAE,OAAO,EAAE,EAAE,cAAc,GAAG,cAAc,CAqD/E"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { createRequire } from "node:module";
|
|
2
|
+
import { starReexportAdapter, builtin, stdModule, composeBuiltins, VIRTUAL_PREFIX, } from "./shared.js";
|
|
3
|
+
const STREAM_SPECIFIER = "node:stream";
|
|
4
|
+
const STREAM_PROMISES_SPECIFIER = "node:stream/promises";
|
|
5
|
+
const STREAM_CONSUMERS_SPECIFIER = "node:stream/consumers";
|
|
6
|
+
const STREAM_ITER_SPECIFIER = "node:stream/iter";
|
|
7
|
+
const STREAM_EVENTS_MODULE = `${VIRTUAL_PREFIX}stream-events`;
|
|
8
|
+
/** Source of a capability-free Node stream submodule adapter. */
|
|
9
|
+
function streamAdapter(module) {
|
|
10
|
+
return starReexportAdapter(module, "streamModule");
|
|
11
|
+
}
|
|
12
|
+
export function createStreamBuiltin({ options }) {
|
|
13
|
+
const modules = {
|
|
14
|
+
[STREAM_SPECIFIER]: () => stdModule(options.streamModule, "stream"),
|
|
15
|
+
[STREAM_PROMISES_SPECIFIER]: () => stdModule(options.streamPromisesModule, "stream/promises"),
|
|
16
|
+
[STREAM_CONSUMERS_SPECIFIER]: () => stdModule(options.streamConsumersModule, "stream/consumers"),
|
|
17
|
+
[STREAM_ITER_SPECIFIER]: () => stdModule(options.streamIterModule, "stream/iter"),
|
|
18
|
+
};
|
|
19
|
+
return composeBuiltins([
|
|
20
|
+
{
|
|
21
|
+
resolveId(id, importer) {
|
|
22
|
+
// Only the audited portable core's dependencies use legacy bare IDs.
|
|
23
|
+
// Share Buffer/EventEmitter/StringDecoder with ordinary node: imports.
|
|
24
|
+
if (importer?.replaceAll("\\", "/").includes("/node_modules/readable-stream/lib/")) {
|
|
25
|
+
if (id === "events") {
|
|
26
|
+
return STREAM_EVENTS_MODULE;
|
|
27
|
+
}
|
|
28
|
+
if (id === "process/") {
|
|
29
|
+
return stdModule(options.streamSchedulerModule, "stream/scheduler");
|
|
30
|
+
}
|
|
31
|
+
if (id === "string_decoder/") {
|
|
32
|
+
return `${VIRTUAL_PREFIX}node:string_decoder`;
|
|
33
|
+
}
|
|
34
|
+
if (id === "abort-controller") {
|
|
35
|
+
return createRequire(importer).resolve(id);
|
|
36
|
+
}
|
|
37
|
+
if (id === "buffer" || id === "string_decoder") {
|
|
38
|
+
return `${VIRTUAL_PREFIX}node:${id}`;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
if (id === "event-target-shim" &&
|
|
42
|
+
importer?.replaceAll("\\", "/").includes("/node_modules/abort-controller/dist/")) {
|
|
43
|
+
return createRequire(importer).resolve(id);
|
|
44
|
+
}
|
|
45
|
+
return null;
|
|
46
|
+
},
|
|
47
|
+
load(id) {
|
|
48
|
+
if (id === `${VIRTUAL_PREFIX}commonjs-stream`) {
|
|
49
|
+
return `module.exports = require(${JSON.stringify(stdModule(options.streamModule, "stream"))}).default;`;
|
|
50
|
+
}
|
|
51
|
+
if (id !== STREAM_EVENTS_MODULE) {
|
|
52
|
+
return null;
|
|
53
|
+
}
|
|
54
|
+
return `import * as events from "node:events";
|
|
55
|
+
import { callableEmitter } from ${JSON.stringify(stdModule(options.streamEmitterModule, "stream/emitter"))};
|
|
56
|
+
export * from "node:events";
|
|
57
|
+
export const EventEmitter = callableEmitter(events.EventEmitter);
|
|
58
|
+
export default { ...events, EventEmitter };`;
|
|
59
|
+
},
|
|
60
|
+
},
|
|
61
|
+
builtin(Object.keys(modules), (specifier) => streamAdapter(modules[specifier]())),
|
|
62
|
+
]);
|
|
63
|
+
}
|
|
64
|
+
//# sourceMappingURL=stream.js.map
|