diff --git a/src/CONST.ts b/src/CONST.ts index 2733da56e597..ea38f6bd3d59 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'; @@ -97,6 +101,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 fbe1b3c782a7..f966a6ff570f 100644 --- a/src/pages/EditRequestCreatedPage.js +++ b/src/pages/EditRequestCreatedPage.js @@ -6,6 +6,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 = { @@ -38,7 +39,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 c90779af47ee..21f400f32d47 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'; @@ -10,6 +8,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'; @@ -71,8 +70,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} />