fix(p2): Calendar view toggle - key on DragAndDropCalendar + view prop

This commit is contained in:
Hermes
2026-07-31 02:06:42 +00:00
parent bf37f9a488
commit 6454462317
@@ -40,12 +40,12 @@ interface CalendarEvent {
} }
interface BigCalendarWrapperProps { interface BigCalendarWrapperProps {
onViewChange?: (view: string) => void;
events: CalendarEvent[]; events: CalendarEvent[];
onEventDrop?: (event: CalendarEvent, newStart: Date) => void; onEventDrop?: (event: CalendarEvent, newStart: Date) => void;
defaultView?: string; defaultView?: string;
date?: Date; date?: Date;
onNavigate?: (date: Date) => void; onNavigate?: (date: Date) => void;
onViewChange?: (view: string) => void;
} }
function eventStyleGetter(event: CalendarEvent) { function eventStyleGetter(event: CalendarEvent) {
@@ -77,9 +77,6 @@ export function BigCalendarWrapper({
}: BigCalendarWrapperProps) { }: BigCalendarWrapperProps) {
const router = useRouter(); const router = useRouter();
const handleSelectEvent = useCallback( const handleSelectEvent = useCallback(
(event: CalendarEvent) => { (event: CalendarEvent) => {
router.push(event.href); router.push(event.href);
@@ -105,7 +102,6 @@ export function BigCalendarWrapper({
const handleViewChange = useCallback( const handleViewChange = useCallback(
(newView: string) => { (newView: string) => {
if (onViewChange) onViewChange(newView); if (onViewChange) onViewChange(newView);
}, },
[onViewChange] [onViewChange]
@@ -123,21 +119,13 @@ export function BigCalendarWrapper({
return d; return d;
}, []); }, []);
const handleViewChange = useCallback(
(newView: string) => {
if (onViewChange) onViewChange(newView);
},
[onViewChange]
);
return ( return (
<DragAndDropCalendar <DragAndDropCalendar
key={defaultView} key={defaultView}
localizer={localizer} localizer={localizer}
events={events} events={events}
startAccessor="start" startAccessor=start
endAccessor="end" endAccessor=end
style={{ height: 600 }} style={{ height: 600 }}
eventPropGetter={eventStyleGetter} eventPropGetter={eventStyleGetter}
onSelectEvent={handleSelectEvent} onSelectEvent={handleSelectEvent}