curvance 3.1.13 → 3.2.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 (39) hide show
  1. package/dist/abis/SimpleZapper.json +6 -1
  2. package/dist/chains/index.d.ts +10 -2
  3. package/dist/chains/index.d.ts.map +1 -1
  4. package/dist/chains/monad-mainnet.json +25 -21
  5. package/dist/classes/CToken.d.ts +12 -7
  6. package/dist/classes/CToken.d.ts.map +1 -1
  7. package/dist/classes/CToken.js +93 -43
  8. package/dist/classes/CToken.js.map +1 -1
  9. package/dist/classes/DexAggregators/Kuru.js +8 -8
  10. package/dist/classes/DexAggregators/Kuru.js.map +1 -1
  11. package/dist/classes/DexAggregators/KyberSwap.d.ts +2 -3
  12. package/dist/classes/DexAggregators/KyberSwap.d.ts.map +1 -1
  13. package/dist/classes/DexAggregators/KyberSwap.js +37 -11
  14. package/dist/classes/DexAggregators/KyberSwap.js.map +1 -1
  15. package/dist/classes/ERC20.d.ts +1 -0
  16. package/dist/classes/ERC20.d.ts.map +1 -1
  17. package/dist/classes/ERC20.js +3 -0
  18. package/dist/classes/ERC20.js.map +1 -1
  19. package/dist/classes/ERC4626.d.ts +17 -0
  20. package/dist/classes/ERC4626.d.ts.map +1 -0
  21. package/dist/classes/ERC4626.js +37 -0
  22. package/dist/classes/ERC4626.js.map +1 -0
  23. package/dist/classes/PositionManager.d.ts +5 -2
  24. package/dist/classes/PositionManager.d.ts.map +1 -1
  25. package/dist/classes/PositionManager.js +10 -0
  26. package/dist/classes/PositionManager.js.map +1 -1
  27. package/dist/classes/Zapper.d.ts +6 -1
  28. package/dist/classes/Zapper.d.ts.map +1 -1
  29. package/dist/classes/Zapper.js +34 -5
  30. package/dist/classes/Zapper.js.map +1 -1
  31. package/dist/helpers.d.ts +8 -3
  32. package/dist/helpers.d.ts.map +1 -1
  33. package/dist/helpers.js +5 -1
  34. package/dist/helpers.js.map +1 -1
  35. package/dist/setup.d.ts +5 -3
  36. package/dist/setup.d.ts.map +1 -1
  37. package/dist/setup.js +7 -5
  38. package/dist/setup.js.map +1 -1
  39. package/package.json +4 -7
@@ -406,7 +406,12 @@
406
406
  },
407
407
  {
408
408
  "type": "error",
409
- "name": "BaseZapper__InsufficientToRepay",
409
+ "name": "BaseZapper__InsufficientAssetsForRepayment",
410
+ "inputs": []
411
+ },
412
+ {
413
+ "type": "error",
414
+ "name": "BaseZapper__InvalidRepaymentAmount",
410
415
  "inputs": []
411
416
  },
