@moonwell-fi/moonwell-sdk 0.23.0 → 0.25.0

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.
Files changed (199) hide show
  1. package/CHANGELOG.md +36 -0
  2. package/_cjs/actions/axiosWithRetry.js +10 -11
  3. package/_cjs/actions/axiosWithRetry.js.map +1 -1
  4. package/_cjs/actions/core/getUserBalances.js +63 -32
  5. package/_cjs/actions/core/getUserBalances.js.map +1 -1
  6. package/_cjs/actions/core/markets/common.js +31 -42
  7. package/_cjs/actions/core/markets/common.js.map +1 -1
  8. package/_cjs/actions/core/markets/getMarkets.js +7 -3
  9. package/_cjs/actions/core/markets/getMarkets.js.map +1 -1
  10. package/_cjs/actions/core/user-positions/common.js +56 -60
  11. package/_cjs/actions/core/user-positions/common.js.map +1 -1
  12. package/_cjs/actions/core/user-positions/getUserPositions.js +9 -6
  13. package/_cjs/actions/core/user-positions/getUserPositions.js.map +1 -1
  14. package/_cjs/actions/governance/getStakingInfo.js +1 -7
  15. package/_cjs/actions/governance/getStakingInfo.js.map +1 -1
  16. package/_cjs/actions/governance/getUserStakingInfo.js +1 -7
  17. package/_cjs/actions/governance/getUserStakingInfo.js.map +1 -1
  18. package/_cjs/actions/governance/getWellPrice.js +51 -1
  19. package/_cjs/actions/governance/getWellPrice.js.map +1 -1
  20. package/_cjs/actions/governance/proposals/common.js +34 -15
  21. package/_cjs/actions/governance/proposals/common.js.map +1 -1
  22. package/_cjs/actions/governance/proposals/getProposals.js +5 -4
  23. package/_cjs/actions/governance/proposals/getProposals.js.map +1 -1
  24. package/_cjs/actions/index.js +3 -1
  25. package/_cjs/actions/index.js.map +1 -1
  26. package/_cjs/actions/morpho/markets/common.js +155 -26
  27. package/_cjs/actions/morpho/markets/common.js.map +1 -1
  28. package/_cjs/actions/morpho/markets/getMorphoMarket.js +1 -0
  29. package/_cjs/actions/morpho/markets/getMorphoMarket.js.map +1 -1
  30. package/_cjs/actions/morpho/markets/getMorphoMarkets.js +1 -0
  31. package/_cjs/actions/morpho/markets/getMorphoMarkets.js.map +1 -1
  32. package/_cjs/actions/morpho/markets/getMorphoMarketsSharedLiquidity.js +46 -0
  33. package/_cjs/actions/morpho/markets/getMorphoMarketsSharedLiquidity.js.map +1 -0
  34. package/_cjs/actions/morpho/user-positions/common.js +26 -24
  35. package/_cjs/actions/morpho/user-positions/common.js.map +1 -1
  36. package/_cjs/actions/morpho/user-positions/getMorphoMarketUserPositions.js +7 -8
  37. package/_cjs/actions/morpho/user-positions/getMorphoMarketUserPositions.js.map +1 -1
  38. package/_cjs/actions/morpho/user-positions/getMorphoVaultUserPositions.js +7 -8
  39. package/_cjs/actions/morpho/user-positions/getMorphoVaultUserPositions.js.map +1 -1
  40. package/_cjs/actions/morpho/user-rewards/common.js +1 -7
  41. package/_cjs/actions/morpho/user-rewards/common.js.map +1 -1
  42. package/_cjs/actions/morpho/vaults/common.js +104 -87
  43. package/_cjs/actions/morpho/vaults/common.js.map +1 -1
  44. package/_cjs/actions/morpho/vaults/lunarIndexerTransform.js +31 -3
  45. package/_cjs/actions/morpho/vaults/lunarIndexerTransform.js.map +1 -1
  46. package/_cjs/actions/retry.js +43 -13
  47. package/_cjs/actions/retry.js.map +1 -1
  48. package/_cjs/client/createActions.js +2 -0
  49. package/_cjs/client/createActions.js.map +1 -1
  50. package/_cjs/common/error.js +37 -1
  51. package/_cjs/common/error.js.map +1 -1
  52. package/_cjs/common/index.js +2 -1
  53. package/_cjs/common/index.js.map +1 -1
  54. package/_cjs/common/readAcrossEnvironments.js +17 -0
  55. package/_cjs/common/readAcrossEnvironments.js.map +1 -0
  56. package/_cjs/environments/types/config.js.map +1 -1
  57. package/_cjs/errors/version.js +1 -1
  58. package/_cjs/index.js +3 -1
  59. package/_cjs/index.js.map +1 -1
  60. package/_esm/actions/axiosWithRetry.js +11 -13
  61. package/_esm/actions/axiosWithRetry.js.map +1 -1
  62. package/_esm/actions/core/getUserBalances.js +72 -35
  63. package/_esm/actions/core/getUserBalances.js.map +1 -1
  64. package/_esm/actions/core/markets/common.js +36 -43
  65. package/_esm/actions/core/markets/common.js.map +1 -1
  66. package/_esm/actions/core/markets/getMarkets.js +7 -3
  67. package/_esm/actions/core/markets/getMarkets.js.map +1 -1
  68. package/_esm/actions/core/user-positions/common.js +65 -63
  69. package/_esm/actions/core/user-positions/common.js.map +1 -1
  70. package/_esm/actions/core/user-positions/getUserPositions.js +14 -6
  71. package/_esm/actions/core/user-positions/getUserPositions.js.map +1 -1
  72. package/_esm/actions/governance/getStakingInfo.js +2 -8
  73. package/_esm/actions/governance/getStakingInfo.js.map +1 -1
  74. package/_esm/actions/governance/getUserStakingInfo.js +2 -8
  75. package/_esm/actions/governance/getUserStakingInfo.js.map +1 -1
  76. package/_esm/actions/governance/getWellPrice.js +67 -7
  77. package/_esm/actions/governance/getWellPrice.js.map +1 -1
  78. package/_esm/actions/governance/proposals/common.js +37 -12
  79. package/_esm/actions/governance/proposals/common.js.map +1 -1
  80. package/_esm/actions/governance/proposals/getProposals.js +7 -5
  81. package/_esm/actions/governance/proposals/getProposals.js.map +1 -1
  82. package/_esm/actions/index.js +1 -0
  83. package/_esm/actions/index.js.map +1 -1
  84. package/_esm/actions/morpho/markets/common.js +168 -27
  85. package/_esm/actions/morpho/markets/common.js.map +1 -1
  86. package/_esm/actions/morpho/markets/getMorphoMarket.js +1 -0
  87. package/_esm/actions/morpho/markets/getMorphoMarket.js.map +1 -1
  88. package/_esm/actions/morpho/markets/getMorphoMarkets.js +1 -0
  89. package/_esm/actions/morpho/markets/getMorphoMarkets.js.map +1 -1
  90. package/_esm/actions/morpho/markets/getMorphoMarketsSharedLiquidity.js +48 -0
  91. package/_esm/actions/morpho/markets/getMorphoMarketsSharedLiquidity.js.map +1 -0
  92. package/_esm/actions/morpho/user-positions/common.js +31 -24
  93. package/_esm/actions/morpho/user-positions/common.js.map +1 -1
  94. package/_esm/actions/morpho/user-positions/getMorphoMarketUserPositions.js +12 -8
  95. package/_esm/actions/morpho/user-positions/getMorphoMarketUserPositions.js.map +1 -1
  96. package/_esm/actions/morpho/user-positions/getMorphoVaultUserPositions.js +12 -8
  97. package/_esm/actions/morpho/user-positions/getMorphoVaultUserPositions.js.map +1 -1
  98. package/_esm/actions/morpho/user-rewards/common.js +2 -8
  99. package/_esm/actions/morpho/user-rewards/common.js.map +1 -1
  100. package/_esm/actions/morpho/vaults/common.js +110 -91
  101. package/_esm/actions/morpho/vaults/common.js.map +1 -1
  102. package/_esm/actions/morpho/vaults/lunarIndexerTransform.js +36 -4
  103. package/_esm/actions/morpho/vaults/lunarIndexerTransform.js.map +1 -1
  104. package/_esm/actions/retry.js +45 -15
  105. package/_esm/actions/retry.js.map +1 -1
  106. package/_esm/client/createActions.js +2 -0
  107. package/_esm/client/createActions.js.map +1 -1
  108. package/_esm/common/error.js +49 -0
  109. package/_esm/common/error.js.map +1 -1
  110. package/_esm/common/index.js +1 -1
  111. package/_esm/common/index.js.map +1 -1
  112. package/_esm/common/readAcrossEnvironments.js +30 -0
  113. package/_esm/common/readAcrossEnvironments.js.map +1 -0
  114. package/_esm/environments/types/config.js.map +1 -1
  115. package/_esm/errors/version.js +1 -1
  116. package/_esm/index.js +1 -0
  117. package/_esm/index.js.map +1 -1
  118. package/_types/actions/axiosWithRetry.d.ts +1 -0
  119. package/_types/actions/axiosWithRetry.d.ts.map +1 -1
  120. package/_types/actions/core/getUserBalances.d.ts.map +1 -1
  121. package/_types/actions/core/markets/common.d.ts.map +1 -1
  122. package/_types/actions/core/markets/getMarkets.d.ts.map +1 -1
  123. package/_types/actions/core/user-positions/common.d.ts.map +1 -1
  124. package/_types/actions/core/user-positions/getUserPositions.d.ts +5 -0
  125. package/_types/actions/core/user-positions/getUserPositions.d.ts.map +1 -1
  126. package/_types/actions/governance/getStakingInfo.d.ts.map +1 -1
  127. package/_types/actions/governance/getUserStakingInfo.d.ts.map +1 -1
  128. package/_types/actions/governance/getWellPrice.d.ts +9 -1
  129. package/_types/actions/governance/getWellPrice.d.ts.map +1 -1
  130. package/_types/actions/governance/proposals/common.d.ts.map +1 -1
  131. package/_types/actions/governance/proposals/getProposals.d.ts +10 -1
  132. package/_types/actions/governance/proposals/getProposals.d.ts.map +1 -1
  133. package/_types/actions/index.d.ts +1 -0
  134. package/_types/actions/index.d.ts.map +1 -1
  135. package/_types/actions/morpho/markets/common.d.ts +7 -10
  136. package/_types/actions/morpho/markets/common.d.ts.map +1 -1
  137. package/_types/actions/morpho/markets/getMorphoMarket.d.ts +2 -0
  138. package/_types/actions/morpho/markets/getMorphoMarket.d.ts.map +1 -1
  139. package/_types/actions/morpho/markets/getMorphoMarkets.d.ts +2 -0
  140. package/_types/actions/morpho/markets/getMorphoMarkets.d.ts.map +1 -1
  141. package/_types/actions/morpho/markets/getMorphoMarketsSharedLiquidity.d.ts +17 -0
  142. package/_types/actions/morpho/markets/getMorphoMarketsSharedLiquidity.d.ts.map +1 -0
  143. package/_types/actions/morpho/user-positions/common.d.ts.map +1 -1
  144. package/_types/actions/morpho/user-positions/getMorphoMarketUserPositions.d.ts +5 -0
  145. package/_types/actions/morpho/user-positions/getMorphoMarketUserPositions.d.ts.map +1 -1
  146. package/_types/actions/morpho/user-positions/getMorphoVaultUserPositions.d.ts +5 -0
  147. package/_types/actions/morpho/user-positions/getMorphoVaultUserPositions.d.ts.map +1 -1
  148. package/_types/actions/morpho/user-rewards/common.d.ts.map +1 -1
  149. package/_types/actions/morpho/vaults/common.d.ts.map +1 -1
  150. package/_types/actions/morpho/vaults/lunarIndexerTransform.d.ts.map +1 -1
  151. package/_types/actions/retry.d.ts +5 -4
  152. package/_types/actions/retry.d.ts.map +1 -1
  153. package/_types/client/createActions.d.ts +2 -0
  154. package/_types/client/createActions.d.ts.map +1 -1
  155. package/_types/common/error.d.ts +31 -0
  156. package/_types/common/error.d.ts.map +1 -1
  157. package/_types/common/index.d.ts +2 -2
  158. package/_types/common/index.d.ts.map +1 -1
  159. package/_types/common/readAcrossEnvironments.d.ts +23 -0
  160. package/_types/common/readAcrossEnvironments.d.ts.map +1 -0
  161. package/_types/environments/types/config.d.ts +11 -1
  162. package/_types/environments/types/config.d.ts.map +1 -1
  163. package/_types/errors/version.d.ts +1 -1
  164. package/_types/index.d.ts +3 -1
  165. package/_types/index.d.ts.map +1 -1
  166. package/_types/types/morphoMarket.d.ts +9 -0
  167. package/_types/types/morphoMarket.d.ts.map +1 -1
  168. package/actions/axiosWithRetry.ts +19 -13
  169. package/actions/core/getUserBalances.ts +98 -51
  170. package/actions/core/markets/common.ts +49 -51
  171. package/actions/core/markets/getMarkets.ts +9 -5
  172. package/actions/core/user-positions/common.ts +107 -111
  173. package/actions/core/user-positions/getUserPositions.ts +11 -10
  174. package/actions/governance/getStakingInfo.ts +2 -9
  175. package/actions/governance/getUserStakingInfo.ts +2 -8
  176. package/actions/governance/getWellPrice.ts +99 -7
  177. package/actions/governance/proposals/common.ts +44 -19
  178. package/actions/governance/proposals/getProposals.ts +22 -5
  179. package/actions/index.ts +5 -0
  180. package/actions/morpho/markets/common.ts +324 -125
  181. package/actions/morpho/markets/getMorphoMarket.ts +3 -0
  182. package/actions/morpho/markets/getMorphoMarkets.ts +3 -0
  183. package/actions/morpho/markets/getMorphoMarketsSharedLiquidity.ts +93 -0
  184. package/actions/morpho/user-positions/common.ts +48 -42
  185. package/actions/morpho/user-positions/getMorphoMarketUserPositions.ts +14 -15
  186. package/actions/morpho/user-positions/getMorphoVaultUserPositions.ts +14 -15
  187. package/actions/morpho/user-rewards/common.ts +2 -8
  188. package/actions/morpho/vaults/common.ts +161 -127
  189. package/actions/morpho/vaults/lunarIndexerTransform.ts +41 -6
  190. package/actions/retry.ts +53 -18
  191. package/client/createActions.ts +13 -0
  192. package/common/error.ts +45 -0
  193. package/common/index.ts +2 -2
  194. package/common/readAcrossEnvironments.ts +45 -0
  195. package/environments/types/config.ts +11 -1
  196. package/errors/version.ts +1 -1
  197. package/index.ts +3 -0
  198. package/package.json +1 -1
  199. package/types/morphoMarket.ts +10 -0
