overleaf-cep/services/web/frontend/js/features/utils/format-date.ts
ilkin-overleaf 21c035b8d5 Merge pull request #25468 from overleaf/ii-flexible-licensing-invoice-date
[web] FL next invoice date formatting

GitOrigin-RevId: 5f4f86d4f11c7ee217ff806d26fc3f8a79e5affc
2025-05-14 08:05:34 +00:00

33 lines
772 B
TypeScript

import moment from 'moment'
moment.updateLocale('en', {
calendar: {
lastDay: '[Yesterday]',
sameDay: '[Today]',
nextDay: '[Tomorrow]',
lastWeek: 'ddd, Do MMM YY',
nextWeek: 'ddd, Do MMM YY',
sameElse: 'ddd, Do MMM YY',
},
})
export function formatTime(
date: moment.MomentInput,
format = 'h:mm a',
utc = false
) {
const momentDate = utc ? moment.utc(date) : moment(date)
return momentDate.format(format)
}
export function relativeDate(date: moment.MomentInput) {
return moment(date).calendar()
}
export function formatTimeBasedOnYear(date: moment.MomentInput) {
const currentDate = moment()
return currentDate.diff(date, 'years') > 0
? formatTime(date, 'D MMMM YYYY, h:mm a')
: formatTime(date, 'D MMMM, h:mm a')
}