Files
knur-app/lib/format.ts

31 lines
957 B
TypeScript
Raw Permalink Normal View History

2026-06-16 09:43:48 +02:00
import { format } from "date-fns";
import { pl } from "date-fns/locale";
2026-06-16 11:51:10 +02:00
export function formatDate(date: Date | string): string {
return format(new Date(date), "d MMMM yyyy, HH:mm", { locale: pl });
2026-06-16 09:43:48 +02:00
}
2026-06-16 11:51:10 +02:00
export function formatDateShort(date: Date | string): string {
return format(new Date(date), "d MMM yyyy", { locale: pl });
2026-06-16 09:43:48 +02:00
}
export function formatDuration(seconds: number): string {
const h = Math.floor(seconds / 3600);
const m = Math.floor((seconds % 3600) / 60);
const s = Math.floor(seconds % 60);
if (h > 0) {
return `${h}:${String(m).padStart(2, "0")}:${String(s).padStart(2, "0")}`;
}
return `${m}:${String(s).padStart(2, "0")}`;
}
export function formatDistance(meters: number): string {
return `${(meters / 1000).toFixed(2)} km`;
}
export function formatPace(secPerKm: number): string {
const m = Math.floor(secPerKm / 60);
const s = Math.round(secPerKm % 60);
return `${m}:${String(s).padStart(2, "0")} /km`;
}