@dhedge/v2-sdk 1.10.9 → 1.10.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -4258,6 +4258,7 @@ var Dapp;
4258
4258
  Dapp["RAMSESCL"] = "ramsesCL";
4259
4259
  Dapp["PANCAKECL"] = "pancakeCL";
4260
4260
  Dapp["COMPOUNDV3"] = "compoundV3";
4261
+ Dapp["ODOS"] = "odos";
4261
4262
  })(Dapp || (Dapp = {}));
4262
4263
 
4263
4264
  var Transaction;
@@ -4289,7 +4290,7 @@ var _factoryAddress, _Network$POLYGON, _Network$OPTIMISM, _Network$ARBITRUM, _Ne
4289
4290
  require("dotenv").config();
4290
4291
 
4291
4292
  var factoryAddress = (_factoryAddress = {}, _factoryAddress[Network.POLYGON] = process.env.STAGING_CONTRACTS ? "0xDd87eCdB10cFF7004276AAbAbd30e7a08F69bb53" : "0xfdc7b8bFe0DD3513Cc669bB8d601Cb83e2F69cB0", _factoryAddress[Network.OPTIMISM] = "0x5e61a079A178f0E5784107a4963baAe0c5a680c6", _factoryAddress[Network.ARBITRUM] = "0xfffb5fb14606eb3a548c113026355020ddf27535", _factoryAddress[Network.BASE] = "0x49Afe3abCf66CF09Fab86cb1139D8811C8afe56F", _factoryAddress);
