quickjs-wasi-reactor 0.0.1

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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fs-mem.js","sourceRoot":"","sources":["../src/fs-mem.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ export { QuickJS, createQuickJS, loadQuickJS, buildFileSystem, LOOP_IDLE, LOOP_ERROR, type QuickJSOptions, type QuickJSReactorExports, } from "./quickjs.js";
2
+ export { WASI, WASIProcExit, type WASIOptions } from "./wasi.js";
3
+ export { File, Directory, OpenFile, OpenDirectory, PreopenDirectory, ConsoleStdout, PollableStdin, DevOut, DevDirectory, } from "./fs-mem.js";
4
+ export { Fd, Inode, type PollResult } from "./fd.js";
5
+ export * as wasi from "./wasi-defs.js";
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,OAAO,EACP,aAAa,EACb,WAAW,EACX,eAAe,EACf,SAAS,EACT,UAAU,EACV,KAAK,cAAc,EACnB,KAAK,qBAAqB,GAC3B,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,WAAW,EAAE,MAAM,WAAW,CAAC;AAGjE,OAAO,EACL,IAAI,EACJ,SAAS,EACT,QAAQ,EACR,aAAa,EACb,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,MAAM,EACN,YAAY,GACb,MAAM,aAAa,CAAC;AAGrB,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,UAAU,EAAE,MAAM,SAAS,CAAC;AAGrD,OAAO,KAAK,IAAI,MAAM,gBAAgB,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,13 @@
1
+ // js-quickjs-wasi-reactor
2
+ // JavaScript harness for QuickJS-NG WASI reactor model
3
+ // Main QuickJS API
4
+ export { QuickJS, createQuickJS, loadQuickJS, buildFileSystem, LOOP_IDLE, LOOP_ERROR, } from "./quickjs.js";
5
+ // WASI implementation
6
+ export { WASI, WASIProcExit } from "./wasi.js";
7
+ // File system types
8
+ export { File, Directory, OpenFile, OpenDirectory, PreopenDirectory, ConsoleStdout, PollableStdin, DevOut, DevDirectory, } from "./fs-mem.js";
9
+ // File descriptor types
10
+ export { Fd, Inode } from "./fd.js";
11
+ // WASI definitions
12
+ export * as wasi from "./wasi-defs.js";
13
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,0BAA0B;AAC1B,uDAAuD;AAEvD,mBAAmB;AACnB,OAAO,EACL,OAAO,EACP,aAAa,EACb,WAAW,EACX,eAAe,EACf,SAAS,EACT,UAAU,GAGX,MAAM,cAAc,CAAC;AAEtB,sBAAsB;AACtB,OAAO,EAAE,IAAI,EAAE,YAAY,EAAoB,MAAM,WAAW,CAAC;AAEjE,oBAAoB;AACpB,OAAO,EACL,IAAI,EACJ,SAAS,EACT,QAAQ,EACR,aAAa,EACb,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,MAAM,EACN,YAAY,GACb,MAAM,aAAa,CAAC;AAErB,wBAAwB;AACxB,OAAO,EAAE,EAAE,EAAE,KAAK,EAAmB,MAAM,SAAS,CAAC;AAErD,mBAAmB;AACnB,OAAO,KAAK,IAAI,MAAM,gBAAgB,CAAC"}
@@ -0,0 +1,136 @@
1
+ import { PollableStdin, File, Directory } from "./fs-mem.js";
2
+ /** Loop result constants from qjs_loop_once() */
3
+ export declare const LOOP_IDLE = -1;
4
+ export declare const LOOP_ERROR = -2;
5
+ /** QuickJS reactor exports interface */
6
+ export interface QuickJSReactorExports {
7
+ /** Standard WASI reactor initialization */
8
+ _initialize(): void;
9
+ /** WebAssembly memory */
10
+ memory: WebAssembly.Memory;
11
+ /** Initialize with CLI arguments */
12
+ qjs_init_argv(argc: number, argv: number): number;
13
+ /** Initialize empty runtime */
14
+ qjs_init(): number;
15
+ /** Evaluate JavaScript code */
16
+ qjs_eval(code: number, len: number, filename: number, is_module: number): number;
17
+ /** Run one iteration of the event loop */
18
+ qjs_loop_once(): number;
19
+ /** Poll for I/O events */
20
+ qjs_poll_io(timeout_ms: number): number;
21
+ /** Cleanup runtime */
22
+ qjs_destroy(): void;
23
+ /** Allocate memory */
24
+ malloc(size: number): number;
25
+ /** Free memory */
26
+ free(ptr: number): void;
27
+ }
28
+ /** Options for creating a QuickJS instance */
29
+ export interface QuickJSOptions {
30
+ /** WASI arguments (default: ['qjs', '--std']) */
31
+ args?: string[];
32
+ /** Environment variables as key=value strings */
33
+ env?: string[];
34
+ /** Enable debug logging */
35
+ debug?: boolean;
36
+ /** Custom stdout handler (default: console.log) */
37
+ stdout?: (line: string) => void;
38
+ /** Custom stderr handler (default: console.error) */
39
+ stderr?: (line: string) => void;
40
+ /** Virtual filesystem root contents */
41
+ fs?: Map<string, File | Directory>;
42
+ /** Handler for data written to /dev/out */
43
+ onDevOut?: (data: Uint8Array) => void;
44
+ /** Custom stdin that data can be pushed to */
45
+ stdin?: PollableStdin;
46
+ }
47
+ /**
48
+ * QuickJS provides a high-level API for running JavaScript in QuickJS WASI reactor mode.
49
+ */
50
+ export declare class QuickJS {
51
+ private wasi;
52
+ private instance;
53
+ private exports;
54
+ private running;
55
+ private exitCode;
56
+ private stdin;
57
+ constructor(wasmModule: WebAssembly.Module, options?: QuickJSOptions);
58
+ /**
59
+ * Initialize QuickJS with command-line arguments.
60
+ * The args should match the WASI args passed to the constructor.
61
+ */
62
+ initArgv(): void;
63
+ /**
64
+ * Initialize QuickJS with an empty context.
65
+ */
66
+ init(): void;
67
+ /**
68
+ * Evaluate JavaScript code.
69
+ * @param code The JavaScript code to evaluate
70
+ * @param isModule Whether to treat the code as an ES module
71
+ * @param filename Optional filename for error messages
72
+ */
73
+ eval(code: string, isModule?: boolean, filename?: string): void;
74
+ /**
75
+ * Run one iteration of the event loop.
76
+ * @returns Loop result: >0 = timer ms, 0 = more work, -1 = idle, -2 = error
77
+ */
78
+ loopOnce(): number;
79
+ /**
80
+ * Poll for I/O events and invoke handlers.
81
+ * @param timeoutMs Poll timeout in milliseconds (0 = non-blocking)
82
+ */
83
+ pollIO(timeoutMs?: number): number;
84
+ /**
85
+ * Push data to stdin for the QuickJS instance to read.
86
+ */
87
+ pushStdin(data: Uint8Array): void;
88
+ /**
89
+ * Check if stdin has data available.
90
+ */
91
+ hasStdinData(): boolean;
92
+ /**
93
+ * Run the event loop until idle or stopped.
94
+ * This method is designed for browser environments and yields to the event loop.
95
+ * @param onTick Optional callback called on each loop iteration
96
+ * @returns Promise that resolves when the loop is idle
97
+ */
98
+ runLoop(onTick?: () => void): Promise<number>;
99
+ /**
100
+ * Run the event loop synchronously (blocking).
101
+ * This is suitable for Node.js/Bun environments.
102
+ * @returns Exit code
103
+ */
104
+ runLoopSync(): number;
105
+ /**
106
+ * Stop the event loop.
107
+ */
108
+ stop(): void;
109
+ /**
110
+ * Destroy the QuickJS runtime and release resources.
111
+ */
112
+ destroy(): void;
113
+ /**
114
+ * Get the exit code (valid after runLoop completes).
115
+ */
116
+ getExitCode(): number;
117
+ }
118
+ /**
119
+ * Create a QuickJS instance from a WASM module.
120
+ * @param wasmModule Compiled WebAssembly module
121
+ * @param options Configuration options
122
+ */
123
+ export declare function createQuickJS(wasmModule: WebAssembly.Module, options?: QuickJSOptions): QuickJS;
124
+ /**
125
+ * Load and create a QuickJS instance from a URL or buffer.
126
+ * @param wasmSource URL string, Response, or ArrayBuffer containing the WASM
127
+ * @param options Configuration options
128
+ */
129
+ export declare function loadQuickJS(wasmSource: string | Response | ArrayBuffer | Uint8Array, options?: QuickJSOptions): Promise<QuickJS>;
130
+ /**
131
+ * Build a virtual filesystem from a map of paths to file contents.
132
+ * @param files Map of path -> content (string or Uint8Array)
133
+ * @returns Root directory contents suitable for QuickJSOptions.fs
134
+ */
135
+ export declare function buildFileSystem(files: Map<string, string | Uint8Array>): Map<string, File | Directory>;
136
+ //# sourceMappingURL=quickjs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quickjs.d.ts","sourceRoot":"","sources":["../src/quickjs.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,334 @@
1
+ // QuickJS WASI Reactor harness for JavaScript
2
+ // This module provides a high-level API for running QuickJS in reactor mode.
3
+ import { WASI, WASIProcExit } from "./wasi.js";
4
+ import { ConsoleStdout, PollableStdin, PreopenDirectory, File, Directory, DevOut, DevDirectory, } from "./fs-mem.js";
5
+ /** Loop result constants from qjs_loop_once() */
6
+ export const LOOP_IDLE = -1;
7
+ export const LOOP_ERROR = -2;
8
+ /**
9
+ * QuickJS provides a high-level API for running JavaScript in QuickJS WASI reactor mode.
10
+ */
11
+ export class QuickJS {
12
+ wasi;
13
+ instance = null;
14
+ exports = null;
15
+ running = false;
16
+ exitCode = 0;
17
+ stdin;
18
+ constructor(wasmModule, options = {}) {
19
+ const args = options.args ?? ["qjs", "--std"];
20
+ const env = options.env ?? [];
21
+ const debug = options.debug ?? false;
22
+ // Create stdin
23
+ this.stdin = options.stdin ?? new PollableStdin();
24
+ // Create stdout/stderr
25
+ const stdout = ConsoleStdout.lineBuffered(options.stdout ?? ((line) => console.log("[QuickJS]", line)));
26
+ const stderr = ConsoleStdout.lineBuffered(options.stderr ?? ((line) => console.error("[QuickJS]", line)));
27
+ // Build filesystem
28
+ const rootContents = options.fs ?? new Map();
29
+ const rootDir = new PreopenDirectory("/", rootContents);
30
+ // Build file descriptors
31
+ const fds = [
32
+ this.stdin, // fd 0 - stdin
33
+ stdout, // fd 1 - stdout
34
+ stderr, // fd 2 - stderr
35
+ rootDir, // fd 3 - preopened /
36
+ ];
37
+ // Add /dev directory with /dev/out if onDevOut is provided
38
+ if (options.onDevOut) {
39
+ const devOut = new DevOut(options.onDevOut);
40
+ const devDir = new DevDirectory("/dev", new Map([["out", devOut]]));
41
+ fds.push(devDir); // fd 4 - preopened /dev
42
+ }
43
+ this.wasi = new WASI(args, env, fds, { debug });
44
+ // Instantiate the WASM module
45
+ this.instance = new WebAssembly.Instance(wasmModule, {
46
+ wasi_snapshot_preview1: this.wasi.wasiImport,
47
+ });
48
+ this.exports = this.instance.exports;
49
+ // Initialize the WASI reactor
50
+ this.wasi.initialize(this.instance);
51
+ }
52
+ /**
53
+ * Initialize QuickJS with command-line arguments.
54
+ * The args should match the WASI args passed to the constructor.
55
+ */
56
+ initArgv() {
57
+ if (!this.exports)
58
+ throw new Error("QuickJS not initialized");
59
+ const args = this.wasi.args;
60
+ const memory = this.exports.memory;
61
+ const encoder = new TextEncoder();
62
+ // Allocate space for argv array and strings
63
+ const ARGV_BASE = 65536;
64
+ const STRINGS_BASE = ARGV_BASE + args.length * 4 + 4;
65
+ const view = new DataView(memory.buffer);
66
+ const bytes = new Uint8Array(memory.buffer);
67
+ let stringOffset = STRINGS_BASE;
68
+ for (let i = 0; i < args.length; i++) {
69
+ view.setUint32(ARGV_BASE + i * 4, stringOffset, true);
70
+ const encoded = encoder.encode(args[i]);
71
+ bytes.set(encoded, stringOffset);
72
+ bytes[stringOffset + encoded.length] = 0;
73
+ stringOffset += encoded.length + 1;
74
+ }
75
+ view.setUint32(ARGV_BASE + args.length * 4, 0, true);
76
+ const result = this.exports.qjs_init_argv(args.length, ARGV_BASE);
77
+ if (result !== 0) {
78
+ throw new Error(`qjs_init_argv failed with code ${result}`);
79
+ }
80
+ }
81
+ /**
82
+ * Initialize QuickJS with an empty context.
83
+ */
84
+ init() {
85
+ if (!this.exports)
86
+ throw new Error("QuickJS not initialized");
87
+ const result = this.exports.qjs_init();
88
+ if (result !== 0) {
89
+ throw new Error(`qjs_init failed with code ${result}`);
90
+ }
91
+ }
92
+ /**
93
+ * Evaluate JavaScript code.
94
+ * @param code The JavaScript code to evaluate
95
+ * @param isModule Whether to treat the code as an ES module
96
+ * @param filename Optional filename for error messages
97
+ */
98
+ eval(code, isModule = false, filename = "<eval>") {
99
+ if (!this.exports)
100
+ throw new Error("QuickJS not initialized");
101
+ const codeBytes = new TextEncoder().encode(code);
102
+ const filenameBytes = new TextEncoder().encode(filename);
103
+ // Allocate memory for code
104
+ const codePtr = this.exports.malloc(codeBytes.length + 1);
105
+ if (codePtr === 0)
106
+ throw new Error("malloc failed for code");
107
+ // Allocate memory for filename
108
+ const filenamePtr = this.exports.malloc(filenameBytes.length + 1);
109
+ if (filenamePtr === 0) {
110
+ this.exports.free(codePtr);
111
+ throw new Error("malloc failed for filename");
112
+ }
113
+ const memory = new Uint8Array(this.exports.memory.buffer);
114
+ // Write code with null terminator
115
+ memory.set(codeBytes, codePtr);
116
+ memory[codePtr + codeBytes.length] = 0;
117
+ // Write filename with null terminator
118
+ memory.set(filenameBytes, filenamePtr);
119
+ memory[filenamePtr + filenameBytes.length] = 0;
120
+ // Call qjs_eval
121
+ const result = this.exports.qjs_eval(codePtr, codeBytes.length, filenamePtr, isModule ? 1 : 0);
122
+ // Free allocated memory
123
+ this.exports.free(codePtr);
124
+ this.exports.free(filenamePtr);
125
+ if (result !== 0) {
126
+ throw new Error("eval failed");
127
+ }
128
+ }
129
+ /**
130
+ * Run one iteration of the event loop.
131
+ * @returns Loop result: >0 = timer ms, 0 = more work, -1 = idle, -2 = error
132
+ */
133
+ loopOnce() {
134
+ if (!this.exports)
135
+ throw new Error("QuickJS not initialized");
136
+ try {
137
+ return this.exports.qjs_loop_once();
138
+ }
139
+ catch (e) {
140
+ if (e instanceof WASIProcExit) {
141
+ this.running = false;
142
+ this.exitCode = e.code;
143
+ return LOOP_IDLE;
144
+ }
145
+ throw e;
146
+ }
147
+ }
148
+ /**
149
+ * Poll for I/O events and invoke handlers.
150
+ * @param timeoutMs Poll timeout in milliseconds (0 = non-blocking)
151
+ */
152
+ pollIO(timeoutMs = 0) {
153
+ if (!this.exports)
154
+ throw new Error("QuickJS not initialized");
155
+ try {
156
+ return this.exports.qjs_poll_io(timeoutMs);
157
+ }
158
+ catch (e) {
159
+ if (e instanceof WASIProcExit) {
160
+ this.running = false;
161
+ this.exitCode = e.code;
162
+ return -1;
163
+ }
164
+ throw e;
165
+ }
166
+ }
167
+ /**
168
+ * Push data to stdin for the QuickJS instance to read.
169
+ */
170
+ pushStdin(data) {
171
+ this.stdin.push(data);
172
+ }
173
+ /**
174
+ * Check if stdin has data available.
175
+ */
176
+ hasStdinData() {
177
+ return this.stdin.hasData();
178
+ }
179
+ /**
180
+ * Run the event loop until idle or stopped.
181
+ * This method is designed for browser environments and yields to the event loop.
182
+ * @param onTick Optional callback called on each loop iteration
183
+ * @returns Promise that resolves when the loop is idle
184
+ */
185
+ async runLoop(onTick) {
186
+ this.running = true;
187
+ while (this.running) {
188
+ onTick?.();
189
+ const result = this.loopOnce();
190
+ if (result === LOOP_ERROR) {
191
+ throw new Error("JavaScript error occurred");
192
+ }
193
+ if (result === LOOP_IDLE) {
194
+ // Check if there's stdin data to process
195
+ if (this.stdin.hasData()) {
196
+ this.pollIO(0);
197
+ continue;
198
+ }
199
+ // No more work
200
+ break;
201
+ }
202
+ if (result === 0) {
203
+ // More microtasks pending, yield to browser event loop
204
+ await new Promise((resolve) => queueMicrotask(resolve));
205
+ continue;
206
+ }
207
+ if (result > 0) {
208
+ // Timer pending - check stdin first
209
+ if (this.stdin.hasData()) {
210
+ this.pollIO(0);
211
+ await new Promise((resolve) => queueMicrotask(resolve));
212
+ continue;
213
+ }
214
+ // Wait for timer
215
+ await new Promise((resolve) => setTimeout(resolve, result));
216
+ }
217
+ }
218
+ return this.exitCode;
219
+ }
220
+ /**
221
+ * Run the event loop synchronously (blocking).
222
+ * This is suitable for Node.js/Bun environments.
223
+ * @returns Exit code
224
+ */
225
+ runLoopSync() {
226
+ this.running = true;
227
+ while (this.running) {
228
+ const result = this.loopOnce();
229
+ if (result === LOOP_ERROR) {
230
+ throw new Error("JavaScript error occurred");
231
+ }
232
+ if (result === LOOP_IDLE) {
233
+ if (this.stdin.hasData()) {
234
+ this.pollIO(0);
235
+ continue;
236
+ }
237
+ break;
238
+ }
239
+ if (result === 0) {
240
+ // More microtasks pending
241
+ continue;
242
+ }
243
+ if (result > 0) {
244
+ if (this.stdin.hasData()) {
245
+ this.pollIO(0);
246
+ continue;
247
+ }
248
+ // In sync mode, we just continue - host should call loopOnce again
249
+ // after the timer would have fired
250
+ break;
251
+ }
252
+ }
253
+ return this.exitCode;
254
+ }
255
+ /**
256
+ * Stop the event loop.
257
+ */
258
+ stop() {
259
+ this.running = false;
260
+ }
261
+ /**
262
+ * Destroy the QuickJS runtime and release resources.
263
+ */
264
+ destroy() {
265
+ if (this.exports) {
266
+ this.exports.qjs_destroy();
267
+ }
268
+ this.stdin.close();
269
+ }
270
+ /**
271
+ * Get the exit code (valid after runLoop completes).
272
+ */
273
+ getExitCode() {
274
+ return this.exitCode;
275
+ }
276
+ }
277
+ /**
278
+ * Create a QuickJS instance from a WASM module.
279
+ * @param wasmModule Compiled WebAssembly module
280
+ * @param options Configuration options
281
+ */
282
+ export function createQuickJS(wasmModule, options) {
283
+ return new QuickJS(wasmModule, options);
284
+ }
285
+ /**
286
+ * Load and create a QuickJS instance from a URL or buffer.
287
+ * @param wasmSource URL string, Response, or ArrayBuffer containing the WASM
288
+ * @param options Configuration options
289
+ */
290
+ export async function loadQuickJS(wasmSource, options) {
291
+ let wasmModule;
292
+ if (typeof wasmSource === "string") {
293
+ const response = await fetch(wasmSource);
294
+ wasmModule = await WebAssembly.compileStreaming(response);
295
+ }
296
+ else if (wasmSource instanceof Response) {
297
+ wasmModule = await WebAssembly.compileStreaming(wasmSource);
298
+ }
299
+ else {
300
+ wasmModule = await WebAssembly.compile(wasmSource);
301
+ }
302
+ return createQuickJS(wasmModule, options);
303
+ }
304
+ /**
305
+ * Build a virtual filesystem from a map of paths to file contents.
306
+ * @param files Map of path -> content (string or Uint8Array)
307
+ * @returns Root directory contents suitable for QuickJSOptions.fs
308
+ */
309
+ export function buildFileSystem(files) {
310
+ const root = new Map();
311
+ for (const [path, content] of files) {
312
+ const parts = path.split("/").filter((p) => p.length > 0);
313
+ if (parts.length === 0)
314
+ continue;
315
+ let currentMap = root;
316
+ for (let i = 0; i < parts.length - 1; i++) {
317
+ const part = parts[i];
318
+ const existing = currentMap.get(part);
319
+ if (existing instanceof Directory) {
320
+ currentMap = existing.contents;
321
+ }
322
+ else {
323
+ const newDir = new Map();
324
+ currentMap.set(part, new Directory(newDir));
325
+ currentMap = newDir;
326
+ }
327
+ }
328
+ const fileName = parts[parts.length - 1];
329
+ const data = typeof content === "string" ? new TextEncoder().encode(content) : content;
330
+ currentMap.set(fileName, new File(data));
331
+ }
332
+ return root;
333
+ }
334
+ //# sourceMappingURL=quickjs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quickjs.js","sourceRoot":"","sources":["../src/quickjs.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ /** QuickJS-NG version string */
2
+ export declare const VERSION = "v0.11.0-wasi29-reactor-r3";
3
+ /** Download URL for the WASM binary */
4
+ export declare const DOWNLOAD_URL = "https://github.com/paralin/quickjs/releases/download/v0.11.0-wasi29-reactor-r3/qjs-wasi-reactor.wasm";
5
+ //# sourceMappingURL=version.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAGA,gCAAgC;AAChC,eAAO,MAAM,OAAO,8BAA8B,CAAC;AAEnD,uCAAuC;AACvC,eAAO,MAAM,YAAY,yGAC+E,CAAC"}
@@ -0,0 +1,7 @@
1
+ // Auto-generated by update-quickjs.bash
2
+ // Do not edit manually
3
+ /** QuickJS-NG version string */
4
+ export const VERSION = "v0.11.0-wasi29-reactor-r3";
5
+ /** Download URL for the WASM binary */
6
+ export const DOWNLOAD_URL = "https://github.com/paralin/quickjs/releases/download/v0.11.0-wasi29-reactor-r3/qjs-wasi-reactor.wasm";
7
+ //# sourceMappingURL=version.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA,wCAAwC;AACxC,uBAAuB;AAEvB,gCAAgC;AAChC,MAAM,CAAC,MAAM,OAAO,GAAG,2BAA2B,CAAC;AAEnD,uCAAuC;AACvC,MAAM,CAAC,MAAM,YAAY,GACvB,sGAAsG,CAAC"}