@huma-finance/shared 0.0.48-beta.287 → 0.0.48-beta.296

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 (56) hide show
  1. package/dist/cjs/utils/credit.js +2 -2
  2. package/dist/cjs/utils/credit.js.map +1 -1
  3. package/dist/cjs/v2/hooks/usePool.d.ts +8 -1
  4. package/dist/cjs/v2/hooks/usePool.js +56 -4
  5. package/dist/cjs/v2/hooks/usePool.js.map +1 -1
  6. package/dist/cjs/v2/metadata/humaTestnet.js +2 -2
  7. package/dist/cjs/v2/metadata/humaTestnet.js.map +1 -1
  8. package/dist/cjs/v2/metadata/localhost.js +2 -2
  9. package/dist/cjs/v2/metadata/localhost.js.map +1 -1
  10. package/dist/cjs/v2/metadata/mumbai.js +2 -2
  11. package/dist/cjs/v2/metadata/mumbai.js.map +1 -1
  12. package/dist/cjs/v2/types/index.d.ts +1 -1
  13. package/dist/cjs/v2/types/index.js +1 -1
  14. package/dist/cjs/v2/types/index.js.map +1 -1
  15. package/dist/cjs/v2/utils/firstLossCoverContract.d.ts +6 -0
  16. package/dist/cjs/v2/utils/firstLossCoverContract.js +32 -0
  17. package/dist/cjs/v2/utils/firstLossCoverContract.js.map +1 -0
  18. package/dist/cjs/v2/utils/index.d.ts +2 -0
  19. package/dist/cjs/v2/utils/index.js +2 -0
  20. package/dist/cjs/v2/utils/index.js.map +1 -1
  21. package/dist/cjs/v2/utils/pool.d.ts +1 -1
  22. package/dist/cjs/v2/utils/poolConfigContract.d.ts +22 -0
  23. package/dist/cjs/v2/utils/poolConfigContract.js +101 -0
  24. package/dist/cjs/v2/utils/poolConfigContract.js.map +1 -0
  25. package/dist/cjs/v2/utils/poolContract.d.ts +3 -7
  26. package/dist/cjs/v2/utils/poolContract.js +13 -85
  27. package/dist/cjs/v2/utils/poolContract.js.map +1 -1
  28. package/dist/tsconfig.cjs.tsbuildinfo +1 -1
  29. package/dist/utils/credit.js +2 -2
  30. package/dist/utils/credit.js.map +1 -1
  31. package/dist/v2/hooks/usePool.d.ts +8 -1
  32. package/dist/v2/hooks/usePool.js +53 -3
  33. package/dist/v2/hooks/usePool.js.map +1 -1
  34. package/dist/v2/metadata/humaTestnet.js +2 -2
  35. package/dist/v2/metadata/humaTestnet.js.map +1 -1
  36. package/dist/v2/metadata/localhost.js +2 -2
  37. package/dist/v2/metadata/localhost.js.map +1 -1
  38. package/dist/v2/metadata/mumbai.js +2 -2
  39. package/dist/v2/metadata/mumbai.js.map +1 -1
  40. package/dist/v2/types/index.d.ts +1 -1
  41. package/dist/v2/types/index.js +1 -1
  42. package/dist/v2/types/index.js.map +1 -1
  43. package/dist/v2/utils/firstLossCoverContract.d.ts +6 -0
  44. package/dist/v2/utils/firstLossCoverContract.js +28 -0
  45. package/dist/v2/utils/firstLossCoverContract.js.map +1 -0
  46. package/dist/v2/utils/index.d.ts +2 -0
  47. package/dist/v2/utils/index.js +2 -0
  48. package/dist/v2/utils/index.js.map +1 -1
  49. package/dist/v2/utils/pool.d.ts +1 -1
  50. package/dist/v2/utils/poolConfigContract.d.ts +22 -0
  51. package/dist/v2/utils/poolConfigContract.js +96 -0
  52. package/dist/v2/utils/poolConfigContract.js.map +1 -0
  53. package/dist/v2/utils/poolContract.d.ts +3 -7
  54. package/dist/v2/utils/poolContract.js +11 -83
  55. package/dist/v2/utils/poolContract.js.map +1 -1
  56. package/package.json +2 -2
