@defisaver/positions-sdk 2.1.15 → 2.1.17-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/cjs/contracts.d.ts +100947 -134653
- package/cjs/liquityV2/index.d.ts +2 -0
- package/cjs/liquityV2/index.js +52 -9
- package/cjs/markets/aave/marketAssets.js +1 -1
- package/cjs/markets/morphoBlue/index.d.ts +8 -12
- package/cjs/markets/morphoBlue/index.js +69 -102
- package/cjs/moneymarket/moneymarketCommonService.js +5 -1
- package/cjs/services/viem.d.ts +2 -3254
- package/cjs/staking/staking.js +4 -2
- package/cjs/types/morphoBlue.d.ts +5 -7
- package/cjs/types/morphoBlue.js +5 -6
- package/esm/contracts.d.ts +100947 -134653
- package/esm/liquityV2/index.d.ts +2 -0
- package/esm/liquityV2/index.js +48 -7
- package/esm/markets/aave/marketAssets.js +1 -1
- package/esm/markets/morphoBlue/index.d.ts +8 -12
- package/esm/markets/morphoBlue/index.js +62 -93
- package/esm/moneymarket/moneymarketCommonService.js +5 -1
- package/esm/services/viem.d.ts +2 -3254
- package/esm/staking/staking.js +4 -2
- package/esm/types/morphoBlue.d.ts +5 -7
- package/esm/types/morphoBlue.js +5 -6
- package/package.json +1 -1
- package/src/markets/morphoBlue/index.ts +65 -93
- package/src/types/morphoBlue.ts +5 -6
package/cjs/liquityV2/index.d.ts
CHANGED
|
@@ -23,6 +23,8 @@ export declare const getLiquityV2UserTroveIds: (provider: EthereumProvider, netw
|
|
|
23
23
|
}[];
|
|
24
24
|
nextFreeTroveIndex: string;
|
|
25
25
|
}>;
|
|
26
|
+
export declare const calculateDebtInFrontLiquityV2: (markets: Record<LiquityV2Versions, LiquityV2MarketData>, selectedMarket: LiquityV2Versions, allMarketsUnbackedDebts: Record<LiquityV2Versions, string>, interestRateDebtInFront: string) => string;
|
|
27
|
+
export declare const getDebtInFrontForInterestRateIncludingNewDebtLiquityV2: (newDebt: string, markets: Record<LiquityV2Versions, LiquityV2MarketData>, selectedMarket: LiquityV2Versions, provider: Client, network: NetworkNumber, interestRate: string) => Promise<string>;
|
|
26
28
|
export declare const getDebtInFrontForInterestRateLiquityV2: (markets: Record<LiquityV2Versions, LiquityV2MarketData>, selectedMarket: LiquityV2Versions, provider: EthereumProvider, network: NetworkNumber, isLegacy: boolean, interestRate: string, debtInFrontBeingMoved?: string) => Promise<string>;
|
|
27
29
|
export declare const _getLiquityV2TroveData: (provider: Client, network: NetworkNumber, { selectedMarket, assetsData, troveId, allMarketsData, }: {
|
|
28
30
|
selectedMarket: LiquityV2MarketInfo;
|
package/cjs/liquityV2/index.js
CHANGED
|
@@ -12,7 +12,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
12
12
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
13
|
};
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
exports.getLiquitySAndYBold = exports.getLiquityV2Staking = exports.getLiquityV2ClaimableCollateral = exports.getLiquityV2TroveData = exports._getLiquityV2TroveData = exports.getDebtInFrontForInterestRateLiquityV2 = exports.getLiquityV2UserTroveIds = exports._getLiquityV2UserTroveIds = exports.getLiquityV2MarketData = exports._getLiquityV2MarketData = void 0;
|
|
15
|
+
exports.getLiquitySAndYBold = exports.getLiquityV2Staking = exports.getLiquityV2ClaimableCollateral = exports.getLiquityV2TroveData = exports._getLiquityV2TroveData = exports.getDebtInFrontForInterestRateLiquityV2 = exports.getDebtInFrontForInterestRateIncludingNewDebtLiquityV2 = exports.calculateDebtInFrontLiquityV2 = exports.getLiquityV2UserTroveIds = exports._getLiquityV2UserTroveIds = exports.getLiquityV2MarketData = exports._getLiquityV2MarketData = void 0;
|
|
16
16
|
const decimal_js_1 = __importDefault(require("decimal.js"));
|
|
17
17
|
const tokens_1 = require("@defisaver/tokens");
|
|
18
18
|
const contracts_1 = require("../contracts");
|
|
@@ -201,11 +201,39 @@ const getAllMarketsUnbackedDebts = (markets, isLegacy, provider, network) => __a
|
|
|
201
201
|
return Object.fromEntries(allMarketsUnbackedDebt);
|
|
202
202
|
});
|
|
203
203
|
const calculateDebtInFrontLiquityV2 = (markets, selectedMarket, allMarketsUnbackedDebts, interestRateDebtInFront) => {
|
|
204
|
+
// Sanity check to avoid division by 0. Very unlikely to ever happen.
|
|
205
|
+
const selectedMarketTotalBorrow = new decimal_js_1.default(markets[selectedMarket].assetsData[(0, markets_1.LiquityV2Markets)(common_1.NetworkNumber.Eth)[selectedMarket].debtToken].totalBorrow);
|
|
206
|
+
if (selectedMarketTotalBorrow.eq(0))
|
|
207
|
+
return new decimal_js_1.default(0).toString();
|
|
204
208
|
const selectedMarketUnbackedDebt = new decimal_js_1.default(allMarketsUnbackedDebts[selectedMarket]);
|
|
205
209
|
const { isLegacy } = (0, markets_1.LiquityV2Markets)(common_1.NetworkNumber.Eth)[selectedMarket];
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
210
|
+
const totalUnbackedDebt = Object.values(allMarketsUnbackedDebts).reduce((acc, val) => acc.plus(new decimal_js_1.default(val)), new decimal_js_1.default(0));
|
|
211
|
+
// When totalUnbackedDebt is 0, redemptions will be proportional with the branch size and not to unbacked debt.
|
|
212
|
+
// When unbacked debt is 0 for branch, next redemption call won't touch that branch, so in order to estimate total debt in front we will:
|
|
213
|
+
// - First add up all the unbacked debt from other branches, as that will be the only debt that will be redeemed on the fist redemption call
|
|
214
|
+
// - Perform split the same way as we would do when totalUnbackedDebt == 0, this would represent the second call to the redemption function
|
|
215
|
+
if (selectedMarketUnbackedDebt.eq(0)) {
|
|
216
|
+
// Special case if the branch debt in front is 0, it means that all debt in front is unbacked debt from other branches.
|
|
217
|
+
if (new decimal_js_1.default(interestRateDebtInFront).eq(0))
|
|
218
|
+
return totalUnbackedDebt.toString();
|
|
219
|
+
// Then calculate how much of that estimated amount would go to each branch
|
|
220
|
+
// Second redemption call - calculate proportional redemption based on updated total debt
|
|
221
|
+
const amountBeingRedeemedOnEachMarketByTotalBorrow = Object.entries(markets).map(([version, market]) => {
|
|
222
|
+
const { isLegacy: isLegacyMarket } = (0, markets_1.LiquityV2Markets)(common_1.NetworkNumber.Eth)[version];
|
|
223
|
+
if (version === selectedMarket && isLegacyMarket !== isLegacy)
|
|
224
|
+
return new decimal_js_1.default(interestRateDebtInFront);
|
|
225
|
+
const { assetsData } = market;
|
|
226
|
+
const { debtToken } = (0, markets_1.LiquityV2Markets)(common_1.NetworkNumber.Eth)[version];
|
|
227
|
+
// For other markets, subtract their unbacked debt as it will be cleared in first redemption call
|
|
228
|
+
const marketUnbackedDebt = new decimal_js_1.default(allMarketsUnbackedDebts[version]);
|
|
229
|
+
const totalBorrow = new decimal_js_1.default(assetsData[debtToken].totalBorrow).sub(marketUnbackedDebt);
|
|
230
|
+
const amountToRedeem = new decimal_js_1.default(interestRateDebtInFront).mul(totalBorrow).div(selectedMarketTotalBorrow);
|
|
231
|
+
return decimal_js_1.default.min(amountToRedeem, totalBorrow);
|
|
232
|
+
});
|
|
233
|
+
const redemptionAmount = amountBeingRedeemedOnEachMarketByTotalBorrow.reduce((acc, val) => acc.plus(val), new decimal_js_1.default(0));
|
|
234
|
+
return totalUnbackedDebt.plus(redemptionAmount).toString();
|
|
235
|
+
}
|
|
236
|
+
const amountBeingRedeemedOnEachMarketByUnbackedDebt = Object.entries(markets).map(([version, market]) => {
|
|
209
237
|
const { isLegacy: isLegacyMarket } = (0, markets_1.LiquityV2Markets)(common_1.NetworkNumber.Eth)[version];
|
|
210
238
|
if (version === selectedMarket && isLegacyMarket !== isLegacy)
|
|
211
239
|
return new decimal_js_1.default(interestRateDebtInFront);
|
|
@@ -213,16 +241,31 @@ const calculateDebtInFrontLiquityV2 = (markets, selectedMarket, allMarketsUnback
|
|
|
213
241
|
const { debtToken } = (0, markets_1.LiquityV2Markets)(common_1.NetworkNumber.Eth)[version];
|
|
214
242
|
const unbackedDebt = new decimal_js_1.default(allMarketsUnbackedDebts[version]);
|
|
215
243
|
const totalBorrow = new decimal_js_1.default(assetsData[debtToken].totalBorrow);
|
|
216
|
-
const
|
|
217
|
-
return decimal_js_1.default.min(
|
|
244
|
+
const amountToRedeem = new decimal_js_1.default(interestRateDebtInFront).mul(unbackedDebt).div(selectedMarketUnbackedDebt);
|
|
245
|
+
return decimal_js_1.default.min(amountToRedeem, totalBorrow);
|
|
218
246
|
});
|
|
219
|
-
return
|
|
247
|
+
return amountBeingRedeemedOnEachMarketByUnbackedDebt.reduce((acc, val) => acc.plus(val), new decimal_js_1.default(0)).toString();
|
|
220
248
|
};
|
|
249
|
+
exports.calculateDebtInFrontLiquityV2 = calculateDebtInFrontLiquityV2;
|
|
250
|
+
// @dev The amount redeemed on each branch depends on the unbacked debt of every branch (the difference between total borrow and stability pool deposits).
|
|
251
|
+
// When new debt is generated on the selected market, the unbacked debt will increase, resulting in a higher redemption amount on that branch.
|
|
252
|
+
// This function accepts the new debt that's about to be generated (e.g., trove creation) and estimates the debt in front based on the new state.
|
|
253
|
+
const getDebtInFrontForInterestRateIncludingNewDebtLiquityV2 = (newDebt, markets, selectedMarket, provider, network, interestRate) => __awaiter(void 0, void 0, void 0, function* () {
|
|
254
|
+
const marketsWithNewDebt = structuredClone(markets);
|
|
255
|
+
const selectedMarketDebtToken = (0, markets_1.LiquityV2Markets)(network)[selectedMarket].debtToken;
|
|
256
|
+
const currentTotalBorrow = new decimal_js_1.default(marketsWithNewDebt[selectedMarket].assetsData[selectedMarketDebtToken].totalBorrow);
|
|
257
|
+
marketsWithNewDebt[selectedMarket].assetsData[selectedMarketDebtToken].totalBorrow = currentTotalBorrow.add(newDebt).toString();
|
|
258
|
+
const { isLegacy } = (0, markets_1.LiquityV2Markets)(common_1.NetworkNumber.Eth)[selectedMarket];
|
|
259
|
+
const allMarketsUnbackedDebts = yield getAllMarketsUnbackedDebts(marketsWithNewDebt, isLegacy, provider, network);
|
|
260
|
+
const interestRateDebtInFront = new decimal_js_1.default(yield getDebtInFrontForInterestRateSingleMarketLiquityV2(provider, network, isLegacy, (0, markets_1.LiquityV2Markets)(network)[selectedMarket].marketAddress, interestRate));
|
|
261
|
+
return (0, exports.calculateDebtInFrontLiquityV2)(marketsWithNewDebt, selectedMarket, allMarketsUnbackedDebts, interestRateDebtInFront.toString());
|
|
262
|
+
});
|
|
263
|
+
exports.getDebtInFrontForInterestRateIncludingNewDebtLiquityV2 = getDebtInFrontForInterestRateIncludingNewDebtLiquityV2;
|
|
221
264
|
const getDebtInFrontLiquityV2 = (markets, selectedMarket, provider, network, viewContract, troveId) => __awaiter(void 0, void 0, void 0, function* () {
|
|
222
265
|
const { isLegacy } = (0, markets_1.LiquityV2Markets)(common_1.NetworkNumber.Eth)[selectedMarket];
|
|
223
266
|
const allMarketsUnbackedDebts = yield getAllMarketsUnbackedDebts(markets, isLegacy, provider, network);
|
|
224
267
|
const interestRateDebtInFront = yield getDebtInFrontForSingleMarketLiquityV2(provider, network, isLegacy, (0, markets_1.LiquityV2Markets)(network)[selectedMarket].marketAddress, troveId);
|
|
225
|
-
return calculateDebtInFrontLiquityV2(markets, selectedMarket, allMarketsUnbackedDebts, interestRateDebtInFront.toString());
|
|
268
|
+
return (0, exports.calculateDebtInFrontLiquityV2)(markets, selectedMarket, allMarketsUnbackedDebts, interestRateDebtInFront.toString());
|
|
226
269
|
});
|
|
227
270
|
/**
|
|
228
271
|
* @param markets
|
|
@@ -237,7 +280,7 @@ const _getDebtInFrontForInterestRateLiquityV2 = (markets_2, selectedMarket_1, pr
|
|
|
237
280
|
const allMarketsUnbackedDebts = yield getAllMarketsUnbackedDebts(markets, isLegacy, provider, network);
|
|
238
281
|
const interestRateDebtInFront = new decimal_js_1.default(yield getDebtInFrontForInterestRateSingleMarketLiquityV2(provider, network, isLegacy, (0, markets_1.LiquityV2Markets)(network)[selectedMarket].marketAddress, interestRate))
|
|
239
282
|
.sub(debtInFrontBeingMoved);
|
|
240
|
-
return calculateDebtInFrontLiquityV2(markets, selectedMarket, allMarketsUnbackedDebts, interestRateDebtInFront.toString());
|
|
283
|
+
return (0, exports.calculateDebtInFrontLiquityV2)(markets, selectedMarket, allMarketsUnbackedDebts, interestRateDebtInFront.toString());
|
|
241
284
|
});
|
|
242
285
|
const getDebtInFrontForInterestRateLiquityV2 = (markets_2, selectedMarket_1, provider_1, network_1, isLegacy_1, interestRate_1, ...args_1) => __awaiter(void 0, [markets_2, selectedMarket_1, provider_1, network_1, isLegacy_1, interestRate_1, ...args_1], void 0, function* (markets, selectedMarket, provider, network, isLegacy, interestRate, debtInFrontBeingMoved = '0') { return _getDebtInFrontForInterestRateLiquityV2(markets, selectedMarket, (0, viem_1.getViemProvider)(provider, network), network, isLegacy, interestRate, debtInFrontBeingMoved); });
|
|
243
286
|
exports.getDebtInFrontForInterestRateLiquityV2 = getDebtInFrontForInterestRateLiquityV2;
|
|
@@ -18,7 +18,7 @@ exports.aaveV3AssetsDefaultMarketOpt = [
|
|
|
18
18
|
exports.aaveV3AssetsDefaultMarketArb = ['DAI', 'LINK', 'USDC.e', 'WBTC', 'ETH', 'USDT', 'AAVE', 'EURS', 'wstETH', 'MAI', 'rETH', 'LUSD', 'USDC', 'FRAX', 'ARB', 'weETH', 'GHO', 'ezETH', 'rsETH', 'tBTC'];
|
|
19
19
|
exports.aaveV3AssetsDefaultMarketBase = ['ETH', 'cbETH', 'USDbC', 'wstETH', 'USDC', 'weETH', 'cbBTC', 'ezETH', 'GHO', 'wrsETH', 'LBTC', 'EURC', 'AAVE', 'tBTC'];
|
|
20
20
|
exports.aaveV3AssetsDefaultMarketLinea = ['ETH', 'USDC', 'weETH', 'ezETH', 'USDT', 'wstETH', 'wrsETH', 'WBTC'];
|
|
21
|
-
exports.aaveV3AssetsDefaultMarketPlasma = ['ETH', 'USDT', 'sUSDe', 'USDe', 'weETH', 'XAUt', 'PT USDe Jan', 'PT sUSDe Jan', 'wrsETH', 'wstETH'];
|
|
21
|
+
exports.aaveV3AssetsDefaultMarketPlasma = ['ETH', 'USDT', 'sUSDe', 'USDe', 'weETH', 'XAUt', 'PT USDe Jan', 'PT sUSDe Jan', 'wrsETH', 'wstETH', 'syrupUSDT'];
|
|
22
22
|
// @dev Keep assets in array, do not assign directly, so we can parse it and edit it programmatically with `scripts/updateMarkets`
|
|
23
23
|
exports.aaveV3AssetsDefaultMarket = {
|
|
24
24
|
[common_1.NetworkNumber.Eth]: exports.aaveV3AssetsDefaultMarketEth,
|
|
@@ -12,7 +12,6 @@ export declare const MORPHO_BLUE_WSTETH_USDA_EXCHANGE_RATE: (networkId?: Network
|
|
|
12
12
|
export declare const MORPHO_BLUE_WSTETH_PYUSD: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
13
13
|
export declare const MORPHO_BLUE_USDE_USDT: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
14
14
|
export declare const MORPHO_BLUE_SUSDE_USDT: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
15
|
-
export declare const MORPHO_BLUE_SDAI_ETH: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
16
15
|
export declare const MORPHO_BLUE_MKR_USDC: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
17
16
|
export declare const MORPHO_BLUE_TBTC_USDC: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
18
17
|
export declare const MORPHO_BLUE_CBBTC_ETH_915: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
@@ -20,21 +19,19 @@ export declare const MORPHO_BLUE_CBBTC_USDC_860: (networkId?: NetworkNumber) =>
|
|
|
20
19
|
export declare const MORPHO_BLUE_SUSDE_USDC_915: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
21
20
|
export declare const MORPHO_BLUE_EZETH_ETH_860: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
22
21
|
export declare const MORPHO_BLUE_EZETH_ETH_945: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
23
|
-
export declare const MORPHO_BLUE_WEETH_ETH_860: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
24
22
|
export declare const MORPHO_BLUE_WEETH_ETH_945: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
25
23
|
export declare const MORPHO_BLUE_WSTETH_ETH_945: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
26
24
|
export declare const MORPHO_BLUE_WSTETH_ETH_945_EXCHANGE_RATE: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
27
25
|
export declare const MORPHO_BLUE_WSTETH_ETH_965_EXCHANGE_RATE: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
28
|
-
export declare const MORPHO_BLUE_SUSDE_DAI_770: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
29
26
|
export declare const MORPHO_BLUE_SUSDE_DAI_860: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
30
27
|
export declare const MORPHO_BLUE_SUSDE_DAI_915: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
31
28
|
export declare const MORPHO_BLUE_SUSDE_DAI_945: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
32
|
-
export declare const MORPHO_BLUE_USDE_DAI_770: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
33
29
|
export declare const MORPHO_BLUE_USDE_DAI_860: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
34
30
|
export declare const MORPHO_BLUE_USDE_DAI_915: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
35
|
-
export declare const MORPHO_BLUE_USDE_DAI_945: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
36
|
-
export declare const MORPHO_BLUE_RETH_ETH_945: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
37
31
|
export declare const MORPHO_BLUE_USR_USDC_915: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
32
|
+
export declare const MORPHO_BLUE_SYRUPUSDC_USDC_915: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
33
|
+
export declare const MORPHO_BLUE_LBTC_USDC_860: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
34
|
+
export declare const MORPHO_BLUE_LBTC_CBBTC_945: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
38
35
|
export declare const MORPHO_BLUE_CBETH_USDC_860_BASE: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
39
36
|
export declare const MORPHO_BLUE_CBETH_USDC_860_BASE_1c21c59d: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
40
37
|
export declare const MORPHO_BLUE_WSTETH_ETH_945_BASE: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
@@ -53,6 +50,7 @@ export declare const MORPHO_BLUE_LBTC_WBTC_945: (networkId?: NetworkNumber) => M
|
|
|
53
50
|
export declare const MORPHO_BLUE_LBTC_CBBTC_945_BASE: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
54
51
|
export declare const MORPHO_BLUE_WSTETH_EURC_860_BASE: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
55
52
|
export declare const MORPHO_BLUE_CBBTC_EURC_860_BASE: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
53
|
+
export declare const MORPHO_BLUE_WETH_EURC_860_BASE: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
56
54
|
export declare const MorphoBlueMarkets: (networkId: NetworkNumber) => {
|
|
57
55
|
readonly morphobluewstethusdc: MorphoBlueMarketData;
|
|
58
56
|
readonly morphobluesdaiusdc: MorphoBlueMarketData;
|
|
@@ -62,34 +60,31 @@ export declare const MorphoBlueMarkets: (networkId: NetworkNumber) => {
|
|
|
62
60
|
readonly morphobluewstethusdt: MorphoBlueMarketData;
|
|
63
61
|
readonly morphobluewstethusda_exchange_rate: MorphoBlueMarketData;
|
|
64
62
|
readonly morphobluwstethpyusd: MorphoBlueMarketData;
|
|
65
|
-
readonly morphoblueweetheth_860: MorphoBlueMarketData;
|
|
66
63
|
readonly morphoblueweetheth_945: MorphoBlueMarketData;
|
|
67
64
|
readonly morphobluewbtcpyusd: MorphoBlueMarketData;
|
|
68
65
|
readonly morphobluewbtceth: MorphoBlueMarketData;
|
|
69
66
|
readonly morphoblueusdeusdt: MorphoBlueMarketData;
|
|
70
67
|
readonly morphobluesusdeusdt: MorphoBlueMarketData;
|
|
71
|
-
readonly morphobluesdaieth: MorphoBlueMarketData;
|
|
72
68
|
readonly morphoblueezetheth_860: MorphoBlueMarketData;
|
|
73
69
|
readonly morphoblueezetheth_945: MorphoBlueMarketData;
|
|
74
70
|
readonly morphobluemkrusdc: MorphoBlueMarketData;
|
|
75
71
|
readonly morphobluetbtcusdc: MorphoBlueMarketData;
|
|
76
72
|
readonly morphobluecbbtceth: MorphoBlueMarketData;
|
|
77
73
|
readonly morphobluecbbtcusdc: MorphoBlueMarketData;
|
|
78
|
-
readonly morphoblueretheth_945: MorphoBlueMarketData;
|
|
79
74
|
readonly morphobluesusdeusdc_915: MorphoBlueMarketData;
|
|
80
75
|
readonly morphobluelbtcwbtc_945: MorphoBlueMarketData;
|
|
81
76
|
readonly morphoblueusrusdc_915: MorphoBlueMarketData;
|
|
77
|
+
readonly morphobluesyrupusdcusdc_915: MorphoBlueMarketData;
|
|
78
|
+
readonly morphobluelbtcusdc_860: MorphoBlueMarketData;
|
|
79
|
+
readonly morphobluelbtccbbtc_945: MorphoBlueMarketData;
|
|
82
80
|
readonly morphobluewstetheth_945: MorphoBlueMarketData;
|
|
83
81
|
readonly morphobluewstetheth_945_exchange_rate: MorphoBlueMarketData;
|
|
84
82
|
readonly morphobluewstetheth_965_exchange_rate: MorphoBlueMarketData;
|
|
85
|
-
readonly morphobluesusdedai_770: MorphoBlueMarketData;
|
|
86
83
|
readonly morphobluesusdedai_860: MorphoBlueMarketData;
|
|
87
84
|
readonly morphobluesusdedai_915: MorphoBlueMarketData;
|
|
88
85
|
readonly morphobluesusdedai_945: MorphoBlueMarketData;
|
|
89
|
-
readonly morphoblueusdedai_770: MorphoBlueMarketData;
|
|
90
86
|
readonly morphoblueusdedai_860: MorphoBlueMarketData;
|
|
91
87
|
readonly morphoblueusdedai_915: MorphoBlueMarketData;
|
|
92
|
-
readonly morphoblueusdedai_945: MorphoBlueMarketData;
|
|
93
88
|
readonly morphobluecbethusdc_860_base: MorphoBlueMarketData;
|
|
94
89
|
readonly morphobluecbethusdc_860_base_1c21c59d: MorphoBlueMarketData;
|
|
95
90
|
readonly morphobluewstethusdc_860_base: MorphoBlueMarketData;
|
|
@@ -102,6 +97,7 @@ export declare const MorphoBlueMarkets: (networkId: NetworkNumber) => {
|
|
|
102
97
|
readonly morphobluecbbtceurc_860_base: MorphoBlueMarketData;
|
|
103
98
|
readonly morphobluewstetheurc_860_base: MorphoBlueMarketData;
|
|
104
99
|
readonly morphobluelbtccbbtc_945_base: MorphoBlueMarketData;
|
|
100
|
+
readonly morphobluewetheurc_860_base: MorphoBlueMarketData;
|
|
105
101
|
readonly morphobluewsuperoethbweth_915_base: MorphoBlueMarketData;
|
|
106
102
|
readonly morphobluecbetheth_945_base: MorphoBlueMarketData;
|
|
107
103
|
readonly morphobluecbetheth_965_base: MorphoBlueMarketData;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.MORPHO_BLUE_LBTC_WBTC_945 = exports.MORPHO_BLUE_WSUPEROETHB_WETH_915_BASE = exports.MORPHO_BLUE_CBBTC_USDC_860_BASE = exports.MORPHO_BLUE_CBBTC_ETH_915_BASE = exports.MORPHO_BLUE_RETH_ETH_945_BASE = exports.MORPHO_BLUE_RETH_USDC_860_BASE = exports.MORPHO_BLUE_ETH_USDC_860_BASE = exports.MORPHO_BLUE_CBETH_ETH_945_BASE = exports.MORPHO_BLUE_CBETH_ETH_965_BASE = exports.MORPHO_BLUE_WSTETH_USDC_860_BASE = exports.MORPHO_BLUE_WSTETH_USDC_860_BASE_13c42741 = exports.MORPHO_BLUE_WSTETH_ETH_965_BASE = exports.MORPHO_BLUE_WSTETH_ETH_945_BASE = exports.MORPHO_BLUE_CBETH_USDC_860_BASE_1c21c59d = exports.MORPHO_BLUE_CBETH_USDC_860_BASE = exports.
|
|
4
|
-
exports.findMorphoBlueMarket = exports.MorphoBlueMarkets = exports.
|
|
3
|
+
exports.MORPHO_BLUE_CBBTC_EURC_860_BASE = exports.MORPHO_BLUE_WSTETH_EURC_860_BASE = exports.MORPHO_BLUE_LBTC_CBBTC_945_BASE = exports.MORPHO_BLUE_LBTC_WBTC_945 = exports.MORPHO_BLUE_WSUPEROETHB_WETH_915_BASE = exports.MORPHO_BLUE_CBBTC_USDC_860_BASE = exports.MORPHO_BLUE_CBBTC_ETH_915_BASE = exports.MORPHO_BLUE_RETH_ETH_945_BASE = exports.MORPHO_BLUE_RETH_USDC_860_BASE = exports.MORPHO_BLUE_ETH_USDC_860_BASE = exports.MORPHO_BLUE_CBETH_ETH_945_BASE = exports.MORPHO_BLUE_CBETH_ETH_965_BASE = exports.MORPHO_BLUE_WSTETH_USDC_860_BASE = exports.MORPHO_BLUE_WSTETH_USDC_860_BASE_13c42741 = exports.MORPHO_BLUE_WSTETH_ETH_965_BASE = exports.MORPHO_BLUE_WSTETH_ETH_945_BASE = exports.MORPHO_BLUE_CBETH_USDC_860_BASE_1c21c59d = exports.MORPHO_BLUE_CBETH_USDC_860_BASE = exports.MORPHO_BLUE_LBTC_CBBTC_945 = exports.MORPHO_BLUE_LBTC_USDC_860 = exports.MORPHO_BLUE_SYRUPUSDC_USDC_915 = exports.MORPHO_BLUE_USR_USDC_915 = exports.MORPHO_BLUE_USDE_DAI_915 = exports.MORPHO_BLUE_USDE_DAI_860 = exports.MORPHO_BLUE_SUSDE_DAI_945 = exports.MORPHO_BLUE_SUSDE_DAI_915 = exports.MORPHO_BLUE_SUSDE_DAI_860 = exports.MORPHO_BLUE_WSTETH_ETH_965_EXCHANGE_RATE = exports.MORPHO_BLUE_WSTETH_ETH_945_EXCHANGE_RATE = exports.MORPHO_BLUE_WSTETH_ETH_945 = exports.MORPHO_BLUE_WEETH_ETH_945 = exports.MORPHO_BLUE_EZETH_ETH_945 = exports.MORPHO_BLUE_EZETH_ETH_860 = exports.MORPHO_BLUE_SUSDE_USDC_915 = exports.MORPHO_BLUE_CBBTC_USDC_860 = exports.MORPHO_BLUE_CBBTC_ETH_915 = exports.MORPHO_BLUE_TBTC_USDC = exports.MORPHO_BLUE_MKR_USDC = exports.MORPHO_BLUE_SUSDE_USDT = exports.MORPHO_BLUE_USDE_USDT = exports.MORPHO_BLUE_WSTETH_PYUSD = exports.MORPHO_BLUE_WSTETH_USDA_EXCHANGE_RATE = exports.MORPHO_BLUE_WSTETH_USDT = exports.MORPHO_BLUE_WBTC_ETH = exports.MORPHO_BLUE_WBTC_PYUSD = exports.MORPHO_BLUE_WBTC_USDT = exports.MORPHO_BLUE_ETH_USDC = exports.MORPHO_BLUE_WBTC_USDC = exports.MORPHO_BLUE_SDAI_USDC = exports.MORPHO_BLUE_WSTETH_USDC = void 0;
|
|
4
|
+
exports.findMorphoBlueMarket = exports.MorphoBlueMarkets = exports.MORPHO_BLUE_WETH_EURC_860_BASE = void 0;
|
|
5
5
|
const utils_1 = require("../../services/utils");
|
|
6
6
|
const types_1 = require("../../types");
|
|
7
7
|
const common_1 = require("../../types/common");
|
|
@@ -69,6 +69,7 @@ const MORPHO_BLUE_ETH_USDC = (networkId = common_1.NetworkNumber.Eth) => ({
|
|
|
69
69
|
protocolName: 'morpho-blue',
|
|
70
70
|
});
|
|
71
71
|
exports.MORPHO_BLUE_ETH_USDC = MORPHO_BLUE_ETH_USDC;
|
|
72
|
+
// nadja
|
|
72
73
|
const MORPHO_BLUE_WBTC_USDT = (networkId = common_1.NetworkNumber.Eth) => ({
|
|
73
74
|
chainIds: [1],
|
|
74
75
|
label: 'Morpho',
|
|
@@ -197,22 +198,6 @@ const MORPHO_BLUE_SUSDE_USDT = (networkId = common_1.NetworkNumber.Eth) => ({
|
|
|
197
198
|
protocolName: 'morpho-blue',
|
|
198
199
|
});
|
|
199
200
|
exports.MORPHO_BLUE_SUSDE_USDT = MORPHO_BLUE_SUSDE_USDT;
|
|
200
|
-
const MORPHO_BLUE_SDAI_ETH = (networkId = common_1.NetworkNumber.Eth) => ({
|
|
201
|
-
chainIds: [1],
|
|
202
|
-
label: 'Morpho',
|
|
203
|
-
shortLabel: 'sDAI/ETH',
|
|
204
|
-
value: types_1.MorphoBlueVersions.MorphoBlueSDAIEth,
|
|
205
|
-
url: 'sdaieth',
|
|
206
|
-
loanToken: '0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2',
|
|
207
|
-
collateralToken: '0x83F20F44975D03b1b09e64809B757c47f942BEeA',
|
|
208
|
-
oracle: '0x0f9bb760D76af1B5Ca89102084E1963F6698AFda',
|
|
209
|
-
oracleType: types_1.MorphoBlueOracleType.MARKET_RATE,
|
|
210
|
-
irm: '0x870aC11D48B15DB9a138Cf899d20F13F79Ba00BC',
|
|
211
|
-
lltv: 0.86,
|
|
212
|
-
marketId: '0x1929f8139224cb7d5db8c270addc9ce366d37ad279e1135f73c0adce74b0f936',
|
|
213
|
-
protocolName: 'morpho-blue',
|
|
214
|
-
});
|
|
215
|
-
exports.MORPHO_BLUE_SDAI_ETH = MORPHO_BLUE_SDAI_ETH;
|
|
216
201
|
const MORPHO_BLUE_MKR_USDC = (networkId = common_1.NetworkNumber.Eth) => ({
|
|
217
202
|
chainIds: [1],
|
|
218
203
|
label: 'Morpho',
|
|
@@ -327,22 +312,6 @@ const MORPHO_BLUE_EZETH_ETH_945 = (networkId = common_1.NetworkNumber.Eth) => ({
|
|
|
327
312
|
});
|
|
328
313
|
exports.MORPHO_BLUE_EZETH_ETH_945 = MORPHO_BLUE_EZETH_ETH_945;
|
|
329
314
|
// weETH/ETH
|
|
330
|
-
const MORPHO_BLUE_WEETH_ETH_860 = (networkId = common_1.NetworkNumber.Eth) => ({
|
|
331
|
-
chainIds: [1],
|
|
332
|
-
label: 'Morpho',
|
|
333
|
-
shortLabel: 'weETH/ETH',
|
|
334
|
-
value: types_1.MorphoBlueVersions.MorphoBlueWeEthEth_860,
|
|
335
|
-
url: 'weetheth-698fe982',
|
|
336
|
-
loanToken: '0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2',
|
|
337
|
-
collateralToken: '0xcd5fe23c85820f7b72d0926fc9b05b43e359b7ee',
|
|
338
|
-
oracle: '0x3fa58b74e9a8eA8768eb33c8453e9C2Ed089A40a',
|
|
339
|
-
oracleType: types_1.MorphoBlueOracleType.MARKET_RATE,
|
|
340
|
-
irm: '0x870aC11D48B15DB9a138Cf899d20F13F79Ba00BC',
|
|
341
|
-
lltv: 0.86,
|
|
342
|
-
marketId: '0x698fe98247a40c5771537b5786b2f3f9d78eb487b4ce4d75533cd0e94d88a115',
|
|
343
|
-
protocolName: 'morpho-blue',
|
|
344
|
-
});
|
|
345
|
-
exports.MORPHO_BLUE_WEETH_ETH_860 = MORPHO_BLUE_WEETH_ETH_860;
|
|
346
315
|
const MORPHO_BLUE_WEETH_ETH_945 = (networkId = common_1.NetworkNumber.Eth) => ({
|
|
347
316
|
chainIds: [1],
|
|
348
317
|
label: 'Morpho',
|
|
@@ -409,22 +378,6 @@ const MORPHO_BLUE_WSTETH_ETH_965_EXCHANGE_RATE = (networkId = common_1.NetworkNu
|
|
|
409
378
|
});
|
|
410
379
|
exports.MORPHO_BLUE_WSTETH_ETH_965_EXCHANGE_RATE = MORPHO_BLUE_WSTETH_ETH_965_EXCHANGE_RATE;
|
|
411
380
|
// sUSDe/DAI
|
|
412
|
-
const MORPHO_BLUE_SUSDE_DAI_770 = (networkId = common_1.NetworkNumber.Eth) => ({
|
|
413
|
-
chainIds: [1],
|
|
414
|
-
label: 'Morpho',
|
|
415
|
-
shortLabel: 'sUSDe/DAI',
|
|
416
|
-
value: types_1.MorphoBlueVersions.MorphoBlueSUSDeDAI_770,
|
|
417
|
-
url: 'susdedai-42dcfb38',
|
|
418
|
-
loanToken: '0x6B175474E89094C44Da98b954EedeAC495271d0F',
|
|
419
|
-
collateralToken: '0x9D39A5DE30e57443BfF2A8307A4256c8797A3497',
|
|
420
|
-
oracle: '0x5D916980D5Ae1737a8330Bf24dF812b2911Aae25',
|
|
421
|
-
oracleType: types_1.MorphoBlueOracleType.ETHENA_RATE,
|
|
422
|
-
irm: '0x870aC11D48B15DB9a138Cf899d20F13F79Ba00BC',
|
|
423
|
-
lltv: 0.77,
|
|
424
|
-
marketId: '0x42dcfb38bb98767afb6e38ccf90d59d0d3f0aa216beb3a234f12850323d17536',
|
|
425
|
-
protocolName: 'morpho-blue',
|
|
426
|
-
});
|
|
427
|
-
exports.MORPHO_BLUE_SUSDE_DAI_770 = MORPHO_BLUE_SUSDE_DAI_770;
|
|
428
381
|
const MORPHO_BLUE_SUSDE_DAI_860 = (networkId = common_1.NetworkNumber.Eth) => ({
|
|
429
382
|
chainIds: [1],
|
|
430
383
|
label: 'Morpho',
|
|
@@ -474,22 +427,6 @@ const MORPHO_BLUE_SUSDE_DAI_945 = (networkId = common_1.NetworkNumber.Eth) => ({
|
|
|
474
427
|
});
|
|
475
428
|
exports.MORPHO_BLUE_SUSDE_DAI_945 = MORPHO_BLUE_SUSDE_DAI_945;
|
|
476
429
|
// USDe/DAI
|
|
477
|
-
const MORPHO_BLUE_USDE_DAI_770 = (networkId = common_1.NetworkNumber.Eth) => ({
|
|
478
|
-
chainIds: [1],
|
|
479
|
-
label: 'Morpho',
|
|
480
|
-
shortLabel: 'USDe/DAI',
|
|
481
|
-
value: types_1.MorphoBlueVersions.MorphoBlueUSDeDAI_770,
|
|
482
|
-
url: 'usdedai-fd8493f0',
|
|
483
|
-
loanToken: '0x6B175474E89094C44Da98b954EedeAC495271d0F',
|
|
484
|
-
collateralToken: '0x4c9EDD5852cd905f086C759E8383e09bff1E68B3',
|
|
485
|
-
oracle: '0xaE4750d0813B5E37A51f7629beedd72AF1f9cA35',
|
|
486
|
-
oracleType: types_1.MorphoBlueOracleType.ETHENA_RATE,
|
|
487
|
-
irm: '0x870aC11D48B15DB9a138Cf899d20F13F79Ba00BC',
|
|
488
|
-
lltv: 0.77,
|
|
489
|
-
marketId: '0xfd8493f09eb6203615221378d89f53fcd92ff4f7d62cca87eece9a2fff59e86f',
|
|
490
|
-
protocolName: 'morpho-blue',
|
|
491
|
-
});
|
|
492
|
-
exports.MORPHO_BLUE_USDE_DAI_770 = MORPHO_BLUE_USDE_DAI_770;
|
|
493
430
|
const MORPHO_BLUE_USDE_DAI_860 = (networkId = common_1.NetworkNumber.Eth) => ({
|
|
494
431
|
chainIds: [1],
|
|
495
432
|
label: 'Morpho',
|
|
@@ -522,54 +459,70 @@ const MORPHO_BLUE_USDE_DAI_915 = (networkId = common_1.NetworkNumber.Eth) => ({
|
|
|
522
459
|
protocolName: 'morpho-blue',
|
|
523
460
|
});
|
|
524
461
|
exports.MORPHO_BLUE_USDE_DAI_915 = MORPHO_BLUE_USDE_DAI_915;
|
|
525
|
-
const
|
|
462
|
+
const MORPHO_BLUE_USR_USDC_915 = (networkId = common_1.NetworkNumber.Eth) => ({
|
|
526
463
|
chainIds: [1],
|
|
527
464
|
label: 'Morpho',
|
|
528
|
-
shortLabel: '
|
|
529
|
-
value: types_1.MorphoBlueVersions.
|
|
530
|
-
url: '
|
|
531
|
-
loanToken: '
|
|
532
|
-
collateralToken: '
|
|
533
|
-
oracle: '
|
|
534
|
-
oracleType: types_1.MorphoBlueOracleType.
|
|
465
|
+
shortLabel: 'USR/USDC',
|
|
466
|
+
value: types_1.MorphoBlueVersions.MorphoBlueUSRUSDC_915,
|
|
467
|
+
url: 'usrusdc-8e7cc042',
|
|
468
|
+
loanToken: '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48',
|
|
469
|
+
collateralToken: '0x66a1E37c9b0eAddca17d3662D6c05F4DECf3e110',
|
|
470
|
+
oracle: '0x8875ceb24E656FCA062759BDCF870F59A2B0187b',
|
|
471
|
+
oracleType: types_1.MorphoBlueOracleType.MARKET_RATE,
|
|
535
472
|
irm: '0x870aC11D48B15DB9a138Cf899d20F13F79Ba00BC',
|
|
536
|
-
lltv: 0.
|
|
537
|
-
marketId: '
|
|
473
|
+
lltv: 0.915,
|
|
474
|
+
marketId: '0x8e7cc042d739a365c43d0a52d5f24160fa7ae9b7e7c9a479bd02a56041d4cf77',
|
|
538
475
|
protocolName: 'morpho-blue',
|
|
539
476
|
});
|
|
540
|
-
exports.
|
|
541
|
-
const
|
|
477
|
+
exports.MORPHO_BLUE_USR_USDC_915 = MORPHO_BLUE_USR_USDC_915;
|
|
478
|
+
const MORPHO_BLUE_SYRUPUSDC_USDC_915 = (networkId = common_1.NetworkNumber.Eth) => ({
|
|
542
479
|
chainIds: [1],
|
|
543
480
|
label: 'Morpho',
|
|
544
|
-
shortLabel: '
|
|
545
|
-
value: types_1.MorphoBlueVersions.
|
|
546
|
-
url: '
|
|
547
|
-
loanToken: '
|
|
548
|
-
collateralToken: '
|
|
549
|
-
oracle: '
|
|
481
|
+
shortLabel: 'syrupUSDC/USDC',
|
|
482
|
+
value: types_1.MorphoBlueVersions.MorphoBlueSyrupUSDCUSDC_915,
|
|
483
|
+
url: 'syrupusdcusdc-729badf2',
|
|
484
|
+
loanToken: '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48',
|
|
485
|
+
collateralToken: '0x80ac24aA929eaF5013f6436cdA2a7ba190f5Cc0b',
|
|
486
|
+
oracle: '0x80032f4cb6E3573b9ed61E888AF658E48Fb790cC',
|
|
550
487
|
oracleType: types_1.MorphoBlueOracleType.MARKET_RATE,
|
|
551
488
|
irm: '0x870aC11D48B15DB9a138Cf899d20F13F79Ba00BC',
|
|
552
|
-
lltv: 0.
|
|
553
|
-
marketId: '
|
|
489
|
+
lltv: 0.915,
|
|
490
|
+
marketId: '0x729badf297ee9f2f6b3f717b96fd355fc6ec00422284ce1968e76647b258cf44',
|
|
554
491
|
protocolName: 'morpho-blue',
|
|
555
492
|
});
|
|
556
|
-
exports.
|
|
557
|
-
const
|
|
493
|
+
exports.MORPHO_BLUE_SYRUPUSDC_USDC_915 = MORPHO_BLUE_SYRUPUSDC_USDC_915;
|
|
494
|
+
const MORPHO_BLUE_LBTC_USDC_860 = (networkId = common_1.NetworkNumber.Eth) => ({
|
|
558
495
|
chainIds: [1],
|
|
559
496
|
label: 'Morpho',
|
|
560
|
-
shortLabel: '
|
|
561
|
-
value: types_1.MorphoBlueVersions.
|
|
562
|
-
url: '
|
|
497
|
+
shortLabel: 'LBTC/USDC',
|
|
498
|
+
value: types_1.MorphoBlueVersions.MorphoBlueLBTCUSDC_860,
|
|
499
|
+
url: 'lbtcusdc-bf02d6c6',
|
|
563
500
|
loanToken: '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48',
|
|
564
|
-
collateralToken: '
|
|
565
|
-
oracle: '
|
|
501
|
+
collateralToken: '0x8236a87084f8B84306f72007F36F2618A5634494',
|
|
502
|
+
oracle: '0xDCc04fFaCD7B49035cCdBbbA59a5f955944129DB',
|
|
566
503
|
oracleType: types_1.MorphoBlueOracleType.MARKET_RATE,
|
|
567
504
|
irm: '0x870aC11D48B15DB9a138Cf899d20F13F79Ba00BC',
|
|
568
|
-
lltv: 0.
|
|
569
|
-
marketId: '
|
|
505
|
+
lltv: 0.860,
|
|
506
|
+
marketId: '0xbf02d6c6852fa0b8247d5514d0c91e6c1fbde9a168ac3fd2033028b5ee5ce6d0',
|
|
570
507
|
protocolName: 'morpho-blue',
|
|
571
508
|
});
|
|
572
|
-
exports.
|
|
509
|
+
exports.MORPHO_BLUE_LBTC_USDC_860 = MORPHO_BLUE_LBTC_USDC_860;
|
|
510
|
+
const MORPHO_BLUE_LBTC_CBBTC_945 = (networkId = common_1.NetworkNumber.Eth) => ({
|
|
511
|
+
chainIds: [1],
|
|
512
|
+
label: 'Morpho',
|
|
513
|
+
shortLabel: 'LBTC/cbBTC',
|
|
514
|
+
value: types_1.MorphoBlueVersions.MorphoBlueLBTCCbBTC_945,
|
|
515
|
+
url: 'lbtccbbtc-444bbce8',
|
|
516
|
+
loanToken: '0xcbB7C0000aB88B473b1f5aFd9ef808440eed33Bf',
|
|
517
|
+
collateralToken: '0x8236a87084f8B84306f72007F36F2618A5634494',
|
|
518
|
+
oracle: '0x1Ce1a1e68F26019CAf5E823A56e300755D70D078',
|
|
519
|
+
oracleType: types_1.MorphoBlueOracleType.MARKET_RATE,
|
|
520
|
+
irm: '0x870aC11D48B15DB9a138Cf899d20F13F79Ba00BC',
|
|
521
|
+
lltv: 0.945,
|
|
522
|
+
marketId: '0x444bbce85350aae535b037d090c8bdf6cc4cfc6d79e17725413b4cb0f6183ad4',
|
|
523
|
+
protocolName: 'morpho-blue',
|
|
524
|
+
});
|
|
525
|
+
exports.MORPHO_BLUE_LBTC_CBBTC_945 = MORPHO_BLUE_LBTC_CBBTC_945;
|
|
573
526
|
// ###### BASE ########
|
|
574
527
|
const MORPHO_BLUE_CBETH_USDC_860_BASE = (networkId = common_1.NetworkNumber.Eth) => ({
|
|
575
528
|
chainIds: [common_1.NetworkNumber.Base],
|
|
@@ -859,6 +812,22 @@ const MORPHO_BLUE_CBBTC_EURC_860_BASE = (networkId = common_1.NetworkNumber.Eth)
|
|
|
859
812
|
protocolName: 'morpho-blue',
|
|
860
813
|
});
|
|
861
814
|
exports.MORPHO_BLUE_CBBTC_EURC_860_BASE = MORPHO_BLUE_CBBTC_EURC_860_BASE;
|
|
815
|
+
const MORPHO_BLUE_WETH_EURC_860_BASE = (networkId = common_1.NetworkNumber.Eth) => ({
|
|
816
|
+
chainIds: [common_1.NetworkNumber.Base],
|
|
817
|
+
label: 'Morpho',
|
|
818
|
+
shortLabel: 'ETH/EURC',
|
|
819
|
+
value: types_1.MorphoBlueVersions.MorphoBlueWETHEURC_860_Base,
|
|
820
|
+
url: 'wetheurc-a9b5142f',
|
|
821
|
+
loanToken: '0x60a3E35Cc302bFA44Cb288Bc5a4F316Fdb1adb42',
|
|
822
|
+
collateralToken: '0x4200000000000000000000000000000000000006',
|
|
823
|
+
oracle: '0xE1bb8E5b4930eC9FeC7f7943FCF6227649F14B37',
|
|
824
|
+
oracleType: types_1.MorphoBlueOracleType.MARKET_RATE,
|
|
825
|
+
irm: '0x46415998764C29aB2a25CbeA6254146D50D22687',
|
|
826
|
+
lltv: 0.86,
|
|
827
|
+
marketId: '0xa9b5142fa687a24c275faf731f13b52faa9873252bb4e1cb6077aa1f412edb0b',
|
|
828
|
+
protocolName: 'morpho-blue',
|
|
829
|
+
});
|
|
830
|
+
exports.MORPHO_BLUE_WETH_EURC_860_BASE = MORPHO_BLUE_WETH_EURC_860_BASE;
|
|
862
831
|
const MorphoBlueMarkets = (networkId) => ({
|
|
863
832
|
[types_1.MorphoBlueVersions.MorphoBlueWstEthUSDC]: (0, exports.MORPHO_BLUE_WSTETH_USDC)(networkId),
|
|
864
833
|
[types_1.MorphoBlueVersions.MorphoBlueSDAIUSDC]: (0, exports.MORPHO_BLUE_SDAI_USDC)(networkId),
|
|
@@ -868,37 +837,34 @@ const MorphoBlueMarkets = (networkId) => ({
|
|
|
868
837
|
[types_1.MorphoBlueVersions.MorphoBlueWstEthUSDT]: (0, exports.MORPHO_BLUE_WSTETH_USDT)(networkId),
|
|
869
838
|
[types_1.MorphoBlueVersions.MorphoBlueWstEthUSDA_Exchange_Rate]: (0, exports.MORPHO_BLUE_WSTETH_USDA_EXCHANGE_RATE)(networkId),
|
|
870
839
|
[types_1.MorphoBlueVersions.MorphoBlueWstEthPYUSD]: (0, exports.MORPHO_BLUE_WSTETH_PYUSD)(networkId),
|
|
871
|
-
[types_1.MorphoBlueVersions.MorphoBlueWeEthEth_860]: (0, exports.MORPHO_BLUE_WEETH_ETH_860)(networkId),
|
|
872
840
|
[types_1.MorphoBlueVersions.MorphoBlueWeEthEth_945]: (0, exports.MORPHO_BLUE_WEETH_ETH_945)(networkId),
|
|
873
841
|
[types_1.MorphoBlueVersions.MorphoBlueWBTCPYUSD]: (0, exports.MORPHO_BLUE_WBTC_PYUSD)(networkId),
|
|
874
842
|
[types_1.MorphoBlueVersions.MorphoBlueWBTCEth]: (0, exports.MORPHO_BLUE_WBTC_ETH)(networkId),
|
|
875
843
|
[types_1.MorphoBlueVersions.MorphoBlueUSDeUSDT]: (0, exports.MORPHO_BLUE_USDE_USDT)(networkId),
|
|
876
844
|
[types_1.MorphoBlueVersions.MorphoBlueSUSDeUSDT]: (0, exports.MORPHO_BLUE_SUSDE_USDT)(networkId),
|
|
877
|
-
[types_1.MorphoBlueVersions.MorphoBlueSDAIEth]: (0, exports.MORPHO_BLUE_SDAI_ETH)(networkId),
|
|
878
845
|
[types_1.MorphoBlueVersions.MorphoBlueEzEthEth_860]: (0, exports.MORPHO_BLUE_EZETH_ETH_860)(networkId),
|
|
879
846
|
[types_1.MorphoBlueVersions.MorphoBlueEzEthEth_945]: (0, exports.MORPHO_BLUE_EZETH_ETH_945)(networkId),
|
|
880
847
|
[types_1.MorphoBlueVersions.MorphoBlueMKRUSDC]: (0, exports.MORPHO_BLUE_MKR_USDC)(networkId),
|
|
881
848
|
[types_1.MorphoBlueVersions.MorphoBlueTBTCUSDC]: (0, exports.MORPHO_BLUE_TBTC_USDC)(networkId),
|
|
882
849
|
[types_1.MorphoBlueVersions.MorphoBlueCbBTCEth_915]: (0, exports.MORPHO_BLUE_CBBTC_ETH_915)(networkId),
|
|
883
850
|
[types_1.MorphoBlueVersions.MorphoBlueCbBTCUSDC_860]: (0, exports.MORPHO_BLUE_CBBTC_USDC_860)(networkId),
|
|
884
|
-
[types_1.MorphoBlueVersions.MorphoBlueREthEth_945]: (0, exports.MORPHO_BLUE_RETH_ETH_945)(networkId),
|
|
885
851
|
[types_1.MorphoBlueVersions.MorphoBlueSUSDeUSDC_915]: (0, exports.MORPHO_BLUE_SUSDE_USDC_915)(networkId),
|
|
886
852
|
[types_1.MorphoBlueVersions.MorphoBlueLBTCWBTC_945]: (0, exports.MORPHO_BLUE_LBTC_WBTC_945)(networkId),
|
|
887
853
|
[types_1.MorphoBlueVersions.MorphoBlueUSRUSDC_915]: (0, exports.MORPHO_BLUE_USR_USDC_915)(networkId),
|
|
854
|
+
[types_1.MorphoBlueVersions.MorphoBlueSyrupUSDCUSDC_915]: (0, exports.MORPHO_BLUE_SYRUPUSDC_USDC_915)(networkId),
|
|
855
|
+
[types_1.MorphoBlueVersions.MorphoBlueLBTCUSDC_860]: (0, exports.MORPHO_BLUE_LBTC_USDC_860)(networkId),
|
|
856
|
+
[types_1.MorphoBlueVersions.MorphoBlueLBTCCbBTC_945]: (0, exports.MORPHO_BLUE_LBTC_CBBTC_945)(networkId),
|
|
888
857
|
// wstETH/WETH
|
|
889
858
|
[types_1.MorphoBlueVersions.MorphoBlueWstEthEth_945]: (0, exports.MORPHO_BLUE_WSTETH_ETH_945)(networkId),
|
|
890
859
|
[types_1.MorphoBlueVersions.MorphoBlueWstEthEth_945_Exchange_Rate]: (0, exports.MORPHO_BLUE_WSTETH_ETH_945_EXCHANGE_RATE)(networkId),
|
|
891
860
|
[types_1.MorphoBlueVersions.MorphoBlueWstEthEth_965_Exchange_Rate]: (0, exports.MORPHO_BLUE_WSTETH_ETH_965_EXCHANGE_RATE)(networkId),
|
|
892
861
|
// sUSDe/DAI
|
|
893
|
-
[types_1.MorphoBlueVersions.MorphoBlueSUSDeDAI_770]: (0, exports.MORPHO_BLUE_SUSDE_DAI_770)(networkId),
|
|
894
862
|
[types_1.MorphoBlueVersions.MorphoBlueSUSDeDAI_860]: (0, exports.MORPHO_BLUE_SUSDE_DAI_860)(networkId),
|
|
895
863
|
[types_1.MorphoBlueVersions.MorphoBlueSUSDeDAI_915]: (0, exports.MORPHO_BLUE_SUSDE_DAI_915)(networkId),
|
|
896
864
|
[types_1.MorphoBlueVersions.MorphoBlueSUSDeDAI_945]: (0, exports.MORPHO_BLUE_SUSDE_DAI_945)(networkId),
|
|
897
865
|
// USDe/DAI
|
|
898
|
-
[types_1.MorphoBlueVersions.MorphoBlueUSDeDAI_770]: (0, exports.MORPHO_BLUE_USDE_DAI_770)(networkId),
|
|
899
866
|
[types_1.MorphoBlueVersions.MorphoBlueUSDeDAI_860]: (0, exports.MORPHO_BLUE_USDE_DAI_860)(networkId),
|
|
900
867
|
[types_1.MorphoBlueVersions.MorphoBlueUSDeDAI_915]: (0, exports.MORPHO_BLUE_USDE_DAI_915)(networkId),
|
|
901
|
-
[types_1.MorphoBlueVersions.MorphoBlueUSDeDAI_945]: (0, exports.MORPHO_BLUE_USDE_DAI_945)(networkId),
|
|
902
868
|
// Base
|
|
903
869
|
[types_1.MorphoBlueVersions.MorphoBlueCbEthUSDC_860_Base]: (0, exports.MORPHO_BLUE_CBETH_USDC_860_BASE)(networkId),
|
|
904
870
|
[types_1.MorphoBlueVersions.MorphoBlueCbEthUSDC_860_Base_1c21c59d]: (0, exports.MORPHO_BLUE_CBETH_USDC_860_BASE_1c21c59d)(networkId),
|
|
@@ -912,6 +878,7 @@ const MorphoBlueMarkets = (networkId) => ({
|
|
|
912
878
|
[types_1.MorphoBlueVersions.MorphoBlueCbBTCEURC_860_Base]: (0, exports.MORPHO_BLUE_CBBTC_EURC_860_BASE)(networkId),
|
|
913
879
|
[types_1.MorphoBlueVersions.MorphoBlueWstEthEURC_860_Base]: (0, exports.MORPHO_BLUE_WSTETH_EURC_860_BASE)(networkId),
|
|
914
880
|
[types_1.MorphoBlueVersions.MorphoBlueLBTCCbBTC_945_Base]: (0, exports.MORPHO_BLUE_LBTC_CBBTC_945_BASE)(networkId),
|
|
881
|
+
[types_1.MorphoBlueVersions.MorphoBlueWETHEURC_860_Base]: (0, exports.MORPHO_BLUE_WETH_EURC_860_BASE)(networkId),
|
|
915
882
|
// wsuperOETHb/WETH Base
|
|
916
883
|
[types_1.MorphoBlueVersions.MorphoBlueWsuperOETHbWETH_915_Base]: (0, exports.MORPHO_BLUE_WSUPEROETHB_WETH_915_BASE)(networkId),
|
|
917
884
|
// cbETH/WETH Base
|
|
@@ -27,7 +27,11 @@ const calcLeverageLiqPrice = (leverageType, assetPrice, borrowedUsd, borrowLimit
|
|
|
27
27
|
exports.calcLeverageLiqPrice = calcLeverageLiqPrice;
|
|
28
28
|
const calculateBorrowingAssetLimit = (assetBorrowedUsd, borrowLimitUsd) => new decimal_js_1.default(assetBorrowedUsd).div(borrowLimitUsd).times(100).toString();
|
|
29
29
|
exports.calculateBorrowingAssetLimit = calculateBorrowingAssetLimit;
|
|
30
|
-
exports.STABLE_ASSETS = [
|
|
30
|
+
exports.STABLE_ASSETS = [
|
|
31
|
+
'DAI', 'USDC', 'USDT', 'TUSD', 'USDP', 'GUSD', 'BUSD', 'SUSD', 'FRAX', 'LUSD', 'USDC.e', 'GHO', 'sDAI', 'USDA',
|
|
32
|
+
'USDe', 'sUSDe', 'USDS', 'sUSDS', 'USR', 'EURC', 'BOLD', 'BOLD Legacy', 'RLUSD', 'PT sUSDe July', 'PT eUSDe May',
|
|
33
|
+
'USDtb', 'eUSDe', 'PT USDe July', 'PT eUSDe Aug', 'PT sUSDe Sep', 'PT USDe Sep', 'PT sUSDe Nov', 'PT USDe Nov', 'PT sUSDe Jan', 'PT USDe Jan',
|
|
34
|
+
];
|
|
31
35
|
const isLeveragedPos = (usedAssets, dustLimit = 5) => {
|
|
32
36
|
let borrowUnstable = 0;
|
|
33
37
|
let supplyStable = 0;
|