diff --git a/webserial/src/editor/Monaco.svelte b/webserial/src/editor/Monaco.svelte index 686349c..77891c4 100644 --- a/webserial/src/editor/Monaco.svelte +++ b/webserial/src/editor/Monaco.svelte @@ -3,6 +3,7 @@ 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 defaultCode from "./defaultCode.ts?raw"; import defaultEnv from "./defaultEnv.d.ts?raw"; import { code } from "./code"; @@ -38,8 +39,26 @@ editor.dispose(); }; }); + + function resetCode() { + $code = defaultCode; + editor.setValue($code); + } +
diff --git a/webserial/src/editor/code.ts b/webserial/src/editor/code.ts index ae09ad1..258aadf 100644 --- a/webserial/src/editor/code.ts +++ b/webserial/src/editor/code.ts @@ -1,5 +1,9 @@ import { writable } from "svelte/store"; import defaultCode from "./defaultCode.ts?raw"; +const stored = localStorage.getItem("dmxCode") || defaultCode; + /** the TypeScript code as seen in the editor */ -export const code = writable(defaultCode); \ No newline at end of file +export const code = writable(stored); + +code.subscribe((value) => localStorage.setItem("dmxCode", value)) \ No newline at end of file