@paraswap/dex-lib 2.48.3 → 2.48.4-etherfi.1

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.
Files changed (129) hide show
  1. package/build/abi/algebra/AlgebraPool.abi.json +727 -0
  2. package/build/abi/etherfi/eETHPool.json +9 -0
  3. package/build/abi/etherfi/weETH.json +20 -0
  4. package/build/abi/uniswap-v3/UniswapV3Quoter.abi.json +193 -0
  5. package/build/dex/algebra/algebra-pool.d.ts +46 -0
  6. package/build/dex/algebra/algebra-pool.js +336 -0
  7. package/build/dex/algebra/algebra-pool.js.map +1 -0
  8. package/build/dex/etherfi.d.ts +26 -0
  9. package/build/dex/etherfi.js +83 -0
  10. package/build/dex/etherfi.js.map +1 -0
  11. package/build/dex/index.js +2 -0
  12. package/build/dex/index.js.map +1 -1
  13. package/build/dex/quickswap/camelot-v3.d.ts +6 -0
  14. package/build/dex/quickswap/camelot-v3.js +19 -0
  15. package/build/dex/quickswap/camelot-v3.js.map +1 -0
  16. package/build/dex/quickswap/zyberswap-v3.d.ts +6 -0
  17. package/build/dex/quickswap/zyberswap-v3.js +19 -0
  18. package/build/dex/quickswap/zyberswap-v3.js.map +1 -0
  19. package/build/dex/uniswap-v2/rebase-tokens.json +7 -0
  20. package/package.json +1 -1
  21. package/src/abi/etherfi/eETHPool.json +9 -0
  22. package/src/abi/etherfi/weETH.json +20 -0
  23. package/src/dex/etherfi.ts +144 -0
  24. package/src/dex/index.ts +2 -0
  25. package/build/abi/Redstone.json +0 -739
  26. package/build/abi/angle/stagToken.json +0 -963
  27. package/build/abi/angle-transmuter/Pyth.json +0 -1534
  28. package/build/abi/angle-transmuter/Transmuter.json +0 -1719
  29. package/build/abi/pharaoh/PharaohPool.abi.json +0 -1582
  30. package/build/abi/smardex/smardex-factory.json +0 -185
  31. package/build/abi/smardex/smardex-pool.json +0 -578
  32. package/build/abi/smardex/smardex-router.json +0 -648
  33. package/build/abi/trader-joe-v2_1/FactoryABI.json +0 -1208
  34. package/build/abi/trader-joe-v2_1/PairABI.json +0 -1493
  35. package/build/abi/trader-joe-v2_1/RouterABI.json +0 -1489
  36. package/build/abi/trader-joe-v2_1/StateMulticall.json +0 -193
  37. package/build/dex/angle-staked-stable/angle-staked-stable-pool.d.ts +0 -53
  38. package/build/dex/angle-staked-stable/angle-staked-stable-pool.js +0 -175
  39. package/build/dex/angle-staked-stable/angle-staked-stable-pool.js.map +0 -1
  40. package/build/dex/angle-staked-stable/angle-staked-stable.d.ts +0 -42
  41. package/build/dex/angle-staked-stable/angle-staked-stable.js +0 -232
  42. package/build/dex/angle-staked-stable/angle-staked-stable.js.map +0 -1
  43. package/build/dex/angle-staked-stable/config.d.ts +0 -4
  44. package/build/dex/angle-staked-stable/config.js +0 -26
  45. package/build/dex/angle-staked-stable/config.js.map +0 -1
  46. package/build/dex/angle-staked-stable/types.d.ts +0 -15
  47. package/build/dex/angle-staked-stable/types.js +0 -3
  48. package/build/dex/angle-staked-stable/types.js.map +0 -1
  49. package/build/dex/angle-transmuter/angle-transmuter-pool.d.ts +0 -43
  50. package/build/dex/angle-transmuter/angle-transmuter-pool.js +0 -309
  51. package/build/dex/angle-transmuter/angle-transmuter-pool.js.map +0 -1
  52. package/build/dex/angle-transmuter/angle-transmuter.d.ts +0 -46
  53. package/build/dex/angle-transmuter/angle-transmuter.js +0 -233
  54. package/build/dex/angle-transmuter/angle-transmuter.js.map +0 -1
  55. package/build/dex/angle-transmuter/backedOracle.d.ts +0 -19
  56. package/build/dex/angle-transmuter/backedOracle.js +0 -56
  57. package/build/dex/angle-transmuter/backedOracle.js.map +0 -1
  58. package/build/dex/angle-transmuter/config.d.ts +0 -4
  59. package/build/dex/angle-transmuter/config.js +0 -20
  60. package/build/dex/angle-transmuter/config.js.map +0 -1
  61. package/build/dex/angle-transmuter/constants.d.ts +0 -4
  62. package/build/dex/angle-transmuter/constants.js +0 -8
  63. package/build/dex/angle-transmuter/constants.js.map +0 -1
  64. package/build/dex/angle-transmuter/pyth.d.ts +0 -19
  65. package/build/dex/angle-transmuter/pyth.js +0 -71
  66. package/build/dex/angle-transmuter/pyth.js.map +0 -1
  67. package/build/dex/angle-transmuter/redstone.d.ts +0 -20
  68. package/build/dex/angle-transmuter/redstone.js +0 -73
  69. package/build/dex/angle-transmuter/redstone.js.map +0 -1
  70. package/build/dex/angle-transmuter/transmuter.d.ts +0 -50
  71. package/build/dex/angle-transmuter/transmuter.js +0 -314
  72. package/build/dex/angle-transmuter/transmuter.js.map +0 -1
  73. package/build/dex/angle-transmuter/types.d.ts +0 -144
  74. package/build/dex/angle-transmuter/types.js +0 -31
  75. package/build/dex/angle-transmuter/types.js.map +0 -1
  76. package/build/dex/angle-transmuter/utils.d.ts +0 -9
  77. package/build/dex/angle-transmuter/utils.js +0 -264
  78. package/build/dex/angle-transmuter/utils.js.map +0 -1
  79. package/build/dex/smardex/subgraph-queries.d.ts +0 -1
  80. package/build/dex/smardex/subgraph-queries.js +0 -17
  81. package/build/dex/smardex/subgraph-queries.js.map +0 -1
  82. package/build/dex/smardex/usd-reserves.d.ts +0 -23
  83. package/build/dex/smardex/usd-reserves.js +0 -86
  84. package/build/dex/smardex/usd-reserves.js.map +0 -1
  85. package/build/dex/trader-joe-v2-1-2/config.d.ts +0 -4
  86. package/build/dex/trader-joe-v2-1-2/config.js +0 -47
  87. package/build/dex/trader-joe-v2-1-2/config.js.map +0 -1
  88. package/build/dex/trader-joe-v2-1-2/constants.d.ts +0 -20
  89. package/build/dex/trader-joe-v2-1-2/constants.js +0 -22
  90. package/build/dex/trader-joe-v2-1-2/constants.js.map +0 -1
  91. package/build/dex/trader-joe-v2-1-2/math/index.d.ts +0 -37
  92. package/build/dex/trader-joe-v2-1-2/math/index.js +0 -291
  93. package/build/dex/trader-joe-v2-1-2/math/index.js.map +0 -1
  94. package/build/dex/trader-joe-v2-1-2/trader-joe-v2-1-2-pool.d.ts +0 -60
  95. package/build/dex/trader-joe-v2-1-2/trader-joe-v2-1-2-pool.js +0 -248
  96. package/build/dex/trader-joe-v2-1-2/trader-joe-v2-1-2-pool.js.map +0 -1
  97. package/build/dex/trader-joe-v2-1-2/trader-joe-v2-1-2.d.ts +0 -53
  98. package/build/dex/trader-joe-v2-1-2/trader-joe-v2-1-2.js +0 -307
  99. package/build/dex/trader-joe-v2-1-2/trader-joe-v2-1-2.js.map +0 -1
  100. package/build/dex/trader-joe-v2-1-2/types.d.ts +0 -82
  101. package/build/dex/trader-joe-v2-1-2/types.js +0 -9
  102. package/build/dex/trader-joe-v2-1-2/types.js.map +0 -1
  103. package/build/dex/trader-joe-v2_1/config.d.ts +0 -4
  104. package/build/dex/trader-joe-v2_1/config.js +0 -47
  105. package/build/dex/trader-joe-v2_1/config.js.map +0 -1
  106. package/build/dex/trader-joe-v2_1/constants.d.ts +0 -20
  107. package/build/dex/trader-joe-v2_1/constants.js +0 -22
  108. package/build/dex/trader-joe-v2_1/constants.js.map +0 -1
  109. package/build/dex/trader-joe-v2_1/math/index.d.ts +0 -37
  110. package/build/dex/trader-joe-v2_1/math/index.js +0 -291
  111. package/build/dex/trader-joe-v2_1/math/index.js.map +0 -1
  112. package/build/dex/trader-joe-v2_1/trader-joe-v2.1.d.ts +0 -0
  113. package/build/dex/trader-joe-v2_1/trader-joe-v2.1.js +0 -384
  114. package/build/dex/trader-joe-v2_1/trader-joe-v2.1.js.map +0 -1
  115. package/build/dex/trader-joe-v2_1/trader-joe-v2_1-pool.d.ts +0 -60
  116. package/build/dex/trader-joe-v2_1/trader-joe-v2_1-pool.js +0 -247
  117. package/build/dex/trader-joe-v2_1/trader-joe-v2_1-pool.js.map +0 -1
  118. package/build/dex/trader-joe-v2_1/trader-joe-v2_1.d.ts +0 -53
  119. package/build/dex/trader-joe-v2_1/trader-joe-v2_1.js +0 -307
  120. package/build/dex/trader-joe-v2_1/trader-joe-v2_1.js.map +0 -1
  121. package/build/dex/trader-joe-v2_1/types.d.ts +0 -82
  122. package/build/dex/trader-joe-v2_1/types.js +0 -9
  123. package/build/dex/trader-joe-v2_1/types.js.map +0 -1
  124. package/build/dex/wombat/wombat-pool-poller.d.ts +0 -22
  125. package/build/dex/wombat/wombat-pool-poller.js +0 -164
  126. package/build/dex/wombat/wombat-pool-poller.js.map +0 -1
  127. package/build/dex-helper/RedisBatcher.d.ts +0 -20
  128. package/build/dex-helper/RedisBatcher.js +0 -75
  129. package/build/dex-helper/RedisBatcher.js.map +0 -1
