@ethereansos/interfaces-core 0.4.103 → 0.4.106

Sign up to get free protection for your applications and to get access to all the features.
package/dist/index.cjs.js CHANGED
@@ -63889,7 +63889,7 @@ function _tryRetrieveMetadata() {
63889
63889
  item.metadataLink = metadatas && metadatas[item.address] || item.metadataLink;
63890
63890
 
63891
63891
  if (!(item.metadataLink !== '')) {
63892
- _context.next = 44;
63892
+ _context.next = 42;
63893
63893
  break;
63894
63894
  }
63895
63895
 
@@ -63904,7 +63904,7 @@ function _tryRetrieveMetadata() {
63904
63904
  }
63905
63905
 
63906
63906
  _context.t1 = JSON.parse(gBase64.decode(item.metadataLink.substring('data:application/json;base64,'.length)));
63907
- _context.next = 33;
63907
+ _context.next = 31;
63908
63908
  break;
63909
63909
 
63910
63910
  case 28:
@@ -63914,13 +63914,9 @@ function _tryRetrieveMetadata() {
63914
63914
  }, item.metadataLink)));
63915
63915
 
63916
63916
  case 30:
63917
- _context.next = 32;
63918
- return _context.sent.json();
63919
-
63920
- case 32:
63921
63917
  _context.t1 = _context.sent;
63922
63918
 
63923
- case 33:
63919
+ case 31:
63924
63920
  item.metadata = _context.t1;
63925
63921
 
63926
63922
  if (typeof item.metadata !== 'string') {
@@ -63936,11 +63932,11 @@ function _tryRetrieveMetadata() {
63936
63932
  item.description = item.description && item.description.split('\n\n').join(' ');
63937
63933
  }
63938
63934
 
63939
- _context.next = 43;
63935
+ _context.next = 41;
63940
63936
  break;
63941
63937
 
63942
- case 37:
63943
- _context.prev = 37;
63938
+ case 35:
63939
+ _context.prev = 35;
63944
63940
  _context.t2 = _context["catch"](23);
63945
63941
  delete item.image;
63946
63942
  item.image = getElementImage({
@@ -63949,18 +63945,18 @@ function _tryRetrieveMetadata() {
63949
63945
  item.metadataMessage = "Could not retrieve metadata, maybe due to CORS restriction policies for the link (<a href=\"".concat(item.metadataLink, "\" target=\"_blank\">").concat(item.metadataLink, "</a>), check it on <a href=\"").concat(item.collection ? context.openSeaItemLinkTemplate.format(item.collection.address, item.id) : context.openSeaCollectionLinkTemplate.format(item.address), "\" target=\"_blank\">Opensea</a>");
63950
63946
  console.error(item.metadataMessage);
63951
63947
 
63952
- case 43:
63948
+ case 41:
63953
63949
  clearMetadata = false;
63954
63950
 
63955
- case 44:
63956
- _context.next = 48;
63951
+ case 42:
63952
+ _context.next = 46;
63957
63953
  break;
63958
63954
 
63959
- case 46:
63960
- _context.prev = 46;
63955
+ case 44:
63956
+ _context.prev = 44;
63961
63957
  _context.t3 = _context["catch"](8);
63962
63958
 
63963
- case 48:
63959
+ case 46:
63964
63960
  clearMetadata && delete item.metadata;
63965
63961
  clearMetadata && (item.metadataLink = clearMetadata ? 'blank' : item.metadataLink);
63966
63962
 
@@ -63982,12 +63978,12 @@ function _tryRetrieveMetadata() {
63982
63978
 
63983
63979
  return _context.abrupt("return", item);
63984
63980
 
63985
- case 53:
63981
+ case 51:
63986
63982
  case "end":
63987
63983
  return _context.stop();
63988
63984
  }
63989
63985
  }
63990
- }, _callee, null, [[8, 46], [23, 37]]);
63986
+ }, _callee, null, [[8, 44], [23, 35]]);
63991
63987
  }));
63992
63988
  return _tryRetrieveMetadata.apply(this, arguments);
63993
63989
  }
