feat: load players in session
This commit is contained in:
@@ -24,6 +24,7 @@ export interface Session {
|
||||
teams: TeamState | null;
|
||||
setTeams: (teams: TeamState) => void;
|
||||
players: User[] | null;
|
||||
reloadPlayers: () => void;
|
||||
onLogout: () => void;
|
||||
}
|
||||
|
||||
@@ -32,6 +33,7 @@ const sessionContext = createContext<Session>({
|
||||
teams: null,
|
||||
setTeams: () => {},
|
||||
players: null,
|
||||
reloadPlayers: () => {},
|
||||
onLogout: () => {},
|
||||
});
|
||||
|
||||
@@ -63,6 +65,10 @@ export function SessionProvider(props: SessionProviderProps) {
|
||||
if (teams) setTeams({ teams: teams, activeTeam: teams[0].id });
|
||||
}
|
||||
|
||||
async function reloadPlayers() {
|
||||
teams && loadPlayers(teams?.activeTeam).then((data) => setPlayers(data));
|
||||
}
|
||||
|
||||
useEffect(() => {
|
||||
loadUser();
|
||||
}, []);
|
||||
@@ -70,7 +76,7 @@ export function SessionProvider(props: SessionProviderProps) {
|
||||
loadTeam();
|
||||
}, [user]);
|
||||
useEffect(() => {
|
||||
teams && loadPlayers(teams?.activeTeam).then((data) => setPlayers(data));
|
||||
reloadPlayers();
|
||||
}, [teams]);
|
||||
|
||||
function onLogin(user: User) {
|
||||
@@ -103,7 +109,7 @@ export function SessionProvider(props: SessionProviderProps) {
|
||||
} else
|
||||
content = (
|
||||
<sessionContext.Provider
|
||||
value={{ user, teams, setTeams, players, onLogout }}
|
||||
value={{ user, teams, setTeams, players, reloadPlayers, onLogout }}
|
||||
>
|
||||
{children}
|
||||
</sessionContext.Provider>
|
||||
|
Reference in New Issue
Block a user