@@ -1,13 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getUtilizationRateV2 = exports.getApyV2 = exports.getPoolFeeStructureV2 = exports.getCurrentEpochInfoV2 = exports.getCreditConfigV2 = exports.getDueDetailV2 = exports.getCreditRecordV2 = exports.getCreditHashV2 = exports.getTrancheSharesToAssetsV2 = exports.getTrancheAssetsToSharesV2 = exports.getLenderPositionV2 = exports.getTrancheVaultAssetsV2 = exports.getFirstLossCoverAssetsV2 = exports.getPoolUnderlyingTokenInfoV2 = exports.getPoolSafeContractV2 = exports.getFirstLossCoverContractV2 = exports.getEpochManagerContractV2 = exports.getTrancheVaultContractV2 = exports.getPoolCreditManagerContractV2 = exports.getPoolCreditContractV2 = exports.getPoolUnderlyingTokenBalanceV2 = exports.getPoolUnderlyingTokenContractV2 = exports.getPoolConfigContractV2 = exports.getPoolContractV2 = exports.getPoolInfoV2 = void 0;
3
+ exports.getPoolIsReadyForFlcWithdrawalV2 = exports.getUtilizationRateV2 = exports.getPoolFeeStructureV2 = exports.getCurrentEpochInfoV2 = exports.getCreditConfigV2 = exports.getDueDetailV2 = exports.getCreditRecordV2 = exports.getCreditHashV2 = exports.getTrancheSharesToAssetsV2 = exports.getTrancheAssetsToSharesV2 = exports.getLenderPositionV2 = exports.getTrancheVaultAssetsV2 = exports.getFirstLossCoverAssetsV2 = exports.getPoolUnderlyingTokenInfoV2 = exports.getPoolSafeContractV2 = exports.getFirstLossCoverContractV2 = exports.getEpochManagerContractV2 = exports.getTrancheVaultContractV2 = exports.getPoolCreditManagerContractV2 = exports.getPoolCreditContractV2 = exports.getPoolUnderlyingTokenBalanceV2 = exports.getPoolUnderlyingTokenContractV2 = exports.getPoolConfigContractV2 = exports.getPoolContractV2 = exports.getPoolInfoV2 = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const ethers_1 = require("ethers");
6
6
  const _1 = require(".");
7
7
  const utils_1 = require("../../utils");
8
8
  const Credit_json_1 = tslib_1.__importDefault(require("../abis/Credit.json"));
9
9
  const CreditManager_json_1 = tslib_1.__importDefault(require("../abis/CreditManager.json"));