4292
- var routerAddress = (_routerAddress = {}, _routerAddress[Network.POLYGON] = (_Network$POLYGON = {}, _Network$POLYGON[Dapp.SUSHISWAP] = "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506", _Network$POLYGON[Dapp.AAVE] = "0x8dFf5E27EA6b7AC08EbFdf9eB090F32ee9a30fcf", _Network$POLYGON[Dapp.AAVEV3] = "0x794a61358D6845594F94dc1DB02A252b5b4814aD", _Network$POLYGON[Dapp.ONEINCH] = "0x111111125421ca6dc452d289314280a0f8842a65", _Network$POLYGON[Dapp.QUICKSWAP] = "0xa5E0829CaCEd8fFDD4De3c43696c57F7D7A678ff", _Network$POLYGON[Dapp.BALANCER] = "0xBA12222222228d8Ba445958a75a0704d566BF2C8", _Network$POLYGON[Dapp.UNISWAPV3] = "0x68b3465833fb72A70ecDF485E0e4C7bD8665Fc45", _Network$POLYGON[Dapp.ARRAKIS] = "0xc73fb100a995b33f9fa181d420f4c8d74506df66", _Network$POLYGON[Dapp.TOROS] = "0x45b90480D6F643dE2f128db091A357C3c90399f2", _Network$POLYGON[Dapp.ZEROEX] = "0xdef1c0ded9bec7f1a1670819833240f027b25eff", _Network$POLYGON), _routerAddress[Network.OPTIMISM] = (_Network$OPTIMISM = {}, _Network$OPTIMISM[Dapp.UNISWAPV3] = "0x68b3465833fb72A70ecDF485E0e4C7bD8665Fc45", _Network$OPTIMISM[Dapp.SYNTHETIX] = "0x8700dAec35aF8Ff88c16BdF0418774CB3D7599B4", _Network$OPTIMISM[Dapp.AAVEV3] = "0x794a61358D6845594F94dc1DB02A252b5b4814aD", _Network$OPTIMISM[Dapp.ONEINCH] = "0x111111125421ca6dc452d289314280a0f8842a65", _Network$OPTIMISM[Dapp.TOROS] = "0x2Ed1bd7f66e47113672f3870308b5E867C5bb743", _Network$OPTIMISM[Dapp.VELODROME] = "0x9c12939390052919aF3155f41Bf4160Fd3666A6f", _Network$OPTIMISM[Dapp.VELODROMEV2] = "0xa062ae8a9c5e11aaa026fc2670b0d65ccc8b2858", _Network$OPTIMISM[Dapp.LYRA] = "0xCCE7819d65f348c64B7Beb205BA367b3fE33763B", _Network$OPTIMISM[Dapp.ARRAKIS] = "0x9ce88a56d120300061593eF7AD074A1B710094d5", _Network$OPTIMISM[Dapp.ZEROEX] = "0xdef1abe32c034e558cdd535791643c58a13acc10", _Network$OPTIMISM), _routerAddress[Network.ARBITRUM] = (_Network$ARBITRUM = {}, _Network$ARBITRUM[Dapp.ONEINCH] = "0x111111125421ca6dc452d289314280a0f8842a65", _Network$ARBITRUM[Dapp.UNISWAPV3] = "0x68b3465833fb72A70ecDF485E0e4C7bD8665Fc45", _Network$ARBITRUM[Dapp.AAVEV3] = "0x794a61358D6845594F94dc1DB02A252b5b4814aD", _Network$ARBITRUM[Dapp.BALANCER] = "0xBA12222222228d8Ba445958a75a0704d566BF2C8", _Network$ARBITRUM[Dapp.RAMSES] = "0xaaa87963efeb6f7e0a2711f397663105acb1805e", _Network$ARBITRUM[Dapp.ZEROEX] = "0xdef1c0ded9bec7f1a1670819833240f027b25eff", _Network$ARBITRUM[Dapp.TOROS] = "0xA5679C4272A056Bb83f039961fae7D99C48529F5", _Network$ARBITRUM), _routerAddress[Network.BASE] = (_Network$BASE = {}, _Network$BASE[Dapp.ONEINCH] = "0x111111125421ca6dc452d289314280a0f8842a65", _Network$BASE[Dapp.ZEROEX] = "0xdef1c0ded9bec7f1a1670819833240f027b25eff", _Network$BASE[Dapp.AERODROME] = "0xcF77a3Ba9A5CA399B7c97c74d54e5b1Beb874E43", _Network$BASE[Dapp.AAVEV3] = "0xA238Dd80C259a72e81d7e4664a9801593F98d1c5", _Network$BASE[Dapp.TOROS] = "0xf067575Eb60c7587C11e867907AA7284833704d1", _Network$BASE), _routerAddress);
4293
+ var routerAddress = (_routerAddress = {}, _routerAddress[Network.POLYGON] = (_Network$POLYGON = {}, _Network$POLYGON[Dapp.SUSHISWAP] = "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506", _Network$POLYGON[Dapp.AAVE] = "0x8dFf5E27EA6b7AC08EbFdf9eB090F32ee9a30fcf", _Network$POLYGON[Dapp.AAVEV3] = "0x794a61358D6845594F94dc1DB02A252b5b4814aD", _Network$POLYGON[Dapp.ONEINCH] = "0x111111125421ca6dc452d289314280a0f8842a65", _Network$POLYGON[Dapp.QUICKSWAP] = "0xa5E0829CaCEd8fFDD4De3c43696c57F7D7A678ff", _Network$POLYGON[Dapp.BALANCER] = "0xBA12222222228d8Ba445958a75a0704d566BF2C8", _Network$POLYGON[Dapp.UNISWAPV3] = "0x68b3465833fb72A70ecDF485E0e4C7bD8665Fc45", _Network$POLYGON[Dapp.ARRAKIS] = "0xc73fb100a995b33f9fa181d420f4c8d74506df66", _Network$POLYGON[Dapp.TOROS] = "0x45b90480D6F643dE2f128db091A357C3c90399f2", _Network$POLYGON[Dapp.ZEROEX] = "0xdef1c0ded9bec7f1a1670819833240f027b25eff", _Network$POLYGON[Dapp.ODOS] = "0x4e3288c9ca110bcc82bf38f09a7b425c095d92bf", _Network$POLYGON), _routerAddress[Network.OPTIMISM] = (_Network$OPTIMISM = {}, _Network$OPTIMISM[Dapp.UNISWAPV3] = "0x68b3465833fb72A70ecDF485E0e4C7bD8665Fc45", _Network$OPTIMISM[Dapp.SYNTHETIX] = "0x8700dAec35aF8Ff88c16BdF0418774CB3D7599B4", _Network$OPTIMISM[Dapp.AAVEV3] = "0x794a61358D6845594F94dc1DB02A252b5b4814aD", _Network$OPTIMISM[Dapp.ONEINCH] = "0x111111125421ca6dc452d289314280a0f8842a65", _Network$OPTIMISM[Dapp.TOROS] = "0x2Ed1bd7f66e47113672f3870308b5E867C5bb743", _Network$OPTIMISM[Dapp.VELODROME] = "0x9c12939390052919aF3155f41Bf4160Fd3666A6f", _Network$OPTIMISM[Dapp.VELODROMEV2] = "0xa062ae8a9c5e11aaa026fc2670b0d65ccc8b2858", _Network$OPTIMISM[Dapp.LYRA] = "0xCCE7819d65f348c64B7Beb205BA367b3fE33763B", _Network$OPTIMISM[Dapp.ARRAKIS] = "0x9ce88a56d120300061593eF7AD074A1B710094d5", _Network$OPTIMISM[Dapp.ZEROEX] = "0xdef1abe32c034e558cdd535791643c58a13acc10", _Network$OPTIMISM[Dapp.ODOS] = "0xca423977156bb05b13a2ba3b76bc5419e2fe9680", _Network$OPTIMISM), _routerAddress[Network.ARBITRUM] = (_Network$ARBITRUM = {}, _Network$ARBITRUM[Dapp.ONEINCH] = "0x111111125421ca6dc452d289314280a0f8842a65", _Network$ARBITRUM[Dapp.UNISWAPV3] = "0x68b3465833fb72A70ecDF485E0e4C7bD8665Fc45", _Network$ARBITRUM[Dapp.AAVEV3] = "0x794a61358D6845594F94dc1DB02A252b5b4814aD", _Network$ARBITRUM[Dapp.BALANCER] = "0xBA12222222228d8Ba445958a75a0704d566BF2C8", _Network$ARBITRUM[Dapp.RAMSES] = "0xaaa87963efeb6f7e0a2711f397663105acb1805e", _Network$ARBITRUM[Dapp.ZEROEX] = "0xdef1c0ded9bec7f1a1670819833240f027b25eff", _Network$ARBITRUM[Dapp.TOROS] = "0xA5679C4272A056Bb83f039961fae7D99C48529F5", _Network$ARBITRUM[Dapp.ODOS] = "0xa669e7A0d4b3e4Fa48af2dE86BD4CD7126Be4e13", _Network$ARBITRUM), _routerAddress[Network.BASE] = (_Network$BASE = {}, _Network$BASE[Dapp.ONEINCH] = "0x111111125421ca6dc452d289314280a0f8842a65", _Network$BASE[Dapp.ZEROEX] = "0xdef1c0ded9bec7f1a1670819833240f027b25eff", _Network$BASE[Dapp.AERODROME] = "0xcF77a3Ba9A5CA399B7c97c74d54e5b1Beb874E43", _Network$BASE[Dapp.AAVEV3] = "0xA238Dd80C259a72e81d7e4664a9801593F98d1c5", _Network$BASE[Dapp.TOROS] = "0xf067575Eb60c7587C11e867907AA7284833704d1", _Network$BASE[Dapp.ODOS] = "0x19cEeAd7105607Cd444F5ad10dd51356436095a1", _Network$BASE), _routerAddress);
4293
4294
  var dappFactoryAddress = (_dappFactoryAddress = {}, _dappFactoryAddress[Network.POLYGON] = (_Network$POLYGON2 = {}, _Network$POLYGON2[Dapp.SUSHISWAP] = "0xc35DADB65012eC5796536bD9864eD8773aBc74C4", _Network$POLYGON2[Dapp.QUICKSWAP] = "0x5757371414417b8C6CAad45bAeF941aBc7d3Ab32", _Network$POLYGON2), _dappFactoryAddress[Network.OPTIMISM] = {}, _dappFactoryAddress[Network.ARBITRUM] = {}, _dappFactoryAddress[Network.BASE] = {}, _dappFactoryAddress);
