@defisaver/sdk 1.1.3 → 1.1.6
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/.yarn/releases/yarn-1.22.1.cjs +147386 -0
- package/.yarnrc.yml +3 -0
- package/esm/src/Action.d.ts +2 -2
- package/esm/src/actions/aaveV3/AaveV3DelegateWithSigAction.d.ts +11 -0
- package/esm/src/actions/aaveV3/AaveV3DelegateWithSigAction.js +33 -0
- package/esm/src/actions/aaveV3/index.d.ts +1 -0
- package/esm/src/actions/aaveV3/index.js +1 -0
- package/esm/src/actions/basic/PermitTokenAction.d.ts +21 -0
- package/esm/src/actions/basic/PermitTokenAction.js +50 -0
- package/esm/src/actions/basic/StarknetClaimAction.d.ts +11 -0
- package/esm/src/actions/basic/StarknetClaimAction.js +30 -0
- package/esm/src/actions/basic/index.d.ts +2 -0
- package/esm/src/actions/basic/index.js +2 -0
- package/esm/src/actions/flashloan/AaveV2FlashLoanAction.d.ts +3 -1
- package/esm/src/actions/flashloan/AaveV2FlashLoanAction.js +1 -0
- package/esm/src/actions/flashloan/AaveV3FlashLoanAction.d.ts +3 -1
- package/esm/src/actions/flashloan/AaveV3FlashLoanAction.js +1 -0
- package/esm/src/actions/flashloan/BalancerFlashLoanAction.d.ts +3 -1
- package/esm/src/actions/flashloan/BalancerFlashLoanAction.js +1 -0
- package/esm/src/actions/flashloan/FLAction.d.ts +5 -1
- package/esm/src/actions/flashloan/FLAction.js +1 -30
- package/esm/src/actions/flashloan/FlashLoanId.d.ts +3 -0
- package/esm/src/actions/flashloan/FlashLoanId.js +1 -0
- package/esm/src/actions/flashloan/GhoFlashLoanAction.d.ts +3 -1
- package/esm/src/actions/flashloan/GhoFlashLoanAction.js +1 -0
- package/esm/src/actions/flashloan/MakerFlashLoanAction.d.ts +3 -1
- package/esm/src/actions/flashloan/MakerFlashLoanAction.js +1 -0
- package/esm/src/actions/flashloan/MorphoBlueFlashLoanAction.d.ts +3 -1
- package/esm/src/actions/flashloan/MorphoBlueFlashLoanAction.js +1 -0
- package/esm/src/actions/flashloan/SparkFlashLoanAction.d.ts +3 -1
- package/esm/src/actions/flashloan/SparkFlashLoanAction.js +1 -0
- package/esm/src/actions/flashloan/UniV3FlashLoanAction.d.ts +3 -1
- package/esm/src/actions/flashloan/UniV3FlashLoanAction.js +1 -0
- package/esm/src/actions/spark/SparkDelegateWithSigAction.d.ts +11 -0
- package/esm/src/actions/spark/SparkDelegateWithSigAction.js +33 -0
- package/esm/src/actions/spark/index.d.ts +1 -0
- package/esm/src/actions/spark/index.js +1 -0
- package/esm/src/addresses.d.ts +18 -2
- package/esm/src/addresses.js +18 -6
- package/esm/src/index.d.ts +72 -8
- package/esm/src/types.d.ts +20 -20
- package/package.json +1 -1
- package/src/actions/aaveV3/AaveV3DelegateWithSigAction.ts +42 -0
- package/src/actions/aaveV3/index.ts +2 -1
- package/src/actions/basic/PermitTokenAction.ts +50 -0
- package/src/actions/basic/StarknetClaimAction.ts +27 -0
- package/src/actions/basic/index.ts +2 -0
- package/src/actions/flashloan/AaveV2FlashLoanAction.ts +6 -3
- package/src/actions/flashloan/AaveV3FlashLoanAction.ts +6 -3
- package/src/actions/flashloan/BalancerFlashLoanAction.ts +6 -3
- package/src/actions/flashloan/FLAction.ts +8 -28
- package/src/actions/flashloan/FlashLoanId.ts +3 -0
- package/src/actions/flashloan/GhoFlashLoanAction.ts +6 -3
- package/src/actions/flashloan/MakerFlashLoanAction.ts +6 -3
- package/src/actions/flashloan/MorphoBlueFlashLoanAction.ts +6 -3
- package/src/actions/flashloan/SparkFlashLoanAction.ts +6 -3
- package/src/actions/flashloan/UniV3FlashLoanAction.ts +6 -3
- package/src/actions/spark/SparkDelegateWithSigAction.ts +42 -0
- package/src/actions/spark/index.ts +2 -1
- package/src/addresses.ts +18 -6
- package/umd/index.js +1494 -1237
- package/yarn-error.log +0 -3976
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import Dec from 'decimal.js';
|
|
2
|
+
import { Action } from '../../Action';
|
|
3
|
+
import { getAddr } from '../../addresses';
|
|
4
|
+
import { uint256 } from '../../types';
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Claims starknet airdrop
|
|
8
|
+
*
|
|
9
|
+
* @category BasicActions
|
|
10
|
+
*/
|
|
11
|
+
export class StarknetClaimAction extends Action {
|
|
12
|
+
constructor(payload: Array<uint256>, gasPrice: uint256) {
|
|
13
|
+
super(
|
|
14
|
+
'StarknetClaim',
|
|
15
|
+
getAddr('StarknetClaim'),
|
|
16
|
+
[
|
|
17
|
+
'uint256[]',
|
|
18
|
+
'uint256',
|
|
19
|
+
],
|
|
20
|
+
[payload, gasPrice],
|
|
21
|
+
);
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
async getEthValue() {
|
|
25
|
+
return new Dec(this.args[1]).mul(4000).toString();
|
|
26
|
+
}
|
|
27
|
+
}
|
|
@@ -1,13 +1,16 @@
|
|
|
1
1
|
import { Action } from '../../Action';
|
|
2
2
|
import { getAddr } from '../../addresses';
|
|
3
3
|
import { EthAddress, uint256, bytes } from '../../types';
|
|
4
|
+
import { FlashLoanId } from './FlashLoanId';
|
|
4
5
|
|
|
5
6
|
/**
|
|
6
7
|
* Gets a flashloan from Aave v2
|
|
7
8
|
*
|
|
8
9
|
* @category Flashloans
|
|
9
10
|
*/
|
|
10
|
-
export class AaveV2FlashLoanAction extends Action {
|
|
11
|
+
export class AaveV2FlashLoanAction extends Action implements FlashLoanId {
|
|
12
|
+
public flashLoanId = 1;
|
|
13
|
+
|
|
11
14
|
/**
|
|
12
15
|
* @param loanAmounts
|
|
13
16
|
* @param tokens
|
|
@@ -16,7 +19,7 @@ export class AaveV2FlashLoanAction extends Action {
|
|
|
16
19
|
* @param flParamGetterAddr
|
|
17
20
|
* @param flParamGetterData
|
|
18
21
|
*/
|
|
19
|
-
constructor(tokens:Array<EthAddress>, loanAmounts:Array<uint256>, modes:Array<uint256>, loanPayer:EthAddress, flParamGetterAddr:EthAddress = getAddr('Empty'), flParamGetterData:bytes = []) {
|
|
22
|
+
constructor(tokens: Array<EthAddress>, loanAmounts: Array<uint256>, modes: Array<uint256>, loanPayer: EthAddress, flParamGetterAddr: EthAddress = getAddr('Empty'), flParamGetterData: bytes = []) {
|
|
20
23
|
super(
|
|
21
24
|
'FLAaveV2',
|
|
22
25
|
getAddr('FLAaveV2'),
|
|
@@ -24,4 +27,4 @@ export class AaveV2FlashLoanAction extends Action {
|
|
|
24
27
|
[tokens, loanAmounts, modes, loanPayer, flParamGetterAddr, flParamGetterData, []],
|
|
25
28
|
);
|
|
26
29
|
}
|
|
27
|
-
}
|
|
30
|
+
}
|
|
@@ -1,13 +1,16 @@
|
|
|
1
1
|
import { ActionWithL2 } from '../../ActionWithL2';
|
|
2
2
|
import { getAddr } from '../../addresses';
|
|
3
3
|
import { EthAddress, uint256, bytes } from '../../types';
|
|
4
|
+
import { FlashLoanId } from './FlashLoanId';
|
|
4
5
|
|
|
5
6
|
/**
|
|
6
7
|
* Gets a flashloan from Aave v3 with fee enabled
|
|
7
8
|
*
|
|
8
9
|
* @category Flashloans
|
|
9
10
|
*/
|
|
10
|
-
export class AaveV3FlashLoanAction extends ActionWithL2 {
|
|
11
|
+
export class AaveV3FlashLoanAction extends ActionWithL2 implements FlashLoanId {
|
|
12
|
+
public flashLoanId = 5;
|
|
13
|
+
|
|
11
14
|
/**
|
|
12
15
|
* @param loanAmounts
|
|
13
16
|
* @param tokens
|
|
@@ -16,7 +19,7 @@ export class AaveV3FlashLoanAction extends ActionWithL2 {
|
|
|
16
19
|
* @param flParamGetterAddr
|
|
17
20
|
* @param flParamGetterData
|
|
18
21
|
*/
|
|
19
|
-
constructor(tokens:Array<EthAddress>, loanAmounts:Array<uint256>, modes:Array<uint256>, loanPayer:EthAddress, flParamGetterAddr:EthAddress = getAddr('Empty'), flParamGetterData:bytes = []) {
|
|
22
|
+
constructor(tokens: Array<EthAddress>, loanAmounts: Array<uint256>, modes: Array<uint256>, loanPayer: EthAddress, flParamGetterAddr: EthAddress = getAddr('Empty'), flParamGetterData: bytes = []) {
|
|
20
23
|
super(
|
|
21
24
|
'FLAaveV3WithFee',
|
|
22
25
|
getAddr('FLAaveV3'),
|
|
@@ -24,4 +27,4 @@ export class AaveV3FlashLoanAction extends ActionWithL2 {
|
|
|
24
27
|
[tokens, loanAmounts, modes, loanPayer, flParamGetterAddr, flParamGetterData, []],
|
|
25
28
|
);
|
|
26
29
|
}
|
|
27
|
-
}
|
|
30
|
+
}
|
|
@@ -1,20 +1,23 @@
|
|
|
1
1
|
import { Action } from '../../Action';
|
|
2
2
|
import { getAddr } from '../../addresses';
|
|
3
3
|
import { EthAddress, uint256, bytes } from '../../types';
|
|
4
|
+
import { FlashLoanId } from './FlashLoanId';
|
|
4
5
|
|
|
5
6
|
/**
|
|
6
7
|
* Gets a flashloan from Balancer
|
|
7
8
|
*
|
|
8
9
|
* @category Flashloans
|
|
9
10
|
*/
|
|
10
|
-
export class BalancerFlashLoanAction extends Action {
|
|
11
|
+
export class BalancerFlashLoanAction extends Action implements FlashLoanId {
|
|
12
|
+
public flashLoanId = 2;
|
|
13
|
+
|
|
11
14
|
/**
|
|
12
15
|
* @param tokens
|
|
13
16
|
* @param amounts
|
|
14
17
|
* @param flParamGetterAddr
|
|
15
18
|
* @param flParamGetterData
|
|
16
19
|
*/
|
|
17
|
-
constructor(tokens:Array<EthAddress>, amounts:Array<uint256>, flParamGetterAddr:EthAddress = getAddr('Empty'), flParamGetterData:bytes = []) {
|
|
20
|
+
constructor(tokens: Array<EthAddress>, amounts: Array<uint256>, flParamGetterAddr: EthAddress = getAddr('Empty'), flParamGetterData: bytes = []) {
|
|
18
21
|
super(
|
|
19
22
|
'FLBalancer',
|
|
20
23
|
getAddr('FLBalancer'),
|
|
@@ -22,4 +25,4 @@ export class BalancerFlashLoanAction extends Action {
|
|
|
22
25
|
[tokens, amounts, [], getAddr('Empty'), flParamGetterAddr, flParamGetterData, []],
|
|
23
26
|
);
|
|
24
27
|
}
|
|
25
|
-
}
|
|
28
|
+
}
|
|
@@ -1,53 +1,33 @@
|
|
|
1
1
|
import { Action } from '../../Action';
|
|
2
2
|
import { getAddr } from '../../addresses';
|
|
3
|
-
|
|
3
|
+
import { FlashLoanId } from './FlashLoanId';
|
|
4
|
+
import { ActionWithL2 } from '../../ActionWithL2';
|
|
4
5
|
/**
|
|
5
6
|
* Gets a specific FL action
|
|
6
7
|
*
|
|
7
8
|
* @category Flashloans
|
|
8
9
|
*/
|
|
10
|
+
type SpecificFlashLoanAction = (Action & FlashLoanId) | (ActionWithL2 & FlashLoanId);
|
|
11
|
+
|
|
9
12
|
export class FLAction extends Action {
|
|
10
13
|
/**
|
|
11
14
|
* @param specificFLAction - FL Action to be used
|
|
12
15
|
*/
|
|
13
|
-
#handleArgs(specificFLAction:
|
|
16
|
+
#handleArgs(specificFLAction: SpecificFlashLoanAction) {
|
|
14
17
|
const argsToReturn = [
|
|
15
18
|
specificFLAction.args[0],
|
|
16
19
|
specificFLAction.args[1],
|
|
17
20
|
specificFLAction.args[2],
|
|
18
21
|
specificFLAction.args[3],
|
|
19
22
|
getAddr('Empty'),
|
|
20
|
-
[],
|
|
23
|
+
[specificFLAction.flashLoanId],
|
|
21
24
|
specificFLAction.args[6],
|
|
22
25
|
];
|
|
23
|
-
|
|
24
|
-
argsToReturn[5] = [1];
|
|
25
|
-
}
|
|
26
|
-
if (specificFLAction.constructor.name === 'BalancerFlashLoanAction') {
|
|
27
|
-
argsToReturn[5] = [2];
|
|
28
|
-
}
|
|
29
|
-
if (specificFLAction.constructor.name === 'GhoFlashLoanAction') {
|
|
30
|
-
argsToReturn[5] = [3];
|
|
31
|
-
}
|
|
32
|
-
if (specificFLAction.constructor.name === 'MakerFlashLoanAction') {
|
|
33
|
-
argsToReturn[5] = [4];
|
|
34
|
-
}
|
|
35
|
-
if (specificFLAction.constructor.name === 'AaveV3FlashLoanAction') {
|
|
36
|
-
argsToReturn[5] = [5];
|
|
37
|
-
}
|
|
38
|
-
if (specificFLAction.constructor.name === 'UniV3FlashLoanAction') {
|
|
39
|
-
argsToReturn[5] = [6];
|
|
40
|
-
}
|
|
41
|
-
if (specificFLAction.constructor.name === 'SparkFlashLoanAction') {
|
|
42
|
-
argsToReturn[5] = [7];
|
|
43
|
-
}
|
|
44
|
-
if (specificFLAction.constructor.name === 'MorphoBlueFlashLoanAction') {
|
|
45
|
-
argsToReturn[5] = [8];
|
|
46
|
-
}
|
|
26
|
+
|
|
47
27
|
return argsToReturn;
|
|
48
28
|
}
|
|
49
29
|
|
|
50
|
-
constructor(specificFLAction:
|
|
30
|
+
constructor(specificFLAction: SpecificFlashLoanAction) {
|
|
51
31
|
super(
|
|
52
32
|
'FLAction',
|
|
53
33
|
getAddr('FLAction'),
|
|
@@ -1,19 +1,22 @@
|
|
|
1
1
|
import { Action } from '../../Action';
|
|
2
2
|
import { getAddr } from '../../addresses';
|
|
3
3
|
import { EthAddress, uint256, bytes } from '../../types';
|
|
4
|
+
import { FlashLoanId } from './FlashLoanId';
|
|
4
5
|
|
|
5
6
|
/**
|
|
6
7
|
* Gets a GHO flashloan from GHO Flash Minter
|
|
7
8
|
*
|
|
8
9
|
* @category Flashloans
|
|
9
10
|
*/
|
|
10
|
-
export class GhoFlashLoanAction extends Action {
|
|
11
|
+
export class GhoFlashLoanAction extends Action implements FlashLoanId {
|
|
12
|
+
public flashLoanId = 3;
|
|
13
|
+
|
|
11
14
|
/**
|
|
12
15
|
* @param amount
|
|
13
16
|
* @param flParamGetterAddr
|
|
14
17
|
* @param flParamGetterData
|
|
15
18
|
*/
|
|
16
|
-
constructor(amount:uint256, flParamGetterAddr:EthAddress = getAddr('Empty'), flParamGetterData:bytes = []) {
|
|
19
|
+
constructor(amount: uint256, flParamGetterAddr: EthAddress = getAddr('Empty'), flParamGetterData: bytes = []) {
|
|
17
20
|
super(
|
|
18
21
|
'FLGho',
|
|
19
22
|
getAddr('FLGho'),
|
|
@@ -21,4 +24,4 @@ export class GhoFlashLoanAction extends Action {
|
|
|
21
24
|
[[], [amount], [], getAddr('Empty'), flParamGetterAddr, flParamGetterData, []],
|
|
22
25
|
);
|
|
23
26
|
}
|
|
24
|
-
}
|
|
27
|
+
}
|
|
@@ -1,19 +1,22 @@
|
|
|
1
1
|
import { Action } from '../../Action';
|
|
2
2
|
import { getAddr } from '../../addresses';
|
|
3
3
|
import { EthAddress, uint256, bytes } from '../../types';
|
|
4
|
+
import { FlashLoanId } from './FlashLoanId';
|
|
4
5
|
|
|
5
6
|
/**
|
|
6
7
|
* Gets a flashloan from Maker
|
|
7
8
|
*
|
|
8
9
|
* @category Flashloans
|
|
9
10
|
*/
|
|
10
|
-
export class MakerFlashLoanAction extends Action {
|
|
11
|
+
export class MakerFlashLoanAction extends Action implements FlashLoanId {
|
|
12
|
+
public flashLoanId = 4;
|
|
13
|
+
|
|
11
14
|
/**
|
|
12
15
|
* @param amount
|
|
13
16
|
* @param flParamGetterAddr
|
|
14
17
|
* @param flParamGetterData
|
|
15
18
|
*/
|
|
16
|
-
constructor(amount:uint256, flParamGetterAddr:EthAddress = getAddr('Empty'), flParamGetterData:bytes = []) {
|
|
19
|
+
constructor(amount: uint256, flParamGetterAddr: EthAddress = getAddr('Empty'), flParamGetterData: bytes = []) {
|
|
17
20
|
super(
|
|
18
21
|
'FLMaker',
|
|
19
22
|
getAddr('FLMaker'),
|
|
@@ -21,4 +24,4 @@ export class MakerFlashLoanAction extends Action {
|
|
|
21
24
|
[[], [amount], [], getAddr('Empty'), flParamGetterAddr, flParamGetterData, []],
|
|
22
25
|
);
|
|
23
26
|
}
|
|
24
|
-
}
|
|
27
|
+
}
|
|
@@ -1,20 +1,23 @@
|
|
|
1
1
|
import { Action } from '../../Action';
|
|
2
2
|
import { getAddr } from '../../addresses';
|
|
3
3
|
import { EthAddress, uint256, bytes } from '../../types';
|
|
4
|
+
import { FlashLoanId } from './FlashLoanId';
|
|
4
5
|
|
|
5
6
|
/**
|
|
6
7
|
* Gets a flashloan from MorphoBlue
|
|
7
8
|
*
|
|
8
9
|
* @category Flashloans
|
|
9
10
|
*/
|
|
10
|
-
export class MorphoBlueFlashLoanAction extends Action {
|
|
11
|
+
export class MorphoBlueFlashLoanAction extends Action implements FlashLoanId {
|
|
12
|
+
public flashLoanId = 8;
|
|
13
|
+
|
|
11
14
|
/**
|
|
12
15
|
* @param token
|
|
13
16
|
* @param amount
|
|
14
17
|
* @param flParamGetterAddr
|
|
15
18
|
* @param flParamGetterData
|
|
16
19
|
*/
|
|
17
|
-
constructor(token:EthAddress, amount:uint256, flParamGetterAddr:EthAddress = getAddr('Empty'), flParamGetterData:bytes = []) {
|
|
20
|
+
constructor(token: EthAddress, amount: uint256, flParamGetterAddr: EthAddress = getAddr('Empty'), flParamGetterData: bytes = []) {
|
|
18
21
|
super(
|
|
19
22
|
'FLMorphoBlue',
|
|
20
23
|
getAddr('FLMorphoBlue'),
|
|
@@ -22,4 +25,4 @@ export class MorphoBlueFlashLoanAction extends Action {
|
|
|
22
25
|
[[token], [amount], [], getAddr('Empty'), flParamGetterAddr, flParamGetterData, []],
|
|
23
26
|
);
|
|
24
27
|
}
|
|
25
|
-
}
|
|
28
|
+
}
|
|
@@ -1,13 +1,16 @@
|
|
|
1
1
|
import { ActionWithL2 } from '../../ActionWithL2';
|
|
2
2
|
import { getAddr } from '../../addresses';
|
|
3
3
|
import { EthAddress, uint256, bytes } from '../../types';
|
|
4
|
+
import { FlashLoanId } from './FlashLoanId';
|
|
4
5
|
|
|
5
6
|
/**
|
|
6
7
|
* Gets a flashloan from Spark with fee enabled
|
|
7
8
|
*
|
|
8
9
|
* @category Flashloans
|
|
9
10
|
*/
|
|
10
|
-
export class SparkFlashLoanAction extends ActionWithL2 {
|
|
11
|
+
export class SparkFlashLoanAction extends ActionWithL2 implements FlashLoanId {
|
|
12
|
+
public flashLoanId = 7;
|
|
13
|
+
|
|
11
14
|
/**
|
|
12
15
|
* @param loanAmounts
|
|
13
16
|
* @param tokens
|
|
@@ -16,7 +19,7 @@ export class SparkFlashLoanAction extends ActionWithL2 {
|
|
|
16
19
|
* @param flParamGetterAddr
|
|
17
20
|
* @param flParamGetterData
|
|
18
21
|
*/
|
|
19
|
-
constructor(tokens:Array<EthAddress>, loanAmounts:Array<uint256>, modes:Array<uint256>, loanPayer:EthAddress, flParamGetterAddr:EthAddress = getAddr('Empty'), flParamGetterData:bytes = []) {
|
|
22
|
+
constructor(tokens: Array<EthAddress>, loanAmounts: Array<uint256>, modes: Array<uint256>, loanPayer: EthAddress, flParamGetterAddr: EthAddress = getAddr('Empty'), flParamGetterData: bytes = []) {
|
|
20
23
|
super(
|
|
21
24
|
'FLSpark',
|
|
22
25
|
getAddr('FLSpark'),
|
|
@@ -24,4 +27,4 @@ export class SparkFlashLoanAction extends ActionWithL2 {
|
|
|
24
27
|
[tokens, loanAmounts, modes, loanPayer, flParamGetterAddr, flParamGetterData, []],
|
|
25
28
|
);
|
|
26
29
|
}
|
|
27
|
-
}
|
|
30
|
+
}
|
|
@@ -1,13 +1,16 @@
|
|
|
1
1
|
import { Action } from '../../Action';
|
|
2
2
|
import { getAddr } from '../../addresses';
|
|
3
3
|
import { EthAddress, uint256, bytes } from '../../types';
|
|
4
|
+
import { FlashLoanId } from './FlashLoanId';
|
|
4
5
|
|
|
5
6
|
/**
|
|
6
7
|
* Gets a flashloan from UniV3 pool
|
|
7
8
|
*
|
|
8
9
|
* @category Flashloans
|
|
9
10
|
*/
|
|
10
|
-
export class UniV3FlashLoanAction extends Action {
|
|
11
|
+
export class UniV3FlashLoanAction extends Action implements FlashLoanId {
|
|
12
|
+
public flashLoanId = 6;
|
|
13
|
+
|
|
11
14
|
/**
|
|
12
15
|
* @param token0
|
|
13
16
|
* @param token1
|
|
@@ -17,7 +20,7 @@ export class UniV3FlashLoanAction extends Action {
|
|
|
17
20
|
* @param flParamGetterAddr
|
|
18
21
|
* @param flParamGetterData
|
|
19
22
|
*/
|
|
20
|
-
constructor(token0:EthAddress, token1:EthAddress, pool:EthAddress, amount0:uint256, amount1:uint256, flParamGetterAddr:EthAddress = getAddr('Empty'), flParamGetterData:bytes = []) {
|
|
23
|
+
constructor(token0: EthAddress, token1: EthAddress, pool: EthAddress, amount0: uint256, amount1: uint256, flParamGetterAddr: EthAddress = getAddr('Empty'), flParamGetterData: bytes = []) {
|
|
21
24
|
super(
|
|
22
25
|
'FLUniV3',
|
|
23
26
|
getAddr('FLUniV3'),
|
|
@@ -25,4 +28,4 @@ export class UniV3FlashLoanAction extends Action {
|
|
|
25
28
|
[[token0, token1, pool], [amount0, amount1], [], getAddr('Empty'), flParamGetterAddr, flParamGetterData, []],
|
|
26
29
|
);
|
|
27
30
|
}
|
|
28
|
-
}
|
|
31
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { ActionWithL2 } from '../../ActionWithL2';
|
|
2
|
+
import { getAddr } from '../../addresses';
|
|
3
|
+
import {
|
|
4
|
+
EthAddress, uint8, uint16, uint256,
|
|
5
|
+
bytes32,
|
|
6
|
+
} from '../../types';
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* SparkDelegateWithSigCredit - Delegate credit on someone elses behalf with their signature
|
|
10
|
+
*
|
|
11
|
+
* @category Spark
|
|
12
|
+
*/
|
|
13
|
+
export class SparkDelegateWithSigCredit extends ActionWithL2 {
|
|
14
|
+
constructor(debtToken: EthAddress, delegator: EthAddress, delegatee: EthAddress, value: uint256, deadline: uint256, v: uint8, r: bytes32, s: bytes32) {
|
|
15
|
+
super('SparkDelegateWithSig', getAddr('SparkDelegateWithSig'),
|
|
16
|
+
['address', 'address', 'address', 'uint256', 'uint256', 'uint8', 'bytes32', 'bytes32'],
|
|
17
|
+
[debtToken, delegator, delegatee, value, deadline, v, r, s],
|
|
18
|
+
);
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
encodeInputs() {
|
|
22
|
+
// executeActionDirectL2
|
|
23
|
+
let encodedInput = '0x2895f3aa';
|
|
24
|
+
// debtToken
|
|
25
|
+
encodedInput = encodedInput.concat(this.addressToBytes20(this.args[0]));
|
|
26
|
+
// delegator
|
|
27
|
+
encodedInput = encodedInput.concat(this.addressToBytes20(this.args[1]));
|
|
28
|
+
// delegatee
|
|
29
|
+
encodedInput = encodedInput.concat(this.addressToBytes20(this.args[2]));
|
|
30
|
+
// value
|
|
31
|
+
encodedInput = encodedInput.concat(this.numberToBytes32(this.args[3]));
|
|
32
|
+
// deadline
|
|
33
|
+
encodedInput = encodedInput.concat(this.numberToBytes32(this.args[4]));
|
|
34
|
+
// v
|
|
35
|
+
encodedInput = encodedInput.concat(this.numberToBytes1(this.args[5]));
|
|
36
|
+
// r
|
|
37
|
+
encodedInput = encodedInput.concat(this.args[6].slice(2));
|
|
38
|
+
// s
|
|
39
|
+
encodedInput = encodedInput.concat(this.args[7].slice(2));
|
|
40
|
+
return encodedInput;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
@@ -7,4 +7,5 @@ export * from './SparkSpTokenPaybackAction';
|
|
|
7
7
|
export * from './SparkCollateralSwitchAction';
|
|
8
8
|
export * from './SparkClaimRewardsAction';
|
|
9
9
|
export * from './SparkSwapBorrowRateModeAction';
|
|
10
|
-
export * from './SparkDelegateCredit';
|
|
10
|
+
export * from './SparkDelegateCredit';
|
|
11
|
+
export * from './SparkDelegateWithSigAction';
|
package/src/addresses.ts
CHANGED
|
@@ -22,6 +22,8 @@ export const actionAddresses = {
|
|
|
22
22
|
SDaiWrap: '0xac7Ac294F29d818D26Bd9DF86d36904B1Ed346Ae',
|
|
23
23
|
SDaiUnwrap: '0xe8Cb536BB96075241c4bd8f1831A8577562F2B32',
|
|
24
24
|
TokenizedVaultAdapter: '0x3944364Ce3a273D269707484F3a676fCa17E08b8',
|
|
25
|
+
PermitToken: '0x2654056046ed5E3f673FbcBC99A1BDB77F5c460B',
|
|
26
|
+
StarknetClaim: '0x40069889098cd54d6c1021578000f37b197479cf',
|
|
25
27
|
|
|
26
28
|
// exchange
|
|
27
29
|
DFSSell: '0x8bfc99652358884AF965324e6A233014510F0CFc',
|
|
@@ -64,7 +66,7 @@ export const actionAddresses = {
|
|
|
64
66
|
// aave v3
|
|
65
67
|
AaveV3Withdraw: '0x9D4e4b26A5E2e6Dad30C5d95F5cE78A8310F04C2',
|
|
66
68
|
AaveV3SwapBorrowRateMode: '0x630F530Ac523C935cf2528E62D0A06F8900C5b1B',
|
|
67
|
-
AaveV3Supply: '
|
|
69
|
+
AaveV3Supply: '0x91b3fCCEA2f2e0622Cc1fb54E12f5ac5aAa55a87',
|
|
68
70
|
AaveV3SetEMode: '0xBe7F735d7955e0461579E34266f41F928AE06D78',
|
|
69
71
|
AaveV3Payback: '0xe29265217D65F5a2ae41972E09C13E107D049004',
|
|
70
72
|
AaveV3CollateralSwitch: '0x54A4d6cB567B2C6CDe4687c361b24fd912695DAb',
|
|
@@ -72,6 +74,7 @@ export const actionAddresses = {
|
|
|
72
74
|
AaveV3Borrow: '0x7079ba1Bd00EeFCD2a260BbD6D088230505e3858',
|
|
73
75
|
AaveV3ATokenPayback: '0xDe5c012cd1878D86E91309593764895a3adb380E',
|
|
74
76
|
AaveV3View: '0x9ECB0645b357fDD7B92789B91595160862Bd45d0',
|
|
77
|
+
AaveV3DelegateWithSig: '0x9253E22Ce4f0AeE541301CF8cC29843f9083a1F4',
|
|
75
78
|
|
|
76
79
|
// LSV action
|
|
77
80
|
LSVWithdraw: '0x0A4Ef5ADf759064b546441a50109eCbC2528A455',
|
|
@@ -101,10 +104,11 @@ export const actionAddresses = {
|
|
|
101
104
|
SparkPayback: '0x3a0F7Ca5cCf15aF19147F71de5fc84DC195f149f',
|
|
102
105
|
SparkSetEMode: '0x2252a83Da69A237686eD9AC07a38DDA74ec7cE5f',
|
|
103
106
|
SparkSpTokenPayback: '0x57403bB33A4829EBf5935D39eD08F19282F61d9c',
|
|
104
|
-
SparkSupply: '
|
|
107
|
+
SparkSupply: '0xcb4505a5ED92e405BF1F5cD7C791B15c4564AAe9',
|
|
105
108
|
SparkSwapBorrowRateMode: '0x71B0687C7ec0286dc3cfb715fe97249604aC898f',
|
|
106
109
|
SparkWithdraw: '0x1e3187D89e79B5c411D710E0fdF2709517852600',
|
|
107
110
|
SparkDelegateCredit: '0x0000000000000000000000000000000000000000',
|
|
111
|
+
SparkDelegateWithSig: '0xDaDC0a8B6359487257B91347064534c4B3fAc515',
|
|
108
112
|
|
|
109
113
|
// compound
|
|
110
114
|
CompBorrow: '0x8495579BF6Ae848f7E59686536F834f1d2CCd79C',
|
|
@@ -287,12 +291,13 @@ export const actionAddresses = {
|
|
|
287
291
|
PullToken: '0x392579E020a688068422A925c85f28bFD12a7EBB',
|
|
288
292
|
SumInputs: '0xd19C646Be027a7a04ea4201f116d43659b8b5f65',
|
|
289
293
|
SubInputs: '0x60d00020f12dd202eAfDba84e8F69E165a84c64D',
|
|
290
|
-
ApproveToken: '
|
|
294
|
+
ApproveToken: '0x842a81d2cfe26d401CD63Cc14e9DEf275c197C1a',
|
|
291
295
|
SendTokenAndUnwrap: '0xd4f69250cb4d1f083Dd372FEace391A16ABbfBDc',
|
|
292
296
|
ToggleSub: '0x988C5C24AE6348404196267e19962f36961CAc29',
|
|
293
297
|
TokenBalance: '0xC6FF5b01f7c7b35b6e093fF70D2332B361C5Be5A',
|
|
294
298
|
TokenizedVaultAdapter: '0xdf31669FEd440f5BfF658ca0bBF0D22B8abdeb73',
|
|
295
299
|
ChangeProxyOwner: '0x62769258ea8b3a85cc6fb4332fc2760a122dbc9e',
|
|
300
|
+
PermitToken: '0xE70c05125E7Cfe929f7ccC1baD348004aCF0f0d6',
|
|
296
301
|
|
|
297
302
|
// aave v3
|
|
298
303
|
AaveV3ATokenPayback: '0x71B27114D1777298bD46c3770C42F9f807C49847',
|
|
@@ -300,10 +305,11 @@ export const actionAddresses = {
|
|
|
300
305
|
AaveV3CollateralSwitch: '0x20D1388Ffa0A2D6ff6328AD014C67051542ca3a8',
|
|
301
306
|
AaveV3Payback: '0x88eb4050e89FecE4DF940109B0e58daF9B59e551',
|
|
302
307
|
AaveV3SetEMode: '0x7F264737066b9b7D9729Fe9715abB97423D8b35B',
|
|
303
|
-
AaveV3Supply: '
|
|
308
|
+
AaveV3Supply: '0x7e49bdf4690feef64cb341ca46d1e3b45233a683',
|
|
304
309
|
AaveV3SwapBorrowRateMode: '0xB8f0243b492f0e80feF5315Ba8692e7635481845',
|
|
305
310
|
AaveV3Withdraw: '0xf19d045f6cFc04A5Ee5E0e8837b565b9f276e3F7',
|
|
306
311
|
AaveV3ClaimRewards: '0xBE8e8cea67085F869C1C0040fD52F9F3115E962e',
|
|
312
|
+
AaveV3DelegateWithSig: '0x8dd05d32fB05E8c3e8F37294e6f2d13e5823a712',
|
|
307
313
|
AaveV3DelegateCredit: '0x0000000000000000000000000000000000000000',
|
|
308
314
|
|
|
309
315
|
// flashloan
|
|
@@ -347,10 +353,12 @@ export const actionAddresses = {
|
|
|
347
353
|
SumInputs: '0xc530f49c11e5946735df8bad41bc6a64d32b56bc',
|
|
348
354
|
SubInputs: '0x8ec14f9568e1d7cf73b68df899808abd7fe6fc8d',
|
|
349
355
|
SendTokenAndUnwrap: '0x009C5B1c7C844Bd662Da3991295b1B3Bd71a430c',
|
|
356
|
+
ApproveToken: '0x01058999F5Ac434EF48DFB5Cd942c57A7661787B',
|
|
350
357
|
ToggleSub: '0x71015226EADFd4aC887fB56556F64338e352439b',
|
|
351
358
|
TokenBalance: '0x483B903E702F60698Dd8124558C6199922737f1F',
|
|
352
359
|
TokenizedVaultAdapter: '0xD05C512bDFf6D3eAc5328807B3bC075F35271167',
|
|
353
360
|
ChangeProxyOwner: '0x29F66A5fcB601c806E7156f29FDEC771BdC9c08d',
|
|
361
|
+
PermitToken: '0x2E5E7a691092C158bb8341b936eF24FCcA6c0e00',
|
|
354
362
|
|
|
355
363
|
// aave v3
|
|
356
364
|
AaveV3ATokenPayback: '0x261906e5E0D0D38D9cBb5c10dB9c4031aabdf8C1',
|
|
@@ -358,10 +366,11 @@ export const actionAddresses = {
|
|
|
358
366
|
AaveV3CollateralSwitch: '0x7AcdD66C13f87b1cBcE7B106a8C34E426475BADd',
|
|
359
367
|
AaveV3Payback: '0xd88D5356e08dAd84E1576F89f4BF43C79a8BF0b2',
|
|
360
368
|
AaveV3SetEMode: '0x99D5068d9520316e8D3B5136c0B6EA33C5E0c27e',
|
|
361
|
-
AaveV3Supply: '
|
|
369
|
+
AaveV3Supply: '0xA2127f5C7E943c05B6a6A3a541557087F1F1287D',
|
|
362
370
|
AaveV3SwapBorrowRateMode: '0x738042389A8d6B0F6D6ab009c42dfF84ebB737C0',
|
|
363
371
|
AaveV3Withdraw: '0xbf492F869DdB1A18BB4F41b6c3059D9f882Fe7ff',
|
|
364
372
|
AaveV3ClaimRewards: '0x3a4d72Ed2a47a409a82ba61f0fca1C749Ea8aB66',
|
|
373
|
+
AaveV3DelegateWithSig: '0xFF2CE05250d1880f0f45ea8fB453292CABA42F12',
|
|
365
374
|
|
|
366
375
|
// CompV3
|
|
367
376
|
CompV3Allow: '0x0380E8e13CdE0499c720999930CaA07A5744887c',
|
|
@@ -411,10 +420,12 @@ export const actionAddresses = {
|
|
|
411
420
|
UnwrapEth: '0xcF91546046F16B3c38b890CC508E280BEffa66b9',
|
|
412
421
|
SendToken: '0x1420f4977E7B71AFddccBFc6F6e1505CefdF99F0',
|
|
413
422
|
PullToken: '0x5B0B7E38C2a8e46CfAe13c360BC5927570BeEe94',
|
|
423
|
+
ApproveToken: '0x24cb522be664b2a1ab9d37df7a3bded887566e18',
|
|
414
424
|
SumInputs: '0xC856ef8fe425B2EFe373e0e7038fAFF4a4f764fE',
|
|
415
425
|
SubInputs: '0xd244B1991Fcb8FC0f32FA55bce37714fc5929B95',
|
|
416
426
|
TokenBalance: '0xc44bcE580B1b3339fE9272D3bC3d6566083ea59C',
|
|
417
427
|
ChangeProxyOwner: '0x1947a44d3717a47556175d64fdc208619aa08874',
|
|
428
|
+
PermitToken: '0x57c8ae94a5A11dA33e0518054102488b604628D0',
|
|
418
429
|
|
|
419
430
|
// Flashloan
|
|
420
431
|
FLAaveV3: '0x79Eb9cEe432Cd3e7b09A9eFdB21A733A6d7b4c3A',
|
|
@@ -426,7 +437,7 @@ export const actionAddresses = {
|
|
|
426
437
|
// AaveV3
|
|
427
438
|
AaveV3Withdraw: '0x1d2Fa7dAcC660A9124c3685EE8a6E699d10409Eb',
|
|
428
439
|
AaveV3SwapBorrowRateMode: '0x9d1D7A0dD5e82cCe9CC131eC0C807B0F543be70e',
|
|
429
|
-
AaveV3Supply: '
|
|
440
|
+
AaveV3Supply: '0x4Df428298a204E4881D95611320b30938CB3facd',
|
|
430
441
|
AaveV3SetEMode: '0xdeF8B05Ce194D50C376233C9C5530027f6180442',
|
|
431
442
|
AaveV3Payback: '0x1A8B4DF4DE4274630A5c5a8E42Fa5F0DdF654ec2',
|
|
432
443
|
AaveV3CollateralSwitch: '0xFdfeA6469c537b19A334726E01621810bc49B929',
|
|
@@ -434,6 +445,7 @@ export const actionAddresses = {
|
|
|
434
445
|
AaveV3Borrow: '0x8C6eC1A4869e2B307Ee1667e1c18D5776b61CCe3',
|
|
435
446
|
AaveV3ATokenPayback: '0x3D57875885e3cEe9E56Cb65D21789893B6e67815',
|
|
436
447
|
AaveV3View: '0x125b8b832BD7F2EBD77Eef148A6319AdE751C44b',
|
|
448
|
+
AaveV3DelegateWithSig: '0x9e295AFaC75E7843b88a563D119FD953EDf441c2',
|
|
437
449
|
|
|
438
450
|
// CompV3
|
|
439
451
|
CompV3Allow: '0x3Fe56B85BBcD759459408Bd8434c37bac93e26bF',
|