From 0f26f40e796f8329641f6b22e3c3a4845f22a208 Mon Sep 17 00:00:00 2001 From: sachin Date: Sat, 27 Feb 2021 11:25:03 -0800 Subject: [PATCH] Implemented managementRoute and extractorRoute --- .../src/components/routes/extractorRoute.js | 23 +++++++++++++++++++ .../src/components/routes/managementRoute.js | 23 +++++++++++++++++++ 2 files changed, 46 insertions(+) create mode 100644 React-frontend/src/components/routes/extractorRoute.js create mode 100644 React-frontend/src/components/routes/managementRoute.js diff --git a/React-frontend/src/components/routes/extractorRoute.js b/React-frontend/src/components/routes/extractorRoute.js new file mode 100644 index 00000000..a49e45de --- /dev/null +++ b/React-frontend/src/components/routes/extractorRoute.js @@ -0,0 +1,23 @@ +import React from 'react'; +import { useSelector } from 'react-redux'; +import { Route, Redirect } from 'react-router-dom'; + +const extractorRoute = ({ component: Component, ...rest }) => { + const { isAuthenticated, isLoading, user } = useSelector(state => state.auth); + + return ( + + (!isLoading && !isAuthenticated) || + (!isLoading && isAuthenticated && user.role !== 'extractor') ? ( + + ) : ( + + ) + } + /> + ); +}; + +export default extractorRoute; diff --git a/React-frontend/src/components/routes/managementRoute.js b/React-frontend/src/components/routes/managementRoute.js new file mode 100644 index 00000000..cb54f552 --- /dev/null +++ b/React-frontend/src/components/routes/managementRoute.js @@ -0,0 +1,23 @@ +import React from 'react'; +import { useSelector } from 'react-redux'; +import { Route, Redirect } from 'react-router-dom'; + +const managementRoute = ({ component: Component, ...rest }) => { + const { isAuthenticated, isLoading, user } = useSelector(state => state.auth); + + return ( + + (!isLoading && !isAuthenticated) || + (!isLoading && isAuthenticated && user.role !== 'management') ? ( + + ) : ( + + ) + } + /> + ); +}; + +export default managementRoute;