@defisaver/sdk 1.3.25 → 1.3.26-uniswap-dev-dev
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/esm/src/actions/aaveV3/AaveV3DelegateCredit.d.ts +1 -1
- package/esm/src/actions/aaveV3/AaveV3DelegateCredit.js +1 -1
- package/esm/src/actions/flashloan/AaveV3FlashLoanAction.d.ts +1 -1
- package/esm/src/actions/flashloan/AaveV3FlashLoanAction.js +1 -1
- package/esm/src/actions/flashloan/AaveV3FlashLoanCarryDebtAction.d.ts +4 -2
- package/esm/src/actions/flashloan/AaveV3FlashLoanCarryDebtAction.js +12 -6
- package/esm/src/actions/flashloan/AaveV3FlashLoanNoFeeAction.d.ts +1 -1
- package/esm/src/actions/flashloan/AaveV3FlashLoanNoFeeAction.js +1 -1
- package/esm/src/actions/uniswap/UniswapClaimAction.d.ts +16 -0
- package/esm/src/actions/uniswap/UniswapClaimAction.js +23 -0
- package/esm/src/actions/uniswap/index.d.ts +1 -0
- package/esm/src/actions/uniswap/index.js +1 -0
- package/esm/src/addresses.d.ts +14 -8
- package/esm/src/addresses.js +5 -12
- package/esm/src/index.d.ts +56 -32
- package/package.json +1 -1
- package/src/actions/aaveV3/AaveV3DelegateCredit.ts +1 -1
- package/src/actions/flashloan/AaveV3FlashLoanAction.ts +1 -1
- package/src/actions/flashloan/AaveV3FlashLoanCarryDebtAction.ts +13 -7
- package/src/actions/flashloan/AaveV3FlashLoanNoFeeAction.ts +1 -1
- package/src/actions/uniswap/UniswapClaimAction.ts +31 -0
- package/src/actions/uniswap/index.ts +2 -1
- package/src/addresses.ts +5 -12
- package/test/actions/uniswap/UniswapClaimAction.js +31 -0
- package/umd/index.js +720 -688
|
@@ -9,21 +9,27 @@ import { EthAddress, uint256, bytes } from '../../types';
|
|
|
9
9
|
*/
|
|
10
10
|
export class AaveV3FlashLoanCarryDebtAction extends ActionWithL2 {
|
|
11
11
|
/**
|
|
12
|
-
* @param tokens
|
|
13
12
|
* @param loanAmounts
|
|
13
|
+
* @param tokens
|
|
14
|
+
* @param modes
|
|
15
|
+
* @param loanPayer
|
|
14
16
|
* @param flParamGetterAddr
|
|
15
17
|
* @param flParamGetterData
|
|
16
18
|
*/
|
|
17
|
-
constructor(tokens:Array<EthAddress>, loanAmounts:Array<uint256>, flParamGetterAddr:EthAddress = getAddr('Empty'), flParamGetterData:bytes = []) {
|
|
18
|
-
if (tokens.length !== loanAmounts.length) {
|
|
19
|
-
throw new Error('Tokens and loan amounts must be of the same length');
|
|
20
|
-
}
|
|
21
|
-
const modes: Array<uint256> = Array(tokens.length).fill(2); // always use variable borrow rate
|
|
19
|
+
constructor(tokens:Array<EthAddress>, loanAmounts:Array<uint256>, modes:Array<uint256>, loanPayer:EthAddress, flParamGetterAddr:EthAddress = getAddr('Empty'), flParamGetterData:bytes = []) {
|
|
22
20
|
super(
|
|
23
21
|
'FLAaveV3CarryDebt',
|
|
24
22
|
getAddr('FLAaveV3CarryDebt'),
|
|
25
23
|
['address[]', 'uint256[]', 'uint256[]', 'address', 'address', 'bytes', 'bytes'],
|
|
26
|
-
[tokens, loanAmounts, modes,
|
|
24
|
+
[tokens, loanAmounts, modes, loanPayer, flParamGetterAddr, flParamGetterData, []],
|
|
27
25
|
);
|
|
26
|
+
if (tokens.length !== modes.length || tokens.length !== loanAmounts.length) {
|
|
27
|
+
throw new Error('Arrays must be of the same length');
|
|
28
|
+
}
|
|
29
|
+
modes.forEach((mode) => {
|
|
30
|
+
if (mode.toString() !== '1' && mode.toString() !== '2') {
|
|
31
|
+
throw new Error('Invalid borrow mode set');
|
|
32
|
+
}
|
|
33
|
+
});
|
|
28
34
|
}
|
|
29
35
|
}
|
|
@@ -9,8 +9,8 @@ import { EthAddress, uint256, bytes } from '../../types';
|
|
|
9
9
|
*/
|
|
10
10
|
export class AaveV3FlashLoanNoFeeAction extends ActionWithL2 {
|
|
11
11
|
/**
|
|
12
|
-
* @param tokens
|
|
13
12
|
* @param loanAmounts
|
|
13
|
+
* @param tokens
|
|
14
14
|
* @param modes
|
|
15
15
|
* @param loanPayer
|
|
16
16
|
* @param flParamGetterAddr
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { Action } from '../../Action';
|
|
2
|
+
import { getAddr } from '../../addresses';
|
|
3
|
+
import { EthAddress, uint256, bytes32 } from '../../types';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* UniswapClaimAction - Claims UNI tokens from the Uniswap merkle distributor
|
|
7
|
+
*
|
|
8
|
+
* @category Uniswap
|
|
9
|
+
*/
|
|
10
|
+
export class UniswapClaimAction extends Action {
|
|
11
|
+
/**
|
|
12
|
+
* @param index - Index of the claim in the merkle tree
|
|
13
|
+
* @param to - Address where to send the claimed UNI
|
|
14
|
+
* @param amount - Amount of UNI allocated to the smart wallet in the merkle tree
|
|
15
|
+
* @param merkleProof - Merkle proof of the claim
|
|
16
|
+
*/
|
|
17
|
+
constructor(index: uint256, to: EthAddress, amount: uint256, merkleProof: Array<bytes32>) {
|
|
18
|
+
super(
|
|
19
|
+
'UniswapClaim',
|
|
20
|
+
getAddr('UniswapClaim'),
|
|
21
|
+
['uint256', 'address', 'uint256', 'bytes32[]'],
|
|
22
|
+
[index, to, amount, merkleProof],
|
|
23
|
+
);
|
|
24
|
+
|
|
25
|
+
this.mappableArgs = [
|
|
26
|
+
this.args[0],
|
|
27
|
+
this.args[1],
|
|
28
|
+
this.args[2],
|
|
29
|
+
];
|
|
30
|
+
}
|
|
31
|
+
}
|
package/src/addresses.ts
CHANGED
|
@@ -95,7 +95,6 @@ export const actionAddresses = {
|
|
|
95
95
|
AaveV3ATokenPayback: '0xDe5c012cd1878D86E91309593764895a3adb380E',
|
|
96
96
|
AaveV3View: '0x0CB0170F3413e54405F64d3C23BA3A1D8Bb96D99',
|
|
97
97
|
AaveV3DelegateWithSig: '0x9253E22Ce4f0AeE541301CF8cC29843f9083a1F4',
|
|
98
|
-
AaveV3DelegateCredit: '0xa7ab39edCb0a1b742DCd908EC6CFe178d8322580',
|
|
99
98
|
GhoClaimAAVE: '0xA53060d822cB31AFd5B26D899130a14E8Efc5917',
|
|
100
99
|
GhoUnstake: '0x3fD02e65B4fb12381946D03815Ff3FF8Ebe2fC63',
|
|
101
100
|
GhoStake: '0x6cfBFd04702f3b7d4fc52D457eDf91D6E4A081bb',
|
|
@@ -148,7 +147,7 @@ export const actionAddresses = {
|
|
|
148
147
|
// flashloan
|
|
149
148
|
FLAaveV2: '0xEA55576383C96A69B3E8beD51Ce0d0294001bc5F',
|
|
150
149
|
FLAaveV3NoFee: '0xd9D8e68717Ce24CCbf162868aaad7E38d81b05d1',
|
|
151
|
-
FLAaveV3CarryDebt: '
|
|
150
|
+
FLAaveV3CarryDebt: '0x7BdD8ACE8a48B7032Df68B7f53E0D6D9Ea9411A7',
|
|
152
151
|
FLAaveV3: '0x5021d70aB7D757D61E0230c472ff89b8B2B8705e',
|
|
153
152
|
FLDyDx: '0x08AC78B418fCB0DDF1096533856A757C28d430d7',
|
|
154
153
|
FLMaker: '0x0f8C3368cADF78167F5355D746Ed7b2A826A6e3b',
|
|
@@ -162,6 +161,7 @@ export const actionAddresses = {
|
|
|
162
161
|
// uniswap
|
|
163
162
|
UniSupply: '0x9935e12F0218E61c27D7f23eAC9A9D6881a078eC',
|
|
164
163
|
UniWithdraw: '0xf8bb8F68b0A45DC315F3f7602a60cfb274B00951',
|
|
164
|
+
UniswapClaim: '0x4Eed50e142BFaE83b2d05ce960C55F4c536d123f',
|
|
165
165
|
|
|
166
166
|
// uniswap V3
|
|
167
167
|
UniCollectV3: '0x331D7C3F6E710cB6cFE94c4Aa04AC3345AC00e00',
|
|
@@ -439,14 +439,13 @@ export const actionAddresses = {
|
|
|
439
439
|
AaveV3Withdraw: '0xf19d045f6cFc04A5Ee5E0e8837b565b9f276e3F7',
|
|
440
440
|
AaveV3ClaimRewards: '0xBE8e8cea67085F869C1C0040fD52F9F3115E962e',
|
|
441
441
|
AaveV3DelegateWithSig: '0x8dd05d32fB05E8c3e8F37294e6f2d13e5823a712',
|
|
442
|
-
AaveV3DelegateCredit: '
|
|
442
|
+
AaveV3DelegateCredit: '0x0000000000000000000000000000000000000000',
|
|
443
443
|
|
|
444
444
|
// flashloan
|
|
445
445
|
FLAaveV3NoFee: '0xfbcF23D2BeF8A2C491cfa4dD409D8dF12d431c85',
|
|
446
446
|
FLAaveV3: '0x8A07E93d2B74A80D726eE4E4A0aC1F906aB5Cc63',
|
|
447
447
|
FLBalancer: '0x79d6bf536b8DD65909a3174C87eA6395310d5c41',
|
|
448
448
|
FLAction: '0xB57b666dAB46229e2b80113b5187F6DCD91AB159',
|
|
449
|
-
FLAaveV3CarryDebt: '0x4ab7a392aF23215A9049A64F3B2d44726aD2D6fe',
|
|
450
449
|
|
|
451
450
|
AaveV3RatioTrigger: '0xB76e3f7694589D0f34ba43b17AD0D15350Ab5f85',
|
|
452
451
|
GasFeeTakerL2: '0xB3dB299622A9DB0E944ccda2Ef899d6fF365B082',
|
|
@@ -510,7 +509,6 @@ export const actionAddresses = {
|
|
|
510
509
|
AaveV3Withdraw: '0xbf492F869DdB1A18BB4F41b6c3059D9f882Fe7ff',
|
|
511
510
|
AaveV3ClaimRewards: '0x3a4d72Ed2a47a409a82ba61f0fca1C749Ea8aB66',
|
|
512
511
|
AaveV3DelegateWithSig: '0xFF2CE05250d1880f0f45ea8fB453292CABA42F12',
|
|
513
|
-
AaveV3DelegateCredit: '0x8C13353e3DA67d3171D6F73751E3caa791a3AACD',
|
|
514
512
|
|
|
515
513
|
// CompV3
|
|
516
514
|
CompV3Allow: '0x0380E8e13CdE0499c720999930CaA07A5744887c',
|
|
@@ -528,7 +526,6 @@ export const actionAddresses = {
|
|
|
528
526
|
FLUniV3: '0xf041C72e201CD7d04a240fe06c5783E2Ee2D92b3', // @DEV - incorrect, same as FLAction
|
|
529
527
|
FLAction: '0xf041C72e201CD7d04a240fe06c5783E2Ee2D92b3',
|
|
530
528
|
FLMorphoBlue: '0xf041C72e201CD7d04a240fe06c5783E2Ee2D92b3',
|
|
531
|
-
FLAaveV3CarryDebt: '0xEc6Db90d9EFa7cD75d5b716896A497e9d9103D5b',
|
|
532
529
|
|
|
533
530
|
GasFeeTakerL2: '0x2F64f73B222B4978CAfd0295c0fa106cE5f34996',
|
|
534
531
|
AaveV3RatioCheck: '0x4a5c2cbCFB921b596Dec049389899CC8Eb4678ED',
|
|
@@ -620,7 +617,6 @@ export const actionAddresses = {
|
|
|
620
617
|
FLUniV3: '0x1bA6082D2ef1aB92a55B96264c72Eb8049C964Ce',
|
|
621
618
|
FLAction: '0x87Af4769e4134379125A262408e1f3EC60d2Ab52', // fix temp
|
|
622
619
|
FLMorphoBlue: '0x87Af4769e4134379125A262408e1f3EC60d2Ab52',
|
|
623
|
-
FLAaveV3CarryDebt: '0x760e97862DD8652e5BB8b4D8ad9C99a74BBe7E7A',
|
|
624
620
|
|
|
625
621
|
// AaveV3
|
|
626
622
|
AaveV3Withdraw: '0x1d2Fa7dAcC660A9124c3685EE8a6E699d10409Eb',
|
|
@@ -635,7 +631,6 @@ export const actionAddresses = {
|
|
|
635
631
|
AaveV3ATokenPayback: '0x3D57875885e3cEe9E56Cb65D21789893B6e67815',
|
|
636
632
|
AaveV3View: '0xf140B2904beb743C2f17e0b5f766074212a7e243',
|
|
637
633
|
AaveV3DelegateWithSig: '0x9e295AFaC75E7843b88a563D119FD953EDf441c2',
|
|
638
|
-
AaveV3DelegateCredit: '0xF85aD63c513A76a1dc05B2AddC4777F17336c7e9',
|
|
639
634
|
|
|
640
635
|
// CompV3
|
|
641
636
|
CompV3Allow: '0x3Fe56B85BBcD759459408Bd8434c37bac93e26bF',
|
|
@@ -706,7 +701,6 @@ export const actionAddresses = {
|
|
|
706
701
|
// Flashloan
|
|
707
702
|
FLAction: '0x04ce4b2a9F524d976a8eD8a49B9313C5a2C3ccAD', // fix temp
|
|
708
703
|
FLAaveV3: '0x04ce4b2a9F524d976a8eD8a49B9313C5a2C3ccAD',
|
|
709
|
-
FLAaveV3CarryDebt: '0x862E533198C9656B75bB6A5dDF0953F7ED5E8507',
|
|
710
704
|
|
|
711
705
|
// AaveV3
|
|
712
706
|
AaveV3Withdraw: '0xae56474aBe3C271579b513b6668864e39f65Ae15',
|
|
@@ -719,7 +713,7 @@ export const actionAddresses = {
|
|
|
719
713
|
AaveV3ATokenPayback: '0xedfc68e2874b0afc0963e18ae4d68522aec7f97d',
|
|
720
714
|
AaveV3View: '0xc9d6efa6e08b66a5cdc516bcd5807c2fa69e0f2a',
|
|
721
715
|
AaveV3DelegateWithSig: '0x169D6E128238ebabF86032Ae9da65938eaD7F69e',
|
|
722
|
-
AaveV3DelegateCredit: '
|
|
716
|
+
AaveV3DelegateCredit: '0x2A588cBCBd5e6c6ba7ED0E260B8107F599017DDE',
|
|
723
717
|
},
|
|
724
718
|
[NETWORKS.plasma.chainId]: {
|
|
725
719
|
// Basic
|
|
@@ -743,7 +737,6 @@ export const actionAddresses = {
|
|
|
743
737
|
// Flashloan
|
|
744
738
|
FLAction: '0x40C9ce603923AACD0b7407Ff0EE844c9C067cEB7', // fix temp
|
|
745
739
|
FLAaveV3: '0x40C9ce603923AACD0b7407Ff0EE844c9C067cEB7',
|
|
746
|
-
FLAaveV3CarryDebt: '0x6Dc6C0e38fBd066b89Ba7E6f711B4288246891b3',
|
|
747
740
|
|
|
748
741
|
// AaveV3
|
|
749
742
|
AaveV3Withdraw: '0x4839d021A24820e57C31D386d430e2e82694F73B',
|
|
@@ -756,7 +749,7 @@ export const actionAddresses = {
|
|
|
756
749
|
AaveV3ATokenPayback: '0x425fA97285965E01Cc5F951B62A51F6CDEA5cc0d',
|
|
757
750
|
AaveV3View: '0xD8E67968d8a0df4beCf2D50daE1e34d4d80C701C',
|
|
758
751
|
AaveV3DelegateWithSig: '0x49658E0CF3883c338397C7257619B280dF581057',
|
|
759
|
-
AaveV3DelegateCredit: '
|
|
752
|
+
AaveV3DelegateCredit: '0x0a9b2080C14DaF008AE87C977dFDf5f5D6D0937F',
|
|
760
753
|
|
|
761
754
|
// Fluid
|
|
762
755
|
FluidVaultT1Open: '0x491cc4AFbE0081C3464DeF1114ba27BE114b2401',
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
const dfs = require('../../../src');
|
|
2
|
+
const {encodeForDsProxyCall, encodeForRecipe} = require('../../_actionUtils');
|
|
3
|
+
const {assert} = require('chai');
|
|
4
|
+
|
|
5
|
+
describe('Action: UniswapClaimAction', () => {
|
|
6
|
+
let action;
|
|
7
|
+
context('Claim encoding', () => {
|
|
8
|
+
it('constructor', () => {
|
|
9
|
+
const index = '137';
|
|
10
|
+
const to = '0xC093dFcC2cBc4e9488589B7c2245a7F1DA043389';
|
|
11
|
+
const amount = '4809093062235489680';
|
|
12
|
+
const merkleProof = [
|
|
13
|
+
'0xd496d2a15cf30a2af545b0fd4ced50fb4224bb54e7c9add4885c7b7408c907a1',
|
|
14
|
+
'0x6a8fc6432934b1f2c9f9aed040f4389c0450dd94aff92b16864060e95fba4290',
|
|
15
|
+
'0xb7491e5e898e774e11c50044140df4c1c74bf9cd7855bac78f0709699ed0e6b7',
|
|
16
|
+
];
|
|
17
|
+
action = new dfs.actions.uniswap.UniswapClaimAction(
|
|
18
|
+
index,
|
|
19
|
+
to,
|
|
20
|
+
amount,
|
|
21
|
+
merkleProof,
|
|
22
|
+
);
|
|
23
|
+
})
|
|
24
|
+
it('encodeForDsProxyCall', () => encodeForDsProxyCall(action));
|
|
25
|
+
it('encodeForRecipe', () => encodeForRecipe(action));
|
|
26
|
+
it('getEthValue', async () => {
|
|
27
|
+
const ethValue = await action.getEthValue();
|
|
28
|
+
assert.equal(ethValue, '0');
|
|
29
|
+
})
|
|
30
|
+
})
|
|
31
|
+
})
|