412
417
  {
@@ -91,8 +91,8 @@ export declare const chains: {
91
91
  RedstoneCoreAdaptor: string;
92
92
  };
93
93
  calldataCheckers: {
94
- KuruRouterChecker: string;
95
94
  RedstoneAdaptorMulticallChecker: string;
95
+ KyberSwapChecker: string;
96
96
  };
97
97
  zappers: {
98
98
  nativeVaultZapper: string;
@@ -121,6 +121,9 @@ export declare const chains: {
121
121
  loAZND: string;
122
122
  AUSD: string;
123
123
  };
124
+ plugins: {
125
+ simplePositionManager: string;
126
+ };
124
127
  "AUSD-DynamicIRM": string;
125
128
  };
126
129
  "ezETH | WETH": {
@@ -262,6 +265,7 @@ export declare const chains: {
262
265
  ProtocolReader: string;
263
266
  "CombinedAggregator-ezETH": string;
264
267
  "CombinedAggregator-earnAUSD": string;
268
+ DAOTimelock: string;
265
269
  };
266
270
  "local-monad-mainnet": {
267
271
  CentralRegistry: string;
@@ -272,8 +276,8 @@ export declare const chains: {
272
276
  RedstoneCoreAdaptor: string;
273
277
  };
274
278
  calldataCheckers: {
275
- KuruRouterChecker: string;
276
279
  RedstoneAdaptorMulticallChecker: string;
280
+ KyberSwapChecker: string;
277
281
  };
278
282
  zappers: {
279
283
  nativeVaultZapper: string;
@@ -302,6 +306,9 @@ export declare const chains: {
302
306
  loAZND: string;
303
307
  AUSD: string;
304
308
  };
309
+ plugins: {
310
+ simplePositionManager: string;
311
+ };
305
312
  "AUSD-DynamicIRM": string;
306
313
  };
307
314
  "ezETH | WETH": {
@@ -443,6 +450,7 @@ export declare const chains: {
443
450
  ProtocolReader: string;
444
451
  "CombinedAggregator-ezETH": string;
445
452
  "CombinedAggregator-earnAUSD": string;
453
+ DAOTimelock: string;
446
454
  };
447
455
  };
448
456
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/chains/index.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAIlB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/chains/index.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAIlB,CAAC"}
@@ -7,13 +7,13 @@
7
7
  "RedstoneCoreAdaptor": "0x1779e22c746b3CA505FfA636F96c4E0916D616d8"
8
8
  },
9
9
  "calldataCheckers": {
10
- "KuruRouterChecker": "0xe99424bf14ad76e3304214129100a55b7730b8fd",
11
- "RedstoneAdaptorMulticallChecker": "0x75c30005f479307D743753F8604A847fFFe01a04"
10
+ "RedstoneAdaptorMulticallChecker": "0x75c30005f479307D743753F8604A847fFFe01a04",
11
+ "KyberSwapChecker": "0x206639D34bB079C1AD334c958c3ED3feC85Fbfff"
12
12
  },
13
13
  "zappers": {
14
- "nativeVaultZapper": "0x1D60A3F3f84F095b3D6001fbc135F6D42c812269",
15
- "vaultZapper": "0x6A6A087EEC9333ACc0A71782daF2ce9fc229D145",
16
- "simpleZapper": "0x5af9b7cAc0530d3C9e11C23B7A69Cce335B8C395"
14
+ "nativeVaultZapper": "0x792451D679542B660E8a2284d458Ed1b5657dE88",
15
+ "vaultZapper": "0x53634af626c728Cd857b807bA290F70d5B656A6D",
16
+ "simpleZapper": "0xc148ff6ac9DbEBc287f923E2ECd62D7dbC34160d"
17
17
  },
18
18
  "VaultAggregator-AUSD-sAUSD": "0x73Af3E1848636D4DE6A61050D5487d6f09A7A1Be",
19
19
  "StaticPriceAggregator-loAZND": "0x6eCb16faf9b0c0F7098204e0FE685D2960b4C0Ba",
@@ -26,7 +26,7 @@
26
26
  "AUSD": "0x2B4e0232F46E6DB4af35474c140B968EeFCB09Ec"
27
27
  },
28
28
  "plugins": {
29
- "simplePositionManager": "0x1bD48D3caC298F88A4aFb8fCebA5C5F92b0b4F20"
29
+ "simplePositionManager": "0xA3d212D4705caf42C35d6EaE0C85E94c4cd329E4"
30
30
  },
31
31
  "AUSD-DynamicIRM": "0x08DcB6Ad285217ef29816Ac0F813C21C54c48Cd5"
32
32
  },
@@ -37,6 +37,9 @@
37
37
  "loAZND": "0xf7a6AB4aF86966C141D3C5633DF658E5CDb0a735",
38
38
  "AUSD": "0xDaDbB2D8f9802DC458F5D7F133D053087Ba8983d"
39
39
  },
40
+ "plugins": {
41
+ "simplePositionManager": "0x9e4638fd67bE15360bfebC5e07AECfF33dfda917"
42
+ },
40
43
  "AUSD-DynamicIRM": "0xf4E19DEdB240FFd9ECEDbfad88A91C34aC3095AA"
41
44
  },
42
45
  "ezETH | WETH": {
@@ -47,7 +50,7 @@
47
50
  "WETH": "0xa206D51C02c0202a2Eed8E6A757b49Ab13930227"
48
51
  },
49
52
  "plugins": {
50
- "simplePositionManager": "0xc03eBa8CC42Fba089169ED42905aceC96713F803"
53
+ "simplePositionManager": "0xd8d3E46E52C3AB8FD98D04143984C763B4Bbc584"
51
54
  },
52
55
  "WETH-DynamicIRM": "0xf23d194e151069d09c927E8CD8ae3e14922F2a23"
53
56
  },
@@ -59,8 +62,8 @@
59
62
  "WMON": "0x0fcEd51b526BfA5619F83d97b54a57e3327eB183"
60
63
  },
61
64
  "plugins": {
62
- "nativeVaultPositionManager": "0xC7B2377eF1744229698ca72C11003184FbBDF770",
63
- "simplePositionManager": "0xcB8B4ed26ffc043be04888c79aBb5984c703Fb62"
65
+ "nativeVaultPositionManager": "0x2fAA792502aC5a329DcCc1580C5308fCc0a772fe",
66
+ "simplePositionManager": "0x7E8705a164DA7Cc5a4119C750b1F79837AD89D5E"
64
67
  },
65
68
  "WMON-DynamicIRM": "0x963E8aFc1a60E470EB2381896F75853bF6C1FeD2"
66
69
  },
@@ -72,8 +75,8 @@
72
75
  "WMON": "0xF32B334042DC1EB9732454cc9bc1a06205d184f2"
73
76
  },
