@defisaver/positions-sdk 2.1.136 → 2.1.137-audit-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/config/contracts.d.ts +0 -938
- package/cjs/config/contracts.js +1 -8
- package/cjs/contracts.d.ts +3823 -27499
- package/cjs/contracts.js +2 -3
- package/cjs/helpers/index.d.ts +0 -1
- package/cjs/helpers/index.js +1 -2
- package/cjs/index.d.ts +1 -2
- package/cjs/index.js +1 -3
- package/cjs/markets/index.d.ts +0 -1
- package/cjs/markets/index.js +1 -3
- package/cjs/markets/morphoBlue/index.d.ts +4 -0
- package/cjs/markets/morphoBlue/index.js +36 -2
- package/cjs/portfolio/discovery.d.ts +1 -1
- package/cjs/portfolio/discovery.js +1 -1
- package/cjs/portfolio/index.js +0 -32
- package/cjs/savings/morphoVaults/index.js +19 -2
- package/cjs/services/viem.d.ts +918 -2679
- package/cjs/staking/staking.js +1 -2
- package/cjs/types/index.d.ts +0 -1
- package/cjs/types/index.js +0 -1
- package/cjs/types/morphoBlue.d.ts +2 -0
- package/cjs/types/morphoBlue.js +2 -0
- package/cjs/types/portfolio.d.ts +0 -4
- package/esm/config/contracts.d.ts +0 -938
- package/esm/config/contracts.js +0 -6
- package/esm/contracts.d.ts +3823 -27499
- package/esm/contracts.js +0 -1
- package/esm/helpers/index.d.ts +0 -1
- package/esm/helpers/index.js +0 -1
- package/esm/index.d.ts +1 -2
- package/esm/index.js +1 -2
- package/esm/markets/index.d.ts +0 -1
- package/esm/markets/index.js +0 -1
- package/esm/markets/morphoBlue/index.d.ts +4 -0
- package/esm/markets/morphoBlue/index.js +32 -0
- package/esm/portfolio/discovery.d.ts +1 -1
- package/esm/portfolio/discovery.js +1 -1
- package/esm/portfolio/index.js +1 -33
- package/esm/savings/morphoVaults/index.js +19 -2
- package/esm/services/viem.d.ts +916 -2667
- package/esm/staking/staking.js +1 -2
- package/esm/types/index.d.ts +0 -1
- package/esm/types/index.js +0 -1
- package/esm/types/morphoBlue.d.ts +2 -0
- package/esm/types/morphoBlue.js +2 -0
- package/esm/types/portfolio.d.ts +0 -4
- package/package.json +9 -2
- package/src/config/contracts.ts +0 -6
- package/src/contracts.ts +2 -3
- package/src/helpers/index.ts +0 -1
- package/src/index.ts +0 -2
- package/src/markets/index.ts +0 -1
- package/src/markets/morphoBlue/index.ts +32 -0
- package/src/portfolio/discovery.ts +1 -1
- package/src/portfolio/index.ts +0 -33
- package/src/savings/morphoVaults/index.ts +18 -2
- package/src/staking/staking.ts +1 -2
- package/src/types/index.ts +0 -1
- package/src/types/morphoBlue.ts +2 -0
- package/src/types/portfolio.ts +0 -4
- package/cjs/eulerV2/index.d.ts +0 -47
- package/cjs/eulerV2/index.js +0 -225
- package/cjs/helpers/eulerHelpers/index.d.ts +0 -22
- package/cjs/helpers/eulerHelpers/index.js +0 -231
- package/cjs/markets/euler/index.d.ts +0 -8
- package/cjs/markets/euler/index.js +0 -30
- package/cjs/types/euler.d.ts +0 -153
- package/cjs/types/euler.js +0 -14
- package/esm/eulerV2/index.d.ts +0 -47
- package/esm/eulerV2/index.js +0 -215
- package/esm/helpers/eulerHelpers/index.d.ts +0 -22
- package/esm/helpers/eulerHelpers/index.js +0 -218
- package/esm/markets/euler/index.d.ts +0 -8
- package/esm/markets/euler/index.js +0 -24
- package/esm/types/euler.d.ts +0 -153
- package/esm/types/euler.js +0 -11
- package/src/eulerV2/index.ts +0 -331
- package/src/helpers/eulerHelpers/index.ts +0 -232
- package/src/markets/euler/index.ts +0 -27
- package/src/types/euler.ts +0 -178
package/esm/contracts.js
CHANGED
|
@@ -106,7 +106,6 @@ export const WstETHPriceFeedContractViem = createViemContractFromConfigFunc('Wst
|
|
|
106
106
|
export const CompV3ViewContractViem = createViemContractFromConfigFunc('CompV3View');
|
|
107
107
|
export const SparkViewContractViem = createViemContractFromConfigFunc('SparkView');
|
|
108
108
|
export const SparkIncentiveDataProviderContractViem = createViemContractFromConfigFunc('SparkIncentiveDataProvider');
|
|
109
|
-
export const EulerV2ViewContractViem = createViemContractFromConfigFunc('EulerV2View');
|
|
110
109
|
export const CrvUSDViewContractViem = createViemContractFromConfigFunc('crvUSDView');
|
|
111
110
|
export const CrvUSDFactoryContractViem = createViemContractFromConfigFunc('crvUSDFactory');
|
|
112
111
|
export const LlamaLendViewContractViem = createViemContractFromConfigFunc('LlamaLendView');
|
package/esm/helpers/index.d.ts
CHANGED
|
@@ -6,6 +6,5 @@ export * as makerHelpers from './makerHelpers';
|
|
|
6
6
|
export * as morphoBlueHelpers from './morphoBlueHelpers';
|
|
7
7
|
export * as llamaLendHelpers from './llamaLendHelpers';
|
|
8
8
|
export * as liquityV2Helpers from './liquityV2Helpers';
|
|
9
|
-
export * as eulerV2Helpers from './eulerHelpers';
|
|
10
9
|
export * as fluidHelpers from './fluidHelpers';
|
|
11
10
|
export * as aaveV4Helpers from './aaveV4Helpers';
|
package/esm/helpers/index.js
CHANGED
|
@@ -6,6 +6,5 @@ export * as makerHelpers from './makerHelpers';
|
|
|
6
6
|
export * as morphoBlueHelpers from './morphoBlueHelpers';
|
|
7
7
|
export * as llamaLendHelpers from './llamaLendHelpers';
|
|
8
8
|
export * as liquityV2Helpers from './liquityV2Helpers';
|
|
9
|
-
export * as eulerV2Helpers from './eulerHelpers';
|
|
10
9
|
export * as fluidHelpers from './fluidHelpers';
|
|
11
10
|
export * as aaveV4Helpers from './aaveV4Helpers';
|
package/esm/index.d.ts
CHANGED
|
@@ -17,9 +17,8 @@ import * as helpers from './helpers';
|
|
|
17
17
|
import * as exchange from './exchange';
|
|
18
18
|
import * as morphoBlue from './morphoBlue';
|
|
19
19
|
import * as llamaLend from './llamaLend';
|
|
20
|
-
import * as eulerV2 from './eulerV2';
|
|
21
20
|
import * as portfolio from './portfolio';
|
|
22
21
|
import * as claiming from './claiming';
|
|
23
22
|
import * as savings from './savings';
|
|
24
23
|
export * from './types';
|
|
25
|
-
export { aaveV2, aaveV3, aaveV4, compoundV2, compoundV3, spark, curveUsd, liquity, liquityV2, maker, exchange, staking, moneymarket, markets, helpers, morphoBlue, llamaLend,
|
|
24
|
+
export { aaveV2, aaveV3, aaveV4, compoundV2, compoundV3, spark, curveUsd, liquity, liquityV2, maker, exchange, staking, moneymarket, markets, helpers, morphoBlue, llamaLend, fluid, portfolio, claiming, savings, };
|
package/esm/index.js
CHANGED
|
@@ -17,9 +17,8 @@ import * as helpers from './helpers';
|
|
|
17
17
|
import * as exchange from './exchange';
|
|
18
18
|
import * as morphoBlue from './morphoBlue';
|
|
19
19
|
import * as llamaLend from './llamaLend';
|
|
20
|
-
import * as eulerV2 from './eulerV2';
|
|
21
20
|
import * as portfolio from './portfolio';
|
|
22
21
|
import * as claiming from './claiming';
|
|
23
22
|
import * as savings from './savings';
|
|
24
23
|
export * from './types';
|
|
25
|
-
export { aaveV2, aaveV3, aaveV4, compoundV2, compoundV3, spark, curveUsd, liquity, liquityV2, maker, exchange, staking, moneymarket, markets, helpers, morphoBlue, llamaLend,
|
|
24
|
+
export { aaveV2, aaveV3, aaveV4, compoundV2, compoundV3, spark, curveUsd, liquity, liquityV2, maker, exchange, staking, moneymarket, markets, helpers, morphoBlue, llamaLend, fluid, portfolio, claiming, savings, };
|
package/esm/markets/index.d.ts
CHANGED
|
@@ -5,6 +5,5 @@ export { CrvUsdMarkets } from './curveUsd';
|
|
|
5
5
|
export { MorphoBlueMarkets, findMorphoBlueMarket } from './morphoBlue';
|
|
6
6
|
export { LlamaLendMarkets } from './llamaLend';
|
|
7
7
|
export { LiquityV2Markets, findLiquityV2MarketByAddress } from './liquityV2';
|
|
8
|
-
export { EulerV2Markets } from './euler';
|
|
9
8
|
export { FluidMarkets, getFluidVersionsDataForNetwork, getFluidMarketInfoById, getFTokenAddress, getFluidMarketInfoByAddress, } from './fluid';
|
|
10
9
|
export { AaveV4Spokes, findAaveV4SpokeByAddress } from './aaveV4';
|
package/esm/markets/index.js
CHANGED
|
@@ -5,6 +5,5 @@ export { CrvUsdMarkets } from './curveUsd';
|
|
|
5
5
|
export { MorphoBlueMarkets, findMorphoBlueMarket } from './morphoBlue';
|
|
6
6
|
export { LlamaLendMarkets } from './llamaLend';
|
|
7
7
|
export { LiquityV2Markets, findLiquityV2MarketByAddress } from './liquityV2';
|
|
8
|
-
export { EulerV2Markets } from './euler';
|
|
9
8
|
export { FluidMarkets, getFluidVersionsDataForNetwork, getFluidMarketInfoById, getFTokenAddress, getFluidMarketInfoByAddress, } from './fluid';
|
|
10
9
|
export { AaveV4Spokes, findAaveV4SpokeByAddress } from './aaveV4';
|
|
@@ -66,6 +66,7 @@ export declare const MORPHO_BLUE_WSTETH_USDT_860: (networkId?: NetworkNumber) =>
|
|
|
66
66
|
export declare const MORPHO_BLUE_SYRUPUSDC_RLUSD_915: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
67
67
|
export declare const MORPHO_BLUE_WEETH_USDC_770: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
68
68
|
export declare const MORPHO_BLUE_WEETH_USDC_860: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
69
|
+
export declare const MORPHO_BLUE_WEETH_USDC_860_85252BB8: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
69
70
|
export declare const MORPHO_BLUE_ETH_USDC_860_94B823E6: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
70
71
|
export declare const MORPHO_BLUE_USD3_USDC_915: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
71
72
|
export declare const MORPHO_BLUE_STUSDS_USDC_860: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
@@ -73,6 +74,7 @@ export declare const MORPHO_BLUE_CBBTC_RLUSD_860: (networkId?: NetworkNumber) =>
|
|
|
73
74
|
export declare const MORPHO_BLUE_WBTC_ETH_915: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
74
75
|
export declare const MORPHO_BLUE_CBBTC_ETH_915_12DBF493: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
75
76
|
export declare const MORPHO_BLUE_WEETH_USDT_860: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
77
|
+
export declare const MORPHO_BLUE_WEETH_USDT_860_A6A4C1F1: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
76
78
|
export declare const MORPHO_BLUE_SYRUPUSDT_USDT_915: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
77
79
|
export declare const MORPHO_BLUE_CBBTC_PYUSD_860: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
78
80
|
export declare const MORPHO_BLUE_WEETH_USDT_770: (networkId?: NetworkNumber) => MorphoBlueMarketData;
|
|
@@ -187,6 +189,7 @@ export declare const MorphoBlueMarkets: (networkId: NetworkNumber) => {
|
|
|
187
189
|
readonly morphobluesyrupusdcrlusd_915: MorphoBlueMarketData;
|
|
188
190
|
readonly morphoblueweethusdc_770: MorphoBlueMarketData;
|
|
189
191
|
readonly morphoblueweethusdc_860: MorphoBlueMarketData;
|
|
192
|
+
readonly morphoblueweethusdc_860_85252bb8: MorphoBlueMarketData;
|
|
190
193
|
readonly morphoblueethusdc_860_94b823e6: MorphoBlueMarketData;
|
|
191
194
|
readonly morphoblueusd3usdc_915: MorphoBlueMarketData;
|
|
192
195
|
readonly morphobluestusdsusdc_860: MorphoBlueMarketData;
|
|
@@ -194,6 +197,7 @@ export declare const MorphoBlueMarkets: (networkId: NetworkNumber) => {
|
|
|
194
197
|
readonly morphobluewbtceth_915: MorphoBlueMarketData;
|
|
195
198
|
readonly morphobluecbbtceth_915_12dbf493: MorphoBlueMarketData;
|
|
196
199
|
readonly morphoblueweethusdt_860: MorphoBlueMarketData;
|
|
200
|
+
readonly morphoblueweethusdt_860_a6a4c1f1: MorphoBlueMarketData;
|
|
197
201
|
readonly morphobluesyrupusdtusdt_915: MorphoBlueMarketData;
|
|
198
202
|
readonly morphobluecbbtcpyusd_860: MorphoBlueMarketData;
|
|
199
203
|
readonly morphoblueweethusdt_770: MorphoBlueMarketData;
|
|
@@ -1006,6 +1006,21 @@ export const MORPHO_BLUE_WEETH_USDC_860 = (networkId = NetworkNumber.Eth) => ({
|
|
|
1006
1006
|
marketId: '0x61765602144e91e5ac9f9e98b8584eae308f9951596fd7f5e0f59f21cd2bf664',
|
|
1007
1007
|
protocolName: 'morpho-blue',
|
|
1008
1008
|
});
|
|
1009
|
+
export const MORPHO_BLUE_WEETH_USDC_860_85252BB8 = (networkId = NetworkNumber.Eth) => ({
|
|
1010
|
+
chainIds: [NetworkNumber.Eth],
|
|
1011
|
+
label: 'Morpho',
|
|
1012
|
+
shortLabel: 'weETH/USDC',
|
|
1013
|
+
value: MorphoBlueVersions.MorphoBlueWeEthUSDC_860_85252bb8,
|
|
1014
|
+
url: 'weethusdc-85252bb8',
|
|
1015
|
+
loanToken: '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48',
|
|
1016
|
+
collateralToken: '0xCd5fE23C85820F7B72D0926FC9b05b43E359b7ee',
|
|
1017
|
+
oracle: '0xa3A7A3ceFee206f9d7Fe00eC3C83324ED4228411',
|
|
1018
|
+
oracleType: MorphoBlueOracleType.MARKET_RATE,
|
|
1019
|
+
irm: '0x870aC11D48B15DB9a138Cf899d20F13F79Ba00BC',
|
|
1020
|
+
lltv: 0.86,
|
|
1021
|
+
marketId: '0x85252bb8485c99bba46fe149c7dd2aad83672640f53c630890673cf1848ba16e',
|
|
1022
|
+
protocolName: 'morpho-blue',
|
|
1023
|
+
});
|
|
1009
1024
|
export const MORPHO_BLUE_ETH_USDC_860_94B823E6 = (networkId = NetworkNumber.Eth) => ({
|
|
1010
1025
|
chainIds: [NetworkNumber.Eth],
|
|
1011
1026
|
label: 'Morpho',
|
|
@@ -1111,6 +1126,21 @@ export const MORPHO_BLUE_WEETH_USDT_860 = (networkId = NetworkNumber.Eth) => ({
|
|
|
1111
1126
|
marketId: '0xc2c53d2b868e163da71de14a5113cc2743fc9b5ad7488334720ed2846566a8f6',
|
|
1112
1127
|
protocolName: 'morpho-blue',
|
|
1113
1128
|
});
|
|
1129
|
+
export const MORPHO_BLUE_WEETH_USDT_860_A6A4C1F1 = (networkId = NetworkNumber.Eth) => ({
|
|
1130
|
+
chainIds: [NetworkNumber.Eth],
|
|
1131
|
+
label: 'Morpho',
|
|
1132
|
+
shortLabel: 'weETH/USDT',
|
|
1133
|
+
value: MorphoBlueVersions.MorphoBlueWeEthUSDT_860_a6a4c1f1,
|
|
1134
|
+
url: 'weethusdt-a6a4c1f1',
|
|
1135
|
+
loanToken: '0xdAC17F958D2ee523a2206206994597C13D831ec7',
|
|
1136
|
+
collateralToken: '0xCd5fE23C85820F7B72D0926FC9b05b43E359b7ee',
|
|
1137
|
+
oracle: '0xa3A7A3ceFee206f9d7Fe00eC3C83324ED4228411',
|
|
1138
|
+
oracleType: MorphoBlueOracleType.MARKET_RATE,
|
|
1139
|
+
irm: '0x870aC11D48B15DB9a138Cf899d20F13F79Ba00BC',
|
|
1140
|
+
lltv: 0.86,
|
|
1141
|
+
marketId: '0xa6a4c1f15490a1ff39d9de3a366b408dd5647a436d8b179726d3e0562aff1292',
|
|
1142
|
+
protocolName: 'morpho-blue',
|
|
1143
|
+
});
|
|
1114
1144
|
export const MORPHO_BLUE_SYRUPUSDT_USDT_915 = (networkId = NetworkNumber.Eth) => ({
|
|
1115
1145
|
chainIds: [NetworkNumber.Eth],
|
|
1116
1146
|
label: 'Morpho',
|
|
@@ -1872,6 +1902,7 @@ export const MorphoBlueMarkets = (networkId) => ({
|
|
|
1872
1902
|
[MorphoBlueVersions.MorphoBlueSyrupUSDCRLUSD_915]: MORPHO_BLUE_SYRUPUSDC_RLUSD_915(networkId),
|
|
1873
1903
|
[MorphoBlueVersions.MorphoBlueWeEthUSDC_770]: MORPHO_BLUE_WEETH_USDC_770(networkId),
|
|
1874
1904
|
[MorphoBlueVersions.MorphoBlueWeEthUSDC_860]: MORPHO_BLUE_WEETH_USDC_860(networkId),
|
|
1905
|
+
[MorphoBlueVersions.MorphoBlueWeEthUSDC_860_85252bb8]: MORPHO_BLUE_WEETH_USDC_860_85252BB8(networkId),
|
|
1875
1906
|
[MorphoBlueVersions.MorphoBlueEthUSDC_860_94b823e6]: MORPHO_BLUE_ETH_USDC_860_94B823E6(networkId),
|
|
1876
1907
|
[MorphoBlueVersions.MorphoBlueUSD3USDC_915]: MORPHO_BLUE_USD3_USDC_915(networkId),
|
|
1877
1908
|
[MorphoBlueVersions.MorphoBlueStUSDSUSDC_860]: MORPHO_BLUE_STUSDS_USDC_860(networkId),
|
|
@@ -1879,6 +1910,7 @@ export const MorphoBlueMarkets = (networkId) => ({
|
|
|
1879
1910
|
[MorphoBlueVersions.MorphoBlueWBTCEth_915]: MORPHO_BLUE_WBTC_ETH_915(networkId),
|
|
1880
1911
|
[MorphoBlueVersions.MorphoBlueCbBTCEth_915_12dbf493]: MORPHO_BLUE_CBBTC_ETH_915_12DBF493(networkId),
|
|
1881
1912
|
[MorphoBlueVersions.MorphoBlueWeEthUSDT_860]: MORPHO_BLUE_WEETH_USDT_860(networkId),
|
|
1913
|
+
[MorphoBlueVersions.MorphoBlueWeEthUSDT_860_a6a4c1f1]: MORPHO_BLUE_WEETH_USDT_860_A6A4C1F1(networkId),
|
|
1882
1914
|
[MorphoBlueVersions.MorphoBlueSyrupUSDTUSDT_915]: MORPHO_BLUE_SYRUPUSDT_USDT_915(networkId),
|
|
1883
1915
|
[MorphoBlueVersions.MorphoBlueCbBTCPYUSD_860]: MORPHO_BLUE_CBBTC_PYUSD_860(networkId),
|
|
1884
1916
|
[MorphoBlueVersions.MorphoBlueWeEthUSDT_770]: MORPHO_BLUE_WEETH_USDT_770(networkId),
|
|
@@ -7,7 +7,7 @@ import { EthAddress, EthereumProvider, NetworkNumber } from '../types/common';
|
|
|
7
7
|
* Uses one shared, multicall-batched viem client (same pattern as getPortfolioData) so all
|
|
8
8
|
* per-market reads collapse into a handful of RPC round trips.
|
|
9
9
|
*
|
|
10
|
-
* Not covered: Maker, Liquity, Liquity V2, Fluid
|
|
10
|
+
* Not covered: Maker, Liquity, Liquity V2, Fluid — these already expose cheap,
|
|
11
11
|
* user-scoped discovery entry points elsewhere in the SDK (e.g. _getUserCdps, _getUserPositionsPortfolio).
|
|
12
12
|
*/
|
|
13
13
|
export declare function getUserPositionsExistence(provider: EthereumProvider, network: NetworkNumber, address: EthAddress, isSim?: boolean): Promise<Record<string, boolean>>;
|
|
@@ -28,7 +28,7 @@ const hasAnyBalance = (balances) => ([balances.collateral, balances.debt].some((
|
|
|
28
28
|
* Uses one shared, multicall-batched viem client (same pattern as getPortfolioData) so all
|
|
29
29
|
* per-market reads collapse into a handful of RPC round trips.
|
|
30
30
|
*
|
|
31
|
-
* Not covered: Maker, Liquity, Liquity V2, Fluid
|
|
31
|
+
* Not covered: Maker, Liquity, Liquity V2, Fluid — these already expose cheap,
|
|
32
32
|
* user-scoped discovery entry points elsewhere in the SDK (e.g. _getUserCdps, _getUserPositionsPortfolio).
|
|
33
33
|
*/
|
|
34
34
|
export function getUserPositionsExistence(provider_1, network_1, address_1) {
|
package/esm/portfolio/index.js
CHANGED
|
@@ -9,12 +9,11 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
9
9
|
};
|
|
10
10
|
import Dec from 'decimal.js';
|
|
11
11
|
import { NetworkNumber } from '../types/common';
|
|
12
|
-
import { AaveMarkets, AaveV4Spokes, CompoundMarkets, CrvUsdMarkets,
|
|
12
|
+
import { AaveMarkets, AaveV4Spokes, CompoundMarkets, CrvUsdMarkets, LiquityV2Markets, LlamaLendMarkets, MorphoBlueMarkets, SparkMarkets, } from '../markets';
|
|
13
13
|
import { _getMorphoBlueAccountData, _getMorphoBluePortfolioMarketData, getMorphoEarn } from '../morphoBlue';
|
|
14
14
|
import { AaveVersions, CompoundVersions, } from '../types';
|
|
15
15
|
import { _getCompoundV3AccountData, _getCompoundV3MarketsData } from '../compoundV3';
|
|
16
16
|
import { _getSparkAccountData, _getSparkMarketsData } from '../spark';
|
|
17
|
-
import { _getEulerV2AccountData, _getEulerV2MarketsData } from '../eulerV2';
|
|
18
17
|
import { _getCurveUsdGlobalData, _getCurveUsdUserData } from '../curveUsd';
|
|
19
18
|
import { _getLlamaLendGlobalData, _getLlamaLendUserData } from '../llamaLend';
|
|
20
19
|
import { _getAaveV3AccountData, _getAaveV3MarketData, getStakeAaveData } from '../aaveV3';
|
|
@@ -26,7 +25,6 @@ import { getViemProvider } from '../services/viem';
|
|
|
26
25
|
import { _getLiquityTroveInfo, getLiquityStakingData } from '../liquity';
|
|
27
26
|
import { _getLiquityV2MarketData, getLiquitySAndYBold, getLiquityV2Staking } from '../liquityV2';
|
|
28
27
|
import { _getAllUserEarnPositionsWithFTokens, _getUserPositionsPortfolio } from '../fluid';
|
|
29
|
-
import { getEulerV2SubAccounts } from '../helpers/eulerHelpers';
|
|
30
28
|
import { getUmbrellaData } from '../umbrella';
|
|
31
29
|
import { getMeritUnclaimedRewards, getUnclaimedRewardsForAllMarkets } from '../claiming/aaveV3';
|
|
32
30
|
import { getCompoundV3Rewards } from '../claiming/compV3';
|
|
@@ -42,7 +40,6 @@ export function getPortfolioData(provider_1, network_1, defaultProvider_1, addre
|
|
|
42
40
|
const morphoMarkets = Object.values(MorphoBlueMarkets(network)).filter((market) => market.chainIds.includes(network));
|
|
43
41
|
const compoundV3Markets = Object.values(CompoundMarkets(network)).filter((market) => market.chainIds.includes(network) && market.value !== CompoundVersions.CompoundV2);
|
|
44
42
|
const sparkMarkets = Object.values(SparkMarkets(network)).filter((market) => market.chainIds.includes(network));
|
|
45
|
-
const eulerV2Markets = Object.values(EulerV2Markets(network)).filter((market) => market.chainIds.includes(network));
|
|
46
43
|
const aaveV3Markets = [AaveVersions.AaveV3, AaveVersions.AaveV3Lido, AaveVersions.AaveV3Etherfi].map((version) => AaveMarkets(network)[version]).filter((market) => market.chainIds.includes(network));
|
|
47
44
|
const aaveV2Markets = [AaveVersions.AaveV2].map((version) => AaveMarkets(network)[version]).filter((market) => market.chainIds.includes(network));
|
|
48
45
|
const compoundV2Markets = [CompoundVersions.CompoundV2].map((version) => CompoundMarkets(network)[version]).filter((market) => market.chainIds.includes(network));
|
|
@@ -57,7 +54,6 @@ export function getPortfolioData(provider_1, network_1, defaultProvider_1, addre
|
|
|
57
54
|
const morphoMarketsData = {};
|
|
58
55
|
const compoundV3MarketsData = {};
|
|
59
56
|
const sparkMarketsData = {};
|
|
60
|
-
const eulerV2MarketsData = {};
|
|
61
57
|
const aaveV3MarketsData = {};
|
|
62
58
|
const makerCdps = {};
|
|
63
59
|
const aaveV2MarketsData = {};
|
|
@@ -70,7 +66,6 @@ export function getPortfolioData(provider_1, network_1, defaultProvider_1, addre
|
|
|
70
66
|
morphoMarketsData,
|
|
71
67
|
compoundV3MarketsData,
|
|
72
68
|
sparkMarketsData,
|
|
73
|
-
eulerV2MarketsData,
|
|
74
69
|
aaveV3MarketsData,
|
|
75
70
|
aaveV2MarketsData,
|
|
76
71
|
compoundV2MarketsData,
|
|
@@ -90,7 +85,6 @@ export function getPortfolioData(provider_1, network_1, defaultProvider_1, addre
|
|
|
90
85
|
morphoBlue: {},
|
|
91
86
|
compoundV3: {},
|
|
92
87
|
spark: {},
|
|
93
|
-
eulerV2: {},
|
|
94
88
|
maker: {},
|
|
95
89
|
aaveV2: {},
|
|
96
90
|
compoundV2: {},
|
|
@@ -143,10 +137,6 @@ export function getPortfolioData(provider_1, network_1, defaultProvider_1, addre
|
|
|
143
137
|
const marketData = yield _getSparkMarketsData(client, network, market);
|
|
144
138
|
sparkMarketsData[market.value] = marketData;
|
|
145
139
|
})),
|
|
146
|
-
...eulerV2Markets.map((market) => __awaiter(this, void 0, void 0, function* () {
|
|
147
|
-
const marketData = yield _getEulerV2MarketsData(client, network, market);
|
|
148
|
-
eulerV2MarketsData[market.value] = marketData;
|
|
149
|
-
})),
|
|
150
140
|
...aaveV3Markets.map((market) => __awaiter(this, void 0, void 0, function* () {
|
|
151
141
|
const marketData = yield _getAaveV3MarketData(client, network, market);
|
|
152
142
|
aaveV3MarketsData[market.value] = marketData;
|
|
@@ -495,28 +485,6 @@ export function getPortfolioData(provider_1, network_1, defaultProvider_1, addre
|
|
|
495
485
|
positions[address.toLowerCase()].spark[market.value] = { error: `Error fetching Spark account data for address ${address} on market ${market.value}`, data: null };
|
|
496
486
|
}
|
|
497
487
|
}))).flat(),
|
|
498
|
-
...eulerV2Markets.map((market) => addresses.map((address) => {
|
|
499
|
-
const eulerV2SubAccounts = getEulerV2SubAccounts(address);
|
|
500
|
-
const eulerV2Addresses = [address, ...eulerV2SubAccounts];
|
|
501
|
-
return Promise.all(eulerV2Addresses.map((eulerAddress) => __awaiter(this, void 0, void 0, function* () {
|
|
502
|
-
try {
|
|
503
|
-
const accData = yield _getEulerV2AccountData(client, network, eulerAddress, eulerAddress, Object.assign({ selectedMarket: market }, eulerV2MarketsData[market.value]));
|
|
504
|
-
if (new Dec(accData.suppliedUsd).gt(0) || new Dec(accData.borrowedUsd).gt(0)) {
|
|
505
|
-
if (!positions[address.toLowerCase()].eulerV2[market.value]) {
|
|
506
|
-
positions[address.toLowerCase()].eulerV2[market.value] = {};
|
|
507
|
-
}
|
|
508
|
-
positions[address.toLowerCase()].eulerV2[market.value][eulerAddress.toLowerCase()] = { error: '', data: accData };
|
|
509
|
-
}
|
|
510
|
-
}
|
|
511
|
-
catch (error) {
|
|
512
|
-
console.error(`Error fetching EulerV2 account data for address ${eulerAddress} on market ${market.value}:`, error);
|
|
513
|
-
if (!positions[address.toLowerCase()].eulerV2[market.value]) {
|
|
514
|
-
positions[address.toLowerCase()].eulerV2[market.value] = {};
|
|
515
|
-
}
|
|
516
|
-
positions[address.toLowerCase()].eulerV2[market.value][eulerAddress.toLowerCase()] = { error: `Error fetching EulerV2 account data for address ${eulerAddress} on market ${market.value}`, data: null };
|
|
517
|
-
}
|
|
518
|
-
})));
|
|
519
|
-
}).flat()).flat(),
|
|
520
488
|
...addresses.map((address) => __awaiter(this, void 0, void 0, function* () {
|
|
521
489
|
var _a;
|
|
522
490
|
return (_a = makerCdps[address.toLowerCase()]) === null || _a === void 0 ? void 0 : _a.map((cdpInfo) => __awaiter(this, void 0, void 0, function* () {
|
|
@@ -8,9 +8,9 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
8
8
|
});
|
|
9
9
|
};
|
|
10
10
|
import Dec from 'decimal.js';
|
|
11
|
-
import { request as graphqlRequest } from 'graphql-request';
|
|
12
11
|
import { assetAmountInEth } from '@defisaver/tokens';
|
|
13
12
|
import * as morphoVaultsOptions from './options';
|
|
13
|
+
import { LONGER_TIMEOUT } from '../../services/utils';
|
|
14
14
|
import { getViemProvider } from '../../services/viem';
|
|
15
15
|
import { getMorphoVaultContractViem } from '../../contracts';
|
|
16
16
|
export { morphoVaultsOptions, };
|
|
@@ -30,6 +30,23 @@ const vaultDataQuery = `
|
|
|
30
30
|
}
|
|
31
31
|
}`;
|
|
32
32
|
const MORPHO_BLUE_API = 'https://api.morpho.org/graphql';
|
|
33
|
+
const fetchVaultData = (address, chainId) => __awaiter(void 0, void 0, void 0, function* () {
|
|
34
|
+
const res = yield fetch(MORPHO_BLUE_API, {
|
|
35
|
+
method: 'POST',
|
|
36
|
+
headers: { 'Content-Type': 'application/json' },
|
|
37
|
+
body: JSON.stringify({
|
|
38
|
+
query: vaultDataQuery,
|
|
39
|
+
variables: { address, chainId },
|
|
40
|
+
}),
|
|
41
|
+
signal: AbortSignal.timeout(LONGER_TIMEOUT),
|
|
42
|
+
});
|
|
43
|
+
if (!res.ok)
|
|
44
|
+
throw new Error(`Morpho vault request failed: ${res.status}`);
|
|
45
|
+
const body = yield res.json();
|
|
46
|
+
if (!(body === null || body === void 0 ? void 0 : body.data))
|
|
47
|
+
throw new Error('Morpho vault response missing data');
|
|
48
|
+
return body.data;
|
|
49
|
+
});
|
|
33
50
|
export const _getMorphoVaultData = (provider, network, morphoVault, accounts) => __awaiter(void 0, void 0, void 0, function* () {
|
|
34
51
|
const morphoVaultContract = getMorphoVaultContractViem(provider, morphoVault.address);
|
|
35
52
|
const shares = {};
|
|
@@ -38,7 +55,7 @@ export const _getMorphoVaultData = (provider, network, morphoVault, accounts) =>
|
|
|
38
55
|
morphoVaultContract.read.totalSupply(),
|
|
39
56
|
morphoVaultContract.read.decimals(),
|
|
40
57
|
morphoVaultContract.read.DECIMALS_OFFSET(),
|
|
41
|
-
|
|
58
|
+
fetchVaultData(morphoVault.address, network),
|
|
42
59
|
...accounts.map((account) => __awaiter(void 0, void 0, void 0, function* () {
|
|
43
60
|
const share = yield morphoVaultContract.read.balanceOf([account]);
|
|
44
61
|
shares[account] = share;
|