import React from 'react'; import { FastField, ErrorMessage } from 'formik'; import { HTMLSelect, FormGroup, Intent, Position } from '@blueprintjs/core'; import moment from 'moment'; import { Row, Col, Hint } from 'components'; import { momentFormatter, parseDateRangeQuery } from 'utils'; import { DateInput } from '@blueprintjs/datetime'; import intl from 'react-intl-universal'; import { dateRangeOptions } from './constants'; /** * 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} /> )} {({ 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} /> )} ); }