Chunk out the different routers and clean up feature logic

This commit is contained in:
DaneEveritt 2022-06-12 11:56:00 -04:00
parent 04e97cc67e
commit 7197d28815
No known key found for this signature in database
GPG key ID: EEA66103B3D71F53
5 changed files with 54 additions and 32 deletions

View file

@ -1,11 +1,8 @@
import React from 'react';
import React, { lazy } from 'react';
import { hot } from 'react-hot-loader/root';
import { Route, Router, Switch } from 'react-router-dom';
import { StoreProvider } from 'easy-peasy';
import { store } from '@/state';
import DashboardRouter from '@/routers/DashboardRouter';
import ServerRouter from '@/routers/ServerRouter';
import AuthenticationRouter from '@/routers/AuthenticationRouter';
import { SiteSettings } from '@/state/settings';
import ProgressBar from '@/components/elements/ProgressBar';
import { NotFound } from '@/components/elements/ScreenBlock';
@ -16,6 +13,11 @@ import { setupInterceptors } from '@/api/interceptors';
import AuthenticatedRoute from '@/components/elements/AuthenticatedRoute';
import { ServerContext } from '@/state/server';
import '@/assets/tailwind.css';
import Spinner from '@/components/elements/Spinner';
const DashboardRouter = lazy(() => import(/* webpackChunkName: "dash" */'@/routers/DashboardRouter'));
const ServerRouter = lazy(() => import('@/routers/ServerRouter'));
const AuthenticationRouter = lazy(() => import('@/routers/AuthenticationRouter'));
interface ExtendedWindow extends Window {
SiteConfiguration?: SiteSettings;
@ -63,15 +65,21 @@ const App = () => {
<Router history={history}>
<Switch>
<Route path={'/auth'}>
<AuthenticationRouter/>
<Spinner.Suspense>
<AuthenticationRouter/>
</Spinner.Suspense>
</Route>
<AuthenticatedRoute path={'/server/:id'}>
<ServerContext.Provider>
<ServerRouter/>
</ServerContext.Provider>
<Spinner.Suspense>
<ServerContext.Provider>
<ServerRouter/>
</ServerContext.Provider>
</Spinner.Suspense>
</AuthenticatedRoute>
<AuthenticatedRoute path={'/'}>
<DashboardRouter/>
<Spinner.Suspense>
<DashboardRouter/>
</Spinner.Suspense>
</AuthenticatedRoute>
<Route path={'*'}>
<NotFound/>