// @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}
/>
)}
>
);
}