import React, { lazy, Suspense } from 'react'; import { Route, Redirect, BrowserRouter as Router, Switch, } from 'react-router-dom'; import { useSelector } from 'react-redux'; import ErrorBoundary from './ErrorBoundary'; import { PUBLIC_ROUTE } from './route.constants'; import Loader from '@imd/components/utility/loader'; const Dashboard = lazy(() => import('./containers/Dashboard/Dashboard')); const publicRoutes = [ { path: PUBLIC_ROUTE.LANDING, exact: true, component: lazy(() => import('@imd/containers/Pages/SignIn/SignIn')), }, ]; export default function Routes() { return ( <ErrorBoundary> <Suspense fallback={<Loader />}> <Router> <Switch> {publicRoutes.map((route, index) => ( <Route key={index} path={route.path} exact={route.exact}> <route.component /> </Route> ))} <Route path="/dashboard"> <Dashboard /> </Route> </Switch> </Router> </Suspense> </ErrorBoundary> ); }