10
- const HumaConfig_json_1 = tslib_1.__importDefault(require("../abis/HumaConfig.json"));
11
10
  const getPoolInfoV2 = (poolName, chainId) => {
12
11
  var _a;
13
12
  if ((0, utils_1.isChainEnum)(chainId)) {
@@ -69,14 +68,14 @@ const getPoolCreditManagerContractV2 = async (poolName, provider) => {
69
68
  return (0, utils_1.getContract)(poolInfo.poolCreditManager, CreditManager_json_1.default, provider);
70
69
  };
71
70
  exports.getPoolCreditManagerContractV2 = getPoolCreditManagerContractV2;
72
- const getTrancheVaultContractV2 = async (poolName, trancheType, provider) => {
71
+ const getTrancheVaultContractV2 = async (poolName, trancheType, provider, account) => {
73
72
  const chainId = await (0, utils_1.getChainIdFromSignerOrProvider)(provider);
74
73
  const poolInfo = (0, exports.getPoolInfoV2)(poolName, chainId);
75
74
  if (!poolInfo) {
76
75
  return null;
77
76
  }
78
77
  const trancheVault = `${trancheType}TrancheVault`;
79
- return (0, utils_1.getContract)(poolInfo[trancheVault], poolInfo.trancheVaultAbi, provider);
78
+ return (0, utils_1.getContract)(poolInfo[trancheVault], poolInfo.trancheVaultAbi, provider, account);
80
79
  };
81
80
  exports.getTrancheVaultContractV2 = getTrancheVaultContractV2;
82
81
  const getEpochManagerContractV2 = async (poolName, provider) => {
@@ -88,13 +87,13 @@ const getEpochManagerContractV2 = async (poolName, provider) => {
88
87
  return (0, utils_1.getContract)(poolInfo.epochManager, poolInfo.epochManagerAbi, provider);
89
88
  };
90
89
  exports.getEpochManagerContractV2 = getEpochManagerContractV2;
91
- const getFirstLossCoverContractV2 = async (poolName, firstLossCoverType, provider) => {
90
+ const getFirstLossCoverContractV2 = async (poolName, firstLossCoverType, provider, account) => {
92
91
  const chainId = await (0, utils_1.getChainIdFromSignerOrProvider)(provider);
93
92
  const poolInfo = (0, exports.getPoolInfoV2)(poolName, chainId);
94
93
  if (!poolInfo) {
95
94
  return null;
96
95
  }
97
- return (0, utils_1.getContract)(poolInfo.firstLossCovers[firstLossCoverType], poolInfo.firstLossCoverAbi, provider);
96
+ return (0, utils_1.getContract)(poolInfo.firstLossCovers[firstLossCoverType], poolInfo.firstLossCoverAbi, provider, account);
98
97
  };
99
98
  exports.getFirstLossCoverContractV2 = getFirstLossCoverContractV2;
100
99
  const getPoolSafeContractV2 = async (poolName, provider) => {
@@ -280,85 +279,6 @@ const getPoolFeeStructureV2 = async (poolName, provider) => {
280
279
  };
281
280
  };
282
281
  exports.getPoolFeeStructureV2 = getPoolFeeStructureV2;
283
- // Please refer to: https://docs.google.com/spreadsheets/d/1Pkqj7pcJ6OxFG8ZTYQLAeAKf3ouD0mAzT9AKoH1ym4s/edit#gid=0
284
- const getApyV2 = async (poolName, provider) => {
285
- const chainId = await (0, utils_1.getChainIdFromSignerOrProvider)(provider);
286
- const poolInfo = (0, exports.getPoolInfoV2)(poolName, chainId);
287
- if (!poolInfo) {
288
- return undefined;
289
- }
290
- const poolConfigContract = await (0, exports.getPoolConfigContractV2)(poolName, provider);
291
- if (!poolConfigContract) {
292
- return undefined;
293
- }
294
- const getProtocolFeeInBps = async () => {
295
- const humaConfig = await poolConfigContract.humaConfig();
296
- const humaConfigContract = (0, utils_1.getContract)(humaConfig, HumaConfig_json_1.default, provider);
297
- return humaConfigContract.protocolFeeInBps();
298
- };
299
- const getFlcTotalAssetsAndTotalAssetsAfterRisk = async () => {
300
- const flcConfigs = await Promise.all(Object.values(poolInfo.firstLossCovers)
301
- .filter((firstLossCover) => firstLossCover !== ethers_1.ethers.constants.AddressZero)
302
- .map((firstLossCover) => poolConfigContract.getFirstLossCoverConfig(firstLossCover)));
303
- const result = {
304
- flcTotalAssets: ethers_1.BigNumber.from(0),
305
- flcTotalAssetsAfterRisk: ethers_1.BigNumber.from(0),
306
- };
307
- flcConfigs.forEach((flcConfig) => {
308
- result.flcTotalAssets = result.flcTotalAssets.add(flcConfig.minLiquidity);
309
- result.flcTotalAssetsAfterRisk = result.flcTotalAssetsAfterRisk.add(flcConfig.minLiquidity
310
- .mul(flcConfig.riskYieldMultiplierInBps)
311
- .div(_1.BP_FACTOR));
312
- });
313
- return {
314
- flcTotalAssets: result.flcTotalAssets.toNumber(),
315
- flcTotalAssetsAfterRisk: result.flcTotalAssetsAfterRisk.toNumber(),
316
- };
317
- };
318
- const [protocolFeeInBps, feeStructure, adminRnR, lpConfig, flcTotalAssetsAndTotalAssetsAfterRisk,] = await Promise.all([
319
- getProtocolFeeInBps(),
320
- poolConfigContract.getFeeStructure(),
321
- poolConfigContract.getAdminRnR(),
322
- poolConfigContract.getLPConfig(),
323
- getFlcTotalAssetsAndTotalAssetsAfterRisk(),
324
- ]);
325
- const BP_FACTOR_NUMBER = _1.BP_FACTOR.toNumber();
326
- // APY = (1+APR/12)^12 - 1
327
- const APY = (1 + feeStructure.yieldInBps / BP_FACTOR_NUMBER / 12) ** 12 - 1;
328
- const poolCap = lpConfig.liquidityCap.toNumber();
329
- const juniorAssets = poolCap / (lpConfig.maxSeniorJuniorRatio + 1);
330
- const seniorAssets = poolCap - juniorAssets;
331
- const totalProfit = poolCap * APY;
332
- const postPoolProfitRatio = (1 - protocolFeeInBps / BP_FACTOR_NUMBER) *
333
- (1 -
334
- adminRnR.rewardRateInBpsForPoolOwner / BP_FACTOR_NUMBER -
335
- adminRnR.rewardRateInBpsForEA / BP_FACTOR_NUMBER);
336
- const poolPostProfit = totalProfit * postPoolProfitRatio;
337
- let seniorTrancheApy = 0;
338
- let seniorPostProfit = 0;
339
- if (lpConfig.fixedSeniorYieldInBps > 0) {
340
- seniorTrancheApy = lpConfig.fixedSeniorYieldInBps / BP_FACTOR_NUMBER;
341
- seniorPostProfit = poolPostProfit - seniorAssets * seniorTrancheApy;
342
- }
343
- else {
344
- const riskAdjustment = lpConfig.tranchesRiskAdjustmentInBps / BP_FACTOR_NUMBER;
345
- const seniorProfit = seniorAssets * (postPoolProfitRatio * (1 - riskAdjustment) * APY);
346
- seniorTrancheApy = postPoolProfitRatio * (1 - riskAdjustment) * APY;
347
- seniorPostProfit = poolPostProfit - seniorProfit;
348
- }
349
- const { flcTotalAssets, flcTotalAssetsAfterRisk } = flcTotalAssetsAndTotalAssetsAfterRisk;
350
- const weight = juniorAssets + flcTotalAssetsAfterRisk;
351
- const juniorProfit = (juniorAssets / weight) * seniorPostProfit;
352
- const juniorTrancheApy = juniorProfit / juniorAssets;
353
- const flcProfit = (flcTotalAssetsAfterRisk / weight) * seniorPostProfit;
354
- const firstLossCoverApy = flcProfit / flcTotalAssets;
355
- return {
356
- seniorTrancheApy,
357
- juniorTrancheApy,
358
- firstLossCoverApy,
359
- };
360
- };
361
- exports.getApyV2 = getApyV2;
362
282
  const getUtilizationRateV2 = async (poolName, provider) => {
363
283
  const chainId = await (0, utils_1.getChainIdFromSignerOrProvider)(provider);
364
284
  const poolInfo = (0, exports.getPoolInfoV2)(poolName, chainId);
@@ -386,4 +306,12 @@ const getUtilizationRateV2 = async (poolName, provider) => {
386
306
  return 0;
387
307
  };
388
308
  exports.getUtilizationRateV2 = getUtilizationRateV2;
309
+ const getPoolIsReadyForFlcWithdrawalV2 = async (poolName, provider) => {
310
+ const poolContract = await (0, exports.getPoolContractV2)(poolName, provider);
311
+ if (!poolContract) {
312
+ return undefined;
313
+ }
314
+ return poolContract.readyForFirstLossCoverWithdrawal();
315
+ };
316
+ exports.getPoolIsReadyForFlcWithdrawalV2 = getPoolIsReadyForFlcWithdrawalV2;
389
317
  //# sourceMappingURL=poolContract.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"poolContract.js","sourceRoot":"","sources":["../../../../src/v2/utils/poolContract.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"poolContract.js","sourceRoot":"","sources":["../../../../src/v2/utils/poolContract.ts"],"names":[],"mappings":"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"}