blob: a8b2eba7a5fc72ab28f935ba4fe5314fcb3c930d [file] [log] [blame]
simond47ef9e2022-09-28 22:24:28 -04001'use strict';
2import './index.scss';
3import { StrictMode } from 'react';
idillon169f64f2022-09-16 14:01:22 -04004import { createRoot } from 'react-dom/client';
simond47ef9e2022-09-28 22:24:28 -04005import App from './App.js';
6import { store } from '../redux/store';
7import { Provider } from 'react-redux';
8import { BrowserRouter as Router } from 'react-router-dom';
idillon5815c732022-09-16 13:54:45 -04009import './i18n';
Larbi Gharibe9af9732021-03-31 15:08:01 +010010
idillon8e6c0062022-09-16 13:34:43 -040011// import config from "../sentry-client.config.json"
idillon08f77172022-09-13 19:14:17 -040012import { QueryClient, QueryClientProvider } from '@tanstack/react-query';
idillon322e4ac2022-09-14 12:48:43 -040013import socketio from 'socket.io-client';
14import { SocketProvider } from './contexts/socket.js';
idillon08f77172022-09-13 19:14:17 -040015
16const queryClient = new QueryClient({
17 defaultOptions: {
18 queries: {
19 cacheTime: Infinity, // websocket is responsible to tell when data needs to be updated
20 },
21 },
simond47ef9e2022-09-28 22:24:28 -040022});
idillon5e897432022-09-16 13:28:09 -040023
simond47ef9e2022-09-28 22:24:28 -040024const socket = socketio();
idillon322e4ac2022-09-14 12:48:43 -040025
simond47ef9e2022-09-28 22:24:28 -040026const container = document.getElementById('root');
idillon169f64f2022-09-16 14:01:22 -040027const root = createRoot(container);
28root.render(
29 <Provider store={store}>
Adrien Béraud023f7cf2022-09-18 14:57:53 -040030 <StrictMode>
idillon08f77172022-09-13 19:14:17 -040031 <QueryClientProvider client={queryClient}>
idillon322e4ac2022-09-14 12:48:43 -040032 <SocketProvider socket={socket}>
33 <Router>
simond47ef9e2022-09-28 22:24:28 -040034 <App />
idillon322e4ac2022-09-14 12:48:43 -040035 </Router>
36 </SocketProvider>
idillon08f77172022-09-13 19:14:17 -040037 </QueryClientProvider>
Adrien Béraud023f7cf2022-09-18 14:57:53 -040038 </StrictMode>
idillon169f64f2022-09-16 14:01:22 -040039 </Provider>
40);
Adrien Béraude74741b2021-04-19 13:22:54 -040041
idillond858c182022-09-16 13:18:26 -040042if (import.meta.webpackHot)
simond47ef9e2022-09-28 22:24:28 -040043 import.meta.webpackHot.accept('./App', () => {
idillond858c182022-09-16 13:18:26 -040044 try {
45 render(App);
46 } catch (e) {
47 location.reload();
48 }
49 });