Add WebSocket connection to client
Changes:
- On successful login, create a barebone WebSocket
- The access token is used for the authentification
GitLab: #49
Change-Id: I9aee9125fb8eb25273b198054909927350177b72
diff --git a/client/src/index.tsx b/client/src/index.tsx
index 968e62b..49ed2ef 100644
--- a/client/src/index.tsx
+++ b/client/src/index.tsx
@@ -24,13 +24,14 @@
import { StrictMode } from 'react';
import { createRoot } from 'react-dom/client';
import { Provider } from 'react-redux';
-import { createBrowserRouter, createRoutesFromElements, Route, RouterProvider } from 'react-router-dom';
+import { createBrowserRouter, createRoutesFromElements, Outlet, Route, RouterProvider } from 'react-router-dom';
import socketio from 'socket.io-client';
import App from './App';
import ContactList from './components/ContactList';
import AuthProvider from './contexts/AuthProvider';
import { SocketProvider } from './contexts/Socket';
+import WebSocketProvider from './contexts/WebSocketProvider';
import AccountSelection from './pages/AccountSelection';
import AccountSettings from './pages/AccountSettings';
import CallInterface from './pages/CallInterface';
@@ -58,7 +59,15 @@
<Route path="/" element={<App />}>
<Route index element={<Welcome />} />
<Route path="theme" element={<ThemeDemonstrator />} />
- <Route element={<AuthProvider />}>
+ <Route
+ element={
+ <AuthProvider>
+ <WebSocketProvider>
+ <Outlet />
+ </WebSocketProvider>
+ </AuthProvider>
+ }
+ >
<Route path="account" element={<JamiMessenger />} />
<Route path="settings" element={<AccountSettings />} />
<Route path="contacts" element={<ContactList />} />