@defisaver/sdk 0.3.12 → 0.3.16

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.
package/package-lock.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@defisaver/sdk",
3
- "version": "0.3.11",
3
+ "version": "0.3.13",
4
4
  "lockfileVersion": 1,
5
5
  "requires": true,
6
6
  "dependencies": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@defisaver/sdk",
3
- "version": "0.3.12",
3
+ "version": "0.3.16",
4
4
  "description": "",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -1,5 +1,7 @@
1
1
  const Action = require('./Action');
2
2
  const Dec = require('decimal.js');
3
+ const AbiCoder = require('web3-eth-abi');
4
+ const ActionAbi = require('./abis/Action.json');
3
5
 
4
6
  class ActionWithL2 extends Action {
5
7
  /**
@@ -10,7 +12,12 @@ class ActionWithL2 extends Action {
10
12
 
11
13
  encodeForL2Recipe() { return `0x${this.encodeInputs().slice(10)}`; } // cut the method id
12
14
 
13
- encodeInputs() { throw new Error('Use implementation from specific ActionWithL2'); }
15
+ encodeInputs() {
16
+ let _arg = this._replaceWithPlaceholders(this.args, this.paramTypes);
17
+ let _paramType = this._formatType(this.paramTypes);
18
+ const executeActionDirectAbi = ActionAbi.find(({ name }) => name === 'executeActionDirect');
19
+ return AbiCoder.encodeFunctionCall(executeActionDirectAbi, [AbiCoder.encodeParameter(_paramType, _arg)]);
20
+ }
14
21
 
15
22
  addressToBytes20(address) { return address.slice(2); }
16
23
 
@@ -1,10 +1,10 @@
1
- const Action = require("../../Action");
2
- const {getAddr} = require('../../addresses.js');
1
+ const ActionWithL2 = require('../../ActionWithL2');
2
+ const { getAddr } = require('../../addresses.js');
3
3
 
4
4
  /**
5
5
  * Collects fees earned by user on position identified by tokenId
6
6
  */
7
- class UniswapV3CollectAction extends Action {
7
+ class UniswapV3CollectAction extends ActionWithL2 {
8
8
  /**
9
9
  * @param {string} tokenId
10
10
  * @param {EthAddress} recipient
@@ -1,11 +1,12 @@
1
- const Action = require("../../Action");
2
- const {getAddr} = require('../../addresses.js');
3
- const {getAssetInfoByAddress} = require("@defisaver/tokens");
1
+ const { getAssetInfoByAddress } = require('@defisaver/tokens');
2
+
3
+ const ActionWithL2 = require('../../ActionWithL2');
4
+ const { getAddr } = require('../../addresses.js');
4
5
 
5
6
  /**
6
7
  * Create a uniswap v3 pool
7
8
  */
8
- class UniswapV3CreatePoolAction extends Action {
9
+ class UniswapV3CreatePoolAction extends ActionWithL2 {
9
10
  /**
10
11
  * @param {EthAddress} token0
11
12
  * @param {EthAddress} token1
@@ -1,12 +1,13 @@
1
- const Action = require("../../Action");
2
- const {getAddr} = require('../../addresses.js');
3
- const {getAssetInfoByAddress} = require("@defisaver/tokens");
1
+ const { getAssetInfoByAddress } = require('@defisaver/tokens');
2
+
3
+ const ActionWithL2 = require('../../ActionWithL2');
4
+ const { getAddr } = require('../../addresses.js');
4
5
 
5
6
 
6
7
  /**
7
8
  * Creates a new Uniswap v3 LP supply position
8
9
  */
9
- class UniswapV3MintAction extends Action {
10
+ class UniswapV3MintAction extends ActionWithL2 {
10
11
  /**
11
12
  * @param {EthAddress} token0
12
13
  * @param {EthAddress} token1
@@ -1,11 +1,12 @@
1
- const {getAssetInfoByAddress} = require("@defisaver/tokens");
2
- const Action = require("../../Action");
3
- const {getAddr} = require('../../addresses.js');
1
+ const { getAssetInfoByAddress } = require('@defisaver/tokens');
2
+
3
+ const ActionWithL2 = require('../../ActionWithL2');
4
+ const { getAddr } = require('../../addresses.js');
4
5
 
5
6
  /**
6
7
  * Supplies a pair of tokens to an existing Uniswap v3 position identified by tokenId
7
8
  */
8
- class UniswapV3SupplyAction extends Action {
9
+ class UniswapV3SupplyAction extends ActionWithL2 {
9
10
  /**
10
11
  * @param {string} tokenId
11
12
  * @param {string} amount0Desired
@@ -1,10 +1,10 @@
1
- const Action = require("../../Action");
2
- const {getAddr} = require('../../addresses.js');
1
+ const ActionWithL2 = require('../../ActionWithL2');
2
+ const { getAddr } = require('../../addresses.js');
3
3
 
4
4
  /**
5
5
  * Burns liquidity, and returns underlying tokens to recipient
6
6
  */
7
- class UniswapV3WithdrawAction extends Action {
7
+ class UniswapV3WithdrawAction extends ActionWithL2 {
8
8
  /**
9
9
  * @param {string} tokenId
10
10
  * @param {string} liquidity
package/src/addresses.js CHANGED
@@ -147,6 +147,7 @@ const actionAddresses = {
147
147
  PullToken: '0x392579E020a688068422A925c85f28bFD12a7EBB',
148
148
  SendTokenAndUnwrap: '0x8000174366066923D554cb466e190258A6FF3b1f',
149
149
  ToggleSub: '0x988C5C24AE6348404196267e19962f36961CAc29',
150
+ TokenBalance: '0xC6FF5b01f7c7b35b6e093fF70D2332B361C5Be5A',
150
151
 
151
152
 
152
153
  // aave v3
@@ -161,10 +162,16 @@ const actionAddresses = {
161
162
  AaveV3ClaimRewards: '0xBE8e8cea67085F869C1C0040fD52F9F3115E962e',
162
163
 
163
164
  FLAaveV3: '0x352D4a1622f2DC34c738F542934372855f219F05',
164
-
165
165
  AaveV3RatioTrigger: '0xB76e3f7694589D0f34ba43b17AD0D15350Ab5f85',
166
166
  GasFeeTakerL2: '0xB3dB299622A9DB0E944ccda2Ef899d6fF365B082',
167
167
  AaveV3RatioCheck: '0x7A36779a7b5F1128B28932604057d5b63361297c',
168
+
169
+ // uniswap V3
170
+ UniCollectV3: '0xad1D55a73D6d8b2218a4aD599c88d9550fb54cd7',
171
+ UniMintV3: '0x7548E3923A9f9e4e182C939CC78FA30050414D12',
172
+ UniSupplyV3: '0x533aDec68Eed581F4a7F202493Eaf4Df77b89EC0',
173
+ UniWithdrawV3: '0xE920235ED2d52EcF6157BBAFedfB5bbbcF7c5825',
174
+ UniCreatePoolV3: '0xAF45d1380d89dB7260DC2684158c5dfA4E147d3e',
168
175
  },
169
176
  [NETWORKS.arbitrum.chainId]: {
170
177
  DFSSell: '0x77c02Bb7CbBb2F896c5Ea14e1b60D65f81e552db',
@@ -176,7 +183,7 @@ const actionAddresses = {
176
183
  PullToken: '0xD8B3769f74bd9F196C3416a42a91E786948898e6',
177
184
  SendTokenAndUnwrap: '0x0fb867A5Ee1CA9426D3dAb95e613Be166218b977',
178
185
  ToggleSub: '0x71015226EADFd4aC887fB56556F64338e352439b',
179
-
186
+ TokenBalance: '0x483B903E702F60698Dd8124558C6199922737f1F',
180
187
 
181
188
  // aave v3
182
189
  AaveV3ATokenPayback: '0x261906e5E0D0D38D9cBb5c10dB9c4031aabdf8C1',
@@ -191,6 +198,13 @@ const actionAddresses = {
191
198
  FLAaveV3: '0x3Cc0d5DAE1B94e294152C3150aA732b97af603E1',
192
199
  GasFeeTakerL2: '0x2F64f73B222B4978CAfd0295c0fa106cE5f34996',
193
200
  AaveV3RatioCheck: '0x4a5c2cbCFB921b596Dec049389899CC8Eb4678ED',
201
+
202
+ // uniswap V3
203
+ UniCollectV3: '0xd521cbEfE58440d1C31FD0baF41fdfE18D028704',
204
+ UniMintV3: '0x7AC778fB7CaB7D368f37d6E7CE3c293077969331',
205
+ UniSupplyV3: '0x55675C6041A33EE9BDd796Edaa0f098AC7F3534f',
206
+ UniWithdrawV3: '0xa004c22eFd0CD87847DE83Ce9ab92af5382c2efe',
207
+ UniCreatePoolV3: '0x334Ab3C12a4c0315566fd9308880Dad71F838Dc5',
194
208
  }
195
209
  };
196
210
 
@@ -221,6 +235,8 @@ const otherAddresses = {
221
235
  AdminVault: '0x136b1bEAfff362530F98f10E3D8C38f3a3F3d38C',
222
236
  DefisaverLogger: '0xFc2f1355296ab7dd98a1260E3Ff5E906999d4Acb',
223
237
  Empty: '0x0000000000000000000000000000000000000000',
238
+
239
+ UniswapV3PositionManager : '0xC36442b4a4522E871399CD717aBDD847Ab11FE88',
224
240
  },
225
241
  [NETWORKS.arbitrum.chainId]: {
226
242
  RecipeExecutor: '0xe775c59e5662597bcE8aB4432C06380709554883',
@@ -231,6 +247,8 @@ const otherAddresses = {
231
247
  AdminVault: '0xd47D8D97cAd12A866900eEc6Cde1962529F25351',
232
248
  DefisaverLogger: '0xE6f9A5C850dbcD12bc64f40d692F537250aDEC38',
233
249
  Empty: '0x0000000000000000000000000000000000000000',
250
+
251
+ UniswapV3PositionManager : '0xC36442b4a4522E871399CD717aBDD847Ab11FE88',
234
252
  },
235
253
  };
236
254