4294
4295
  var stakingAddress = (_stakingAddress = {}, _stakingAddress[Network.POLYGON] = (_Network$POLYGON3 = {}, _Network$POLYGON3[Dapp.SUSHISWAP] = "0x0769fd68dFb93167989C6f7254cd0D766Fb2841F", _Network$POLYGON3[Dapp.BALANCER] = "0x0F3e0c4218b7b0108a3643cFe9D3ec0d4F57c54e", _Network$POLYGON3[Dapp.AAVE] = "0x357D51124f59836DeD84c8a1730D72B749d8BC23", _Network$POLYGON3[Dapp.AAVEV3] = "0x929EC64c34a17401F460460D4B9390518E5B473e", _Network$POLYGON3), _stakingAddress[Network.OPTIMISM] = (_Network$OPTIMISM2 = {}, _Network$OPTIMISM2[Dapp.AAVEV3] = "0x929EC64c34a17401F460460D4B9390518E5B473e", _Network$OPTIMISM2[Dapp.COMPOUNDV3] = "0x443ea0340cb75a160f31a440722dec7b5bc3c2e9", _Network$OPTIMISM2), _stakingAddress[Network.ARBITRUM] = (_Network$ARBITRUM2 = {}, _Network$ARBITRUM2[Dapp.COMPOUNDV3] = "0x88730d254a2f7e6ac8388c3198afd694ba9f7fae", _Network$ARBITRUM2[Dapp.PANCAKECL] = "0x5e09ACf80C0296740eC5d6F643005a4ef8DaA694", _Network$ARBITRUM2), _stakingAddress[Network.BASE] = (_Network$BASE2 = {}, _Network$BASE2[Dapp.PANCAKECL] = "0xC6A2Db661D5a5690172d8eB0a7DEA2d3008665A3", _Network$BASE2), _stakingAddress);
