diff --git a/src/components/CodeEditor.vue b/src/components/CodeEditor.vue index e9f6f6b..58f333d 100644 --- a/src/components/CodeEditor.vue +++ b/src/components/CodeEditor.vue @@ -4,6 +4,7 @@ import { useDark } from "@vueuse/core" import { Codemirror } from "vue-codemirror" import { cpp } from "@codemirror/lang-cpp" import { python } from "@codemirror/lang-python" +import { EditorState } from "@codemirror/state" import { EditorView } from "@codemirror/view" import { LANGUAGE } from "../types" import { oneDark } from "../themes/oneDark" @@ -35,7 +36,7 @@ const styleTheme = EditorView.baseTheme({ outline: "none", }, }) -const emit = defineEmits(["update:modelValue"]) +const emit = defineEmits(["update:modelValue", "ready"]) watch( () => props.modelValue, @@ -54,6 +55,14 @@ const lang = computed(() => { function onChange(v: string) { emit("update:modelValue", v) } + +function onReady(payload: { + view: EditorView + state: EditorState + container: HTMLDivElement +}) { + emit("ready", payload.view) +}