servatrice/webclient/src/websocket/persistence/SessionPersistence.tsx
Jeremy Letto e9ba195d7d
Refactor websocket into separate services, clean up socket status communication (#4433)
* Refactor websocket into separate services, clean up socket status communication

* cleanup

* add EOF lines

* fix keepalive logged in check

* undo change

* fix keepalive connection check

* cleanup

* add typings

* secure connection

Co-authored-by: Jeremy Letto <jeremy.letto@datasite.com>
2021-10-17 01:07:30 -04:00

75 lines
1.7 KiB
TypeScript

import { ServerDispatch } from "store";
import { Log, StatusEnum, User } from "types";
import { sanitizeHtml } from "websocket/utils";
import NormalizeService from "../utils/NormalizeService";
export class SessionPersistence {
static clearStore() {
ServerDispatch.clearStore();
}
static connectionClosed(reason: number) {
ServerDispatch.connectionClosed(reason);
}
static updateBuddyList(buddyList) {
ServerDispatch.updateBuddyList(buddyList);
}
static addToBuddyList(user: User) {
ServerDispatch.addToBuddyList(user);
}
static removeFromBuddyList(userName: string) {
ServerDispatch.removeFromBuddyList(userName);
}
static updateIgnoreList(ignoreList) {
ServerDispatch.updateIgnoreList(ignoreList);
}
static addToIgnoreList(user: User) {
ServerDispatch.addToIgnoreList(user);
}
static removeFromIgnoreList(userName: string) {
ServerDispatch.removeFromIgnoreList(userName);
}
static updateInfo(name: string, version: string) {
ServerDispatch.updateInfo(name, version);
}
static updateStatus(state: number, description: string) {
ServerDispatch.updateStatus(state, description);
if (state === StatusEnum.DISCONNECTED) {
this.connectionClosed(state);
}
}
static updateUser(user: User) {
ServerDispatch.updateUser(user);
}
static updateUsers(users: User[]) {
ServerDispatch.updateUsers(users);
}
static userJoined(user: User) {
ServerDispatch.userJoined(user);
}
static userLeft(userName: string) {
ServerDispatch.userLeft(userName);
}
static viewLogs(logs: Log[]) {
ServerDispatch.viewLogs(NormalizeService.normalizeLogs(logs));
}
static serverMessage(message: string) {
ServerDispatch.serverMessage(sanitizeHtml(message));
}
}