curvance 1.1.0 → 1.2.0

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.
@@ -87,10 +87,10 @@ export declare const chains: {
87
87
  plugins: {
88
88
  nativeVaultPositionManager: string;
89
89
  };
90
- "WMON-DynamicIRM": string;
90
+ "sMON-DynamicIRM": string;
91
91
  tokens: {
92
- WMON: string;
93
92
  sMON: string;
93
+ WMON: string;
94
94
  };
95
95
  };
96
96
  "Magma (gMON) / wMON": {
@@ -98,10 +98,10 @@ export declare const chains: {
98
98
  plugins: {
99
99
  nativeVaultPositionManager: string;
100
100
  };
101
- "WMON-DynamicIRM": string;
101
+ "gMON-DynamicIRM": string;
102
102
  tokens: {
103
- WMON: string;
104
103
  gMON: string;
104
+ WMON: string;
105
105
  };
106
106
  };
107
107
  };
@@ -1,118 +1,118 @@
1
1
  {
2
- "CentralRegistry": "0x2F0DF3eb61bC4e160289F7E5127e3b756780b624",
3
- "OracleManager": "0xDBa9f44b5Cb303d4CDCa40aa586EA7D7CD6a6413",
2
+ "CentralRegistry": "0x1605b3aD37708b1E2c9A7B949Bc289fbc882251D",
3
+ "OracleManager": "0x96f3912bFa50EA5aa6230Ddf5347819f2440C0F4",
4
4
  "adaptors": {
5
- "ChainlinkAdaptor": "0x844B09Cf96dDFe6B8A608A0B58520CE605F76F6E",
6
- "RedstoneClassicAdaptor": "0x0376b5db22c73f719AdeBbB5DaE5870B5F90395e",
7
- "RedstoneCoreAdaptor": "0xcDc2c744a15D8f7767f7a2fb1757919D6F15022B"
5
+ "ChainlinkAdaptor": "0x15a5D9fE67265c47b5A1460d896260a427d1E42a",
6
+ "RedstoneClassicAdaptor": "0x6423A02783F432e25151b806905937ceaAFDE586",
7
+ "RedstoneCoreAdaptor": "0x68fE0E13c75a662bd413566d4140e390917DBcb5"
8
8
  },
9
9
  "calldataCheckers": {
10
- "RedstoneAdaptorMulticallChecker": "0x4a041dc980a5ce8D00f63efF7E89009fe1702604"
10
+ "RedstoneAdaptorMulticallChecker": "0x3f36722Fe6BAD26E4B1433B329ecC02C0787F8b7"
11
11
  },
12
12
  "zappers": {
13
- "nativeVaultZapper": "0xda34AccA0b72662Be611BEb22524AaF124B36d23",
14
- "vaultZapper": "0x096D992B46f41bF6b7C3e28fCA104fbeea7c63e6",
15
- "simpleZapper": "0xE986A7E9007affef15604Fbc18dD14B85CbF5857"
13
+ "nativeVaultZapper": "0x0078eda41B1dC48729C4D62291248A1c5904A1a6",
14
+ "vaultZapper": "0x5B9229594216838a812e736aF3F95Af993B287f8",
15
+ "simpleZapper": "0x4fdd13FD07382704cC806d5C840A6c1AeF3E1757"
16
16
  },
17
- "MockOracle": "0x225502Ec05F6c297308d5e9FafA1735515Ba7191",
18
- "USDC": "0x1e071Bd0D4BF5120b58e2b89FE2F3b3D04fCfCf1",
19
- "WBTC": "0xb946ABc340385c537BbAc5E65B24Db8Af780A550",
20
- "SWETH": "0x5b2FDA16251187E575d111633A9D89189023Be35",
21
- "DAI": "0x2Be44B614E14956ac10653b501a32836f97757f9",
22
- "LUSD": "0xBeead9a094dc5D06f0641d73d630E20251C1d0E0",
23
- "mkUSD": "0x2B70eb3021391e93013092d5B1Bf02387945b90A",
24
- "mETH": "0x3A2731d1f03228A863a159553cC878eb92D88a65",
25
- "mUSD": "0x9E9c50165e0c927d9aa846dA3602d5Ea2C90044e",
26
- "Faucet": "0x6CEF38bD9Cd0C92a7CfCA0CD07058457D53fFf37",
17
+ "MockOracle": "0x7E71Fdd12bF2C5da35243Cd52830E60E828EBAfE",
18
+ "USDC": "0x8997eF110E5823b543155285eF0C370520e1E9d0",
19
+ "WBTC": "0xDC32E3b1bA7b9186993269753718f09be0ACAc35",
20
+ "SWETH": "0x243142962dc13208A674b5A61A95970280E0C730",
21
+ "DAI": "0x7F06C608747D6514f622F5beB8494818A0A2496d",
22
+ "LUSD": "0xb39802CF201fb33296Be0f400338fd4754bE33E3",
23
+ "mkUSD": "0x2C3d30269fa31258EC40A32690e0C149fde2493B",
24
+ "mETH": "0x7BB05Aa193535d8D4878c6433Bf800C8a7C549D8",
25
+ "mUSD": "0x4F9a6edB46abF3bF30D3Ab00CE4Ae6da2EdD0ab5",
26
+ "Faucet": "0x2Db7799f9574eC92F8246c40f5532249c3152419",
27
27
  "markets": {
28
28
  "Test WBTC / Test USDC": {
29
- "address": "0xD6588F1f6120C3D981115491aF7D12CAB89C0Bb0",
30
- "WBTC-DynamicIRM": "0x6F6162b60F5637eb504a526490E17f026Af72722",
29
+ "address": "0x706cE72FDafa499Ee60648CE9Ccb96E668a99496",
30
+ "WBTC-DynamicIRM": "0xc7e2cDB05635018c4d7c9de445B787e8bEa4D2e3",
31
31
  "tokens": {
32
- "WBTC": "0x968eA30A64F0e95af69C5f18f430bC041621419f",
33
- "USDC": "0x156e8C11e7b2502049f5b7138759f23BcE1EC050"
32
+ "WBTC": "0x21CcAc607FAf119b800d8f545CfaDEA8F4043cDB",
33
+ "USDC": "0x6cc4AFf3ee554A38505E4C597Cf9f0144c9BF604"
34
34
  },
35
- "USDC-DynamicIRM": "0xdb0F673F36D120BB6f5b5697785878304F3C8c2A"
35
+ "USDC-DynamicIRM": "0x445855ee7aE89cDaAb2d8C869f513102431e335E"
36
36
  },
37
37
  "Test LUSD / Test SWETH": {
38
- "address": "0x8749Bc5820BB951D7a8E70F8EcA3Da453F4C03F9",
39
- "LUSD-DynamicIRM": "0x1CbB4a19C215d7F917Bb531A7E761346bF2Cda0E",
38
+ "address": "0xc672CD797FAb0D7b7d61B20C3A00909747962eA2",
39
+ "LUSD-DynamicIRM": "0x76F04c8D091A5cfd74D6261C730cB0faD80Cb395",
40
40
  "tokens": {
41
- "LUSD": "0x055da4c80dc58EdD186dBA0CFAD6a15bF82f38b5",
42
- "SWETH": "0x84f5328d934283A70B59361952EfC62ec8A36757"
41
+ "LUSD": "0xacCbEE50bBF9882E6f11cCcb42200056105861c5",
42
+ "SWETH": "0xEbBB04559b01630F0435De55dA8AfdB8fb4Bd3F5"
43
43
  }
44
44
  },
45
45
  "Test mUSD / Test mETH": {
46
- "address": "0x34897EFc54CB80f900532Cb87Cb76d0b67B98C76",
46
+ "address": "0xe23CBe23eB702376De976542E50A4d23Cf40303D",
47
47
  "tokens": {
48
- "mUSD": "0x6C7143b0a5d37FAF9B81bF8fa27c2af51305Af2A",
49
- "mETH": "0x56e709743Cc8da96678cD55a2ac182c03E48A8F7"
48
+ "mUSD": "0x83B1F37E0042cAa2C8be27a0B1d259E792eDd29B",
49
+ "mETH": "0x63d8A82DdeA1F7eE530E9a0401519E9698aD6fED"
50
50
  },
51
- "mETH-DynamicIRM": "0xa0333980Eca77E412b0d506C6bcF03348176C792"
51
+ "mETH-DynamicIRM": "0xa37CC6F55578F31E8C2B984375897b012e6e89C7"
52
52
  },
53
53
  "Test DAI / Test mkUSD": {
54
- "address": "0x155B9Cb59cdF67B4F1f287A4a270d95C9b50ed82",
55
- "DAI-DynamicIRM": "0xc36178f0A39F10AFFd436eDfd04f372599420131",
54
+ "address": "0xf583F43ea64D6d1D20F6E6D482f09eFEbc8f8556",
55
+ "DAI-DynamicIRM": "0x5A7dC8044223787eB1c327B96BDa6cE5557C98a8",
56
56
  "tokens": {
57
- "DAI": "0x309CC0ADd0BF2790dAD10B46b79e633440283136",
58
- "mkUSD": "0x5A95375287cf67b83723b9Ca16D6255a9cEaE461"
57
+ "DAI": "0x2d18d6ab95DFb409e0B27e7D95F785307beBac4a",
58
+ "mkUSD": "0xaA409e5746B89D4CC930247aA473eFCb6aaeF43C"
59
59
  },
60
- "mkUSD-DynamicIRM": "0xB4EF3136DBe8333F1148f8b9f1b6f731Cb0c768F"
60
+ "mkUSD-DynamicIRM": "0xda7698bFc8724649421D8C184f6719f2f5cDEECD"
61
61
  },
62
62
  "Apriori (aprMON) / wMON": {
63
- "address": "0x4D6192A5E3012D394cf3D5041888ac7D3960c584",
63
+ "address": "0x440d26eAffb45305E89187C75567c7C246b6A748",
64
64
  "plugins": {
65
- "nativeVaultPositionManager": "0x16F95048d64f92DF1a889431e05025d0c5Fc6009"
65
+ "nativeVaultPositionManager": "0xA40aEc339BC810D1e5dC4eFf049A70b7617D6bDb"
66
66
  },
67
- "WMON-DynamicIRM": "0x7c245D004eCc6292fE89aF5A894b1dA306CbbaC4",
67
+ "WMON-DynamicIRM": "0x57eF173Fbe320Ec10Dcf6edd15956D667fb1112f",
68
68
  "tokens": {
69
- "WMON": "0x679125118C236F7AbD5b5667E3B43564E9947435",
70
- "aprMON": "0x90453aAfCF84E04103233726948881B260e01D31"
69
+ "WMON": "0x69C53fBaDa7bE5823417f695752162D424FDA0eF",
70
+ "aprMON": "0x1DBDFA96870F52839dA11332E69be6A2F42208f5"
71
71
  }
72
72
  },
73
73
  "Fastlane (shMON) / wMON": {
74
- "address": "0x66a08Ff9c6D7b054004768771fD148083A03A034",
74
+ "address": "0xcE9191dDFFe9Cb2c9f8A6Dc665fe6622eD571539",
75
75
  "plugins": {
76
- "nativeVaultPositionManager": "0xAb019932741f81e262fAC8e86400d476b7Ba5BCC"
76
+ "nativeVaultPositionManager": "0x8980088FCB488d84a3eb844c71118F35cF939E2E"
77
77
  },
78
- "WMON-DynamicIRM": "0x8A1F36E489B61a55617b79fBC47048baE10186BA",
78
+ "WMON-DynamicIRM": "0xAD0223Df193285cfc012Cf5D803673a465E77e86",
79
79
  "tokens": {
80
- "WMON": "0x61E771Aa32F954E57EadCAcD69166fcaA404c6a1",
81
- "shMON": "0xdAC8aa3D833E32903D8B72A1beA3F1c9c1F727ae"
80
+ "WMON": "0x5053e1358CBD190492Aa00b50835eBA1030Ee2D4",
81
+ "shMON": "0x1D50152DBEDFC61996A08bA5EcE98CA7E8566175"
82
82
  }
83
83
  },
84
84
  "Kintsu (sMON) / wMON": {
85
- "address": "0x891121e5756Bea0939198170372510E347B9fE8F",
85
+ "address": "0x25D232CCdc4714acc7Dd71c569744aa8C721e344",
86
86
  "plugins": {
87
- "nativeVaultPositionManager": "0xF0D9Fdc67cACeB540CF1d7618D6f2E8593D7f043"
87
+ "nativeVaultPositionManager": "0xBBfaDD2A1CFD234DF243a78931ec35D6013b824C"
88
88
  },
89
- "WMON-DynamicIRM": "0x6eC4BAeB4bd69AE0Cfddf425c7FaDd3b58bECEa1",
89
+ "sMON-DynamicIRM": "0x6E36446dFd47347A2FcDEDC50B0d8cd6973BD3C7",
90
90
  "tokens": {
91
- "WMON": "0xcA091D9529773EF81A05f4acc51c5F707143c252",
92
- "sMON": "0xBeD25a6b20b14ACc65b81dB6128113B6ecdFe794"
91
+ "sMON": "0x0189Cec4582D4d78cb0f4D831E325580FC790907",
92
+ "WMON": "0x301314BA7ce92B2606a1b4BBfF75dF65ACc5b2aC"
93
93
  }
94
94
  },
95
95
  "Magma (gMON) / wMON": {
96
- "address": "0x5823A4a97047dC89f982e7DEAe0FBb47644A9EF5",
96
+ "address": "0xD7B389D4fb03eDfD81a5D7D1620c7992D9AF0d56",
97
97
  "plugins": {
98
- "nativeVaultPositionManager": "0xc84CB3A8c88727c3B2e92d7BAd65E93d1fa9ADc1"
98
+ "nativeVaultPositionManager": "0x9432239f8A4A21572E7719A30d729E21437edFeF"
99
99
  },
100
- "WMON-DynamicIRM": "0x56Ee21efb7FE68577eC0B7256BdAA7d42cC5a190",
100
+ "gMON-DynamicIRM": "0x5887379D06abb1bBd26375e1fd7c4242ceF1313B",
101
101
  "tokens": {
102
- "WMON": "0xbBA0E641C57719AF36C6d7917E2b1C4Bf9B6FBf8",
103
- "gMON": "0x45A714F833200dCa106b496Ac756D293a1A01e40"
102
+ "gMON": "0x4283ac581cEcE11AE7bee0441c1a52ADDf60e22A",
103
+ "WMON": "0x5a254817010674100ED0C9213770EAE2456c14a8"
104
104
  }
105
105
  }
106
106
  },
107
- "MessagingHub": "0x201b327847d171334b45fcE8b305F57951A0AAa8",
108
- "CVE": "0x38C62478Ce798944AC4d0d315892c8edDB3Fc2bc",
109
- "RewardManager": "0xA684E684f3a49E755A22542d6CA117a2253d7caA",
110
- "VeCVE": "0x58e281d1a7997277e342e64fd394F8bE0eD7363A",
111
- "GaugeManager": "0x3978fd9b71F335E6D5b8e2c78Ae3b7B5FF97c434",
112
- "VotingHub": "0x61737DB96dB2790BAdB87A42A44128912eBFb823",
113
- "WMON-MockPermissionV3Aggregator": "0xe736369E26bCa0101DA69b63bb00ef8E13f6d370",
114
- "WMON-ChainlinkAdaptor": "0x9D7349359C502f0E71e9a23A10c9bCeA71Ad2A76",
115
- "VaultAggregator-WMON-aprMON": "0xc556091aDE2d6A87f8ed4aa0E3C5426E88371111",
116
- "VaultAggregator-WMON-shMON": "0xD887d6FdAaD2D4fa4Dd04607e98C8c1df184AB2C",
117
- "ProtocolReader": "0x4BF956008D1A6D59194015119cC978a1E8E28851"
107
+ "MessagingHub": "0x5BcE470A10DE92BF949bA739F03D88093a5dEB71",
108
+ "CVE": "0x56e1A0A1125C08a4ceCcF4E398eCB0D98f4e9dcd",
109
+ "RewardManager": "0xc6A1E835Db7157E49bD4b70f2100fb347442fd00",
110
+ "VeCVE": "0x39972754c6CDB2624738ABd858369055cB966326",
111
+ "GaugeManager": "0xa72E20bA2674A8eFD228220a6A5d4dEfC2492896",
112
+ "VotingHub": "0x601dF37De559641429F53bAD132Bca4F5AcE471e",
113
+ "WMON-MockPermissionV3Aggregator": "0x7bf8bd0332D9D657e146bC89d535607cfF86606c",
114
+ "WMON-ChainlinkAdaptor": "0x99942DE2e0219e190e08a162a719D7a8257702B3",
115
+ "VaultAggregator-WMON-aprMON": "0x5AFd5743741F35A021c42e1885C6D04dC1208A3A",
116
+ "VaultAggregator-WMON-shMON": "0x8908C7b2f71Ac045940C96BB42132991807b0467",
117
+ "ProtocolReader": "0xd01377f8BA33979E8C99b34a5646e8c44ed284CC"
118
118
  }
