{"version":3,"sources":["webpack:///./node_modules/@hiveio/hive-js/lib/api/index.js"],"names":["_typeof","Symbol","iterator","obj","constructor","prototype","_createClass","defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","key","Constructor","protoProps","staticProps","_events2","_interopRequireDefault","_bluebird2","_config2","_methods2","_transports2","_http","_utils","_ecc","_serializer","_rpcAuth","__esModule","default","_classCallCheck","instance","TypeError","_possibleConstructorReturn","self","call","ReferenceError","Hive","_EventEmitter","options","arguments","undefined","this","_this","__proto__","getPrototypeOf","_setTransport","_setLogger","seqNo","error_count","api_index","error_threshold","alternative_api_endpoints","forEach","method","methodName","method_name","camelCase","methodParams","params","callback","send","api","map","param","_len","args","Array","_key","reduce","memo","promisify","callAsync","signedCallAsync","signedCall","notifyError","bind","subClass","superClass","create","value","setPrototypeOf","_inherits","url","match","uri","transport","_transportType","http","websocket","ws","stop","hasOwnProperty","logger","__logger","log","Error","logLevel","slice","apply","start","data","cb","id","Math","random","e","d","_this2","jsonRpc","then","res","err","RPCError","account","_this3","request","sign","error","assign","failover_threshold","setOptions","set","useTestNet","new_index","mode","_this4","ts","current","running","update","getDynamicGlobalPropertiesAsync","result","blockId","last_irreversible_block_num","head_block_number","delay","_this5","last","release","streamBlockNumber","getBlock","streamBlock","transactions","transaction","streamTransactions","operations","operation","trx","signed_transaction","ops","trObject","toObject","buf","toBuffer","digest","hash","sha256","toString","transaction_id","JSON","stringify","ignore","includes","nextEndpoint","hive","module","exports"],"mappings":"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","file":"vendor.hiveio~bc95a74a.731ee4260f4eb57e5d05.chunk.js","sourcesContent":["'use strict';\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _events = require('events');\n\nvar _events2 = _interopRequireDefault(_events);\n\nvar _bluebird = require('bluebird');\n\nvar _bluebird2 = _interopRequireDefault(_bluebird);\n\nvar _config = require('../config');\n\nvar _config2 = _interopRequireDefault(_config);\n\nvar _methods = require('./methods');\n\nvar _methods2 = _interopRequireDefault(_methods);\n\nvar _transports = require('./transports');\n\nvar _transports2 = _interopRequireDefault(_transports);\n\nvar _http = require('./transports/http');\n\nvar _utils = require('../utils');\n\nvar _ecc = require('../auth/ecc');\n\nvar _serializer = require('../auth/serializer');\n\nvar _rpcAuth = require('@steemit/rpc-auth');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar Hive = function (_EventEmitter) {\n _inherits(Hive, _EventEmitter);\n\n function Hive() {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n _classCallCheck(this, Hive);\n\n var _this = _possibleConstructorReturn(this, (Hive.__proto__ || Object.getPrototypeOf(Hive)).call(this, options));\n\n _this._setTransport(options);\n _this._setLogger(options);\n _this.options = options;\n _this.seqNo = 0; // used for rpc calls\n _this.error_count = 0;\n _this.api_index = 0;\n _this.error_threshold = 3;\n _this.alternative_api_endpoints = ['https://api.hive.blog', 'https://anyx.io'];\n _methods2.default.forEach(function (method) {\n var methodName = method.method_name || (0, _utils.camelCase)(method.method);\n var methodParams = method.params || [];\n\n _this[methodName + 'With'] = function (options, callback) {\n return _this.send(method.api, {\n method: method.method,\n params: methodParams.map(function (param) {\n return options[param];\n })\n }, callback);\n };\n\n _this[methodName] = function () {\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n var options = methodParams.reduce(function (memo, param, i) {\n memo[param] = args[i]; // eslint-disable-line no-param-reassign\n return memo;\n }, {});\n var callback = args[methodParams.length];\n return _this[methodName + 'With'](options, callback);\n };\n\n _this[methodName + 'WithAsync'] = _bluebird2.default.promisify(_this[methodName + 'With']);\n _this[methodName + 'Async'] = _bluebird2.default.promisify(_this[methodName]);\n });\n _this.callAsync = _bluebird2.default.promisify(_this.call);\n _this.signedCallAsync = _bluebird2.default.promisify(_this.signedCall);\n // console.log(\"Alternate endpoints: \", this.options.alternative_api_endpoints);\n // console.log(\"Failover Threshold (errors): \", this.options.failover_threshold);\n _this.notifyError = _this.notifyError.bind(_this);\n return _this;\n }\n\n _createClass(Hive, [{\n key: '_setTransport',\n value: function _setTransport(options) {\n if (options.url && options.url.match('^((http|https)?:\\/\\/)')) {\n options.uri = options.url;\n options.transport = 'http';\n this._transportType = options.transport;\n this.options = options;\n this.transport = new _transports2.default.http(options);\n } else if (options.url && options.url.match('^((ws|wss)?:\\/\\/)')) {\n options.websocket = options.url;\n options.transport = 'ws';\n this._transportType = options.transport;\n this.options = options;\n this.transport = new _transports2.default.ws(options);\n } else if (options.transport) {\n if (this.transport && this._transportType !== options.transport) {\n this.transport.stop();\n }\n\n this._transportType = options.transport;\n\n if (typeof options.transport === 'string') {\n if (!_transports2.default[options.transport]) {\n throw new TypeError('Invalid `transport`, valid values are `http`, `ws` or a class');\n }\n this.transport = new _transports2.default[options.transport](options);\n } else {\n this.transport = new options.transport(options);\n }\n } else {\n this.transport = new _transports2.default.ws(options);\n }\n }\n }, {\n key: '_setLogger',\n value: function _setLogger(options) {\n if (options.hasOwnProperty('logger')) {\n switch (_typeof(options.logger)) {\n case 'function':\n this.__logger = {\n log: options.logger\n };\n break;\n case 'object':\n if (typeof options.logger.log !== 'function') {\n throw new Error('setOptions({logger:{}}) must have a property .log of type function');\n }\n this.__logger = options.logger;\n break;\n case 'undefined':\n if (this.__logger) break;\n default:\n this.__logger = false;\n }\n }\n }\n }, {\n key: 'log',\n value: function log(logLevel) {\n if (this.__logger) {\n if (arguments.length > 1 && typeof this.__logger[logLevel] === 'function') {\n var args = Array.prototype.slice.call(arguments, 1);\n this.__logger[logLevel].apply(this.__logger, args);\n } else {\n this.__logger.log.apply(this.__logger, arguments);\n }\n }\n }\n }, {\n key: 'start',\n value: function start() {\n return this.transport.start();\n }\n }, {\n key: 'stop',\n value: function stop() {\n return this.transport.stop();\n }\n }, {\n key: 'send',\n value: function send(api, data, callback) {\n var cb = callback;\n if (this.__logger) {\n var id = Math.random();\n var self = this;\n this.log('xmit:' + id + ':', data);\n cb = function cb(e, d) {\n if (e) {\n self.log('error', 'rsp:' + id + ':\\n\\n', e, d);\n } else {\n self.log('rsp:' + id + ':', d);\n }\n if (callback) {\n callback.apply(self, arguments);\n }\n };\n }\n return this.transport.send(api, data, cb);\n }\n }, {\n key: 'call',\n value: function call(method, params, callback) {\n var _this2 = this;\n\n if (this._transportType !== 'http') {\n callback(new Error('RPC methods can only be called when using http transport'));\n return;\n }\n var id = ++this.seqNo;\n (0, _http.jsonRpc)(this.options.uri, { method: method, params: params, id: id }).then(function (res) {\n callback(null, res);\n }, function (err) {\n _this2.notifyError(err, err instanceof _http.RPCError);callback(err);\n });\n }\n }, {\n key: 'signedCall',\n value: function signedCall(method, params, account, key, callback) {\n var _this3 = this;\n\n if (this._transportType !== 'http') {\n callback(new Error('RPC methods can only be called when using http transport'));\n return;\n }\n var id = ++this.seqNo;\n var request = void 0;\n try {\n request = (0, _rpcAuth.sign)({ method: method, params: params, id: id }, account, [key]);\n } catch (error) {\n callback(error);\n return;\n }\n (0, _http.jsonRpc)(this.options.uri, request).then(function (res) {\n callback(null, res);\n }, function (err) {\n callback(err);_this3.notifyError(err);\n });\n }\n }, {\n key: 'setOptions',\n value: function setOptions(options) {\n Object.assign(this.options, options);\n\n if (options.hasOwnProperty('failover_threshold')) this.failover_threshold = options.failover_threshold;\n if (options.hasOwnProperty('alternative_api_endpoints')) this.alternative_api_endpoints = options.alternative_api_endpoints;\n\n this._setLogger(options);\n this._setTransport(options);\n this.transport.setOptions(options);\n if (options.hasOwnProperty('useTestNet')) {\n _config2.default.set('address_prefix', options.useTestNet ? 'TST' : 'STM');\n }\n\n if (options.hasOwnProperty('url')) {\n var new_index = 0;\n for (var i = 0; i < this.alternative_api_endpoints.length; i++) {\n var temp_endpoint = this.alternative_api_endpoints[i];\n if (temp_endpoint === options.url) {\n new_index = i;\n break;\n }\n }\n this.api_index = new_index;\n var new_endpoint = this.alternative_api_endpoints[this.api_index];\n }\n }\n }, {\n key: 'setWebSocket',\n value: function setWebSocket(url) {\n this.setOptions({\n websocket: url\n });\n }\n }, {\n key: 'setUri',\n value: function setUri(url) {\n this.setOptions({\n uri: url\n });\n }\n }, {\n key: 'streamBlockNumber',\n value: function streamBlockNumber() {\n var mode = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'head';\n\n var _this4 = this;\n\n var callback = arguments[1];\n var ts = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 200;\n\n if (typeof mode === 'function') {\n callback = mode;\n mode = 'head';\n }\n var current = '';\n var running = true;\n\n var update = function update() {\n if (!running) return;\n\n _this4.getDynamicGlobalPropertiesAsync().then(function (result) {\n var blockId = mode === 'irreversible' ? result.last_irreversible_block_num : result.head_block_number;\n\n if (blockId !== current) {\n if (current) {\n for (var i = current; i < blockId; i++) {\n if (i !== current) {\n callback(null, i);\n }\n current = i;\n }\n } else {\n current = blockId;\n callback(null, blockId);\n }\n }\n\n _bluebird2.default.delay(ts).then(function () {\n update();\n });\n }, function (err) {\n callback(err);\n });\n };\n\n update();\n\n return function () {\n running = false;\n };\n }\n }, {\n key: 'streamBlock',\n value: function streamBlock() {\n var _this5 = this;\n\n var mode = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'head';\n var callback = arguments[1];\n\n if (typeof mode === 'function') {\n callback = mode;\n mode = 'head';\n }\n\n var current = '';\n var last = '';\n\n var release = this.streamBlockNumber(mode, function (err, id) {\n if (err) {\n release();\n callback(err);\n return;\n }\n\n current = id;\n if (current !== last) {\n last = current;\n _this5.getBlock(current, callback);\n }\n });\n\n return release;\n }\n }, {\n key: 'streamTransactions',\n value: function streamTransactions() {\n var mode = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'head';\n var callback = arguments[1];\n\n if (typeof mode === 'function') {\n callback = mode;\n mode = 'head';\n }\n\n var release = this.streamBlock(mode, function (err, result) {\n if (err) {\n release();\n callback(err);\n return;\n }\n\n if (result && result.transactions) {\n result.transactions.forEach(function (transaction) {\n callback(null, transaction);\n });\n }\n });\n\n return release;\n }\n }, {\n key: 'streamOperations',\n value: function streamOperations() {\n var mode = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'head';\n var callback = arguments[1];\n\n if (typeof mode === 'function') {\n callback = mode;\n mode = 'head';\n }\n\n var release = this.streamTransactions(mode, function (err, transaction) {\n if (err) {\n release();\n callback(err);\n return;\n }\n\n transaction.operations.forEach(function (operation) {\n callback(null, operation);\n });\n });\n\n return release;\n }\n }, {\n key: 'broadcastTransactionSynchronousWith',\n value: function broadcastTransactionSynchronousWith(options, callback) {\n var trx = options.trx;\n return this.send('network_broadcast_api', {\n method: 'broadcast_transaction_synchronous',\n params: [trx]\n }, function (err, result) {\n if (err) {\n var signed_transaction = _serializer.ops.signed_transaction;\n // console.log('-- broadcastTransactionSynchronous -->', JSON.stringify(signed_transaction.toObject(trx), null, 2));\n // toObject converts objects into serializable types\n\n var trObject = signed_transaction.toObject(trx);\n var buf = signed_transaction.toBuffer(trx);\n err.digest = _ecc.hash.sha256(buf).toString('hex');\n err.transaction_id = buf.toString('hex');\n err.transaction = JSON.stringify(trObject);\n callback(err, '');\n } else {\n callback('', result);\n }\n });\n }\n }, {\n key: 'notifyError',\n value: function notifyError(err) {\n var ignore = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n if (ignore) {\n return;\n }\n if (this.failover_threshold === undefined || this.alternative_api_endpoints === undefined) {\n return;\n }\n if (err && err.toString().includes(\"overseer\")) {\n //overseer was a steem thing, it doesn't exist in hive so don't count this error towards failover\n return;\n }\n this.error_count++;\n if (this.error_count >= this.failover_threshold) {\n var current_url = this.options.url;\n this.error_count = 0;\n this.api_index++;\n if (this.api_index >= this.alternative_api_endpoints.length) {\n this.api_index = 0;\n }\n var nextEndpoint = this.alternative_api_endpoints[this.api_index];\n // console.log(\"failing over. old endpoint was: \", current_url, \" new one is: \", nextEndpoint);\n this.setOptions({ url: nextEndpoint });\n }\n }\n }]);\n\n return Hive;\n}(_events2.default);\n\n// Export singleton instance\n\n\nvar hive = new Hive(_config2.default);\nexports = module.exports = hive;\nexports.Hive = Hive;"],"sourceRoot":""}