4295
4296
  var aaveAddressProvider = (_aaveAddressProvider = {}, _aaveAddressProvider[Network.POLYGON] = (_Network$POLYGON4 = {}, _Network$POLYGON4[Dapp.AAVE] = "0xd05e3E715d945B59290df0ae8eF85c1BdB684744", _Network$POLYGON4[Dapp.AAVEV3] = "0xa97684ead0e402dC232d5A977953DF7ECBaB3CDb", _Network$POLYGON4), _aaveAddressProvider[Network.OPTIMISM] = (_Network$OPTIMISM3 = {}, _Network$OPTIMISM3[Dapp.AAVEV3] = "0xa97684ead0e402dC232d5A977953DF7ECBaB3CDb", _Network$OPTIMISM3), _aaveAddressProvider[Network.ARBITRUM] = (_Network$ARBITRUM3 = {}, _Network$ARBITRUM3[Dapp.AAVEV3] = "0xa97684ead0e402dc232d5a977953df7ecbab3cdb", _Network$ARBITRUM3), _aaveAddressProvider[Network.BASE] = (_Network$BASE3 = {}, _Network$BASE3[Dapp.AAVEV3] = "0xe20fCBdBfFC4Dd138cE8b2E6FBb6CB49777ad64D", _Network$BASE3), _aaveAddressProvider);
@@ -24217,6 +24218,71 @@ function getPancakeHarvestClaimTxData(pool, tokenId) {
24217
24218
  return iMasterChef.encodeFunctionData(Transaction.MULTI_CALL, [multicallParams]);
24218
24219
  }
24219
24220
 
