Fondation

This commit is contained in:
alma 2026-01-17 01:15:15 +01:00
parent 14af1f8b28
commit bda8eb896a

View File

@ -1,6 +1,6 @@
"use client";
import { useState, useEffect, useRef } from "react";
import { useState, useEffect, useRef, useMemo } from "react";
import { format, isToday, isTomorrow, addDays } from "date-fns";
import { fr } from "date-fns/locale";
import { CalendarIcon, ChevronRight } from "lucide-react";
@ -22,24 +22,29 @@ type Event = {
};
export function CalendarWidget() {
const { data: session, status } = useSession();
const [events, setEvents] = useState<Event[]>([]);
const [loading, setLoading] = useState(true);
const [error, setError] = useState<string | null>(null);
const { triggerNotification } = useWidgetNotification();
const lastEventCountRef = useRef<number>(-1);
// Declare useSession after other hooks to avoid TypeScript scope analysis issues
const sessionResult = useSession();
useEffect(() => {
// Capture values from sessionResult inside useEffect to avoid scope issues
const currentSession = sessionResult.data;
const currentStatus = sessionResult.status;
console.log("Calendar Widget - Session Status:", status);
console.log("Calendar Widget - Session Data:", session);
console.log("Calendar Widget - Session Status:", currentStatus);
console.log("Calendar Widget - Session Data:", currentSession);
if (status === "loading") {
if (currentStatus === "loading") {
console.log("Calendar Widget - Session is loading");
return;
}
if (status !== "authenticated" || !session) {
if (currentStatus !== "authenticated" || !currentSession) {
console.log("Calendar Widget - Not authenticated, skipping fetch");
setLoading(false);
return;
@ -200,7 +205,7 @@ export function CalendarWidget() {
}, 300000);
return () => clearInterval(intervalId);
}, [session, status, triggerNotification]);
}, [sessionResult.data, sessionResult.status, triggerNotification]);
const formatEventDate = (date: Date, isAllDay: boolean) => {
let dateString = "";