format-date.js 819 B

12345678910111213141516171819202122232425262728293031323334353637
  1. import moment from 'moment'
  2. moment.updateLocale('en', {
  3. calendar: {
  4. lastDay: '[Yesterday]',
  5. sameDay: '[Today]',
  6. nextDay: '[Tomorrow]',
  7. lastWeek: 'ddd, Do MMM YY',
  8. nextWeek: 'ddd, Do MMM YY',
  9. sameElse: 'ddd, Do MMM YY',
  10. },
  11. })
  12. export function formatTime(date, format = 'h:mm a') {
  13. return moment(date).format(format)
  14. }
  15. export function relativeDate(date) {
  16. return moment(date).calendar()
  17. }
  18. export function formatTimeBasedOnYear(date) {
  19. const currentDate = moment()
  20. return currentDate.diff(date, 'years') > 0
  21. ? formatTime(date, 'D MMMM YYYY, h:mm a')
  22. : formatTime(date, 'D MMMM, h:mm a')
  23. }
  24. /**
  25. * @param {string} isoTimestamp
  26. * @returns {number}
  27. */
  28. export function isoToUnix(isoTimestamp) {
  29. const unixTimestamp = Date.parse(isoTimestamp) / 1000
  30. return unixTimestamp
  31. }