@defisaver/positions-sdk 2.1.169-custom-fetching-dev → 2.1.169-custom-fetching-3-dev
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/aaveV2/index.d.ts +4 -4
- package/cjs/aaveV2/index.js +7 -7
- package/cjs/aaveV3/index.d.ts +4 -3
- package/cjs/aaveV3/index.js +14 -10
- package/cjs/aaveV3/merkl.d.ts +5 -1
- package/cjs/aaveV3/merkl.js +8 -3
- package/cjs/aaveV4/index.d.ts +4 -3
- package/cjs/aaveV4/index.js +19 -16
- package/cjs/aaveV4/merkl.d.ts +10 -2
- package/cjs/aaveV4/merkl.js +15 -6
- package/cjs/claiming/aaveV3.d.ts +2 -2
- package/cjs/claiming/aaveV3.js +5 -4
- package/cjs/claiming/king.d.ts +2 -2
- package/cjs/claiming/king.js +3 -2
- package/cjs/claiming/spark.d.ts +3 -3
- package/cjs/claiming/spark.js +8 -7
- package/cjs/claiming/uniswap.d.ts +2 -2
- package/cjs/claiming/uniswap.js +3 -2
- package/cjs/compoundV2/index.d.ts +4 -4
- package/cjs/compoundV2/index.js +9 -9
- package/cjs/compoundV3/index.d.ts +5 -4
- package/cjs/compoundV3/index.js +17 -13
- package/cjs/compoundV3/merkl.d.ts +1 -1
- package/cjs/compoundV3/merkl.js +2 -5
- package/cjs/curveUsd/index.d.ts +5 -5
- package/cjs/curveUsd/index.js +17 -17
- package/cjs/fluid/index.d.ts +23 -22
- package/cjs/fluid/index.js +75 -72
- package/cjs/fluid/merkl.d.ts +5 -3
- package/cjs/fluid/merkl.js +11 -6
- package/cjs/liquity/index.d.ts +4 -4
- package/cjs/liquity/index.js +23 -23
- package/cjs/liquityV2/index.d.ts +10 -10
- package/cjs/liquityV2/index.js +59 -59
- package/cjs/llamaLend/index.d.ts +5 -5
- package/cjs/llamaLend/index.js +13 -13
- package/cjs/maker/index.d.ts +6 -6
- package/cjs/maker/index.js +16 -16
- package/cjs/morphoBlue/index.d.ts +7 -7
- package/cjs/morphoBlue/index.js +28 -26
- package/cjs/morphoBlue/merkl.d.ts +5 -3
- package/cjs/morphoBlue/merkl.js +6 -8
- package/cjs/morphoMidnight/index.d.ts +5 -5
- package/cjs/morphoMidnight/index.js +18 -18
- package/cjs/portfolio/customDeFiData.js +45 -40
- package/cjs/services/merkl.d.ts +36 -2
- package/cjs/services/merkl.js +142 -19
- package/cjs/services/priceService.d.ts +12 -12
- package/cjs/services/priceService.js +30 -29
- package/cjs/services/viem.d.ts +10 -2
- package/cjs/services/viem.js +27 -1
- package/cjs/spark/index.d.ts +4 -4
- package/cjs/spark/index.js +9 -9
- package/cjs/types/merkl.d.ts +18 -0
- package/cjs/types/portfolio.d.ts +2 -0
- package/cjs/umbrella/index.d.ts +2 -2
- package/cjs/umbrella/index.js +5 -4
- package/esm/aaveV2/index.d.ts +4 -4
- package/esm/aaveV2/index.js +8 -8
- package/esm/aaveV3/index.d.ts +4 -3
- package/esm/aaveV3/index.js +15 -11
- package/esm/aaveV3/merkl.d.ts +5 -1
- package/esm/aaveV3/merkl.js +9 -4
- package/esm/aaveV4/index.d.ts +4 -3
- package/esm/aaveV4/index.js +20 -17
- package/esm/aaveV4/merkl.d.ts +10 -2
- package/esm/aaveV4/merkl.js +16 -7
- package/esm/claiming/aaveV3.d.ts +2 -2
- package/esm/claiming/aaveV3.js +5 -4
- package/esm/claiming/king.d.ts +2 -2
- package/esm/claiming/king.js +3 -2
- package/esm/claiming/spark.d.ts +3 -3
- package/esm/claiming/spark.js +8 -7
- package/esm/claiming/uniswap.d.ts +2 -2
- package/esm/claiming/uniswap.js +3 -2
- package/esm/compoundV2/index.d.ts +4 -4
- package/esm/compoundV2/index.js +9 -9
- package/esm/compoundV3/index.d.ts +5 -4
- package/esm/compoundV3/index.js +19 -15
- package/esm/compoundV3/merkl.d.ts +1 -1
- package/esm/compoundV3/merkl.js +3 -6
- package/esm/curveUsd/index.d.ts +5 -5
- package/esm/curveUsd/index.js +17 -17
- package/esm/fluid/index.d.ts +23 -22
- package/esm/fluid/index.js +76 -73
- package/esm/fluid/merkl.d.ts +5 -3
- package/esm/fluid/merkl.js +12 -7
- package/esm/liquity/index.d.ts +4 -4
- package/esm/liquity/index.js +23 -23
- package/esm/liquityV2/index.d.ts +10 -10
- package/esm/liquityV2/index.js +60 -60
- package/esm/llamaLend/index.d.ts +5 -5
- package/esm/llamaLend/index.js +13 -13
- package/esm/maker/index.d.ts +6 -6
- package/esm/maker/index.js +16 -16
- package/esm/morphoBlue/index.d.ts +7 -7
- package/esm/morphoBlue/index.js +29 -27
- package/esm/morphoBlue/merkl.d.ts +5 -3
- package/esm/morphoBlue/merkl.js +7 -9
- package/esm/morphoMidnight/index.d.ts +5 -5
- package/esm/morphoMidnight/index.js +18 -18
- package/esm/portfolio/customDeFiData.js +47 -42
- package/esm/services/merkl.d.ts +36 -2
- package/esm/services/merkl.js +136 -18
- package/esm/services/priceService.d.ts +12 -12
- package/esm/services/priceService.js +31 -30
- package/esm/services/viem.d.ts +10 -2
- package/esm/services/viem.js +25 -0
- package/esm/spark/index.d.ts +4 -4
- package/esm/spark/index.js +10 -10
- package/esm/types/merkl.d.ts +18 -0
- package/esm/types/portfolio.d.ts +2 -0
- package/esm/umbrella/index.d.ts +2 -2
- package/esm/umbrella/index.js +5 -4
- package/package.json +1 -1
- package/src/aaveV2/index.ts +7 -7
- package/src/aaveV3/index.ts +15 -11
- package/src/aaveV3/merkl.ts +9 -4
- package/src/aaveV4/index.ts +19 -16
- package/src/aaveV4/merkl.ts +16 -7
- package/src/claiming/aaveV3.ts +5 -3
- package/src/claiming/king.ts +6 -3
- package/src/claiming/spark.ts +9 -6
- package/src/claiming/uniswap.ts +4 -3
- package/src/compoundV2/index.ts +10 -9
- package/src/compoundV3/index.ts +20 -14
- package/src/compoundV3/merkl.ts +5 -4
- package/src/curveUsd/index.ts +19 -17
- package/src/fluid/index.ts +88 -70
- package/src/fluid/merkl.ts +12 -7
- package/src/liquity/index.ts +23 -23
- package/src/liquityV2/index.ts +64 -56
- package/src/llamaLend/index.ts +15 -13
- package/src/maker/index.ts +19 -16
- package/src/morphoBlue/index.ts +23 -20
- package/src/morphoBlue/merkl.ts +9 -6
- package/src/morphoMidnight/index.ts +13 -13
- package/src/portfolio/customDeFiData.ts +48 -41
- package/src/services/merkl.ts +152 -19
- package/src/services/priceService.ts +33 -30
- package/src/services/viem.ts +16 -0
- package/src/spark/index.ts +11 -8
- package/src/types/merkl.ts +20 -0
- package/src/types/portfolio.ts +2 -0
- package/src/umbrella/index.ts +6 -5
package/cjs/liquityV2/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Client, PublicClient } from 'viem';
|
|
2
|
-
import { EthAddress, EthereumProvider, NetworkNumber } from '../types/common';
|
|
2
|
+
import { Blockish, EthAddress, EthereumProvider, NetworkNumber } from '../types/common';
|
|
3
3
|
import { LiquityV2AssetsData, LiquityV2MarketData, LiquityV2MarketInfo, LiquityV2TroveData, LiquityV2Versions } from '../types';
|
|
4
4
|
export type SPYieldGainParameters = {
|
|
5
5
|
P: string;
|
|
@@ -9,8 +9,8 @@ export type SPYieldGainParameters = {
|
|
|
9
9
|
totalBoldDeposits: string;
|
|
10
10
|
yieldGainsPending: string;
|
|
11
11
|
};
|
|
12
|
-
export declare const _getLiquityV2MarketData: (provider: Client, network: NetworkNumber, selectedMarket: LiquityV2MarketInfo) => Promise<LiquityV2MarketData>;
|
|
13
|
-
export declare const getLiquityV2MarketData: (provider: EthereumProvider, network: NetworkNumber, selectedMarket: LiquityV2MarketInfo) => Promise<LiquityV2MarketData>;
|
|
12
|
+
export declare const _getLiquityV2MarketData: (provider: Client, network: NetworkNumber, selectedMarket: LiquityV2MarketInfo, blockNumber?: Blockish) => Promise<LiquityV2MarketData>;
|
|
13
|
+
export declare const getLiquityV2MarketData: (provider: EthereumProvider, network: NetworkNumber, selectedMarket: LiquityV2MarketInfo, blockNumber?: Blockish) => Promise<LiquityV2MarketData>;
|
|
14
14
|
export declare const nftContractCreationBlockMapping: {
|
|
15
15
|
liquityv2eth: number;
|
|
16
16
|
liquityv2wsteth: number;
|
|
@@ -32,27 +32,27 @@ export declare const getLiquityV2UserTroveIds: (provider: EthereumProvider, netw
|
|
|
32
32
|
nextFreeTroveIndex: string;
|
|
33
33
|
}>;
|
|
34
34
|
export declare const calculateDebtInFrontLiquityV2: (markets: Record<LiquityV2Versions, LiquityV2MarketData>, selectedMarket: LiquityV2Versions, allMarketsUnbackedDebts: Record<LiquityV2Versions, string>, interestRateDebtInFront: string) => string;
|
|
35
|
-
export declare const getDebtInFrontForInterestRateIncludingNewDebtLiquityV2: (newDebt: string, markets: Record<LiquityV2Versions, LiquityV2MarketData>, selectedMarket: LiquityV2Versions, provider: Client, network: NetworkNumber, interestRate: string) => Promise<string>;
|
|
36
|
-
export declare const getDebtInFrontForInterestRateLiquityV2: (markets: Record<LiquityV2Versions, LiquityV2MarketData>, selectedMarket: LiquityV2Versions, provider: EthereumProvider, network: NetworkNumber, isLegacy: boolean, interestRate: string, debtInFrontBeingMoved?: string) => Promise<string>;
|
|
35
|
+
export declare const getDebtInFrontForInterestRateIncludingNewDebtLiquityV2: (newDebt: string, markets: Record<LiquityV2Versions, LiquityV2MarketData>, selectedMarket: LiquityV2Versions, provider: Client, network: NetworkNumber, interestRate: string, blockNumber?: Blockish) => Promise<string>;
|
|
36
|
+
export declare const getDebtInFrontForInterestRateLiquityV2: (markets: Record<LiquityV2Versions, LiquityV2MarketData>, selectedMarket: LiquityV2Versions, provider: EthereumProvider, network: NetworkNumber, isLegacy: boolean, interestRate: string, debtInFrontBeingMoved?: string, blockNumber?: Blockish) => Promise<string>;
|
|
37
37
|
export declare const _getLiquityV2TroveData: (provider: Client, network: NetworkNumber, { selectedMarket, assetsData, troveId, allMarketsData, }: {
|
|
38
38
|
selectedMarket: LiquityV2MarketInfo;
|
|
39
39
|
assetsData: LiquityV2AssetsData;
|
|
40
40
|
troveId: string;
|
|
41
41
|
allMarketsData: Record<LiquityV2Versions, LiquityV2MarketData>;
|
|
42
|
-
}, fetchDebtInFront?: boolean) => Promise<LiquityV2TroveData>;
|
|
42
|
+
}, fetchDebtInFront?: boolean, blockNumber?: Blockish) => Promise<LiquityV2TroveData>;
|
|
43
43
|
export declare const getLiquityV2TroveData: (provider: EthereumProvider, network: NetworkNumber, { selectedMarket, assetsData, troveId, allMarketsData, }: {
|
|
44
44
|
selectedMarket: LiquityV2MarketInfo;
|
|
45
45
|
assetsData: LiquityV2AssetsData;
|
|
46
46
|
troveId: string;
|
|
47
47
|
allMarketsData: Record<LiquityV2Versions, LiquityV2MarketData>;
|
|
48
|
-
}, fetchDebtInFront?: boolean) => Promise<LiquityV2TroveData>;
|
|
49
|
-
export declare const getLiquityV2ClaimableCollateral: (collSurplusPoolAddress: EthAddress, account: EthAddress, provider: EthereumProvider, network: NetworkNumber) => Promise<string>;
|
|
48
|
+
}, fetchDebtInFront?: boolean, blockNumber?: Blockish) => Promise<LiquityV2TroveData>;
|
|
49
|
+
export declare const getLiquityV2ClaimableCollateral: (collSurplusPoolAddress: EthAddress, account: EthAddress, provider: EthereumProvider, network: NetworkNumber, blockNumber?: Blockish) => Promise<string>;
|
|
50
50
|
export type sBoldYieldParameters = {
|
|
51
51
|
WETH: string;
|
|
52
52
|
wsETH: string;
|
|
53
53
|
rETH: string;
|
|
54
54
|
};
|
|
55
|
-
export declare const getLiquityV2Staking: (provider: Client, network: NetworkNumber, market: LiquityV2Versions, user: EthAddress) => Promise<{
|
|
55
|
+
export declare const getLiquityV2Staking: (provider: Client, network: NetworkNumber, market: LiquityV2Versions, user: EthAddress, blockNumber?: Blockish) => Promise<{
|
|
56
56
|
totalBOLDDeposited: string;
|
|
57
57
|
stakedBOLDBalance: string;
|
|
58
58
|
stabilityRewardColl: string;
|
|
@@ -61,7 +61,7 @@ export declare const getLiquityV2Staking: (provider: Client, network: NetworkNum
|
|
|
61
61
|
debtTokenBalance: string;
|
|
62
62
|
stabilityPoolApy: string;
|
|
63
63
|
}>;
|
|
64
|
-
export declare const getLiquitySAndYBold: (provider: Client, network: NetworkNumber, markets: any, user: EthAddress) => Promise<{
|
|
64
|
+
export declare const getLiquitySAndYBold: (provider: Client, network: NetworkNumber, markets: any, user: EthAddress, blockNumber?: Blockish) => Promise<{
|
|
65
65
|
spApy: string;
|
|
66
66
|
yBoldApy: string;
|
|
67
67
|
totalBoldDepositedSBold: string;
|
package/cjs/liquityV2/index.js
CHANGED
|
@@ -29,12 +29,12 @@ const getLiquityV2ViewContract = (provider, network, isLegacy) => {
|
|
|
29
29
|
return (0, contracts_1.LiquityV2LegacyViewContractViem)(provider, network);
|
|
30
30
|
return (0, contracts_1.LiquityV2ViewContractViem)(provider, network);
|
|
31
31
|
};
|
|
32
|
-
const _getLiquityV2MarketData = (
|
|
32
|
+
const _getLiquityV2MarketData = (provider_1, network_1, selectedMarket_1, ...args_1) => __awaiter(void 0, [provider_1, network_1, selectedMarket_1, ...args_1], void 0, function* (provider, network, selectedMarket, blockNumber = 'latest') {
|
|
33
33
|
var _a;
|
|
34
34
|
const { marketAddress, debtToken, collateralToken, isLegacy, } = selectedMarket;
|
|
35
35
|
const data = isLegacy
|
|
36
|
-
? yield (0, contracts_1.LiquityV2LegacyViewContractViem)(provider, network).read.getMarketData([marketAddress])
|
|
37
|
-
: (yield (0, contracts_1.LiquityV2ViewContractViem)(provider, network).simulate.getMarketData([marketAddress])).result;
|
|
36
|
+
? yield (0, contracts_1.LiquityV2LegacyViewContractViem)(provider, network).read.getMarketData([marketAddress], (0, viem_1.setViemBlockNumber)(blockNumber))
|
|
37
|
+
: (yield (0, contracts_1.LiquityV2ViewContractViem)(provider, network).simulate.getMarketData([marketAddress], (0, viem_1.setViemBlockNumber)(blockNumber))).result;
|
|
38
38
|
const hintHelperAddress = data.hintHelpers;
|
|
39
39
|
const troveNFTAddress = data.troveNFT;
|
|
40
40
|
const borrowerOperationsAddress = data.borrowerOperations;
|
|
@@ -108,17 +108,17 @@ const _getLiquityV2MarketData = (provider, network, selectedMarket) => __awaiter
|
|
|
108
108
|
};
|
|
109
109
|
});
|
|
110
110
|
exports._getLiquityV2MarketData = _getLiquityV2MarketData;
|
|
111
|
-
const getLiquityV2MarketData = (
|
|
111
|
+
const getLiquityV2MarketData = (provider_1, network_1, selectedMarket_1, ...args_1) => __awaiter(void 0, [provider_1, network_1, selectedMarket_1, ...args_1], void 0, function* (provider, network, selectedMarket, blockNumber = 'latest') { return (0, exports._getLiquityV2MarketData)((0, viem_1.getViemProvider)(provider, network), network, selectedMarket, blockNumber); });
|
|
112
112
|
exports.getLiquityV2MarketData = getLiquityV2MarketData;
|
|
113
|
-
const getUserTroves = (provider_1, network_1, isLegacy_1, account_1, marketAddress_1, ...args_1) => __awaiter(void 0, [provider_1, network_1, isLegacy_1, account_1, marketAddress_1, ...args_1], void 0, function* (provider, network, isLegacy, account, marketAddress, startIndex = 0, endIndex = 100, troves = []) {
|
|
113
|
+
const getUserTroves = (provider_1, network_1, isLegacy_1, account_1, marketAddress_1, ...args_1) => __awaiter(void 0, [provider_1, network_1, isLegacy_1, account_1, marketAddress_1, ...args_1], void 0, function* (provider, network, isLegacy, account, marketAddress, startIndex = 0, endIndex = 100, troves = [], blockNumber = 'latest') {
|
|
114
114
|
const viewContract = getLiquityV2ViewContract(provider, network, isLegacy);
|
|
115
|
-
const result = yield viewContract.read.getUserTroves([account, marketAddress, BigInt(startIndex), BigInt(endIndex)]);
|
|
115
|
+
const result = yield viewContract.read.getUserTroves([account, marketAddress, BigInt(startIndex), BigInt(endIndex)], (0, viem_1.setViemBlockNumber)(blockNumber));
|
|
116
116
|
const newStartIndex = endIndex + 1;
|
|
117
117
|
const nextFreeTroveIndex = result[1].toString();
|
|
118
118
|
const existingTroves = [...troves, ...result[0].map((trove) => (Object.assign(Object.assign({}, trove), { troveId: trove.troveId.toString() })))];
|
|
119
119
|
if (nextFreeTroveIndex !== '-1')
|
|
120
120
|
return { troves: existingTroves.filter((trove) => trove.ownedByUser), nextFreeTroveIndex };
|
|
121
|
-
return getUserTroves(provider, network, isLegacy, account, marketAddress, newStartIndex, newStartIndex + 100, existingTroves);
|
|
121
|
+
return getUserTroves(provider, network, isLegacy, account, marketAddress, newStartIndex, newStartIndex + 100, existingTroves, blockNumber);
|
|
122
122
|
});
|
|
123
123
|
exports.nftContractCreationBlockMapping = {
|
|
124
124
|
[types_1.LiquityV2Versions.LiquityV2Eth]: 22516079,
|
|
@@ -163,40 +163,40 @@ const _getLiquityV2UserTroveIds = (provider, network, selectedMarket, troveNFTAd
|
|
|
163
163
|
exports._getLiquityV2UserTroveIds = _getLiquityV2UserTroveIds;
|
|
164
164
|
const getLiquityV2UserTroveIds = (provider, network, selectedMarket, troveNFTAddress, limitBlocksForEventFetching, account) => __awaiter(void 0, void 0, void 0, function* () { return (0, exports._getLiquityV2UserTroveIds)((0, viem_1.getViemProvider)(provider, network), network, selectedMarket, troveNFTAddress, limitBlocksForEventFetching, account); });
|
|
165
165
|
exports.getLiquityV2UserTroveIds = getLiquityV2UserTroveIds;
|
|
166
|
-
const getDebtInFrontForSingleMarketLiquityV2 = (provider_1, network_1, isLegacy_1, marketAddress_1, troveId_1, ...args_1) => __awaiter(void 0, [provider_1, network_1, isLegacy_1, marketAddress_1, troveId_1, ...args_1], void 0, function* (provider, network, isLegacy, marketAddress, troveId, accumulatedSum = '0', iterations = 2000) {
|
|
166
|
+
const getDebtInFrontForSingleMarketLiquityV2 = (provider_1, network_1, isLegacy_1, marketAddress_1, troveId_1, ...args_1) => __awaiter(void 0, [provider_1, network_1, isLegacy_1, marketAddress_1, troveId_1, ...args_1], void 0, function* (provider, network, isLegacy, marketAddress, troveId, accumulatedSum = '0', iterations = 2000, blockNumber = 'latest') {
|
|
167
167
|
const viewContract = getLiquityV2ViewContract(provider, network, isLegacy);
|
|
168
|
-
const res = yield viewContract.read.getDebtInFront([marketAddress, BigInt(troveId), BigInt(accumulatedSum), BigInt(iterations)]);
|
|
168
|
+
const res = yield viewContract.read.getDebtInFront([marketAddress, BigInt(troveId), BigInt(accumulatedSum), BigInt(iterations)], (0, viem_1.setViemBlockNumber)(blockNumber));
|
|
169
169
|
const next = res[0].toString();
|
|
170
170
|
const debt = res[1].toString();
|
|
171
171
|
if (next === '0')
|
|
172
172
|
return (0, tokens_1.assetAmountInEth)(debt);
|
|
173
|
-
return getDebtInFrontForSingleMarketLiquityV2(provider, network, isLegacy, marketAddress, next, debt, iterations);
|
|
173
|
+
return getDebtInFrontForSingleMarketLiquityV2(provider, network, isLegacy, marketAddress, next, debt, iterations, blockNumber);
|
|
174
174
|
});
|
|
175
|
-
const getDebtInFrontForInterestRateSingleMarketLiquityV2 = (provider_1, network_1, isLegacy_1, marketAddress_1, interestRate_1, ...args_1) => __awaiter(void 0, [provider_1, network_1, isLegacy_1, marketAddress_1, interestRate_1, ...args_1], void 0, function* (provider, network, isLegacy, marketAddress, interestRate, troveId = '0', accumulatedSum = '0', iterations = 2000) {
|
|
175
|
+
const getDebtInFrontForInterestRateSingleMarketLiquityV2 = (provider_1, network_1, isLegacy_1, marketAddress_1, interestRate_1, ...args_1) => __awaiter(void 0, [provider_1, network_1, isLegacy_1, marketAddress_1, interestRate_1, ...args_1], void 0, function* (provider, network, isLegacy, marketAddress, interestRate, troveId = '0', accumulatedSum = '0', iterations = 2000, blockNumber = 'latest') {
|
|
176
176
|
const viewContract = getLiquityV2ViewContract(provider, network, isLegacy);
|
|
177
177
|
if (+interestRate === 0 || !interestRate)
|
|
178
178
|
return '0';
|
|
179
179
|
const interestRateWei = new decimal_js_1.default(interestRate).times(1e16).toFixed(0).toString();
|
|
180
|
-
const res = yield viewContract.read.getDebtInFrontByInterestRate([marketAddress, BigInt(troveId), BigInt(accumulatedSum), BigInt(iterations), BigInt(interestRateWei)]);
|
|
180
|
+
const res = yield viewContract.read.getDebtInFrontByInterestRate([marketAddress, BigInt(troveId), BigInt(accumulatedSum), BigInt(iterations), BigInt(interestRateWei)], (0, viem_1.setViemBlockNumber)(blockNumber));
|
|
181
181
|
const next = res[0].toString();
|
|
182
182
|
const debt = res[1].toString();
|
|
183
183
|
if (next === '0')
|
|
184
184
|
return (0, tokens_1.assetAmountInEth)(debt);
|
|
185
|
-
return getDebtInFrontForInterestRateSingleMarketLiquityV2(provider, network, isLegacy, marketAddress, interestRate, next, debt, iterations);
|
|
185
|
+
return getDebtInFrontForInterestRateSingleMarketLiquityV2(provider, network, isLegacy, marketAddress, interestRate, next, debt, iterations, blockNumber);
|
|
186
186
|
});
|
|
187
|
-
const getUnbackedDebtForSingleMarket = (
|
|
187
|
+
const getUnbackedDebtForSingleMarket = (totalBorrowed_1, provider_1, network_1, stabilityPoolAddress_1, ...args_1) => __awaiter(void 0, [totalBorrowed_1, provider_1, network_1, stabilityPoolAddress_1, ...args_1], void 0, function* (totalBorrowed, provider, network, stabilityPoolAddress, blockNumber = 'latest') {
|
|
188
188
|
const stabilityPoolContract = (0, contracts_1.createViemContractFromConfigFunc)('LiquityV2StabilityPool', stabilityPoolAddress)(provider, network);
|
|
189
|
-
const totalBoldDeposits = yield stabilityPoolContract.read.getTotalBoldDeposits();
|
|
189
|
+
const totalBoldDeposits = yield stabilityPoolContract.read.getTotalBoldDeposits((0, viem_1.setViemBlockNumber)(blockNumber));
|
|
190
190
|
const totalBoldDepositsInEth = (0, tokens_1.assetAmountInEth)(totalBoldDeposits.toString());
|
|
191
191
|
return decimal_js_1.default.max(new decimal_js_1.default(totalBorrowed).sub(totalBoldDepositsInEth), 0).toString();
|
|
192
192
|
});
|
|
193
|
-
const getAllMarketsUnbackedDebts = (
|
|
193
|
+
const getAllMarketsUnbackedDebts = (markets_2, isLegacy_1, provider_1, network_1, ...args_1) => __awaiter(void 0, [markets_2, isLegacy_1, provider_1, network_1, ...args_1], void 0, function* (markets, isLegacy, provider, network, blockNumber = 'latest') {
|
|
194
194
|
const allMarketsUnbackedDebt = yield Promise.all(Object.entries(markets).map((_a) => __awaiter(void 0, [_a], void 0, function* ([version, market]) {
|
|
195
195
|
const { assetsData, marketData } = market;
|
|
196
196
|
const { debtToken, isLegacy: isLegacyMarket } = (0, markets_1.LiquityV2Markets)(network)[version];
|
|
197
197
|
if (isLegacyMarket !== isLegacy)
|
|
198
198
|
return [version, '0'];
|
|
199
|
-
const unbackedDebt = yield getUnbackedDebtForSingleMarket(assetsData[debtToken].totalBorrow, provider, network, marketData.stabilityPoolAddress);
|
|
199
|
+
const unbackedDebt = yield getUnbackedDebtForSingleMarket(assetsData[debtToken].totalBorrow, provider, network, marketData.stabilityPoolAddress, blockNumber);
|
|
200
200
|
return [version, unbackedDebt];
|
|
201
201
|
})));
|
|
202
202
|
return Object.fromEntries(allMarketsUnbackedDebt);
|
|
@@ -251,21 +251,21 @@ exports.calculateDebtInFrontLiquityV2 = calculateDebtInFrontLiquityV2;
|
|
|
251
251
|
// @dev The amount redeemed on each branch depends on the unbacked debt of every branch (the difference between total borrow and stability pool deposits).
|
|
252
252
|
// When new debt is generated on the selected market, the unbacked debt will increase, resulting in a higher redemption amount on that branch.
|
|
253
253
|
// 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.
|
|
254
|
-
const getDebtInFrontForInterestRateIncludingNewDebtLiquityV2 = (
|
|
254
|
+
const getDebtInFrontForInterestRateIncludingNewDebtLiquityV2 = (newDebt_1, markets_2, selectedMarket_1, provider_1, network_1, interestRate_1, ...args_1) => __awaiter(void 0, [newDebt_1, markets_2, selectedMarket_1, provider_1, network_1, interestRate_1, ...args_1], void 0, function* (newDebt, markets, selectedMarket, provider, network, interestRate, blockNumber = 'latest') {
|
|
255
255
|
const marketsWithNewDebt = structuredClone(markets);
|
|
256
256
|
const selectedMarketDebtToken = (0, markets_1.LiquityV2Markets)(network)[selectedMarket].debtToken;
|
|
257
257
|
const currentTotalBorrow = new decimal_js_1.default(marketsWithNewDebt[selectedMarket].assetsData[selectedMarketDebtToken].totalBorrow);
|
|
258
258
|
marketsWithNewDebt[selectedMarket].assetsData[selectedMarketDebtToken].totalBorrow = currentTotalBorrow.add(newDebt).toString();
|
|
259
259
|
const { isLegacy } = (0, markets_1.LiquityV2Markets)(common_1.NetworkNumber.Eth)[selectedMarket];
|
|
260
|
-
const allMarketsUnbackedDebts = yield getAllMarketsUnbackedDebts(marketsWithNewDebt, isLegacy, provider, network);
|
|
261
|
-
const interestRateDebtInFront = new decimal_js_1.default(yield getDebtInFrontForInterestRateSingleMarketLiquityV2(provider, network, isLegacy, (0, markets_1.LiquityV2Markets)(network)[selectedMarket].marketAddress, interestRate));
|
|
260
|
+
const allMarketsUnbackedDebts = yield getAllMarketsUnbackedDebts(marketsWithNewDebt, isLegacy, provider, network, blockNumber);
|
|
261
|
+
const interestRateDebtInFront = new decimal_js_1.default(yield getDebtInFrontForInterestRateSingleMarketLiquityV2(provider, network, isLegacy, (0, markets_1.LiquityV2Markets)(network)[selectedMarket].marketAddress, interestRate, '0', '0', 2000, blockNumber));
|
|
262
262
|
return (0, exports.calculateDebtInFrontLiquityV2)(marketsWithNewDebt, selectedMarket, allMarketsUnbackedDebts, interestRateDebtInFront.toString());
|
|
263
263
|
});
|
|
264
264
|
exports.getDebtInFrontForInterestRateIncludingNewDebtLiquityV2 = getDebtInFrontForInterestRateIncludingNewDebtLiquityV2;
|
|
265
|
-
const getDebtInFrontLiquityV2 = (
|
|
265
|
+
const getDebtInFrontLiquityV2 = (markets_2, selectedMarket_1, provider_1, network_1, viewContract_1, troveId_1, ...args_1) => __awaiter(void 0, [markets_2, selectedMarket_1, provider_1, network_1, viewContract_1, troveId_1, ...args_1], void 0, function* (markets, selectedMarket, provider, network, viewContract, troveId, blockNumber = 'latest') {
|
|
266
266
|
const { isLegacy } = (0, markets_1.LiquityV2Markets)(common_1.NetworkNumber.Eth)[selectedMarket];
|
|
267
|
-
const allMarketsUnbackedDebts = yield getAllMarketsUnbackedDebts(markets, isLegacy, provider, network);
|
|
268
|
-
const interestRateDebtInFront = yield getDebtInFrontForSingleMarketLiquityV2(provider, network, isLegacy, (0, markets_1.LiquityV2Markets)(network)[selectedMarket].marketAddress, troveId);
|
|
267
|
+
const allMarketsUnbackedDebts = yield getAllMarketsUnbackedDebts(markets, isLegacy, provider, network, blockNumber);
|
|
268
|
+
const interestRateDebtInFront = yield getDebtInFrontForSingleMarketLiquityV2(provider, network, isLegacy, (0, markets_1.LiquityV2Markets)(network)[selectedMarket].marketAddress, troveId, '0', 2000, blockNumber);
|
|
269
269
|
return (0, exports.calculateDebtInFrontLiquityV2)(markets, selectedMarket, allMarketsUnbackedDebts, interestRateDebtInFront.toString());
|
|
270
270
|
});
|
|
271
271
|
/**
|
|
@@ -277,25 +277,25 @@ const getDebtInFrontLiquityV2 = (markets, selectedMarket, provider, network, vie
|
|
|
277
277
|
* @param interestRate
|
|
278
278
|
* @param debtInFrontBeingMoved - amound of debt being repositioned if interest rate is being increased (prevents including it as debt in front)
|
|
279
279
|
*/
|
|
280
|
-
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') {
|
|
281
|
-
const allMarketsUnbackedDebts = yield getAllMarketsUnbackedDebts(markets, isLegacy, provider, network);
|
|
282
|
-
const interestRateDebtInFront = new decimal_js_1.default(yield getDebtInFrontForInterestRateSingleMarketLiquityV2(provider, network, isLegacy, (0, markets_1.LiquityV2Markets)(network)[selectedMarket].marketAddress, interestRate))
|
|
280
|
+
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', blockNumber = 'latest') {
|
|
281
|
+
const allMarketsUnbackedDebts = yield getAllMarketsUnbackedDebts(markets, isLegacy, provider, network, blockNumber);
|
|
282
|
+
const interestRateDebtInFront = new decimal_js_1.default(yield getDebtInFrontForInterestRateSingleMarketLiquityV2(provider, network, isLegacy, (0, markets_1.LiquityV2Markets)(network)[selectedMarket].marketAddress, interestRate, '0', '0', 2000, blockNumber))
|
|
283
283
|
.sub(debtInFrontBeingMoved);
|
|
284
284
|
return (0, exports.calculateDebtInFrontLiquityV2)(markets, selectedMarket, allMarketsUnbackedDebts, interestRateDebtInFront.toString());
|
|
285
285
|
});
|
|
286
|
-
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); });
|
|
286
|
+
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', blockNumber = 'latest') { return _getDebtInFrontForInterestRateLiquityV2(markets, selectedMarket, (0, viem_1.getViemProvider)(provider, network), network, isLegacy, interestRate, debtInFrontBeingMoved, blockNumber); });
|
|
287
287
|
exports.getDebtInFrontForInterestRateLiquityV2 = getDebtInFrontForInterestRateLiquityV2;
|
|
288
|
-
const _getLiquityV2TroveData = (provider_1, network_1, _a, ...args_1) => __awaiter(void 0, [provider_1, network_1, _a, ...args_1], void 0, function* (provider, network, { selectedMarket, assetsData, troveId, allMarketsData, }, fetchDebtInFront = true) {
|
|
288
|
+
const _getLiquityV2TroveData = (provider_1, network_1, _a, ...args_1) => __awaiter(void 0, [provider_1, network_1, _a, ...args_1], void 0, function* (provider, network, { selectedMarket, assetsData, troveId, allMarketsData, }, fetchDebtInFront = true, blockNumber = 'latest') {
|
|
289
289
|
const { minCollRatio, batchCollRatio } = allMarketsData[selectedMarket.value].marketData;
|
|
290
290
|
const { collateralToken, marketAddress, debtToken } = selectedMarket;
|
|
291
291
|
const troveInfoPromise = selectedMarket.isLegacy
|
|
292
|
-
? (0, contracts_1.LiquityV2LegacyViewContractViem)(provider, network).read.getTroveInfo([marketAddress, BigInt(troveId)])
|
|
292
|
+
? (0, contracts_1.LiquityV2LegacyViewContractViem)(provider, network).read.getTroveInfo([marketAddress, BigInt(troveId)], (0, viem_1.setViemBlockNumber)(blockNumber))
|
|
293
293
|
: (0, contracts_1.LiquityV2ViewContractViem)(provider, network).simulate
|
|
294
|
-
.getTroveInfo([marketAddress, BigInt(troveId)])
|
|
294
|
+
.getTroveInfo([marketAddress, BigInt(troveId)], (0, viem_1.setViemBlockNumber)(blockNumber))
|
|
295
295
|
.then(({ result }) => result);
|
|
296
296
|
const [_data, debtInFront] = yield Promise.all([
|
|
297
297
|
troveInfoPromise,
|
|
298
|
-
fetchDebtInFront ? getDebtInFrontLiquityV2(allMarketsData, selectedMarket.value, provider, network, selectedMarket.isLegacy, troveId) : Promise.resolve('0'),
|
|
298
|
+
fetchDebtInFront ? getDebtInFrontLiquityV2(allMarketsData, selectedMarket.value, provider, network, selectedMarket.isLegacy, troveId, blockNumber) : Promise.resolve('0'),
|
|
299
299
|
]);
|
|
300
300
|
const data = Object.assign(Object.assign({}, _data), { TCRatio: _data.TCRatio.toString() === utils_1.MAXUINT ? '0' : _data.TCRatio.toString() });
|
|
301
301
|
const usedAssets = {};
|
|
@@ -339,19 +339,19 @@ const _getLiquityV2TroveData = (provider_1, network_1, _a, ...args_1) => __await
|
|
|
339
339
|
return payload;
|
|
340
340
|
});
|
|
341
341
|
exports._getLiquityV2TroveData = _getLiquityV2TroveData;
|
|
342
|
-
const getLiquityV2TroveData = (provider_1, network_1, _a, ...args_1) => __awaiter(void 0, [provider_1, network_1, _a, ...args_1], void 0, function* (provider, network, { selectedMarket, assetsData, troveId, allMarketsData, }, fetchDebtInFront = true) {
|
|
342
|
+
const getLiquityV2TroveData = (provider_1, network_1, _a, ...args_1) => __awaiter(void 0, [provider_1, network_1, _a, ...args_1], void 0, function* (provider, network, { selectedMarket, assetsData, troveId, allMarketsData, }, fetchDebtInFront = true, blockNumber = 'latest') {
|
|
343
343
|
return (0, exports._getLiquityV2TroveData)((0, viem_1.getViemProvider)(provider, network), network, {
|
|
344
344
|
selectedMarket,
|
|
345
345
|
assetsData,
|
|
346
346
|
troveId,
|
|
347
347
|
allMarketsData,
|
|
348
|
-
}, fetchDebtInFront);
|
|
348
|
+
}, fetchDebtInFront, blockNumber);
|
|
349
349
|
});
|
|
350
350
|
exports.getLiquityV2TroveData = getLiquityV2TroveData;
|
|
351
|
-
const getLiquityV2ClaimableCollateral = (
|
|
351
|
+
const getLiquityV2ClaimableCollateral = (collSurplusPoolAddress_1, account_1, provider_1, network_1, ...args_1) => __awaiter(void 0, [collSurplusPoolAddress_1, account_1, provider_1, network_1, ...args_1], void 0, function* (collSurplusPoolAddress, account, provider, network, blockNumber = 'latest') {
|
|
352
352
|
const client = (0, viem_1.getViemProvider)(provider, network);
|
|
353
353
|
const collSurplusPoolContract = (0, contracts_1.createViemContractFromConfigFunc)('LiquityV2CollSurplusPool', collSurplusPoolAddress)(client, network);
|
|
354
|
-
const claimableCollateral = yield collSurplusPoolContract.read.getCollateral([account]);
|
|
354
|
+
const claimableCollateral = yield collSurplusPoolContract.read.getCollateral([account], (0, viem_1.setViemBlockNumber)(blockNumber));
|
|
355
355
|
return claimableCollateral.toString();
|
|
356
356
|
});
|
|
357
357
|
exports.getLiquityV2ClaimableCollateral = getLiquityV2ClaimableCollateral;
|
|
@@ -411,22 +411,22 @@ const calculateSPApy = (spYieldGainParams, spAPYs) => {
|
|
|
411
411
|
.toString();
|
|
412
412
|
return apy;
|
|
413
413
|
};
|
|
414
|
-
const getLiquityV2Staking = (
|
|
414
|
+
const getLiquityV2Staking = (provider_1, network_1, market_1, user_1, ...args_1) => __awaiter(void 0, [provider_1, network_1, market_1, user_1, ...args_1], void 0, function* (provider, network, market, user, blockNumber = 'latest') {
|
|
415
415
|
const stabilityPoolView = (0, contracts_1.createViemContractFromConfigFunc)('LiquityV2StabilityPool', stabilityPoolAddrForMarket[market])(provider, network);
|
|
416
416
|
const activePoolView = (0, contracts_1.createViemContractFromConfigFunc)('LiquityV2ActivePool', activePoolAddrForMarket[market])(provider, network);
|
|
417
417
|
const debtTokenInfo = (0, tokens_1.getAssetInfo)((0, markets_1.LiquityV2Markets)(network)[market].debtToken, network);
|
|
418
418
|
const debtTokenContract = (0, contracts_1.createViemContractFromConfigFunc)('Erc20', debtTokenInfo.address)(provider, network);
|
|
419
419
|
const [stabilityRewardColl, stabilityRewardYield, compoundedBoldDeposit, totalBoldDeposits, P, currentScale, yieldGainsPending, debtTokenBalance, aggWeightedDebtSum, lastAggUpdateTime,] = yield Promise.all([
|
|
420
|
-
stabilityPoolView.read.getDepositorCollGain([user]),
|
|
421
|
-
stabilityPoolView.read.getDepositorYieldGain([user]),
|
|
422
|
-
stabilityPoolView.read.getCompoundedBoldDeposit([user]),
|
|
423
|
-
stabilityPoolView.read.getTotalBoldDeposits(),
|
|
424
|
-
stabilityPoolView.read.P(),
|
|
425
|
-
stabilityPoolView.read.currentScale(),
|
|
426
|
-
stabilityPoolView.read.getYieldGainsPending(),
|
|
427
|
-
debtTokenContract.read.balanceOf([user]),
|
|
428
|
-
activePoolView.read.aggWeightedDebtSum(),
|
|
429
|
-
activePoolView.read.lastAggUpdateTime(),
|
|
420
|
+
stabilityPoolView.read.getDepositorCollGain([user], (0, viem_1.setViemBlockNumber)(blockNumber)),
|
|
421
|
+
stabilityPoolView.read.getDepositorYieldGain([user], (0, viem_1.setViemBlockNumber)(blockNumber)),
|
|
422
|
+
stabilityPoolView.read.getCompoundedBoldDeposit([user], (0, viem_1.setViemBlockNumber)(blockNumber)),
|
|
423
|
+
stabilityPoolView.read.getTotalBoldDeposits((0, viem_1.setViemBlockNumber)(blockNumber)),
|
|
424
|
+
stabilityPoolView.read.P((0, viem_1.setViemBlockNumber)(blockNumber)),
|
|
425
|
+
stabilityPoolView.read.currentScale((0, viem_1.setViemBlockNumber)(blockNumber)),
|
|
426
|
+
stabilityPoolView.read.getYieldGainsPending((0, viem_1.setViemBlockNumber)(blockNumber)),
|
|
427
|
+
debtTokenContract.read.balanceOf([user], (0, viem_1.setViemBlockNumber)(blockNumber)),
|
|
428
|
+
activePoolView.read.aggWeightedDebtSum((0, viem_1.setViemBlockNumber)(blockNumber)),
|
|
429
|
+
activePoolView.read.lastAggUpdateTime((0, viem_1.setViemBlockNumber)(blockNumber)),
|
|
430
430
|
]);
|
|
431
431
|
const stabilityPoolYieldParams = {
|
|
432
432
|
aggWeightedDebtSum: aggWeightedDebtSum.toString(),
|
|
@@ -451,7 +451,7 @@ const getLiquityV2Staking = (provider, network, market, user) => __awaiter(void
|
|
|
451
451
|
};
|
|
452
452
|
});
|
|
453
453
|
exports.getLiquityV2Staking = getLiquityV2Staking;
|
|
454
|
-
const getLiquitySAndYBold = (
|
|
454
|
+
const getLiquitySAndYBold = (provider_1, network_1, markets_2, user_1, ...args_1) => __awaiter(void 0, [provider_1, network_1, markets_2, user_1, ...args_1], void 0, function* (provider, network, markets, user, blockNumber = 'latest') {
|
|
455
455
|
const sBold = (0, contracts_1.LiquityV2sBoldVaultViem)(provider, network);
|
|
456
456
|
const yBold = (0, contracts_1.createViemContractFromConfigFunc)('Erc4626', '0x9F4330700a36B29952869fac9b33f45EEdd8A3d8')(provider, network);
|
|
457
457
|
const stYBold = (0, contracts_1.createViemContractFromConfigFunc)('Erc4626', '0x23346B04a7f55b8760E5860AA5A77383D63491cD')(provider, network);
|
|
@@ -461,19 +461,19 @@ const getLiquitySAndYBold = (provider, network, markets, user) => __awaiter(void
|
|
|
461
461
|
apyREth: markets[types_1.LiquityV2Versions.LiquityV2REth].data.stabilityPoolApy,
|
|
462
462
|
};
|
|
463
463
|
const [sBoldTotalAssets, sBoldConvertToShares, sBoldMaxWithdraw, wethApy, wsETHApy, rETHApy, yBoldTotalAssets, yBoldMaxWithdraw, stYBoldConvertToShares, yBoldApy, sBoldBalance, yBoldBalance, stYBoldBalance,] = yield Promise.all([
|
|
464
|
-
sBold.read.totalAssets(),
|
|
465
|
-
sBold.read.convertToShares([BigInt(1e18)]),
|
|
466
|
-
sBold.read.maxWithdraw([user]),
|
|
467
|
-
sBold.read.sps([BigInt(0)]),
|
|
468
|
-
sBold.read.sps([BigInt(1)]),
|
|
469
|
-
sBold.read.sps([BigInt(2)]),
|
|
470
|
-
yBold.read.totalAssets(),
|
|
471
|
-
yBold.read.maxWithdraw([user]),
|
|
472
|
-
stYBold.read.convertToShares([BigInt(1e18)]),
|
|
464
|
+
sBold.read.totalAssets((0, viem_1.setViemBlockNumber)(blockNumber)),
|
|
465
|
+
sBold.read.convertToShares([BigInt(1e18)], (0, viem_1.setViemBlockNumber)(blockNumber)),
|
|
466
|
+
sBold.read.maxWithdraw([user], (0, viem_1.setViemBlockNumber)(blockNumber)),
|
|
467
|
+
sBold.read.sps([BigInt(0)], (0, viem_1.setViemBlockNumber)(blockNumber)),
|
|
468
|
+
sBold.read.sps([BigInt(1)], (0, viem_1.setViemBlockNumber)(blockNumber)),
|
|
469
|
+
sBold.read.sps([BigInt(2)], (0, viem_1.setViemBlockNumber)(blockNumber)),
|
|
470
|
+
yBold.read.totalAssets((0, viem_1.setViemBlockNumber)(blockNumber)),
|
|
471
|
+
yBold.read.maxWithdraw([user], (0, viem_1.setViemBlockNumber)(blockNumber)),
|
|
472
|
+
stYBold.read.convertToShares([BigInt(1e18)], (0, viem_1.setViemBlockNumber)(blockNumber)),
|
|
473
473
|
getYBoldApyApi(),
|
|
474
|
-
sBold.read.balanceOf([user]),
|
|
475
|
-
yBold.read.balanceOf([user]),
|
|
476
|
-
stYBold.read.balanceOf([user]),
|
|
474
|
+
sBold.read.balanceOf([user], (0, viem_1.setViemBlockNumber)(blockNumber)),
|
|
475
|
+
yBold.read.balanceOf([user], (0, viem_1.setViemBlockNumber)(blockNumber)),
|
|
476
|
+
stYBold.read.balanceOf([user], (0, viem_1.setViemBlockNumber)(blockNumber)),
|
|
477
477
|
]);
|
|
478
478
|
const spMarketRes = {
|
|
479
479
|
WETH: new decimal_js_1.default(wethApy[1]).div(10000).toString(),
|
package/cjs/llamaLend/index.d.ts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { Client } from 'viem';
|
|
2
2
|
import { LlamaLendGlobalMarketData, LlamaLendMarketData, LlamaLendUserData } from '../types';
|
|
3
3
|
import { Blockish, EthAddress, EthereumProvider, NetworkNumber, PositionBalances } from '../types/common';
|
|
4
|
-
export declare const _getLlamaLendGlobalData: (provider: Client, network: NetworkNumber, selectedMarket: LlamaLendMarketData) => Promise<LlamaLendGlobalMarketData>;
|
|
5
|
-
export declare const getLlamaLendGlobalData: (provider: EthereumProvider, network: NetworkNumber, selectedMarket: LlamaLendMarketData) => Promise<LlamaLendGlobalMarketData>;
|
|
4
|
+
export declare const _getLlamaLendGlobalData: (provider: Client, network: NetworkNumber, selectedMarket: LlamaLendMarketData, blockNumber?: Blockish) => Promise<LlamaLendGlobalMarketData>;
|
|
5
|
+
export declare const getLlamaLendGlobalData: (provider: EthereumProvider, network: NetworkNumber, selectedMarket: LlamaLendMarketData, blockNumber?: Blockish) => Promise<LlamaLendGlobalMarketData>;
|
|
6
6
|
export declare const _getLlamaLendAccountBalances: (provider: Client, network: NetworkNumber, block: Blockish, addressMapping: boolean, address: EthAddress, controllerAddress: EthAddress, includeDeposited?: boolean) => Promise<PositionBalances>;
|
|
7
7
|
export declare const getLlamaLendAccountBalances: (provider: EthereumProvider, network: NetworkNumber, block: Blockish, addressMapping: boolean, address: EthAddress, controllerAddress: EthAddress) => Promise<PositionBalances>;
|
|
8
|
-
export declare const _getLlamaLendUserData: (provider: Client, network: NetworkNumber, address: EthAddress, selectedMarket: LlamaLendMarketData, marketData: LlamaLendGlobalMarketData) => Promise<LlamaLendUserData>;
|
|
9
|
-
export declare const getLlamaLendUserData: (provider: EthereumProvider, network: NetworkNumber, address: EthAddress, selectedMarket: LlamaLendMarketData, marketData: LlamaLendGlobalMarketData) => Promise<LlamaLendUserData>;
|
|
10
|
-
export declare const getLlamaLendFullPositionData: (provider: EthereumProvider, network: NetworkNumber, address: EthAddress, selectedMarket: LlamaLendMarketData) => Promise<LlamaLendUserData>;
|
|
8
|
+
export declare const _getLlamaLendUserData: (provider: Client, network: NetworkNumber, address: EthAddress, selectedMarket: LlamaLendMarketData, marketData: LlamaLendGlobalMarketData, blockNumber?: Blockish) => Promise<LlamaLendUserData>;
|
|
9
|
+
export declare const getLlamaLendUserData: (provider: EthereumProvider, network: NetworkNumber, address: EthAddress, selectedMarket: LlamaLendMarketData, marketData: LlamaLendGlobalMarketData, blockNumber?: Blockish) => Promise<LlamaLendUserData>;
|
|
10
|
+
export declare const getLlamaLendFullPositionData: (provider: EthereumProvider, network: NetworkNumber, address: EthAddress, selectedMarket: LlamaLendMarketData, blockNumber?: Blockish) => Promise<LlamaLendUserData>;
|
package/cjs/llamaLend/index.js
CHANGED
|
@@ -23,7 +23,7 @@ const utils_1 = require("../services/utils");
|
|
|
23
23
|
const llamaLend_1 = require("../markets/llamaLend");
|
|
24
24
|
const staking_1 = require("../staking");
|
|
25
25
|
const viem_1 = require("../services/viem");
|
|
26
|
-
const getAndFormatBands = (
|
|
26
|
+
const getAndFormatBands = (provider_1, network_1, selectedMarket_1, _minBand_1, _maxBand_1, ...args_1) => __awaiter(void 0, [provider_1, network_1, selectedMarket_1, _minBand_1, _maxBand_1, ...args_1], void 0, function* (provider, network, selectedMarket, _minBand, _maxBand, blockNumber = 'latest') {
|
|
27
27
|
const contract = (0, contracts_1.LlamaLendViewContractViem)(provider, network);
|
|
28
28
|
const minBand = parseInt(_minBand, 10);
|
|
29
29
|
const maxBand = parseInt(_maxBand, 10);
|
|
@@ -47,7 +47,7 @@ const getAndFormatBands = (provider, network, selectedMarket, _minBand, _maxBand
|
|
|
47
47
|
else {
|
|
48
48
|
start = pivots[index - 1] + 1;
|
|
49
49
|
}
|
|
50
|
-
const pivotedBandsData = yield contract.read.getBandsData([selectedMarket.controllerAddress, BigInt(start), BigInt(pivot)]);
|
|
50
|
+
const pivotedBandsData = yield contract.read.getBandsData([selectedMarket.controllerAddress, BigInt(start), BigInt(pivot)], (0, viem_1.setViemBlockNumber)(blockNumber));
|
|
51
51
|
return pivotedBandsData;
|
|
52
52
|
})))).flat();
|
|
53
53
|
return bandsData.map((band) => ({
|
|
@@ -58,11 +58,11 @@ const getAndFormatBands = (provider, network, selectedMarket, _minBand, _maxBand
|
|
|
58
58
|
highPrice: (0, tokens_1.assetAmountInEth)(band.highPrice.toString()),
|
|
59
59
|
}));
|
|
60
60
|
});
|
|
61
|
-
const _getLlamaLendGlobalData = (
|
|
61
|
+
const _getLlamaLendGlobalData = (provider_1, network_1, selectedMarket_1, ...args_1) => __awaiter(void 0, [provider_1, network_1, selectedMarket_1, ...args_1], void 0, function* (provider, network, selectedMarket, blockNumber = 'latest') {
|
|
62
62
|
const contract = (0, contracts_1.LlamaLendViewContractViem)(provider, network);
|
|
63
63
|
const collAsset = selectedMarket.collAsset;
|
|
64
64
|
const debtAsset = selectedMarket.baseAsset;
|
|
65
|
-
const data = yield contract.read.globalData([selectedMarket.controllerAddress]);
|
|
65
|
+
const data = yield contract.read.globalData([selectedMarket.controllerAddress], (0, viem_1.setViemBlockNumber)(blockNumber));
|
|
66
66
|
// all prices are in 18 decimals
|
|
67
67
|
const oraclePrice = (0, utils_1.getEthAmountForDecimals)(data.oraclePrice.toString(), 18);
|
|
68
68
|
const collPriceUsd = collAsset === 'crvUSD' ? '1' : new decimal_js_1.default(1).mul(oraclePrice).toDP(18).toString();
|
|
@@ -81,7 +81,7 @@ const _getLlamaLendGlobalData = (provider, network, selectedMarket) => __awaiter
|
|
|
81
81
|
.toString();
|
|
82
82
|
const futureBorrowRate = new decimal_js_1.default(new decimal_js_1.default(2.718281828459).pow(exponentFutureRate).minus(1)).mul(100)
|
|
83
83
|
.toString();
|
|
84
|
-
const bandsData = yield getAndFormatBands(provider, network, selectedMarket, data.minBand.toString(), data.maxBand.toString());
|
|
84
|
+
const bandsData = yield getAndFormatBands(provider, network, selectedMarket, data.minBand.toString(), data.maxBand.toString(), blockNumber);
|
|
85
85
|
const cap = (0, tokens_1.assetAmountInEth)(data.debtTokenTotalSupply.toString(), debtAsset);
|
|
86
86
|
const leftToBorrow = (0, utils_1.getEthAmountForDecimals)(data.debtTokenLeftToBorrow.toString(), 18);
|
|
87
87
|
const debtInAYearBN = new decimal_js_1.default(totalDebt).mul(new decimal_js_1.default(2.718281828459).pow(exponentRate).toNumber());
|
|
@@ -142,7 +142,7 @@ const _getLlamaLendGlobalData = (provider, network, selectedMarket) => __awaiter
|
|
|
142
142
|
};
|
|
143
143
|
});
|
|
144
144
|
exports._getLlamaLendGlobalData = _getLlamaLendGlobalData;
|
|
145
|
-
const getLlamaLendGlobalData = (
|
|
145
|
+
const getLlamaLendGlobalData = (provider_1, network_1, selectedMarket_1, ...args_1) => __awaiter(void 0, [provider_1, network_1, selectedMarket_1, ...args_1], void 0, function* (provider, network, selectedMarket, blockNumber = 'latest') { return (0, exports._getLlamaLendGlobalData)((0, viem_1.getViemProvider)(provider, network), network, selectedMarket, blockNumber); });
|
|
146
146
|
exports.getLlamaLendGlobalData = getLlamaLendGlobalData;
|
|
147
147
|
const getStatusForUser = (bandRange, activeBand, debtSupplied, collSupplied, healthPercent) => {
|
|
148
148
|
// if bands are equal, that can only be [0,0] which means user doesn't have loan (min number of bands is 4)
|
|
@@ -190,10 +190,10 @@ const _getLlamaLendAccountBalances = (provider_1, network_1, block_1, addressMap
|
|
|
190
190
|
exports._getLlamaLendAccountBalances = _getLlamaLendAccountBalances;
|
|
191
191
|
const getLlamaLendAccountBalances = (provider, network, block, addressMapping, address, controllerAddress) => __awaiter(void 0, void 0, void 0, function* () { return (0, exports._getLlamaLendAccountBalances)((0, viem_1.getViemProvider)(provider, network), network, block, addressMapping, address, controllerAddress); });
|
|
192
192
|
exports.getLlamaLendAccountBalances = getLlamaLendAccountBalances;
|
|
193
|
-
const _getLlamaLendUserData = (
|
|
193
|
+
const _getLlamaLendUserData = (provider_1, network_1, address_1, selectedMarket_1, marketData_1, ...args_1) => __awaiter(void 0, [provider_1, network_1, address_1, selectedMarket_1, marketData_1, ...args_1], void 0, function* (provider, network, address, selectedMarket, marketData, blockNumber = 'latest') {
|
|
194
194
|
const contract = (0, contracts_1.LlamaLendViewContractViem)(provider, network);
|
|
195
195
|
const { assetsData } = marketData;
|
|
196
|
-
const data = yield contract.read.userData([selectedMarket.controllerAddress, address]);
|
|
196
|
+
const data = yield contract.read.userData([selectedMarket.controllerAddress, address], (0, viem_1.setViemBlockNumber)(blockNumber));
|
|
197
197
|
const collAsset = selectedMarket.collAsset;
|
|
198
198
|
const debtAsset = selectedMarket.baseAsset;
|
|
199
199
|
const collPrice = assetsData[collAsset].price;
|
|
@@ -238,7 +238,7 @@ const _getLlamaLendUserData = (provider, network, address, selectedMarket, marke
|
|
|
238
238
|
};
|
|
239
239
|
const priceHigh = (0, tokens_1.assetAmountInEth)(data.priceHigh.toString());
|
|
240
240
|
const priceLow = (0, tokens_1.assetAmountInEth)(data.priceLow.toString());
|
|
241
|
-
const _userBands = data.loanExists ? (yield getAndFormatBands(provider, network, selectedMarket, data.bandRange[0].toString(), data.bandRange[1].toString())) : [];
|
|
241
|
+
const _userBands = data.loanExists ? (yield getAndFormatBands(provider, network, selectedMarket, data.bandRange[0].toString(), data.bandRange[1].toString(), blockNumber)) : [];
|
|
242
242
|
const status = data.loanExists ? getStatusForUser(data.bandRange.map(b => b.toString()), marketData.activeBand, debtSupplied, collSupplied, healthPercent) : types_1.LlamaLendStatus.Nonexistant;
|
|
243
243
|
const userBands = _userBands.map((band, index) => (Object.assign(Object.assign({}, band), { userDebtAmount: (0, tokens_1.assetAmountInEth)(data.usersBands[0][index].toString(), debtAsset), userCollAmount: (0, tokens_1.assetAmountInEth)(data.usersBands[1][index].toString(), collAsset) }))).sort((a, b) => parseInt(b.id, 10) - parseInt(a.id, 10));
|
|
244
244
|
return Object.assign(Object.assign(Object.assign(Object.assign({}, data), { debtAmount: (0, tokens_1.assetAmountInEth)(data.debtAmount.toString(), debtAsset), health,
|
|
@@ -250,11 +250,11 @@ const _getLlamaLendUserData = (provider, network, address, selectedMarket, marke
|
|
|
250
250
|
})), { userBands });
|
|
251
251
|
});
|
|
252
252
|
exports._getLlamaLendUserData = _getLlamaLendUserData;
|
|
253
|
-
const getLlamaLendUserData = (
|
|
253
|
+
const getLlamaLendUserData = (provider_1, network_1, address_1, selectedMarket_1, marketData_1, ...args_1) => __awaiter(void 0, [provider_1, network_1, address_1, selectedMarket_1, marketData_1, ...args_1], void 0, function* (provider, network, address, selectedMarket, marketData, blockNumber = 'latest') { return (0, exports._getLlamaLendUserData)((0, viem_1.getViemProvider)(provider, network), network, address, selectedMarket, marketData, blockNumber); });
|
|
254
254
|
exports.getLlamaLendUserData = getLlamaLendUserData;
|
|
255
|
-
const getLlamaLendFullPositionData = (
|
|
256
|
-
const marketData = yield (0, exports.getLlamaLendGlobalData)(provider, network, selectedMarket);
|
|
257
|
-
const positionData = yield (0, exports.getLlamaLendUserData)(provider, network, address, selectedMarket, marketData);
|
|
255
|
+
const getLlamaLendFullPositionData = (provider_1, network_1, address_1, selectedMarket_1, ...args_1) => __awaiter(void 0, [provider_1, network_1, address_1, selectedMarket_1, ...args_1], void 0, function* (provider, network, address, selectedMarket, blockNumber = 'latest') {
|
|
256
|
+
const marketData = yield (0, exports.getLlamaLendGlobalData)(provider, network, selectedMarket, blockNumber);
|
|
257
|
+
const positionData = yield (0, exports.getLlamaLendUserData)(provider, network, address, selectedMarket, marketData, blockNumber);
|
|
258
258
|
return positionData;
|
|
259
259
|
});
|
|
260
260
|
exports.getLlamaLendFullPositionData = getLlamaLendFullPositionData;
|
package/cjs/maker/index.d.ts
CHANGED
|
@@ -3,12 +3,12 @@ import { Blockish, EthAddress, EthereumProvider, NetworkNumber, PositionBalances
|
|
|
3
3
|
import { CdpData, CdpInfo, IlkInfo } from '../types';
|
|
4
4
|
export declare const _getMakerAccountBalances: (provider: PublicClient, network: NetworkNumber, block: Blockish, addressMapping: boolean, cdpId: string, _managerAddress?: EthAddress) => Promise<PositionBalances>;
|
|
5
5
|
export declare const getMakerAccountBalances: (provider: EthereumProvider, network: NetworkNumber, block: Blockish, addressMapping: boolean, cdpId: string, _managerAddress?: EthAddress) => Promise<PositionBalances>;
|
|
6
|
-
export declare const _getUserCdps: (provider: Client, network: NetworkNumber, userAddress: EthAddress) => Promise<CdpInfo[]>;
|
|
7
|
-
export declare const getUserCdps: (provider: EthereumProvider, network: NetworkNumber, userAddress: EthAddress) => Promise<CdpInfo[]>;
|
|
8
|
-
export declare const _getMakerIlksData: (provider: Client, network: NetworkNumber, ilkLabels: string[]) => Promise<Record<string, IlkInfo>>;
|
|
9
|
-
export declare const getMakerIlksData: (provider: EthereumProvider, network: NetworkNumber, ilkLabels: string[]) => Promise<Record<string, IlkInfo>>;
|
|
6
|
+
export declare const _getUserCdps: (provider: Client, network: NetworkNumber, userAddress: EthAddress, blockNumber?: Blockish) => Promise<CdpInfo[]>;
|
|
7
|
+
export declare const getUserCdps: (provider: EthereumProvider, network: NetworkNumber, userAddress: EthAddress, blockNumber?: Blockish) => Promise<CdpInfo[]>;
|
|
8
|
+
export declare const _getMakerIlksData: (provider: Client, network: NetworkNumber, ilkLabels: string[], blockNumber?: Blockish) => Promise<Record<string, IlkInfo>>;
|
|
9
|
+
export declare const getMakerIlksData: (provider: EthereumProvider, network: NetworkNumber, ilkLabels: string[], blockNumber?: Blockish) => Promise<Record<string, IlkInfo>>;
|
|
10
10
|
/**
|
|
11
11
|
* @param ilkInfo optional precomputed ilk data (from `_getMakerIlksData`); when provided the per-ilk reads are skipped
|
|
12
12
|
*/
|
|
13
|
-
export declare const _getMakerCdpData: (provider: Client, network: NetworkNumber, cdp: CdpInfo, ilkInfo?: IlkInfo) => Promise<CdpData>;
|
|
14
|
-
export declare const getMakerCdpData: (provider: EthereumProvider, network: NetworkNumber, cdp: CdpInfo) => Promise<CdpData>;
|
|
13
|
+
export declare const _getMakerCdpData: (provider: Client, network: NetworkNumber, cdp: CdpInfo, ilkInfo?: IlkInfo, blockNumber?: Blockish) => Promise<CdpData>;
|
|
14
|
+
export declare const getMakerCdpData: (provider: EthereumProvider, network: NetworkNumber, cdp: CdpInfo, blockNumber?: Blockish) => Promise<CdpData>;
|
package/cjs/maker/index.js
CHANGED
|
@@ -71,12 +71,12 @@ const _getMakerAccountBalances = (provider, network, block, addressMapping, cdpI
|
|
|
71
71
|
exports._getMakerAccountBalances = _getMakerAccountBalances;
|
|
72
72
|
const getMakerAccountBalances = (provider, network, block, addressMapping, cdpId, _managerAddress) => __awaiter(void 0, void 0, void 0, function* () { return (0, exports._getMakerAccountBalances)((0, viem_1.getViemProvider)(provider, network, { batch: { multicall: true } }), network, block, addressMapping, cdpId, _managerAddress); });
|
|
73
73
|
exports.getMakerAccountBalances = getMakerAccountBalances;
|
|
74
|
-
const _getUserCdps = (
|
|
74
|
+
const _getUserCdps = (provider_1, network_1, userAddress_1, ...args_1) => __awaiter(void 0, [provider_1, network_1, userAddress_1, ...args_1], void 0, function* (provider, network, userAddress, blockNumber = 'latest') {
|
|
75
75
|
if (!userAddress)
|
|
76
76
|
return [];
|
|
77
77
|
const mcdGetCdpsContract = (0, contracts_1.McdGetCdpsContractViem)(provider, network);
|
|
78
78
|
const mcdCdpManagerAddress = (0, contracts_1.getConfigContractAddress)('McdCdpManager', network);
|
|
79
|
-
const standardCdps = yield mcdGetCdpsContract.read.getCdpsAsc([mcdCdpManagerAddress, userAddress]);
|
|
79
|
+
const standardCdps = yield mcdGetCdpsContract.read.getCdpsAsc([mcdCdpManagerAddress, userAddress], (0, viem_1.setViemBlockNumber)(blockNumber));
|
|
80
80
|
const parsedStandardCdps = standardCdps[0].map((id, i) => ({
|
|
81
81
|
id: parseInt(id.toString(), 10),
|
|
82
82
|
ilk: standardCdps[2][i].toLowerCase(), // collateral type
|
|
@@ -89,39 +89,39 @@ const _getUserCdps = (provider, network, userAddress) => __awaiter(void 0, void
|
|
|
89
89
|
return parsedStandardCdps;
|
|
90
90
|
});
|
|
91
91
|
exports._getUserCdps = _getUserCdps;
|
|
92
|
-
const getUserCdps = (
|
|
92
|
+
const getUserCdps = (provider_1, network_1, userAddress_1, ...args_1) => __awaiter(void 0, [provider_1, network_1, userAddress_1, ...args_1], void 0, function* (provider, network, userAddress, blockNumber = 'latest') { return (0, exports._getUserCdps)((0, viem_1.getViemProvider)(provider, network), network, userAddress, blockNumber); });
|
|
93
93
|
exports.getUserCdps = getUserCdps;
|
|
94
|
-
const _getMakerIlksData = (
|
|
94
|
+
const _getMakerIlksData = (provider_1, network_1, ilkLabels_1, ...args_1) => __awaiter(void 0, [provider_1, network_1, ilkLabels_1, ...args_1], void 0, function* (provider, network, ilkLabels, blockNumber = 'latest') {
|
|
95
95
|
const vatContract = (0, contracts_1.McdVatContractViem)(provider, network);
|
|
96
96
|
const spotterContract = (0, contracts_1.McdSpotterContractViem)(provider, network);
|
|
97
97
|
const dogContract = (0, contracts_1.McdDogContractViem)(provider, network);
|
|
98
98
|
const jugContract = (0, contracts_1.McdJugContractViem)(provider, network);
|
|
99
|
-
const par = yield spotterContract.read.par();
|
|
99
|
+
const par = yield spotterContract.read.par((0, viem_1.setViemBlockNumber)(blockNumber));
|
|
100
100
|
const ilksInfo = yield Promise.all(ilkLabels.map((ilkLabel) => __awaiter(void 0, void 0, void 0, function* () {
|
|
101
101
|
const ilk = (0, tokens_1.stringToBytes)(ilkLabel);
|
|
102
102
|
const [[_, mat], [artGlobal, rate, spot, line, dust], [duty], futureRate, chop,] = yield Promise.all([
|
|
103
|
-
spotterContract.read.ilks([ilk]),
|
|
104
|
-
vatContract.read.ilks([ilk]),
|
|
105
|
-
jugContract.read.ilks([ilk]),
|
|
106
|
-
jugContract.read.drip([ilk]),
|
|
107
|
-
dogContract.read.chop([ilk]),
|
|
103
|
+
spotterContract.read.ilks([ilk], (0, viem_1.setViemBlockNumber)(blockNumber)),
|
|
104
|
+
vatContract.read.ilks([ilk], (0, viem_1.setViemBlockNumber)(blockNumber)),
|
|
105
|
+
jugContract.read.ilks([ilk], (0, viem_1.setViemBlockNumber)(blockNumber)),
|
|
106
|
+
jugContract.read.drip([ilk], (0, viem_1.setViemBlockNumber)(blockNumber)),
|
|
107
|
+
dogContract.read.chop([ilk], (0, viem_1.setViemBlockNumber)(blockNumber)),
|
|
108
108
|
]);
|
|
109
109
|
return (0, makerHelpers_1.parseCollateralInfo)(ilk, par.toString(), mat.toString(), artGlobal.toString(), rate.toString(), spot.toString(), line.toString(), dust.toString(), duty.toString(), futureRate.toString(), chop.toString());
|
|
110
110
|
})));
|
|
111
111
|
return Object.fromEntries(ilksInfo.map((ilkInfo) => [ilkInfo.ilkLabel, ilkInfo]));
|
|
112
112
|
});
|
|
113
113
|
exports._getMakerIlksData = _getMakerIlksData;
|
|
114
|
-
const getMakerIlksData = (
|
|
114
|
+
const getMakerIlksData = (provider_1, network_1, ilkLabels_1, ...args_1) => __awaiter(void 0, [provider_1, network_1, ilkLabels_1, ...args_1], void 0, function* (provider, network, ilkLabels, blockNumber = 'latest') { return (0, exports._getMakerIlksData)((0, viem_1.getViemProvider)(provider, network, { batch: { multicall: true } }), network, ilkLabels, blockNumber); });
|
|
115
115
|
exports.getMakerIlksData = getMakerIlksData;
|
|
116
116
|
/**
|
|
117
117
|
* @param ilkInfo optional precomputed ilk data (from `_getMakerIlksData`); when provided the per-ilk reads are skipped
|
|
118
118
|
*/
|
|
119
|
-
const _getMakerCdpData = (
|
|
119
|
+
const _getMakerCdpData = (provider_1, network_1, cdp_1, ilkInfo_1, ...args_1) => __awaiter(void 0, [provider_1, network_1, cdp_1, ilkInfo_1, ...args_1], void 0, function* (provider, network, cdp, ilkInfo, blockNumber = 'latest') {
|
|
120
120
|
const vatContract = (0, contracts_1.McdVatContractViem)(provider, network);
|
|
121
121
|
const [[ink, art], coll, fetchedIlkInfo, collStakingApy,] = yield Promise.all([
|
|
122
|
-
vatContract.read.urns([cdp.ilk, cdp.urn]),
|
|
123
|
-
vatContract.read.gem([cdp.ilk, cdp.urn]),
|
|
124
|
-
ilkInfo || (0, exports._getMakerIlksData)(provider, network, [cdp.ilkLabel]).then((ilks) => ilks[cdp.ilkLabel]),
|
|
122
|
+
vatContract.read.urns([cdp.ilk, cdp.urn], (0, viem_1.setViemBlockNumber)(blockNumber)),
|
|
123
|
+
vatContract.read.gem([cdp.ilk, cdp.urn], (0, viem_1.setViemBlockNumber)(blockNumber)),
|
|
124
|
+
ilkInfo || (0, exports._getMakerIlksData)(provider, network, [cdp.ilkLabel], blockNumber).then((ilks) => ilks[cdp.ilkLabel]),
|
|
125
125
|
staking_1.STAKING_ASSETS.includes(cdp.asset) ? (0, staking_1.getStakingApy)(cdp.asset) : Promise.resolve('0'),
|
|
126
126
|
]);
|
|
127
127
|
const collInfo = fetchedIlkInfo;
|
|
@@ -186,5 +186,5 @@ const _getMakerCdpData = (provider, network, cdp, ilkInfo) => __awaiter(void 0,
|
|
|
186
186
|
};
|
|
187
187
|
});
|
|
188
188
|
exports._getMakerCdpData = _getMakerCdpData;
|
|
189
|
-
const getMakerCdpData = (
|
|
189
|
+
const getMakerCdpData = (provider_1, network_1, cdp_1, ...args_1) => __awaiter(void 0, [provider_1, network_1, cdp_1, ...args_1], void 0, function* (provider, network, cdp, blockNumber = 'latest') { return (0, exports._getMakerCdpData)((0, viem_1.getViemProvider)(provider, network), network, cdp, undefined, blockNumber); });
|
|
190
190
|
exports.getMakerCdpData = getMakerCdpData;
|
|
@@ -3,15 +3,15 @@ import { Blockish, EthAddress, EthereumProvider, NetworkNumber, PositionBalances
|
|
|
3
3
|
import { MorphoBlueEarnData, MorphoBlueMarketData, MorphoBlueMarketInfo, MorphoBlueMarketRewards, MorphoBluePositionData } from '../types';
|
|
4
4
|
export { MorphoBlueMerklOpportunityType, addMorphoBlueMerklOpportunitiesToMarketInfo, getMorphoBlueMerklOpportunities, addMorphoBlueMerklRewardsToMarketInfo, } from './merkl';
|
|
5
5
|
export declare const addMorphoBlueRewardsToMarketInfo: (marketInfo: MorphoBlueMarketInfo, rewards: MorphoBlueMarketRewards) => MorphoBlueMarketInfo;
|
|
6
|
-
export declare function _getMorphoBlueMarketData(provider: Client, network: NetworkNumber, selectedMarket: MorphoBlueMarketData): Promise<MorphoBlueMarketInfo>;
|
|
7
|
-
export declare function _getMorphoBluePortfolioMarketData(provider: Client, network: NetworkNumber, selectedMarket: MorphoBlueMarketData): Promise<MorphoBlueMarketInfo>;
|
|
8
|
-
export declare function getMorphoBlueMarketData(provider: EthereumProvider, network: NetworkNumber, selectedMarket: MorphoBlueMarketData): Promise<MorphoBlueMarketInfo>;
|
|
9
|
-
export declare function getMorphoBluePortfolioMarketData(provider: EthereumProvider, network: NetworkNumber, selectedMarket: MorphoBlueMarketData): Promise<MorphoBlueMarketInfo>;
|
|
6
|
+
export declare function _getMorphoBlueMarketData(provider: Client, network: NetworkNumber, selectedMarket: MorphoBlueMarketData, blockNumber?: Blockish): Promise<MorphoBlueMarketInfo>;
|
|
7
|
+
export declare function _getMorphoBluePortfolioMarketData(provider: Client, network: NetworkNumber, selectedMarket: MorphoBlueMarketData, blockNumber?: Blockish): Promise<MorphoBlueMarketInfo>;
|
|
8
|
+
export declare function getMorphoBlueMarketData(provider: EthereumProvider, network: NetworkNumber, selectedMarket: MorphoBlueMarketData, blockNumber?: Blockish): Promise<MorphoBlueMarketInfo>;
|
|
9
|
+
export declare function getMorphoBluePortfolioMarketData(provider: EthereumProvider, network: NetworkNumber, selectedMarket: MorphoBlueMarketData, blockNumber?: Blockish): Promise<MorphoBlueMarketInfo>;
|
|
10
10
|
export declare const getMorphoBluePositionDataWithMarketInfo: (data: MorphoBluePositionData, marketInfo: MorphoBlueMarketInfo) => MorphoBluePositionData;
|
|
11
11
|
export declare const getMorphoEarnDataWithMarketInfo: (data: MorphoBlueEarnData, marketInfo: MorphoBlueMarketInfo) => MorphoBlueEarnData;
|
|
12
12
|
export declare function getMorphoBlueMarketRewards(network: NetworkNumber, selectedMarket: MorphoBlueMarketData): Promise<MorphoBlueMarketRewards>;
|
|
13
13
|
export declare const _getMorphoBlueAccountBalances: (provider: Client, network: NetworkNumber, block: Blockish, addressMapping: boolean, address: EthAddress, selectedMarket: MorphoBlueMarketData) => Promise<PositionBalances>;
|
|
14
14
|
export declare const getMorphoBlueAccountBalances: (provider: EthereumProvider, network: NetworkNumber, block: Blockish, addressMapping: boolean, address: EthAddress, selectedMarket: MorphoBlueMarketData) => Promise<PositionBalances>;
|
|
15
|
-
export declare function _getMorphoBlueAccountData(provider: Client, network: NetworkNumber, account: EthAddress, selectedMarket: MorphoBlueMarketData, marketInfo: MorphoBlueMarketInfo): Promise<MorphoBluePositionData>;
|
|
16
|
-
export declare function getMorphoBlueAccountData(provider: EthereumProvider, network: NetworkNumber, account: EthAddress, selectedMarket: MorphoBlueMarketData, marketInfo: MorphoBlueMarketInfo): Promise<MorphoBluePositionData>;
|
|
17
|
-
export declare function getMorphoEarn(provider: Client, network: NetworkNumber, account: EthAddress, selectedMarket: MorphoBlueMarketData, marketInfo: MorphoBlueMarketInfo): Promise<MorphoBlueEarnData>;
|
|
15
|
+
export declare function _getMorphoBlueAccountData(provider: Client, network: NetworkNumber, account: EthAddress, selectedMarket: MorphoBlueMarketData, marketInfo: MorphoBlueMarketInfo, blockNumber?: Blockish): Promise<MorphoBluePositionData>;
|
|
16
|
+
export declare function getMorphoBlueAccountData(provider: EthereumProvider, network: NetworkNumber, account: EthAddress, selectedMarket: MorphoBlueMarketData, marketInfo: MorphoBlueMarketInfo, blockNumber?: Blockish): Promise<MorphoBluePositionData>;
|
|
17
|
+
export declare function getMorphoEarn(provider: Client, network: NetworkNumber, account: EthAddress, selectedMarket: MorphoBlueMarketData, marketInfo: MorphoBlueMarketInfo, blockNumber?: Blockish): Promise<MorphoBlueEarnData>;
|