diff --git a/src/CONST.ts b/src/CONST.ts index b29456ba170b..bc0a0c3216f0 100755 --- a/src/CONST.ts +++ b/src/CONST.ts @@ -1,4 +1,6 @@ /* eslint-disable @typescript-eslint/naming-convention */ +import dateAdd from 'date-fns/add'; +import dateSubtract from 'date-fns/sub'; import Config from 'react-native-config'; import * as KeyCommand from 'react-native-key-command'; import * as Url from './libs/Url'; @@ -18,6 +20,8 @@ const PLATFORM_IOS = 'iOS'; const ANDROID_PACKAGE_NAME = 'com.expensify.chat'; const CURRENT_YEAR = new Date().getFullYear(); const PULL_REQUEST_NUMBER = Config?.PULL_REQUEST_NUMBER ?? ''; +const MAX_DATE = dateAdd(new Date(), {years: 1}); +const MIN_DATE = dateSubtract(new Date(), {years: 20}); const keyModifierControl = KeyCommand?.constants?.keyModifierControl ?? 'keyModifierControl'; const keyModifierCommand = KeyCommand?.constants?.keyModifierCommand ?? 'keyModifierCommand'; @@ -103,6 +107,8 @@ const CONST = { // Numbers were arbitrarily picked. MIN_YEAR: CURRENT_YEAR - 100, MAX_YEAR: CURRENT_YEAR + 100, + MAX_DATE, + MIN_DATE, }, DATE_BIRTH: { diff --git a/src/pages/EditRequestCreatedPage.js b/src/pages/EditRequestCreatedPage.js index 6810414d7921..2b5a8abaa349 100644 --- a/src/pages/EditRequestCreatedPage.js +++ b/src/pages/EditRequestCreatedPage.js @@ -7,6 +7,7 @@ import HeaderWithBackButton from '@components/HeaderWithBackButton'; import ScreenWrapper from '@components/ScreenWrapper'; import useLocalize from '@hooks/useLocalize'; import useThemeStyles from '@hooks/useThemeStyles'; +import CONST from '@src/CONST'; import ONYXKEYS from '@src/ONYXKEYS'; const propTypes = { @@ -40,7 +41,8 @@ function EditRequestCreatedPage({defaultCreated, onSubmit}) { inputID="created" label={translate('common.date')} defaultValue={defaultCreated} - maxDate={new Date()} + maxDate={CONST.CALENDAR_PICKER.MAX_DATE} + minDate={CONST.CALENDAR_PICKER.MIN_DATE} /> diff --git a/src/pages/iou/request/step/IOURequestStepDate.js b/src/pages/iou/request/step/IOURequestStepDate.js index 7bafa0f2c1fd..84a67c30a4d4 100644 --- a/src/pages/iou/request/step/IOURequestStepDate.js +++ b/src/pages/iou/request/step/IOURequestStepDate.js @@ -1,5 +1,3 @@ -import dateAdd from 'date-fns/add'; -import dateSubtract from 'date-fns/sub'; import React from 'react'; import DatePicker from '@components/DatePicker'; import FormProvider from '@components/Form/FormProvider'; @@ -11,6 +9,7 @@ import compose from '@libs/compose'; import * as IOUUtils from '@libs/IOUUtils'; import Navigation from '@libs/Navigation/Navigation'; import * as IOU from '@userActions/IOU'; +import CONST from '@src/CONST'; import ONYXKEYS from '@src/ONYXKEYS'; import ROUTES from '@src/ROUTES'; import IOURequestStepRoutePropTypes from './IOURequestStepRoutePropTypes'; @@ -73,8 +72,8 @@ function IOURequestStepDate({ inputID="moneyRequestCreated" label={translate('common.date')} defaultValue={transaction.created} - maxDate={dateAdd(new Date(), {years: 1})} - minDate={dateSubtract(new Date(), {years: 20})} + maxDate={CONST.CALENDAR_PICKER.MAX_DATE} + minDate={CONST.CALENDAR_PICKER.MIN_DATE} />