You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
49 lines
1.3 KiB
49 lines
1.3 KiB
|
|
import { isYesterday, isToday, isWithinLastWeek } from '../helpers/date-helper'
|
|
import moment from 'moment'
|
|
import { date } from 'quasar-framework'
|
|
const { formatDate } = date;
|
|
|
|
export default function(value) {
|
|
var timeStamp = new Date(value);
|
|
return `${formatDate(timeStamp, 'MMMM D, YYYY')} at ${formatDate(timeStamp, 'h:mm a')}`;
|
|
}
|
|
|
|
export function smartTime($date, $today) {
|
|
|
|
let today = $today || new Date();
|
|
let date = new Date($date);
|
|
let diffSeconds = Math.floor((today.getTime() - date.getTime()) / 1000);
|
|
let diffMinutes = Math.floor(diffSeconds / 60);
|
|
let momentDate = moment(date);
|
|
|
|
let seconds = 'second';
|
|
if(diffSeconds > 1) {
|
|
seconds = seconds + "s";
|
|
}
|
|
|
|
let minutes = 'minute';
|
|
if(diffSeconds > 120) {
|
|
minutes = minutes + "s";
|
|
}
|
|
|
|
if(diffSeconds < 60) {
|
|
return diffSeconds + ' ' + seconds + ' ago';
|
|
}
|
|
else if (diffSeconds < 3600) {
|
|
return diffMinutes + ' ' + minutes + ' ago';
|
|
}
|
|
else if(isToday(date)) {
|
|
return 'Today, ' + momentDate.format('HH:mm');
|
|
}
|
|
else if (isYesterday(date)) {
|
|
return 'Yesterday, ' + momentDate.format('HH:mm');
|
|
}
|
|
else if (isWithinLastWeek(date)) {
|
|
return momentDate.format('dddd, HH:mm');
|
|
}
|
|
else {
|
|
return momentDate.format('LLL');
|
|
}
|
|
}
|