From 50f03ecd09789691d882a86e3ac59316d8f86c54 Mon Sep 17 00:00:00 2001 From: Justin Campbell Date: Fri, 13 Nov 2020 15:11:13 -0500 Subject: [PATCH] Create AuthProvider component --- src/components/AuthProvider/AuthProvider.js | 32 +++++++++++++++++++++ src/components/AuthProvider/AuthProvider.md | 14 +++++++++ src/components/AuthProvider/index.js | 1 + 3 files changed, 47 insertions(+) create mode 100644 src/components/AuthProvider/AuthProvider.js create mode 100644 src/components/AuthProvider/AuthProvider.md create mode 100644 src/components/AuthProvider/index.js diff --git a/src/components/AuthProvider/AuthProvider.js b/src/components/AuthProvider/AuthProvider.js new file mode 100644 index 0000000..c63b9e2 --- /dev/null +++ b/src/components/AuthProvider/AuthProvider.js @@ -0,0 +1,32 @@ +import React, { useState, createContext, useContext } from "react"; + + + +const LoginContext = createContext(); +const LoginSetterContext = createContext(); +const TokenContext = createContext(); +const TokenSetterContext = createContext(); + +export const useLogin = () => useContext(LoginContext); +export const useLoginSetter = () => useContext(LoginSetterContext); +export const useToken = () => useContext(TokenContext); +export const useTokenSetter = () => useContext(TokenSetterContext); + + + +export default function AuthProvider({ children }) { + const [loggedIn, setLoggedIn] = useState(false); + const [token, setToken] = useState(null); + + return ( + + + + + {children} + + + + + ); +}; \ No newline at end of file diff --git a/src/components/AuthProvider/AuthProvider.md b/src/components/AuthProvider/AuthProvider.md new file mode 100644 index 0000000..aad5bee --- /dev/null +++ b/src/components/AuthProvider/AuthProvider.md @@ -0,0 +1,14 @@ +AuthProvider + +Description + +--- + +```jsx +import AuthProvider from "./AuthProvider"; + + +``` +```jsx static + +``` \ No newline at end of file diff --git a/src/components/AuthProvider/index.js b/src/components/AuthProvider/index.js new file mode 100644 index 0000000..165e516 --- /dev/null +++ b/src/components/AuthProvider/index.js @@ -0,0 +1 @@ +export { default, useLogin, useLoginSetter, useToken, useTokenSetter } from "./AuthProvider"; \ No newline at end of file