blob: 2d4d46b10547851223f275f06d9fdebf6154b7f0 [file] [log] [blame]
simond47ef9e2022-09-28 22:24:28 -04001'use strict';
2import './index.scss';
idillon5815c732022-09-16 13:54:45 -04003import './i18n';
Larbi Gharibe9af9732021-03-31 15:08:01 +01004
idillon8e6c0062022-09-16 13:34:43 -04005// import config from "../sentry-client.config.json"
idillon08f77172022-09-13 19:14:17 -04006import { QueryClient, QueryClientProvider } from '@tanstack/react-query';
simon07b4eb02022-09-29 17:50:26 -04007import { StrictMode } from 'react';
8import { createRoot } from 'react-dom/client';
9import { Provider } from 'react-redux';
10import { BrowserRouter as Router } from 'react-router-dom';
idillon322e4ac2022-09-14 12:48:43 -040011import socketio from 'socket.io-client';
simon07b4eb02022-09-29 17:50:26 -040012
13import { store } from '../redux/store';
14import App from './App.js';
idillon322e4ac2022-09-14 12:48:43 -040015import { SocketProvider } from './contexts/socket.js';
idillon08f77172022-09-13 19:14:17 -040016
17const queryClient = new QueryClient({
18 defaultOptions: {
19 queries: {
20 cacheTime: Infinity, // websocket is responsible to tell when data needs to be updated
21 },
22 },
simond47ef9e2022-09-28 22:24:28 -040023});
idillon5e897432022-09-16 13:28:09 -040024
simond47ef9e2022-09-28 22:24:28 -040025const socket = socketio();
idillon322e4ac2022-09-14 12:48:43 -040026
simond47ef9e2022-09-28 22:24:28 -040027const container = document.getElementById('root');
idillon169f64f2022-09-16 14:01:22 -040028const root = createRoot(container);
29root.render(
30 <Provider store={store}>
Adrien Béraud023f7cf2022-09-18 14:57:53 -040031 <StrictMode>
idillon08f77172022-09-13 19:14:17 -040032 <QueryClientProvider client={queryClient}>
idillon322e4ac2022-09-14 12:48:43 -040033 <SocketProvider socket={socket}>
34 <Router>
simond47ef9e2022-09-28 22:24:28 -040035 <App />
idillon322e4ac2022-09-14 12:48:43 -040036 </Router>
37 </SocketProvider>
idillon08f77172022-09-13 19:14:17 -040038 </QueryClientProvider>
Adrien Béraud023f7cf2022-09-18 14:57:53 -040039 </StrictMode>
idillon169f64f2022-09-16 14:01:22 -040040 </Provider>
41);
Adrien Béraude74741b2021-04-19 13:22:54 -040042
idillond858c182022-09-16 13:18:26 -040043if (import.meta.webpackHot)
simond47ef9e2022-09-28 22:24:28 -040044 import.meta.webpackHot.accept('./App', () => {
idillond858c182022-09-16 13:18:26 -040045 try {
simon80b7b3b2022-09-28 17:50:10 -040046 // TODO: This needs be fixed
47 // eslint-disable-next-line no-undef
idillond858c182022-09-16 13:18:26 -040048 render(App);
49 } catch (e) {
50 location.reload();
51 }
52 });