From 4083a6e39b5ca50ec6764f9dee888f53d8fa3277 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Thu, 27 Feb 2020 19:22:19 -0500 Subject: [PATCH] feat: add awaitable socket.emit --- public/src/sockets.js | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/public/src/sockets.js b/public/src/sockets.js index 1c0ab6cf6d..5a1936e7fa 100644 --- a/public/src/sockets.js +++ b/public/src/sockets.js @@ -17,6 +17,25 @@ app.isConnected = false; socket = io(config.websocketAddress, ioParams); + var oEmit = socket.emit; + socket.emit = function (event, data, callback) { + if (typeof data === 'function') { + callback = data; + data = null; + } + if (typeof callback === 'function') { + oEmit.apply(socket, [event, data, callback]); + return; + } + + return new Promise(function (resolve, reject) { + oEmit.apply(socket, [event, data, function (err, result) { + if (err) reject(err); + else resolve(result); + }]); + }); + }; + if (parseInt(app.user.uid, 10) >= 0) { addHandlers(); }