@@ -2,11 +2,129 @@ import { Amount } from "../../../common/amount.js";
2
2
  import { getWithRetry } from "../../axiosWithRetry.js";
3
3
  import { getGraphQL } from "../utils/graphql.js";
4
4
  import { fetchMarketsFromIndexer, transformMarketsFromIndexer, } from "./lunarIndexerTransform.js";
5
- async function fetchSharedLiquidityFromLunar(lunarIndexerUrl, chainId) {
6
- const response = await getWithRetry(`${lunarIndexerUrl}/api/v1/isolated/shared-liquidity/${chainId}`);
7
- return response.data;
5
+ function parseLiquidityQuantity(value, field, raw = false) {
6
+ // Raw uint quantities routinely exceed Number.MAX_SAFE_INTEGER. Validate the
7
+ // integer string, not its safe-integer range; keep the existing numeric units.
8
+ const pattern = raw ? /^\d+$/ : /^(?:\d+(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+)?$/;
9
+ if (typeof value !== "string" || !pattern.test(value)) {
10
+ throw new TypeError(`Invalid shared-liquidity quantity: ${field}`);
11
+ }
12
+ const quantity = Number(value);
13
+ if (!Number.isFinite(quantity)) {
14
+ throw new TypeError(`Invalid shared-liquidity quantity: ${field}`);
15
+ }
16
+ return quantity;
17
+ }
18
+ function validateLoanDecimals(value) {
19
+ if (typeof value !== "number" ||
20
+ !Number.isInteger(value) ||
21
+ value < 0 ||
22
+ value > 255) {
23
+ throw new TypeError("Invalid shared-liquidity loan token decimals");
24
+ }
25
+ return value;
26
+ }
27
+ /** Summarizes an unexpected top-level body so the error says what arrived. */
28
+ function describeSharedLiquidityBody(data) {
29
+ if (data === null || data === undefined)
30
+ return `received ${data}`;
31
+ if (typeof data === "string") {
32
+ return `received string of ${data.length} chars: ${JSON.stringify(data.slice(0, 100))}`;
33
+ }
34
+ if (typeof data !== "object")
35
+ return `received ${typeof data}`;
36
+ if (Array.isArray(data))
37
+ return `received array of ${data.length}`;
38
+ const body = data;
39
+ const kind = (value) => Array.isArray(value) ? "array" : value === null ? "null" : typeof value;
40
+ const keys = Object.keys(body).slice(0, 10).join(", ");
41
+ return `received object with keys [${keys}]; vaults: ${kind(body.vaults)}, markets: ${kind(body.markets)}`;
42
+ }
43
+ function validatedMarketLiquidity(data) {
44
+ if (!data ||
45
+ !Array.isArray(data.vaults) ||
46
+ !data.markets ||
47
+ typeof data.markets !== "object" ||
48
+ Array.isArray(data.markets)) {
49
+ throw new TypeError(`Invalid shared-liquidity response (${describeSharedLiquidityBody(data)})`);
50
+ }
51
+ for (const vault of data.vaults) {
52
+ parseLiquidityQuantity(vault.fee, "vault.fee", true);
53
+ for (const market of vault.markets) {
54
+ for (const field of [
55
+ "flowCapIn",
56
+ "flowCapOut",
57
+ "supplyCap",
58
+ "vaultSupplyShares",
59
+ "vaultSupplyAssets",
60
+ ]) {
61
+ parseLiquidityQuantity(market[field], `${market.marketId}.${field}`, true);
62
+ }
63
+ if (typeof market.supplyCapEnabled !== "boolean") {
64
+ throw new TypeError("Invalid shared-liquidity supplyCapEnabled");
65
+ }
66
+ }
67
+ }
68
+ return new Map(Object.entries(data.markets).map(([marketId, market]) => {
69
+ if (market.loanToken !== undefined) {
70
+ validateLoanDecimals(market.loanToken.decimals);
71
+ }
72
+ for (const field of ["totalSupplyAssets", "totalBorrowAssets"]) {
73
+ if (market[field] !== undefined) {
74
+ parseLiquidityQuantity(market[field], `${marketId}.${field}`);
75
+ }
76
+ }
77
+ const liquidity = market.totalLiquidity !== undefined
78
+ ? parseLiquidityQuantity(market.totalLiquidity, `${marketId}.totalLiquidity`)
79
+ : parseLiquidityQuantity(market.totalSupplyAssets, `${marketId}.totalSupplyAssets`) -
80
+ parseLiquidityQuantity(market.totalBorrowAssets, `${marketId}.totalBorrowAssets`);
81
+ if (liquidity < 0) {
82
+ throw new TypeError(`Negative shared liquidity for ${marketId}`);
83
+ }
84
+ return [marketId, liquidity];
85
+ }));
86
+ }
87
+ export async function fetchSharedLiquidityFromLunar(lunarIndexerUrl, chainId, options = {}) {
88
+ // One budget for the request AND its retries. The endpoint often takes more
89
+ // than five seconds, so let it finish instead of restarting the same work.
90
+ const timeoutMs = options.timeoutMs ?? 15_000;
91
+ if (!Number.isFinite(timeoutMs) || timeoutMs <= 0) {
92
+ throw new RangeError("Shared-liquidity timeoutMs must be positive and finite");
93
+ }
94
+ const controller = new AbortController();
95
+ const abort = () => controller.abort();
96
+ if (options.signal?.aborted)
97
+ abort();
98
+ options.signal?.addEventListener("abort", abort, { once: true });
99
+ let timedOut = false;
100
+ const timer = setTimeout(() => {
101
+ timedOut = true;
102
+ abort();
103
+ }, timeoutMs);
104
+ try {
105
+ const response = await getWithRetry(`${lunarIndexerUrl}/api/v1/isolated/shared-liquidity/${chainId}`, { timeout: timeoutMs, signal: controller.signal });
106
+ return response.data;
107
+ }
108
+ catch (error) {
109
+ // Our own deadline aborts the request, which axios reports as a bare
110
+ // `CanceledError: canceled` (Sentry MOONWELL-FRONTEND-1C7 & co). That is a
111
+ // timeout, not a cancellation: surface it as one. A caller's own abort
112
+ // still propagates as the CanceledError it is.
113
+ if (timedOut && !options.signal?.aborted) {
114
+ const timeoutError = new Error(`Shared-liquidity request timed out after ${timeoutMs}ms (chainId=${chainId})`, { cause: error });
115
+ timeoutError.name = "TimeoutError";
116
+ throw timeoutError;
117
+ }
118
+ throw error;
119
+ }
120
+ finally {
121
+ clearTimeout(timer);
122
+ options.signal?.removeEventListener("abort", abort);
123
+ }
8
124
  }
9
125
  export function computeSharedLiquidityFromLunar(data, targetMarkets, marketParamsMap, chainId) {
126
+ // Validate the complete response before building any successful allocations.
127
+ const liquidityByMarket = validatedMarketLiquidity(data);
10
128
  return targetMarkets.map((targetMarket) => {
11
129
  const targetId = targetMarket.toLowerCase();
12
130
  const r = [];
@@ -18,9 +136,9 @@ export function computeSharedLiquidityFromLunar(data, targetMarkets, marketParam
18
136
  // (wei-like). Markets data (totalSupplyAssets, totalBorrowAssets, totalLiquidity)
19
137
  // is already in token units (divided by decimals). We convert vault raw values
20
138
  // to token units using the loan token decimals before comparing.
21
- const targetLoanDecimals = targetLiveData?.loanToken?.decimals ??
139
+ const targetLoanDecimals = validateLoanDecimals(targetLiveData?.loanToken?.decimals ??
22
140
  targetParams?.loanToken.decimals ??
23
- 18;
141
+ 18);
24
142
  const targetScale = 10 ** targetLoanDecimals;
25
143
  for (const vault of data.vaults) {
26
144
  const thisMarketInVault = vault.markets.find((m) => m.marketId.toLowerCase() === targetId);
@@ -55,20 +173,18 @@ export function computeSharedLiquidityFromLunar(data, targetMarkets, marketParam
55
173
  if (sourceMarket.marketId.toLowerCase() === targetId)
56
174
  continue;
57
175
  const sourceLiveData = data.markets[sourceMarket.marketId.toLowerCase()];
58
- if (!sourceLiveData)
176
+ const liquidity = liquidityByMarket.get(sourceMarket.marketId.toLowerCase());
177
+ // The indexer can omit an entire source record. Preserve that existing
178
+ // skip behavior; quantities in every returned record were validated above.
179
+ if (!sourceLiveData || liquidity === undefined)
59
180
  continue;
60
- const sourceLoanDecimals = sourceLiveData.loanToken?.decimals ??
181
+ const sourceLoanDecimals = validateLoanDecimals(sourceLiveData.loanToken?.decimals ??
61
182
  marketParamsMap.get(sourceMarket.marketId.toLowerCase())?.loanToken
62
183
  .decimals ??
63
- 18;
184
+ 18);
64
185
  const sourceScale = 10 ** sourceLoanDecimals;
65
186
  const vaultSupplyInSource = Number(sourceMarket.vaultSupplyAssets) / sourceScale;
66
187
  const maxOut = Number(sourceMarket.flowCapOut) / sourceScale;
67
- // Use pre-computed totalLiquidity if available, else derive from supply/borrow
68
- const liquidity = sourceLiveData.totalLiquidity
69
- ? Number(sourceLiveData.totalLiquidity)
70
- : Number(sourceLiveData.totalSupplyAssets ?? 0) -
71
- Number(sourceLiveData.totalBorrowAssets ?? 0);
72
188
  if (vaultSupplyInSource > 0 && maxOut > 0 && liquidity > 0) {
73
189
  const sourceParams = marketParamsMap.get(sourceMarket.marketId.toLowerCase());
74
190
  const allocationMarket = sourceParams
@@ -174,7 +290,7 @@ async function getMorphoMarketsDataFromOnChain(params) {
174
290
  });
175
291
  const rewardEnvironment = params.environments.find((env) => env.custom?.morpho?.apiUrl) ??
176
292
  params.environments[0];
177
- const rewardsData = await getMorphoMarketRewards(rewardEnvironment, initialMarkets);
293
+ const rewardsData = await getMorphoMarketRewards(rewardEnvironment, initialMarkets, params);
178
294
  const rewardsDataByChainAndMarket = new Map();
179
295
  rewardsData.forEach((reward) => {
180
296
  const key = `${reward.chainId}-${reward.marketId.toLowerCase()}`;
@@ -286,6 +402,9 @@ async function getMorphoMarketsDataFromOnChain(params) {
286
402
  },
287
403
  rewards: [],
288
404
  publicAllocatorSharedLiquidity: marketRewardData?.publicAllocatorSharedLiquidity ?? [],
405
+ sharedLiquidityStatus: params.includeSharedLiquidity === false
406
+ ? "not-requested"
407
+ : (marketRewardData?.sharedLiquidityStatus ?? "unavailable"),
289
408
  };
290
409
  return [mapping];
291
410
  });
@@ -301,11 +420,10 @@ async function getMorphoMarketsDataFromOnChain(params) {
301
420
  const environment = params.environments.find((environment) => environment.chainId === market.chainId);
302
421
  return environment?.custom.morpho?.minimalDeployment === false;
303
422
  });
304
- const rewards = await getMorphoMarketRewards(params.environments.find((env) => env.custom?.morpho?.apiUrl) ??
305
- params.environments[0], markets);
306
423
  markets.forEach((market) => {
307
- const marketReward = rewards.find((reward) => reward.marketId === market.marketId &&
308
- reward.chainId === market.chainId);
424
+ // Collateral, rewards and optional liquidity came from the same GraphQL
425
+ // response above. Do not repeat that expensive enrichment request.
426
+ const marketReward = rewardsDataByChainAndMarket.get(`${market.chainId}-${market.marketId.toLowerCase()}`);
309
427
  if (marketReward) {
310
428
  market.rewards = marketReward.rewards;
311
429
  market.collateralAssets = marketReward.collateralAssets;
@@ -322,7 +440,7 @@ async function getMorphoMarketsDataFromOnChain(params) {
322
440
  return result[environment.chainId] || [];
323
441
  });
324
442
  }
325
- async function getMorphoMarketRewards(environment, markets) {
443
+ async function getMorphoMarketRewards(environment, markets, options) {
326
444
  if (markets.length === 0) {
327
445
  return [];
328
446
  }
@@ -336,7 +454,9 @@ async function getMorphoMarketRewards(environment, markets) {
336
454
  id
337
455
  }
338
456
  }
339
- reallocatableLiquidityAssets
457
+ ${options.includeSharedLiquidity === false
458
+ ? ""
459
+ : `reallocatableLiquidityAssets
340
460
  publicAllocatorSharedLiquidity {
341
461
  assets
342
462
  vault {
@@ -366,6 +486,7 @@ async function getMorphoMarketRewards(environment, markets) {
366
486
  lltv
367
487
  }
368
488
  }
489
+ `}
369
490
  collateralAsset {
370
491
  decimals
371
492
  }
@@ -376,7 +497,8 @@ async function getMorphoMarketRewards(environment, markets) {
376
497
  state {
377
498
  collateralAssets
378
499
  collateralAssetsUsd
379
- rewards {
500
+ ${options.includeRewards
501
+ ? `rewards {
380
502
  asset {
381
503
  address
382
504
  symbol
@@ -385,7 +507,8 @@ async function getMorphoMarketRewards(environment, markets) {
385
507
  }
386
508
  supplyApr
387
509
  borrowApr
388
- }
510
+ }`
511
+ : ""}
389
512
  }
390
513
  marketId
391
514
  }
@@ -398,7 +521,7 @@ async function getMorphoMarketRewards(environment, markets) {
398
521
  const mapping = {
399
522
  chainId: item.morphoBlue.chain.id,
400
523
  marketId: item.marketId,
401
- reallocatableLiquidityAssets: new Amount(BigInt(item.reallocatableLiquidityAssets), loanAssetDecimals),
524
+ reallocatableLiquidityAssets: new Amount(BigInt(item.reallocatableLiquidityAssets ?? "0"), loanAssetDecimals),
402
525
  // Note: The Morpho GraphQL API may return null for collateralAssets and
403
526
  // collateralAssetsUsd for markets with no collateral deposited or during data sync.
404
527
  // We preserve null to let consumers distinguish between "no data" vs "zero collateral".
@@ -406,7 +529,15 @@ async function getMorphoMarketRewards(environment, markets) {
406
529
  ? new Amount(BigInt(item.state.collateralAssets), item.collateralAsset.decimals)
407
530
  : null,
408
531
  collateralAssetsUsd: item.state.collateralAssetsUsd ?? null,
409
- publicAllocatorSharedLiquidity: item.publicAllocatorSharedLiquidity.map((item) => ({
532
+ sharedLiquidityStatus: options.includeSharedLiquidity === false
533
+ ? "not-requested"
534
+ : item.publicAllocatorSharedLiquidity
535
+ ? "available"
536
+ : "unavailable",
537
+ publicAllocatorSharedLiquidity: (options.includeSharedLiquidity ===
538
+ false
539
+ ? []
540
+ : (item.publicAllocatorSharedLiquidity ?? [])).map((item) => ({
410
541
  assets: Number(item.assets) / 10 ** loanAssetDecimals,
411
542
  vault: {
412
543
  address: item.vault.address,
@@ -433,7 +564,9 @@ async function getMorphoMarketRewards(environment, markets) {
433
564
  lltv: item.allocationMarket.lltv,
434
565
  },
435
566
  })),
436
- rewards: item.state?.rewards.map((reward) => {
567
+ rewards: (options.includeRewards
568
+ ? (item.state?.rewards ?? [])
569
+ : []).map((reward) => {
437
570
  //Supply APR is used only for vaults, zeroing it for now to avoid confusion
438
571
  // Morpho removed the per-token amount fields from the API
439
572
  // (MarketStateReward.amountPerBorrowedToken et al.), so reward
@@ -505,6 +638,7 @@ async function getMorphoMarketsDataFromIndexer(params) {
505
638
  environments: failedEnvironments,
506
639
  markets: params.markets,
507
640
  includeRewards: params.includeRewards,
641
+ includeSharedLiquidity: params.includeSharedLiquidity,
508
642
  });
509
643
  }
510
644
  catch (rpcError) {
@@ -518,7 +652,7 @@ async function getMorphoMarketsDataFromIndexer(params) {
518
652
  }
519
653
  }
520
654
  // Fetch shared liquidity from lunar-indexer.
521
- const sharedLiquiditySettlements = await Promise.allSettled(fulfilledMarkets.map(async ({ environment, markets }) => {
655
+ const sharedLiquiditySettlements = await Promise.allSettled((params.includeSharedLiquidity === false ? [] : fulfilledMarkets).map(async ({ environment, markets, }) => {
522
656
  const lunarIndexerUrl = environment.lunarIndexerUrl;
523
657
  if (!lunarIndexerUrl)
524
658
  return {
@@ -627,7 +761,14 @@ async function getMorphoMarketsDataFromIndexer(params) {
627
761
  }
628
762
  // Transform markets from indexer format to SDK format
629
763
  const transformedMarkets = fulfilledMarkets.flatMap(({ environment, markets }) => {
630
- return transformMarketsFromIndexer(markets, environment, rewardsDataMap, sharedLiquidityMap);
764
+ return transformMarketsFromIndexer(markets, environment, rewardsDataMap, sharedLiquidityMap).map((market) => ({
765
+ ...market,
766
+ sharedLiquidityStatus: params.includeSharedLiquidity === false
767
+ ? "not-requested"
768
+ : sharedLiquidityMap.has(`${market.chainId}-${market.marketId.toLowerCase()}`)
769
+ ? "available"
770
+ : "unavailable",
771
+ }));
631
772
  });
632
773
  // Combine indexer results with fallback results
633
774
  return [...transformedMarkets, ...fallbackMarkets];
@@ -1 +1 @@
1
- {"version":3,"file":"common.js","sourceRoot":"","sources":["../../../../actions/morpho/markets/common.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"common.js","sourceRoot":"","sources":["../../../../actions/morpho/markets/common.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,7 @@ export async function getMorphoMarket(client, args) {
15
15
  environments: [environment],
16
16
  markets: [marketId],
17
17
  includeRewards: args.includeRewards,
18
+ includeSharedLiquidity: args.includeSharedLiquidity,
18
19
  });
19
20
  return first(markets);
20
21
  }
@@ -1 +1 @@
1
- {"version":3,"file":"getMorphoMarket.js","sourceRoot":"","sources":["../../../../actions/morpho/markets/getMorphoMarket.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC;AAGzB,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAOlE,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAYnD,MAAM,CAAC,KAAK,UAAU,eAAe,CAInC,MAAsB,EACtB,IAAsD;IAEtD,MAAM,WAAW,GAAG,sBAAsB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAEzD,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,IAG1B,CAAC;IAEF,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,QAAQ,GAAG,WAAW,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;IACzD,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,oBAAoB,CAAC;QACzC,YAAY,EAAE,CAAC,WAAW,CAAC;QAC3B,OAAO,EAAE,CAAC,QAAQ,CAAC;QACnB,cAAc,EAAE,IAAI,CAAC,cAAc;KACpC,CAAC,CAAC;IAEH,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC;AACxB,CAAC"}
1
+ {"version":3,"file":"getMorphoMarket.js","sourceRoot":"","sources":["../../../../actions/morpho/markets/getMorphoMarket.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC;AAGzB,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAOlE,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAcnD,MAAM,CAAC,KAAK,UAAU,eAAe,CAInC,MAAsB,EACtB,IAAsD;IAEtD,MAAM,WAAW,GAAG,sBAAsB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAEzD,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,IAG1B,CAAC;IAEF,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,QAAQ,GAAG,WAAW,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;IACzD,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,oBAAoB,CAAC;QACzC,YAAY,EAAE,CAAC,WAAW,CAAC;QAC3B,OAAO,EAAE,CAAC,QAAQ,CAAC;QACnB,cAAc,EAAE,IAAI,CAAC,cAAc;QACnC,sBAAsB,EAAE,IAAI,CAAC,sBAAsB;KACpD,CAAC,CAAC;IAEH,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC;AACxB,CAAC"}
@@ -7,6 +7,7 @@ export async function getMorphoMarkets(client, args) {
7
7
  const result = await getMorphoMarketsData({
8
8
  environments: environments,
9
9
  includeRewards: args?.includeRewards,
10
+ includeSharedLiquidity: args?.includeSharedLiquidity,
10
11
  });
11
12
  logger.end(logId);
12
13
  return result;
@@ -1 +1 @@
1
- {"version":3,"file":"getMorphoMarkets.js","sourceRoot":"","sources":["../../../../actions/morpho/markets/getMorphoMarkets.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AAGnE,OAAO,KAAK,MAAM,MAAM,4BAA4B,CAAC;AAErD,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAWnD,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAIpC,MAAsB,EACtB,IAAwD;IAExD,MAAM,YAAY,GAAG,uBAAuB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAE3D,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CACxB,kBAAkB,EAClB,mCAAmC,CACpC,CAAC;IAEF,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC;QACxC,YAAY,EAAE,YAAY;QAC1B,cAAc,EAAE,IAAI,EAAE,cAAc;KACrC,CAAC,CAAC;IAEH,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAElB,OAAO,MAAM,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"getMorphoMarkets.js","sourceRoot":"","sources":["../../../../actions/morpho/markets/getMorphoMarkets.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AAGnE,OAAO,KAAK,MAAM,MAAM,4BAA4B,CAAC;AAErD,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAanD,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAIpC,MAAsB,EACtB,IAAwD;IAExD,MAAM,YAAY,GAAG,uBAAuB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAE3D,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CACxB,kBAAkB,EAClB,mCAAmC,CACpC,CAAC;IAEF,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC;QACxC,YAAY,EAAE,YAAY;QAC1B,cAAc,EAAE,IAAI,EAAE,cAAc;QACpC,sBAAsB,EAAE,IAAI,EAAE,sBAAsB;KACrD,CAAC,CAAC;IAEH,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAElB,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -0,0 +1,48 @@
1
+ import { getEnvironmentFromArgs } from "../../../common/index.js";
2
+ import { computeSharedLiquidityFromLunar, fetchSharedLiquidityFromLunar, } from "./common.js";
3
+ /** Fetch allocator liquidity independently, without refetching base market data.
4
+ * Rejects on failure so callers can retain the previous successful snapshot and
5
+ * distinguish unavailable liquidity from a successful empty allocation list. */
6
+ export async function getMorphoMarketsSharedLiquidity(client, args) {
7
+ const environment = getEnvironmentFromArgs(client, args);
8
+ if (!environment?.lunarIndexerUrl) {
9
+ throw new Error("Independent shared liquidity requires a configured Lunar Indexer environment");
10
+ }
11
+ if (args.markets.some((market) => market.chainId !== environment.chainId)) {
12
+ throw new Error("Shared-liquidity markets must belong to the requested chain");
13
+ }
14
+ if (args.markets.length === 0)
15
+ return [];
16
+ const marketParamsMap = new Map(args.markets.map((market) => [
17
+ market.marketId.toLowerCase(),
18
+ {
19
+ oracle: market.marketParams.oracle,
20
+ irm: market.marketParams.irm,
21
+ lltv: market.marketParams.lltv.toString(),
22
+ // Display token metadata can use the native-token zero address for ETH.
23
+ // Allocator transactions need the actual ERC20 addresses from Morpho.
24
+ loanToken: {
25
+ address: market.marketParams.loanToken,
26
+ decimals: market.loanToken.decimals,
27
+ },
28
+ collateralToken: {
29
+ address: market.marketParams.collateralToken,
30
+ decimals: market.collateralToken.decimals,
31
+ },
32
+ },
33
+ ]));
34
+ try {
35
+ const data = await fetchSharedLiquidityFromLunar(environment.lunarIndexerUrl, environment.chainId, args);
36
+ return computeSharedLiquidityFromLunar(data, args.markets.map((market) => market.marketId), marketParamsMap, environment.chainId);
37
+ }
38
+ catch (error) {
39
+ if (!args.signal?.aborted) {
40
+ environment.onError?.(error, {
41
+ source: "morpho-shared-liquidity",
42
+ chainId: environment.chainId,
43
+ });
44
+ }
45
+ throw error;
46
+ }
47
+ }
48
+ //# sourceMappingURL=getMorphoMarketsSharedLiquidity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getMorphoMarketsSharedLiquidity.js","sourceRoot":"","sources":["../../../../actions/morpho/markets/getMorphoMarketsSharedLiquidity.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAOlE,OAAO,EACL,+BAA+B,EAC/B,6BAA6B,GAC9B,MAAM,aAAa,CAAC;AAiBrB;;gFAEgF;AAChF,MAAM,CAAC,KAAK,UAAU,+BAA+B,CAInD,MAAsB,EACtB,IAAsE;IAEtE,MAAM,WAAW,GAAG,sBAAsB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACzD,IAAI,CAAC,WAAW,EAAE,eAAe,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CACb,8EAA8E,CAC/E,CAAC;IACJ,CAAC;IACD,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,KAAK,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC;QAC1E,MAAM,IAAI,KAAK,CACb,6DAA6D,CAC9D,CAAC;IACJ,CAAC;IACD,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAEzC,MAAM,eAAe,GAAG,IAAI,GAAG,CAC7B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC;QAC3B,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE;QAC7B;YACE,MAAM,EAAE,MAAM,CAAC,YAAY,CAAC,MAAM;YAClC,GAAG,EAAE,MAAM,CAAC,YAAY,CAAC,GAAG;YAC5B,IAAI,EAAE,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,EAAE;YACzC,wEAAwE;YACxE,sEAAsE;YACtE,SAAS,EAAE;gBACT,OAAO,EAAE,MAAM,CAAC,YAAY,CAAC,SAAS;gBACtC,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ;aACpC;YACD,eAAe,EAAE;gBACf,OAAO,EAAE,MAAM,CAAC,YAAY,CAAC,eAAe;gBAC5C,QAAQ,EAAE,MAAM,CAAC,eAAe,CAAC,QAAQ;aAC1C;SACF;KACF,CAAC,CACH,CAAC;IACF,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,6BAA6B,CAC9C,WAAW,CAAC,eAAe,EAC3B,WAAW,CAAC,OAAO,EACnB,IAAI,CACL,CAAC;QACF,OAAO,+BAA+B,CACpC,IAAI,EACJ,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,EAC7C,eAAe,EACf,WAAW,CAAC,OAAO,CACpB,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC;YAC1B,WAAW,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE;gBAC3B,MAAM,EAAE,yBAAyB;gBACjC,OAAO,EAAE,WAAW,CAAC,OAAO;aAC7B,CAAC,CAAC;QACL,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
@@ -22,31 +22,38 @@ export async function getMorphoVaultUserPositionsData(params) {
22
22
  });
23
23
  }
24
24
  export async function getMorphoMarketUserPositionsData(params) {
25
- const markets = Object.values(params.environment.config.morphoMarkets).filter((market) => (params.markets ? params.markets.includes(market.id) : true));
26
- try {
27
- const userMarketPositions = await params.environment.contracts.morphoViews.read.getMorphoBlueUserBalances([markets.map((market) => market.id), params.account]);
28
- return markets.map((market, index) => {
29
- const position = userMarketPositions[index];
30
- const loanToken = params.environment.config.tokens[market.loanToken];
31
- const collateralToken = params.environment.config.tokens[market.collateralToken];
32
- const supplied = new Amount(position.collateralAssets, collateralToken.decimals);
33
- const borrowed = new Amount(position.loanAssets, loanToken.decimals);
34
- const borrowedShares = new Amount(position.loanShares, loanToken.decimals + 6);
35
- const result = {
36
- chainId: params.environment.chainId,
37
- account: params.account,
38
- marketId: market.id,
39
- loanToken,
40
- collateralToken,
41
- supplied,
42
- borrowed,
43
- borrowedShares,
44
- };
45
- return result;
46
- });
47
- }
48
- catch (error) {
25
+ // A chain without a Morpho deployment has no positions to read. Both the
26
+ // plural action and the singular getMorphoMarketUserPosition come through
27
+ // here, so the guard lives at the source rather than in each caller.
28
+ const morphoViews = params.environment.contracts.morphoViews;
29
+ if (!morphoViews) {
49
30
  return [];
50
31
  }
32
+ const markets = Object.values(params.environment.config.morphoMarkets).filter((market) => (params.markets ? params.markets.includes(market.id) : true));
33
+ // A failed read must propagate: swallowing it here made a Base RPC outage
34
+ // look like "user has no isolated positions" (MOO-884).
35
+ const userMarketPositions = await morphoViews.read.getMorphoBlueUserBalances([
36
+ markets.map((market) => market.id),
37
+ params.account,
38
+ ]);
39
+ return markets.map((market, index) => {
40
+ const position = userMarketPositions[index];
41
+ const loanToken = params.environment.config.tokens[market.loanToken];
42
+ const collateralToken = params.environment.config.tokens[market.collateralToken];
43
+ const supplied = new Amount(position.collateralAssets, collateralToken.decimals);
44
+ const borrowed = new Amount(position.loanAssets, loanToken.decimals);
45
+ const borrowedShares = new Amount(position.loanShares, loanToken.decimals + 6);
46
+ const result = {
47
+ chainId: params.environment.chainId,
48
+ account: params.account,
49
+ marketId: market.id,
50
+ loanToken,
51
+ collateralToken,
52
+ supplied,
53
+ borrowed,
54
+ borrowedShares,
55
+ };
56
+ return result;
57
+ });
51
58
  }
52
59
  //# sourceMappingURL=common.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"common.js","sourceRoot":"","sources":["../../../../actions/morpho/user-positions/common.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"common.js","sourceRoot":"","sources":["../../../../actions/morpho/user-positions/common.ts"],"names":[],"mappings":"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"}