Browse Source

Update room state on receiving RoomJoinResponse.

main
Titouan Rigoudy 4 years ago
parent
commit
86fe0af694
2 changed files with 9 additions and 6 deletions
  1. +3
    -6
      src/modules/room/message.ts
  2. +6
    -0
      src/modules/room/slice.ts

+ 3
- 6
src/modules/room/message.ts View File

@ -8,6 +8,7 @@ import {
roomSendMessage,
roomSetMembership,
roomSetAll,
roomSetState,
} from "modules/room/slice";
import { SocketMessage, SocketMessageMiddleware } from "modules/socket/message";
@ -76,12 +77,8 @@ function handleRoomMessageResponse(dispatch: AppDispatch, response): void {
}
function handleRoomJoinResponse(dispatch: AppDispatch, response): void {
dispatch(
roomSetMembership([
response.room_name,
RoomMembership.Joined,
])
);
const room = convertRoomListEntry(response.room_name, response.room);
dispatch(roomSetState(room));
}
function handleRoomLeaveResponse(dispatch: AppDispatch, response): void {


+ 6
- 0
src/modules/room/slice.ts View File

@ -63,6 +63,11 @@ export const roomSlice = createSlice({
room.membership = membership;
},
roomSetState: (state: RoomSliceState,
action: PayloadAction<RoomState>) => {
const room = action.payload;
state.rooms[room.name] = room;
},
roomReceiveMessage: (
state: RoomSliceState,
action: PayloadAction<RoomMessagePayload>
@ -106,6 +111,7 @@ export const roomSlice = createSlice({
export const {
roomSetMembership,
roomSetState,
roomReceiveMessage,
roomSendMessage,
roomGetAll,


Loading…
Cancel
Save