2022-10-28 01:09:59 -04:00
|
|
|
import { History } from '@remix-run/router';
|
2022-11-18 18:58:11 -05:00
|
|
|
import React, { useEffect } from 'react';
|
2022-10-28 01:09:59 -04:00
|
|
|
|
|
|
|
import { HistoryRouter } from './components/HistoryRouter';
|
2022-11-18 12:55:46 -05:00
|
|
|
import { ApiProvider } from './hooks/useApi';
|
2023-04-13 00:47:34 +03:00
|
|
|
import { AppRoutes, ExperimentalAppRoutes } from './routes';
|
2022-10-28 01:09:59 -04:00
|
|
|
|
2022-11-30 14:18:49 -05:00
|
|
|
const App = ({ history }: { history: History }) => {
|
2023-04-13 00:47:34 +03:00
|
|
|
const layoutMode = localStorage.getItem('layout');
|
2022-11-18 18:58:11 -05:00
|
|
|
|
|
|
|
useEffect(() => {
|
|
|
|
Promise.all([
|
|
|
|
// Initialize the UI components after first render
|
|
|
|
import('./scripts/libraryMenu'),
|
|
|
|
import('./scripts/autoBackdrops')
|
|
|
|
]);
|
|
|
|
}, []);
|
|
|
|
|
2022-10-28 01:09:59 -04:00
|
|
|
return (
|
2022-11-30 14:18:49 -05:00
|
|
|
<ApiProvider>
|
2022-11-18 12:55:46 -05:00
|
|
|
<HistoryRouter history={history}>
|
2022-11-18 18:58:11 -05:00
|
|
|
<div className='backdropContainer' />
|
|
|
|
<div className='backgroundContainer' />
|
|
|
|
|
|
|
|
<div className='mainDrawer hide'>
|
|
|
|
<div className='mainDrawer-scrollContainer scrollContainer focuscontainer-y' />
|
|
|
|
</div>
|
|
|
|
<div className='skinHeader focuscontainer-x' />
|
|
|
|
|
|
|
|
<div className='mainAnimatedPages skinBody' />
|
|
|
|
<div className='skinBody'>
|
|
|
|
{layoutMode === 'experimental' ? <ExperimentalAppRoutes /> : <AppRoutes /> }
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<div className='mainDrawerHandle' />
|
2022-11-18 12:55:46 -05:00
|
|
|
</HistoryRouter>
|
|
|
|
</ApiProvider>
|
2022-10-28 01:09:59 -04:00
|
|
|
);
|
|
|
|
};
|
|
|
|
|
|
|
|
export default App;
|