Add current user object that holds user session values instead of standalone getters. Closes #2050

This commit is contained in:
Gabe Kangas
2022-10-10 16:26:09 -07:00
parent d94723bd3a
commit 80a012a3c7
12 changed files with 103 additions and 98 deletions

View File

@@ -2,18 +2,18 @@ import { ConnectedClientInfoEvent } from '../../../interfaces/socket-events';
export function handleConnectedClientInfoMessage(
message: ConnectedClientInfoEvent,
setChatDisplayName: (string) => void,
setChatDisplayColor: (number) => void,
setChatUserId: (number) => void,
setIsChatModerator: (boolean) => void,
setChatAuthenticated: (boolean) => void,
setCurrentUser: (CurrentUser) => void,
) {
const { user } = message;
const { id, displayName, displayColor, scopes, authenticated } = user;
setChatDisplayName(displayName);
setChatDisplayColor(displayColor);
setChatUserId(id);
setIsChatModerator(scopes?.includes('MODERATOR'));
setChatAuthenticated(authenticated);
setCurrentUser({
id: id.toString(),
displayName,
displayColor,
isModerator: scopes?.includes('MODERATOR'),
});
}
export default handleConnectedClientInfoMessage;