@defisaver/positions-sdk 2.1.118 → 2.1.119-dev-13004-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.
@@ -17,6 +17,7 @@ import { isMainnetNetwork, wethToEth } from '../services/utils';
17
17
  import { getBorrowRate, getMorphoBlueAggregatedPositionData, getRewardsForMarket, getSupplyRate, } from '../helpers/morphoBlueHelpers';
18
18
  import { getChainlinkAssetAddress } from '../services/priceService';
19
19
  import { getViemProvider, setViemBlockNumber } from '../services/viem';
20
+ const HARDCODED_USD_STABLE_PRICE = '100000000'; // $1 with 8 decimals
20
21
  export function _getMorphoBlueMarketData(provider, network, selectedMarket) {
21
22
  return __awaiter(this, void 0, void 0, function* () {
22
23
  const { loanToken, collateralToken, oracle, irm, lltv, oracleType, } = selectedMarket;
@@ -27,12 +28,12 @@ export function _getMorphoBlueMarketData(provider, network, selectedMarket) {
27
28
  const morphoBlueViewContract = MorphoBlueViewContractViem(provider, network);
28
29
  let marketInfo;
29
30
  let loanTokenPrice;
30
- const isTokenUSDA = loanTokenInfo.symbol === 'USDA';
31
+ const isHardcodedUsdStable = ['USDA', 'RLUSD'].includes(loanTokenInfo.symbol);
31
32
  const isMainnet = isMainnetNetwork(network);
32
33
  if (isMainnet) {
33
34
  const feedRegistryContract = FeedRegistryContractViem(provider, NetworkNumber.Eth);
34
35
  const [_loanTokenPrice, _marketInfo] = yield Promise.all([
35
- isTokenUSDA ? Promise.resolve('100000000') : feedRegistryContract.read.latestAnswer([loanTokenFeedAddress, USD_QUOTE]),
36
+ isHardcodedUsdStable ? Promise.resolve(HARDCODED_USD_STABLE_PRICE) : feedRegistryContract.read.latestAnswer([loanTokenFeedAddress, USD_QUOTE]),
36
37
  morphoBlueViewContract.read.getMarketInfoNotTuple([loanToken, collateralToken, oracle, irm, BigInt(lltvInWei)]),
37
38
  ]);
38
39
  marketInfo = _marketInfo;
@@ -42,7 +43,7 @@ export function _getMorphoBlueMarketData(provider, network, selectedMarket) {
42
43
  // Currently only base network is supported
43
44
  const feedRegistryContract = DFSFeedRegistryContractViem(provider, network);
44
45
  const [loanTokenPriceRound, _marketInfo] = yield Promise.all([
45
- isTokenUSDA ? Promise.resolve([0, '100000000']) // Normalize to match the expected object structure
46
+ isHardcodedUsdStable ? Promise.resolve([0, HARDCODED_USD_STABLE_PRICE]) // Normalize to match the expected object structure
46
47
  : feedRegistryContract.read.latestRoundData([loanTokenFeedAddress, USD_QUOTE]),
47
48
  morphoBlueViewContract.read.getMarketInfoNotTuple([loanToken, collateralToken, oracle, irm, BigInt(lltvInWei)]),
48
49
  ]);
@@ -50,6 +50,35 @@ export declare enum MorphoBlueVersions {
50
50
  MorphoBlueUSDeDAI_945 = "morphoblueusdedai_945",
51
51
  MorphoBlueUSDeDAI_777 = "morphoblueusdedai_777",
52
52
  MorphoBlueMORPHOUSDC_625 = "morphobluemorphousdc_625",
53
+ MorphoBluePRIMEPYUSD_860 = "morphoblueprimepyusd_860",// PRIME/PYUSD 0.86
54
+ MorphoBlueKBTCRLUSD_860 = "morphobluekbtcrlusd_860",// kBTC/RLUSD 0.86
55
+ MorphoBlueKBTCPYUSD_860 = "morphobluekbtcpyusd_860",// kBTC/PYUSD 0.86
56
+ MorphoBlueWstEthUSDC_860 = "morphobluewstethusdc_860",// wstETH/USDC 0.86
57
+ MorphoBlueSyrupUSDCPYUSD_915 = "morphobluesyrupusdcpyusd_915",// syrupUSDC/PYUSD 0.915
58
+ MorphoBlueWBTCUSDC_860 = "morphobluewbtcusdc_860",// WBTC/USDC 0.86
59
+ MorphoBlueCbBTCUSDC_860_bc99de6a = "morphobluecbbtcusdc_860_bc99de6a",// cbBTC/USDC 0.86
60
+ MorphoBlueWeEthRLUSD_860 = "morphoblueweethrlusd_860",// weETH/RLUSD 0.86
61
+ MorphoBlueWeEthPYUSD_860 = "morphoblueweethpyusd_860",// weETH/PYUSD 0.86
62
+ MorphoBlueCbBTCUSDT_860 = "morphobluecbbtcusdt_860",// cbBTC/USDT 0.86
63
+ MorphoBlueLBTCPYUSD_860 = "morphobluelbtcpyusd_860",// LBTC/PYUSD 0.86
64
+ MorphoBlueSUSDePYUSD_915 = "morphobluesusdepyusd_915",// sUSDe/PYUSD 0.915
65
+ MorphoBlueWBTCUSDT_860 = "morphobluewbtcusdt_860",// WBTC/USDT 0.86
66
+ MorphoBlueWstEthUSDT_860 = "morphobluewstethusdt_860",// wstETH/USDT 0.86
67
+ MorphoBlueSyrupUSDCRLUSD_915 = "morphobluesyrupusdcrlusd_915",// syrupUSDC/RLUSD 0.915
68
+ MorphoBlueWeEthUSDC_770 = "morphoblueweethusdc_770",// weETH/USDC 0.77
69
+ MorphoBlueEthUSDC_860_94b823e6 = "morphoblueethusdc_860_94b823e6",// ETH/USDC 0.86
70
+ MorphoBlueUSD3USDC_915 = "morphoblueusd3usdc_915",// USD3/USDC 0.915
71
+ MorphoBlueStUSDSUSDC_860 = "morphobluestusdsusdc_860",// stUSDS/USDC 0.86
72
+ MorphoBlueCbBTCRLUSD_860 = "morphobluecbbtcrlusd_860",// cbBTC/RLUSD 0.86
73
+ MorphoBlueWBTCEth_915 = "morphobluewbtceth_915",// WBTC/ETH 0.915
74
+ MorphoBlueCbBTCEth_915_12dbf493 = "morphobluecbbtceth_915_12dbf493",// cbBTC/ETH 0.915
75
+ MorphoBlueWeEthUSDT_860 = "morphoblueweethusdt_860",// weETH/USDT 0.86
76
+ MorphoBlueSyrupUSDTUSDT_915 = "morphobluesyrupusdtusdt_915",// syrupUSDT/USDT 0.915
77
+ MorphoBlueCbBTCPYUSD_860 = "morphobluecbbtcpyusd_860",// cbBTC/PYUSD 0.86
78
+ MorphoBlueWeEthUSDT_770 = "morphoblueweethusdt_770",// weETH/USDT 0.77
79
+ MorphoBlueEthUSDT_860 = "morphoblueethusdt_860",// ETH/USDT 0.86
80
+ MorphoBlueWBTCRLUSD_860 = "morphobluewbtcrlusd_860",// WBTC/RLUSD 0.86
81
+ MorphoBlueWBTCPYUSD_860 = "morphobluewbtcpyusd_860",// WBTC/PYUSD 0.86
53
82
  MorphoBlueCbEthUSDC_860_Base = "morphobluecbethusdc_860_base",
54
83
  MorphoBlueCbEthUSDC_860_Base_1c21c59d = "morphobluecbethusdc_860_base_1c21c59d",
55
84
  MorphoBlueWstEthUSDC_860_Base = "morphobluewstethusdc_860_base",
@@ -76,11 +105,20 @@ export declare enum MorphoBlueVersions {
76
105
  MorphoBlueEzEthUsdc_777_Base = "morphoblueezethusdc_777_base",// ezETH/USDC
77
106
  MorphoBlueEzEthEth_777_Base = "morphoblueezetheth_777_base",// ezETH/ETH
78
107
  MorphoBlueBsdEthEth_860_Base = "morphobluebsdetheth_860_base",// bsdETH/ETH
108
+ MorphoBlueUSDeUSDC_915_Base = "morphoblueusdeusdc_915_base",// USDe/USDC 0.915
109
+ MorphoBlueCbEthUSDC_770_Base = "morphobluecbethusdc_770_base",// cbETH/USDC 0.77
110
+ MorphoBlueCbXRPUSDC_625_Base = "morphobluecbxrpusdc_625_base",// cbXRP/USDC 0.625
79
111
  MorphoBlueSyrupUSDCUSDC_915_Arb = "morphobluesyrupusdcusdc_915_arb",// syrupUSDC/USDC
80
112
  MorphoBlueWBTCUSDC_860_Arb = "morphobluewbtcusdc_860_arb",// WBTC/USDC
81
113
  MorphoBlueWstEthUSDC_860_Arb = "morphobluewstethusdc_860_arb",// wstETH/USDC
82
114
  MorphoBlueEthUSDC_860_Arb = "morphoblueethusdc_860_arb",// ETH/USDC
83
- MorphoBluesUSDSUSDC_945_Arb = "morphobluesusdsusdc_945_arb"
115
+ MorphoBluesUSDSUSDC_945_Arb = "morphobluesusdsusdc_945_arb",// sUSDS/USDC
116
+ MorphoBlueWeEthUSDC_860_Arb = "morphoblueweethusdc_860_arb",// weETH/USDC 0.86
117
+ MorphoBluesUSDSUSDT0_945_Arb = "morphobluesusdsusdt0_945_arb",// sUSDS/USDT0 0.945
118
+ MorphoBlueWeEthUSDT0_860_Arb = "morphoblueweethusdt0_860_arb",// weETH/USDT0 0.86
119
+ MorphoBlueEthUSDT0_860_Arb = "morphoblueethusdt0_860_arb",// ETH/USDT0 0.86
120
+ MorphoBlueWstEthUSDT0_860_Arb = "morphobluewstethusdt0_860_arb",// wstETH/USDT0 0.86
121
+ MorphoBlueWBTCUSDT0_860_Arb = "morphobluewbtcusdt0_860_arb"
84
122
  }
85
123
  export declare enum MorphoBlueOracleType {
86
124
  MARKET_RATE = "Market rate",
@@ -56,6 +56,35 @@ export var MorphoBlueVersions;
56
56
  MorphoBlueVersions["MorphoBlueUSDeDAI_945"] = "morphoblueusdedai_945";
57
57
  MorphoBlueVersions["MorphoBlueUSDeDAI_777"] = "morphoblueusdedai_777";
58
58
  MorphoBlueVersions["MorphoBlueMORPHOUSDC_625"] = "morphobluemorphousdc_625";
59
+ MorphoBlueVersions["MorphoBluePRIMEPYUSD_860"] = "morphoblueprimepyusd_860";
60
+ MorphoBlueVersions["MorphoBlueKBTCRLUSD_860"] = "morphobluekbtcrlusd_860";
61
+ MorphoBlueVersions["MorphoBlueKBTCPYUSD_860"] = "morphobluekbtcpyusd_860";
62
+ MorphoBlueVersions["MorphoBlueWstEthUSDC_860"] = "morphobluewstethusdc_860";
63
+ MorphoBlueVersions["MorphoBlueSyrupUSDCPYUSD_915"] = "morphobluesyrupusdcpyusd_915";
64
+ MorphoBlueVersions["MorphoBlueWBTCUSDC_860"] = "morphobluewbtcusdc_860";
65
+ MorphoBlueVersions["MorphoBlueCbBTCUSDC_860_bc99de6a"] = "morphobluecbbtcusdc_860_bc99de6a";
66
+ MorphoBlueVersions["MorphoBlueWeEthRLUSD_860"] = "morphoblueweethrlusd_860";
67
+ MorphoBlueVersions["MorphoBlueWeEthPYUSD_860"] = "morphoblueweethpyusd_860";
68
+ MorphoBlueVersions["MorphoBlueCbBTCUSDT_860"] = "morphobluecbbtcusdt_860";
69
+ MorphoBlueVersions["MorphoBlueLBTCPYUSD_860"] = "morphobluelbtcpyusd_860";
70
+ MorphoBlueVersions["MorphoBlueSUSDePYUSD_915"] = "morphobluesusdepyusd_915";
71
+ MorphoBlueVersions["MorphoBlueWBTCUSDT_860"] = "morphobluewbtcusdt_860";
72
+ MorphoBlueVersions["MorphoBlueWstEthUSDT_860"] = "morphobluewstethusdt_860";
73
+ MorphoBlueVersions["MorphoBlueSyrupUSDCRLUSD_915"] = "morphobluesyrupusdcrlusd_915";
74
+ MorphoBlueVersions["MorphoBlueWeEthUSDC_770"] = "morphoblueweethusdc_770";
75
+ MorphoBlueVersions["MorphoBlueEthUSDC_860_94b823e6"] = "morphoblueethusdc_860_94b823e6";
76
+ MorphoBlueVersions["MorphoBlueUSD3USDC_915"] = "morphoblueusd3usdc_915";
77
+ MorphoBlueVersions["MorphoBlueStUSDSUSDC_860"] = "morphobluestusdsusdc_860";
78
+ MorphoBlueVersions["MorphoBlueCbBTCRLUSD_860"] = "morphobluecbbtcrlusd_860";
79
+ MorphoBlueVersions["MorphoBlueWBTCEth_915"] = "morphobluewbtceth_915";
80
+ MorphoBlueVersions["MorphoBlueCbBTCEth_915_12dbf493"] = "morphobluecbbtceth_915_12dbf493";
81
+ MorphoBlueVersions["MorphoBlueWeEthUSDT_860"] = "morphoblueweethusdt_860";
82
+ MorphoBlueVersions["MorphoBlueSyrupUSDTUSDT_915"] = "morphobluesyrupusdtusdt_915";
83
+ MorphoBlueVersions["MorphoBlueCbBTCPYUSD_860"] = "morphobluecbbtcpyusd_860";
84
+ MorphoBlueVersions["MorphoBlueWeEthUSDT_770"] = "morphoblueweethusdt_770";
85
+ MorphoBlueVersions["MorphoBlueEthUSDT_860"] = "morphoblueethusdt_860";
86
+ MorphoBlueVersions["MorphoBlueWBTCRLUSD_860"] = "morphobluewbtcrlusd_860";
87
+ MorphoBlueVersions["MorphoBlueWBTCPYUSD_860"] = "morphobluewbtcpyusd_860";
59
88
  // BASE
60
89
  MorphoBlueVersions["MorphoBlueCbEthUSDC_860_Base"] = "morphobluecbethusdc_860_base";
61
90
  MorphoBlueVersions["MorphoBlueCbEthUSDC_860_Base_1c21c59d"] = "morphobluecbethusdc_860_base_1c21c59d";
@@ -83,12 +112,21 @@ export var MorphoBlueVersions;
83
112
  MorphoBlueVersions["MorphoBlueEzEthUsdc_777_Base"] = "morphoblueezethusdc_777_base";
84
113
  MorphoBlueVersions["MorphoBlueEzEthEth_777_Base"] = "morphoblueezetheth_777_base";
85
114
  MorphoBlueVersions["MorphoBlueBsdEthEth_860_Base"] = "morphobluebsdetheth_860_base";
115
+ MorphoBlueVersions["MorphoBlueUSDeUSDC_915_Base"] = "morphoblueusdeusdc_915_base";
116
+ MorphoBlueVersions["MorphoBlueCbEthUSDC_770_Base"] = "morphobluecbethusdc_770_base";
117
+ MorphoBlueVersions["MorphoBlueCbXRPUSDC_625_Base"] = "morphobluecbxrpusdc_625_base";
86
118
  // ARBITRUM
87
119
  MorphoBlueVersions["MorphoBlueSyrupUSDCUSDC_915_Arb"] = "morphobluesyrupusdcusdc_915_arb";
88
120
  MorphoBlueVersions["MorphoBlueWBTCUSDC_860_Arb"] = "morphobluewbtcusdc_860_arb";
89
121
  MorphoBlueVersions["MorphoBlueWstEthUSDC_860_Arb"] = "morphobluewstethusdc_860_arb";
90
122
  MorphoBlueVersions["MorphoBlueEthUSDC_860_Arb"] = "morphoblueethusdc_860_arb";
91
123
  MorphoBlueVersions["MorphoBluesUSDSUSDC_945_Arb"] = "morphobluesusdsusdc_945_arb";
124
+ MorphoBlueVersions["MorphoBlueWeEthUSDC_860_Arb"] = "morphoblueweethusdc_860_arb";
125
+ MorphoBlueVersions["MorphoBluesUSDSUSDT0_945_Arb"] = "morphobluesusdsusdt0_945_arb";
126
+ MorphoBlueVersions["MorphoBlueWeEthUSDT0_860_Arb"] = "morphoblueweethusdt0_860_arb";
127
+ MorphoBlueVersions["MorphoBlueEthUSDT0_860_Arb"] = "morphoblueethusdt0_860_arb";
128
+ MorphoBlueVersions["MorphoBlueWstEthUSDT0_860_Arb"] = "morphobluewstethusdt0_860_arb";
129
+ MorphoBlueVersions["MorphoBlueWBTCUSDT0_860_Arb"] = "morphobluewbtcusdt0_860_arb";
92
130
  })(MorphoBlueVersions || (MorphoBlueVersions = {}));
93
131
  export var MorphoBlueOracleType;
94
132
  (function (MorphoBlueOracleType) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@defisaver/positions-sdk",
3
- "version": "2.1.118",
3
+ "version": "2.1.119-dev-13004-dev",
4
4
  "description": "",
5
5
  "main": "./cjs/index.js",
6
6
  "module": "./esm/index.js",
@@ -21,7 +21,7 @@
21
21
  "author": "",
22
22
  "license": "ISC",
23
23
  "dependencies": {
24
- "@defisaver/tokens": "^1.7.39",
24
+ "@defisaver/tokens": "1.7.39-dev-13004-dev",
25
25
  "@types/lodash": "^4.17.15",
26
26
  "@types/memoizee": "^0.4.12",
27
27
  "decimal.js": "^10.6.0",
@@ -51,7 +51,7 @@ export const AAVE_V4_TOKENIZED_SPOKES: Record<string, EthAddress> = {
51
51
 
52
52
  USDC_PAXOS: '0x4131E0B2E7AFeCEAf3d3b4225aA61a3B2B7535b8',
53
53
  USDT_PAXOS: '0x8Dabe53E8cB991c57f0307F6f419E6D469b0deAA',
54
- PT_USDG_SEP_PAXOS: '0x27eF1140364948A0E30E248297FfDFE5a4091ec4',
54
+ PT_USDG_Sep_PAXOS: '0x27eF1140364948A0E30E248297FfDFE5a4091ec4',
55
55
  };
56
56
 
57
57
  export const AAVE_V4_TOKENIZED_SPOKE_ADDRESSES: Partial<Record<NetworkNumber, EthAddress[]>> = {
@@ -85,7 +85,7 @@ export const aaveV4GetTokenizedVaultKey = (
85
85
  const hubKey = aaveV4GetTokenizedHubKey(hubNameOrKey);
86
86
  if (!hubKey) return null;
87
87
 
88
- const normalizedSymbol = symbol.trim().replace(/-/g, '_');
88
+ const normalizedSymbol = symbol.trim().replace(/[-\s]+/g, '_');
89
89
 
90
90
  return `${normalizedSymbol}_${hubKey}`;
91
91
  };