24221
+ var odosBaseUrl = "https://api.odos.xyz/sor";
24222
+ function getOdosSwapTxData(_x, _x2, _x3, _x4, _x5) {
24223
+ return _getOdosSwapTxData.apply(this, arguments);
24224
+ }
24225
+
24226
+ function _getOdosSwapTxData() {
24227
+ _getOdosSwapTxData = _asyncToGenerator( /*#__PURE__*/runtime_1.mark(function _callee(pool, assetFrom, assetTo, amountIn, slippage) {
24228
+ var referralCode, quoteParams, quoteResult, assembleParams, assembleResult;
24229
+ return runtime_1.wrap(function _callee$(_context) {
24230
+ while (1) {
24231
+ switch (_context.prev = _context.next) {
24232
+ case 0:
24233
+ referralCode = 0; // Defaults to 0 for unregistered activity.
24234
+
24235
+ if (process.env.ODOS_REFERAL_CODE && Number(process.env.ODOS_REFERAL_CODE) > 0) {
24236
+ referralCode = Number(process.env.ODOS_REFERAL_CODE);
24237
+ }
24238
+
24239
+ quoteParams = {
24240
+ chainId: networkChainIdMap[pool.network],
24241
+ inputTokens: [{
24242
+ tokenAddress: assetFrom,
24243
+ amount: amountIn.toString()
24244
+ }],
24245
+ outputTokens: [{
24246
+ tokenAddress: assetTo,
24247
+ proportion: 1
24248
+ }],
24249
+ slippageLimitPercent: slippage,
24250
+ userAddr: pool.address,
24251
+ referralCode: referralCode
24252
+ };
24253
+ _context.prev = 3;
24254
+ _context.next = 6;
24255
+ return axios.post(odosBaseUrl + "/quote/v2", quoteParams);
24256
+
24257
+ case 6:
24258
+ quoteResult = _context.sent;
24259
+ assembleParams = {
24260
+ pathId: quoteResult.data.pathId,
24261
+ userAddr: pool.address
24262
+ };
24263
+ _context.next = 10;
24264
+ return axios.post(odosBaseUrl + "/assemble", assembleParams);
24265
+
24266
+ case 10:
24267
+ assembleResult = _context.sent;
24268
+ return _context.abrupt("return", assembleResult.data.transaction.data);
24269
+
24270
+ case 14:
24271
+ _context.prev = 14;
24272
+ _context.t0 = _context["catch"](3);
24273
+ console.error("Error in Odos API request:", _context.t0);
24274
+ throw new ApiError("Swap api request of Odos failed");
24275
+
24276
+ case 18:
24277
+ case "end":
24278
+ return _context.stop();
24279
+ }
24280
+ }
24281
+ }, _callee, null, [[3, 14]]);
24282
+ }));
24283
+ return _getOdosSwapTxData.apply(this, arguments);
24284
+ }
24285
+
24220
24286
  var Pool = /*#__PURE__*/function () {
24221
24287
  function Pool(network, signer, poolLogic, mangerLogic, utils, factory) {
24222
24288
  this.network = network;
@@ -24749,7 +24815,7 @@ var Pool = /*#__PURE__*/function () {
24749
24815
  }
24750
24816
 
24751
24817
  _context10.t0 = dapp;
24752
- _context10.next = _context10.t0 === Dapp.ZEROEX ? 6 : _context10.t0 === Dapp.ONEINCH ? 10 : _context10.t0 === Dapp.BALANCER ? 15 : _context10.t0 === Dapp.SYNTHETIX ? 19 : _context10.t0 === Dapp.TOROS ? 26 : 30;
24818
+ _context10.next = _context10.t0 === Dapp.ZEROEX ? 6 : _context10.t0 === Dapp.ONEINCH ? 10 : _context10.t0 === Dapp.BALANCER ? 15 : _context10.t0 === Dapp.SYNTHETIX ? 19 : _context10.t0 === Dapp.TOROS ? 26 : _context10.t0 === Dapp.ODOS ? 30 : 34;
24753
24819
  break;
24754
24820
 
24755
24821
  case 6:
@@ -24758,7 +24824,7 @@ var Pool = /*#__PURE__*/function () {
24758
24824
 
24759
24825
  case 8:
24760
24826
  swapTxData = _context10.sent;
24761
- return _context10.abrupt("break", 45);
24827
+ return _context10.abrupt("break", 49);
24762
24828
 
24763
24829
  case 10:
24764
24830
  _context10.next = 12;
@@ -24767,7 +24833,7 @@ var Pool = /*#__PURE__*/function () {
24767
24833
  case 12:
24768
24834
  _yield$getOneInchSwap = _context10.sent;
24769
24835
  swapTxData = _yield$getOneInchSwap.swapTxData;
24770
- return _context10.abrupt("break", 45);
24836
+ return _context10.abrupt("break", 49);
24771
24837
 
24772
24838
  case 15:
24773
24839
  _context10.next = 17;
@@ -24775,7 +24841,7 @@ var Pool = /*#__PURE__*/function () {
24775
24841
 
24776
24842
  case 17:
24777
24843
  swapTxData = _context10.sent;
24778
- return _context10.abrupt("break", 45);
24844
+ return _context10.abrupt("break", 49);
24779
24845
 
24780
24846
  case 19:
24781
24847
  iSynthetix = new ethers.utils.Interface(ISynthetix.abi);
@@ -24788,7 +24854,7 @@ var Pool = /*#__PURE__*/function () {
24788
24854
  case 23:
24789
24855
  daoAddress = _context10.sent;
24790
24856
  swapTxData = iSynthetix.encodeFunctionData(Transaction.SWAP_SYNTHS, [assets[0], amountIn, assets[1], daoAddress, SYNTHETIX_TRACKING_CODE]);
24791
- return _context10.abrupt("break", 45);
24857
+ return _context10.abrupt("break", 49);
24792
24858
 
24793
24859
  case 26:
24794
24860
  _context10.next = 28;
@@ -24796,14 +24862,22 @@ var Pool = /*#__PURE__*/function () {
24796
24862
 
24797
24863
  case 28:
24798
24864
  swapTxData = _context10.sent;
24799
- return _context10.abrupt("break", 45);
24865
+ return _context10.abrupt("break", 49);
24800
24866
 
24801
24867
  case 30:
24868
+ _context10.next = 32;
24869
+ return getOdosSwapTxData(this, assetFrom, assetTo, amountIn, slippage);
24870
+
24871
+ case 32:
24872
+ swapTxData = _context10.sent;
24873
+ return _context10.abrupt("break", 49);
24874
+
24875
+ case 34:
24802
24876
  iUniswapV2Router = new ethers.utils.Interface(IUniswapV2Router.abi);
24803
- _context10.next = 33;
24877
+ _context10.next = 37;
24804
24878
  return this.utils.getMinAmountOut(dapp, assetFrom, assetTo, amountIn, slippage);
24805
24879
 
24806
- case 33:
24880
+ case 37:
24807
24881
  minAmountOut = _context10.sent;
24808
24882
  _context10.t1 = iUniswapV2Router;
24809
24883
  _context10.t2 = Transaction.SWAP;
@@ -24811,23 +24885,23 @@ var Pool = /*#__PURE__*/function () {
24811
24885
  _context10.t4 = minAmountOut;
24812
24886
  _context10.t5 = [assetFrom, assetTo];
24813
24887
  _context10.t6 = this.address;
24814
- _context10.next = 42;
24888
+ _context10.next = 46;
24815
24889
  return getDeadline(this);
24816
24890
 
24817
- case 42:
24891
+ case 46:
24818
24892
  _context10.t7 = _context10.sent;
24819
24893
  _context10.t8 = [_context10.t3, _context10.t4, _context10.t5, _context10.t6, _context10.t7];
24820
24894
  swapTxData = _context10.t1.encodeFunctionData.call(_context10.t1, _context10.t2, _context10.t8);
24821
24895
 
24822
- case 45:
24823
- _context10.next = 47;
24896
+ case 49:
24897
+ _context10.next = 51;
24824
24898
  return getPoolTxOrGasEstimate(this, [routerAddress[this.network][dapp], swapTxData, options], estimateGas);
24825
24899
 
24826
- case 47:
24900
+ case 51:
24827
24901
  tx = _context10.sent;
24828
24902
  return _context10.abrupt("return", tx);
24829
24903
 
24830
- case 49:
24904
+ case 53:
24831
24905
  case "end":
24832
24906
  return _context10.stop();
24833
24907
  }