@1delta/margin-fetcher 0.0.234 → 0.0.236

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 (32) hide show
  1. package/dist/flash-liquidity/fetchLiquidity.d.ts.map +1 -1
  2. package/dist/index.d.ts +1 -0
  3. package/dist/index.d.ts.map +1 -1
  4. package/dist/index.js +362 -10
  5. package/dist/index.js.map +1 -1
  6. package/dist/lending/public-data/fetchLender.d.ts.map +1 -1
  7. package/dist/lending/public-data/fluid/index.d.ts +3 -0
  8. package/dist/lending/public-data/fluid/index.d.ts.map +1 -0
  9. package/dist/lending/public-data/fluid/publicCallBuild.d.ts +49 -0
  10. package/dist/lending/public-data/fluid/publicCallBuild.d.ts.map +1 -0
  11. package/dist/lending/public-data/fluid/publicCallParse.d.ts +18 -0
  12. package/dist/lending/public-data/fluid/publicCallParse.d.ts.map +1 -0
  13. package/dist/utils/index.d.ts +1 -1
  14. package/dist/utils/index.d.ts.map +1 -1
  15. package/dist/utils/marketName.d.ts.map +1 -1
  16. package/dist/vaults/fluid/fetchPublic.d.ts +21 -0
  17. package/dist/vaults/fluid/fetchPublic.d.ts.map +1 -0
  18. package/dist/vaults/fluid/index.d.ts +5 -0
  19. package/dist/vaults/fluid/index.d.ts.map +1 -0
  20. package/dist/vaults/fluid/publicCallBuild.d.ts +16 -0
  21. package/dist/vaults/fluid/publicCallBuild.d.ts.map +1 -0
  22. package/dist/vaults/fluid/publicCallParse.d.ts +15 -0
  23. package/dist/vaults/fluid/publicCallParse.d.ts.map +1 -0
  24. package/dist/vaults/fluid/types.d.ts +57 -0
  25. package/dist/vaults/fluid/types.d.ts.map +1 -0
  26. package/dist/vaults/index.d.ts +2 -0
  27. package/dist/vaults/index.d.ts.map +1 -0
  28. package/dist/yields/intrinsic/fetchers/avant.d.ts +5 -0
  29. package/dist/yields/intrinsic/fetchers/avant.d.ts.map +1 -0
  30. package/dist/yields/intrinsic/fetchers/lido.d.ts.map +1 -1
  31. package/dist/yields/intrinsic/index.d.ts.map +1 -1
  32. package/package.json +14 -14
