feat(status): improve last-seen labels in web private chats
Some checks are pending
CI / test (push) Has started running
Some checks are pending
CI / test (push) Has started running
This commit is contained in:
@@ -878,6 +878,26 @@ function formatLastSeen(value: string): string {
|
||||
if (Number.isNaN(date.getTime())) {
|
||||
return "recently";
|
||||
}
|
||||
const now = new Date();
|
||||
const diffMs = now.getTime() - date.getTime();
|
||||
if (diffMs < 0) {
|
||||
return "recently";
|
||||
}
|
||||
const minute = 60 * 1000;
|
||||
const hour = 60 * minute;
|
||||
const day = 24 * hour;
|
||||
if (diffMs < 2 * minute) {
|
||||
return "just now";
|
||||
}
|
||||
if (diffMs < day) {
|
||||
return `today at ${date.toLocaleTimeString([], { hour: "2-digit", minute: "2-digit" })}`;
|
||||
}
|
||||
if (diffMs < 2 * day) {
|
||||
return `yesterday at ${date.toLocaleTimeString([], { hour: "2-digit", minute: "2-digit" })}`;
|
||||
}
|
||||
if (diffMs < 7 * day) {
|
||||
return "recently";
|
||||
}
|
||||
return date.toLocaleString(undefined, {
|
||||
day: "2-digit",
|
||||
month: "short",
|
||||
|
||||
@@ -895,6 +895,26 @@ function formatLastSeen(value: string): string {
|
||||
if (Number.isNaN(date.getTime())) {
|
||||
return "recently";
|
||||
}
|
||||
const now = new Date();
|
||||
const diffMs = now.getTime() - date.getTime();
|
||||
if (diffMs < 0) {
|
||||
return "recently";
|
||||
}
|
||||
const minute = 60 * 1000;
|
||||
const hour = 60 * minute;
|
||||
const day = 24 * hour;
|
||||
if (diffMs < 2 * minute) {
|
||||
return "just now";
|
||||
}
|
||||
if (diffMs < day) {
|
||||
return `today at ${date.toLocaleTimeString([], { hour: "2-digit", minute: "2-digit" })}`;
|
||||
}
|
||||
if (diffMs < 2 * day) {
|
||||
return `yesterday at ${date.toLocaleTimeString([], { hour: "2-digit", minute: "2-digit" })}`;
|
||||
}
|
||||
if (diffMs < 7 * day) {
|
||||
return "recently";
|
||||
}
|
||||
return date.toLocaleString(undefined, {
|
||||
day: "2-digit",
|
||||
month: "short",
|
||||
|
||||
@@ -317,6 +317,26 @@ function formatLastSeen(value: string): string {
|
||||
if (Number.isNaN(date.getTime())) {
|
||||
return "recently";
|
||||
}
|
||||
const now = new Date();
|
||||
const diffMs = now.getTime() - date.getTime();
|
||||
if (diffMs < 0) {
|
||||
return "recently";
|
||||
}
|
||||
const minute = 60 * 1000;
|
||||
const hour = 60 * minute;
|
||||
const day = 24 * hour;
|
||||
if (diffMs < 2 * minute) {
|
||||
return "just now";
|
||||
}
|
||||
if (diffMs < day) {
|
||||
return `today at ${date.toLocaleTimeString([], { hour: "2-digit", minute: "2-digit" })}`;
|
||||
}
|
||||
if (diffMs < 2 * day) {
|
||||
return `yesterday at ${date.toLocaleTimeString([], { hour: "2-digit", minute: "2-digit" })}`;
|
||||
}
|
||||
if (diffMs < 7 * day) {
|
||||
return "recently";
|
||||
}
|
||||
return date.toLocaleString(undefined, {
|
||||
day: "2-digit",
|
||||
month: "short",
|
||||
|
||||
Reference in New Issue
Block a user