"use client"; import React, { useState, useEffect } from 'react'; import { useNetworkStatus } from '../lib/hooks/useNetworkStatus'; import { WifiOff, Wifi, X } from 'lucide-react'; import { motion, AnimatePresence } from 'motion/react'; export const NetworkBanner = () => { const isOnline = useNetworkStatus(); const [showStatus, setShowStatus] = useState(false); const [wasOffline, setWasOffline] = useState(false); useEffect(() => { if (!isOnline) { Promise.resolve().then(() => { setShowStatus(true); setWasOffline(true); }); } else if (wasOffline) { // Show "Back Online" message briefly Promise.resolve().then(() => setShowStatus(true)); const timer = setTimeout(() => { setShowStatus(false); setWasOffline(false); }, 3000); return () => clearTimeout(timer); } }, [isOnline, wasOffline]); return ( {showStatus && (
{isOnline ? (
) : (
)}

{isOnline ? 'اتصال اینترنت مجدداً برقرار شد.' : 'اتصال اینترنت شما قطع شده است. در حال تلاش برای اتصال مجدد...'}

)}
); };