import { Field, FieldLabel, FieldRow, FieldError } from '@rocket.chat/fuselage'; import type { UseFormReturn } from 'react-hook-form'; import { useController } from 'react-hook-form'; import { useTranslation } from 'react-i18next'; import AutoCompleteAgent from '../../../omnichannel/components/AutoCompleteAgent'; import type { AuditFields } from '../../hooks/useAuditForm'; import VisitorAutoComplete from '../forms/VisitorAutoComplete'; export type OmnichannelTabProps = { form: UseFormReturn; }; const OmnichannelTab = ({ form: { control } }: OmnichannelTabProps) => { const { t } = useTranslation(); const { field: visitorField, fieldState: visitorFieldState } = useController({ name: 'visitor', control, rules: { required: true }, }); const { field: agentField, fieldState: agentFieldState } = useController({ name: 'agent', control, rules: { required: true }, }); return ( <> {t('Visitor')} {visitorFieldState.error?.type === 'required' && {t('Required_field', { field: t('Visitor') })}} {visitorFieldState.error?.type === 'validate' && {visitorFieldState.error.message}} {t('Agent')} { if (agentFieldState.error?.type === 'required') { return t('Required_field', { field: t('Agent') }); } return agentFieldState.error?.message; })()} value={agentField.value} onChange={agentField.onChange} placeholder={t('Username_Placeholder')} /> {agentFieldState.error?.type === 'required' && {t('Required_field', { field: t('Agent') })}} {agentFieldState.error?.type === 'validate' && {agentFieldState.error.message}} ); }; export default OmnichannelTab;