Download web/src/lib/format.ts from Leon4gr45/openweb: direct link, hf CLI and curl.
- Browser
- Download file 1.05 kB
-
https://huggingface.co/spaces/Leon4gr45/openweb/resolve/main/web/src/lib/format.ts
- Command line
-
hf download hf://spaces/Leon4gr45/openweb/web/src/lib/format.ts
-
curl -L -o format.ts https://huggingface.co/spaces/Leon4gr45/openweb/resolve/main/web/src/lib/format.ts
1.05 kB
| export function fmtTs(s: number): string { | |
| const t = Math.floor(s); | |
| const h = Math.floor(t / 3600); | |
| const m = Math.floor((t % 3600) / 60); | |
| const sec = t % 60; | |
| return h ? `${h}:${String(m).padStart(2, "0")}:${String(sec).padStart(2, "0")}` : `${m}:${String(sec).padStart(2, "0")}`; | |
| } | |
| export function fmtDuration(s: number): string { | |
| const m = Math.round(s / 60); | |
| return m >= 60 ? `${Math.floor(m / 60)}h ${m % 60}m` : `${m} min`; | |
| } | |
| export function compact(n: number | null | undefined): string { | |
| if (n == null) return "–"; | |
| return Intl.NumberFormat("en", { notation: "compact", maximumFractionDigits: 1 }).format(n); | |
| } | |
| export function bytes(n: number): string { | |
| if (n < 1024) return `${n} B`; | |
| if (n < 1024 ** 2) return `${(n / 1024).toFixed(1)} KB`; | |
| return `${(n / 1024 ** 2).toFixed(2)} MB`; | |
| } | |
| export const pct = (x: number, digits = 0) => `${(x * 100).toFixed(digits)}%`; | |
| export function youtubeAt(url: string | null | undefined, start: number): string | null { | |
| return url ? `${url}&t=${Math.floor(start)}s` : null; | |
| } | |