@defisaver/sdk 1.0.67 → 1.0.69-dev-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.
- package/esm/src/actions/basic/ExecuteSafeTxAction.d.ts +23 -0
- package/esm/src/actions/basic/ExecuteSafeTxAction.js +60 -0
- package/esm/src/actions/basic/LimitSellAction.d.ts +24 -0
- package/esm/src/actions/basic/LimitSellAction.js +63 -0
- package/esm/src/actions/basic/RemoveTokenApprovalAction.d.ts +15 -0
- package/esm/src/actions/basic/RemoveTokenApprovalAction.js +42 -0
- package/esm/src/actions/basic/SellAction.js +1 -1
- package/esm/src/actions/basic/index.d.ts +3 -0
- package/esm/src/actions/basic/index.js +3 -0
- package/esm/src/actions/flashloan/FLAction.js +1 -1
- package/esm/src/actions/flashloan/FLPaybackAction.d.ts +14 -0
- package/esm/src/actions/flashloan/FLPaybackAction.js +16 -0
- package/esm/src/actions/flashloan/index.d.ts +1 -0
- package/esm/src/actions/flashloan/index.js +1 -0
- package/esm/src/actions/index.d.ts +2 -1
- package/esm/src/actions/index.js +2 -1
- package/esm/src/actions/merkl/MerklClaimAction.d.ts +19 -0
- package/esm/src/actions/merkl/MerklClaimAction.js +21 -0
- package/esm/src/actions/merkl/index.d.ts +1 -0
- package/esm/src/actions/merkl/index.js +1 -0
- package/esm/src/addresses.d.ts +19 -7
- package/esm/src/addresses.js +38 -22
- package/esm/src/index.d.ts +76 -28
- package/esm/src/triggers/CurveUsdHealthRatioTrigger.d.ts +10 -0
- package/esm/src/triggers/CurveUsdHealthRatioTrigger.js +12 -0
- package/esm/src/triggers/OffchainPriceTrigger.d.ts +10 -0
- package/esm/src/triggers/OffchainPriceTrigger.js +12 -0
- package/esm/src/triggers/index.d.ts +2 -0
- package/esm/src/triggers/index.js +2 -0
- package/package.json +1 -1
- package/src/actions/basic/ExecuteSafeTxAction.ts +85 -0
- package/src/actions/basic/LimitSellAction.ts +63 -0
- package/src/actions/basic/RemoveTokenApprovalAction.ts +39 -0
- package/src/actions/basic/SellAction.ts +2 -2
- package/src/actions/basic/index.ts +3 -0
- package/src/actions/flashloan/FLAction.ts +2 -2
- package/src/actions/flashloan/FLPaybackAction.ts +18 -0
- package/src/actions/flashloan/index.ts +2 -1
- package/src/actions/index.ts +2 -0
- package/src/actions/maker/MakerGiveAction.ts +1 -1
- package/src/actions/merkl/MerklClaimAction.ts +36 -0
- package/src/actions/merkl/index.ts +1 -0
- package/src/addresses.ts +39 -22
- package/src/triggers/CurveUsdHealthRatioTrigger.ts +14 -0
- package/src/triggers/OffchainPriceTrigger.ts +14 -0
- package/src/triggers/index.ts +2 -0
- package/umd/index.js +816 -510
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import AbiCoder from 'web3-eth-abi';
|
|
2
|
+
import { getAssetInfoByAddress } from '@defisaver/tokens';
|
|
3
|
+
import ActionAbi from '../../abis/Action.json';
|
|
4
|
+
import { ActionWithL2 } from '../../ActionWithL2';
|
|
5
|
+
import { requireAddress } from '../../utils/general';
|
|
6
|
+
import { getAddr } from '../../addresses';
|
|
7
|
+
import { EthAddress, uint256 } from '../../types';
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Limit sell action used as part of the LimitSell Strategy
|
|
11
|
+
*
|
|
12
|
+
* @category BasicActions
|
|
13
|
+
*/
|
|
14
|
+
export class LimitSellAction extends ActionWithL2 {
|
|
15
|
+
protocolFee:string;
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* @param exchangeOrder Standard DFS Exchange data
|
|
19
|
+
* @param from Order sender
|
|
20
|
+
* @param to Order recipient
|
|
21
|
+
* @param gasUsed Amount of gas spent as part of the strategy
|
|
22
|
+
* @param protocolFee 0x fee (amount of ETH in Wei)
|
|
23
|
+
*/
|
|
24
|
+
constructor(exchangeOrder:Array<any>, from:EthAddress, to:EthAddress, gasUsed: uint256, protocolFee = '0') {
|
|
25
|
+
requireAddress(to);
|
|
26
|
+
super(
|
|
27
|
+
'LimitSell',
|
|
28
|
+
getAddr('LimitSell'),
|
|
29
|
+
[
|
|
30
|
+
['address', 'address', 'uint256', 'uint256', 'uint256', 'uint256', 'address', 'address', 'bytes', ['address', 'address', 'address', 'uint256', 'uint256', 'bytes']],
|
|
31
|
+
'address',
|
|
32
|
+
'address',
|
|
33
|
+
'uint256',
|
|
34
|
+
],
|
|
35
|
+
[exchangeOrder, from, to, gasUsed],
|
|
36
|
+
);
|
|
37
|
+
|
|
38
|
+
this.protocolFee = protocolFee;
|
|
39
|
+
|
|
40
|
+
this.mappableArgs = [
|
|
41
|
+
this.args[0][0],
|
|
42
|
+
this.args[0][1],
|
|
43
|
+
this.args[0][2],
|
|
44
|
+
this.args[1],
|
|
45
|
+
this.args[2],
|
|
46
|
+
];
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
encodeInputs() {
|
|
50
|
+
const executeActionDirectAbi: any = (ActionAbi.find(({ name }) => name === 'executeActionDirect'))!;
|
|
51
|
+
return AbiCoder.encodeFunctionCall(executeActionDirectAbi, this._encodeForCall());
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
async getAssetsToApprove() {
|
|
55
|
+
const asset = getAssetInfoByAddress(this.args[0][0]);
|
|
56
|
+
if (asset.symbol !== 'ETH') return [{ asset: this.args[0][0], owner: this.args[1] }];
|
|
57
|
+
return [];
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
async getEthValue() {
|
|
61
|
+
return this.protocolFee || '0';
|
|
62
|
+
}
|
|
63
|
+
}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { requireAddress } from '../../utils/general';
|
|
2
|
+
import { Action } from '../../Action';
|
|
3
|
+
import { getAddr } from '../../addresses';
|
|
4
|
+
import { EthAddress, uint256 } from '../../types';
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Remove approval for a spender to pull tokens from user wallet
|
|
8
|
+
*
|
|
9
|
+
* @category BasicActions
|
|
10
|
+
*/
|
|
11
|
+
export class RemoveTokenApprovalAction extends Action {
|
|
12
|
+
/**
|
|
13
|
+
* @param token Token address
|
|
14
|
+
* @param spender Spender address
|
|
15
|
+
*/
|
|
16
|
+
constructor(token:EthAddress, spender:EthAddress) {
|
|
17
|
+
requireAddress(spender);
|
|
18
|
+
super(
|
|
19
|
+
'RemoveTokenApproval',
|
|
20
|
+
getAddr('RemoveTokenApproval'),
|
|
21
|
+
[
|
|
22
|
+
'address',
|
|
23
|
+
'address',
|
|
24
|
+
],
|
|
25
|
+
[
|
|
26
|
+
token,
|
|
27
|
+
spender,
|
|
28
|
+
],
|
|
29
|
+
);
|
|
30
|
+
this.mappableArgs = [
|
|
31
|
+
this.args[0],
|
|
32
|
+
this.args[1],
|
|
33
|
+
];
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
async getAssetsToApprove() {
|
|
37
|
+
return [];
|
|
38
|
+
}
|
|
39
|
+
}
|
|
@@ -23,8 +23,8 @@ export class SellAction extends ActionWithL2 {
|
|
|
23
23
|
constructor(exchangeOrder:Array<any>, from:EthAddress, to:EthAddress, protocolFee = '0') {
|
|
24
24
|
requireAddress(to);
|
|
25
25
|
super(
|
|
26
|
-
'
|
|
27
|
-
getAddr('
|
|
26
|
+
'DFSSellTEMP',
|
|
27
|
+
getAddr('DFSSellTEMP'),
|
|
28
28
|
[
|
|
29
29
|
['address', 'address', 'uint256', 'uint256', 'uint256', 'uint256', 'address', 'address', 'bytes', ['address', 'address', 'address', 'uint256', 'uint256', 'bytes']],
|
|
30
30
|
'address',
|
|
@@ -24,3 +24,6 @@ export * from './TokenizedVaultAdapterDepositAction';
|
|
|
24
24
|
export * from './TokenizedVaultAdapterMintAction';
|
|
25
25
|
export * from './TokenizedVaultAdapterRedeemAction';
|
|
26
26
|
export * from './TokenizedVaultAdapterWithdrawAction';
|
|
27
|
+
export * from './LimitSellAction';
|
|
28
|
+
export * from './ExecuteSafeTxAction';
|
|
29
|
+
export * from './RemoveTokenApprovalAction';
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { SendTokenAction } from '../basic';
|
|
2
|
+
import { getAddr } from '../../addresses';
|
|
3
|
+
import { EthAddress, uint256 } from '../../types';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Generalized Flashloan Payback
|
|
7
|
+
*
|
|
8
|
+
* @category Flashloans
|
|
9
|
+
*/
|
|
10
|
+
export class FLPaybackAction extends SendTokenAction {
|
|
11
|
+
/**
|
|
12
|
+
* @param loanAmount
|
|
13
|
+
* @param tokenAddr
|
|
14
|
+
*/
|
|
15
|
+
constructor(loanAmount: uint256, tokenAddr: EthAddress) {
|
|
16
|
+
super(tokenAddr, getAddr('FLActionTEMP'), loanAmount);
|
|
17
|
+
}
|
|
18
|
+
}
|
|
@@ -21,4 +21,5 @@ export * from './UniV3FlashLoanPaybackAction';
|
|
|
21
21
|
export * from './GhoFlashLoanAction';
|
|
22
22
|
export * from './GhoFlashLoanPaybackAction';
|
|
23
23
|
export * from './MorphoBlueFlashLoanAction';
|
|
24
|
-
export * from './MorphoBlueFlashLoanPaybackAction';
|
|
24
|
+
export * from './MorphoBlueFlashLoanPaybackAction';
|
|
25
|
+
export * from './FLPaybackAction';
|
package/src/actions/index.ts
CHANGED
|
@@ -28,6 +28,7 @@ import * as curveusd from './curveusd';
|
|
|
28
28
|
import * as spark from './spark';
|
|
29
29
|
import * as morphoblue from './morpho-blue';
|
|
30
30
|
import * as llamalend from './llamalend';
|
|
31
|
+
import * as merkl from './merkl';
|
|
31
32
|
|
|
32
33
|
export {
|
|
33
34
|
aave,
|
|
@@ -60,4 +61,5 @@ export {
|
|
|
60
61
|
curveusd,
|
|
61
62
|
morphoblue,
|
|
62
63
|
llamalend,
|
|
64
|
+
merkl,
|
|
63
65
|
};
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { Action } from '../../Action';
|
|
2
|
+
import { getAddr } from '../../addresses';
|
|
3
|
+
import { EthAddress, uint256, bytes32 } from '../../types';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* MerklClaimAction - Claim Merkl rewards
|
|
7
|
+
*
|
|
8
|
+
* @category Merkl
|
|
9
|
+
*/
|
|
10
|
+
export class MerklClaimAction extends Action {
|
|
11
|
+
/**
|
|
12
|
+
* @param users - Array filled with smart wallet addresses for each claim
|
|
13
|
+
* @param tokens - Token that is being claimed
|
|
14
|
+
* @param amounts - Amount that is being claimed
|
|
15
|
+
* @param proofs - Array of merkle proofs
|
|
16
|
+
* @param distinctTokens - Distinct tokens that are claimed inside one claim call
|
|
17
|
+
* @param amountsClaimedPerDistinctToken - Sum of amounts per distinct token being claimed
|
|
18
|
+
* @param to - Address which will receive claimed tokens
|
|
19
|
+
*/
|
|
20
|
+
constructor(
|
|
21
|
+
users:Array<EthAddress>,
|
|
22
|
+
tokens:Array<EthAddress>,
|
|
23
|
+
amounts:Array<uint256>,
|
|
24
|
+
proofs:Array<Array<bytes32>>,
|
|
25
|
+
distinctTokens:Array<EthAddress>,
|
|
26
|
+
amountsClaimedPerDistinctToken:Array<uint256>,
|
|
27
|
+
to:EthAddress,
|
|
28
|
+
) {
|
|
29
|
+
super(
|
|
30
|
+
'MerklClaim',
|
|
31
|
+
getAddr('MerklClaim'),
|
|
32
|
+
['address[]', 'address[]', 'uint256[]', 'bytes32[][]', 'address[]', 'uint256[]', 'address'],
|
|
33
|
+
[users, tokens, amounts, proofs, distinctTokens, amountsClaimedPerDistinctToken, to],
|
|
34
|
+
);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './MerklClaimAction';
|
package/src/addresses.ts
CHANGED
|
@@ -7,17 +7,17 @@ export const actionAddresses = {
|
|
|
7
7
|
WrapEth: '0x8EbBd35f84D7f0DFCBEf08fD30CD09176133251A',
|
|
8
8
|
UnwrapEth: '0xDB6C8cFDd7c1C0F8895CDBC01Dbf4A6D4B6d2a29',
|
|
9
9
|
PullToken: '0x254cA89a00d53ab61de2Ba5641DBDC01aE48aed4',
|
|
10
|
-
SendToken: '
|
|
10
|
+
SendToken: '0x5c19aF6F5de91209c3bc2Ba447b1f5eb53c50759',
|
|
11
11
|
SumInputs: '0x70907d840aBBc984Fd949311d2f005e6aC4a4D7a',
|
|
12
12
|
SubInputs: '0xe1804b756188F63f723d2FECc02988D0Cc1aB823',
|
|
13
13
|
ChangeProxyOwner: '0x81cA52CfE66421d0ceF82d5F33230e43b5F23D2B',
|
|
14
14
|
TokenBalance: '0xa92B177950F1460119940436515FD857C24494BC',
|
|
15
15
|
AutomationV2Unsub: '0xe35Fb12fE9796847751076aCf5ee7d124108612C',
|
|
16
|
-
SendTokenAndUnwrap: '
|
|
16
|
+
SendTokenAndUnwrap: '0x4155537e6933E59a62deb68f6ad93d237d07242a',
|
|
17
17
|
ToggleSub: '0x9A78E9d6538cfDbA0242Ca5eC46771E6132E8085',
|
|
18
18
|
UpdateSub: '0xF6Cb8f7e61a64075ec8FAC3f298745605E543233',
|
|
19
19
|
TransferNFT: '0x861e893E1796F81248e75F06C0b09Abdc8fe2f6F',
|
|
20
|
-
CreateSub: '
|
|
20
|
+
CreateSub: '0xEB13C96257667cF0A037305A46092bf7C70A61e1',
|
|
21
21
|
ApproveToken: '0xA4161cED7A29F0a3424e464a4a2dBf75888c5BF9',
|
|
22
22
|
SDaiWrap: '0xac7Ac294F29d818D26Bd9DF86d36904B1Ed346Ae',
|
|
23
23
|
SDaiUnwrap: '0xe8Cb536BB96075241c4bd8f1831A8577562F2B32',
|
|
@@ -25,6 +25,7 @@ export const actionAddresses = {
|
|
|
25
25
|
|
|
26
26
|
// exchange
|
|
27
27
|
DFSSell: '0x951D7B421f45FF0e4A8ddE0288aE3f9C2C69b784',
|
|
28
|
+
DFSSellTEMP: '0x8bfc99652358884AF965324e6A233014510F0CFc',
|
|
28
29
|
|
|
29
30
|
// maker
|
|
30
31
|
McdGenerate: '0xCb50a91C0f12f439b8bf11E9474B9c1ED62Bf7a3',
|
|
@@ -119,10 +120,11 @@ export const actionAddresses = {
|
|
|
119
120
|
FLAaveV3CarryDebt: '0x7BdD8ACE8a48B7032Df68B7f53E0D6D9Ea9411A7',
|
|
120
121
|
FLAaveV3: '0x5021d70aB7D757D61E0230c472ff89b8B2B8705e',
|
|
121
122
|
FLDyDx: '0x08AC78B418fCB0DDF1096533856A757C28d430d7',
|
|
122
|
-
FLMaker: '
|
|
123
|
-
FLBalancer: '
|
|
123
|
+
FLMaker: '0x0f8C3368cADF78167F5355D746Ed7b2A826A6e3b',
|
|
124
|
+
FLBalancer: '0x93d333930c7f7260a1E6061B0a8C0CbdEC95F367',
|
|
124
125
|
FLSpark: '0xe9Fe5a0f5e4B370Ae60d837da58744666D5C06F7',
|
|
125
|
-
FLAction: '
|
|
126
|
+
FLAction: '0xC2b92B6c69e5c3b6b29385C1a17FEe906e0CA910', // temp fixed
|
|
127
|
+
FLActionTEMP: '0xC2b92B6c69e5c3b6b29385C1a17FEe906e0CA910',
|
|
126
128
|
FLUniV3: '0x9CAdAC8Be718572F82B672b950c53F0b58483A35',
|
|
127
129
|
FLGho: '0xbb67b81dD080a406227A38965d0393f396ddECBc',
|
|
128
130
|
FLMorphoBlue: '0x6206C96EAc5EAC546861438A9f953B6BEa50EBAB',
|
|
@@ -226,22 +228,22 @@ export const actionAddresses = {
|
|
|
226
228
|
FetchBondId: '0xA3331A6aE1BC901b8136E6Fe622890B3Fa3dC80e',
|
|
227
229
|
// CompV3
|
|
228
230
|
CompV3Allow: '0xC4a80f22bf56E0dFa2CB378561B934F41E14bc9f',
|
|
229
|
-
CompV3Borrow: '
|
|
231
|
+
CompV3Borrow: '0xd3e87D6b69d09527624919d6d68868331Ae39Df6',
|
|
230
232
|
CompV3Claim: '0x4CEa369B63daAc0dA3423c5038a57483c5150986',
|
|
231
|
-
CompV3Payback: '
|
|
232
|
-
CompV3Supply: '
|
|
233
|
+
CompV3Payback: '0xC825e06333a1d0F72334d2D929Ef4D9eb928D691',
|
|
234
|
+
CompV3Supply: '0xcc073e12fE8d8035389954Bf2BF6C3AAcaDaDC39',
|
|
233
235
|
CompV3Transfer: '0xeD7450e9C17146476137b77198DFfB17857906c4',
|
|
234
|
-
CompV3Withdraw: '
|
|
236
|
+
CompV3Withdraw: '0xf1406deC224750CEfA709e4bcA6a3a3f458F0f7B',
|
|
235
237
|
|
|
236
238
|
// crvUSD
|
|
237
239
|
CurveUsdBorrow: '0x2512A976227a82Ef0F6bDdb463cBcD5B732596BF',
|
|
238
240
|
CurveUsdCreate: '0x715B40970dac1cfAf0bB85C4Fe64921b44b3f73e',
|
|
239
|
-
CurveUsdPayback: '
|
|
241
|
+
CurveUsdPayback: '0x3Aa0F8Ff9419Cd5f6e73F3274b8bF86965Cd282c',
|
|
240
242
|
CurveUsdSupply: '0xa55B3CE5ae7E59002f53b2153ABe326823ccCDE2',
|
|
241
243
|
CurveUsdAdjust: '0x6f69A7d0B1BE7602381d9cCE6B29F05B9D0b85e6',
|
|
242
244
|
CurveUsdWithdraw: '0x54B8D984fc79B000D7B6F6E0f52CD054E965120f',
|
|
243
245
|
CurveUsdLevCreate: '0xcbd9aFc2b7532b9eeB3A7EC4ea8Bb4320795d9Ad',
|
|
244
|
-
CurveUsdRepay: '
|
|
246
|
+
CurveUsdRepay: '0x6F91E8671d17ecEE3D3fb17DcCA87E86B8D83807',
|
|
245
247
|
CurveUsdSwapper: '0xFA8c594b903651F97b27aCADEa83b720cfD7F80b',
|
|
246
248
|
CurveUsdSelfLiquidate: '0xd90d8a4955DfE9D4f45F7f60595313B0925ee1da',
|
|
247
249
|
CurveUsdSelfLiquidateWithColl: '0x7cE305FC2A18c6820a533AD418dC0A549aFeDcAF',
|
|
@@ -265,17 +267,22 @@ export const actionAddresses = {
|
|
|
265
267
|
LlamaLendWithdraw: '0x2593Da3c4110C531541424e9e847cd7905894C52',
|
|
266
268
|
LlamaLendPayback: '0x5b506b7a0117dbcd086632575da599bb603eb602',
|
|
267
269
|
LlamaLendSelfLiquidate: '0xe4944e0e46177300fa4c351ef72b95b9655e8394',
|
|
270
|
+
|
|
271
|
+
MerklClaim: '0xE88036F3F0D7e216D63726356cA2bC334e305fe5',
|
|
268
272
|
},
|
|
269
273
|
[NETWORKS.optimism.chainId]: {
|
|
270
274
|
DFSSell: '0xC6c601fcAa870efd26C624F8c65fbc54cBe533b1',
|
|
275
|
+
DFSSellTEMP: '0x01f7DB086076a16Cebd940A95919Af088C0662FD',
|
|
271
276
|
|
|
272
277
|
// basic
|
|
273
278
|
WrapEth: '0x6D735db054AC4a1F10f96b99f8550E9eefbC2AC5',
|
|
274
279
|
UnwrapEth: '0x1Fa75B00A05C2EbBd0EDF253a63c209966337A0d',
|
|
275
|
-
SendToken: '
|
|
280
|
+
SendToken: '0xA9ae6D43C259697384AdAC38bA3c7b76Bff56408',
|
|
276
281
|
PullToken: '0x392579E020a688068422A925c85f28bFD12a7EBB',
|
|
282
|
+
SumInputs: '0xd19C646Be027a7a04ea4201f116d43659b8b5f65',
|
|
283
|
+
SubInputs: '0x60d00020f12dd202eAfDba84e8F69E165a84c64D',
|
|
277
284
|
ApproveToken: '0xA4161cED7A29F0a3424e464a4a2dBf75888c5BF9',
|
|
278
|
-
SendTokenAndUnwrap: '
|
|
285
|
+
SendTokenAndUnwrap: '0xd4f69250cb4d1f083Dd372FEace391A16ABbfBDc',
|
|
279
286
|
ToggleSub: '0x988C5C24AE6348404196267e19962f36961CAc29',
|
|
280
287
|
TokenBalance: '0xC6FF5b01f7c7b35b6e093fF70D2332B361C5Be5A',
|
|
281
288
|
TokenizedVaultAdapter: '0xdf31669FEd440f5BfF658ca0bBF0D22B8abdeb73',
|
|
@@ -297,7 +304,8 @@ export const actionAddresses = {
|
|
|
297
304
|
FLAaveV3NoFee: '0xfbcF23D2BeF8A2C491cfa4dD409D8dF12d431c85',
|
|
298
305
|
FLAaveV3: '0x8A07E93d2B74A80D726eE4E4A0aC1F906aB5Cc63',
|
|
299
306
|
FLBalancer: '0x79d6bf536b8DD65909a3174C87eA6395310d5c41',
|
|
300
|
-
FLAction: '
|
|
307
|
+
FLAction: '0x82d5eDeb005AfFbF381B5949C707a3305160F4A9', // temp fixed
|
|
308
|
+
FLActionTEMP: '0x82d5eDeb005AfFbF381B5949C707a3305160F4A9',
|
|
301
309
|
|
|
302
310
|
|
|
303
311
|
AaveV3RatioTrigger: '0xB76e3f7694589D0f34ba43b17AD0D15350Ab5f85',
|
|
@@ -313,13 +321,16 @@ export const actionAddresses = {
|
|
|
313
321
|
},
|
|
314
322
|
[NETWORKS.arbitrum.chainId]: {
|
|
315
323
|
DFSSell: '0x9109F34AB28D369cF894aF45C50E976B8E312a82',
|
|
324
|
+
DFSSellTEMP: '0xF940aE73cb01c81e657916D14e5699c73a22566c',
|
|
316
325
|
|
|
317
326
|
// basic
|
|
318
327
|
WrapEth: '0x35136b25bFA7CCC8f5b94E3181a16B61c06980F0',
|
|
319
328
|
UnwrapEth: '0x2B69d494536098700910D167902D1d397dcA2B61',
|
|
320
|
-
SendToken: '
|
|
329
|
+
SendToken: '0x57E4563D9fA4cbaA174ce7B918ccBb6A3F51665b',
|
|
321
330
|
PullToken: '0xD8B3769f74bd9F196C3416a42a91E786948898e6',
|
|
322
|
-
|
|
331
|
+
SumInputs: '0xc530f49c11e5946735df8bad41bc6a64d32b56bc',
|
|
332
|
+
SubInputs: '0x8ec14f9568e1d7cf73b68df899808abd7fe6fc8d',
|
|
333
|
+
SendTokenAndUnwrap: '0x009C5B1c7C844Bd662Da3991295b1B3Bd71a430c',
|
|
323
334
|
ToggleSub: '0x71015226EADFd4aC887fB56556F64338e352439b',
|
|
324
335
|
TokenBalance: '0x483B903E702F60698Dd8124558C6199922737f1F',
|
|
325
336
|
TokenizedVaultAdapter: '0xD05C512bDFf6D3eAc5328807B3bC075F35271167',
|
|
@@ -348,7 +359,8 @@ export const actionAddresses = {
|
|
|
348
359
|
FLAaveV3NoFee: '0x219ac6dA971dE6d943cffD1BD62abde71525d382',
|
|
349
360
|
FLAaveV3: '0x53953aCEe438c083e4299F7976f03Ff3cb862161',
|
|
350
361
|
FLBalancer: '0xdb28fE77709D88badC86868B27937428C3F48E73',
|
|
351
|
-
FLAction: '
|
|
362
|
+
FLAction: '0xab4AA2fcEA33205b44a556f8C48ceC3f21aFf0C3', // temp fixed
|
|
363
|
+
FLActionTEMP: '0xab4AA2fcEA33205b44a556f8C48ceC3f21aFf0C3',
|
|
352
364
|
|
|
353
365
|
GasFeeTakerL2: '0x2F64f73B222B4978CAfd0295c0fa106cE5f34996',
|
|
354
366
|
AaveV3RatioCheck: '0x4a5c2cbCFB921b596Dec049389899CC8Eb4678ED',
|
|
@@ -363,10 +375,13 @@ export const actionAddresses = {
|
|
|
363
375
|
[NETWORKS.base.chainId]: {
|
|
364
376
|
// Basic
|
|
365
377
|
DFSSell: '0xCc0f04e8c34B670a1D06f4978C843952F690d3f4',
|
|
378
|
+
DFSSellTEMP: '0x76e5c4e10E36B2f7E8B7F8a570e8A485B86d0ac7',
|
|
366
379
|
WrapEth: '0x491cc4AFbE0081C3464DeF1114ba27BE114b2401',
|
|
367
380
|
UnwrapEth: '0xcF91546046F16B3c38b890CC508E280BEffa66b9',
|
|
368
381
|
SendToken: '0x1420f4977E7B71AFddccBFc6F6e1505CefdF99F0',
|
|
369
382
|
PullToken: '0x5B0B7E38C2a8e46CfAe13c360BC5927570BeEe94',
|
|
383
|
+
SumInputs: '0xC856ef8fe425B2EFe373e0e7038fAFF4a4f764fE',
|
|
384
|
+
SubInputs: '0xd244B1991Fcb8FC0f32FA55bce37714fc5929B95',
|
|
370
385
|
TokenBalance: '0xc44bcE580B1b3339fE9272D3bC3d6566083ea59C',
|
|
371
386
|
ChangeProxyOwner: '0x1947a44d3717a47556175d64fdc208619aa08874',
|
|
372
387
|
|
|
@@ -374,6 +389,8 @@ export const actionAddresses = {
|
|
|
374
389
|
FLAaveV3: '0x79Eb9cEe432Cd3e7b09A9eFdB21A733A6d7b4c3A',
|
|
375
390
|
FLBalancer: '0x862E533198C9656B75bB6A5dDF0953F7ED5E8507',
|
|
376
391
|
FLUniV3: '0x1bA6082D2ef1aB92a55B96264c72Eb8049C964Ce',
|
|
392
|
+
FLAction: '0xAAbd4B0372240E319F9722c4Fd1e2FE0C8d422D2', // fix temp
|
|
393
|
+
FLActionTEMP: '0xAAbd4B0372240E319F9722c4Fd1e2FE0C8d422D2',
|
|
377
394
|
|
|
378
395
|
// AaveV3
|
|
379
396
|
AaveV3Withdraw: '0x1d2Fa7dAcC660A9124c3685EE8a6E699d10409Eb',
|
|
@@ -400,7 +417,7 @@ export const actionAddresses = {
|
|
|
400
417
|
|
|
401
418
|
export const otherAddresses = {
|
|
402
419
|
[NETWORKS.ethereum.chainId]: {
|
|
403
|
-
RecipeExecutor: '
|
|
420
|
+
RecipeExecutor: '0x5029336642814bC51a42bA80BF83a6322110035D',
|
|
404
421
|
DFSRegistry: '0x287778F121F134C66212FB16c9b53eC991D32f5b',
|
|
405
422
|
DFSProxyRegistry: '0x29474FdaC7142f9aB7773B8e38264FA15E3805ed',
|
|
406
423
|
ProxyRegistry: '0x4678f0a6958e4D2Bc4F1BAF7Bc52E8F3564f3fE4',
|
|
@@ -420,7 +437,7 @@ export const otherAddresses = {
|
|
|
420
437
|
Empty: '0x0000000000000000000000000000000000000000',
|
|
421
438
|
},
|
|
422
439
|
[NETWORKS.optimism.chainId]: {
|
|
423
|
-
RecipeExecutor: '
|
|
440
|
+
RecipeExecutor: '0xA532771BD90dAf94b456A4acC9E9cbBdF1367572',
|
|
424
441
|
DFSRegistry: '0xAf707Ee480204Ed6e2640B53cE86F680D28Afcbd',
|
|
425
442
|
ProxyRegistry: '0x283Cc5C26e53D66ed2Ea252D986F094B37E6e895',
|
|
426
443
|
|
|
@@ -432,7 +449,7 @@ export const otherAddresses = {
|
|
|
432
449
|
UniswapV3PositionManager: '0xC36442b4a4522E871399CD717aBDD847Ab11FE88',
|
|
433
450
|
},
|
|
434
451
|
[NETWORKS.arbitrum.chainId]: {
|
|
435
|
-
RecipeExecutor: '
|
|
452
|
+
RecipeExecutor: '0x4417bffFD5e3131069f62Fac07e40704EE234404',
|
|
436
453
|
DFSRegistry: '0xBF1CaC12DB60819Bfa71A328282ecbc1D40443aA',
|
|
437
454
|
ProxyRegistry: '0x283Cc5C26e53D66ed2Ea252D986F094B37E6e895',
|
|
438
455
|
|
|
@@ -444,7 +461,7 @@ export const otherAddresses = {
|
|
|
444
461
|
UniswapV3PositionManager: '0xC36442b4a4522E871399CD717aBDD847Ab11FE88',
|
|
445
462
|
},
|
|
446
463
|
[NETWORKS.base.chainId]: {
|
|
447
|
-
RecipeExecutor: '
|
|
464
|
+
RecipeExecutor: '0xd0Ae279e330f98C399375f80968C8bf860202766',
|
|
448
465
|
DFSRegistry: '0x347FB634271F666353F23A3362f3935D96F97476',
|
|
449
466
|
ProxyRegistry: '0x425fA97285965E01Cc5F951B62A51F6CDEA5cc0d',
|
|
450
467
|
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Action } from '../Action';
|
|
2
|
+
import { getAddr } from '../addresses';
|
|
3
|
+
import { EthAddress, uint256 } from '../types';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
*
|
|
7
|
+
*
|
|
8
|
+
* @category Triggers
|
|
9
|
+
*/
|
|
10
|
+
export class CurveUsdHealthRatioTrigger extends Action {
|
|
11
|
+
constructor(user:EthAddress, controller:EthAddress, ratio:uint256) {
|
|
12
|
+
super('CurveUsdHealthRatioTrigger', getAddr('CurveUsdHealthRatioTrigger'), [['address', 'address', 'uint256']], [[user, controller, ratio]]);
|
|
13
|
+
}
|
|
14
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Action } from '../Action';
|
|
2
|
+
import { getAddr } from '../addresses';
|
|
3
|
+
import { uint256, uint8 } from '../types';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
*
|
|
7
|
+
*
|
|
8
|
+
* @category Triggers
|
|
9
|
+
*/
|
|
10
|
+
export class OffchainPriceTrigger extends Action {
|
|
11
|
+
constructor(limitPrice:uint256, limitType: uint8) {
|
|
12
|
+
super('OffchainPriceTrigger', getAddr('OffchainPriceTrigger'), ['uint256', 'uint8'], [limitPrice, limitType]);
|
|
13
|
+
}
|
|
14
|
+
}
|
package/src/triggers/index.ts
CHANGED
|
@@ -17,4 +17,6 @@ export * from './SparkRatioTrigger';
|
|
|
17
17
|
export * from './SparkQuotePriceTrigger';
|
|
18
18
|
export * from './LiquityDebtInFrontWithLimitTrigger';
|
|
19
19
|
export * from './CurveUsdCollRatioTrigger';
|
|
20
|
+
export * from './CurveUsdHealthRatioTrigger';
|
|
20
21
|
export * from './MorphoBlueRatioTrigger';
|
|
22
|
+
export * from './OffchainPriceTrigger';
|