Took 25 hours 49 minutes
This commit is contained in:
2022-11-15 00:58:59 +01:00
parent a7fac21442
commit a356b39bad
46 changed files with 936 additions and 181 deletions

View File

@ -5,40 +5,40 @@ export class WebSocketPayload {
this._event = value;
}
set status(value: boolean) {
this._status = value;
set error(value: boolean) {
this._error = value;
}
set data(value: object | undefined) {
set data(value: any | undefined) {
this._data = value;
}
private _event: WebSocketEvent;
private _status: boolean;
private _data: object | undefined;
private _error: boolean;
private _data: any | undefined;
get event(): WebSocketEvent {
return this._event;
}
get status(): boolean {
return this._status;
get error(): boolean {
return this._error;
}
get data(): object | undefined {
get data(): any | undefined {
return this._data;
}
constructor(event: WebSocketEvent, status: boolean, data?: object) {
constructor(event: WebSocketEvent, error: boolean = false, data?: any) {
this._event = event;
this._status = status;
this._error = error;
this._data = data;
}
public static parseFromJSON(json: string): WebSocketPayload | null {
json = (window) ? atob(json) : Buffer.from(json, "base64").toString();
let rawPayload: { event: string, status: boolean, data: object };
public static parseFromBase64Json(json: string): WebSocketPayload | null {
json = (typeof window != 'undefined') ? atob(json) : Buffer.from(json, "base64").toString();
let rawPayload: { event: string, error: boolean, data: any };
try {
rawPayload = JSON.parse(json);
} catch (e) {
@ -47,15 +47,15 @@ export class WebSocketPayload {
let wsEvent = WebSocketEvent[<keyof typeof WebSocketEvent>rawPayload.event];
return new WebSocketPayload(wsEvent, rawPayload.status, rawPayload.data);
return new WebSocketPayload(wsEvent, rawPayload.error, rawPayload.data);
}
/**
* Returns the payload as base64 encoded json string
*/
public toString(): string {
let json = JSON.stringify({"event": this._event, status: this._status, data: this._data});
json = (window) ? btoa(json) : Buffer.from(json).toString("base64");
let json = JSON.stringify({"event": this._event, status: this._error, data: this._data});
json = ((typeof window != 'undefined') ? btoa(json) : Buffer.from(json).toString("base64"));
return json;
}
}