return to Home on sign out
This commit is contained in:
parent
af09b6dcc3
commit
056dcd9601
@ -1,5 +1,5 @@
|
|||||||
import { useState, useEffect, createContext, useContext } from 'react';
|
import { useState, useEffect, createContext, useContext } from 'react';
|
||||||
import { BrowserRouter, Routes, Route, Navigate, useNavigate } from 'react-router-dom';
|
import { Routes, Route, Navigate, useNavigate } from 'react-router-dom';
|
||||||
import { User } from './lib/api';
|
import { User } from './lib/api';
|
||||||
import { socketClient } from './lib/socket';
|
import { socketClient } from './lib/socket';
|
||||||
import Header from './components/Header';
|
import Header from './components/Header';
|
||||||
@ -60,6 +60,7 @@ export function useAppContext(): AppContextType {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export default function App() {
|
export default function App() {
|
||||||
|
const navigate = useNavigate();
|
||||||
const [user, setUser] = useState<User | null>(null);
|
const [user, setUser] = useState<User | null>(null);
|
||||||
const [currentProject, setCurrentProject] = useState<string | null>(null);
|
const [currentProject, setCurrentProject] = useState<string | null>(null);
|
||||||
const [loading, setLoading] = useState(true);
|
const [loading, setLoading] = useState(true);
|
||||||
@ -92,6 +93,7 @@ export default function App() {
|
|||||||
setUser(null);
|
setUser(null);
|
||||||
setCurrentProject(null);
|
setCurrentProject(null);
|
||||||
socketClient.disconnect();
|
socketClient.disconnect();
|
||||||
|
navigate('/');
|
||||||
};
|
};
|
||||||
|
|
||||||
const handleSetCurrentProject = (slug: string | null) => {
|
const handleSetCurrentProject = (slug: string | null) => {
|
||||||
@ -109,7 +111,6 @@ export default function App() {
|
|||||||
|
|
||||||
return (
|
return (
|
||||||
<AppContext.Provider value={{ user, currentProject, setCurrentProject: handleSetCurrentProject, onSignOut: handleSignOut }}>
|
<AppContext.Provider value={{ user, currentProject, setCurrentProject: handleSetCurrentProject, onSignOut: handleSignOut }}>
|
||||||
<BrowserRouter>
|
|
||||||
<div className="h-screen flex flex-col bg-bg-primary">
|
<div className="h-screen flex flex-col bg-bg-primary">
|
||||||
<Header user={user} onSignOut={handleSignOut} />
|
<Header user={user} onSignOut={handleSignOut} />
|
||||||
<main className="flex-1 flex overflow-hidden">
|
<main className="flex-1 flex overflow-hidden">
|
||||||
@ -144,7 +145,6 @@ export default function App() {
|
|||||||
</main>
|
</main>
|
||||||
<StatusBar projectSlug={currentProject} />
|
<StatusBar projectSlug={currentProject} />
|
||||||
</div>
|
</div>
|
||||||
</BrowserRouter>
|
|
||||||
</AppContext.Provider>
|
</AppContext.Provider>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
@ -1,10 +1,13 @@
|
|||||||
import React from 'react';
|
import React from 'react';
|
||||||
import ReactDOM from 'react-dom/client';
|
import ReactDOM from 'react-dom/client';
|
||||||
|
import { BrowserRouter } from 'react-router-dom';
|
||||||
import App from './App';
|
import App from './App';
|
||||||
import './index.css';
|
import './index.css';
|
||||||
|
|
||||||
ReactDOM.createRoot(document.getElementById('root')!).render(
|
ReactDOM.createRoot(document.getElementById('root')!).render(
|
||||||
<React.StrictMode>
|
<React.StrictMode>
|
||||||
|
<BrowserRouter>
|
||||||
<App />
|
<App />
|
||||||
|
</BrowserRouter>
|
||||||
</React.StrictMode>
|
</React.StrictMode>
|
||||||
);
|
);
|
||||||
Loading…
Reference in New Issue
Block a user