tronbox
Version:
TronBox - Simple development framework for Tron
1 lines • 1.71 kB
JavaScript
;var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");var _regenerator=_interopRequireDefault(require("@babel/runtime/regenerator"));var _asyncToGenerator2=_interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));var axios=require("axios");var _require=require("tronweb"),providers=_require.providers;var wrapper=require("./wrapper");module.exports={wrap:function wrap(provider,options){return wrapper.wrap(provider,options)},create:function create(options){var provider;var fullHost=options.fullHost||options.fullNode;if(options.provider&&typeof options.provider==="function"){provider=options.provider()}else if(options.provider){provider=options.provider}else{var HttpProvider=providers.HttpProvider;HttpProvider.prototype.send=function(){var _ref=(0,_asyncToGenerator2["default"])(_regenerator["default"].mark(function _callee(payload){var _yield$axios$post,data;return _regenerator["default"].wrap(function _callee$(_context){while(1)switch(_context.prev=_context.next){case 0:_context.next=2;return axios.post("".concat(fullHost,"/jsonrpc"),payload);case 2:_yield$axios$post=_context.sent;data=_yield$axios$post.data;return _context.abrupt("return",data);case 5:case"end":return _context.stop()}},_callee)}));return function(_x){return _ref.apply(this,arguments)}}();HttpProvider.prototype.sendAsync=function(payload,callback){return axios.post("".concat(fullHost,"/jsonrpc"),payload).then(function(_ref2){var data=_ref2.data;callback(null,data)})["catch"](function(error){callback(error)})};provider=new HttpProvider(fullHost)}return this.wrap(provider,options)},test_connection:function test_connection(provider,callback){callback(null,true)}};