wasm-idle 0.0.18 → 0.0.19
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.
|
@@ -30,12 +30,19 @@ async function initSandbox(language) {
|
|
|
30
30
|
sandbox.output = (output) => _tc === tc && term.write(output.replaceAll("\n", "\r\n"));
|
|
31
31
|
}
|
|
32
32
|
function runSandbox(pr) {
|
|
33
|
-
return pr.then(() =>
|
|
34
|
-
|
|
35
|
-
|
|
33
|
+
return pr.then((x) => {
|
|
34
|
+
term.write(`\r
|
|
35
|
+
Process finished after ${sandbox.elapse}ms\x1B[?25l`);
|
|
36
|
+
return x;
|
|
37
|
+
}).catch((msg) => {
|
|
38
|
+
term.write(`\r
|
|
39
|
+
\x1B[1;3;31m${msg}\x1B[?25l`);
|
|
40
|
+
return false;
|
|
41
|
+
}).finally((ret) => {
|
|
36
42
|
dispatch("finish");
|
|
37
43
|
finish = true;
|
|
38
44
|
term.options.cursorBlink = false;
|
|
45
|
+
return ret;
|
|
39
46
|
});
|
|
40
47
|
}
|
|
41
48
|
async function initTerm(blink = true) {
|
|
@@ -58,11 +65,11 @@ export const terminal = {
|
|
|
58
65
|
},
|
|
59
66
|
async prepare(language, code, log = true, prog) {
|
|
60
67
|
await Promise.all([initSandbox(language).then(() => sandbox.load(path, code, log)), initTerm(false)]);
|
|
61
|
-
await runSandbox(sandbox.run(code, true, log, prog));
|
|
68
|
+
return await runSandbox(sandbox.run(code, true, log, prog));
|
|
62
69
|
},
|
|
63
70
|
async run(language, code, log = true, prog) {
|
|
64
71
|
await Promise.all([initSandbox(language).then(() => sandbox.load(path, code, log)), initTerm()]);
|
|
65
|
-
await runSandbox(sandbox.run(code, false, log, prog));
|
|
72
|
+
return await runSandbox(sandbox.run(code, false, log, prog));
|
|
66
73
|
},
|
|
67
74
|
async destroy() {
|
|
68
75
|
await wait();
|
|
@@ -7,8 +7,8 @@ declare const __propDef: {
|
|
|
7
7
|
font?: string | undefined;
|
|
8
8
|
terminal?: {
|
|
9
9
|
clear(): Promise<void>;
|
|
10
|
-
prepare(language: any, code: any, log: boolean | undefined, prog: any): Promise<
|
|
11
|
-
run(language: any, code: any, log: boolean | undefined, prog: any): Promise<
|
|
10
|
+
prepare(language: any, code: any, log: boolean | undefined, prog: any): Promise<any>;
|
|
11
|
+
run(language: any, code: any, log: boolean | undefined, prog: any): Promise<any>;
|
|
12
12
|
destroy(): Promise<void>;
|
|
13
13
|
} | undefined;
|
|
14
14
|
};
|
|
@@ -26,8 +26,8 @@ export type TerminalSlots = typeof __propDef.slots;
|
|
|
26
26
|
export default class Terminal extends SvelteComponentTyped<TerminalProps, TerminalEvents, TerminalSlots> {
|
|
27
27
|
get terminal(): {
|
|
28
28
|
clear(): Promise<void>;
|
|
29
|
-
prepare(language: any, code: any, log: boolean | undefined, prog: any): Promise<
|
|
30
|
-
run(language: any, code: any, log: boolean | undefined, prog: any): Promise<
|
|
29
|
+
prepare(language: any, code: any, log: boolean | undefined, prog: any): Promise<any>;
|
|
30
|
+
run(language: any, code: any, log: boolean | undefined, prog: any): Promise<any>;
|
|
31
31
|
destroy(): Promise<void>;
|
|
32
32
|
};
|
|
33
33
|
}
|