Add message bar
This commit is contained in:
@@ -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,19 +15,20 @@ const FileUploadForm = React.lazy(() => import('../FileUploadForm'));
|
|||||||
function App() {
|
function App() {
|
||||||
return (
|
return (
|
||||||
<Suspense fallback={"Loading..."}>
|
<Suspense fallback={"Loading..."}>
|
||||||
<BrowserRouter>
|
<UserProvider>
|
||||||
<Switch>
|
<MessageBar />
|
||||||
<Route path="/" exact>
|
<BrowserRouter>
|
||||||
<SignInForm />
|
<Switch>
|
||||||
</Route>
|
<Route path="/" exact>
|
||||||
<Route path="/signup">
|
<SignInForm />
|
||||||
<SignUpForm />
|
</Route>
|
||||||
</Route>
|
<Route path="/signup">
|
||||||
<Route path="/upload">
|
<SignUpForm />
|
||||||
<FileUploadForm />
|
</Route>
|
||||||
</Route>
|
<ProtectedRoute path="/upload" render={() => <FileUploadForm />} />
|
||||||
</Switch>
|
</Switch>
|
||||||
</BrowserRouter>
|
</BrowserRouter>
|
||||||
|
</UserProvider>
|
||||||
</Suspense>
|
</Suspense>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
15
src/components/MessageBar.jsx
Normal file
15
src/components/MessageBar.jsx
Normal 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)}/>)
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user