backendless
Version:
Backendless JavaScript SDK for Node.js and the browser
66 lines (65 loc) • 2.66 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 _typeof2 = _interopRequireDefault(require("@babel/runtime/helpers/typeof"));
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
var _constants = require("./constants");
var Events = /*#__PURE__*/function () {
function Events(app) {
(0, _classCallCheck2["default"])(this, Events);
this.app = app;
}
(0, _createClass2["default"])(Events, [{
key: "dispatch",
value: function () {
var _dispatch = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(eventName, eventArgs, executionType) {
var headers;
return _regenerator["default"].wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
if (!(!eventName || typeof eventName !== 'string')) {
_context.next = 2;
break;
}
throw new Error('Event Name must be provided and must be a string.');
case 2:
if (typeof eventArgs === 'string' && (0, _constants.isExecutionType)(eventArgs)) {
executionType = eventArgs;
eventArgs = undefined;
}
if (!(eventArgs && ((0, _typeof2["default"])(eventArgs) !== 'object' || Array.isArray(eventArgs)))) {
_context.next = 5;
break;
}
throw new Error('Event Arguments must be an object.');
case 5:
headers = {};
if (executionType) {
headers[_constants.EXECUTION_TYPE_HEADER] = executionType;
}
return _context.abrupt("return", this.app.request.post({
url: this.app.urls.blEvent(eventName),
data: eventArgs || {},
headers: headers
}));
case 8:
case "end":
return _context.stop();
}
}, _callee, this);
}));
function dispatch(_x, _x2, _x3) {
return _dispatch.apply(this, arguments);
}
return dispatch;
}()
}]);
return Events;
}();
exports["default"] = Events;