"use client"; import { useState, type ReactNode } from "react"; import { useRouter } from "next/navigation"; import { RefreshButton } from "@/components/library/RefreshButton"; import { PullToRefreshIndicator } from "@/components/common/PullToRefreshIndicator"; import { usePullToRefresh } from "@/hooks/usePullToRefresh"; interface HomeClientWrapperProps { children: ReactNode; } export function HomeClientWrapper({ children }: HomeClientWrapperProps) { const router = useRouter(); const [isRefreshing, setIsRefreshing] = useState(false); const handleRefresh = async () => { try { setIsRefreshing(true); // Re-fetch server-side data router.refresh(); return { success: true }; } catch (_error) { return { success: false, error: "Erreur lors du rafraîchissement de la page d'accueil" }; } finally { setIsRefreshing(false); } }; const pullToRefresh = usePullToRefresh({ onRefresh: async () => { await handleRefresh(); }, enabled: !isRefreshing, }); return ( <>
{children}
); }