UserContext.tsx 705 B

1234567891011121314151617181920212223242526
  1. import React, { useState, FC } from "react";
  2. interface UserContextInterface {
  3. user?: User;
  4. logged: boolean;
  5. setLogged: React.Dispatch<React.SetStateAction<boolean>>;
  6. setUser: React.Dispatch<React.SetStateAction<User | undefined>>;
  7. }
  8. export const UserContext = React.createContext<UserContextInterface>({
  9. logged: false,
  10. setLogged: () => {},
  11. setUser: () => {},
  12. });
  13. const UserContextProvider: FC = ({ children }) => {
  14. const [user, setUser] = useState<User>();
  15. const [logged, setLogged] = useState<boolean>(false);
  16. return (
  17. <UserContext.Provider value={{ user, setUser, logged, setLogged }}>
  18. {children}
  19. </UserContext.Provider>
  20. );
  21. };
  22. export default UserContextProvider;