@huma-finance/sdk 0.0.63-beta.741 → 0.0.63-beta.744

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.
@@ -7,9 +7,39 @@ export declare class HumaSolanaProgramHelper {
7
7
  constructor({ solanaContext }: {
8
8
  solanaContext: HumaSolanaContext;
9
9
  });
10
+ getAvailableCreditForPool(): Promise<BN>;
10
11
  buildSubmitReceivableTransaction(referenceId: string): Promise<Transaction>;
11
12
  buildDrawdownTransaction(amount: BN): Promise<Transaction>;
12
13
  buildPaymentTransaction(amount: BN, principalOnly?: boolean): Promise<Transaction>;
13
14
  buildApproveAllowanceTransaction(): Promise<Transaction>;
14
- getAccountInfo(): Promise<any>;
15
+ getAccountInfo(): Promise<{
16
+ creditConfig: {
17
+ creditLimit: BN;
18
+ committedAmount: BN;
19
+ numPeriods: number;
20
+ yieldBps: number;
21
+ };
22
+ creditState: {
23
+ creditRecord: {
24
+ status: unknown;
25
+ nextDue: BN;
26
+ yieldDue: BN;
27
+ nextDueDate: BN;
28
+ totalPastDue: BN;
29
+ missedPeriods: number;
30
+ remainingPeriods: number;
31
+ unbilledPrincipal: BN;
32
+ };
33
+ dueDetail: {
34
+ paid: BN;
35
+ accrued: BN;
36
+ lateFee: BN;
37
+ committed: BN;
38
+ yieldPastDue: BN;
39
+ principalPastDue: BN;
40
+ lateFeeUpdatedDate: BN;
41
+ };
42
+ receivableAvailableCredits: BN;
43
+ };
44
+ } | null>;
15
45
  }
@@ -18,6 +18,32 @@ class HumaSolanaProgramHelper {
18
18
  }
19
19
  tslib_1.__classPrivateFieldSet(this, _HumaSolanaProgramHelper_solanaContext, solanaContext, "f");
20
20
  }
