'use client' import { createContext, useContext, useEffect, useState } from 'react' import Loading from '../components/layout/shared/Loading' type AuthContextType = { isAuthenticated: boolean token: string | null currentUser: any | null } const AuthContext = createContext({ isAuthenticated: false, token: null, currentUser: null }) export const AuthProvider = ({ children }: { children: React.ReactNode }) => { const [token, setToken] = useState(null) const [currentUser, setCurrentUser] = useState(null) const [isInitialized, setIsInitialized] = useState(false) useEffect(() => { const savedToken = localStorage.getItem('authToken') const savedUser = localStorage.getItem('user') if (savedToken) setToken(savedToken) if (savedUser) setCurrentUser(JSON.parse(savedUser)) setIsInitialized(true) }, []) if (!isInitialized) return return ( {children} ) } export const useAuth = () => useContext(AuthContext)