Kopie van https://gitlab.com/studieverenigingvia/ict/centurion met een paar aanpassingen
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
centurion/frontend/src/util/socket.ts

23 lines
517 B

4 years ago
/**
* Promisify emit.
* @param event
* @param arg
*/
4 years ago
export function emit(socket: SocketIOClient.Socket, event: string, arg: any = null) {
4 years ago
return new Promise((resolve, reject) => {
4 years ago
const cb = (err: any, res: any) => {
4 years ago
if (err) {
return reject(err);
}
resolve(res);
4 years ago
};
if (arg === null || typeof arg === 'undefined') {
4 years ago
socket.emit(event, cb);
} else {
socket.emit(event, arg, cb);
4 years ago
}
4 years ago
})
}