59 lines
1.8 KiB
TypeScript
59 lines
1.8 KiB
TypeScript
import './App.css';
|
|
import { Layout } from 'antd';
|
|
import { App as AntApp } from 'antd';
|
|
import { Provider } from 'react-redux';
|
|
import { BrowserRouter, Route, Routes } from 'react-router-dom';
|
|
import { AuthGate } from './auth/AuthGate';
|
|
import { Config } from './conf/config';
|
|
import {
|
|
Admin,
|
|
AuditLogging,
|
|
CatalogueGroup,
|
|
CatalogueJur,
|
|
ConsolidatedOsvPage,
|
|
ConsolidationPage,
|
|
DocStorage,
|
|
DocumentPage,
|
|
GroupsLayout,
|
|
Main,
|
|
Mono,
|
|
} from './layouts/';
|
|
import { store } from './store/store';
|
|
import { Sidebar } from './widgets/Sidebar/Sidebar';
|
|
|
|
// Каркас: экраны по docs/context/10-user-journey.md добавляются срезами.
|
|
function App() {
|
|
return (
|
|
<Provider store={store}>
|
|
<AntApp>
|
|
<BrowserRouter basename={Config.APP_ADDRESS}>
|
|
<AuthGate>
|
|
<Layout hasSider={true} style={{ height: '100vh' }}>
|
|
<Sidebar />
|
|
<Layout.Content>
|
|
<Routes>
|
|
<Route path='/admin' element={<Admin />} />
|
|
<Route path='/' element={<Main />} />
|
|
<Route path='/groups'>
|
|
<Route index element={<GroupsLayout />} />
|
|
<Route path=':group_id' element={<ConsolidationPage />} />
|
|
<Route path=':group_id/versions/:version_id/osv' element={<ConsolidatedOsvPage />} />
|
|
<Route path='monozaemchiki' element={<Mono />} />
|
|
</Route>
|
|
<Route path='/catalogue/groups' element={<CatalogueGroup />} />
|
|
<Route path='/catalogue/jur_l' element={<CatalogueJur />} />
|
|
<Route path='/docstorage' element={<DocStorage />} />
|
|
<Route path='/documents' element={<DocumentPage />} />
|
|
<Route path='/logging' element={<AuditLogging />} />
|
|
</Routes>
|
|
</Layout.Content>
|
|
</Layout>
|
|
</AuthGate>
|
|
</BrowserRouter>
|
|
</AntApp>
|
|
</Provider>
|
|
);
|
|
}
|
|
|
|
export default App;
|