UNPKG

@lskjs/server

Version:

LSK server.

124 lines (106 loc) 9.51 kB
"use strict"; 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