import React, {useEffect, useReducer} from 'react'; import {BrowserRouter, Route, Switch} from "react-router-dom"; import {Slide, ToastContainer} from "react-toastify"; import 'react-toastify/dist/ReactToastify.min.css' import './styles/app.css' import {authenticate, defaultAuth, reducer} from "./auth"; // pages import Home from "./components/Home"; import Login from "./components/Login"; import Logout from "./components/Logout"; import Register from "./components/Register"; import Upload from "./components/Upload"; import NotFound from "./components/NotFound"; import ViewAll from "./components/ViewAll"; import Admin from "./components/Admin"; import MyData from "./components/ViewOwn"; export const AuthContext = React.createContext(undefined) function App() { const [authState, authDispatch] = useReducer(reducer, defaultAuth(), () => defaultAuth()) useEffect(() => { (async () => { authDispatch({response: await authenticate(authState.token)}) })().then() }, [authState.token]) return (
); } export default App;