import SealInput from '@/components/seal-form/seal-input'; import SealTextArea from '@/components/seal-form/seal-textarea'; import useAppUtils from '@/hooks/use-app-utils'; import { useIntl } from '@umijs/max'; import { Form } from 'antd'; import React from 'react'; import { backendOptionsMap } from '../config/backend-parameters'; import { useFormContext } from '../config/form-context'; import { FormData } from '../config/types'; const CustomBackend: React.FC = () => { const intl = useIntl(); const { getRuleMessage } = useAppUtils(); const form = Form.useFormInstance(); const backend = Form.useWatch('backend', form); const { onValuesChange } = useFormContext(); const handleImageNameOnBlur = (e: React.FocusEvent) => { const value = e.target.value; const runCommand = form.getFieldValue('run_command'); if (value && runCommand) { onValuesChange?.({ image_name: value }, form.getFieldsValue()); } }; const handleRunCommandOnBlur = (e: React.FocusEvent) => { const value = e.target.value; const imageName = form.getFieldValue('image_name'); if (value && imageName) { onValuesChange?.({ run_command: value }, form.getFieldsValue()); } }; return ( <> {backend === backendOptionsMap.custom && ( <> name="image_name" rules={[ { required: true, message: getRuleMessage('input', 'backend.imageName') } ]} > name="run_command" rules={[ { required: true, message: getRuleMessage('input', 'backend.runCommand') } ]} > )} ); }; export default CustomBackend;