Spaces:
Paused
Paused
import LLMSelect from '@/components/llm-select'; | |
import { useTranslate } from '@/hooks/common-hooks'; | |
import { Form, Select } from 'antd'; | |
import { Operator } from '../constant'; | |
import { useBuildFormSelectOptions } from '../form-hooks'; | |
import { useSetLlmSetting } from '../hooks'; | |
import { IOperatorForm } from '../interface'; | |
import { useWatchConnectionChanges } from './hooks'; | |
const RelevantForm = ({ onValuesChange, form, node }: IOperatorForm) => { | |
const { t } = useTranslate('flow'); | |
useSetLlmSetting(form); | |
const buildRelevantOptions = useBuildFormSelectOptions( | |
Operator.Relevant, | |
node?.id, | |
); | |
useWatchConnectionChanges({ nodeId: node?.id, form }); | |
return ( | |
<Form | |
name="basic" | |
labelCol={{ span: 4 }} | |
wrapperCol={{ span: 20 }} | |
onValuesChange={onValuesChange} | |
autoComplete="off" | |
form={form} | |
> | |
<Form.Item | |
name={'llm_id'} | |
label={t('model', { keyPrefix: 'chat' })} | |
tooltip={t('modelTip', { keyPrefix: 'chat' })} | |
> | |
<LLMSelect></LLMSelect> | |
</Form.Item> | |
<Form.Item label={t('yes')} name={'yes'}> | |
<Select | |
allowClear | |
options={buildRelevantOptions([form?.getFieldValue('no')])} | |
/> | |
</Form.Item> | |
<Form.Item label={t('no')} name={'no'}> | |
<Select | |
allowClear | |
options={buildRelevantOptions([form?.getFieldValue('yes')])} | |
/> | |
</Form.Item> | |
</Form> | |
); | |
}; | |
export default RelevantForm; | |