|
import { useTranslate } from '@/hooks/common-hooks'; |
|
import { Form, Input, Select } from 'antd'; |
|
import { useMemo } from 'react'; |
|
import { |
|
BaiduFanyiDomainOptions, |
|
BaiduFanyiSourceLangOptions, |
|
} from '../constant'; |
|
import { IOperatorForm } from '../interface'; |
|
|
|
const BaiduFanyiForm = ({ onValuesChange, form }: IOperatorForm) => { |
|
const { t } = useTranslate('flow'); |
|
const options = useMemo(() => { |
|
return ['translate', 'fieldtranslate'].map((x) => ({ |
|
value: x, |
|
label: t(`baiduSecretKeyOptions.${x}`), |
|
})); |
|
}, [t]); |
|
|
|
const baiduFanyiOptions = useMemo(() => { |
|
return BaiduFanyiDomainOptions.map((x) => ({ |
|
value: x, |
|
label: t(`baiduDomainOptions.${x}`), |
|
})); |
|
}, [t]); |
|
|
|
const baiduFanyiSourceLangOptions = useMemo(() => { |
|
return BaiduFanyiSourceLangOptions.map((x) => ({ |
|
value: x, |
|
label: t(`baiduSourceLangOptions.${x}`), |
|
})); |
|
}, [t]); |
|
|
|
return ( |
|
<Form |
|
name="basic" |
|
labelCol={{ span: 8 }} |
|
wrapperCol={{ span: 16 }} |
|
autoComplete="off" |
|
form={form} |
|
onValuesChange={onValuesChange} |
|
> |
|
<Form.Item label={t('appid')} name={'appid'}> |
|
<Input></Input> |
|
</Form.Item> |
|
<Form.Item label={t('secretKey')} name={'secret_key'}> |
|
<Input></Input> |
|
</Form.Item> |
|
<Form.Item label={t('transType')} name={'trans_type'}> |
|
<Select options={options}></Select> |
|
</Form.Item> |
|
<Form.Item noStyle dependencies={['model_type']}> |
|
{({ getFieldValue }) => |
|
getFieldValue('trans_type') === 'fieldtranslate' && ( |
|
<Form.Item label={t('domain')} name={'domain'}> |
|
<Select options={baiduFanyiOptions}></Select> |
|
</Form.Item> |
|
) |
|
} |
|
</Form.Item> |
|
<Form.Item label={t('sourceLang')} name={'source_lang'}> |
|
<Select options={baiduFanyiSourceLangOptions}></Select> |
|
</Form.Item> |
|
<Form.Item label={t('targetLang')} name={'target_lang'}> |
|
<Select options={baiduFanyiSourceLangOptions}></Select> |
|
</Form.Item> |
|
</Form> |
|
); |
|
}; |
|
|
|
export default BaiduFanyiForm; |
|
|