@defisaver/positions-sdk 2.1.119 → 2.1.120

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.
@@ -19,6 +19,8 @@ import {
19
19
  import { getChainlinkAssetAddress } from '../services/priceService';
20
20
  import { getViemProvider, setViemBlockNumber } from '../services/viem';
21
21
 
22
+ const HARDCODED_USD_STABLE_PRICE = '100000000'; // $1 with 8 decimals
23
+
22
24
  export async function _getMorphoBlueMarketData(provider: Client, network: NetworkNumber, selectedMarket: MorphoBlueMarketData): Promise<MorphoBlueMarketInfo> {
23
25
  const {
24
26
  loanToken, collateralToken, oracle, irm, lltv, oracleType,
@@ -34,12 +36,12 @@ export async function _getMorphoBlueMarketData(provider: Client, network: Networ
34
36
 
35
37
  let marketInfo;
36
38
  let loanTokenPrice;
37
- const isTokenUSDA = loanTokenInfo.symbol === 'USDA';
39
+ const isHardcodedUsdStable = ['USDA', 'RLUSD'].includes(loanTokenInfo.symbol);
38
40
  const isMainnet = isMainnetNetwork(network);
39
41
  if (isMainnet) {
40
42
  const feedRegistryContract = FeedRegistryContractViem(provider, NetworkNumber.Eth);
41
43
  const [_loanTokenPrice, _marketInfo] = await Promise.all([
42
- isTokenUSDA ? Promise.resolve('100000000') : feedRegistryContract.read.latestAnswer([loanTokenFeedAddress, USD_QUOTE]),
44
+ isHardcodedUsdStable ? Promise.resolve(HARDCODED_USD_STABLE_PRICE) : feedRegistryContract.read.latestAnswer([loanTokenFeedAddress, USD_QUOTE]),
43
45
  morphoBlueViewContract.read.getMarketInfoNotTuple([loanToken, collateralToken, oracle, irm, BigInt(lltvInWei)]),
44
46
  ]);
45
47
  marketInfo = _marketInfo;
@@ -49,7 +51,7 @@ export async function _getMorphoBlueMarketData(provider: Client, network: Networ
49
51
  const feedRegistryContract = DFSFeedRegistryContractViem(provider, network);
50
52
 
51
53
  const [loanTokenPriceRound, _marketInfo] = await Promise.all([
52
- isTokenUSDA ? Promise.resolve([0, '100000000']) // Normalize to match the expected object structure
54
+ isHardcodedUsdStable ? Promise.resolve([0, HARDCODED_USD_STABLE_PRICE]) // Normalize to match the expected object structure
53
55
  : feedRegistryContract.read.latestRoundData([loanTokenFeedAddress, USD_QUOTE]),
54
56
  morphoBlueViewContract.read.getMarketInfoNotTuple([loanToken, collateralToken, oracle, irm, BigInt(lltvInWei)]),
55
57
  ]);
@@ -62,6 +62,36 @@ export enum MorphoBlueVersions {
62
62
 
63
63
  MorphoBlueMORPHOUSDC_625 = 'morphobluemorphousdc_625',
64
64
 
65
+ MorphoBluePRIMEPYUSD_860 = 'morphoblueprimepyusd_860', // PRIME/PYUSD 0.86
66
+ MorphoBlueKBTCRLUSD_860 = 'morphobluekbtcrlusd_860', // kBTC/RLUSD 0.86
67
+ MorphoBlueKBTCPYUSD_860 = 'morphobluekbtcpyusd_860', // kBTC/PYUSD 0.86
68
+ MorphoBlueWstEthUSDC_860 = 'morphobluewstethusdc_860', // wstETH/USDC 0.86
69
+ MorphoBlueSyrupUSDCPYUSD_915 = 'morphobluesyrupusdcpyusd_915', // syrupUSDC/PYUSD 0.915
70
+ MorphoBlueWBTCUSDC_860 = 'morphobluewbtcusdc_860', // WBTC/USDC 0.86
71
+ MorphoBlueCbBTCUSDC_860_bc99de6a = 'morphobluecbbtcusdc_860_bc99de6a', // cbBTC/USDC 0.86
72
+ MorphoBlueWeEthRLUSD_860 = 'morphoblueweethrlusd_860', // weETH/RLUSD 0.86
73
+ MorphoBlueWeEthPYUSD_860 = 'morphoblueweethpyusd_860', // weETH/PYUSD 0.86
74
+ MorphoBlueCbBTCUSDT_860 = 'morphobluecbbtcusdt_860', // cbBTC/USDT 0.86
75
+ MorphoBlueLBTCPYUSD_860 = 'morphobluelbtcpyusd_860', // LBTC/PYUSD 0.86
76
+ MorphoBlueSUSDePYUSD_915 = 'morphobluesusdepyusd_915', // sUSDe/PYUSD 0.915
77
+ MorphoBlueWBTCUSDT_860 = 'morphobluewbtcusdt_860', // WBTC/USDT 0.86
78
+ MorphoBlueWstEthUSDT_860 = 'morphobluewstethusdt_860', // wstETH/USDT 0.86
79
+ MorphoBlueSyrupUSDCRLUSD_915 = 'morphobluesyrupusdcrlusd_915', // syrupUSDC/RLUSD 0.915
80
+ MorphoBlueWeEthUSDC_770 = 'morphoblueweethusdc_770', // weETH/USDC 0.77
81
+ MorphoBlueEthUSDC_860_94b823e6 = 'morphoblueethusdc_860_94b823e6', // ETH/USDC 0.86
82
+ MorphoBlueUSD3USDC_915 = 'morphoblueusd3usdc_915', // USD3/USDC 0.915
83
+ MorphoBlueStUSDSUSDC_860 = 'morphobluestusdsusdc_860', // stUSDS/USDC 0.86
84
+ MorphoBlueCbBTCRLUSD_860 = 'morphobluecbbtcrlusd_860', // cbBTC/RLUSD 0.86
85
+ MorphoBlueWBTCEth_915 = 'morphobluewbtceth_915', // WBTC/ETH 0.915
86
+ MorphoBlueCbBTCEth_915_12dbf493 = 'morphobluecbbtceth_915_12dbf493', // cbBTC/ETH 0.915
87
+ MorphoBlueWeEthUSDT_860 = 'morphoblueweethusdt_860', // weETH/USDT 0.86
88
+ MorphoBlueSyrupUSDTUSDT_915 = 'morphobluesyrupusdtusdt_915', // syrupUSDT/USDT 0.915
89
+ MorphoBlueCbBTCPYUSD_860 = 'morphobluecbbtcpyusd_860', // cbBTC/PYUSD 0.86
90
+ MorphoBlueWeEthUSDT_770 = 'morphoblueweethusdt_770', // weETH/USDT 0.77
91
+ MorphoBlueEthUSDT_860 = 'morphoblueethusdt_860', // ETH/USDT 0.86
92
+ MorphoBlueWBTCRLUSD_860 = 'morphobluewbtcrlusd_860', // WBTC/RLUSD 0.86
93
+ MorphoBlueWBTCPYUSD_860 = 'morphobluewbtcpyusd_860', // WBTC/PYUSD 0.86
94
+
65
95
  // BASE
66
96
  MorphoBlueCbEthUSDC_860_Base = 'morphobluecbethusdc_860_base',
67
97
  MorphoBlueCbEthUSDC_860_Base_1c21c59d = 'morphobluecbethusdc_860_base_1c21c59d',
@@ -89,6 +119,9 @@ export enum MorphoBlueVersions {
89
119
  MorphoBlueEzEthUsdc_777_Base = 'morphoblueezethusdc_777_base', // ezETH/USDC
90
120
  MorphoBlueEzEthEth_777_Base = 'morphoblueezetheth_777_base', // ezETH/ETH
91
121
  MorphoBlueBsdEthEth_860_Base = 'morphobluebsdetheth_860_base', // bsdETH/ETH
122
+ MorphoBlueUSDeUSDC_915_Base = 'morphoblueusdeusdc_915_base', // USDe/USDC 0.915
123
+ MorphoBlueCbEthUSDC_770_Base = 'morphobluecbethusdc_770_base', // cbETH/USDC 0.77
124
+ MorphoBlueCbXRPUSDC_625_Base = 'morphobluecbxrpusdc_625_base', // cbXRP/USDC 0.625
92
125
 
93
126
  // ARBITRUM
94
127
  MorphoBlueSyrupUSDCUSDC_915_Arb = 'morphobluesyrupusdcusdc_915_arb', // syrupUSDC/USDC
@@ -96,6 +129,12 @@ export enum MorphoBlueVersions {
96
129
  MorphoBlueWstEthUSDC_860_Arb = 'morphobluewstethusdc_860_arb', // wstETH/USDC
97
130
  MorphoBlueEthUSDC_860_Arb = 'morphoblueethusdc_860_arb', // ETH/USDC
98
131
  MorphoBluesUSDSUSDC_945_Arb = 'morphobluesusdsusdc_945_arb', // sUSDS/USDC
132
+ MorphoBlueWeEthUSDC_860_Arb = 'morphoblueweethusdc_860_arb', // weETH/USDC 0.86
133
+ MorphoBluesUSDSUSDT0_945_Arb = 'morphobluesusdsusdt0_945_arb', // sUSDS/USDT0 0.945
134
+ MorphoBlueWeEthUSDT0_860_Arb = 'morphoblueweethusdt0_860_arb', // weETH/USDT0 0.86
135
+ MorphoBlueEthUSDT0_860_Arb = 'morphoblueethusdt0_860_arb', // ETH/USDT0 0.86
136
+ MorphoBlueWstEthUSDT0_860_Arb = 'morphobluewstethusdt0_860_arb', // wstETH/USDT0 0.86
137
+ MorphoBlueWBTCUSDT0_860_Arb = 'morphobluewbtcusdt0_860_arb', // WBTC/USDT0 0.86
99
138
  }
100
139
 
101
140
  export enum MorphoBlueOracleType {