@@ -1 +1 @@
1
- {"version":3,"file":"fetchLiquidity.d.ts","sourceRoot":"","sources":["../../src/flash-liquidity/fetchLiquidity.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,sBAAsB,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAE5D,OAAO,EAAE,uBAAuB,EAAgB,MAAM,SAAS,CAAA;AAwB/D,wBAAsB,2BAA2B,CAC/C,KAAK,EAAE,MAAM,EACb,cAAc,EAAE,sBAAsB,EACtC,IAAI,GAAE,SAAc,oCA6PrB"}
1
+ {"version":3,"file":"fetchLiquidity.d.ts","sourceRoot":"","sources":["../../src/flash-liquidity/fetchLiquidity.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,sBAAsB,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAE5D,OAAO,EAAE,uBAAuB,EAAgB,MAAM,SAAS,CAAA;AA2B/D,wBAAsB,2BAA2B,CAC/C,KAAK,EAAE,MAAM,EACb,cAAc,EAAE,sBAAsB,EACtC,IAAI,GAAE,SAAc,oCA+PrB"}
package/dist/index.d.ts CHANGED
@@ -4,6 +4,7 @@ export { fetchGeneralYields, fetchGeneralYieldsByMarketUid } from './yields';
4
4
  export { fetchPendlePrices, fetchOraclePrices, selectAssetGroupPrices, type TokenListInput, type FetchOraclePricesOptions, type OraclePriceEntry, type StructuredOraclePrices, type USDPriceMap, type MorphoMarketOverrides, type ListaMarketOverrides, type OracleDiagnostics, type OraclePricesResult, type ChainDiagnostic, type TrackerDiagnostic, type StaleFeedEntry, } from './prices';
5
5
  export { getLendersForChain, filterLendersByProtocol, getAavesForChain, getLenderAssets, isCompoundV3, isCompoundV3Type, isInit, isMorphoType, isAaveV3Type, isAaveV2Type, isYLDR, isAaveV32Type, isAaveType, isMultiMarket, createMarketUid, } from './utils';
6
6
  export { fetchFlashLiquidityForChain, attachPricesToFlashLiquidity, } from './flash-liquidity';
7
+ export { buildFluidFTokensCall, getFluidFTokensConverter, fetchFluidFTokens, type FluidFToken, type FluidFTokens, } from './vaults';
7
8
  export { type GenericCurrency, type GenericTokenList, type ParsedResponse, type ChainLinkResponse, type LenderRewardsMap, type NumberMap, type FullLenderRewardsMap, type AdditionalYields, type TokenList, type LenderUserQuery, type UserLendingPosition, type LenderUserResponse, type AaveV2UserReserveResponse, type AaveV3UserReserveResponse, type MorphoUserReserveResponse, type CompoundV3UserReserveResponse, type AaveV3Public, type LenderPublicBase, type LenderYields, type LenderTotalAmounts, type LenderConfigMap, type LenderConfigData, type ModeBase, type EModeData, type AaveV2Public, type CompoundV3Public, type UserApr, type InitUserReserveResponse, type InitPublic, type LenderData, type PoolData, type ConfigEntry, } from './types';
8
9
  export { computeDepositDelta, computeWithdrawDelta, computeBorrowDelta, computeRepayDelta, getHealthFactor, getBorrowCapacity, getAssetConfig, computePostTradeMetrics, EMPTY_BALANCE, } from './lending/margin/base';
9
10
  export type { PostTradeMetrics } from './lending/margin/base';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,14 +1,14 @@
1
1
  import { parseAbi, formatEther, BaseError, encodeFunctionData, formatUnits, decodeFunctionResult, decodeAbiParameters, AbiEncodingLengthMismatchError, concatHex, isAddress, InvalidAddressError, pad, stringToHex, boolToHex, integerRegex, numberToHex, bytesRegex, BytesSizeMismatchError, arrayRegex, UnsupportedPackedAbiType } from './chunk-ZVIJSUIM.js';
2
2
  import './chunk-BYTNVMX7.js';
3
3
  import './chunk-PR4QN5HX.js';
4
- import { Lender, isAaveType, isCompoundV3, isMultiMarket, isSiloV2Type, isSiloV3Type, isAaveV4Type, isInit, isMorphoType, isCompoundV2Type, isVenusType, isSumerType, AAVE_V3_LENDERS, AAVE_V2_LENDERS, isAaveV2Type, isAaveV32Type, isAaveV3Type, isEulerType, isYLDR, isCompoundV3Type, isLista, isTectonicType, isBenqiType } from '@1delta/lender-registry';
4
+ import { Lender, isAaveType, isCompoundV3, isMultiMarket, isSiloV2Type, isSiloV3Type, isAaveV4Type, isInit, isMorphoType, isCompoundV2Type, isVenusType, isSumerType, AAVE_V3_LENDERS, AAVE_V2_LENDERS, isAaveV2Type, isAaveV32Type, isAaveV3Type, isEulerType, isFluid, isYLDR, isCompoundV3Type, isLista, isTectonicType, isBenqiType } from '@1delta/lender-registry';
5
5
  export { isAaveType, isAaveV2Type, isAaveV32Type, isAaveV3Type, isCompoundV3, isCompoundV3Type, isInit, isMorphoType, isMultiMarket, isYLDR } from '@1delta/lender-registry';
6
6
  import lodash from 'lodash';
7
7
  import { getEvmChain, getEvmClient, getEvmClientUniversal, multicallRetryUniversal } from '@1delta/providers';
8
- import { MorphoLensAbi, AaveV4SpokeAbi, AaveV4OracleAbi, AaveV4HubAbi, MorphoBlueAbi } from '@1delta/abis';
8
+ import { FluidLendingResolverAbi, MorphoLensAbi, AaveV4SpokeAbi, AaveV4OracleAbi, AaveV4HubAbi, FluidVaultResolverAbi, MorphoBlueAbi } from '@1delta/abis';
9
9
  export { MorphoLensAbi } from '@1delta/abis';
10
10
  import { prepareDebitDataMulticall, prepareLenderDebitMulticall, parseDebitDataResult, parseLenderDebitResult, getPermit2ContractAddress, getCompoundV3CometAddress as getCompoundV3CometAddress$1, getMorphoAddress, getAaveCollateralTokenAddress, getSiloHalfForUnderlying, InitMarginAddresses } from '@1delta/calldata-sdk';
11
- import { BALANCER_V2_FORKS, BALANCER_V3_FORKS, UNISWAP_V4_FORKS, FLASH_LOAN_IDS } from '@1delta/dex-registry';
11
+ import { BALANCER_V2_FORKS, BALANCER_V3_FORKS, UNISWAP_V4_FORKS, isFlashLoanSourceExcluded, FLASH_LOAN_IDS } from '@1delta/dex-registry';
12
12
 
13
13
  // src/abis/aave-v2/ProtocolDataProvider.ts
14
14
  var ProtocolDataProviderAbi = [
@@ -6281,7 +6281,9 @@ globalThis[GLOBAL_LENDER_DATA_KEY] = {
6281
6281
  siloMarkets: {},
6282
6282
  siloPeripherals: {},
6283
6283
  siloMarketsV3: {},
6284
- siloPeripheralsV3: {}
6284
+ siloPeripheralsV3: {},
6285
+ fluidResolvers: {},
6286
+ fluidVaults: {}
6285
6287
  };
6286
6288
  function getGlobalData2() {
6287
6289
  return globalThis[GLOBAL_LENDER_DATA_KEY];
@@ -6309,6 +6311,7 @@ var aaveV4Spokes = () => getGlobalData2()?.aaveV4Spokes;
6309
6311
  var aaveV4Oracles = () => getGlobalData2()?.aaveV4Oracles;
6310
6312
  var siloMarkets = () => getGlobalData2()?.siloMarkets;
6311
6313
  var siloMarketsV3 = () => getGlobalData2()?.siloMarketsV3;
6314
+ var fluidResolvers = () => getGlobalData2()?.fluidResolvers;
6312
6315
  function aaveV4SpokeLenderKey(spoke) {
6313
6316
  if (!spoke || !spoke.startsWith("0x") || spoke.length !== 42) {
6314
6317
  throw new Error(`aaveV4SpokeLenderKey: invalid spoke address ${spoke}`);
@@ -6402,6 +6405,7 @@ var LENDER_SHORT_NAMES = {
6402
6405
  [Lender.COMPOUND_V3_WETH]: "Comp. WETH",
6403
6406
  [Lender.COMPOUND_V3_WSTETH]: "Comp. wstETH",
6404
6407
  [Lender.EULER_V2]: "Euler V2",
6408
+ [Lender.FLUID]: "Fluid",
6405
6409
  [Lender.FLUX_FINANCE]: "Flux",
6406
6410
  [Lender.GRANARY]: "Granary",
6407
6411
  [Lender.HANA]: "Hana",
@@ -6412,7 +6416,7 @@ var LENDER_SHORT_NAMES = {
6412
6416
  [Lender.MERIDIAN]: "Meridian"
6413
6417
  };
6414
6418
  function formatUnderscoreString(input) {
6415
- const _in = input.replace("MORPHO_BLUE", "MB");
6419
+ const _in = input.replace("MORPHO_BLUE", "MB").replace(/^FLUID_/, "Fluid ");
6416
6420
  return _in.split("_").map((word, index) => {
6417
6421
  if (index === 0) {
6418
6422
  return word.charAt(0).toUpperCase() + word.slice(1).toLowerCase();
@@ -6421,6 +6425,7 @@ function formatUnderscoreString(input) {
6421
6425
  }).join(" ");
6422
6426
  }
6423
6427
  function lenderShortName(lender) {
6428
+ if (lender?.startsWith("FLUID")) return "Fluid";
6424
6429
  return LENDER_SHORT_NAMES[lender] ?? formatUnderscoreString(lender);
6425
6430
  }
6426
6431
 
@@ -19140,8 +19145,211 @@ var getSiloV3ReservesDataConverter = (lender, chainId, prices, additionalYields,
19140
19145
  SILO_V3_CALLS_PER_PAIR
19141
19146
  ];
19142
19147
  };
19148
+ var { chunk: chunk4 } = lodash;
19149
+ var buildFluidCall = (chainId, _lender) => {
19150
+ const resolvers = fluidResolvers()?.[chainId];
19151
+ if (!resolvers) return [];
19152
+ return [
19153
+ {
19154
+ address: resolvers.vaultResolver,
19155
+ name: "getVaultsEntireData",
19156
+ params: []
19157
+ }
19158
+ ];
19159
+ };
19143
19160
 
19144
- // src/lending/public-data/fetchLender.ts
19161
+ // src/lending/public-data/fluid/publicCallParse.ts
19162
+ var FLUID_EEE_LOWER = "0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee";
19163
+ var normalizeUnderlying = (addr) => addr === FLUID_EEE_LOWER ? zeroAddress : addr;
19164
+ var FLUID_RATE_SCALE = 100;
19165
+ var scaleFluidRate = (raw) => {
19166
+ if (raw === void 0 || raw === null) return 0;
19167
+ return Number(raw) / FLUID_RATE_SCALE;
19168
+ };
19169
+ var getFluidPublicDataConverter = (_lender, chainId, prices, additionalYields, tokenList = {}) => {
19170
+ const expectedNumberOfCalls = 1;
19171
+ return [
19172
+ (data) => {
19173
+ if (data.length !== expectedNumberOfCalls) return void 0;
19174
+ const [vaultEntireData] = data;
19175
+ const out = {};
19176
+ for (const vault of vaultEntireData ?? []) {
19177
+ const parsed = parseVault(
19178
+ vault,
19179
+ chainId,
19180
+ prices,
19181
+ additionalYields,
19182
+ tokenList
19183
+ );
19184
+ if (parsed) {
19185
+ out[parsed.lender] = {
19186
+ data: parsed.data,
19187
+ params: parsed.params,
19188
+ chainId
19189
+ };
19190
+ }
19191
+ }
19192
+ return out;
19193
+ },
19194
+ expectedNumberOfCalls
19195
+ ];
19196
+ };
19197
+ function parseVault(vault, chainId, prices, additionalYields, tokenList) {
19198
+ const vaultAddress = (vault.vault ?? "").toLowerCase();
19199
+ const constants = vault.constantVariables;
19200
+ const configs = vault.configs;
19201
+ const rates = vault.exchangePricesAndRates;
19202
+ const totals = vault.totalSupplyAndBorrow;
19203
+ const limits = vault.limitsAndAvailability;
19204
+ if (!vaultAddress || !constants || !configs || !rates || !totals) {
19205
+ return void 0;
19206
+ }
19207
+ if (vault.isSmartCol || vault.isSmartDebt) return void 0;
19208
+ const rawCollateral = (constants.supplyToken?.token0 ?? constants.supplyToken ?? "").toString().toLowerCase();
19209
+ const rawLoan = (constants.borrowToken?.token0 ?? constants.borrowToken ?? "").toString().toLowerCase();
19210
+ if (!rawCollateral || !rawLoan) return void 0;
19211
+ const collateralAddress = normalizeUnderlying(rawCollateral);
19212
+ const loanAddress = normalizeUnderlying(rawLoan);
19213
+ const vaultId = Number(constants.vaultId ?? 0);
19214
+ const lender = `FLUID_${vaultId}`;
19215
+ const collateralMeta = tokenList[collateralAddress];
19216
+ const loanMeta = tokenList[loanAddress];
19217
+ const colDecimals = Number(
19218
+ constants.supplyDecimals ?? collateralMeta?.decimals ?? 18
19219
+ );
19220
+ const borrowDecimals = Number(
19221
+ constants.borrowDecimals ?? loanMeta?.decimals ?? 18
19222
+ );
19223
+ const totalSupply = Number(
19224
+ parseRawAmount(totals.totalSupplyVault?.toString(), colDecimals)
19225
+ );
19226
+ const totalBorrow = Number(
19227
+ parseRawAmount(totals.totalBorrowVault?.toString(), borrowDecimals)
19228
+ );
19229
+ const borrowable = Number(
19230
+ parseRawAmount(limits?.borrowable?.toString(), borrowDecimals)
19231
+ );
19232
+ const collateralPriceKey = toOracleKey(collateralMeta?.assetGroup) ?? toGenericPriceKey(collateralAddress, chainId);
19233
+ const loanPriceKey = toOracleKey(loanMeta?.assetGroup) ?? toGenericPriceKey(loanAddress, chainId);
19234
+ const collateralPrice = prices[collateralPriceKey] ?? 0;
19235
+ const loanPrice = prices[loanPriceKey] ?? 0;
19236
+ const ltv = Number(configs.collateralFactor ?? 0) / BPS;
19237
+ const liquidationThreshold = Number(configs.liquidationThreshold ?? 0) / BPS;
19238
+ const liquidationPenalty = Number(configs.liquidationPenalty ?? 0) / BPS;
19239
+ const supplyRate = scaleFluidRate(rates.supplyRateVault);
19240
+ const borrowRate = scaleFluidRate(rates.borrowRateVault);
19241
+ const utilization = totalSupply > 0 ? totalBorrow / totalSupply : 0;
19242
+ const data = {};
19243
+ const collateralMarketUid = createMarketUid(chainId, lender, collateralAddress);
19244
+ data[collateralMarketUid] = {
19245
+ marketUid: collateralMarketUid,
19246
+ name: "Collateral " + (collateralMeta?.symbol ?? ""),
19247
+ poolId: collateralAddress,
19248
+ underlying: collateralAddress,
19249
+ asset: collateralMeta,
19250
+ totalDeposits: totalSupply,
19251
+ totalDebtStable: 0,
19252
+ totalDebt: 0,
19253
+ totalLiquidity: totalSupply,
19254
+ borrowLiquidity: 0,
19255
+ totalDepositsUSD: totalSupply * collateralPrice,
19256
+ totalDebtStableUSD: 0,
19257
+ totalDebtUSD: 0,
19258
+ totalLiquidityUSD: totalSupply * collateralPrice,
19259
+ borrowLiquidityUSD: 0,
19260
+ utilization: 0,
19261
+ depositRate: supplyRate,
19262
+ // vault collateral earns the supply side rate
19263
+ variableBorrowRate: 0,
19264
+ stableBorrowRate: 0,
19265
+ intrinsicYield: additionalYields?.intrinsicYields?.[collateralPriceKey] ?? 0,
19266
+ rewards: [],
19267
+ decimals: colDecimals,
19268
+ config: {
19269
+ "0": {
19270
+ category: 0,
19271
+ borrowCollateralFactor: ltv,
19272
+ collateralFactor: liquidationThreshold,
19273
+ borrowFactor: 1,
19274
+ collateralDisabled: false,
19275
+ debtDisabled: true
19276
+ }
19277
+ },
19278
+ liquidationBonus: liquidationPenalty,
19279
+ collateralActive: true,
19280
+ borrowingEnabled: false,
19281
+ depositsEnabled: true,
19282
+ hasStable: false,
19283
+ isActive: true,
19284
+ isFrozen: false
19285
+ };
19286
+ const loanMarketUid = createMarketUid(chainId, lender, loanAddress);
19287
+ data[loanMarketUid] = {
19288
+ marketUid: loanMarketUid,
19289
+ name: "Loan " + (loanMeta?.symbol ?? ""),
19290
+ poolId: loanAddress,
19291
+ underlying: loanAddress,
19292
+ asset: loanMeta,
19293
+ totalDeposits: 0,
19294
+ totalDebtStable: 0,
19295
+ totalDebt: totalBorrow,
19296
+ totalLiquidity: borrowable,
19297
+ borrowLiquidity: borrowable,
19298
+ totalDepositsUSD: 0,
19299
+ totalDebtStableUSD: 0,
19300
+ totalDebtUSD: totalBorrow * loanPrice,
19301
+ totalLiquidityUSD: borrowable * loanPrice,
19302
+ borrowLiquidityUSD: borrowable * loanPrice,
19303
+ utilization,
19304
+ depositRate: 0,
19305
+ variableBorrowRate: borrowRate,
19306
+ stableBorrowRate: 0,
19307
+ intrinsicYield: additionalYields?.intrinsicYields?.[loanPriceKey] ?? 0,
19308
+ rewards: [],
19309
+ decimals: borrowDecimals,
19310
+ config: {
19311
+ "0": {
19312
+ category: 0,
19313
+ borrowCollateralFactor: 0,
19314
+ collateralFactor: 0,
19315
+ borrowFactor: 1,
19316
+ collateralDisabled: true,
19317
+ debtDisabled: false
19318
+ }
19319
+ },
19320
+ liquidationBonus: 0,
19321
+ collateralActive: false,
19322
+ borrowingEnabled: true,
19323
+ depositsEnabled: false,
19324
+ hasStable: false,
19325
+ isActive: true,
19326
+ isFrozen: false
19327
+ };
19328
+ return {
19329
+ lender,
19330
+ data,
19331
+ params: {
19332
+ vault: {
19333
+ lender,
19334
+ vaultAddress,
19335
+ vaultId,
19336
+ collateralAddress,
19337
+ loanAddress,
19338
+ collateralDecimals: colDecimals,
19339
+ loanDecimals: borrowDecimals,
19340
+ oracle: configs.oracle,
19341
+ rebalancer: configs.rebalancer,
19342
+ liquidationThreshold,
19343
+ ltv,
19344
+ liquidationPenalty,
19345
+ oraclePriceOperate: configs.oraclePriceOperate?.toString(),
19346
+ oraclePriceLiquidate: configs.oraclePriceLiquidate?.toString(),
19347
+ isSmartCol: !!vault.isSmartCol,
19348
+ isSmartDebt: !!vault.isSmartDebt
19349
+ }
19350
+ }
19351
+ };
19352
+ }
19145
19353
  function getMorphoTypeMarketConverter(lender, chainId, prices, additionalYields, tokenList = {}, marketsOverride) {
19146
19354
  if (lender.startsWith("LISTA_DAO"))
19147
19355
  return getListaMarketDataConverter(
@@ -19178,6 +19386,7 @@ function buildLenderCall(chainId, lender) {
19178
19386
  if (isAaveV4Type(lender)) return buildAaveV4LenderReserveCall(chainId, lender);
19179
19387
  if (isSiloV2Type(lender)) return buildSiloV2LenderReserveCall(chainId, lender);
19180
19388
  if (isSiloV3Type(lender)) return buildSiloV3LenderReserveCall(chainId, lender);
19389
+ if (isFluid(lender)) return buildFluidCall(chainId);
19181
19390
  return [];
19182
19391
  }
19183
19392
  function getLenderDataConverter(lender, chainId, prices, additionalYields, tokenList = {}) {
@@ -19262,6 +19471,14 @@ function getLenderDataConverter(lender, chainId, prices, additionalYields, token
19262
19471
  additionalYields,
19263
19472
  tokenList
19264
19473
  );
19474
+ if (isFluid(lender))
19475
+ return getFluidPublicDataConverter(
19476
+ lender,
19477
+ chainId,
19478
+ prices,
19479
+ additionalYields,
19480
+ tokenList
19481
+ );
19265
19482
  return [() => null, 0];
19266
19483
  }
19267
19484
  var getAbi = (lender) => {
@@ -19286,6 +19503,8 @@ var getAbi = (lender) => {
19286
19503
  return [...SiloAbi, ...SiloLensAbi, ...InterestRateModelV2Abi];
19287
19504
  if (isSiloV3Type(lender))
19288
19505
  return [...SiloAbi, ...SiloLensAbi, ...InterestRateModelV2Abi];
19506
+ if (isFluid(lender))
19507
+ return [...FluidVaultResolverAbi];
19289
19508
  if (isSumerType(lender)) return [...SumerLensAbi, ...SumerComptrollerAbi];
19290
19509
  if (lender === Lender.TAKARA) return [...TakaraMarketStateAbi];
19291
19510
  if (isCompoundV2Type(lender)) return VenusLensAbi;
@@ -28634,10 +28853,32 @@ async function getListsMulti(chainIds) {
28634
28853
  // src/yields/intrinsic/fetchers/lido.ts
28635
28854
  var WSTETH_URL = "https://eth-api.lido.fi/v1/protocol/steth/apr/sma";
28636
28855
  var tETH = "Treehouse ETH::TETH";
28856
+ var robustFetchJson = async (url, { timeoutMs = 5e3, attempts = 3 } = {}) => {
28857
+ let lastErr;
28858
+ for (let i = 0; i < attempts; i++) {
28859
+ try {
28860
+ const res = await fetch(url, {
28861
+ headers: {
28862
+ accept: "application/json",
28863
+ "user-agent": "1delta-margin-fetcher"
28864
+ },
28865
+ signal: AbortSignal.timeout(timeoutMs)
28866
+ });
28867
+ if (!res.ok) throw new Error(`HTTP ${res.status}`);
28868
+ return await res.json();
28869
+ } catch (e) {
28870
+ lastErr = e;
28871
+ if (i < attempts - 1) {
28872
+ await new Promise((r) => setTimeout(r, 250 * (i + 1)));
28873
+ }
28874
+ }
28875
+ }
28876
+ throw lastErr;
28877
+ };
28637
28878
  var wstethFetcher = {
28638
28879
  label: "WSTETH",
28639
28880
  fetch: async () => {
28640
- const res = await fetch(WSTETH_URL).then((r) => r.json());
28881
+ const res = await robustFetchJson(WSTETH_URL);
28641
28882
  const apr = Number(res.data.aprs.at(-1).apr) * 0.9;
28642
28883
  return {
28643
28884
  WSTETH: apr,
@@ -29596,6 +29837,29 @@ var infinifiFetcher = {
29596
29837
  }
29597
29838
  };
29598
29839
 
29840
+ // src/yields/intrinsic/fetchers/avant.ts
29841
+ var AVANT_BASE = "https://app.avantprotocol.com/api/apy";
29842
+ var sAVUSD = "Staked avUSD::savUSD";
29843
+ var sAVETH = "Staked avETH::savETH";
29844
+ var sAVBTC = "Staked avBTC::savBTC";
29845
+ var fetchAvantApr = async (slug) => {
29846
+ const res = await fetch(`${AVANT_BASE}/${slug}`).then((r) => r.json());
29847
+ const apy = Number(res?.apy ?? 0);
29848
+ return apyToAprPercent(apy);
29849
+ };
29850
+ var savusdFetcher = {
29851
+ label: "SAVUSD",
29852
+ fetch: async () => ({ [sAVUSD]: await fetchAvantApr("savusd") })
29853
+ };
29854
+ var savethFetcher = {
29855
+ label: "SAVETH",
29856
+ fetch: async () => ({ [sAVETH]: await fetchAvantApr("saveth") })
29857
+ };
29858
+ var savbtcFetcher = {
29859
+ label: "SAVBTC",
29860
+ fetch: async () => ({ [sAVBTC]: await fetchAvantApr("savbtc") })
29861
+ };
29862
+
29599
29863
  // src/yields/intrinsic/index.ts
29600
29864
  async function fetchIntrinsicYields() {
29601
29865
  const wstethPromise = safeFetch(wstethFetcher.label, wstethFetcher.fetch);
@@ -29648,7 +29912,10 @@ async function fetchIntrinsicYields() {
29648
29912
  susdfFetcher,
29649
29913
  midasFetcher,
29650
29914
  capFetcher,
29651
- infinifiFetcher
29915
+ infinifiFetcher,
29916
+ savusdFetcher,
29917
+ savethFetcher,
29918
+ savbtcFetcher
29652
29919
  ];
29653
29920
  const results = await Promise.all([
29654
29921
  wstethPromise,
@@ -32285,7 +32552,9 @@ async function fetchFlashLiquidityForChain(chain, multicallRetry, list = {}) {
32285
32552
  let aaveAssets = {};
32286
32553
  let aaveCalls = [];
32287
32554
  const aaves = getAavesForChain();
32288
- const aaveProtocols = aaves[chain] ?? [];
32555
+ const aaveProtocols = (aaves[chain] ?? []).filter(
32556
+ (l) => !isFlashLoanSourceExcluded(chain, l)
32557
+ );
32289
32558
  const allAaveUnderlyings = [];
32290
32559
  aaveProtocols.forEach((aaveFork) => {
32291
32560
  const underlyingsAndATokens = Object.entries(
@@ -32487,6 +32756,89 @@ function attachPricesToFlashLiquidity(chainId, liq, prices, list = {}) {
32487
32756
  return liqCopy;
32488
32757
  }
32489
32758
 
32759
+ // src/vaults/fluid/publicCallBuild.ts
32760
+ var buildFluidFTokensCall = (chainId) => {
32761
+ const resolvers = fluidResolvers()?.[chainId];
32762
+ if (!resolvers) return [];
32763
+ return [
32764
+ {
32765
+ address: resolvers.lendingResolver,
32766
+ name: "getFTokensEntireData",
32767
+ params: []
32768
+ }
32769
+ ];
32770
+ };
32771
+
32772
+ // src/vaults/fluid/publicCallParse.ts
32773
+ var FLUID_EEE_LOWER2 = "0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee";
32774
+ var normalizeUnderlying2 = (addr) => addr === FLUID_EEE_LOWER2 ? zeroAddress : addr;
32775
+ var FLUID_RATE_SCALE2 = 100;
32776
+ var scaleFluidRate2 = (raw) => {
32777
+ if (raw === void 0 || raw === null) return 0;
32778
+ return Number(raw) / FLUID_RATE_SCALE2;
32779
+ };
32780
+ var getFluidFTokensConverter = (chainId, prices = {}, tokenList = {}) => {
32781
+ const expectedNumberOfCalls = 1;
32782
+ return [
32783
+ (data) => {
32784
+ if (data.length !== expectedNumberOfCalls) return void 0;
32785
+ const [fTokenDetails] = data;
32786
+ return parseFTokens(fTokenDetails ?? [], chainId, prices, tokenList);
32787
+ },
32788
+ expectedNumberOfCalls
32789
+ ];
32790
+ };
32791
+ function parseFTokens(fTokens, chainId, prices, tokenList) {
32792
+ const out = {};
32793
+ for (const ft of fTokens) {
32794
+ const rawAsset = (ft.asset ?? "").toString().toLowerCase();
32795
+ if (!rawAsset) continue;
32796
+ const underlying = normalizeUnderlying2(rawAsset);
32797
+ const assetMeta = tokenList[underlying];
32798
+ const decimals = Number(ft.decimals ?? assetMeta?.decimals ?? 18);
32799
+ const totalAssetsFormatted = Number(
32800
+ parseRawAmount(ft.totalAssets?.toString(), decimals)
32801
+ );
32802
+ const oracleKey = toOracleKey(assetMeta?.assetGroup) ?? toGenericPriceKey(underlying, chainId);
32803
+ const priceUsd = prices[oracleKey] ?? 0;
32804
+ const supplyRate = scaleFluidRate2(ft.supplyRate);
32805
+ const rewardsRate = scaleFluidRate2(ft.rewardsRate);
32806
+ const entry = {
32807
+ address: ft.tokenAddress,
32808
+ underlying,
32809
+ symbol: ft.symbol ?? "",
32810
+ name: ft.name ?? "",
32811
+ decimals,
32812
+ totalAssets: ft.totalAssets?.toString() ?? "0",
32813
+ totalSupply: ft.totalSupply?.toString() ?? "0",
32814
+ convertToShares: ft.convertToShares?.toString() ?? "0",
32815
+ convertToAssets: ft.convertToAssets?.toString() ?? "0",
32816
+ supplyRate,
32817
+ rewardsRate,
32818
+ depositRate: supplyRate + rewardsRate,
32819
+ isNativeUnderlying: !!ft.isNativeUnderlying,
32820
+ eip2612Deposits: !!ft.eip2612Deposits,
32821
+ asset: assetMeta,
32822
+ priceUsd: priceUsd || void 0,
32823
+ totalAssetsFormatted,
32824
+ totalAssetsUsd: totalAssetsFormatted * priceUsd
32825
+ };
32826
+ out[underlying] = entry;
32827
+ }
32828
+ return out;
32829
+ }
32830
+ var fetchFluidFTokens = async (chainId, multicallRetry, prices = {}, tokenList = {}) => {
32831
+ const calls = buildFluidFTokensCall(chainId);
32832
+ if (calls.length === 0) return {};
32833
+ const raw = await multicallRetry({
32834
+ chain: chainId,
32835
+ calls,
32836
+ abi: calls.map(() => FluidLendingResolverAbi)
32837
+ });
32838
+ const [converter] = getFluidFTokensConverter(chainId, prices, tokenList);
32839
+ return converter(raw) ?? {};
32840
+ };
32841
+
32490
32842
  // src/lending/margin/e-mode/index.ts
32491
32843
  function computeEModeSwitchHealth(positions, lenderMeta, currentCollateral, currentAdjustedDebt, currentMode, targetMode) {
32492
32844
  if (currentAdjustedDebt === 0) return null;
@@ -32973,6 +33325,6 @@ async function fetchTokenBalances(chainId, account, tokens, options = {}) {
32973
33325
  return parseTokenBalanceResult(rawResult, prepared.query);
32974
33326
  }
32975
33327
 
32976
- export { EMPTY_BALANCE, MORPHO_LENS, MaxParamThresholds, applyPositionDelta, attachPricesToFlashLiquidity, buildLoopResult, buildMorphoTypeCall, buildMorphoTypeUserCallWithLens, buildPortfolioTotals, buildSumerAccumulators, buildSummaries, calculateLeverage, calculateNetApr, calculateOverallNetApr, calculateWeightedAverage, computeBorrowDelta2 as computeBorrowDelta, computeCloseTradeDeltas, computeCollateralSwapDeltas, computeDebtSwapDeltas, computeDepositDelta2 as computeDepositDelta, computeEModeAnalysis, computeOpenTradeDeltas, computePostTradeMetrics, computeRepayDelta2 as computeRepayDelta, computeSumerBorrowDelta, computeSumerDepositDelta, computeSumerRepayDelta, computeSumerWaterfall, computeSumerWithdrawDelta, computeWithdrawDelta2 as computeWithdrawDelta, computeZapTradeDeltas, convertLenderUserDataResult, createMarketUid, createMulticallRpcCall, createRawRpcCalls, decodeListaMarkets, decodeMarkets, decodePackedListaUserDataset, decodePackedMorphoUserDataset, encodeBalanceFetcherCalldata, fetchEulerSubAccountIndexes, fetchFlashLiquidityForChain, fetchGeneralYields, fetchGeneralYieldsByMarketUid, fetchOraclePrices, fetchPendlePrices, fetchTokenBalances, fetchTokenMetadata, filterActiveLenders, filterLendersByProtocol, fuseLenderData, generateLendingPools, getAavesForChain, getAssetConfig, getBalanceForMarketUid, getBorrowCapacity, getHealthFactor, getLenderAssets, getLenderPublicData, getLenderPublicDataAll, getLenderPublicDataViaApi, getLenderUserDataMulti, getLenderUserDataResult, getLendersForChain, getMaxAmountClose, getMaxAmountCollateralSwap, getMaxAmountDebtSwap, getMaxAmountOpen, getMergedUserData, getMorphoTypeMarketConverter, getSubAccountAddress, getSubAccountIndex, keysFromMaps, multicall3Abi, nanTo, needsLenderApproval, needsTokenApproval, noOpResult, normalizeToBytes, parseBalanceFetcherResult, parseMergedResult, parseMulticallRpcResponses, parseRawRpcBatchResponses, parseRawRpcResponses, parseTokenBalanceResult, positivePart2 as positivePart, prepareLenderUserDataRpcCalls, prepareMergedMulticallParams, prepareMergedRpcCalls, prepareMulticallInputs, prepareTokenBalanceRpcCalls, selectAssetGroupPrices, unflattenLenderData };
33328
+ export { EMPTY_BALANCE, MORPHO_LENS, MaxParamThresholds, applyPositionDelta, attachPricesToFlashLiquidity, buildFluidFTokensCall, buildLoopResult, buildMorphoTypeCall, buildMorphoTypeUserCallWithLens, buildPortfolioTotals, buildSumerAccumulators, buildSummaries, calculateLeverage, calculateNetApr, calculateOverallNetApr, calculateWeightedAverage, computeBorrowDelta2 as computeBorrowDelta, computeCloseTradeDeltas, computeCollateralSwapDeltas, computeDebtSwapDeltas, computeDepositDelta2 as computeDepositDelta, computeEModeAnalysis, computeOpenTradeDeltas, computePostTradeMetrics, computeRepayDelta2 as computeRepayDelta, computeSumerBorrowDelta, computeSumerDepositDelta, computeSumerRepayDelta, computeSumerWaterfall, computeSumerWithdrawDelta, computeWithdrawDelta2 as computeWithdrawDelta, computeZapTradeDeltas, convertLenderUserDataResult, createMarketUid, createMulticallRpcCall, createRawRpcCalls, decodeListaMarkets, decodeMarkets, decodePackedListaUserDataset, decodePackedMorphoUserDataset, encodeBalanceFetcherCalldata, fetchEulerSubAccountIndexes, fetchFlashLiquidityForChain, fetchFluidFTokens, fetchGeneralYields, fetchGeneralYieldsByMarketUid, fetchOraclePrices, fetchPendlePrices, fetchTokenBalances, fetchTokenMetadata, filterActiveLenders, filterLendersByProtocol, fuseLenderData, generateLendingPools, getAavesForChain, getAssetConfig, getBalanceForMarketUid, getBorrowCapacity, getFluidFTokensConverter, getHealthFactor, getLenderAssets, getLenderPublicData, getLenderPublicDataAll, getLenderPublicDataViaApi, getLenderUserDataMulti, getLenderUserDataResult, getLendersForChain, getMaxAmountClose, getMaxAmountCollateralSwap, getMaxAmountDebtSwap, getMaxAmountOpen, getMergedUserData, getMorphoTypeMarketConverter, getSubAccountAddress, getSubAccountIndex, keysFromMaps, multicall3Abi, nanTo, needsLenderApproval, needsTokenApproval, noOpResult, normalizeToBytes, parseBalanceFetcherResult, parseMergedResult, parseMulticallRpcResponses, parseRawRpcBatchResponses, parseRawRpcResponses, parseTokenBalanceResult, positivePart2 as positivePart, prepareLenderUserDataRpcCalls, prepareMergedMulticallParams, prepareMergedRpcCalls, prepareMulticallInputs, prepareTokenBalanceRpcCalls, selectAssetGroupPrices, unflattenLenderData };
32977
33329
  //# sourceMappingURL=index.js.map
32978
33330
  //# sourceMappingURL=index.js.map