Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 | 7x 4x 1x 1x 4x 1x 1x 1x 1x 4x 4x 4x 4x 108x 1x 107x 107x 107x 107x 1x 106x 1x 1x 105x 2x 2x 103x 2x 2x 101x |
const padWithZero = (n) => { return n < 10 ? '0' + n : n; }
const timestampToDate = (timestamp) => {
var date = new Date(timestamp);
return (date.getFullYear() + "-" + (padWithZero(date.getMonth()+1)) + "-" + padWithZero(date.getDate()));
}
const daysSinceTimestamp = (date) => {
var today = new Date();
var startingDate = new Date(date);
var timeDiff = Math.abs(today.getTime() - startingDate.getTime());
return Math.ceil(timeDiff / (1000 * 3600 * 24));
}
const minutesInSeconds = 60;
const hourInSeconds = 60 * minutesInSeconds;
const dayInSeconds = 24 * hourInSeconds;
const weekInSeconds = 7 * dayInSeconds;
export function formatTime(timeString) {
if (!timeString) {
return "";
}
const now = new Date();
const dateFromEpoch = new Date(timeString);
const secondsPast = Math.floor((now - dateFromEpoch) / 1000);
if (secondsPast < minutesInSeconds * 2) {
return 'Online now';
}
if (secondsPast < hourInSeconds) {
const minutes = Math.floor(secondsPast / 60);
return `${minutes} minutes ago`;
}
if (secondsPast < dayInSeconds) {
const hours = Math.floor(secondsPast / 3600);
return `${hours} hour${hours > 1 ? 's' : ''} ago`;
}
if (secondsPast < weekInSeconds) {
const days = Math.floor(secondsPast / 86400);
return `${days} day${days > 1 ? 's' : ''} ago`;
}
return dateFromEpoch.toLocaleDateString();
}
export {timestampToDate, padWithZero, daysSinceTimestamp};
|