fixup! fix: implement useTranslations for start date on event modal
This commit is contained in:
committed by
Linus Rath
parent
f0967f90eb
commit
31024396e3
@@ -21,6 +21,7 @@ import {
|
|||||||
import { PluginSlot } from "@/components/plugins/plugin-slot";
|
import { PluginSlot } from "@/components/plugins/plugin-slot";
|
||||||
import { useSettingsStore } from "@/stores/settings-store";
|
import { useSettingsStore } from "@/stores/settings-store";
|
||||||
import { generateUUID } from "@/lib/utils";
|
import { generateUUID } from "@/lib/utils";
|
||||||
|
import { useFormatEventDate } from "@/hooks/use-format-event-date";
|
||||||
|
|
||||||
export interface PendingEventPreview {
|
export interface PendingEventPreview {
|
||||||
start: Date;
|
start: Date;
|
||||||
@@ -130,15 +131,7 @@ export function EventModal({
|
|||||||
const timeFormat = useSettingsStore((s) => s.timeFormat);
|
const timeFormat = useSettingsStore((s) => s.timeFormat);
|
||||||
const timeDisplayFmt = timeFormat === "12h" ? "h:mm a" : "HH:mm";
|
const timeDisplayFmt = timeFormat === "12h" ? "h:mm a" : "HH:mm";
|
||||||
const isEdit = !!event;
|
const isEdit = !!event;
|
||||||
|
const formatEventDate = useFormatEventDate();
|
||||||
const formatEventDate = useCallback((startD: Date): string => {
|
|
||||||
const dayOfWeek = format(startD, "EEE").toLowerCase();
|
|
||||||
const month = format(startD, "MMM").toLowerCase();
|
|
||||||
const day = format(startD, "d");
|
|
||||||
const year = format(startD, "yyyy");
|
|
||||||
return `${t(`days.${dayOfWeek}`)}, ${t(`months.${month}`)} ${day}, ${year}`;
|
|
||||||
}, [t]);
|
|
||||||
|
|
||||||
const [mode, setMode] = useState<"view" | "edit">(isEdit ? "view" : "edit");
|
const [mode, setMode] = useState<"view" | "edit">(isEdit ? "view" : "edit");
|
||||||
|
|
||||||
const userIsOrganizer = useMemo(() => {
|
const userIsOrganizer = useMemo(() => {
|
||||||
|
|||||||
@@ -0,0 +1,27 @@
|
|||||||
|
import { useCallback } from "react";
|
||||||
|
import { useTranslations } from "next-intl";
|
||||||
|
import { format } from "date-fns";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns a memoized function that formats a calendar event date
|
||||||
|
* using the current locale for day and month names.
|
||||||
|
*
|
||||||
|
* The string will be in the format: "EEE, MMM d, yyyy"
|
||||||
|
*
|
||||||
|
* For example: "Wed, Apr 29, 2026" (en)
|
||||||
|
* "Qua, Abr 29, 2026" (pt)
|
||||||
|
*/
|
||||||
|
export function useFormatEventDate(): (date: Date) => string {
|
||||||
|
const t = useTranslations("calendar");
|
||||||
|
|
||||||
|
return useCallback(
|
||||||
|
(date: Date): string => {
|
||||||
|
const dayOfWeek = format(date, "EEE").toLowerCase();
|
||||||
|
const month = format(date, "MMM").toLowerCase();
|
||||||
|
const day = format(date, "d");
|
||||||
|
const year = format(date, "yyyy");
|
||||||
|
return `${t(`days.${dayOfWeek}`)}, ${t(`months.${month}`)} ${day}, ${year}`;
|
||||||
|
},
|
||||||
|
[t]
|
||||||
|
);
|
||||||
|
}
|
||||||
@@ -2284,7 +2284,7 @@
|
|||||||
"sep": "Sep",
|
"sep": "Sep",
|
||||||
"oct": "Oct",
|
"oct": "Oct",
|
||||||
"nov": "Nov",
|
"nov": "Nov",
|
||||||
"dec": "Dez"
|
"dec": "Dec"
|
||||||
},
|
},
|
||||||
"notifications": {
|
"notifications": {
|
||||||
"event_created": "Event created",
|
"event_created": "Event created",
|
||||||
|
|||||||
Reference in New Issue
Block a user