UNPKG

awv3

Version:
1 lines 2.69 kB
"use strict";function _interopRequireDefault(e){return e&&e.__esModule?e:{"default":e}}exports.__esModule=!0;var _regenerator=require("babel-runtime/regenerator"),_regenerator2=_interopRequireDefault(_regenerator),_asyncToGenerator2=require("babel-runtime/helpers/asyncToGenerator"),_asyncToGenerator3=_interopRequireDefault(_asyncToGenerator2),_stringify=require("babel-runtime/core-js/json/stringify"),_stringify2=_interopRequireDefault(_stringify),_promise=require("babel-runtime/core-js/promise"),_promise2=_interopRequireDefault(_promise),_classCallCheck2=require("babel-runtime/helpers/classCallCheck"),_classCallCheck3=_interopRequireDefault(_classCallCheck2),_possibleConstructorReturn2=require("babel-runtime/helpers/possibleConstructorReturn"),_possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2),_inherits2=require("babel-runtime/helpers/inherits"),_inherits3=_interopRequireDefault(_inherits2),_parser=require("../core/parser"),_parser2=_interopRequireDefault(_parser),_base=require("../communication/base"),_base2=_interopRequireDefault(_base),_events=require("events"),_events2=_interopRequireDefault(_events),_helpers=require("../core/helpers"),Rest=function(e){function r(t){return(0,_classCallCheck3["default"])(this,r),(0,_possibleConstructorReturn3["default"])(this,e.call(this,t))}return(0,_inherits3["default"])(r,e),r.prototype.connect=function(e){var r=this;return this.url=this.url||e,fetch(this.url+"/login").then(function(e){return e.json()}).then(function(e){if("permitted"===e.status)return r.alive=!0,r.id=e.id,r})},r.prototype.disconnect=function(){return this.alive=!1,this.emit("disconnected"),fetch(this.url+"/logout/"+this.id)},r.prototype.request=function(e,r){var t=this;return new _promise2["default"](function(n,i){var s=(0,_parser.createContext)(r,n,i,e);return s.options.callback({type:_parser2["default"].Factory.Started,context:s}),fetch(t.url+"/execute/"+t.id,{headers:{Accept:"application/json","Content-Type":"application/json"},method:"POST",body:(0,_stringify2["default"])(e)}).then(function(e){return e.json()}).then(function(e){return(0,_parser.handleResult)(s,e)}).then(function(){var e=(0,_asyncToGenerator3["default"])(_regenerator2["default"].mark(function r(e){var i;return _regenerator2["default"].wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,_promise2["default"].all(s.promises);case 2:i=e.sent,s=(0,_parser.mergeContext)(s),n(s);case 5:case"end":return e.stop()}},r,t)}));return function(r){return e.apply(this,arguments)}}())}).then(function(e){return e.options.callback({type:_parser2["default"].Factory.Finished,context:e}),e})},r}(_base2["default"]);exports["default"]=Rest;