Refactor code store to contain non-transpiled TypeScript
This commit is contained in:
parent
cac24e64b1
commit
9eac3510fa
@ -3,18 +3,12 @@
|
||||
import { onMount } from "svelte";
|
||||
import editorWorker from "monaco-editor/esm/vs/editor/editor.worker?worker";
|
||||
import tsWorker from "monaco-editor/esm/vs/language/typescript/ts.worker?worker";
|
||||
import TS from "typescript";
|
||||
import defaultCode from "./defaultCode.ts?raw";
|
||||
import defaultEnv from "./defaultEnv.d.ts?raw";
|
||||
import { code } from "./code";
|
||||
import tsOptions from "../eval/tsOptions";
|
||||
|
||||
let divEl: HTMLDivElement = null;
|
||||
let editor: monaco.editor.IStandaloneCodeEditor;
|
||||
|
||||
let value = defaultCode;
|
||||
$: $code = TS.transpile(value, tsOptions);
|
||||
|
||||
onMount(async () => {
|
||||
// @ts-ignore
|
||||
self.MonacoEnvironment = {
|
||||
@ -27,7 +21,7 @@
|
||||
};
|
||||
|
||||
editor = monaco.editor.create(divEl, {
|
||||
value: value,
|
||||
value: $code,
|
||||
language: "typescript",
|
||||
});
|
||||
|
||||
@ -36,7 +30,7 @@
|
||||
defaultEnv
|
||||
);
|
||||
|
||||
editor.onKeyUp((_e) => (value = editor.getValue()));
|
||||
editor.onKeyUp((_e) => ($code = editor.getValue()));
|
||||
|
||||
return () => {
|
||||
lib.dispose();
|
||||
|
@ -1,7 +1,5 @@
|
||||
import { writable } from "svelte/store";
|
||||
import defaultCode from "./defaultCode.ts?raw";
|
||||
import TS from "typescript";
|
||||
import tsOptions from "../eval/tsOptions";
|
||||
|
||||
/** the transpiled JavaScript code */
|
||||
export const code = writable(TS.transpile(defaultCode, tsOptions));
|
||||
/** the TypeScript code as seen in the editor */
|
||||
export const code = writable(defaultCode);
|
@ -4,6 +4,10 @@
|
||||
import { code } from "../editor/code";
|
||||
import { dmxData } from "../dmx/store";
|
||||
import { lib } from "./lib";
|
||||
import TS from "typescript";
|
||||
import tsOptions from "./tsOptions";
|
||||
|
||||
$: transpiled = TS.transpile($code, tsOptions);
|
||||
|
||||
let startTime: number;
|
||||
let payload = new Uint8Array(512);
|
||||
@ -20,7 +24,7 @@
|
||||
payload = new Uint8Array(512);
|
||||
const t = (performance.now() - startTime) / 1000;
|
||||
try {
|
||||
let ret = Function("ctx", "t", "lib", $code).call({}, ctx, t, lib);
|
||||
let ret = Function("ctx", "t", "lib", transpiled).call({}, ctx, t, lib);
|
||||
result = JSON.stringify(ret);
|
||||
} catch (err) {
|
||||
result = JSON.stringify(err);
|
||||
|
Loading…
Reference in New Issue
Block a user