diff --git a/web/app/components/workflow/nodes/llm/components/json-schema-config-modal/code-editor.tsx b/web/app/components/workflow/nodes/llm/components/json-schema-config-modal/code-editor.tsx index 2058a86a0d..3a7c055407 100644 --- a/web/app/components/workflow/nodes/llm/components/json-schema-config-modal/code-editor.tsx +++ b/web/app/components/workflow/nodes/llm/components/json-schema-config-modal/code-editor.tsx @@ -1,4 +1,4 @@ -import React, { type FC, useCallback, useEffect, useRef } from 'react' +import React, { type FC, useCallback, useEffect, useMemo, useRef } from 'react' import useTheme from '@/hooks/use-theme' import { Theme } from '@/types/app' import classNames from '@/utils/classnames' @@ -30,6 +30,7 @@ const CodeEditor: FC = ({ const { theme } = useTheme() const monacoRef = useRef(null) const editorRef = useRef(null) + const [isMounted, setIsMounted] = React.useState(false) useEffect(() => { if (monacoRef.current) { @@ -64,6 +65,7 @@ const CodeEditor: FC = ({ }, }) monaco.editor.setTheme('light-theme') + setIsMounted(true) }, []) const formatJsonContent = useCallback(() => { @@ -76,6 +78,12 @@ const CodeEditor: FC = ({ onUpdate?.(value) }, [onUpdate]) + const editorTheme = useMemo(() => { + if (theme === Theme.light) + return 'light-theme' + return 'dark-theme' + }, [theme]) + return (
{!hideTopMenu && ( @@ -110,6 +118,7 @@ const CodeEditor: FC = ({