@@ -64056,107 +64052,165 @@ function _getTokenPriceInDollarsOnUniswap() {
64056
64052
  return _getTokenPriceInDollarsOnUniswap.apply(this, arguments);
64057
64053
  }
64058
64054
 
64059
- function getTokenPriceInDollarsOnUniswapV3(_x5, _x6, _x7) {
64055
+ function getTokenPriceInDollarsOnSushiSwap(_x5, _x6, _x7, _x8) {
64056
+ return _getTokenPriceInDollarsOnSushiSwap.apply(this, arguments);
64057
+ }
64058
+
64059
+ function _getTokenPriceInDollarsOnSushiSwap() {
64060
+ _getTokenPriceInDollarsOnSushiSwap = _asyncToGenerator$1( /*#__PURE__*/regeneratorRuntime.mark(function _callee2(_ref2, tokenAddress, decimals, amountPlain) {
64061
+ var context, newContract, uniswapV2Router, wethAddress, ethereumPrice, path, amount, ethereumValue;
64062
+ return regeneratorRuntime.wrap(function _callee2$(_context2) {
64063
+ while (1) {
64064
+ switch (_context2.prev = _context2.next) {
64065
+ case 0:
64066
+ context = _ref2.context, newContract = _ref2.newContract;
64067
+ uniswapV2Router = newContract(context.uniswapV2RouterABI, context.sushiSwapRouterAddress);
64068
+ _context2.t0 = web3Utils__default["default"];
64069
+ _context2.next = 5;
64070
+ return blockchainCall(uniswapV2Router.methods.WETH);
64071
+
64072
+ case 5:
64073
+ _context2.t1 = _context2.sent;
64074
+ wethAddress = _context2.t0.toChecksumAddress.call(_context2.t0, _context2.t1);
64075
+ _context2.next = 9;
64076
+ return getEthereumPrice({
64077
+ context: context
64078
+ });
64079
+
64080
+ case 9:
64081
+ ethereumPrice = _context2.sent;
64082
+ path = [tokenAddress, wethAddress];
64083
+ amount = toDecimals(numberToString(!isNaN(amountPlain) ? amountPlain : 1), decimals);
64084
+ ethereumValue = '0';
64085
+ _context2.prev = 13;
64086
+ _context2.next = 16;
64087
+ return blockchainCall(uniswapV2Router.methods.getAmountsOut, amount, path);
64088
+
64089
+ case 16:
64090
+ ethereumValue = _context2.sent[1];
64091
+ _context2.next = 21;
64092
+ break;
64093
+
64094
+ case 19:
64095
+ _context2.prev = 19;
64096
+ _context2.t2 = _context2["catch"](13);
64097
+
64098
+ case 21:
64099
+ ethereumValue = parseFloat(fromDecimals(ethereumValue, 18, true));
64100
+ ethereumValue *= ethereumPrice;
64101
+ return _context2.abrupt("return", ethereumValue);
64102
+
64103
+ case 24:
64104
+ case "end":
64105
+ return _context2.stop();
64106
+ }
64107
+ }
64108
+ }, _callee2, null, [[13, 19]]);
64109
+ }));
64110
+ return _getTokenPriceInDollarsOnSushiSwap.apply(this, arguments);
64111
+ }
64112
+
64113
+ function getTokenPriceInDollarsOnUniswapV3(_x9, _x10, _x11) {
64060
64114
  return _getTokenPriceInDollarsOnUniswapV.apply(this, arguments);
64061
64115
  }
64062
64116
 
64063
64117
  function _getTokenPriceInDollarsOnUniswapV() {
64064
- _getTokenPriceInDollarsOnUniswapV = _asyncToGenerator$1( /*#__PURE__*/regeneratorRuntime.mark(function _callee3(_ref2, tokenAddress, decimals) {
64118
+ _getTokenPriceInDollarsOnUniswapV = _asyncToGenerator$1( /*#__PURE__*/regeneratorRuntime.mark(function _callee4(_ref3, tokenAddress, decimals) {
64065
64119
  var context, newContract, chainId, uniswapV2Router, wethAddress, ethereumPrice, ethereumValue, univ3Factory, uniToken, uniTokenWeth, proms;
64066
- return regeneratorRuntime.wrap(function _callee3$(_context3) {
64120
+ return regeneratorRuntime.wrap(function _callee4$(_context4) {
64067
64121
  while (1) {
64068
- switch (_context3.prev = _context3.next) {
64122
+ switch (_context4.prev = _context4.next) {
64069
64123
  case 0:
64070
- context = _ref2.context, newContract = _ref2.newContract, chainId = _ref2.chainId;
64124
+ context = _ref3.context, newContract = _ref3.newContract, chainId = _ref3.chainId;
64071
64125
  uniswapV2Router = newContract(context.uniswapV2RouterABI, context.uniswapV2RouterAddress);
64072
- _context3.t0 = web3Utils__default["default"];
64073
- _context3.next = 5;
64126
+ _context4.t0 = web3Utils__default["default"];
64127
+ _context4.next = 5;
64074
64128
  return blockchainCall(uniswapV2Router.methods.WETH);
64075
64129
 
64076
64130
  case 5:
64077
- _context3.t1 = _context3.sent;
64078
- wethAddress = _context3.t0.toChecksumAddress.call(_context3.t0, _context3.t1);
64079
- _context3.next = 9;
64131
+ _context4.t1 = _context4.sent;
64132
+ wethAddress = _context4.t0.toChecksumAddress.call(_context4.t0, _context4.t1);
64133
+ _context4.next = 9;
64080
64134
  return getEthereumPrice({
64081
64135
  context: context
64082
64136
  });
64083
64137
 
64084
64138
  case 9:
64085
- ethereumPrice = _context3.sent;
64139
+ ethereumPrice = _context4.sent;
64086
64140
  ethereumValue = '0';
64087
64141
  univ3Factory = newContract(context.UniswapV3FactoryABI, context.uniswapV3FactoryAddress);
64088
64142
  uniToken = new Token(chainId, tokenAddress, parseInt(decimals), 'TOK', 'Token');
64089
64143
  uniTokenWeth = new Token(chainId, wethAddress, 18, 'ETH', 'Ethereum');
64090
- _context3.prev = 14;
64091
- _context3.next = 17;
64144
+ _context4.prev = 14;
64145
+ _context4.next = 17;
64092
64146
  return Promise.all(Object.keys(conversionEncode).map( /*#__PURE__*/function () {
64093
- var _ref3 = _asyncToGenerator$1( /*#__PURE__*/regeneratorRuntime.mark(function _callee2(fee) {
64147
+ var _ref4 = _asyncToGenerator$1( /*#__PURE__*/regeneratorRuntime.mark(function _callee3(fee) {
64094
64148
  var pool, slot0, price;
64095
- return regeneratorRuntime.wrap(function _callee2$(_context2) {
64149
+ return regeneratorRuntime.wrap(function _callee3$(_context3) {
64096
64150
  while (1) {
64097
- switch (_context2.prev = _context2.next) {
64151
+ switch (_context3.prev = _context3.next) {
64098
64152
  case 0:
64099
- _context2.prev = 0;
64100
- _context2.t0 = newContract;
64101
- _context2.t1 = context.UniswapV3PoolABI;
64102
- _context2.next = 5;
64153
+ _context3.prev = 0;
64154
+ _context3.t0 = newContract;
64155
+ _context3.t1 = context.UniswapV3PoolABI;
64156
+ _context3.next = 5;
64103
64157
  return blockchainCall(univ3Factory.methods.getPool, wethAddress, tokenAddress, fee);
64104
64158
 
64105
64159
  case 5:
64106
- _context2.t2 = _context2.sent;
64107
- pool = (0, _context2.t0)(_context2.t1, _context2.t2);
64108
- _context2.next = 9;
64160
+ _context3.t2 = _context3.sent;
64161
+ pool = (0, _context3.t0)(_context3.t1, _context3.t2);
64162
+ _context3.next = 9;
64109
64163
  return blockchainCall(pool.methods.slot0);
64110
64164
 
64111
64165
  case 9:
64112
- slot0 = _context2.sent;
64166
+ slot0 = _context3.sent;
64113
64167
  price = tickToPrice(uniToken, uniTokenWeth, parseInt(slot0.tick)).toSignificant(15);
64114
- return _context2.abrupt("return", toDecimals(price, 18));
64168
+ return _context3.abrupt("return", toDecimals(price, 18));
64115
64169
 
64116
64170
  case 14:
64117
- _context2.prev = 14;
64118
- _context2.t3 = _context2["catch"](0);
64119
- return _context2.abrupt("return", '0');
64171
+ _context3.prev = 14;
64172
+ _context3.t3 = _context3["catch"](0);
64173
+ return _context3.abrupt("return", '0');
64120
64174
 
64121
64175
  case 17:
64122
64176
  case "end":
64123
- return _context2.stop();
64177
+ return _context3.stop();
64124
64178
  }
64125
64179
  }
64126
- }, _callee2, null, [[0, 14]]);
64180
+ }, _callee3, null, [[0, 14]]);
64127
64181
  }));
64128
64182
 
64129
- return function (_x8) {
64130
- return _ref3.apply(this, arguments);
64183
+ return function (_x12) {
64184
+ return _ref4.apply(this, arguments);
64131
64185
  };
64132
64186
  }()));
64133
64187
 
64134
64188
  case 17:
64135
- proms = _context3.sent.filter(function (it) {
64189
+ proms = _context4.sent.filter(function (it) {
64136
64190
  return it && it !== '0';
64137
64191
  });
64138
64192
  ethereumValue = proms.reduce(function (a, b) {
64139
64193
  return a.ethereansosAdd(b);
64140
64194
  });
64141
64195
  ethereumValue = ethereumValue.ethereansosDiv(proms.length);
64142
- _context3.next = 24;
64196
+ _context4.next = 24;
64143
64197
  break;
64144
64198
 
64145
64199
  case 22:
64146
- _context3.prev = 22;
64147
- _context3.t2 = _context3["catch"](14);
64200
+ _context4.prev = 22;
64201
+ _context4.t2 = _context4["catch"](14);
64148
64202
 
64149
64203
  case 24:
64150
64204
  ethereumValue = parseFloat(fromDecimals(ethereumValue, 18, true));
64151
64205
  ethereumValue *= ethereumPrice;
64152
- return _context3.abrupt("return", ethereumValue);
64206
+ return _context4.abrupt("return", ethereumValue);
64153
64207
 
64154
64208
  case 27:
64155
64209
  case "end":
64156
- return _context3.stop();
64210
+ return _context4.stop();
64157
64211
  }
64158
64212
  }
64159
- }, _callee3, null, [[14, 22]]);
64213
+ }, _callee4, null, [[14, 22]]);
64160
64214
  }));
64161
64215
  return _getTokenPriceInDollarsOnUniswapV.apply(this, arguments);
64162
64216
  }
@@ -64195,7 +64249,7 @@ function _elaboratePrices() {
64195
64249
 
64196
64250
  case 7:
64197
64251
  if ((_step = _iterator.n()).done) {
64198
- _context.next = 36;
64252
+ _context.next = 57;
64199
64253
  break;
64200
64254
  }
64201
64255
 
@@ -64219,61 +64273,103 @@ function _elaboratePrices() {
64219
64273
  response.data[token] = {
64220
64274
  usd: _context.t4
64221
64275
  };
64222
- _context.next = 34;
64276
+ _context.next = 55;
64223
64277
  break;
64224
64278
 
64225
64279
  case 22:
64226
64280
  _context.prev = 22;
64227
64281
  _context.t5 = _context["catch"](9);
64282
+ _context.prev = 24;
64228
64283
  _context.t6 = getTokenPriceInDollarsOnUniswap;
64229
64284
  _context.t7 = _objectSpread2({
64230
64285
  context: context
64231
64286
  }, web3Data);
64232
64287
  _context.t8 = token;
64233
- _context.next = 29;
64288
+ _context.next = 30;
64234
64289
  return blockchainCall(web3Data.newContract(context.ERC20ABI, token).methods.decimals);
64235
64290
 
64236
- case 29:
64291
+ case 30:
64237
64292
  _context.t9 = _context.sent;
64238
- _context.next = 32;
64293
+ _context.next = 33;
64239
64294
  return (0, _context.t6)(_context.t7, _context.t8, _context.t9);
64240
64295
 
64241
- case 32:
64296
+ case 33:
64242
64297
  _context.t10 = _context.sent;
64243
64298
  response.data[token] = {
64244
64299
  usd: _context.t10
64245
64300
  };
64301
+ _context.next = 39;
64302
+ break;
64246
64303
 
64247
- case 34:
64304
+ case 37:
64305
+ _context.prev = 37;
64306
+ _context.t11 = _context["catch"](24);
64307
+
64308
+ case 39:
64309
+ _context.prev = 39;
64310
+
64311
+ if (!(!response.data[token].usd || parseFloat(response.data[token].usd) === 0)) {
64312
+ _context.next = 51;
64313
+ break;
64314
+ }
64315
+
64316
+ _context.t12 = getTokenPriceInDollarsOnSushiSwap;
64317
+ _context.t13 = _objectSpread2({
64318
+ context: context
64319
+ }, web3Data);
64320
+ _context.t14 = token;
64321
+ _context.next = 46;
64322
+ return blockchainCall(web3Data.newContract(context.ERC20ABI, token).methods.decimals);
64323
+
64324
+ case 46:
64325
+ _context.t15 = _context.sent;
64326
+ _context.next = 49;
64327
+ return (0, _context.t12)(_context.t13, _context.t14, _context.t15);
64328
+
64329
+ case 49:
64330
+ _context.t16 = _context.sent;
64331
+ response.data[token] = {
64332
+ usd: _context.t16
64333
+ };
64334
+
64335
+ case 51:
64336
+ _context.next = 55;
64337
+ break;
64338
+
64339
+ case 53:
64340
+ _context.prev = 53;
64341
+ _context.t17 = _context["catch"](39);
64342
+
64343
+ case 55:
64248
64344
  _context.next = 7;
64249
64345
  break;
64250
64346
 
64251
- case 36:
64252
- _context.next = 41;
64347
+ case 57:
64348
+ _context.next = 62;
64253
64349
  break;
64254
64350
 
64255
- case 38:
64256
- _context.prev = 38;
64257
- _context.t11 = _context["catch"](5);
64351
+ case 59:
64352
+ _context.prev = 59;
64353
+ _context.t18 = _context["catch"](5);
64258
64354
 
64259
- _iterator.e(_context.t11);
64355
+ _iterator.e(_context.t18);
64260
64356
 
64261
- case 41:
64262
- _context.prev = 41;
64357
+ case 62:
64358
+ _context.prev = 62;
64263
64359
 
64264
64360
  _iterator.f();
64265
64361
 
64266
- return _context.finish(41);
64362
+ return _context.finish(62);
64267
64363
 
64268
- case 44:
64364
+ case 65:
64269
64365
  return _context.abrupt("return", response);
64270
64366
 
64271
- case 45:
64367
+ case 66:
64272
64368
  case "end":
64273
64369
  return _context.stop();
64274
64370
  }
64275
64371
  }
64276
- }, _callee, null, [[5, 38, 41, 44], [9, 22]]);
64372
+ }, _callee, null, [[5, 59, 62, 65], [9, 22], [24, 37], [39, 53]]);
64277
64373
  }));
64278
64374
  return _elaboratePrices.apply(this, arguments);
64279
64375
  }
@@ -65032,6 +65128,7 @@ exports.getRandomArrayElement = getRandomArrayElement;
65032
65128
  exports.getRandomArrayIndex = getRandomArrayIndex;
65033
65129
  exports.getSolidityUtilities = SolidityUtilities;
65034
65130
  exports.getSupportedSolidityVersion = getSupportedSolidityVersion;
65131
+ exports.getTokenPriceInDollarsOnSushiSwap = getTokenPriceInDollarsOnSushiSwap;
65035
65132
  exports.getTokenPriceInDollarsOnUniswap = getTokenPriceInDollarsOnUniswap;
65036
65133
  exports.getTokenPriceInDollarsOnUniswapV3 = getTokenPriceInDollarsOnUniswapV3;
65037
65134
  exports.getTokenPricesInDollarsOnCoingecko = getTokenPricesInDollarsOnCoingecko;