21
+ async getAvailableCreditForPool() {
22
+ const { chainId, poolName } = tslib_1.__classPrivateFieldGet(this, _HumaSolanaProgramHelper_solanaContext, "f");
23
+ const poolInfo = (0, shared_1.getSolanaPoolInfo)(chainId, poolName);
24
+ if (!poolInfo) {
25
+ throw new Error('Could not find pool');
26
+ }
27
+ const accountInfo = await this.getAccountInfo();
28
+ if (accountInfo === null) {
29
+ throw new Error('Could not get account info for this pool.');
30
+ }
31
+ const tokenAccount = await (0, spl_token_1.getAccount)(tslib_1.__classPrivateFieldGet(this, _HumaSolanaProgramHelper_solanaContext, "f").connection, new web3_js_1.PublicKey(poolInfo.poolUnderlyingTokenAccount), undefined, spl_token_1.TOKEN_PROGRAM_ID);
32
+ const { creditConfig, creditState } = accountInfo;
33
+ const principalAmount = creditState.creditRecord.unbilledPrincipal
34
+ .add(creditState.creditRecord.nextDue)
35
+ .sub(creditState.creditRecord.yieldDue)
36
+ .add(creditState.dueDetail.principalPastDue);
37
+ const unusedCredit = creditConfig.creditLimit.sub(principalAmount);
38
+ const poolTokenBalanceBN = new anchor_1.BN(tokenAccount.amount.toString());
39
+ // Set available credit to the minimum of the pool balance or the credit available amount,
40
+ // since both are upper bounds on the amount of credit that can be borrowed.
41
+ // If either is negative, cap the available credit to 0.
42
+ const creditAvailable = unusedCredit.lt(poolTokenBalanceBN)
43
+ ? unusedCredit
44
+ : poolTokenBalanceBN;
45
+ return creditAvailable.ltn(0) ? new anchor_1.BN(0) : creditAvailable;
46
+ }
21
47
  async buildSubmitReceivableTransaction(referenceId) {
22
48
  const { publicKey, connection, chainId, poolName } = tslib_1.__classPrivateFieldGet(this, _HumaSolanaProgramHelper_solanaContext, "f");
23
49
  const program = (0, shared_1.getHumaProgram)(chainId, connection);
@@ -1 +1 @@
1
- {"version":3,"file":"HumaSolanaProgramHelper.js","sourceRoot":"","sources":["../../../../src/helpers/solana/HumaSolanaProgramHelper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HumaSolanaProgramHelper.js","sourceRoot":"","sources":["../../../../src/helpers/solana/HumaSolanaProgramHelper.ts"],"names":[],"mappings":"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"}
@@ -7,9 +7,39 @@ export declare class HumaSolanaProgramHelper {
7
7
  constructor({ solanaContext }: {
8
8
  solanaContext: HumaSolanaContext;
9
9
  });
10
+ getAvailableCreditForPool(): Promise<BN>;
10
11
  buildSubmitReceivableTransaction(referenceId: string): Promise<Transaction>;
11
12
  buildDrawdownTransaction(amount: BN): Promise<Transaction>;
12
13
  buildPaymentTransaction(amount: BN, principalOnly?: boolean): Promise<Transaction>;
13
14
  buildApproveAllowanceTransaction(): Promise<Transaction>;
14
- getAccountInfo(): Promise<any>;
15
+ getAccountInfo(): Promise<{
16
+ creditConfig: {
17
+ creditLimit: BN;
18
+ committedAmount: BN;
19
+ numPeriods: number;
20
+ yieldBps: number;
21
+ };
22
+ creditState: {
23
+ creditRecord: {
24
+ status: unknown;
25
+ nextDue: BN;
26
+ yieldDue: BN;
27
+ nextDueDate: BN;
28
+ totalPastDue: BN;
29
+ missedPeriods: number;
30
+ remainingPeriods: number;
31
+ unbilledPrincipal: BN;
32
+ };
33
+ dueDetail: {
34
+ paid: BN;
35
+ accrued: BN;
36
+ lateFee: BN;
37
+ committed: BN;
38
+ yieldPastDue: BN;
39
+ principalPastDue: BN;
40
+ lateFeeUpdatedDate: BN;
41
+ };
42
+ receivableAvailableCredits: BN;
43
+ };
44
+ } | null>;
15
45
  }
@@ -15,6 +15,32 @@ export class HumaSolanaProgramHelper {
15
15
  }
16
16
  __classPrivateFieldSet(this, _HumaSolanaProgramHelper_solanaContext, solanaContext, "f");
17
17
  }
18
+ async getAvailableCreditForPool() {
19
+ const { chainId, poolName } = __classPrivateFieldGet(this, _HumaSolanaProgramHelper_solanaContext, "f");
20
+ const poolInfo = getSolanaPoolInfo(chainId, poolName);
21
+ if (!poolInfo) {
22
+ throw new Error('Could not find pool');
23
+ }
24
+ const accountInfo = await this.getAccountInfo();
25
+ if (accountInfo === null) {
26
+ throw new Error('Could not get account info for this pool.');
27
+ }
28
+ const tokenAccount = await getAccount(__classPrivateFieldGet(this, _HumaSolanaProgramHelper_solanaContext, "f").connection, new PublicKey(poolInfo.poolUnderlyingTokenAccount), undefined, TOKEN_PROGRAM_ID);
29
+ const { creditConfig, creditState } = accountInfo;
30
+ const principalAmount = creditState.creditRecord.unbilledPrincipal
31
+ .add(creditState.creditRecord.nextDue)
32
+ .sub(creditState.creditRecord.yieldDue)
33
+ .add(creditState.dueDetail.principalPastDue);
34
+ const unusedCredit = creditConfig.creditLimit.sub(principalAmount);
35
+ const poolTokenBalanceBN = new BN(tokenAccount.amount.toString());
36
+ // Set available credit to the minimum of the pool balance or the credit available amount,
37
+ // since both are upper bounds on the amount of credit that can be borrowed.
38
+ // If either is negative, cap the available credit to 0.
39
+ const creditAvailable = unusedCredit.lt(poolTokenBalanceBN)
40
+ ? unusedCredit
41
+ : poolTokenBalanceBN;
42
+ return creditAvailable.ltn(0) ? new BN(0) : creditAvailable;
43
+ }
18
44
  async buildSubmitReceivableTransaction(referenceId) {
19
45
  const { publicKey, connection, chainId, poolName } = __classPrivateFieldGet(this, _HumaSolanaProgramHelper_solanaContext, "f");
20
46
  const program = getHumaProgram(chainId, connection);
@@ -1 +1 @@
1
- {"version":3,"file":"HumaSolanaProgramHelper.js","sourceRoot":"","sources":["../../../src/helpers/solana/HumaSolanaProgramHelper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HumaSolanaProgramHelper.js","sourceRoot":"","sources":["../../../src/helpers/solana/HumaSolanaProgramHelper.ts"],"names":[],"mappings":"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"}