@zaber/motion 7.4.2 → 7.5.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.
- package/LICENSE +9 -253
- package/binding.gyp +2 -1
- package/dist/binding/wasm/zaber-motion-core.wasm +0 -0
- package/dist/lib/ascii/axis.d.ts +11 -1
- package/dist/lib/ascii/axis.d.ts.map +1 -1
- package/dist/lib/ascii/axis.js +5 -1
- package/dist/lib/ascii/axis.js.map +1 -1
- package/dist/lib/ascii/device.d.ts +10 -1
- package/dist/lib/ascii/device.d.ts.map +1 -1
- package/dist/lib/ascii/device.js +5 -1
- package/dist/lib/ascii/device.js.map +1 -1
- package/dist/lib/gateway/wasm-exec.d.ts.map +1 -1
- package/dist/lib/gateway/wasm-exec.js +70 -64
- package/dist/lib/gateway/wasm-exec.js.map +1 -1
- package/dist/lib/library.js +1 -1
- package/dist/lib/library.js.map +1 -1
- package/dist/lib/microscopy/illuminator_channel.d.ts +11 -1
- package/dist/lib/microscopy/illuminator_channel.d.ts.map +1 -1
- package/dist/lib/microscopy/illuminator_channel.js +5 -1
- package/dist/lib/microscopy/illuminator_channel.js.map +1 -1
- package/dist/lib/product/process.d.ts +11 -1
- package/dist/lib/product/process.d.ts.map +1 -1
- package/dist/lib/product/process.js +5 -1
- package/dist/lib/product/process.js.map +1 -1
- package/dist/lib/requests/can_set_state_request.d.ts +2 -0
- package/dist/lib/requests/can_set_state_request.d.ts.map +1 -1
- package/dist/lib/requests/can_set_state_request.js +3 -0
- package/dist/lib/requests/can_set_state_request.js.map +1 -1
- package/dist/lib/units.d.ts +3 -1
- package/dist/lib/units.d.ts.map +1 -1
- package/dist/lib/units.js +2 -0
- package/dist/lib/units.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,29 +1,29 @@
|
|
|
1
1
|
/*
|
|
2
2
|
IMPORTANT
|
|
3
|
-
This file was copied from `https://github.com/golang/go/blob/
|
|
3
|
+
This file was copied from `https://github.com/golang/go/blob/go1.23.0/misc/wasm/wasm_exec.js`.
|
|
4
4
|
It has been modified a bit to reduce webpack warnings about how the `require()` function is being used
|
|
5
5
|
*/
|
|
6
6
|
// Copyright 2018 The Go Authors. All rights reserved.
|
|
7
7
|
// Use of this source code is governed by a BSD-style
|
|
8
8
|
// license that can be found in the LICENSE file.
|
|
9
|
-
|
|
9
|
+
'use strict';
|
|
10
10
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
11
|
const wasmExec = (() => {
|
|
12
12
|
const enosys = () => {
|
|
13
|
-
const err = new Error(
|
|
14
|
-
err.code =
|
|
13
|
+
const err = new Error('not implemented');
|
|
14
|
+
err.code = 'ENOSYS';
|
|
15
15
|
return err;
|
|
16
16
|
};
|
|
17
17
|
if (!globalThis.fs) {
|
|
18
|
-
let outputBuf =
|
|
18
|
+
let outputBuf = '';
|
|
19
19
|
globalThis.fs = {
|
|
20
20
|
constants: { O_WRONLY: -1, O_RDWR: -1, O_CREAT: -1, O_TRUNC: -1, O_APPEND: -1, O_EXCL: -1 }, // unused
|
|
21
21
|
writeSync(fd, buf) {
|
|
22
22
|
outputBuf += decoder.decode(buf);
|
|
23
|
-
const nl = outputBuf.lastIndexOf(
|
|
23
|
+
const nl = outputBuf.lastIndexOf('\n');
|
|
24
24
|
if (nl != -1) {
|
|
25
|
-
console.log(outputBuf.
|
|
26
|
-
outputBuf = outputBuf.
|
|
25
|
+
console.log(outputBuf.substring(0, nl));
|
|
26
|
+
outputBuf = outputBuf.substring(nl + 1);
|
|
27
27
|
}
|
|
28
28
|
return buf.length;
|
|
29
29
|
},
|
|
@@ -75,29 +75,29 @@ const wasmExec = (() => {
|
|
|
75
75
|
};
|
|
76
76
|
}
|
|
77
77
|
if (!globalThis.crypto) {
|
|
78
|
-
throw new Error(
|
|
78
|
+
throw new Error('globalThis.crypto is not available, polyfill required (crypto.getRandomValues only)');
|
|
79
79
|
}
|
|
80
80
|
if (!globalThis.performance) {
|
|
81
|
-
throw new Error(
|
|
81
|
+
throw new Error('globalThis.performance is not available, polyfill required (performance.now only)');
|
|
82
82
|
}
|
|
83
83
|
if (!globalThis.TextEncoder) {
|
|
84
|
-
throw new Error(
|
|
84
|
+
throw new Error('globalThis.TextEncoder is not available, polyfill required');
|
|
85
85
|
}
|
|
86
86
|
if (!globalThis.TextDecoder) {
|
|
87
|
-
throw new Error(
|
|
87
|
+
throw new Error('globalThis.TextDecoder is not available, polyfill required');
|
|
88
88
|
}
|
|
89
|
-
const encoder = new TextEncoder(
|
|
90
|
-
const decoder = new TextDecoder(
|
|
89
|
+
const encoder = new TextEncoder('utf-8');
|
|
90
|
+
const decoder = new TextDecoder('utf-8');
|
|
91
91
|
globalThis.Go = class {
|
|
92
92
|
constructor() {
|
|
93
|
-
this.argv = [
|
|
93
|
+
this.argv = ['js'];
|
|
94
94
|
this.env = {};
|
|
95
|
-
this.exit =
|
|
95
|
+
this.exit = code => {
|
|
96
96
|
if (code !== 0) {
|
|
97
|
-
console.warn(
|
|
97
|
+
console.warn('exit code:', code);
|
|
98
98
|
}
|
|
99
99
|
};
|
|
100
|
-
this._exitPromise = new Promise(
|
|
100
|
+
this._exitPromise = new Promise(resolve => {
|
|
101
101
|
this._resolveExitPromise = resolve;
|
|
102
102
|
});
|
|
103
103
|
this._pendingEvent = null;
|
|
@@ -107,12 +107,15 @@ const wasmExec = (() => {
|
|
|
107
107
|
this.mem.setUint32(addr + 0, v, true);
|
|
108
108
|
this.mem.setUint32(addr + 4, Math.floor(v / 4294967296), true);
|
|
109
109
|
};
|
|
110
|
-
const
|
|
110
|
+
const setInt32 = (addr, v) => {
|
|
111
|
+
this.mem.setUint32(addr + 0, v, true);
|
|
112
|
+
};
|
|
113
|
+
const getInt64 = addr => {
|
|
111
114
|
const low = this.mem.getUint32(addr + 0, true);
|
|
112
115
|
const high = this.mem.getInt32(addr + 4, true);
|
|
113
116
|
return low + high * 4294967296;
|
|
114
117
|
};
|
|
115
|
-
const loadValue =
|
|
118
|
+
const loadValue = addr => {
|
|
116
119
|
const f = this.mem.getFloat64(addr, true);
|
|
117
120
|
if (f === 0) {
|
|
118
121
|
return undefined;
|
|
@@ -125,7 +128,7 @@ const wasmExec = (() => {
|
|
|
125
128
|
};
|
|
126
129
|
const storeValue = (addr, v) => {
|
|
127
130
|
const nanHead = 0x7FF80000;
|
|
128
|
-
if (typeof v ===
|
|
131
|
+
if (typeof v === 'number' && v !== 0) {
|
|
129
132
|
if (isNaN(v)) {
|
|
130
133
|
this.mem.setUint32(addr + 4, nanHead, true);
|
|
131
134
|
this.mem.setUint32(addr, 0, true);
|
|
@@ -151,30 +154,30 @@ const wasmExec = (() => {
|
|
|
151
154
|
this._goRefCounts[id]++;
|
|
152
155
|
let typeFlag = 0;
|
|
153
156
|
switch (typeof v) {
|
|
154
|
-
case
|
|
157
|
+
case 'object':
|
|
155
158
|
if (v !== null) {
|
|
156
159
|
typeFlag = 1;
|
|
157
160
|
}
|
|
158
161
|
break;
|
|
159
|
-
case
|
|
162
|
+
case 'string':
|
|
160
163
|
typeFlag = 2;
|
|
161
164
|
break;
|
|
162
|
-
case
|
|
165
|
+
case 'symbol':
|
|
163
166
|
typeFlag = 3;
|
|
164
167
|
break;
|
|
165
|
-
case
|
|
168
|
+
case 'function':
|
|
166
169
|
typeFlag = 4;
|
|
167
170
|
break;
|
|
168
171
|
}
|
|
169
172
|
this.mem.setUint32(addr + 4, nanHead | typeFlag, true);
|
|
170
173
|
this.mem.setUint32(addr, id, true);
|
|
171
174
|
};
|
|
172
|
-
const loadSlice =
|
|
175
|
+
const loadSlice = addr => {
|
|
173
176
|
const array = getInt64(addr + 0);
|
|
174
177
|
const len = getInt64(addr + 8);
|
|
175
178
|
return new Uint8Array(this._inst.exports.mem.buffer, array, len);
|
|
176
179
|
};
|
|
177
|
-
const loadSliceOfValues =
|
|
180
|
+
const loadSliceOfValues = addr => {
|
|
178
181
|
const array = getInt64(addr + 0);
|
|
179
182
|
const len = getInt64(addr + 8);
|
|
180
183
|
const a = new Array(len);
|
|
@@ -183,20 +186,23 @@ const wasmExec = (() => {
|
|
|
183
186
|
}
|
|
184
187
|
return a;
|
|
185
188
|
};
|
|
186
|
-
const loadString =
|
|
189
|
+
const loadString = addr => {
|
|
187
190
|
const saddr = getInt64(addr + 0);
|
|
188
191
|
const len = getInt64(addr + 8);
|
|
189
192
|
return decoder.decode(new DataView(this._inst.exports.mem.buffer, saddr, len));
|
|
190
193
|
};
|
|
191
194
|
const timeOrigin = Date.now() - performance.now();
|
|
192
195
|
this.importObject = {
|
|
193
|
-
|
|
196
|
+
_gotest: {
|
|
197
|
+
add: (a, b) => a + b,
|
|
198
|
+
},
|
|
199
|
+
gojs: {
|
|
194
200
|
// Go's SP does not change as long as no Go code is running. Some operations (e.g. calls, getters and setters)
|
|
195
201
|
// may synchronously trigger a Go event handler. This makes Go code get executed in the middle of the imported
|
|
196
202
|
// function. A goroutine can switch to a new stack if the current stack is too small (see morestack function).
|
|
197
203
|
// This changes the SP, thus we have to update the SP used by the imported function.
|
|
198
204
|
// func wasmExit(code int32)
|
|
199
|
-
|
|
205
|
+
'runtime.wasmExit': sp => {
|
|
200
206
|
sp >>>= 0;
|
|
201
207
|
const code = this.mem.getInt32(sp + 8, true);
|
|
202
208
|
this.exited = true;
|
|
@@ -208,7 +214,7 @@ const wasmExec = (() => {
|
|
|
208
214
|
this.exit(code);
|
|
209
215
|
},
|
|
210
216
|
// func wasmWrite(fd uintptr, p unsafe.Pointer, n int32)
|
|
211
|
-
|
|
217
|
+
'runtime.wasmWrite': sp => {
|
|
212
218
|
sp >>>= 0;
|
|
213
219
|
const fd = getInt64(sp + 8);
|
|
214
220
|
const p = getInt64(sp + 16);
|
|
@@ -216,24 +222,24 @@ const wasmExec = (() => {
|
|
|
216
222
|
fs.writeSync(fd, new Uint8Array(this._inst.exports.mem.buffer, p, n));
|
|
217
223
|
},
|
|
218
224
|
// func resetMemoryDataView()
|
|
219
|
-
|
|
225
|
+
'runtime.resetMemoryDataView': sp => {
|
|
220
226
|
sp >>>= 0;
|
|
221
227
|
this.mem = new DataView(this._inst.exports.mem.buffer);
|
|
222
228
|
},
|
|
223
229
|
// func nanotime1() int64
|
|
224
|
-
|
|
230
|
+
'runtime.nanotime1': sp => {
|
|
225
231
|
sp >>>= 0;
|
|
226
232
|
setInt64(sp + 8, (timeOrigin + performance.now()) * 1000000);
|
|
227
233
|
},
|
|
228
234
|
// func walltime() (sec int64, nsec int32)
|
|
229
|
-
|
|
235
|
+
'runtime.walltime': sp => {
|
|
230
236
|
sp >>>= 0;
|
|
231
237
|
const msec = (new Date).getTime();
|
|
232
238
|
setInt64(sp + 8, msec / 1000);
|
|
233
239
|
this.mem.setInt32(sp + 16, (msec % 1000) * 1000000, true);
|
|
234
240
|
},
|
|
235
241
|
// func scheduleTimeoutEvent(delay int64) int32
|
|
236
|
-
|
|
242
|
+
'runtime.scheduleTimeoutEvent': sp => {
|
|
237
243
|
sp >>>= 0;
|
|
238
244
|
const id = this._nextCallbackTimeoutID;
|
|
239
245
|
this._nextCallbackTimeoutID++;
|
|
@@ -242,26 +248,26 @@ const wasmExec = (() => {
|
|
|
242
248
|
while (this._scheduledTimeouts.has(id)) {
|
|
243
249
|
// for some reason Go failed to register the timeout event, log and try again
|
|
244
250
|
// (temporary workaround for https://github.com/golang/go/issues/28975)
|
|
245
|
-
console.warn(
|
|
251
|
+
console.warn('scheduleTimeoutEvent: missed timeout event');
|
|
246
252
|
this._resume();
|
|
247
253
|
}
|
|
248
|
-
}, getInt64(sp + 8)
|
|
254
|
+
}, getInt64(sp + 8)));
|
|
249
255
|
this.mem.setInt32(sp + 16, id, true);
|
|
250
256
|
},
|
|
251
257
|
// func clearTimeoutEvent(id int32)
|
|
252
|
-
|
|
258
|
+
'runtime.clearTimeoutEvent': sp => {
|
|
253
259
|
sp >>>= 0;
|
|
254
260
|
const id = this.mem.getInt32(sp + 8, true);
|
|
255
261
|
clearTimeout(this._scheduledTimeouts.get(id));
|
|
256
262
|
this._scheduledTimeouts.delete(id);
|
|
257
263
|
},
|
|
258
264
|
// func getRandomData(r []byte)
|
|
259
|
-
|
|
265
|
+
'runtime.getRandomData': sp => {
|
|
260
266
|
sp >>>= 0;
|
|
261
267
|
crypto.getRandomValues(loadSlice(sp + 8));
|
|
262
268
|
},
|
|
263
269
|
// func finalizeRef(v ref)
|
|
264
|
-
|
|
270
|
+
'syscall/js.finalizeRef': sp => {
|
|
265
271
|
sp >>>= 0;
|
|
266
272
|
const id = this.mem.getUint32(sp + 8, true);
|
|
267
273
|
this._goRefCounts[id]--;
|
|
@@ -273,39 +279,39 @@ const wasmExec = (() => {
|
|
|
273
279
|
}
|
|
274
280
|
},
|
|
275
281
|
// func stringVal(value string) ref
|
|
276
|
-
|
|
282
|
+
'syscall/js.stringVal': sp => {
|
|
277
283
|
sp >>>= 0;
|
|
278
284
|
storeValue(sp + 24, loadString(sp + 8));
|
|
279
285
|
},
|
|
280
286
|
// func valueGet(v ref, p string) ref
|
|
281
|
-
|
|
287
|
+
'syscall/js.valueGet': sp => {
|
|
282
288
|
sp >>>= 0;
|
|
283
289
|
const result = Reflect.get(loadValue(sp + 8), loadString(sp + 16));
|
|
284
290
|
sp = this._inst.exports.getsp() >>> 0; // see comment above
|
|
285
291
|
storeValue(sp + 32, result);
|
|
286
292
|
},
|
|
287
293
|
// func valueSet(v ref, p string, x ref)
|
|
288
|
-
|
|
294
|
+
'syscall/js.valueSet': sp => {
|
|
289
295
|
sp >>>= 0;
|
|
290
296
|
Reflect.set(loadValue(sp + 8), loadString(sp + 16), loadValue(sp + 32));
|
|
291
297
|
},
|
|
292
298
|
// func valueDelete(v ref, p string)
|
|
293
|
-
|
|
299
|
+
'syscall/js.valueDelete': sp => {
|
|
294
300
|
sp >>>= 0;
|
|
295
301
|
Reflect.deleteProperty(loadValue(sp + 8), loadString(sp + 16));
|
|
296
302
|
},
|
|
297
303
|
// func valueIndex(v ref, i int) ref
|
|
298
|
-
|
|
304
|
+
'syscall/js.valueIndex': sp => {
|
|
299
305
|
sp >>>= 0;
|
|
300
306
|
storeValue(sp + 24, Reflect.get(loadValue(sp + 8), getInt64(sp + 16)));
|
|
301
307
|
},
|
|
302
308
|
// valueSetIndex(v ref, i int, x ref)
|
|
303
|
-
|
|
309
|
+
'syscall/js.valueSetIndex': sp => {
|
|
304
310
|
sp >>>= 0;
|
|
305
311
|
Reflect.set(loadValue(sp + 8), getInt64(sp + 16), loadValue(sp + 24));
|
|
306
312
|
},
|
|
307
313
|
// func valueCall(v ref, m string, args []ref) (ref, bool)
|
|
308
|
-
|
|
314
|
+
'syscall/js.valueCall': sp => {
|
|
309
315
|
sp >>>= 0;
|
|
310
316
|
try {
|
|
311
317
|
const v = loadValue(sp + 8);
|
|
@@ -323,7 +329,7 @@ const wasmExec = (() => {
|
|
|
323
329
|
}
|
|
324
330
|
},
|
|
325
331
|
// func valueInvoke(v ref, args []ref) (ref, bool)
|
|
326
|
-
|
|
332
|
+
'syscall/js.valueInvoke': sp => {
|
|
327
333
|
sp >>>= 0;
|
|
328
334
|
try {
|
|
329
335
|
const v = loadValue(sp + 8);
|
|
@@ -340,7 +346,7 @@ const wasmExec = (() => {
|
|
|
340
346
|
}
|
|
341
347
|
},
|
|
342
348
|
// func valueNew(v ref, args []ref) (ref, bool)
|
|
343
|
-
|
|
349
|
+
'syscall/js.valueNew': sp => {
|
|
344
350
|
sp >>>= 0;
|
|
345
351
|
try {
|
|
346
352
|
const v = loadValue(sp + 8);
|
|
@@ -357,30 +363,30 @@ const wasmExec = (() => {
|
|
|
357
363
|
}
|
|
358
364
|
},
|
|
359
365
|
// func valueLength(v ref) int
|
|
360
|
-
|
|
366
|
+
'syscall/js.valueLength': sp => {
|
|
361
367
|
sp >>>= 0;
|
|
362
368
|
setInt64(sp + 16, parseInt(loadValue(sp + 8).length));
|
|
363
369
|
},
|
|
364
370
|
// valuePrepareString(v ref) (ref, int)
|
|
365
|
-
|
|
371
|
+
'syscall/js.valuePrepareString': sp => {
|
|
366
372
|
sp >>>= 0;
|
|
367
373
|
const str = encoder.encode(String(loadValue(sp + 8)));
|
|
368
374
|
storeValue(sp + 16, str);
|
|
369
375
|
setInt64(sp + 24, str.length);
|
|
370
376
|
},
|
|
371
377
|
// valueLoadString(v ref, b []byte)
|
|
372
|
-
|
|
378
|
+
'syscall/js.valueLoadString': sp => {
|
|
373
379
|
sp >>>= 0;
|
|
374
380
|
const str = loadValue(sp + 8);
|
|
375
381
|
loadSlice(sp + 16).set(str);
|
|
376
382
|
},
|
|
377
383
|
// func valueInstanceOf(v ref, t ref) bool
|
|
378
|
-
|
|
384
|
+
'syscall/js.valueInstanceOf': sp => {
|
|
379
385
|
sp >>>= 0;
|
|
380
386
|
this.mem.setUint8(sp + 24, (loadValue(sp + 8) instanceof loadValue(sp + 16)) ? 1 : 0);
|
|
381
387
|
},
|
|
382
388
|
// func copyBytesToGo(dst []byte, src ref) (int, bool)
|
|
383
|
-
|
|
389
|
+
'syscall/js.copyBytesToGo': sp => {
|
|
384
390
|
sp >>>= 0;
|
|
385
391
|
const dst = loadSlice(sp + 8);
|
|
386
392
|
const src = loadValue(sp + 32);
|
|
@@ -394,7 +400,7 @@ const wasmExec = (() => {
|
|
|
394
400
|
this.mem.setUint8(sp + 48, 1);
|
|
395
401
|
},
|
|
396
402
|
// func copyBytesToJS(dst ref, src []byte) (int, bool)
|
|
397
|
-
|
|
403
|
+
'syscall/js.copyBytesToJS': sp => {
|
|
398
404
|
sp >>>= 0;
|
|
399
405
|
const dst = loadValue(sp + 8);
|
|
400
406
|
const src = loadSlice(sp + 16);
|
|
@@ -407,7 +413,7 @@ const wasmExec = (() => {
|
|
|
407
413
|
setInt64(sp + 40, toCopy.length);
|
|
408
414
|
this.mem.setUint8(sp + 48, 1);
|
|
409
415
|
},
|
|
410
|
-
|
|
416
|
+
'debug': value => {
|
|
411
417
|
console.log(value);
|
|
412
418
|
},
|
|
413
419
|
}
|
|
@@ -415,7 +421,7 @@ const wasmExec = (() => {
|
|
|
415
421
|
}
|
|
416
422
|
async run(instance) {
|
|
417
423
|
if (!(instance instanceof WebAssembly.Instance)) {
|
|
418
|
-
throw new Error(
|
|
424
|
+
throw new Error('Go.run: WebAssembly.Instance expected');
|
|
419
425
|
}
|
|
420
426
|
this._inst = instance;
|
|
421
427
|
this.mem = new DataView(this._inst.exports.mem.buffer);
|
|
@@ -441,9 +447,9 @@ const wasmExec = (() => {
|
|
|
441
447
|
this.exited = false; // whether the Go program has exited
|
|
442
448
|
// Pass command line arguments and environment variables to WebAssembly by writing them to the linear memory.
|
|
443
449
|
let offset = 4096;
|
|
444
|
-
const strPtr =
|
|
450
|
+
const strPtr = str => {
|
|
445
451
|
const ptr = offset;
|
|
446
|
-
const bytes = encoder.encode(str
|
|
452
|
+
const bytes = encoder.encode(`${str}\0`);
|
|
447
453
|
new Uint8Array(this.mem.buffer, offset, bytes.length).set(bytes);
|
|
448
454
|
offset += bytes.length;
|
|
449
455
|
if (offset % 8 !== 0) {
|
|
@@ -453,17 +459,17 @@ const wasmExec = (() => {
|
|
|
453
459
|
};
|
|
454
460
|
const argc = this.argv.length;
|
|
455
461
|
const argvPtrs = [];
|
|
456
|
-
this.argv.forEach(
|
|
462
|
+
this.argv.forEach(arg => {
|
|
457
463
|
argvPtrs.push(strPtr(arg));
|
|
458
464
|
});
|
|
459
465
|
argvPtrs.push(0);
|
|
460
466
|
const keys = Object.keys(this.env).sort();
|
|
461
|
-
keys.forEach(
|
|
467
|
+
keys.forEach(key => {
|
|
462
468
|
argvPtrs.push(strPtr(`${key}=${this.env[key]}`));
|
|
463
469
|
});
|
|
464
470
|
argvPtrs.push(0);
|
|
465
471
|
const argv = offset;
|
|
466
|
-
argvPtrs.forEach(
|
|
472
|
+
argvPtrs.forEach(ptr => {
|
|
467
473
|
this.mem.setUint32(offset, ptr, true);
|
|
468
474
|
this.mem.setUint32(offset + 4, 0, true);
|
|
469
475
|
offset += 8;
|
|
@@ -472,7 +478,7 @@ const wasmExec = (() => {
|
|
|
472
478
|
// Keep in sync with cmd/link/internal/ld/data.go:wasmMinDataAddr.
|
|
473
479
|
const wasmMinDataAddr = 4096 + 8192;
|
|
474
480
|
if (offset >= wasmMinDataAddr) {
|
|
475
|
-
throw new Error(
|
|
481
|
+
throw new Error('total length of command line and environment variables exceeds limit');
|
|
476
482
|
}
|
|
477
483
|
this._inst.exports.run(argc, argv);
|
|
478
484
|
if (this.exited) {
|
|
@@ -482,7 +488,7 @@ const wasmExec = (() => {
|
|
|
482
488
|
}
|
|
483
489
|
_resume() {
|
|
484
490
|
if (this.exited) {
|
|
485
|
-
throw new Error(
|
|
491
|
+
throw new Error('Go program has already exited');
|
|
486
492
|
}
|
|
487
493
|
this._inst.exports.resume();
|
|
488
494
|
if (this.exited) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wasm-exec.js","sourceRoot":"","sources":["../../../src/gateway/wasm-exec.js"],"names":[],"mappings":"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","sourcesContent":["/*\nIMPORTANT\nThis file was copied from `https://github.com/golang/go/blob/release-branch.go1.18/misc/wasm/wasm_exec.js`.\nIt has been modified a bit to reduce webpack warnings about how the `require()` function is being used\n*/\n\n// Copyright 2018 The Go Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style\n// license that can be found in the LICENSE file.\n\n\"use strict\";\n\nconst wasmExec = (() => {\n\tconst enosys = () => {\n\t\tconst err = new Error(\"not implemented\");\n\t\terr.code = \"ENOSYS\";\n\t\treturn err;\n\t};\n\n\tif (!globalThis.fs) {\n\t\tlet outputBuf = \"\";\n\t\tglobalThis.fs = {\n\t\t\tconstants: { O_WRONLY: -1, O_RDWR: -1, O_CREAT: -1, O_TRUNC: -1, O_APPEND: -1, O_EXCL: -1 }, // unused\n\t\t\twriteSync(fd, buf) {\n\t\t\t\toutputBuf += decoder.decode(buf);\n\t\t\t\tconst nl = outputBuf.lastIndexOf(\"\\n\");\n\t\t\t\tif (nl != -1) {\n\t\t\t\t\tconsole.log(outputBuf.substr(0, nl));\n\t\t\t\t\toutputBuf = outputBuf.substr(nl + 1);\n\t\t\t\t}\n\t\t\t\treturn buf.length;\n\t\t\t},\n\t\t\twrite(fd, buf, offset, length, position, callback) {\n\t\t\t\tif (offset !== 0 || length !== buf.length || position !== null) {\n\t\t\t\t\tcallback(enosys());\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tconst n = this.writeSync(fd, buf);\n\t\t\t\tcallback(null, n);\n\t\t\t},\n\t\t\tchmod(path, mode, callback) { callback(enosys()); },\n\t\t\tchown(path, uid, gid, callback) { callback(enosys()); },\n\t\t\tclose(fd, callback) { callback(enosys()); },\n\t\t\tfchmod(fd, mode, callback) { callback(enosys()); },\n\t\t\tfchown(fd, uid, gid, callback) { callback(enosys()); },\n\t\t\tfstat(fd, callback) { callback(enosys()); },\n\t\t\tfsync(fd, callback) { callback(null); },\n\t\t\tftruncate(fd, length, callback) { callback(enosys()); },\n\t\t\tlchown(path, uid, gid, callback) { callback(enosys()); },\n\t\t\tlink(path, link, callback) { callback(enosys()); },\n\t\t\tlstat(path, callback) { callback(enosys()); },\n\t\t\tmkdir(path, perm, callback) { callback(enosys()); },\n\t\t\topen(path, flags, mode, callback) { callback(enosys()); },\n\t\t\tread(fd, buffer, offset, length, position, callback) { callback(enosys()); },\n\t\t\treaddir(path, callback) { callback(enosys()); },\n\t\t\treadlink(path, callback) { callback(enosys()); },\n\t\t\trename(from, to, callback) { callback(enosys()); },\n\t\t\trmdir(path, callback) { callback(enosys()); },\n\t\t\tstat(path, callback) { callback(enosys()); },\n\t\t\tsymlink(path, link, callback) { callback(enosys()); },\n\t\t\ttruncate(path, length, callback) { callback(enosys()); },\n\t\t\tunlink(path, callback) { callback(enosys()); },\n\t\t\tutimes(path, atime, mtime, callback) { callback(enosys()); },\n\t\t};\n\t}\n\n\tif (!globalThis.process) {\n\t\tglobalThis.process = {\n\t\t\tgetuid() { return -1; },\n\t\t\tgetgid() { return -1; },\n\t\t\tgeteuid() { return -1; },\n\t\t\tgetegid() { return -1; },\n\t\t\tgetgroups() { throw enosys(); },\n\t\t\tpid: -1,\n\t\t\tppid: -1,\n\t\t\tumask() { throw enosys(); },\n\t\t\tcwd() { throw enosys(); },\n\t\t\tchdir() { throw enosys(); },\n\t\t}\n\t}\n\n\tif (!globalThis.crypto) {\n\t\tthrow new Error(\"globalThis.crypto is not available, polyfill required (crypto.getRandomValues only)\");\n\t}\n\n\tif (!globalThis.performance) {\n\t\tthrow new Error(\"globalThis.performance is not available, polyfill required (performance.now only)\");\n\t}\n\n\tif (!globalThis.TextEncoder) {\n\t\tthrow new Error(\"globalThis.TextEncoder is not available, polyfill required\");\n\t}\n\n\tif (!globalThis.TextDecoder) {\n\t\tthrow new Error(\"globalThis.TextDecoder is not available, polyfill required\");\n\t}\n\n\tconst encoder = new TextEncoder(\"utf-8\");\n\tconst decoder = new TextDecoder(\"utf-8\");\n\n\tglobalThis.Go = class {\n\t\tconstructor() {\n\t\t\tthis.argv = [\"js\"];\n\t\t\tthis.env = {};\n\t\t\tthis.exit = (code) => {\n\t\t\t\tif (code !== 0) {\n\t\t\t\t\tconsole.warn(\"exit code:\", code);\n\t\t\t\t}\n\t\t\t};\n\t\t\tthis._exitPromise = new Promise((resolve) => {\n\t\t\t\tthis._resolveExitPromise = resolve;\n\t\t\t});\n\t\t\tthis._pendingEvent = null;\n\t\t\tthis._scheduledTimeouts = new Map();\n\t\t\tthis._nextCallbackTimeoutID = 1;\n\n\t\t\tconst setInt64 = (addr, v) => {\n\t\t\t\tthis.mem.setUint32(addr + 0, v, true);\n\t\t\t\tthis.mem.setUint32(addr + 4, Math.floor(v / 4294967296), true);\n\t\t\t}\n\n\t\t\tconst getInt64 = (addr) => {\n\t\t\t\tconst low = this.mem.getUint32(addr + 0, true);\n\t\t\t\tconst high = this.mem.getInt32(addr + 4, true);\n\t\t\t\treturn low + high * 4294967296;\n\t\t\t}\n\n\t\t\tconst loadValue = (addr) => {\n\t\t\t\tconst f = this.mem.getFloat64(addr, true);\n\t\t\t\tif (f === 0) {\n\t\t\t\t\treturn undefined;\n\t\t\t\t}\n\t\t\t\tif (!isNaN(f)) {\n\t\t\t\t\treturn f;\n\t\t\t\t}\n\n\t\t\t\tconst id = this.mem.getUint32(addr, true);\n\t\t\t\treturn this._values[id];\n\t\t\t}\n\n\t\t\tconst storeValue = (addr, v) => {\n\t\t\t\tconst nanHead = 0x7FF80000;\n\n\t\t\t\tif (typeof v === \"number\" && v !== 0) {\n\t\t\t\t\tif (isNaN(v)) {\n\t\t\t\t\t\tthis.mem.setUint32(addr + 4, nanHead, true);\n\t\t\t\t\t\tthis.mem.setUint32(addr, 0, true);\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\tthis.mem.setFloat64(addr, v, true);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (v === undefined) {\n\t\t\t\t\tthis.mem.setFloat64(addr, 0, true);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tlet id = this._ids.get(v);\n\t\t\t\tif (id === undefined) {\n\t\t\t\t\tid = this._idPool.pop();\n\t\t\t\t\tif (id === undefined) {\n\t\t\t\t\t\tid = this._values.length;\n\t\t\t\t\t}\n\t\t\t\t\tthis._values[id] = v;\n\t\t\t\t\tthis._goRefCounts[id] = 0;\n\t\t\t\t\tthis._ids.set(v, id);\n\t\t\t\t}\n\t\t\t\tthis._goRefCounts[id]++;\n\t\t\t\tlet typeFlag = 0;\n\t\t\t\tswitch (typeof v) {\n\t\t\t\t\tcase \"object\":\n\t\t\t\t\t\tif (v !== null) {\n\t\t\t\t\t\t\ttypeFlag = 1;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"string\":\n\t\t\t\t\t\ttypeFlag = 2;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"symbol\":\n\t\t\t\t\t\ttypeFlag = 3;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"function\":\n\t\t\t\t\t\ttypeFlag = 4;\n\t\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tthis.mem.setUint32(addr + 4, nanHead | typeFlag, true);\n\t\t\t\tthis.mem.setUint32(addr, id, true);\n\t\t\t}\n\n\t\t\tconst loadSlice = (addr) => {\n\t\t\t\tconst array = getInt64(addr + 0);\n\t\t\t\tconst len = getInt64(addr + 8);\n\t\t\t\treturn new Uint8Array(this._inst.exports.mem.buffer, array, len);\n\t\t\t}\n\n\t\t\tconst loadSliceOfValues = (addr) => {\n\t\t\t\tconst array = getInt64(addr + 0);\n\t\t\t\tconst len = getInt64(addr + 8);\n\t\t\t\tconst a = new Array(len);\n\t\t\t\tfor (let i = 0; i < len; i++) {\n\t\t\t\t\ta[i] = loadValue(array + i * 8);\n\t\t\t\t}\n\t\t\t\treturn a;\n\t\t\t}\n\n\t\t\tconst loadString = (addr) => {\n\t\t\t\tconst saddr = getInt64(addr + 0);\n\t\t\t\tconst len = getInt64(addr + 8);\n\t\t\t\treturn decoder.decode(new DataView(this._inst.exports.mem.buffer, saddr, len));\n\t\t\t}\n\n\t\t\tconst timeOrigin = Date.now() - performance.now();\n\t\t\tthis.importObject = {\n\t\t\t\tgo: {\n\t\t\t\t\t// Go's SP does not change as long as no Go code is running. Some operations (e.g. calls, getters and setters)\n\t\t\t\t\t// may synchronously trigger a Go event handler. This makes Go code get executed in the middle of the imported\n\t\t\t\t\t// function. A goroutine can switch to a new stack if the current stack is too small (see morestack function).\n\t\t\t\t\t// This changes the SP, thus we have to update the SP used by the imported function.\n\n\t\t\t\t\t// func wasmExit(code int32)\n\t\t\t\t\t\"runtime.wasmExit\": (sp) => {\n\t\t\t\t\t\tsp >>>= 0;\n\t\t\t\t\t\tconst code = this.mem.getInt32(sp + 8, true);\n\t\t\t\t\t\tthis.exited = true;\n\t\t\t\t\t\tdelete this._inst;\n\t\t\t\t\t\tdelete this._values;\n\t\t\t\t\t\tdelete this._goRefCounts;\n\t\t\t\t\t\tdelete this._ids;\n\t\t\t\t\t\tdelete this._idPool;\n\t\t\t\t\t\tthis.exit(code);\n\t\t\t\t\t},\n\n\t\t\t\t\t// func wasmWrite(fd uintptr, p unsafe.Pointer, n int32)\n\t\t\t\t\t\"runtime.wasmWrite\": (sp) => {\n\t\t\t\t\t\tsp >>>= 0;\n\t\t\t\t\t\tconst fd = getInt64(sp + 8);\n\t\t\t\t\t\tconst p = getInt64(sp + 16);\n\t\t\t\t\t\tconst n = this.mem.getInt32(sp + 24, true);\n\t\t\t\t\t\tfs.writeSync(fd, new Uint8Array(this._inst.exports.mem.buffer, p, n));\n\t\t\t\t\t},\n\n\t\t\t\t\t// func resetMemoryDataView()\n\t\t\t\t\t\"runtime.resetMemoryDataView\": (sp) => {\n\t\t\t\t\t\tsp >>>= 0;\n\t\t\t\t\t\tthis.mem = new DataView(this._inst.exports.mem.buffer);\n\t\t\t\t\t},\n\n\t\t\t\t\t// func nanotime1() int64\n\t\t\t\t\t\"runtime.nanotime1\": (sp) => {\n\t\t\t\t\t\tsp >>>= 0;\n\t\t\t\t\t\tsetInt64(sp + 8, (timeOrigin + performance.now()) * 1000000);\n\t\t\t\t\t},\n\n\t\t\t\t\t// func walltime() (sec int64, nsec int32)\n\t\t\t\t\t\"runtime.walltime\": (sp) => {\n\t\t\t\t\t\tsp >>>= 0;\n\t\t\t\t\t\tconst msec = (new Date).getTime();\n\t\t\t\t\t\tsetInt64(sp + 8, msec / 1000);\n\t\t\t\t\t\tthis.mem.setInt32(sp + 16, (msec % 1000) * 1000000, true);\n\t\t\t\t\t},\n\n\t\t\t\t\t// func scheduleTimeoutEvent(delay int64) int32\n\t\t\t\t\t\"runtime.scheduleTimeoutEvent\": (sp) => {\n\t\t\t\t\t\tsp >>>= 0;\n\t\t\t\t\t\tconst id = this._nextCallbackTimeoutID;\n\t\t\t\t\t\tthis._nextCallbackTimeoutID++;\n\t\t\t\t\t\tthis._scheduledTimeouts.set(id, setTimeout(\n\t\t\t\t\t\t\t() => {\n\t\t\t\t\t\t\t\tthis._resume();\n\t\t\t\t\t\t\t\twhile (this._scheduledTimeouts.has(id)) {\n\t\t\t\t\t\t\t\t\t// for some reason Go failed to register the timeout event, log and try again\n\t\t\t\t\t\t\t\t\t// (temporary workaround for https://github.com/golang/go/issues/28975)\n\t\t\t\t\t\t\t\t\tconsole.warn(\"scheduleTimeoutEvent: missed timeout event\");\n\t\t\t\t\t\t\t\t\tthis._resume();\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tgetInt64(sp + 8) + 1, // setTimeout has been seen to fire up to 1 millisecond early\n\t\t\t\t\t\t));\n\t\t\t\t\t\tthis.mem.setInt32(sp + 16, id, true);\n\t\t\t\t\t},\n\n\t\t\t\t\t// func clearTimeoutEvent(id int32)\n\t\t\t\t\t\"runtime.clearTimeoutEvent\": (sp) => {\n\t\t\t\t\t\tsp >>>= 0;\n\t\t\t\t\t\tconst id = this.mem.getInt32(sp + 8, true);\n\t\t\t\t\t\tclearTimeout(this._scheduledTimeouts.get(id));\n\t\t\t\t\t\tthis._scheduledTimeouts.delete(id);\n\t\t\t\t\t},\n\n\t\t\t\t\t// func getRandomData(r []byte)\n\t\t\t\t\t\"runtime.getRandomData\": (sp) => {\n\t\t\t\t\t\tsp >>>= 0;\n\t\t\t\t\t\tcrypto.getRandomValues(loadSlice(sp + 8));\n\t\t\t\t\t},\n\n\t\t\t\t\t// func finalizeRef(v ref)\n\t\t\t\t\t\"syscall/js.finalizeRef\": (sp) => {\n\t\t\t\t\t\tsp >>>= 0;\n\t\t\t\t\t\tconst id = this.mem.getUint32(sp + 8, true);\n\t\t\t\t\t\tthis._goRefCounts[id]--;\n\t\t\t\t\t\tif (this._goRefCounts[id] === 0) {\n\t\t\t\t\t\t\tconst v = this._values[id];\n\t\t\t\t\t\t\tthis._values[id] = null;\n\t\t\t\t\t\t\tthis._ids.delete(v);\n\t\t\t\t\t\t\tthis._idPool.push(id);\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\n\t\t\t\t\t// func stringVal(value string) ref\n\t\t\t\t\t\"syscall/js.stringVal\": (sp) => {\n\t\t\t\t\t\tsp >>>= 0;\n\t\t\t\t\t\tstoreValue(sp + 24, loadString(sp + 8));\n\t\t\t\t\t},\n\n\t\t\t\t\t// func valueGet(v ref, p string) ref\n\t\t\t\t\t\"syscall/js.valueGet\": (sp) => {\n\t\t\t\t\t\tsp >>>= 0;\n\t\t\t\t\t\tconst result = Reflect.get(loadValue(sp + 8), loadString(sp + 16));\n\t\t\t\t\t\tsp = this._inst.exports.getsp() >>> 0; // see comment above\n\t\t\t\t\t\tstoreValue(sp + 32, result);\n\t\t\t\t\t},\n\n\t\t\t\t\t// func valueSet(v ref, p string, x ref)\n\t\t\t\t\t\"syscall/js.valueSet\": (sp) => {\n\t\t\t\t\t\tsp >>>= 0;\n\t\t\t\t\t\tReflect.set(loadValue(sp + 8), loadString(sp + 16), loadValue(sp + 32));\n\t\t\t\t\t},\n\n\t\t\t\t\t// func valueDelete(v ref, p string)\n\t\t\t\t\t\"syscall/js.valueDelete\": (sp) => {\n\t\t\t\t\t\tsp >>>= 0;\n\t\t\t\t\t\tReflect.deleteProperty(loadValue(sp + 8), loadString(sp + 16));\n\t\t\t\t\t},\n\n\t\t\t\t\t// func valueIndex(v ref, i int) ref\n\t\t\t\t\t\"syscall/js.valueIndex\": (sp) => {\n\t\t\t\t\t\tsp >>>= 0;\n\t\t\t\t\t\tstoreValue(sp + 24, Reflect.get(loadValue(sp + 8), getInt64(sp + 16)));\n\t\t\t\t\t},\n\n\t\t\t\t\t// valueSetIndex(v ref, i int, x ref)\n\t\t\t\t\t\"syscall/js.valueSetIndex\": (sp) => {\n\t\t\t\t\t\tsp >>>= 0;\n\t\t\t\t\t\tReflect.set(loadValue(sp + 8), getInt64(sp + 16), loadValue(sp + 24));\n\t\t\t\t\t},\n\n\t\t\t\t\t// func valueCall(v ref, m string, args []ref) (ref, bool)\n\t\t\t\t\t\"syscall/js.valueCall\": (sp) => {\n\t\t\t\t\t\tsp >>>= 0;\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tconst v = loadValue(sp + 8);\n\t\t\t\t\t\t\tconst m = Reflect.get(v, loadString(sp + 16));\n\t\t\t\t\t\t\tconst args = loadSliceOfValues(sp + 32);\n\t\t\t\t\t\t\tconst result = Reflect.apply(m, v, args);\n\t\t\t\t\t\t\tsp = this._inst.exports.getsp() >>> 0; // see comment above\n\t\t\t\t\t\t\tstoreValue(sp + 56, result);\n\t\t\t\t\t\t\tthis.mem.setUint8(sp + 64, 1);\n\t\t\t\t\t\t} catch (err) {\n\t\t\t\t\t\t\tsp = this._inst.exports.getsp() >>> 0; // see comment above\n\t\t\t\t\t\t\tstoreValue(sp + 56, err);\n\t\t\t\t\t\t\tthis.mem.setUint8(sp + 64, 0);\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\n\t\t\t\t\t// func valueInvoke(v ref, args []ref) (ref, bool)\n\t\t\t\t\t\"syscall/js.valueInvoke\": (sp) => {\n\t\t\t\t\t\tsp >>>= 0;\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tconst v = loadValue(sp + 8);\n\t\t\t\t\t\t\tconst args = loadSliceOfValues(sp + 16);\n\t\t\t\t\t\t\tconst result = Reflect.apply(v, undefined, args);\n\t\t\t\t\t\t\tsp = this._inst.exports.getsp() >>> 0; // see comment above\n\t\t\t\t\t\t\tstoreValue(sp + 40, result);\n\t\t\t\t\t\t\tthis.mem.setUint8(sp + 48, 1);\n\t\t\t\t\t\t} catch (err) {\n\t\t\t\t\t\t\tsp = this._inst.exports.getsp() >>> 0; // see comment above\n\t\t\t\t\t\t\tstoreValue(sp + 40, err);\n\t\t\t\t\t\t\tthis.mem.setUint8(sp + 48, 0);\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\n\t\t\t\t\t// func valueNew(v ref, args []ref) (ref, bool)\n\t\t\t\t\t\"syscall/js.valueNew\": (sp) => {\n\t\t\t\t\t\tsp >>>= 0;\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tconst v = loadValue(sp + 8);\n\t\t\t\t\t\t\tconst args = loadSliceOfValues(sp + 16);\n\t\t\t\t\t\t\tconst result = Reflect.construct(v, args);\n\t\t\t\t\t\t\tsp = this._inst.exports.getsp() >>> 0; // see comment above\n\t\t\t\t\t\t\tstoreValue(sp + 40, result);\n\t\t\t\t\t\t\tthis.mem.setUint8(sp + 48, 1);\n\t\t\t\t\t\t} catch (err) {\n\t\t\t\t\t\t\tsp = this._inst.exports.getsp() >>> 0; // see comment above\n\t\t\t\t\t\t\tstoreValue(sp + 40, err);\n\t\t\t\t\t\t\tthis.mem.setUint8(sp + 48, 0);\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\n\t\t\t\t\t// func valueLength(v ref) int\n\t\t\t\t\t\"syscall/js.valueLength\": (sp) => {\n\t\t\t\t\t\tsp >>>= 0;\n\t\t\t\t\t\tsetInt64(sp + 16, parseInt(loadValue(sp + 8).length));\n\t\t\t\t\t},\n\n\t\t\t\t\t// valuePrepareString(v ref) (ref, int)\n\t\t\t\t\t\"syscall/js.valuePrepareString\": (sp) => {\n\t\t\t\t\t\tsp >>>= 0;\n\t\t\t\t\t\tconst str = encoder.encode(String(loadValue(sp + 8)));\n\t\t\t\t\t\tstoreValue(sp + 16, str);\n\t\t\t\t\t\tsetInt64(sp + 24, str.length);\n\t\t\t\t\t},\n\n\t\t\t\t\t// valueLoadString(v ref, b []byte)\n\t\t\t\t\t\"syscall/js.valueLoadString\": (sp) => {\n\t\t\t\t\t\tsp >>>= 0;\n\t\t\t\t\t\tconst str = loadValue(sp + 8);\n\t\t\t\t\t\tloadSlice(sp + 16).set(str);\n\t\t\t\t\t},\n\n\t\t\t\t\t// func valueInstanceOf(v ref, t ref) bool\n\t\t\t\t\t\"syscall/js.valueInstanceOf\": (sp) => {\n\t\t\t\t\t\tsp >>>= 0;\n\t\t\t\t\t\tthis.mem.setUint8(sp + 24, (loadValue(sp + 8) instanceof loadValue(sp + 16)) ? 1 : 0);\n\t\t\t\t\t},\n\n\t\t\t\t\t// func copyBytesToGo(dst []byte, src ref) (int, bool)\n\t\t\t\t\t\"syscall/js.copyBytesToGo\": (sp) => {\n\t\t\t\t\t\tsp >>>= 0;\n\t\t\t\t\t\tconst dst = loadSlice(sp + 8);\n\t\t\t\t\t\tconst src = loadValue(sp + 32);\n\t\t\t\t\t\tif (!(src instanceof Uint8Array || src instanceof Uint8ClampedArray)) {\n\t\t\t\t\t\t\tthis.mem.setUint8(sp + 48, 0);\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tconst toCopy = src.subarray(0, dst.length);\n\t\t\t\t\t\tdst.set(toCopy);\n\t\t\t\t\t\tsetInt64(sp + 40, toCopy.length);\n\t\t\t\t\t\tthis.mem.setUint8(sp + 48, 1);\n\t\t\t\t\t},\n\n\t\t\t\t\t// func copyBytesToJS(dst ref, src []byte) (int, bool)\n\t\t\t\t\t\"syscall/js.copyBytesToJS\": (sp) => {\n\t\t\t\t\t\tsp >>>= 0;\n\t\t\t\t\t\tconst dst = loadValue(sp + 8);\n\t\t\t\t\t\tconst src = loadSlice(sp + 16);\n\t\t\t\t\t\tif (!(dst instanceof Uint8Array || dst instanceof Uint8ClampedArray)) {\n\t\t\t\t\t\t\tthis.mem.setUint8(sp + 48, 0);\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tconst toCopy = src.subarray(0, dst.length);\n\t\t\t\t\t\tdst.set(toCopy);\n\t\t\t\t\t\tsetInt64(sp + 40, toCopy.length);\n\t\t\t\t\t\tthis.mem.setUint8(sp + 48, 1);\n\t\t\t\t\t},\n\n\t\t\t\t\t\"debug\": (value) => {\n\t\t\t\t\t\tconsole.log(value);\n\t\t\t\t\t},\n\t\t\t\t}\n\t\t\t};\n\t\t}\n\n\t\tasync run(instance) {\n\t\t\tif (!(instance instanceof WebAssembly.Instance)) {\n\t\t\t\tthrow new Error(\"Go.run: WebAssembly.Instance expected\");\n\t\t\t}\n\t\t\tthis._inst = instance;\n\t\t\tthis.mem = new DataView(this._inst.exports.mem.buffer);\n\t\t\tthis._values = [ // JS values that Go currently has references to, indexed by reference id\n\t\t\t\tNaN,\n\t\t\t\t0,\n\t\t\t\tnull,\n\t\t\t\ttrue,\n\t\t\t\tfalse,\n\t\t\t\tglobalThis,\n\t\t\t\tthis,\n\t\t\t];\n\t\t\tthis._goRefCounts = new Array(this._values.length).fill(Infinity); // number of references that Go has to a JS value, indexed by reference id\n\t\t\tthis._ids = new Map([ // mapping from JS values to reference ids\n\t\t\t\t[0, 1],\n\t\t\t\t[null, 2],\n\t\t\t\t[true, 3],\n\t\t\t\t[false, 4],\n\t\t\t\t[globalThis, 5],\n\t\t\t\t[this, 6],\n\t\t\t]);\n\t\t\tthis._idPool = []; // unused ids that have been garbage collected\n\t\t\tthis.exited = false; // whether the Go program has exited\n\n\t\t\t// Pass command line arguments and environment variables to WebAssembly by writing them to the linear memory.\n\t\t\tlet offset = 4096;\n\n\t\t\tconst strPtr = (str) => {\n\t\t\t\tconst ptr = offset;\n\t\t\t\tconst bytes = encoder.encode(str + \"\\0\");\n\t\t\t\tnew Uint8Array(this.mem.buffer, offset, bytes.length).set(bytes);\n\t\t\t\toffset += bytes.length;\n\t\t\t\tif (offset % 8 !== 0) {\n\t\t\t\t\toffset += 8 - (offset % 8);\n\t\t\t\t}\n\t\t\t\treturn ptr;\n\t\t\t};\n\n\t\t\tconst argc = this.argv.length;\n\n\t\t\tconst argvPtrs = [];\n\t\t\tthis.argv.forEach((arg) => {\n\t\t\t\targvPtrs.push(strPtr(arg));\n\t\t\t});\n\t\t\targvPtrs.push(0);\n\n\t\t\tconst keys = Object.keys(this.env).sort();\n\t\t\tkeys.forEach((key) => {\n\t\t\t\targvPtrs.push(strPtr(`${key}=${this.env[key]}`));\n\t\t\t});\n\t\t\targvPtrs.push(0);\n\n\t\t\tconst argv = offset;\n\t\t\targvPtrs.forEach((ptr) => {\n\t\t\t\tthis.mem.setUint32(offset, ptr, true);\n\t\t\t\tthis.mem.setUint32(offset + 4, 0, true);\n\t\t\t\toffset += 8;\n\t\t\t});\n\n\t\t\t// The linker guarantees global data starts from at least wasmMinDataAddr.\n\t\t\t// Keep in sync with cmd/link/internal/ld/data.go:wasmMinDataAddr.\n\t\t\tconst wasmMinDataAddr = 4096 + 8192;\n\t\t\tif (offset >= wasmMinDataAddr) {\n\t\t\t\tthrow new Error(\"total length of command line and environment variables exceeds limit\");\n\t\t\t}\n\n\t\t\tthis._inst.exports.run(argc, argv);\n\t\t\tif (this.exited) {\n\t\t\t\tthis._resolveExitPromise();\n\t\t\t}\n\t\t\tawait this._exitPromise;\n\t\t}\n\n\t\t_resume() {\n\t\t\tif (this.exited) {\n\t\t\t\tthrow new Error(\"Go program has already exited\");\n\t\t\t}\n\t\t\tthis._inst.exports.resume();\n\t\t\tif (this.exited) {\n\t\t\t\tthis._resolveExitPromise();\n\t\t\t}\n\t\t}\n\n\t\t_makeFuncWrapper(id) {\n\t\t\tconst go = this;\n\t\t\treturn function () {\n\t\t\t\tconst event = { id: id, this: this, args: arguments };\n\t\t\t\tgo._pendingEvent = event;\n\t\t\t\tgo._resume();\n\t\t\t\treturn event.result;\n\t\t\t};\n\t\t}\n\t}\n});\n\nmodule.exports = {\n\twasmExec,\n};\n"]}
|
|
1
|
+
{"version":3,"file":"wasm-exec.js","sourceRoot":"","sources":["../../../src/gateway/wasm-exec.js"],"names":[],"mappings":"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","sourcesContent":["/*\nIMPORTANT\nThis file was copied from `https://github.com/golang/go/blob/go1.23.0/misc/wasm/wasm_exec.js`.\nIt has been modified a bit to reduce webpack warnings about how the `require()` function is being used\n*/\n\n// Copyright 2018 The Go Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style\n// license that can be found in the LICENSE file.\n\n'use strict';\n\nconst wasmExec = (() => {\n const enosys = () => {\n const err = new Error('not implemented');\n err.code = 'ENOSYS';\n return err;\n };\n\n if (!globalThis.fs) {\n let outputBuf = '';\n globalThis.fs = {\n constants: { O_WRONLY: -1, O_RDWR: -1, O_CREAT: -1, O_TRUNC: -1, O_APPEND: -1, O_EXCL: -1 }, // unused\n writeSync(fd, buf) {\n outputBuf += decoder.decode(buf);\n const nl = outputBuf.lastIndexOf('\\n');\n if (nl != -1) {\n console.log(outputBuf.substring(0, nl));\n outputBuf = outputBuf.substring(nl + 1);\n }\n return buf.length;\n },\n write(fd, buf, offset, length, position, callback) {\n if (offset !== 0 || length !== buf.length || position !== null) {\n callback(enosys());\n return;\n }\n const n = this.writeSync(fd, buf);\n callback(null, n);\n },\n chmod(path, mode, callback) { callback(enosys()); },\n chown(path, uid, gid, callback) { callback(enosys()); },\n close(fd, callback) { callback(enosys()); },\n fchmod(fd, mode, callback) { callback(enosys()); },\n fchown(fd, uid, gid, callback) { callback(enosys()); },\n fstat(fd, callback) { callback(enosys()); },\n fsync(fd, callback) { callback(null); },\n ftruncate(fd, length, callback) { callback(enosys()); },\n lchown(path, uid, gid, callback) { callback(enosys()); },\n link(path, link, callback) { callback(enosys()); },\n lstat(path, callback) { callback(enosys()); },\n mkdir(path, perm, callback) { callback(enosys()); },\n open(path, flags, mode, callback) { callback(enosys()); },\n read(fd, buffer, offset, length, position, callback) { callback(enosys()); },\n readdir(path, callback) { callback(enosys()); },\n readlink(path, callback) { callback(enosys()); },\n rename(from, to, callback) { callback(enosys()); },\n rmdir(path, callback) { callback(enosys()); },\n stat(path, callback) { callback(enosys()); },\n symlink(path, link, callback) { callback(enosys()); },\n truncate(path, length, callback) { callback(enosys()); },\n unlink(path, callback) { callback(enosys()); },\n utimes(path, atime, mtime, callback) { callback(enosys()); },\n };\n }\n\n if (!globalThis.process) {\n globalThis.process = {\n getuid() { return -1; },\n getgid() { return -1; },\n geteuid() { return -1; },\n getegid() { return -1; },\n getgroups() { throw enosys(); },\n pid: -1,\n ppid: -1,\n umask() { throw enosys(); },\n cwd() { throw enosys(); },\n chdir() { throw enosys(); },\n };\n }\n\n if (!globalThis.crypto) {\n throw new Error('globalThis.crypto is not available, polyfill required (crypto.getRandomValues only)');\n }\n\n if (!globalThis.performance) {\n throw new Error('globalThis.performance is not available, polyfill required (performance.now only)');\n }\n\n if (!globalThis.TextEncoder) {\n throw new Error('globalThis.TextEncoder is not available, polyfill required');\n }\n\n if (!globalThis.TextDecoder) {\n throw new Error('globalThis.TextDecoder is not available, polyfill required');\n }\n\n const encoder = new TextEncoder('utf-8');\n const decoder = new TextDecoder('utf-8');\n\n globalThis.Go = class {\n constructor() {\n this.argv = ['js'];\n this.env = {};\n this.exit = code => {\n if (code !== 0) {\n console.warn('exit code:', code);\n }\n };\n this._exitPromise = new Promise(resolve => {\n this._resolveExitPromise = resolve;\n });\n this._pendingEvent = null;\n this._scheduledTimeouts = new Map();\n this._nextCallbackTimeoutID = 1;\n\n const setInt64 = (addr, v) => {\n this.mem.setUint32(addr + 0, v, true);\n this.mem.setUint32(addr + 4, Math.floor(v / 4294967296), true);\n };\n\n const setInt32 = (addr, v) => {\n this.mem.setUint32(addr + 0, v, true);\n };\n\n const getInt64 = addr => {\n const low = this.mem.getUint32(addr + 0, true);\n const high = this.mem.getInt32(addr + 4, true);\n return low + high * 4294967296;\n };\n\n const loadValue = addr => {\n const f = this.mem.getFloat64(addr, true);\n if (f === 0) {\n return undefined;\n }\n if (!isNaN(f)) {\n return f;\n }\n\n const id = this.mem.getUint32(addr, true);\n return this._values[id];\n };\n\n const storeValue = (addr, v) => {\n const nanHead = 0x7FF80000;\n\n if (typeof v === 'number' && v !== 0) {\n if (isNaN(v)) {\n this.mem.setUint32(addr + 4, nanHead, true);\n this.mem.setUint32(addr, 0, true);\n return;\n }\n this.mem.setFloat64(addr, v, true);\n return;\n }\n\n if (v === undefined) {\n this.mem.setFloat64(addr, 0, true);\n return;\n }\n\n let id = this._ids.get(v);\n if (id === undefined) {\n id = this._idPool.pop();\n if (id === undefined) {\n id = this._values.length;\n }\n this._values[id] = v;\n this._goRefCounts[id] = 0;\n this._ids.set(v, id);\n }\n this._goRefCounts[id]++;\n let typeFlag = 0;\n switch (typeof v) {\n case 'object':\n if (v !== null) {\n typeFlag = 1;\n }\n break;\n case 'string':\n typeFlag = 2;\n break;\n case 'symbol':\n typeFlag = 3;\n break;\n case 'function':\n typeFlag = 4;\n break;\n }\n this.mem.setUint32(addr + 4, nanHead | typeFlag, true);\n this.mem.setUint32(addr, id, true);\n };\n\n const loadSlice = addr => {\n const array = getInt64(addr + 0);\n const len = getInt64(addr + 8);\n return new Uint8Array(this._inst.exports.mem.buffer, array, len);\n };\n\n const loadSliceOfValues = addr => {\n const array = getInt64(addr + 0);\n const len = getInt64(addr + 8);\n const a = new Array(len);\n for (let i = 0; i < len; i++) {\n a[i] = loadValue(array + i * 8);\n }\n return a;\n };\n\n const loadString = addr => {\n const saddr = getInt64(addr + 0);\n const len = getInt64(addr + 8);\n return decoder.decode(new DataView(this._inst.exports.mem.buffer, saddr, len));\n };\n\n const timeOrigin = Date.now() - performance.now();\n this.importObject = {\n _gotest: {\n add: (a, b) => a + b,\n },\n gojs: {\n // Go's SP does not change as long as no Go code is running. Some operations (e.g. calls, getters and setters)\n // may synchronously trigger a Go event handler. This makes Go code get executed in the middle of the imported\n // function. A goroutine can switch to a new stack if the current stack is too small (see morestack function).\n // This changes the SP, thus we have to update the SP used by the imported function.\n\n // func wasmExit(code int32)\n 'runtime.wasmExit': sp => {\n sp >>>= 0;\n const code = this.mem.getInt32(sp + 8, true);\n this.exited = true;\n delete this._inst;\n delete this._values;\n delete this._goRefCounts;\n delete this._ids;\n delete this._idPool;\n this.exit(code);\n },\n\n // func wasmWrite(fd uintptr, p unsafe.Pointer, n int32)\n 'runtime.wasmWrite': sp => {\n sp >>>= 0;\n const fd = getInt64(sp + 8);\n const p = getInt64(sp + 16);\n const n = this.mem.getInt32(sp + 24, true);\n fs.writeSync(fd, new Uint8Array(this._inst.exports.mem.buffer, p, n));\n },\n\n // func resetMemoryDataView()\n 'runtime.resetMemoryDataView': sp => {\n sp >>>= 0;\n this.mem = new DataView(this._inst.exports.mem.buffer);\n },\n\n // func nanotime1() int64\n 'runtime.nanotime1': sp => {\n sp >>>= 0;\n setInt64(sp + 8, (timeOrigin + performance.now()) * 1000000);\n },\n\n // func walltime() (sec int64, nsec int32)\n 'runtime.walltime': sp => {\n sp >>>= 0;\n const msec = (new Date).getTime();\n setInt64(sp + 8, msec / 1000);\n this.mem.setInt32(sp + 16, (msec % 1000) * 1000000, true);\n },\n\n // func scheduleTimeoutEvent(delay int64) int32\n 'runtime.scheduleTimeoutEvent': sp => {\n sp >>>= 0;\n const id = this._nextCallbackTimeoutID;\n this._nextCallbackTimeoutID++;\n this._scheduledTimeouts.set(id, setTimeout(\n () => {\n this._resume();\n while (this._scheduledTimeouts.has(id)) {\n // for some reason Go failed to register the timeout event, log and try again\n // (temporary workaround for https://github.com/golang/go/issues/28975)\n console.warn('scheduleTimeoutEvent: missed timeout event');\n this._resume();\n }\n },\n getInt64(sp + 8),\n ));\n this.mem.setInt32(sp + 16, id, true);\n },\n\n // func clearTimeoutEvent(id int32)\n 'runtime.clearTimeoutEvent': sp => {\n sp >>>= 0;\n const id = this.mem.getInt32(sp + 8, true);\n clearTimeout(this._scheduledTimeouts.get(id));\n this._scheduledTimeouts.delete(id);\n },\n\n // func getRandomData(r []byte)\n 'runtime.getRandomData': sp => {\n sp >>>= 0;\n crypto.getRandomValues(loadSlice(sp + 8));\n },\n\n // func finalizeRef(v ref)\n 'syscall/js.finalizeRef': sp => {\n sp >>>= 0;\n const id = this.mem.getUint32(sp + 8, true);\n this._goRefCounts[id]--;\n if (this._goRefCounts[id] === 0) {\n const v = this._values[id];\n this._values[id] = null;\n this._ids.delete(v);\n this._idPool.push(id);\n }\n },\n\n // func stringVal(value string) ref\n 'syscall/js.stringVal': sp => {\n sp >>>= 0;\n storeValue(sp + 24, loadString(sp + 8));\n },\n\n // func valueGet(v ref, p string) ref\n 'syscall/js.valueGet': sp => {\n sp >>>= 0;\n const result = Reflect.get(loadValue(sp + 8), loadString(sp + 16));\n sp = this._inst.exports.getsp() >>> 0; // see comment above\n storeValue(sp + 32, result);\n },\n\n // func valueSet(v ref, p string, x ref)\n 'syscall/js.valueSet': sp => {\n sp >>>= 0;\n Reflect.set(loadValue(sp + 8), loadString(sp + 16), loadValue(sp + 32));\n },\n\n // func valueDelete(v ref, p string)\n 'syscall/js.valueDelete': sp => {\n sp >>>= 0;\n Reflect.deleteProperty(loadValue(sp + 8), loadString(sp + 16));\n },\n\n // func valueIndex(v ref, i int) ref\n 'syscall/js.valueIndex': sp => {\n sp >>>= 0;\n storeValue(sp + 24, Reflect.get(loadValue(sp + 8), getInt64(sp + 16)));\n },\n\n // valueSetIndex(v ref, i int, x ref)\n 'syscall/js.valueSetIndex': sp => {\n sp >>>= 0;\n Reflect.set(loadValue(sp + 8), getInt64(sp + 16), loadValue(sp + 24));\n },\n\n // func valueCall(v ref, m string, args []ref) (ref, bool)\n 'syscall/js.valueCall': sp => {\n sp >>>= 0;\n try {\n const v = loadValue(sp + 8);\n const m = Reflect.get(v, loadString(sp + 16));\n const args = loadSliceOfValues(sp + 32);\n const result = Reflect.apply(m, v, args);\n sp = this._inst.exports.getsp() >>> 0; // see comment above\n storeValue(sp + 56, result);\n this.mem.setUint8(sp + 64, 1);\n } catch (err) {\n sp = this._inst.exports.getsp() >>> 0; // see comment above\n storeValue(sp + 56, err);\n this.mem.setUint8(sp + 64, 0);\n }\n },\n\n // func valueInvoke(v ref, args []ref) (ref, bool)\n 'syscall/js.valueInvoke': sp => {\n sp >>>= 0;\n try {\n const v = loadValue(sp + 8);\n const args = loadSliceOfValues(sp + 16);\n const result = Reflect.apply(v, undefined, args);\n sp = this._inst.exports.getsp() >>> 0; // see comment above\n storeValue(sp + 40, result);\n this.mem.setUint8(sp + 48, 1);\n } catch (err) {\n sp = this._inst.exports.getsp() >>> 0; // see comment above\n storeValue(sp + 40, err);\n this.mem.setUint8(sp + 48, 0);\n }\n },\n\n // func valueNew(v ref, args []ref) (ref, bool)\n 'syscall/js.valueNew': sp => {\n sp >>>= 0;\n try {\n const v = loadValue(sp + 8);\n const args = loadSliceOfValues(sp + 16);\n const result = Reflect.construct(v, args);\n sp = this._inst.exports.getsp() >>> 0; // see comment above\n storeValue(sp + 40, result);\n this.mem.setUint8(sp + 48, 1);\n } catch (err) {\n sp = this._inst.exports.getsp() >>> 0; // see comment above\n storeValue(sp + 40, err);\n this.mem.setUint8(sp + 48, 0);\n }\n },\n\n // func valueLength(v ref) int\n 'syscall/js.valueLength': sp => {\n sp >>>= 0;\n setInt64(sp + 16, parseInt(loadValue(sp + 8).length));\n },\n\n // valuePrepareString(v ref) (ref, int)\n 'syscall/js.valuePrepareString': sp => {\n sp >>>= 0;\n const str = encoder.encode(String(loadValue(sp + 8)));\n storeValue(sp + 16, str);\n setInt64(sp + 24, str.length);\n },\n\n // valueLoadString(v ref, b []byte)\n 'syscall/js.valueLoadString': sp => {\n sp >>>= 0;\n const str = loadValue(sp + 8);\n loadSlice(sp + 16).set(str);\n },\n\n // func valueInstanceOf(v ref, t ref) bool\n 'syscall/js.valueInstanceOf': sp => {\n sp >>>= 0;\n this.mem.setUint8(sp + 24, (loadValue(sp + 8) instanceof loadValue(sp + 16)) ? 1 : 0);\n },\n\n // func copyBytesToGo(dst []byte, src ref) (int, bool)\n 'syscall/js.copyBytesToGo': sp => {\n sp >>>= 0;\n const dst = loadSlice(sp + 8);\n const src = loadValue(sp + 32);\n if (!(src instanceof Uint8Array || src instanceof Uint8ClampedArray)) {\n this.mem.setUint8(sp + 48, 0);\n return;\n }\n const toCopy = src.subarray(0, dst.length);\n dst.set(toCopy);\n setInt64(sp + 40, toCopy.length);\n this.mem.setUint8(sp + 48, 1);\n },\n\n // func copyBytesToJS(dst ref, src []byte) (int, bool)\n 'syscall/js.copyBytesToJS': sp => {\n sp >>>= 0;\n const dst = loadValue(sp + 8);\n const src = loadSlice(sp + 16);\n if (!(dst instanceof Uint8Array || dst instanceof Uint8ClampedArray)) {\n this.mem.setUint8(sp + 48, 0);\n return;\n }\n const toCopy = src.subarray(0, dst.length);\n dst.set(toCopy);\n setInt64(sp + 40, toCopy.length);\n this.mem.setUint8(sp + 48, 1);\n },\n\n 'debug': value => {\n console.log(value);\n },\n }\n };\n }\n\n async run(instance) {\n if (!(instance instanceof WebAssembly.Instance)) {\n throw new Error('Go.run: WebAssembly.Instance expected');\n }\n this._inst = instance;\n this.mem = new DataView(this._inst.exports.mem.buffer);\n this._values = [ // JS values that Go currently has references to, indexed by reference id\n NaN,\n 0,\n null,\n true,\n false,\n globalThis,\n this,\n ];\n this._goRefCounts = new Array(this._values.length).fill(Infinity); // number of references that Go has to a JS value, indexed by reference id\n this._ids = new Map([ // mapping from JS values to reference ids\n [0, 1],\n [null, 2],\n [true, 3],\n [false, 4],\n [globalThis, 5],\n [this, 6],\n ]);\n this._idPool = []; // unused ids that have been garbage collected\n this.exited = false; // whether the Go program has exited\n\n // Pass command line arguments and environment variables to WebAssembly by writing them to the linear memory.\n let offset = 4096;\n\n const strPtr = str => {\n const ptr = offset;\n const bytes = encoder.encode(`${str}\\0`);\n new Uint8Array(this.mem.buffer, offset, bytes.length).set(bytes);\n offset += bytes.length;\n if (offset % 8 !== 0) {\n offset += 8 - (offset % 8);\n }\n return ptr;\n };\n\n const argc = this.argv.length;\n\n const argvPtrs = [];\n this.argv.forEach(arg => {\n argvPtrs.push(strPtr(arg));\n });\n argvPtrs.push(0);\n\n const keys = Object.keys(this.env).sort();\n keys.forEach(key => {\n argvPtrs.push(strPtr(`${key}=${this.env[key]}`));\n });\n argvPtrs.push(0);\n\n const argv = offset;\n argvPtrs.forEach(ptr => {\n this.mem.setUint32(offset, ptr, true);\n this.mem.setUint32(offset + 4, 0, true);\n offset += 8;\n });\n\n // The linker guarantees global data starts from at least wasmMinDataAddr.\n // Keep in sync with cmd/link/internal/ld/data.go:wasmMinDataAddr.\n const wasmMinDataAddr = 4096 + 8192;\n if (offset >= wasmMinDataAddr) {\n throw new Error('total length of command line and environment variables exceeds limit');\n }\n\n this._inst.exports.run(argc, argv);\n if (this.exited) {\n this._resolveExitPromise();\n }\n await this._exitPromise;\n }\n\n _resume() {\n if (this.exited) {\n throw new Error('Go program has already exited');\n }\n this._inst.exports.resume();\n if (this.exited) {\n this._resolveExitPromise();\n }\n }\n\n _makeFuncWrapper(id) {\n const go = this;\n return function() {\n const event = { id: id, this: this, args: arguments };\n go._pendingEvent = event;\n go._resume();\n return event.result;\n };\n }\n };\n});\n\nmodule.exports = {\n wasmExec,\n};\n"]}
|
package/dist/lib/library.js
CHANGED