@@ -0,0 +1,83 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.EtherFi = void 0;
7
+ const abi_1 = require("@ethersproject/abi");
8
+ const constants_1 = require("../constants");
9
+ const simple_exchange_1 = require("./simple-exchange");
10
+ const eETHPool_json_1 = __importDefault(require("../abi/etherfi/eETHPool.json"));
11
+ const weETH_json_1 = __importDefault(require("../abi/etherfi/weETH.json"));
12
+ const utils_1 = require("../utils");
13
+ const ts_essentials_1 = require("ts-essentials");
14
+ var EtherFiFunctions;
15
+ (function (EtherFiFunctions) {
16
+ EtherFiFunctions["deposit"] = "deposit";
17
+ EtherFiFunctions["wrap"] = "wrap";
18
+ EtherFiFunctions["unwrap"] = "unwrap";
19
+ })(EtherFiFunctions || (EtherFiFunctions = {}));
20
+ const EtherFiConfig = {
21
+ 1: {
22
+ eETH: '0x35fa164735182de50811e8e2e824cfb9b6118ac2',
23
+ eETHPool: '0x308861a430be4cce5502d0a12724771fc6daf216',
24
+ weETH: '0xcd5fe23c85820f7b72d0926fc9b05b43e359b7ee',
25
+ },
26
+ };
27
+ class EtherFi extends simple_exchange_1.SimpleExchange {
28
+ constructor(dexHelper) {
29
+ super(dexHelper, 'etherfi');
30
+ this.needWrapNative = false;
31
+ this.is_eETH = (token) => token.toLowerCase() === this.eETH;
32
+ this.is_weETH = (token) => token.toLowerCase() === this.weETH;
33
+ this.eETHPoolInterface = new abi_1.Interface(eETHPool_json_1.default);
34
+ this.weETHInterface = new abi_1.Interface(weETH_json_1.default);
35
+ this.eETH = EtherFiConfig[this.network].eETH.toLowerCase();
36
+ this.eETHPool = EtherFiConfig[this.network].eETHPool.toLowerCase();
37
+ this.weETH = EtherFiConfig[this.network].weETH.toLowerCase();
38
+ }
39
+ async getSimpleParam(srcToken, destToken, srcAmount, destAmount, data, side) {
40
+ const [Interface, swapCallee, swapFunction, swapFunctionParams] = (() => {
41
+ if (this.is_eETH(destToken)) {
42
+ (0, ts_essentials_1.assert)(this.isWETH(srcToken) || (0, utils_1.isETHAddress)(srcToken), 'srcToken should be eth');
43
+ return [
44
+ this.eETHPoolInterface,
45
+ this.eETHPool,
46
+ EtherFiFunctions.deposit,
47
+ [],
48
+ ];
49
+ }
50
+ if (this.is_weETH(destToken)) {
51
+ (0, ts_essentials_1.assert)(this.is_eETH(srcToken), 'srcToken should be eETH');
52
+ return [
53
+ this.weETHInterface,
54
+ this.weETH,
55
+ EtherFiFunctions.wrap,
56
+ [srcAmount],
57
+ ];
58
+ }
59
+ if (this.is_weETH(srcToken)) {
60
+ (0, ts_essentials_1.assert)(this.is_eETH(destToken), 'destToken should be eETH');
61
+ return [
62
+ this.weETHInterface,
63
+ this.weETH,
64
+ EtherFiFunctions.unwrap,
65
+ [srcAmount],
66
+ ];
67
+ }
68
+ throw new Error('LOGIC ERROR');
69
+ })();
70
+ const swapData = Interface.encodeFunctionData(swapFunction, swapFunctionParams);
71
+ return this.buildSimpleParamWithoutWETHConversion(srcToken, srcAmount, destToken, destAmount, swapData, swapCallee);
72
+ }
73
+ getAdapterParam(srcToken, destToken, srcAmount, destAmount, data, side) {
74
+ return {
75
+ targetExchange: constants_1.NULL_ADDRESS,
76
+ payload: '0x',
77
+ networkFee: '0',
78
+ };
79
+ }
80
+ }
81
+ exports.EtherFi = EtherFi;
82
+ EtherFi.dexKeys = ['etherfi'];
83
+ //# sourceMappingURL=etherfi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"etherfi.js","sourceRoot":"","sources":["../../src/dex/etherfi.ts"],"names":[],"mappings":"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"}
@@ -87,6 +87,7 @@ const dexalot_1 = require("./dexalot/dexalot");
87
87
  const smardex_1 = require("./smardex/smardex");
