* port webclient POC into react shell * Abstract websocket messaging behind redux store * refactor architecture * add rooms store * introduce application service layer and login form * display room messages * implement roomSay * improve Room view styling * display room games * improve gameList update logic * hide protected games * improve game update logic * move mapping to earlier lifecycle hook * add autoscroll to bottom * tabs to spaces, refresh guard * implement server joins/leaves * show users in room * add material-ui to build * refactor, add room joins/leaves to store and render * begin using Material UI components * fix spectatorsCount * remove unused package * improve Server and Room styling * fix scroll context * route on room join * refactor room path * add auth guard * refactor authGuard export * add missing files * clear store on disconnect, add logout button to Account view * fix disconnect handling * Safari fixes * organize current todos * improve login page and server status tracking * improve login page * introduce sorting arch, refine reducers, begin viewLogHistory * audit fix for handlebars * implement moderator log view * comply with code style rules * remove original POC from codebase * add missing semi * minor improvements, begin registration functionality * retry as ws when wss fails additionally, dont mutate the default options when connecting * retain user/pass in WebClient.options for login * take protocol off of options, make it a connect param that defaults to wss * cleanup server page styling * match wss logic with desktop client * add virtual scroll component, add context menu to UserDisplay * revert VirtualTable on messages * improve styling for Room view * add routing to Player view * increase tooltip delay * begin implementing Account view * disable app level contextMenu * implement buddy/ignore list management * fix gitignore Co-authored-by: Jay Letto <jeremy.letto@merrillcorp.com> Co-authored-by: skwerlman <skwerlman@users.noreply.github.com> Co-authored-by: Jeremy Letto <jeremy.letto@datasite.com>
73 lines
1.4 KiB
TypeScript
73 lines
1.4 KiB
TypeScript
import { Types } from "./server.types";
|
|
|
|
export const Actions = {
|
|
clearStore: () => ({
|
|
type: Types.CLEAR_STORE
|
|
}),
|
|
connectServer: () => ({
|
|
type: Types.CONNECT_SERVER
|
|
}),
|
|
connectionClosed: reason => ({
|
|
type: Types.CONNECTION_CLOSED,
|
|
reason
|
|
}),
|
|
serverMessage: message => ({
|
|
type: Types.SERVER_MESSAGE,
|
|
message
|
|
}),
|
|
updateBuddyList: buddyList => ({
|
|
type: Types.UPDATE_BUDDY_LIST,
|
|
buddyList
|
|
}),
|
|
addToBuddyList: user => ({
|
|
type: Types.ADD_TO_BUDDY_LIST,
|
|
user
|
|
}),
|
|
removeFromBuddyList: userName => ({
|
|
type: Types.REMOVE_FROM_BUDDY_LIST,
|
|
userName
|
|
}),
|
|
updateIgnoreList: ignoreList => ({
|
|
type: Types.UPDATE_IGNORE_LIST,
|
|
ignoreList
|
|
}),
|
|
addToIgnoreList: user => ({
|
|
type: Types.ADD_TO_IGNORE_LIST,
|
|
user
|
|
}),
|
|
removeFromIgnoreList: userName => ({
|
|
type: Types.REMOVE_FROM_IGNORE_LIST,
|
|
userName
|
|
}),
|
|
updateInfo: info => ({
|
|
type: Types.UPDATE_INFO,
|
|
info
|
|
}),
|
|
updateStatus: status => ({
|
|
type: Types.UPDATE_STATUS,
|
|
status
|
|
}),
|
|
updateUser: user => ({
|
|
type: Types.UPDATE_USER,
|
|
user
|
|
}),
|
|
updateUsers: users => ({
|
|
type: Types.UPDATE_USERS,
|
|
users
|
|
}),
|
|
userJoined: user => ({
|
|
type: Types.USER_JOINED,
|
|
user
|
|
}),
|
|
userLeft: name => ({
|
|
type: Types.USER_LEFT,
|
|
name
|
|
}),
|
|
viewLogs: logs => ({
|
|
type: Types.VIEW_LOGS,
|
|
logs
|
|
}),
|
|
clearLogs: () => ({
|
|
type: Types.CLEAR_LOGS
|
|
})
|
|
}
|