import { App, Data, Enriched } from '@app/types'; import { Actions } from './rooms.actions'; import { store } from '..'; export const Dispatch = { clearStore: () => { store.dispatch(Actions.clearStore()); }, updateRooms: (rooms: Data.ServerInfo_Room[]) => { store.dispatch(Actions.updateRooms({ rooms })); }, joinRoom: (roomInfo: Data.ServerInfo_Room) => { store.dispatch(Actions.joinRoom({ roomInfo })); }, leaveRoom: (roomId: number) => { store.dispatch(Actions.leaveRoom({ roomId })); }, addMessage: (roomId: number, message: Enriched.Message) => { store.dispatch(Actions.addMessage({ roomId, message })); }, updateGames: (roomId: number, games: Data.ServerInfo_Game[]) => { store.dispatch(Actions.updateGames({ roomId, games })); }, userJoined: (roomId: number, user: Data.ServerInfo_User) => { store.dispatch(Actions.userJoined({ roomId, user })); }, userLeft: (roomId: number, name: string) => { store.dispatch(Actions.userLeft({ roomId, name })); }, sortGames: (roomId: number, field: App.GameSortField, order: App.SortDirection) => { store.dispatch(Actions.sortGames({ field, order })); }, removeMessages: (roomId: number, name: string, amount: number) => { store.dispatch(Actions.removeMessages({ roomId, name, amount })); }, gameCreated: (roomId: number) => { store.dispatch(Actions.gameCreated({ roomId })); }, joinedGame: (roomId: number, gameId: number) => { store.dispatch(Actions.joinedGame({ roomId, gameId })); } }