import React, { useState } from 'react'; // --- Imports --- import LoginPage from './pages/LoginPage'; import AdminLogin from './pages/AdminLogin'; import AppliLogin from './pages/AppliLogin'; import ClientDash from './pages/clientdash'; import Admindash from './pages/Admindashboard'; // --- Applicant Pages --- import ApplicantJobPage from './pages/ApplicantJobPage'; import ApplicantProfile from './pages/ApplicantProfile'; // Make sure this file exists import ApplicantATS from './pages/ApplicantATS'; // Make sure this file exists import ApplicantInterviews from './pages/ApplicantInterviews'; // Make sure this file exists import ApplicantMessages from './pages/ApplicantMessages'; // Make sure this file exists import ResetPassword from './pages/ResetPassword'; import { supabase } from './supabaseClient'; // Import at top export default function App() { // Initialize state from localStorage if available, else login const [currentPage, setCurrentPage] = useState('login'); const [loading, setLoading] = useState(true); // START LOADING // --- PERSISTENCE LOGIC --- React.useEffect(() => { const checkSession = async () => { // 1. Check if user is logged in const { data: { session } } = await supabase.auth.getSession(); if (session) { // 2. If logged in, recover last page or default to 'applicant-jobs' const lastPage = localStorage.getItem('last_iris_page'); if (lastPage && lastPage !== 'login') { setCurrentPage(lastPage); } else { setCurrentPage('applicant-jobs'); } } setLoading(false); // STOP LOADING }; checkSession(); }, []); const handleNavigate = (page) => { setCurrentPage(page); // Persist navigation if (page !== 'login' && page !== 'applicant' && page !== 'admin') { localStorage.setItem('last_iris_page', page); } }; const renderPage = () => { if (loading) { // Simple Full-Screen Loader return (