// @ts-nocheck import React, { useMemo } from 'react'; import intl from 'react-intl-universal'; import moment from 'moment'; import { FastField, ErrorMessage } from 'formik'; import { HTMLSelect, FormGroup, Intent, Position } from '@blueprintjs/core'; import { DateInput } from '@blueprintjs/datetime'; import { Row, Col, Hint } from '@/components'; import { momentFormatter, parseDateRangeQuery } from '@/utils'; import { dateRangeOptions } from './constants'; const FINANCIAL_REPORT_MAX_DATE = moment().add(5, 'years').toDate(); /** * Financial statement - Date range select. */ export default function FinancialStatementDateRange() { return ( <> {({ form: { setFieldValue }, field: { value } }) => ( } minimal={true} fill={true} > { const newValue = e.target.value; if (newValue !== 'custom') { const dateRange = parseDateRangeQuery(newValue); if (dateRange) { setFieldValue( 'fromDate', moment(dateRange.fromDate).toDate(), ); setFieldValue( 'toDate', moment(dateRange.toDate).toDate(), ); } } setFieldValue('dateRange', newValue); }} /> )} {({ form: { setFieldValue }, field: { value }, meta: { error, touched }, }) => ( } fill={true} intent={error && Intent.DANGER} helperText={} > { setFieldValue('fromDate', selectedDate); }} popoverProps={{ minimal: true, position: Position.BOTTOM }} canClearSelection={false} minimal={true} fill={true} maxDate={FINANCIAL_REPORT_MAX_DATE} /> )} {({ form: { setFieldValue }, field: { value }, meta: { error }, }) => ( } fill={true} intent={error && Intent.DANGER} helperText={} > { setFieldValue('toDate', selectedDate); }} popoverProps={{ minimal: true, position: Position.BOTTOM }} canClearSelection={false} fill={true} minimal={true} intent={error && Intent.DANGER} maxDate={FINANCIAL_REPORT_MAX_DATE} /> )} ); }