import Editor, { loader } from '@monaco-editor/react'; import { Form, Select } from 'antd'; import { IOperatorForm } from '../../interface'; import { DynamicInputVariable } from './dynamic-input-variable'; import { CodeTemplateStrMap, ProgrammingLanguage } from '@/constants/agent'; import { ICodeForm } from '@/interfaces/database/flow'; import { useEffect } from 'react'; import styles from './index.less'; loader.config({ paths: { vs: '/vs' } }); const options = [ ProgrammingLanguage.Python, ProgrammingLanguage.Javascript, ].map((x) => ({ value: x, label: x })); const CodeForm = ({ onValuesChange, form, node }: IOperatorForm) => { const formData = node?.data.form as ICodeForm; useEffect(() => { setTimeout(() => { // TODO: Direct operation zustand is more elegant form?.setFieldValue( 'script', CodeTemplateStrMap[formData.lang as ProgrammingLanguage], ); }, 0); }, [form, formData.lang]); return (