74
77
  "plugins": {
75
- "nativeVaultPositionManager": "0xe15348F8A08d4C64FD8bebA80404f60373e8A8a9",
76
- "simplePositionManager": "0x175Ee9a037ACBf7FC59f5A765384fDd229D77C94"
78
+ "nativeVaultPositionManager": "0x82f88A810E86a730699231F5fBF5686c643467C8",
79
+ "simplePositionManager": "0x669786FF3da7544c98FE74eE1006D787118d1770"
77
80
  },
78
81
  "WMON-DynamicIRM": "0x309d475e84b7C99C98031006F491e20280a1A768"
79
82
  },
@@ -85,7 +88,7 @@
85
88
  "WMON": "0xebE45A6ceA7760a71D8e0fa5a0AE80a75320D708"
86
89
  },
87
90
  "plugins": {
88
- "simplePositionManager": "0x05c91f5EfAE14b1998c82Eb3B019d4cB312136dB"
91
+ "simplePositionManager": "0x3d6ba6C90E1738cb01C46E72F284C7Bd57eB11EC"
89
92
  },
90
93
  "WMON-DynamicIRM": "0x16cB8A09f2a17E30273b749ed178954FE63bb1BC"
91
94
  },
@@ -97,8 +100,8 @@
97
100
  "AUSD": "0xfD493ce1A0ae986e09d17004B7E748817a47d73c"
98
101
  },
99
102
  "plugins": {
100
- "simplePositionManager": "0x52b0e0c4099AB4f43bf37D755D4a2609e770954A",
101
- "vaultPositionManager": "0x953D7190e9d132776877ca86FAE718562A67fB52"
103
+ "simplePositionManager": "0x491e8712885E4e0b98864F13393ced8c1a61FD57",
104
+ "vaultPositionManager": "0xe94AC990873C3B59A417d25C1ec1398807FB41A1"
102
105
  },
103
106
  "AUSD-DynamicIRM": "0x22dCF7dd5518F5F08ec05c59606d84698FFF07BB"
104
107
  },
@@ -110,7 +113,7 @@
110
113
  "AUSD": "0xAd4AA2a713fB86FBb6b60dE2aF9E32a11DB6Abf2"
111
114
  },
112
115
  "plugins": {
113
- "simplePositionManager": "0xb96d9F8780C61e74222523D2d06FdbAB7921790A"
116
+ "simplePositionManager": "0xd807efC94376618B4d9CE6eAaf89607006d3B881"
114
117
  },
115
118
  "AUSD-DynamicIRM": "0x46e2bA1D6CFfB180Efa17d4D5A726b599ED8B904"
116
119
  },
@@ -122,7 +125,7 @@
122
125
  "AUSD": "0x6E182EB501800C555bd5E662E6D350D627F504D8"
123
126
  },
124
127
  "plugins": {
125
- "simplePositionManager": "0x31ECeF2E833BBc48cF2d7F87DB711224a988680e"
128
+ "simplePositionManager": "0x2619BB5Acfe51317c4C36a63578FD56148e68C74"
126
129
  },
127
130
  "AUSD-DynamicIRM": "0x72cb6a15E050427e1a6047614A47659A2C94d1bA"
128
131
  },
@@ -134,7 +137,7 @@
134
137
  "USDC": "0x8EE9FC28B8Da872c38A496e9dDB9700bb7261774"
135
138
  },
136
139
  "plugins": {
137
- "simplePositionManager": "0xF74f7E3Db3a165ab6E4F58BbD56E27b719520272"
140
+ "simplePositionManager": "0x960c49E523e6A87282D2bC5032d0AeCb35Dc20ef"
138
141
  },
139
142
  "USDC-DynamicIRM": "0x1622D77E311638C77779e6D9B212E3e7D73AaFB4"
140
143
  },
@@ -146,7 +149,7 @@
146
149
  "USDC": "0x7C9d4f1695C6282Da5e5509Aa51fC9fb417C6f1d"
147
150
  },
148
151
  "plugins": {
149
- "simplePositionManager": "0x6B84B03Bc8481b1380c3A4CdDf221d30b5E40663"
152
+ "simplePositionManager": "0x8cA51d155C07e91B206Cf11C8D52d5aB082657F6"
150
153
  },
151
154
  "USDC-DynamicIRM": "0x9F57957F2CA8d0DB433e4623f8bd248293b01e86"
152
155
  },
@@ -158,7 +161,7 @@
158
161
  "USDC": "0x21aDBb60a5fB909e7F1fB48aACC4569615CD97b5"
159
162
  },
160
163
  "plugins": {
161
- "simplePositionManager": "0x37f94A5C9F04399477D1dF851758c0E0348CB019"
164
+ "simplePositionManager": "0x3A1B2Dc11a81Fe106eC667BaB4056fC72498ff73"
162
165
  },
163
166
  "USDC-DynamicIRM": "0x034f1a014946Fe4d4ea3bD36A315F775a8C1aB26"
164
167
  },
