File size: 688 Bytes
2efe57e |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
import React, { useState } from "react";
import { AuthContext } from "./AuthContext";
export const AuthProvider: React.FC<{ children: React.ReactNode }> = ({ children }) => {
const [isAuthenticated, setIsAuthenticated] = useState<boolean>(
!!localStorage.getItem("auth_token")
);
const login = (token: string) => {
localStorage.setItem("auth_token", token);
setIsAuthenticated(true);
};
const logout = () => {
localStorage.removeItem("auth_token");
setIsAuthenticated(false);
window.location.href = "/signin";
};
return (
<AuthContext.Provider value={{ isAuthenticated, login, logout }}>
{children}
</AuthContext.Provider>
);
};
|