@@ -2,11 +2,13 @@ import { Contract, TransactionResponse } from "ethers";
2
2
  import { ChangeRate } from "../helpers";
3
3
  import { AdaptorTypes, DynamicMarketToken, StaticMarketToken, UserMarketToken } from "./ProtocolReader";
4
4
  import { ERC20 } from "./ERC20";
5
- import { Market } from "./Market";
5
+ import { Market, PluginTypes } from "./Market";
6
6
  import { Calldata } from "./Calldata";
7
7
  import Decimal from "decimal.js";
8
8
  import { address, bytes, curvance_provider, Percentage, TokenInput, USD } from "../types";
9
9
  import { Zapper, ZapperTypes } from "./Zapper";
10
+ import { PositionManager, PositionManagerTypes } from "./PositionManager";
11
+ import { BorrowableCToken } from "./BorrowableCToken";
10
12
  export interface AccountSnapshot {
11
13
  asset: address;
12
14
  decimals: bigint;
@@ -73,6 +75,7 @@ export declare class CToken extends Calldata<ICToken> {
73
75
  get asset(): import("./ProtocolReader").StaticMarketAsset;
74
76
  get isBorrowable(): boolean;
75
77
  get canZap(): boolean;
78
+ get canLeverage(): boolean;
76
79
  /** @returns Collateral Ratio in BPS or bigint */
77
80
  getCollRatio(inBPS: true): Percentage;
78
81
  getCollRatio(inBPS: false): bigint;
@@ -148,10 +151,11 @@ export declare class CToken extends Calldata<ICToken> {
148
151
  getTotalCollateral(inUSD: false): bigint;
149
152
  fetchTotalCollateral(inUSD: true): Promise<USD>;
150
153
  fetchTotalCollateral(inUSD: false): Promise<bigint>;
154
+ getPositionManager(type: PositionManagerTypes): PositionManager;
151
155
  getZapper(type: ZapperTypes): Zapper;
152
- isPluginApproved(plugin: ZapperTypes): Promise<boolean>;
153
- approvePlugin(plugin: ZapperTypes): Promise<TransactionResponse>;
154
- getPluginAddress(plugin: ZapperTypes): address;
156
+ isPluginApproved(plugin: ZapperTypes | PositionManagerTypes, type: PluginTypes): Promise<boolean>;
157
+ approvePlugin(plugin: ZapperTypes | PositionManagerTypes, type: PluginTypes): Promise<TransactionResponse>;
158
+ getPluginAddress(plugin: ZapperTypes | PositionManagerTypes, type: PluginTypes): address;
155
159
  getAllowance(check_contract: address): Promise<bigint>;
156
160
  approve(amount: TokenInput | null, spender: address): Promise<TransactionResponse>;
157
161
  fetchDecimals(): Promise<bigint>;
@@ -175,6 +179,8 @@ export declare class CToken extends Calldata<ICToken> {
175
179
  convertToAssets(shares: bigint): Promise<bigint>;
176
180
  convertToShares(assets: bigint): Promise<bigint>;
177
181
  convertTokenInput(amount: TokenInput, inShares?: boolean): bigint;
182
+ maxRemainingLeverage(ctoken: BorrowableCToken, type: PositionManagerTypes): Promise<bigint>;
183
+ depositAndLeverage(depositAmount: TokenInput, borrow: BorrowableCToken, borrowAmount: TokenInput, type: PositionManagerTypes, slippage_?: TokenInput): Promise<TransactionResponse>;
178
184
  deposit(amount: TokenInput, zap?: ZapperTypes, receiver?: address | null): Promise<TransactionResponse>;
179
185
  depositAsCollateral(amount: Decimal, zap?: ZapperTypes, receiver?: address | null): Promise<TransactionResponse>;
180
186
  redeem(amount: TokenInput, receiver?: address | null, owner?: address | null): Promise<TransactionResponse>;
@@ -190,6 +196,9 @@ export declare class CToken extends Calldata<ICToken> {
190
196
  fetchConvertTokensToUsd(tokenAmount: bigint, asset?: boolean): Promise<Decimal>;
191
197
  convertTokensToUsd(tokenAmount: bigint, asset?: boolean): Decimal;
192
198
  buildMultiCallAction(calldata: bytes): MulticallAction;
199
+ private _checkPositionManagerApproval;
200
+ private _checkZapperApproval;
201
+ private _checkAssetApproval;
193
202
  private _checkDepositApprovals;
194
203
  oracleRoute(calldata: bytes, override?: {
195
204
  [key: string]: any;
@@ -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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"}
@@ -14,6 +14,7 @@ const BaseCToken_json_1 = __importDefault(require("../abis/BaseCToken.json"));
14
14
  const Redstone_1 = require("./Redstone");
15
15
  const Zapper_1 = require("./Zapper");
16
16
  const setup_1 = require("../setup");
17
+ const PositionManager_1 = require("./PositionManager");
17
18
  class CToken extends Calldata_1.Calldata {
18
19
  provider;
19
20
  address;
@@ -50,6 +51,7 @@ class CToken extends Calldata_1.Calldata {
50
51
  get asset() { return this.cache.asset; }
51
52
  get isBorrowable() { return this.cache.isBorrowable; }
52
53
  get canZap() { return this.zapTypes.length > 0; }
54
+ get canLeverage() { return this.leverageTypes.length > 0; }
53
55
  getCollRatio(inBPS) {
54
56
  return inBPS ? (0, decimal_js_1.default)(this.cache.collRatio).div(helpers_1.BPS) : this.cache.collRatio;
55
57
  }
@@ -150,41 +152,45 @@ class CToken extends Calldata_1.Calldata {
150
152
  const totalCollateral = await this.contract.marketCollateralPosted();
151
153
  return inUSD ? this.fetchConvertTokensToUsd(totalCollateral) : totalCollateral;
152
154
  }
155
+ getPositionManager(type) {
156
+ const signer = (0, helpers_1.validateProviderAsSigner)(this.provider);
157
+ let manager_contract = this.getPluginAddress(type, 'positionManager');
158
+ return new PositionManager_1.PositionManager(manager_contract, signer, type);
159
+ }
153
160
  getZapper(type) {
154
161
  const signer = (0, helpers_1.validateProviderAsSigner)(this.provider);
155
- let zap_contract;
156
- switch (type) {
157
- case 'native-vault':
158
- zap_contract = setup_1.setup_config.contracts.zappers['nativeVaultZapper'];
159
- break;
160
- case 'vault':
161
- zap_contract = setup_1.setup_config.contracts.zappers['vaultZapper'];
162
- break;
163
- case 'simple':
164
- zap_contract = setup_1.setup_config.contracts.zappers['simpleZapper'];
165
- break;
166
- default: throw new Error("Unknown zapper type");
167
- }
162
+ const zap_contract = this.getPluginAddress(type, 'zapper');
168
163
  return new Zapper_1.Zapper(zap_contract, signer, type);
169
164
  }
170
- async isPluginApproved(plugin) {
165
+ async isPluginApproved(plugin, type) {
171
166
  const signer = (0, helpers_1.validateProviderAsSigner)(this.provider);
172
- const plugin_address = this.getPluginAddress(plugin);
167
+ const plugin_address = this.getPluginAddress(plugin, type);
173
168
  return this.contract.isDelegate(signer.address, plugin_address);
174
169
  }
175
- async approvePlugin(plugin) {
176
- const plugin_address = this.getPluginAddress(plugin);
170
+ async approvePlugin(plugin, type) {
171
+ const plugin_address = this.getPluginAddress(plugin, type);
177
172
  return this.contract.setDelegateApproval(plugin_address, true);
178
173
  }
179
- getPluginAddress(plugin) {
180
- if (!Zapper_1.zapperTypeToName.has(plugin)) {
181
- throw new Error("Plugin does not have a contract to map too");
182
- }
183
- const plugin_name = Zapper_1.zapperTypeToName.get(plugin);
184
- if (!plugin_name || !setup_1.setup_config.contracts.zappers || !(plugin_name in setup_1.setup_config.contracts.zappers)) {
185
- throw new Error(`Plugin ${plugin_name} not found in zappers`);
174
+ getPluginAddress(plugin, type) {
175
+ switch (type) {
176
+ case 'zapper': {
177
+ if (!Zapper_1.zapperTypeToName.has(plugin)) {
178
+ throw new Error("Plugin does not have a contract to map too");
179
+ }
180
+ const plugin_name = Zapper_1.zapperTypeToName.get(plugin);
181
+ if (!plugin_name || !setup_1.setup_config.contracts.zappers || !(plugin_name in setup_1.setup_config.contracts.zappers)) {
182
+ throw new Error(`Plugin ${plugin_name} not found in zappers`);
183
+ }
184
+ return setup_1.setup_config.contracts.zappers[plugin_name];
185
+ }
186
+ case 'positionManager': {
187
+ switch (plugin) {
188
+ case 'native-vault': return this.market.plugins.nativeVaultPositionManager;
189
+ default: throw new Error("Unknown position manager type");
190
+ }
191
+ }
192
+ default: throw new Error("Unsupported plugin type");
186
193
  }
187
- return setup_1.setup_config.contracts.zappers[plugin_name];
188
194
  }
189
195
  async getAllowance(check_contract) {
190
196
  const signer = (0, helpers_1.validateProviderAsSigner)(this.provider);
@@ -298,6 +304,43 @@ class CToken extends Calldata_1.Calldata {
298
304
  const decimals = inShares ? this.decimals : this.asset.decimals;
299
305
  return (0, ethers_1.parseUnits)(amount.toString(), Number(decimals));
300
306
  }
307
+ async maxRemainingLeverage(ctoken, type) {
308
+ const manager = this.getPositionManager(type);
309
+ const amount = manager.maxRemainingLeverage(ctoken);
310
+ console.log(amount);
311
+ return amount;
312
+ }
313
+ async depositAndLeverage(depositAmount, borrow, borrowAmount, type, slippage_ = (0, decimal_js_1.default)(0.5)) {
314
+ const slippage = (0, helpers_1.toBigInt)(slippage_.toNumber(), 18n);
315
+ const manager = this.getPositionManager(type);
316
+ let calldata;
317
+ // TODO: Implement vault & simple position manager
318
+ switch (type) {
319
+ case 'native-vault': {
320
+ calldata = manager.getDepositAndLeverageCalldata(this.convertTokenInput(depositAmount), {
321
+ borrowableCToken: borrow.address,
322
+ borrowAssets: borrow.convertTokenInput(borrowAmount),
323
+ cToken: this.address,
324
+ swapAction: {
325
+ inputToken: helpers_1.EMPTY_ADDRESS,
326
+ inputAmount: 0n,
327
+ outputToken: helpers_1.EMPTY_ADDRESS,
328
+ target: helpers_1.EMPTY_ADDRESS,
329
+ slippage: 0n,
330
+ call: "0x"
331
+ },
332
+ auxData: "0x",
333
+ }, slippage);
334
+ break;
335
+ }
336
+ default: throw new Error("Unsupported position manager type");
337
+ }
338
+ await this._checkAssetApproval(manager.address, this.convertTokenInput(depositAmount));
339
+ await this._checkPositionManagerApproval(manager);
340
+ return this.oracleRoute(calldata, {
341
+ to: manager.address
342
+ });
343
+ }
301
344
  async deposit(amount, zap = 'none', receiver = null) {
302
345
  const signer = (0, helpers_1.validateProviderAsSigner)(this.provider);
303
346
  if (receiver == null)
@@ -319,7 +362,7 @@ class CToken extends Calldata_1.Calldata {
319
362
  else {
320
363
  calldata = this.getCallData("deposit", [assets, receiver]);
321
364
  }
322
- await this._checkDepositApprovals(signer, null, assets);
365
+ await this._checkAssetApproval(this.address, assets);
323
366
  return this.oracleRoute(calldata, calldata_overrides);
324
367
  }
325
368
  async depositAsCollateral(amount, zap = 'none', receiver = null) {
@@ -350,7 +393,7 @@ class CToken extends Calldata_1.Calldata {
350
393
  else {
351
394
  calldata = this.getCallData("depositAsCollateral", [assets, receiver]);
352
395
  }
353
- await this._checkDepositApprovals(signer, zapper, assets);
396
+ await this._checkDepositApprovals(zapper, assets);
354
397
  return this.oracleRoute(calldata, call_overrides);
355
398
  }
356
399
  async redeem(amount, receiver = null, owner = null) {
@@ -396,20 +439,42 @@ class CToken extends Calldata_1.Calldata {
396
439
  data: calldata
397
440
  };
398
441
  }
399
- async _checkDepositApprovals(signer, zapper, assets) {
442
+ async _checkPositionManagerApproval(manager) {
443
+ const isApproved = await this.isPluginApproved(manager.type, 'positionManager');
444
+ if (!isApproved) {
445
+ throw new Error(`PositionManager ${manager.address} is not approved for ${this.symbol}`);
446
+ }
447
+ }
448
+ async _checkZapperApproval(zapper) {
449
+ if (!setup_1.setup_config.approval_protection) {
450
+ return;
451
+ }
400
452
  if (setup_1.setup_config.approval_protection && zapper) {
401
- const plugin_allowed = await this.isPluginApproved(zapper.type);
453
+ const plugin_allowed = await this.isPluginApproved(zapper.type, 'zapper');
402
454
  if (!plugin_allowed) {
403
455
  throw new Error(`Please approve the ${zapper.type} Zapper to be able to move ${this.symbol} on your behalf.`);
404
456
  }
405
457
  }
406
- else if (setup_1.setup_config.approval_protection) {
407
- const asset = this.getAsset(true);
408
- const allowance = await asset.allowance(signer.address, this.address);
409
- if (allowance < assets) {
410
- throw new Error(`Please approve the ${asset.symbol} token for ${this.symbol}.`);
411
- }
458
+ }
459
+ async _checkAssetApproval(target, assets) {
460
+ if (!setup_1.setup_config.approval_protection) {
461
+ return;
462
+ }
463
+ const asset = this.getAsset(true);
464
+ const owner = (0, helpers_1.validateProviderAsSigner)(this.provider).address;
465
+ const allowance = await asset.allowance(owner, target);
466
+ if (allowance < assets) {
467
+ throw new Error(`Please approve the ${asset.symbol} token for ${this.symbol}.`);
468
+ }
469
+ }
470
+ async _checkDepositApprovals(zapper, assets) {
471
+ if (!setup_1.setup_config.approval_protection) {
472
+ return;
473
+ }
474
+ if (zapper) {
475
+ await this._checkZapperApproval(zapper);
412
476
  }
477
+ await this._checkAssetApproval(this.address, assets);
413
478
  }
414
479
  async oracleRoute(calldata, override = {}) {
415
480
  const price_updates = await this.getPriceUpdates();
@@ -1 +1 @@
1
- {"version":3,"file":"CToken.js","sourceRoot":"","sources":["../../src/classes/CToken.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CToken.js","sourceRoot":"","sources":["../../src/classes/CToken.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,7 @@ import { address, curvance_provider, Percentage, TokenInput, USD } from "../type
7
7
  import { OracleManager } from "./OracleManager";
8
8
  import { BorrowableCToken } from "./BorrowableCToken";
9
9
  export type MarketToken = CToken | BorrowableCToken;
10
+ export type PluginTypes = 'zapper' | 'positionManager';
10
11
  export interface Plugins {
11
12
  simplePositionManager?: address;
12
13
  vaultPositionManager?: address;