@lskjs/server
Version:
LSK server.
124 lines (106 loc) • 9.51 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports["default"] = void 0;
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
var _default = function _default(ctx) {
var io = ctx.io;
var namespace = io.of('/chat');
namespace.use(io.middlewares.reqData);
namespace.use(io.middlewares.parseUser);
namespace.use(io.middlewares.socketAsPromised);
namespace.on('connection', /*#__PURE__*/function () {
var _ref = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3(socket) {
var _ctx$models, Message, User;
return _regenerator["default"].wrap(function _callee3$(_context3) {
while (1) {
switch (_context3.prev = _context3.next) {
case 0:
// console.log('Chat connection!')
_ctx$models = ctx.models, Message = _ctx$models.Message, User = _ctx$models.User;
socket.join("user_".concat(socket.user.id));
socket.on('message', /*#__PURE__*/function () {
var _ref2 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(params) {
var message;
return _regenerator["default"].wrap(function _callee$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
if (!(!params.text || !params.to)) {
_context.next = 2;
break;
}
return _context.abrupt("return", null);
case 2:
_context.next = 4;
return Message.create({
fromUserId: socket.user.id,
toUserId: params.to,
text: params.text,
files: params.files || null
});
case 4:
message = _context.sent;
namespace.to("user_".concat(params.to)).emit('message', message);
return _context.abrupt("return", message);
case 7:
case "end":
return _context.stop();
}
}
}, _callee);
}));
return function (_x2) {
return _ref2.apply(this, arguments);
};
}()); // socket.on('getStory', () => Promise.resolve('returned a promise'));
socket.on('getStory', /*#__PURE__*/function () {
var _ref3 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2(params) {
var userId, opponentId;
return _regenerator["default"].wrap(function _callee2$(_context2) {
while (1) {
switch (_context2.prev = _context2.next) {
case 0:
userId = socket.user.id;
opponentId = params.userId; // return Promise.resolve('returned a promise')
return _context2.abrupt("return", Message.findAll({
where: {
$or: [{
fromUserId: userId,
toUserId: opponentId
}, {
fromUserId: opponentId,
toUserId: userId
}]
}
}));
case 3:
case "end":
return _context2.stop();
}
}
}, _callee2);
}));
return function (_x3) {
return _ref3.apply(this, arguments);
};
}());
case 4:
case "end":
return _context3.stop();
}
}
}, _callee3);
}));
return function (_x) {
return _ref.apply(this, arguments);
};
}());
return io;
};
exports["default"] = _default;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy93cy9zb2NrZXQubmFtZXNwYWNlLmV4YW1wbGUuanMiXSwibmFtZXMiOlsiY3R4IiwiaW8iLCJuYW1lc3BhY2UiLCJvZiIsInVzZSIsIm1pZGRsZXdhcmVzIiwicmVxRGF0YSIsInBhcnNlVXNlciIsInNvY2tldEFzUHJvbWlzZWQiLCJvbiIsInNvY2tldCIsIm1vZGVscyIsIk1lc3NhZ2UiLCJVc2VyIiwiam9pbiIsInVzZXIiLCJpZCIsInBhcmFtcyIsInRleHQiLCJ0byIsImNyZWF0ZSIsImZyb21Vc2VySWQiLCJ0b1VzZXJJZCIsImZpbGVzIiwibWVzc2FnZSIsImVtaXQiLCJ1c2VySWQiLCJvcHBvbmVudElkIiwiZmluZEFsbCIsIndoZXJlIiwiJG9yIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7O2VBQWUsa0JBQUNBLEdBQUQsRUFBUztBQUFBLE1BQ2RDLEVBRGMsR0FDUEQsR0FETyxDQUNkQyxFQURjO0FBRXRCLE1BQU1DLFNBQVMsR0FBR0QsRUFBRSxDQUFDRSxFQUFILENBQU0sT0FBTixDQUFsQjtBQUNBRCxFQUFBQSxTQUFTLENBQUNFLEdBQVYsQ0FBY0gsRUFBRSxDQUFDSSxXQUFILENBQWVDLE9BQTdCO0FBQ0FKLEVBQUFBLFNBQVMsQ0FBQ0UsR0FBVixDQUFjSCxFQUFFLENBQUNJLFdBQUgsQ0FBZUUsU0FBN0I7QUFDQUwsRUFBQUEsU0FBUyxDQUFDRSxHQUFWLENBQWNILEVBQUUsQ0FBQ0ksV0FBSCxDQUFlRyxnQkFBN0I7QUFDQU4sRUFBQUEsU0FBUyxDQUFDTyxFQUFWLENBQWEsWUFBYjtBQUFBLDZGQUEyQixrQkFBT0MsTUFBUDtBQUFBOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQ3pCO0FBRHlCLDRCQUVDVixHQUFHLENBQUNXLE1BRkwsRUFFakJDLE9BRmlCLGVBRWpCQSxPQUZpQixFQUVSQyxJQUZRLGVBRVJBLElBRlE7QUFHekJILGNBQUFBLE1BQU0sQ0FBQ0ksSUFBUCxnQkFBb0JKLE1BQU0sQ0FBQ0ssSUFBUCxDQUFZQyxFQUFoQztBQUNBTixjQUFBQSxNQUFNLENBQUNELEVBQVAsQ0FBVSxTQUFWO0FBQUEsMEdBQXFCLGlCQUFPUSxNQUFQO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLGdDQUNmLENBQUNBLE1BQU0sQ0FBQ0MsSUFBUixJQUFnQixDQUFDRCxNQUFNLENBQUNFLEVBRFQ7QUFBQTtBQUFBO0FBQUE7O0FBQUEsMkRBRVYsSUFGVTs7QUFBQTtBQUFBO0FBQUEsaUNBSUdQLE9BQU8sQ0FBQ1EsTUFBUixDQUFlO0FBQ25DQyw0QkFBQUEsVUFBVSxFQUFFWCxNQUFNLENBQUNLLElBQVAsQ0FBWUMsRUFEVztBQUVuQ00sNEJBQUFBLFFBQVEsRUFBRUwsTUFBTSxDQUFDRSxFQUZrQjtBQUduQ0QsNEJBQUFBLElBQUksRUFBRUQsTUFBTSxDQUFDQyxJQUhzQjtBQUluQ0ssNEJBQUFBLEtBQUssRUFBRU4sTUFBTSxDQUFDTSxLQUFQLElBQWdCO0FBSlksMkJBQWYsQ0FKSDs7QUFBQTtBQUliQywwQkFBQUEsT0FKYTtBQVVuQnRCLDBCQUFBQSxTQUFTLENBQUNpQixFQUFWLGdCQUFxQkYsTUFBTSxDQUFDRSxFQUE1QixHQUFrQ00sSUFBbEMsQ0FBdUMsU0FBdkMsRUFBa0RELE9BQWxEO0FBVm1CLDJEQVdaQSxPQVhZOztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLGlCQUFyQjs7QUFBQTtBQUFBO0FBQUE7QUFBQSxtQkFKeUIsQ0FpQnpCOztBQUNBZCxjQUFBQSxNQUFNLENBQUNELEVBQVAsQ0FBVSxVQUFWO0FBQUEsMEdBQXNCLGtCQUFPUSxNQUFQO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUNkUywwQkFBQUEsTUFEYyxHQUNMaEIsTUFBTSxDQUFDSyxJQUFQLENBQVlDLEVBRFA7QUFFZFcsMEJBQUFBLFVBRmMsR0FFRFYsTUFBTSxDQUFDUyxNQUZOLEVBR3BCOztBQUhvQiw0REFJYmQsT0FBTyxDQUFDZ0IsT0FBUixDQUFnQjtBQUNyQkMsNEJBQUFBLEtBQUssRUFBRTtBQUNMQyw4QkFBQUEsR0FBRyxFQUFFLENBQ0g7QUFDRVQsZ0NBQUFBLFVBQVUsRUFBRUssTUFEZDtBQUVFSixnQ0FBQUEsUUFBUSxFQUFFSztBQUZaLCtCQURHLEVBS0g7QUFDRU4sZ0NBQUFBLFVBQVUsRUFBRU0sVUFEZDtBQUVFTCxnQ0FBQUEsUUFBUSxFQUFFSTtBQUZaLCtCQUxHO0FBREE7QUFEYywyQkFBaEIsQ0FKYTs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxpQkFBdEI7O0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBbEJ5QjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxLQUEzQjs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQXNDQSxTQUFPekIsRUFBUDtBQUNELEMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZGVmYXVsdCAoY3R4KSA9PiB7XG4gIGNvbnN0IHsgaW8gfSA9IGN0eDtcbiAgY29uc3QgbmFtZXNwYWNlID0gaW8ub2YoJy9jaGF0Jyk7XG4gIG5hbWVzcGFjZS51c2UoaW8ubWlkZGxld2FyZXMucmVxRGF0YSk7XG4gIG5hbWVzcGFjZS51c2UoaW8ubWlkZGxld2FyZXMucGFyc2VVc2VyKTtcbiAgbmFtZXNwYWNlLnVzZShpby5taWRkbGV3YXJlcy5zb2NrZXRBc1Byb21pc2VkKTtcbiAgbmFtZXNwYWNlLm9uKCdjb25uZWN0aW9uJywgYXN5bmMgKHNvY2tldCkgPT4ge1xuICAgIC8vIGNvbnNvbGUubG9nKCdDaGF0IGNvbm5lY3Rpb24hJylcbiAgICBjb25zdCB7IE1lc3NhZ2UsIFVzZXIgfSA9IGN0eC5tb2RlbHM7XG4gICAgc29ja2V0LmpvaW4oYHVzZXJfJHtzb2NrZXQudXNlci5pZH1gKTtcbiAgICBzb2NrZXQub24oJ21lc3NhZ2UnLCBhc3luYyAocGFyYW1zKSA9PiB7XG4gICAgICBpZiAoIXBhcmFtcy50ZXh0IHx8ICFwYXJhbXMudG8pIHtcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICB9XG4gICAgICBjb25zdCBtZXNzYWdlID0gYXdhaXQgTWVzc2FnZS5jcmVhdGUoe1xuICAgICAgICBmcm9tVXNlcklkOiBzb2NrZXQudXNlci5pZCxcbiAgICAgICAgdG9Vc2VySWQ6IHBhcmFtcy50byxcbiAgICAgICAgdGV4dDogcGFyYW1zLnRleHQsXG4gICAgICAgIGZpbGVzOiBwYXJhbXMuZmlsZXMgfHwgbnVsbCxcbiAgICAgIH0pO1xuICAgICAgbmFtZXNwYWNlLnRvKGB1c2VyXyR7cGFyYW1zLnRvfWApLmVtaXQoJ21lc3NhZ2UnLCBtZXNzYWdlKTtcbiAgICAgIHJldHVybiBtZXNzYWdlO1xuICAgIH0pO1xuICAgIC8vIHNvY2tldC5vbignZ2V0U3RvcnknLCAoKSA9PiBQcm9taXNlLnJlc29sdmUoJ3JldHVybmVkIGEgcHJvbWlzZScpKTtcbiAgICBzb2NrZXQub24oJ2dldFN0b3J5JywgYXN5bmMgKHBhcmFtcykgPT4ge1xuICAgICAgY29uc3QgdXNlcklkID0gc29ja2V0LnVzZXIuaWQ7XG4gICAgICBjb25zdCBvcHBvbmVudElkID0gcGFyYW1zLnVzZXJJZDtcbiAgICAgIC8vIHJldHVybiBQcm9taXNlLnJlc29sdmUoJ3JldHVybmVkIGEgcHJvbWlzZScpXG4gICAgICByZXR1cm4gTWVzc2FnZS5maW5kQWxsKHtcbiAgICAgICAgd2hlcmU6IHtcbiAgICAgICAgICAkb3I6IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgZnJvbVVzZXJJZDogdXNlcklkLFxuICAgICAgICAgICAgICB0b1VzZXJJZDogb3Bwb25lbnRJZCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgIGZyb21Vc2VySWQ6IG9wcG9uZW50SWQsXG4gICAgICAgICAgICAgIHRvVXNlcklkOiB1c2VySWQsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICB9KTtcbiAgfSk7XG4gIHJldHVybiBpbztcbn07XG4iXX0=
//# sourceMappingURL=socket.namespace.example.js.map