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, roomSendMessage,
roomSetMembership, roomSetMembership,
roomSetAll, roomSetAll,
roomSetState,
} from "modules/room/slice"; } from "modules/room/slice";
import { SocketMessage, SocketMessageMiddleware } from "modules/socket/message"; import { SocketMessage, SocketMessageMiddleware } from "modules/socket/message";
@ -76,12 +77,8 @@ function handleRoomMessageResponse(dispatch: AppDispatch, response): void {
} }
function handleRoomJoinResponse(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 { 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; room.membership = membership;
}, },
roomSetState: (state: RoomSliceState,
action: PayloadAction<RoomState>) => {
const room = action.payload;
state.rooms[room.name] = room;
},
roomReceiveMessage: ( roomReceiveMessage: (
state: RoomSliceState, state: RoomSliceState,
action: PayloadAction<RoomMessagePayload> action: PayloadAction<RoomMessagePayload>
@ -106,6 +111,7 @@ export const roomSlice = createSlice({
export const { export const {
roomSetMembership, roomSetMembership,
roomSetState,
roomReceiveMessage, roomReceiveMessage,
roomSendMessage, roomSendMessage,
roomGetAll, roomGetAll,


Loading…
Cancel
Save