'use client';

import { useEffect, useState } from 'react';
import { useRouter } from 'next/navigation';
import { getDefaultPathAfterLogin } from '@/lib/authRedirect';
import LandingPage from '@/components/landing/LandingPage';

export default function Home() {
  const router = useRouter();
  const [hasToken, setHasToken] = useState<boolean | null>(null);

  useEffect(() => {
    if (typeof window === 'undefined') return;
    const token = localStorage.getItem('access_token');
    if (!token) {
      setHasToken(false);
      return;
    }
    setHasToken(true);
    try {
      const raw = localStorage.getItem('user_info');
      const user = raw ? JSON.parse(raw) : null;
      router.replace(getDefaultPathAfterLogin(user));
    } catch {
      router.replace('/dashboard?section=overview');
    }
  }, [router]);

  // No token: show public landing page
  if (hasToken === false) {
    return <LandingPage />;
  }

  // Token present: redirecting to dashboard (show brief loading)
  return (
    <div className="min-h-screen flex items-center justify-center bg-gray-50">
      <div className="text-center">
        <div className="text-4xl mb-4">📁</div>
        <div className="text-gray-600">Redirecting...</div>
      </div>
    </div>
  );
}
