2022-04-02 09:50:59 +03:00
|
|
|
import { createRoot } from 'react-dom/client';
|
2018-06-03 21:12:40 +03:00
|
|
|
import { Provider } from 'react-redux';
|
2018-06-03 14:15:52 +03:00
|
|
|
import { BrowserRouter } from 'react-router-dom';
|
2022-03-24 23:27:33 +03:00
|
|
|
import pack from '../package.json';
|
2021-12-23 19:53:06 +03:00
|
|
|
import { container } from './container';
|
2022-11-02 22:40:14 +03:00
|
|
|
import { setUpStore } from './container/store';
|
2020-08-22 19:32:48 +03:00
|
|
|
import { fixLeafletIcons } from './utils/helpers/leaflet';
|
2021-06-06 19:41:10 +03:00
|
|
|
import { register as registerServiceWorker } from './serviceWorkerRegistration';
|
2022-05-02 12:35:05 +03:00
|
|
|
import 'chart.js/auto'; // TODO Import specific ones to reduce bundle size https://react-chartjs-2.js.org/docs/migration-to-v4/#tree-shaking
|
2019-01-07 23:00:28 +03:00
|
|
|
import 'react-datepicker/dist/react-datepicker.css';
|
|
|
|
import 'leaflet/dist/leaflet.css';
|
2018-12-17 22:03:36 +03:00
|
|
|
import './index.scss';
|
2018-05-13 09:57:47 +03:00
|
|
|
|
2019-01-07 23:00:28 +03:00
|
|
|
// This overwrites icons used for leaflet maps, fixing some issues caused by webpack while processing the CSS
|
|
|
|
fixLeafletIcons();
|
|
|
|
|
2022-11-02 22:40:14 +03:00
|
|
|
const store = setUpStore(container);
|
2021-06-06 19:41:10 +03:00
|
|
|
const { App, ScrollToTop, ErrorHandler, appUpdateAvailable } = container;
|
2018-06-03 21:12:40 +03:00
|
|
|
|
2022-04-02 09:50:59 +03:00
|
|
|
createRoot(document.getElementById('root')!).render( // eslint-disable-line @typescript-eslint/no-non-null-assertion
|
2018-06-03 21:12:40 +03:00
|
|
|
<Provider store={store}>
|
2022-03-24 23:27:33 +03:00
|
|
|
<BrowserRouter basename={pack.homepage}>
|
2019-03-04 22:40:26 +03:00
|
|
|
<ErrorHandler>
|
|
|
|
<ScrollToTop>
|
|
|
|
<App />
|
|
|
|
</ScrollToTop>
|
|
|
|
</ErrorHandler>
|
2018-06-03 21:12:40 +03:00
|
|
|
</BrowserRouter>
|
|
|
|
</Provider>,
|
2018-06-03 14:15:52 +03:00
|
|
|
);
|
2021-06-06 13:26:43 +03:00
|
|
|
|
|
|
|
// Learn more about service workers: https://cra.link/PWA
|
2021-06-06 19:41:10 +03:00
|
|
|
registerServiceWorker({
|
|
|
|
onUpdate() {
|
2022-03-26 15:07:58 +03:00
|
|
|
store.dispatch(appUpdateAvailable());
|
2021-06-06 19:41:10 +03:00
|
|
|
},
|
|
|
|
});
|