diff options
Diffstat (limited to 'src/utils/common.ts')
-rw-r--r-- | src/utils/common.ts | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/utils/common.ts b/src/utils/common.ts index ae83ad9c..27411149 100644 --- a/src/utils/common.ts +++ b/src/utils/common.ts @@ -1,3 +1,4 @@ +import moment from 'moment'; import {Linking} from 'react-native'; import {BROWSABLE_SOCIAL_URLS, TOGGLE_BUTTON_TYPE} from '../constants'; @@ -23,3 +24,21 @@ export const handleOpenSocialUrlOnBrowser = ( Linking.openURL(BROWSABLE_SOCIAL_URLS[social] + `${handle}/`); } }; + +export const getDateAge: ( + date: moment.Moment, +) => 'today' | 'yesterday' | 'thisWeek' | 'unknown' = (date: moment.Moment) => { + const today = moment().startOf('day'); + const yesterday = moment().subtract(1, 'days').startOf('day'); + const weekOld = moment().subtract(7, 'days').startOf('day'); + if (date.isSame(today, 'd')) { + return 'today'; + } else if (date.isSame(yesterday, 'd')) { + return 'yesterday'; + } else if (date.isAfter(weekOld)) { + return 'thisWeek'; + } else { + // this can be longer than a week or in the future + return 'unknown'; + } +}; |