// @ts-nocheck import React from 'react'; import { FastField, ErrorMessage } from 'formik'; import { FormGroup, Position, ControlGroup } from '@blueprintjs/core'; import classNames from 'classnames'; import { FormattedMessage as T, AccountsSuggestField, InputPrependText, FieldRequiredHint, Col, Row, FeatureCan, BranchSelect, BranchSelectButton, FFormGroup, FTextArea, FMoneyInputGroup, FInputGroup, } from '@/components'; import { DateInput } from '@blueprintjs/datetime'; import { ACCOUNT_TYPE } from '@/constants/accountTypes'; import { inputIntent, momentFormatter, tansformDateValue, handleDateChange, } from '@/utils'; import { Features } from '@/constants'; import { CLASSES } from '@/constants/classes'; import { useMoneyOutDialogContext } from '../MoneyOutDialogProvider'; import { useSetPrimaryBranchToForm, BranchRowDivider } from '../utils'; import { MoneyInOutTransactionNoField } from '../../_components'; import { MoneyOutExchangeRateField } from '../MoneyOutExchangeRateField'; import { useMoneyOutFieldsContext } from '../MoneyOutFieldsProvider'; /** * Transfer to account form fields. */ export default function TransferToAccountFormFields() { // Money in dialog context. const { accounts, branches } = useMoneyOutDialogContext(); const { account } = useMoneyOutFieldsContext(); // Sets the primary branch to form. useSetPrimaryBranchToForm(); return ( } name={'branch_id'}> {/*------------ Date -----------*/} {({ form, field: { value }, meta: { error, touched } }) => ( } labelInfo={} intent={inputIntent({ error, touched })} helperText={} minimal={true} className={classNames(CLASSES.FILL, 'form-group--date')} > { form.setFieldValue('date', formattedDate); })} value={tansformDateValue(value)} popoverProps={{ position: Position.BOTTOM, minimal: true, }} intent={inputIntent({ error, touched })} /> )} {/*------------ Transaction number -----------*/} {/*------------ Amount -----------*/} } labelInfo={} > {/*------------ Exchange rate -----------*/} {/*------------ transfer from account -----------*/} {({ form, field, meta: { error, touched } }) => ( } labelInfo={} intent={inputIntent({ error, touched })} helperText={} className={'form-group--credit_account_id'} > form.setFieldValue('credit_account_id', id) } filterByTypes={[ ACCOUNT_TYPE.CASH, ACCOUNT_TYPE.BANK, ACCOUNT_TYPE.CREDIT_CARD, ]} inputProps={{ intent: inputIntent({ error, touched }), }} /> )} {/*------------ Reference -----------*/} }> {/*------------ Description -----------*/} }> ); }