gui: work in progress
This commit is contained in:
27
apps/web/src/hooks/useFormatDateInterval.ts
Normal file
27
apps/web/src/hooks/useFormatDateInterval.ts
Normal file
@@ -0,0 +1,27 @@
|
||||
import { type IInterval } from "@/types";
|
||||
|
||||
|
||||
export function formatDateInterval(interval: IInterval, date: Date): string {
|
||||
if (interval === "hour") {
|
||||
return new Intl.DateTimeFormat("en-GB", {
|
||||
hour: "2-digit",
|
||||
minute: "2-digit",
|
||||
}).format(date);
|
||||
}
|
||||
|
||||
if (interval === "month") {
|
||||
return new Intl.DateTimeFormat("en-GB", { month: "short" }).format(date);
|
||||
}
|
||||
|
||||
if (interval === "day") {
|
||||
return new Intl.DateTimeFormat("en-GB", { weekday: "short" }).format(
|
||||
date,
|
||||
);
|
||||
}
|
||||
|
||||
return date.toISOString();
|
||||
}
|
||||
|
||||
export function useFormatDateInterval(interval: IInterval) {
|
||||
return (date: Date | string) => formatDateInterval(interval, typeof date === "string" ? new Date(date) : date);
|
||||
}
|
||||
Reference in New Issue
Block a user