@@ -170,12 +173,13 @@
170
173
  "WMON": "0xf473568b26B8C5aadCa9fbC0eA17E1728d5ec925"
171
174
  },
172
175
  "plugins": {
173
- "simplePositionManager": "0x0f0aF2a4fC128aE6a112FC3355BDD2C9f68dcD9b"
176
+ "simplePositionManager": "0x77B90040E6dFE8A62293Cd91CAeE35296EC266Ee"
174
177
  },
175
178
  "WMON-DynamicIRM": "0x034Cb4152B6506c445f18d564b3Ce86B0DE05C7B"
176
179
  }
177
180
  },
178
181
  "ProtocolReader": "0x878cDfc2F3D96a49A5CbD805FAF4F3080768a6d2",
179
182
  "CombinedAggregator-ezETH": "0xd5F84C4497621768f3F08b65ad7019BdF183b1fd",
180
- "CombinedAggregator-earnAUSD": "0xf80CC9965d260d7cD96E41b9734F031279dCDf2f"
183
+ "CombinedAggregator-earnAUSD": "0xf80CC9965d260d7cD96E41b9734F031279dCDf2f",
184
+ "DAOTimelock": "0x2677738657F27e1A3591E00AD7E5a78807688C08"
181
185
  }
@@ -10,6 +10,8 @@ import { Zapper, ZapperTypes } from "./Zapper";
10
10
  import { PositionManager, PositionManagerTypes } from "./PositionManager";
11
11
  import { BorrowableCToken } from "./BorrowableCToken";
12
12
  import { NativeToken } from "./NativeToken";
