Spaces:
Running
Running
| ts | |
| import { type ClassValue, clsx } from 'clsx' | |
| import { twMerge } from 'tailwind-merge' | |
| export function cn(...inputs: ClassValue[]) { | |
| return twMerge(clsx(inputs)) | |
| } | |
| export function formatViews(views: number) { | |
| if (views >= 1_000_000) return `${(views / 1_000_000).toFixed(1)}M` | |
| if (views >= 1_000) return `${(views / 1_000).toFixed(1)}K` | |
| return `${views}` | |
| } | |
| export function timeAgo(date: string) { | |
| const d = new Date(date) | |
| const diff = (Date.now() - d.getTime()) / 1000 | |
| if (diff < 60) return 'только что' | |
| if (diff < 3600) return `${Math.floor(diff / 60)} мин. назад` | |
| if (diff < 86400) return `${Math.floor(diff / 3600)} ч. назад` | |
| if (diff < 2629800) return `${Math.floor(diff / 86400)} дн. назад` | |
| return d.toLocaleDateString() | |
| } | |
| </html> |