Untitled
unknown
plain_text
a year ago
1.2 kB
6
Indexable
@Pipe({
name: 'niceDateFormatPipe',
})
export class niceDateFormatPipe implements PipeTransform {
transform(value: string) {
var _value = Number(value);
var dif = Math.floor( ( (Date.now() - _value) / 1000 ) / 86400 );
if ( dif < 30 ){
return convertToNiceDate(value);
}else{
var datePipe = new DatePipe("en-US");
value = datePipe.transform(value, 'MMM-dd-yyyy');
return value;
}
}
}
function convertToNiceDate(time: string) {
var date = new Date(time),
diff = (((new Date()).getTime() - date.getTime()) / 1000),
daydiff = Math.floor(diff / 86400);
if (isNaN(daydiff) || daydiff < 0 || daydiff >= 31)
return '';
return daydiff == 0 && (
diff < 60 && "Just now" ||
diff < 120 && "1 minute ago" ||
diff < 3600 && Math.floor(diff / 60) + " minutes ago" ||
diff < 7200 && "1 hour ago" ||
diff < 86400 && Math.floor(diff / 3600) + " hours ago") ||
daydiff == 1 && "Yesterday" ||
daydiff < 7 && daydiff + " days ago" ||
daydiff < 31 && Math.ceil(daydiff / 7) + " week(s) ago";
}Editor is loading...
Leave a Comment