From cb1b56f5a0eddbf77446f415f2beda57c8305f85 Mon Sep 17 00:00:00 2001 From: polwex Date: Sun, 23 Nov 2025 01:12:53 +0700 Subject: wut --- packages/tweetdeck/src/lib/utils/time.ts | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 packages/tweetdeck/src/lib/utils/time.ts (limited to 'packages/tweetdeck/src/lib/utils/time.ts') diff --git a/packages/tweetdeck/src/lib/utils/time.ts b/packages/tweetdeck/src/lib/utils/time.ts new file mode 100644 index 0000000..f2802bf --- /dev/null +++ b/packages/tweetdeck/src/lib/utils/time.ts @@ -0,0 +1,18 @@ +export function timeAgo(date: string | number | Date) { + const ts = typeof date === "string" || typeof date === "number" ? new Date(date).getTime() : date.getTime(); + const diff = Date.now() - ts; + const seconds = Math.floor(diff / 1000); + if (seconds < 60) return `${seconds}s`; + const minutes = Math.floor(seconds / 60); + if (minutes < 60) return `${minutes}m`; + const hours = Math.floor(minutes / 60); + if (hours < 24) return `${hours}h`; + const days = Math.floor(hours / 24); + if (days < 7) return `${days}d`; + const weeks = Math.floor(days / 7); + if (weeks < 4) return `${weeks}w`; + const months = Math.floor(days / 30); + if (months < 12) return `${months}mo`; + const years = Math.floor(days / 365); + return `${years}y`; +} -- cgit v1.2.3