'use client';

import { useEffect, useState } from 'react';
import { useRouter } from 'next/navigation';
import { useAuth } from '@/lib/auth';

export default function Home() {
  const router = useRouter();
  const { isAuthenticated, token, user } = useAuth();
  const [isHydrated, setIsHydrated] = useState(false);

  // 等待 Zustand 水合完成
  useEffect(() => {
    setIsHydrated(true);
  }, []);

  useEffect(() => {
    if (!isHydrated) return;

    console.log('Home page check:', { isAuthenticated, hasToken: !!token, hasUser: !!user });

    // 检查是否有持久化的认证信息
    const storedToken = localStorage.getItem('token');
    const authStorage = localStorage.getItem('auth-storage');
    
    console.log('LocalStorage check:', {
      hasStoredToken: !!storedToken,
      hasAuthStorage: !!authStorage,
    });

    if (isAuthenticated && token) {
      console.log('Redirecting to overview');
      router.push('/overview');
    } else {
      console.log('Redirecting to login');
      router.push('/login');
    }
  }, [isAuthenticated, token, user, router, isHydrated]);

  return (
    <div className="min-h-screen flex items-center justify-center bg-black">
      <div className="text-center">
        <div className="animate-spin rounded-full h-12 w-12 border-b-2 border-white mx-auto mb-4"></div>
        <p className="text-gray-400 text-sm">Loading...</p>
      </div>
    </div>
  );
}