88
88
  const wombat_1 = require("./wombat/wombat");
89
89
  const swell_1 = require("./swell/swell");
90
+ const etherfi_1 = require("./etherfi");
90
91
  const LegacyDexes = [
91
92
  curve_v2_1.CurveV2,
92
93
  stable_pool_1.StablePool,
@@ -109,6 +110,7 @@ const LegacyDexes = [
109
110
  jarvis_1.Jarvis,
110
111
  lido_1.Lido,
111
112
  augustus_rfq_1.AugustusRFQOrder,
113
+ etherfi_1.EtherFi,
112
114
  ];
113
115
  const Dexes = [
114
116
  dexalot_1.Dexalot,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/dex/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/dex/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { IDexHelper } from '../../dex-helper';
2
+ import { QuickSwapV3 } from './quickswap-v3';
3
+ export declare class CamelotV3 extends QuickSwapV3 {
4
+ static dexKeys: string[];
5
+ constructor(dexHelper: IDexHelper);
6
+ }
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.CamelotV3 = void 0;
7
+ const lodash_1 = __importDefault(require("lodash"));
8
+ const config_1 = require("./config");
9
+ const quickswap_v3_1 = require("./quickswap-v3");
10
+ const config = lodash_1.default.pick(config_1.QuickSwapConfig, ['CamelotV3']).CamelotV3;
11
+ class CamelotV3 extends quickswap_v3_1.QuickSwapV3 {
12
+ // public static dexKeysWithNetwork
13
+ constructor(dexHelper) {
14
+ super(dexHelper, 'camelotv3', config[dexHelper.config.data.network].router);
15
+ }
16
+ }
17
+ exports.CamelotV3 = CamelotV3;
18
+ CamelotV3.dexKeys = ['camelotv3'];
19
+ //# sourceMappingURL=camelot-v3.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"camelot-v3.js","sourceRoot":"","sources":["../../../src/dex/quickswap/camelot-v3.ts"],"names":[],"mappings":";;;;;;AACA,oDAAuB;AACvB,qCAA2C;AAC3C,iDAA6C;AAE7C,MAAM,MAAM,GAAG,gBAAC,CAAC,IAAI,CAAC,wBAAe,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;AAEhE,MAAa,SAAU,SAAQ,0BAAW;IAGxC,mCAAmC;IACnC,YAAY,SAAqB;QAC/B,KAAK,CAAC,SAAS,EAAE,WAAW,EAAE,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC;IAC9E,CAAC;;AANH,8BAOC;AANQ,iBAAO,GAAG,CAAC,WAAW,CAAC,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { IDexHelper } from '../../dex-helper';
2
+ import { QuickSwapV3 } from './quickswap-v3';
3
+ export declare class ZyberSwapV3 extends QuickSwapV3 {
4
+ static dexKeys: string[];
5
+ constructor(dexHelper: IDexHelper);
6
+ }
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.ZyberSwapV3 = void 0;
7
+ const lodash_1 = __importDefault(require("lodash"));
8
+ const config_1 = require("./config");
9
+ const quickswap_v3_1 = require("./quickswap-v3");
10
+ const config = lodash_1.default.pick(config_1.QuickSwapConfig, ['ZyberSwapV3']).ZyberSwapV3;
11
+ class ZyberSwapV3 extends quickswap_v3_1.QuickSwapV3 {
12
+ // public static dexKeysWithNetwork
13
+ constructor(dexHelper) {
14
+ super(dexHelper, 'zyberswapv3', config[dexHelper.config.data.network].router);
15
+ }
16
+ }
17
+ exports.ZyberSwapV3 = ZyberSwapV3;
18
+ ZyberSwapV3.dexKeys = ['zyberswapv3'];
19
+ //# sourceMappingURL=zyberswap-v3.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zyberswap-v3.js","sourceRoot":"","sources":["../../../src/dex/quickswap/zyberswap-v3.ts"],"names":[],"mappings":";;;;;;AACA,oDAAuB;AACvB,qCAA2C;AAC3C,iDAA6C;AAE7C,MAAM,MAAM,GAAG,gBAAC,CAAC,IAAI,CAAC,wBAAe,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,WAAW,CAAC;AAEpE,MAAa,WAAY,SAAQ,0BAAW;IAG1C,mCAAmC;IACnC,YAAY,SAAqB;QAC/B,KAAK,CACH,SAAS,EACT,aAAa,EACb,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,CAC7C,CAAC;IACJ,CAAC;;AAVH,kCAWC;AAVQ,mBAAO,GAAG,CAAC,aAAa,CAAC,CAAC"}
@@ -0,0 +1,7 @@
1
+ [
2
+ {
3
+ "symbol": "AMPL",
4
+ "chainId": 43114,
5
+ "address": "0x027dbca046ca156de9622cd1e2d907d375e53aa7"
6
+ }
7
+ ]
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@paraswap/dex-lib",
3
- "version": "2.48.3",
3
+ "version": "2.48.4-etherfi.1",
4
4
  "main": "build/index.js",
5
5
  "types": "build/index.d.ts",
6
6
  "repository": "https://github.com/paraswap/paraswap-dex-lib",
@@ -0,0 +1,9 @@
1
+ [
2
+ {
3
+ "inputs": [],
4
+ "name": "deposit",
5
+ "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],
6
+ "stateMutability": "payable",
7
+ "type": "function"
8
+ }
9
+ ]
@@ -0,0 +1,20 @@
1
+ [
2
+ {
3
+ "inputs": [
4
+ { "internalType": "uint256", "name": "_eETHAmount", "type": "uint256" }
5
+ ],
6
+ "name": "wrap",
7
+ "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],
8
+ "stateMutability": "nonpayable",
9
+ "type": "function"
10
+ },
11
+ {
12
+ "inputs": [
13
+ { "internalType": "uint256", "name": "_weETHAmount", "type": "uint256" }
14
+ ],
15
+ "name": "unwrap",
16
+ "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],
17
+ "stateMutability": "nonpayable",
18
+ "type": "function"
19
+ }
20
+ ]
@@ -0,0 +1,144 @@
1
+ import { Interface, JsonFragment } from '@ethersproject/abi';
2
+ import { NULL_ADDRESS, SwapSide } from '../constants';
3
+ import { AdapterExchangeParam, Address, SimpleExchangeParam } from '../types';
4
+ import { IDexTxBuilder } from './idex';
5
+ import { SimpleExchange } from './simple-exchange';
6
+ import eETHPoolABI from '../abi/etherfi/eETHPool.json';
7
+ import weETHABI from '../abi/etherfi/weETH.json';
8
+ import { IDexHelper } from '../dex-helper';
9
+ import { isETHAddress } from '../utils';
10
+ import { assert } from 'ts-essentials';
11
+
12
+ type EtherFiData = void;
13
+
14
+ type eETHPoolDepositParam = [];
15
+ type weETHWrap = [_eETHAmount: string];
16
+ type weETHUnwrap = [_weETHAmount: string];
17
+
18
+ type EtherFiParam = eETHPoolDepositParam | weETHWrap | weETHUnwrap;
19
+
20
+ enum EtherFiFunctions {
21
+ deposit = 'deposit',
22
+ wrap = 'wrap',
23
+ unwrap = 'unwrap',
24
+ }
25
+
26
+ const EtherFiConfig: Record<
27
+ number,
28
+ { eETH: string; eETHPool: string; weETH: string }
29
+ > = {
30
+ 1: {
31
+ eETH: '0x35fa164735182de50811e8e2e824cfb9b6118ac2',
32
+ eETHPool: '0x308861a430be4cce5502d0a12724771fc6daf216',
33
+ weETH: '0xcd5fe23c85820f7b72d0926fc9b05b43e359b7ee',
34
+ },
35
+ };
36
+
37
+ export class EtherFi
38
+ extends SimpleExchange
39
+ implements IDexTxBuilder<EtherFiData, EtherFiParam>
40
+ {
41
+ static dexKeys = ['etherfi'];
42
+
43
+ eETHPoolInterface: Interface;
44
+ weETHInterface: Interface;
45
+ needWrapNative = false;
46
+
47
+ eETH: string;
48
+ eETHPool: string;
49
+ weETH: string;
50
+
51
+ constructor(dexHelper: IDexHelper) {
52
+ super(dexHelper, 'etherfi');
53
+
54
+ this.eETHPoolInterface = new Interface(eETHPoolABI as JsonFragment[]);
55
+ this.weETHInterface = new Interface(weETHABI as JsonFragment[]);
56
+
57
+ this.eETH = EtherFiConfig[this.network].eETH.toLowerCase();
58
+ this.eETHPool = EtherFiConfig[this.network].eETHPool.toLowerCase();
59
+ this.weETH = EtherFiConfig[this.network].weETH.toLowerCase();
60
+ }
61
+
62
+ is_eETH = (token: string) => token.toLowerCase() === this.eETH;
63
+ is_weETH = (token: string) => token.toLowerCase() === this.weETH;
64
+
65
+ async getSimpleParam(
66
+ srcToken: string,
67
+ destToken: string,
68
+ srcAmount: string,
69
+ destAmount: string,
70
+ data: EtherFiData,
71
+ side: SwapSide,
72
+ ): Promise<SimpleExchangeParam> {
73
+ const [Interface, swapCallee, swapFunction, swapFunctionParams] = ((): [
74
+ Interface,
75
+ Address,
76
+ EtherFiFunctions,
77
+ EtherFiParam,
78
+ ] => {
79
+ if (this.is_eETH(destToken)) {
80
+ assert(
81
+ this.isWETH(srcToken) || isETHAddress(srcToken),
82
+ 'srcToken should be eth',
83
+ );
84
+ return [
85
+ this.eETHPoolInterface,
86
+ this.eETHPool,
87
+ EtherFiFunctions.deposit,
88
+ [],
89
+ ];
90
+ }
91
+
92
+ if (this.is_weETH(destToken)) {
93
+ assert(this.is_eETH(srcToken), 'srcToken should be eETH');
94
+ return [
95
+ this.weETHInterface,
96
+ this.weETH,
97
+ EtherFiFunctions.wrap,
98
+ [srcAmount],
99
+ ];
100
+ }
101
+
102
+ if (this.is_weETH(srcToken)) {
103
+ assert(this.is_eETH(destToken), 'destToken should be eETH');
104
+ return [
105
+ this.weETHInterface,
106
+ this.weETH,
107
+ EtherFiFunctions.unwrap,
108
+ [srcAmount],
109
+ ];
110
+ }
111
+
112
+ throw new Error('LOGIC ERROR');
113
+ })();
114
+
115
+ const swapData = Interface.encodeFunctionData(
116
+ swapFunction,
117
+ swapFunctionParams,
118
+ );
119
+
120
+ return this.buildSimpleParamWithoutWETHConversion(
121
+ srcToken,
122
+ srcAmount,
123
+ destToken,
124
+ destAmount,
125
+ swapData,
126
+ swapCallee,
127
+ );
128
+ }
129
+
130
+ getAdapterParam(
131
+ srcToken: string,
132
+ destToken: string,
133
+ srcAmount: string,
134
+ destAmount: string,
135
+ data: EtherFiData,
136
+ side: SwapSide,
137
+ ): AdapterExchangeParam {
138
+ return {
139
+ targetExchange: NULL_ADDRESS,
140
+ payload: '0x',
141
+ networkFee: '0',
142
+ };
143
+ }
144
+ }
package/src/dex/index.ts CHANGED
@@ -85,6 +85,7 @@ import { Dexalot } from './dexalot/dexalot';
85
85
  import { Smardex } from './smardex/smardex';
86
86
  import { Wombat } from './wombat/wombat';
87
87
  import { Swell } from './swell/swell';
88
+ import { EtherFi } from './etherfi';
88
89
 
89
90
  const LegacyDexes = [
90
91
  CurveV2,
@@ -108,6 +109,7 @@ const LegacyDexes = [
108
109
  Jarvis,
109
110
  Lido,
110
111
  AugustusRFQOrder,
112
+ EtherFi,
111
113
  ];
112
114
 
113
115
  const Dexes = [