Use async functions in .svelte files (#1693)

* Use async functions in CodeMirror.svelte

* Fix using async functions by modifying svelte-preprocess output

* Revert "Fix using async functions by modifying svelte-preprocess output"

This reverts commit 94c9cadaaa3ca2084780833e9efc7807f2f1d1a9.

Trying a different fix.

* Change TypeScript target to ES2019
This commit is contained in:
Henrik Giesel 2022-02-27 13:35:47 +01:00 committed by GitHub
parent 6941bccde4
commit 92bf23df99
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 12 additions and 12 deletions

View File

@ -40,11 +40,12 @@ License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html
/**
* Convenience function for editor.setOption.
*/
function setOption<T extends keyof CodeMirrorLib.EditorConfiguration>(
async function setOption<T extends keyof CodeMirrorLib.EditorConfiguration>(
key: T,
value: CodeMirrorLib.EditorConfiguration[T],
): void {
editorPromise.then((editor) => editor.setOption(key, value));
): Promise<void> {
const editor = await editorPromise;
editor.setOption(key, value);
}
const direction = getContext<Writable<"ltr" | "rtl">>(directionKey);
@ -62,14 +63,13 @@ License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html
const dispatch = createEventDispatcher();
onMount(() =>
editorPromise.then((editor) => {
setupCodeMirror(editor, code);
editor.on("change", () => dispatch("change", editor.getValue()));
editor.on("focus", () => dispatch("focus"));
editor.on("blur", () => dispatch("blur"));
}),
);
onMount(async () => {
const editor = await editorPromise;
setupCodeMirror(editor, code);
editor.on("change", () => dispatch("change", editor.getValue()));
editor.on("focus", () => dispatch("focus"));
editor.on("blur", () => dispatch("blur"));
});
</script>
<div class="code-mirror">

View File

@ -17,7 +17,7 @@
"compilerOptions": {
"declaration": true,
"composite": true,
"target": "es6",
"target": "es2019",
"module": "es2020",
"lib": [
"es2017",