diff --git a/src/components/problem-editor.tsx b/src/components/problem-editor.tsx
index 55ba9d7..d46be86 100644
--- a/src/components/problem-editor.tsx
+++ b/src/components/problem-editor.tsx
@@ -61,7 +61,7 @@ export function CodeEditor() {
try {
const monacoLanguageClient = await connectToLanguageServer(
currentEditorLanguageConfig,
- currentLanguageServerConfig,
+ currentLanguageServerConfig
);
monacoLanguageClientRef.current = monacoLanguageClient;
setMonacoLanguageClient(monacoLanguageClient);
@@ -92,33 +92,40 @@ export function CodeEditor() {
};
}, [setMonacoLanguageClient]);
+ const handleEditorWillMount = useCallback((monaco: Monaco) => {
+ shikiToMonaco(highlighter, monaco);
+ }, []);
+
+ const handleOnMount = useCallback(
+ async (editor: editor.IStandaloneCodeEditor) => {
+ setEditor(editor);
+ await connectLSP();
+ },
+ [setEditor, connectLSP]
+ );
+
+ const handleEditorChange = useCallback(
+ (value: string | undefined) => {
+ if (value !== undefined) {
+ changeValue(value);
+ }
+ },
+ [changeValue]
+ );
+
if (!hydrated) {
return ;
}
- const handleBeforeMount = (monaco: Monaco) => {
- shikiToMonaco(highlighter, monaco);
- };
-
- const handleOnMount = async (editor: editor.IStandaloneCodeEditor) => {
- setEditor(editor);
- await connectLSP();
- };
-
- const handleOnChange = (value: string | undefined) => {
- if (value === undefined) return;
- changeValue(value);
- };
-
return (
}
className="h-full w-full py-2"