Add message bar

This commit is contained in:
jwu-fisker
2021-01-05 17:30:25 -08:00
parent 552ece45ad
commit b0b49fe5e6
2 changed files with 32 additions and 14 deletions

View File

@@ -4,7 +4,9 @@ import {
Switch, Switch,
Route Route
} from 'react-router-dom'; } from 'react-router-dom';
import './App.css'; import { UserProvider } from '../Contexts/UserContext';
import { ProtectedRoute } from '../Routes/ProtectedRoute';
import { MessageBar } from '../MessageBar';
const SignInForm = React.lazy(() => import('../SignInForm')); const SignInForm = React.lazy(() => import('../SignInForm'));
const SignUpForm = React.lazy(() => import('../SignUpForm')); const SignUpForm = React.lazy(() => import('../SignUpForm'));
@@ -13,6 +15,8 @@ const FileUploadForm = React.lazy(() => import('../FileUploadForm'));
function App() { function App() {
return ( return (
<Suspense fallback={"Loading..."}> <Suspense fallback={"Loading..."}>
<UserProvider>
<MessageBar />
<BrowserRouter> <BrowserRouter>
<Switch> <Switch>
<Route path="/" exact> <Route path="/" exact>
@@ -21,11 +25,10 @@ function App() {
<Route path="/signup"> <Route path="/signup">
<SignUpForm /> <SignUpForm />
</Route> </Route>
<Route path="/upload"> <ProtectedRoute path="/upload" render={() => <FileUploadForm />} />
<FileUploadForm />
</Route>
</Switch> </Switch>
</BrowserRouter> </BrowserRouter>
</UserProvider>
</Suspense> </Suspense>
); );
} }

View File

@@ -0,0 +1,15 @@
import React from 'react';
import { Snackbar } from "@material-ui/core";
import { useUserContext } from './Contexts/UserContext';
export const MessageBar = () => {
const { error, setError } = useUserContext();
const open = (error !== null);
return (<Snackbar
open={open}
message={error}
anchorOrigin={{ vertical: "top", horizontal: "center" }}
autoHideDuration={10000}
onClose={() => setError(null)}/>)
}