13
+ import { ERC4626 } from "./ERC4626";
14
+ import { Quote } from "./DexAggregators/IDexAgg";
13
15
  export interface AccountSnapshot {
14
16
  asset: address;
15
17
  decimals: bigint;
@@ -25,15 +27,12 @@ export interface MulticallAction {
25
27
  export interface ZapToken {
26
28
  interface: NativeToken | ERC20;
27
29
  type: ZapperTypes;
28
- quote?: (tokenIn: string, tokenOut: string, amount: TokenInput, slippage: bigint) => Promise<{
29
- out: TokenInput;
30
- min_out: TokenInput;
31
- }>;
30
+ quote?: (tokenIn: string, tokenOut: string, amount: TokenInput, slippage: Percentage) => Promise<Quote>;
32
31
  }
33
32
  export type ZapperInstructions = 'none' | 'native-vault' | 'vault' | 'native-simple' | {
34
33
  type: ZapperTypes;
35
34
  inputToken: address;
36
- slippage: bigint;
35
+ slippage: Percentage;
37
36
  };
38
37
  export interface ICToken {
39
38
  decimals(): Promise<bigint>;
@@ -74,6 +73,9 @@ export declare class CToken extends Calldata<ICToken> {
74
73
  market: Market;
75
74
  zapTypes: ZapperTypes[];
76
75
  leverageTypes: string[];
76
+ isVault: boolean;
77
+ isNativeVault: boolean;
78
+ isWrappedNative: boolean;
77
79
  constructor(provider: curvance_provider, address: address, cache: StaticMarketToken & DynamicMarketToken & UserMarketToken, market: Market);
78
80
  get adapters(): [AdaptorTypes, AdaptorTypes];
79
81
  get borrowPaused(): boolean;
@@ -166,6 +168,9 @@ export declare class CToken extends Calldata<ICToken> {
166
168
  * @returns Percentage representation of the LTV (e.g. 0.75 for 75% LTV)
167
169
  */
168
170
  ltv(): Percentage;
171
+ getUnderlyingVault(): ERC4626;
172
+ getVaultAsset(asErc20: true): Promise<ERC20>;
173
+ getVaultAsset(asErc20: false): Promise<address>;
169
174
  getAsset(asErc20: true): ERC20;
170
175
  getAsset(asErc20: false): address;
171
176
  getPrice(): USD;
@@ -233,7 +238,7 @@ export declare class CToken extends Calldata<ICToken> {
233
238
  isPossible: boolean;
234
239
  priceStale: boolean;
235
240
  }>;
236
- previewLeverageUp(newLeverage: Decimal, borrow: BorrowableCToken): {
241
+ previewLeverageUp(newLeverage: Decimal, borrow: BorrowableCToken, depositAmount?: bigint): {
237
242
  borrowAmount: Decimal;
238
243
  newDebt: Decimal;
239
244
  newPosition: Decimal;
@@ -244,7 +249,7 @@ export declare class CToken extends Calldata<ICToken> {
244
249
  };
245
250
  leverageUp(borrow: BorrowableCToken, newLeverage: Decimal, type: PositionManagerTypes, slippage_?: TokenInput): Promise<TransactionResponse>;
246
251
  leverageDown(borrowToken: BorrowableCToken, currentLeverage: Decimal, newLeverage: Decimal, type: PositionManagerTypes, slippage_?: Percentage): Promise<TransactionResponse>;
247
- depositAndLeverage(depositAmount: TokenInput, borrow: BorrowableCToken, borrowAmount: TokenInput, type: PositionManagerTypes, slippage_?: TokenInput): Promise<TransactionResponse>;
252
+ depositAndLeverage(depositAmount: TokenInput, borrow: BorrowableCToken, leverageTarget: Decimal, type: PositionManagerTypes, slippage_?: Percentage): Promise<TransactionResponse>;
248
253
  zap(assets: bigint, zap: ZapperInstructions, collateralize: boolean | undefined, default_calldata: bytes): Promise<{
249
254
  calldata: `0x${string}`;
250
255
  calldata_overrides: {};
@@ -1 +1 @@
1
- {"version":3,"file":"CToken.d.ts","sourceRoot":"","sources":["../../src/classes/CToken.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CToken.d.ts","sourceRoot":"","sources":["../../src/classes/CToken.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,7 @@ const Zapper_1 = require("./Zapper");
15
15
  const setup_1 = require("../setup");
16
16
  const PositionManager_1 = require("./PositionManager");
17
17
  const NativeToken_1 = require("./NativeToken");
18
+ const ERC4626_1 = require("./ERC4626");
18
19
  class CToken extends Calldata_1.Calldata {
19
20
  provider;
20
21
  address;
@@ -24,6 +25,9 @@ class CToken extends Calldata_1.Calldata {
24
25
  market;
25
26
  zapTypes = [];
26
27
  leverageTypes = [];
28
+ isVault = false;
29
+ isNativeVault = false;
30
+ isWrappedNative = false;
27
31
  constructor(provider, address, cache, market) {
28
32
  super();
29
33
  this.provider = provider;
@@ -32,19 +36,22 @@ class CToken extends Calldata_1.Calldata {
32
36
  this.cache = cache;
33
37
  this.market = market;
34
38
  const chain_config = (0, helpers_1.getChainConfig)();
35
- const isNativeVault = chain_config.native_vaults.some(vault => vault.contract == this.asset.address);
36
- // const isVault = chain_config.vaults.some(vault => vault.contract == this.asset.address);
37
- const isWrappedNative = chain_config.wrapped_native == this.asset.address;
38
- if (isNativeVault)
39
+ this.isNativeVault = chain_config.native_vaults.some(vault => vault.contract == this.asset.address);
40
+ this.isVault = chain_config.vaults.some(vault => vault.contract == this.asset.address);
41
+ this.isWrappedNative = chain_config.wrapped_native == this.asset.address;
42
+ if (this.isNativeVault)
39
43
  this.zapTypes.push('native-vault');
40
- if ("nativeVaultPositionManager" in this.market.plugins && isNativeVault)
44
+ if ("nativeVaultPositionManager" in this.market.plugins && this.isNativeVault)
41
45
  this.leverageTypes.push('native-vault');
42
- if (isWrappedNative)
46
+ if (this.isWrappedNative)
43
47
  this.zapTypes.push('native-simple');
44
- // if(isVault) this.zapTypes.push('vault');
45
- // if("vaultPositionManager" in this.market.plugins && isVault) this.leverageTypes.push('vault');
46
- // if("simplePositionManager" in this.market.plugins) this.leverageTypes.push('simple');
47
- // this.zapTypes.push('simple');
48
+ if (this.isVault)
49
+ this.zapTypes.push('vault');
50
+ if ("vaultPositionManager" in this.market.plugins && this.isVault)
51
+ this.leverageTypes.push('vault');
52
+ if ("simplePositionManager" in this.market.plugins)
53
+ this.leverageTypes.push('simple');
54
+ this.zapTypes.push('simple');
48
55
  }
49
56
  get adapters() { return this.cache.adapters; }
50
57
  get borrowPaused() { return this.cache.borrowPaused; }
@@ -159,6 +166,15 @@ class CToken extends Calldata_1.Calldata {
159
166
  ltv() {
160
167
  return (0, decimal_js_1.default)(this.cache.collRatio).div(helpers_1.BPS);
161
168
  }
169
+ getUnderlyingVault() {
170
+ if (!this.isVault && !this.isNativeVault) {
171
+ throw new Error("CToken does not use a vault asset as its underlying asset");
172
+ }
173
+ return new ERC4626_1.ERC4626(this.provider, this.getAsset(false));
174
+ }
175
+ async getVaultAsset(asErc20) {
176
+ return asErc20 ? await this.getUnderlyingVault().fetchAsset(true) : await this.getUnderlyingVault().fetchAsset(false);
177
+ }
162
178
  getAsset(asErc20) {
163
179
  return asErc20 ? new ERC20_1.ERC20(this.provider, this.cache.asset.address, this.cache.asset) : this.cache.asset.address;
164
180
  }
@@ -217,7 +233,7 @@ class CToken extends Calldata_1.Calldata {
217
233
  const isApproved = allowance >= amount;
218
234
  if (!isApproved) {
219
235
  const symbol = await asset.fetchSymbol();
220
- throw new Error(`Plugin needs to be approved for the asset: ${symbol}`);
236
+ throw new Error(`Plugin(${plugin}) needs to be approved for the asset: ${symbol}`);
221
237
  }
222
238
  return isApproved;
223
239
  }
@@ -380,7 +396,7 @@ class CToken extends Calldata_1.Calldata {
380
396
  await this.fetchUserCollateral();
381
397
  return tx;
382
398
  }
383
- getZapBalance(zap) {
399
+ async getZapBalance(zap) {
384
400
  const signer = (0, helpers_1.validateProviderAsSigner)(this.provider);
385
401
  let asset;
386
402
  if (typeof zap === 'object') {
@@ -396,6 +412,9 @@ class CToken extends Calldata_1.Calldata {
396
412
  case 'none':
397
413
  asset = this.getAsset(true);
398
414
  break;
415
+ case 'vault':
416
+ asset = await this.getVaultAsset(true);
417
+ break;
399
418
  case 'native-vault':
400
419
  asset = new NativeToken_1.NativeToken(setup_1.setup_config.chain, this.provider);
401
420
  break;
@@ -459,8 +478,9 @@ class CToken extends Calldata_1.Calldata {
459
478
  }
460
479
  /** @returns A list of tokens mapped to their respective zap options */
461
480
  async getDepositTokens(search = null) {
481
+ const underlying = this.getAsset(true);
462
482
  let tokens = [{
463
- interface: this.getAsset(true),
483
+ interface: underlying,
464
484
  type: 'none'
465
485
  }];
466
486
  let tokens_exclude = [this.asset.address.toLocaleLowerCase()];
@@ -482,6 +502,14 @@ class CToken extends Calldata_1.Calldata {
482
502
  tokens_exclude.push(helpers_1.NATIVE_ADDRESS);
483
503
  }
484
504
  }
505
+ if (this.zapTypes.includes('vault')) {
506
+ const vault_asset = await this.getVaultAsset(true);
507
+ tokens.push({
508
+ interface: vault_asset,
509
+ type: 'vault'
510
+ });
511
+ tokens_exclude.push(vault_asset.address.toLocaleLowerCase());
512
+ }
485
513
  if (this.zapTypes.includes('simple')) {
486
514
  let dexAggSearch = await setup_1.chain_config[setup_1.setup_config.chain].dexAgg.getAvailableTokens(this.provider, search);
487
515
  tokens = tokens.concat(dexAggSearch.filter(token => !tokens_exclude.includes(token.interface.address.toLocaleLowerCase())));
@@ -493,11 +521,12 @@ class CToken extends Calldata_1.Calldata {
493
521
  const shares = this.convertTokenInput(amount, true, true);
494
522
  return this.market.reader.hypotheticalRedemptionOf(signer.address, this, shares);
495
523
  }
496
- previewLeverageUp(newLeverage, borrow) {
497
- if (this.getLeverage() == null || this.getLeverage() != null && newLeverage.lte(this.getLeverage())) {
524
+ previewLeverageUp(newLeverage, borrow, depositAmount) {
525
+ const currentLeverage = this.getLeverage() ?? (0, decimal_js_1.default)(0);
526
+ if (newLeverage.lte(currentLeverage)) {
498
527
  throw new Error("New leverage must be more than current leverage");
499
528
  }
500
- const collateralAvail = this.cache.userCollateral;
529
+ const collateralAvail = this.cache.userCollateral + (depositAmount ? depositAmount : BigInt(0));
501
530
  const collateralInUsd = this.convertTokensToUsd(collateralAvail, false);
502
531
  const newPosition = collateralInUsd.mul(newLeverage);
503
532
  const newDebt = newPosition.sub(this.market.userDebt).sub(collateralInUsd);
@@ -515,7 +544,7 @@ class CToken extends Calldata_1.Calldata {
515
544
  const collateralAssetReduction = BigInt(leverageDiff.mul(collateralAssetsAvail).toFixed(0));
516
545
  return { collateralAssetReduction, leverageDiff };
517
546
  }
518
- async leverageUp(borrow, newLeverage, type, slippage_ = (0, decimal_js_1.default)(0.05)) {
547
+ async leverageUp(borrow, newLeverage, type, slippage_ = (0, decimal_js_1.default)(0.005)) {
519
548
  const signer = (0, helpers_1.validateProviderAsSigner)(this.provider);
520
549
  const slippage = (0, helpers_1.toBps)(slippage_);
521
550
  const manager = this.getPositionManager(type);
@@ -523,7 +552,7 @@ class CToken extends Calldata_1.Calldata {
523
552
  const { borrowAmount } = this.previewLeverageUp(newLeverage, borrow);
524
553
  switch (type) {
525
554
  case 'simple': {
526
- const { action, quote } = await setup_1.chain_config[setup_1.setup_config.chain].dexAgg.quoteAction(signer.address, borrow.asset.address, this.asset.address, borrow.convertTokenInput(borrowAmount, false), slippage);
555
+ const { action, quote } = await setup_1.chain_config[setup_1.setup_config.chain].dexAgg.quoteAction(manager.address, borrow.asset.address, this.asset.address, borrow.convertTokenInput(borrowAmount, false), slippage);
527
556
  calldata = manager.getLeverageCalldata({
528
557
  borrowableCToken: borrow.address,
529
558
  borrowAssets: borrow.convertTokenInput(borrowAmount),
@@ -531,7 +560,18 @@ class CToken extends Calldata_1.Calldata {
531
560
  expectedShares: BigInt(quote.min_out),
532
561
  swapAction: action,
533
562
  auxData: "0x",
534
- }, slippage * helpers_1.WAD);
563
+ }, (0, helpers_1.fromBpsToWad)(slippage));
564
+ break;
565
+ }
566
+ case 'vault': {
567
+ calldata = manager.getLeverageCalldata({
568
+ borrowableCToken: borrow.address,
569
+ borrowAssets: borrow.convertTokenInput(borrowAmount),
570
+ cToken: this.address,
571
+ expectedShares: await PositionManager_1.PositionManager.getVaultExpectedShares(this, borrow, borrowAmount),
572
+ swapAction: PositionManager_1.PositionManager.emptySwapAction(),
573
+ auxData: "0x",
574
+ }, (0, helpers_1.fromBpsToWad)(slippage));
535
575
  break;
536
576
  }
537
577
  case 'native-vault': {
@@ -539,10 +579,10 @@ class CToken extends Calldata_1.Calldata {
539
579
  borrowableCToken: borrow.address,
540
580
  borrowAssets: borrow.convertTokenInput(borrowAmount),
541
581
  cToken: this.address,
542
- expectedShares: borrow.convertTokenInput(borrowAmount),
582
+ expectedShares: await PositionManager_1.PositionManager.getVaultExpectedShares(this, borrow, borrowAmount),
543
583
  swapAction: PositionManager_1.PositionManager.emptySwapAction(),
544
584
  auxData: "0x",
545
- }, slippage * helpers_1.WAD);
585
+ }, (0, helpers_1.fromBpsToWad)(slippage));
546
586
  break;
547
587
  }
548
588
  default: throw new Error("Unsupported position manager type");
@@ -552,7 +592,7 @@ class CToken extends Calldata_1.Calldata {
552
592
  to: manager.address
553
593
  });
554
594
  }
555
- async leverageDown(borrowToken, currentLeverage, newLeverage, type, slippage_ = (0, decimal_js_1.default)(0.05)) {
595
+ async leverageDown(borrowToken, currentLeverage, newLeverage, type, slippage_ = (0, decimal_js_1.default)(0.005)) {
556
596
  if (newLeverage.gte(currentLeverage)) {
557
597
  throw new Error("New leverage must be less than current leverage");
558
598
  }
@@ -564,8 +604,8 @@ class CToken extends Calldata_1.Calldata {
564
604
  const { collateralAssetReduction, leverageDiff } = this.previewLeverageDown(newLeverage, currentLeverage);
565
605
  switch (type) {
566
606
  case 'simple': {
567
- const { action, quote } = await config.dexAgg.quoteAction(signer.address, this.asset.address, borrowToken.asset.address, collateralAssetReduction, slippage);
568
- const minRepay = leverageDiff.equals(1) ? 0 : quote.min_out;
607
+ const { action, quote } = await config.dexAgg.quoteAction(manager.address, this.asset.address, borrowToken.asset.address, collateralAssetReduction, slippage);
608
+ const minRepay = leverageDiff.equals(1) ? 0 : quote.out - (BigInt((0, decimal_js_1.default)(quote.out).mul(.05).toFixed(0)));
569
609
  calldata = manager.getDeleverageCalldata({
570
610
  cToken: this.address,
571
611
  collateralAssets: collateralAssetReduction,
@@ -573,7 +613,7 @@ class CToken extends Calldata_1.Calldata {
573
613
  repayAssets: BigInt(minRepay),
574
614
  swapActions: [action],
575
615
  auxData: "0x",
576
- }, slippage * helpers_1.WAD);
616
+ }, (0, helpers_1.fromBpsToWad)(slippage));
577
617
  break;
578
618
  }
579
619
  default: throw new Error("Unsupported position manager type");
@@ -583,40 +623,46 @@ class CToken extends Calldata_1.Calldata {
583
623
  to: manager.address
584
624
  });
585
625
  }
586
- async depositAndLeverage(depositAmount, borrow, borrowAmount, type, slippage_ = (0, decimal_js_1.default)(0.5)) {
626
+ async depositAndLeverage(depositAmount, borrow, leverageTarget, type, slippage_ = (0, decimal_js_1.default)(0.005)) {
587
627
  depositAmount = await this.ensureUnderlyingAmount(depositAmount, 'none');
588
628
  const signer = (0, helpers_1.validateProviderAsSigner)(this.provider);
589
629
  const slippage = (0, helpers_1.toBps)(slippage_);
590
630
  const manager = this.getPositionManager(type);
591
631
  let calldata;
632
+ const { borrowAmount } = this.previewLeverageUp(leverageTarget, borrow, this.convertTokenInput(depositAmount, true, true));
592
633
  switch (type) {
593
- case 'simple':
594
- const { action, quote } = await setup_1.chain_config[setup_1.setup_config.chain].dexAgg.quoteAction(signer.address, borrow.asset.address, this.asset.address, borrow.convertTokenInput(borrowAmount), slippage);
634
+ case 'simple': {
635
+ const { action, quote } = await setup_1.chain_config[setup_1.setup_config.chain].dexAgg.quoteAction(manager.address, borrow.asset.address, this.asset.address, borrow.convertTokenInput(borrowAmount), slippage);
595
636
  calldata = manager.getDepositAndLeverageCalldata(this.convertTokenInput(depositAmount), {
596
637
  borrowableCToken: borrow.address,
597
638
  borrowAssets: borrow.convertTokenInput(borrowAmount),
598
639
  cToken: this.address,
599
- expectedShares: BigInt(quote.min_out),
640
+ expectedShares: await PositionManager_1.PositionManager.getExpectedShares(this, BigInt(quote.min_out)),
600
641
  swapAction: action,
601
642
  auxData: "0x",
602
- }, slippage * helpers_1.WAD);
643
+ }, (0, helpers_1.fromBpsToWad)(slippage));
603
644
  break;
645
+ }
646
+ case 'vault': {
647
+ calldata = manager.getDepositAndLeverageCalldata(this.convertTokenInput(depositAmount), {
648
+ borrowableCToken: borrow.address,
649
+ borrowAssets: borrow.convertTokenInput(borrowAmount),
650
+ cToken: this.address,
651
+ expectedShares: await PositionManager_1.PositionManager.getVaultExpectedShares(this, borrow, borrowAmount),
652
+ swapAction: PositionManager_1.PositionManager.emptySwapAction(),
653
+ auxData: "0x",
654
+ }, (0, helpers_1.fromBpsToWad)(slippage));
655
+ break;
656
+ }
604
657
  case 'native-vault': {
605
658
  calldata = manager.getDepositAndLeverageCalldata(this.convertTokenInput(depositAmount), {
606
659
  borrowableCToken: borrow.address,
607
660
  borrowAssets: borrow.convertTokenInput(borrowAmount),
608
661
  cToken: this.address,
609
- expectedShares: borrow.convertTokenInput(borrowAmount),
610
- swapAction: {
611
- inputToken: helpers_1.EMPTY_ADDRESS,
612
- inputAmount: 0n,
613
- outputToken: helpers_1.EMPTY_ADDRESS,
614
- target: helpers_1.EMPTY_ADDRESS,
615
- slippage: 0n,
616
- call: "0x"
617
- },
662
+ expectedShares: await PositionManager_1.PositionManager.getVaultExpectedShares(this, borrow, borrowAmount),
663
+ swapAction: PositionManager_1.PositionManager.emptySwapAction(),
618
664
  auxData: "0x",
619
- }, slippage * helpers_1.WAD);
665
+ }, (0, helpers_1.fromBpsToWad)(slippage));
620
666
  break;
621
667
  }
622
668
  default: throw new Error("Unsupported position manager type");
@@ -634,7 +680,7 @@ class CToken extends Calldata_1.Calldata {
634
680
  let inputToken = null;
635
681
  let type_of_zap;
636
682
  if (typeof zap == 'object') {
637
- slippage = zap.slippage;
683
+ slippage = BigInt(zap.slippage.mul(helpers_1.BPS).toString());
638
684
  inputToken = zap.inputToken;
639
685
  type_of_zap = zap.type;
640
686
  }
@@ -655,12 +701,16 @@ class CToken extends Calldata_1.Calldata {
655
701
  calldata = await zapper.getSimpleZapCalldata(this, inputToken, this.asset.address, assets, collateralize, slippage);
656
702
  calldata_overrides = { to: zapper.address };
657
703
  break;
704
+ case 'vault':
705
+ calldata = await zapper.getVaultZapCalldata(this, assets, collateralize);
706
+ calldata_overrides = { to: zapper.address };
707
+ break;
658
708
  case 'native-vault':
659
- calldata = zapper.getNativeZapCalldata(this, assets, collateralize);
709
+ calldata = await zapper.getNativeZapCalldata(this, assets, collateralize);
660
710
  calldata_overrides = { value: assets, to: zapper.address };
661
711
  break;
662
712
  case 'native-simple':
663
- calldata = zapper.getNativeZapCalldata(this, assets, collateralize, true);
713
+ calldata = await zapper.getNativeZapCalldata(this, assets, collateralize, true);
664
714
  calldata_overrides = { value: assets, to: zapper.address };
665
715
  break;
666
716
  default: