@huma-finance/sdk 0.0.48-beta.286 → 0.0.48-beta.290
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.
- package/dist/cjs/helpers/v2/ReceivableBackedCreditLineContractHelper.js +21 -4
- package/dist/cjs/helpers/v2/ReceivableBackedCreditLineContractHelper.js.map +1 -1
- package/dist/cjs/helpers/v2/ReceivableContractHelper.d.ts +3 -2
- package/dist/cjs/helpers/v2/ReceivableContractHelper.js +20 -1
- package/dist/cjs/helpers/v2/ReceivableContractHelper.js.map +1 -1
- package/dist/cjs/services/v2/HumaReceivableHandler.js +1 -1
- package/dist/cjs/services/v2/HumaReceivableHandler.js.map +1 -1
- package/dist/helpers/v2/ReceivableBackedCreditLineContractHelper.js +22 -5
- package/dist/helpers/v2/ReceivableBackedCreditLineContractHelper.js.map +1 -1
- package/dist/helpers/v2/ReceivableContractHelper.d.ts +3 -2
- package/dist/helpers/v2/ReceivableContractHelper.js +19 -1
- package/dist/helpers/v2/ReceivableContractHelper.js.map +1 -1
- package/dist/services/v2/HumaReceivableHandler.js +1 -1
- package/dist/services/v2/HumaReceivableHandler.js.map +1 -1
- package/dist/tsconfig.cjs.tsbuildinfo +1 -1
- package/package.json +3 -3
|
@@ -4,6 +4,7 @@ exports.makePrincipalPaymentAndDrawdownWithReceivable = exports.makePaymentWithR
|
|
|
4
4
|
const shared_1 = require("@huma-finance/shared");
|
|
5
5
|
const utils_1 = require("../../utils");
|
|
6
6
|
const ERC20ContractHelper_1 = require("../ERC20ContractHelper");
|
|
7
|
+
const ReceivableContractHelper_1 = require("./ReceivableContractHelper");
|
|
7
8
|
/**
|
|
8
9
|
* Returns an ethers contract instance for the V2 Receivable contract
|
|
9
10
|
* associated with the given pool name on the current chain.
|
|
@@ -38,6 +39,8 @@ async function drawdownWithReceivable(signer, poolName, receivableId, drawdownAm
|
|
|
38
39
|
if (!creditContract) {
|
|
39
40
|
throw new Error('Could not find credit contract');
|
|
40
41
|
}
|
|
42
|
+
const approveTx = await (0, ReceivableContractHelper_1.approveReceivableTransferIfNeeded)(signer, poolName, receivableId);
|
|
43
|
+
await (approveTx === null || approveTx === void 0 ? void 0 : approveTx.wait(5));
|
|
41
44
|
return creditContract.drawdownWithReceivable(await signer.getAddress(), receivableId, drawdownAmount, gasOpts);
|
|
42
45
|
}
|
|
43
46
|
exports.drawdownWithReceivable = drawdownWithReceivable;
|
|
@@ -59,10 +62,16 @@ async function makePaymentWithReceivable(signer, poolName, receivableId, payment
|
|
|
59
62
|
if (!creditContract) {
|
|
60
63
|
throw new Error('Could not find credit contract');
|
|
61
64
|
}
|
|
65
|
+
const poolSafeContract = await (0, shared_1.getPoolSafeContractV2)(poolName, signer.provider);
|
|
66
|
+
if (!poolSafeContract) {
|
|
67
|
+
throw new Error('Could not find pool safe contract');
|
|
68
|
+
}
|
|
62
69
|
const underlyingToken = await (0, shared_1.getPoolUnderlyingTokenContractV2)(poolName, signer.provider);
|
|
63
|
-
if (underlyingToken) {
|
|
64
|
-
|
|
70
|
+
if (!underlyingToken) {
|
|
71
|
+
throw new Error('Could not find underlying token contract');
|
|
65
72
|
}
|
|
73
|
+
const approveERC20Tx = await (0, ERC20ContractHelper_1.approveERC20AllowanceIfInsufficient)(signer, underlyingToken.address, poolSafeContract.address, paymentAmount, gasOpts);
|
|
74
|
+
await (approveERC20Tx === null || approveERC20Tx === void 0 ? void 0 : approveERC20Tx.wait(5));
|
|
66
75
|
let paymentTx;
|
|
67
76
|
if (principalOnly) {
|
|
68
77
|
paymentTx = await creditContract.makePrincipalPaymentWithReceivable(await signer.getAddress(), receivableId, paymentAmount, gasOpts);
|
|
@@ -93,9 +102,17 @@ async function makePrincipalPaymentAndDrawdownWithReceivable(signer, poolName, p
|
|
|
93
102
|
throw new Error('Could not find credit contract');
|
|
94
103
|
}
|
|
95
104
|
const underlyingToken = await (0, shared_1.getPoolUnderlyingTokenContractV2)(poolName, signer.provider);
|
|
96
|
-
|
|
97
|
-
|
|
105
|
+
const poolSafeContract = await (0, shared_1.getPoolSafeContractV2)(poolName, signer.provider);
|
|
106
|
+
if (!poolSafeContract) {
|
|
107
|
+
throw new Error('Could not find pool safe contract');
|
|
108
|
+
}
|
|
109
|
+
if (!underlyingToken) {
|
|
110
|
+
throw new Error('Could not find underlying token contract');
|
|
98
111
|
}
|
|
112
|
+
const approveERC20Tx = await (0, ERC20ContractHelper_1.approveERC20AllowanceIfInsufficient)(signer, underlyingToken.address, poolSafeContract.address, paymentAmount, gasOpts);
|
|
113
|
+
await (approveERC20Tx === null || approveERC20Tx === void 0 ? void 0 : approveERC20Tx.wait(5));
|
|
114
|
+
const approveTx = await (0, ReceivableContractHelper_1.approveReceivableTransferIfNeeded)(signer, poolName, drawdownReceivableId);
|
|
115
|
+
await (approveTx === null || approveTx === void 0 ? void 0 : approveTx.wait(5));
|
|
99
116
|
return creditContract.makePrincipalPaymentAndDrawdownWithReceivable(await signer.getAddress(), paymentReceivableId, paymentAmount, drawdownReceivableId, drawdownAmount, gasOpts);
|
|
100
117
|
}
|
|
101
118
|
exports.makePrincipalPaymentAndDrawdownWithReceivable = makePrincipalPaymentAndDrawdownWithReceivable;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReceivableBackedCreditLineContractHelper.js","sourceRoot":"","sources":["../../../../src/helpers/v2/ReceivableBackedCreditLineContractHelper.ts"],"names":[],"mappings":";;;AAKA,
|
|
1
|
+
{"version":3,"file":"ReceivableBackedCreditLineContractHelper.js","sourceRoot":"","sources":["../../../../src/helpers/v2/ReceivableBackedCreditLineContractHelper.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { BigNumber, ethers } from 'ethers';
|
|
1
|
+
import { BigNumber, BigNumberish, Overrides, ethers } from 'ethers';
|
|
2
2
|
import { POOL_NAME, v2Contracts } from '@huma-finance/shared';
|
|
3
|
-
import { JsonRpcProvider, Web3Provider } from '@ethersproject/providers';
|
|
3
|
+
import { JsonRpcProvider, TransactionResponse, Web3Provider } from '@ethersproject/providers';
|
|
4
4
|
/**
|
|
5
5
|
* Returns an ethers contract instance for the V2 Receivable contract
|
|
6
6
|
* associated with the given pool name on the current chain.
|
|
@@ -12,3 +12,4 @@ import { JsonRpcProvider, Web3Provider } from '@ethersproject/providers';
|
|
|
12
12
|
export declare function getReceivableContractV2(poolName: POOL_NAME, signerOrProvider: JsonRpcProvider | Web3Provider | ethers.Signer): Promise<v2Contracts.Receivable | null>;
|
|
13
13
|
export declare function getReceivableTokenIdFromReferenceId(referenceId: string, creator: string, poolName: POOL_NAME, provider: JsonRpcProvider | Web3Provider): Promise<BigNumber>;
|
|
14
14
|
export declare function getReceivableReferenceAlreadyExists(referenceId: string, signerAddress: string, poolName: POOL_NAME, provider: JsonRpcProvider | Web3Provider): Promise<boolean>;
|
|
15
|
+
export declare function approveReceivableTransferIfNeeded(signer: ethers.Signer, poolName: POOL_NAME, receivableId: BigNumberish, gasOpts?: Overrides): Promise<TransactionResponse | null>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getReceivableReferenceAlreadyExists = exports.getReceivableTokenIdFromReferenceId = exports.getReceivableContractV2 = void 0;
|
|
3
|
+
exports.approveReceivableTransferIfNeeded = exports.getReceivableReferenceAlreadyExists = exports.getReceivableTokenIdFromReferenceId = exports.getReceivableContractV2 = void 0;
|
|
4
4
|
const ethers_1 = require("ethers");
|
|
5
5
|
const shared_1 = require("@huma-finance/shared");
|
|
6
6
|
const utils_1 = require("../../utils");
|
|
@@ -42,4 +42,23 @@ async function getReceivableReferenceAlreadyExists(referenceId, signerAddress, p
|
|
|
42
42
|
return !tokenId.isZero();
|
|
43
43
|
}
|
|
44
44
|
exports.getReceivableReferenceAlreadyExists = getReceivableReferenceAlreadyExists;
|
|
45
|
+
async function approveReceivableTransferIfNeeded(signer, poolName, receivableId, gasOpts = {}) {
|
|
46
|
+
const receivableContract = await getReceivableContractV2(poolName, signer);
|
|
47
|
+
if (!receivableContract) {
|
|
48
|
+
throw new Error('Could not find Receivable contract');
|
|
49
|
+
}
|
|
50
|
+
// Check if the pool is already approved to transfer the receivable
|
|
51
|
+
const provider = signer.provider;
|
|
52
|
+
const poolCreditContract = await (0, shared_1.getPoolCreditContractV2)(poolName, provider);
|
|
53
|
+
if (!poolCreditContract) {
|
|
54
|
+
throw new Error('Could not find pool credit contract');
|
|
55
|
+
}
|
|
56
|
+
const approvedAddress = await receivableContract.getApproved(receivableId);
|
|
57
|
+
if (poolCreditContract.address &&
|
|
58
|
+
approvedAddress === poolCreditContract.address) {
|
|
59
|
+
return null;
|
|
60
|
+
}
|
|
61
|
+
return receivableContract.approve(poolCreditContract.address, receivableId, gasOpts);
|
|
62
|
+
}
|
|
63
|
+
exports.approveReceivableTransferIfNeeded = approveReceivableTransferIfNeeded;
|
|
45
64
|
//# sourceMappingURL=ReceivableContractHelper.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReceivableContractHelper.js","sourceRoot":"","sources":["../../../../src/helpers/v2/ReceivableContractHelper.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"ReceivableContractHelper.js","sourceRoot":"","sources":["../../../../src/helpers/v2/ReceivableContractHelper.ts"],"names":[],"mappings":";;;AAAA,mCAAmE;AACnE,iDAM6B;AAO7B,uCAAyC;AAEzC;;;;;;;GAOG;AACI,KAAK,UAAU,uBAAuB,CAC3C,QAAmB,EACnB,gBAAgE;IAEhE,IAAI,QAAQ,CAAA;IACZ,IAAI,gBAAgB,YAAY,eAAM,CAAC,MAAM,EAAE;QAC7C,QAAQ,GAAG,gBAAgB,CAAC,QAA0C,CAAA;KACvE;SAAM;QACL,QAAQ,GAAG,gBAAgB,CAAA;KAC5B;IAED,MAAM,kBAAkB,GAAG,MAAM,IAAA,gCAAuB,EAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;IAE5E,IAAI,CAAC,kBAAkB,EAAE;QACvB,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAA;KACtD;IACD,MAAM,eAAe,GAAG,MAAM,kBAAkB,CAAC,eAAe,EAAE,CAAA;IAElE,OAAO,IAAA,mBAAW,EAChB,eAAe,EACf,0BAAiB,EACjB,gBAAgB,CACjB,CAAA;AACH,CAAC;AAvBD,0DAuBC;AAEM,KAAK,UAAU,mCAAmC,CACvD,WAAmB,EACnB,OAAe,EACf,QAAmB,EACnB,QAAwC;IAExC,MAAM,QAAQ,GAAG,MAAM,uBAAuB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;IAClE,IAAI,CAAC,QAAQ,EAAE;QACb,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAA;KACtD;IAED,MAAM,eAAe,GAAG,MAAM,QAAQ,CAAC,kBAAkB,CACvD,WAAW,EACX,OAAO,CACR,CAAA;IAED,OAAO,QAAQ,CAAC,wBAAwB,CAAC,eAAe,CAAC,CAAA;AAC3D,CAAC;AAjBD,kFAiBC;AAEM,KAAK,UAAU,mCAAmC,CACvD,WAAmB,EACnB,aAAqB,EACrB,QAAmB,EACnB,QAAwC;IAExC,MAAM,OAAO,GAAG,MAAM,mCAAmC,CACvD,WAAW,EACX,aAAa,EACb,QAAQ,EACR,QAAQ,CACT,CAAA;IAED,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,CAAA;AAC1B,CAAC;AAdD,kFAcC;AAEM,KAAK,UAAU,iCAAiC,CACrD,MAAqB,EACrB,QAAmB,EACnB,YAA0B,EAC1B,UAAqB,EAAE;IAEvB,MAAM,kBAAkB,GAAG,MAAM,uBAAuB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;IAE1E,IAAI,CAAC,kBAAkB,EAAE;QACvB,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAA;KACtD;IAED,mEAAmE;IACnE,MAAM,QAAQ,GAAG,MAAM,CAAC,QAA0C,CAAA;IAClE,MAAM,kBAAkB,GAAG,MAAM,IAAA,gCAAuB,EAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;IAE5E,IAAI,CAAC,kBAAkB,EAAE;QACvB,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;KACvD;IAED,MAAM,eAAe,GAAG,MAAM,kBAAkB,CAAC,WAAW,CAAC,YAAY,CAAC,CAAA;IAC1E,IACE,kBAAkB,CAAC,OAAO;QAC1B,eAAe,KAAK,kBAAkB,CAAC,OAAO,EAC9C;QACA,OAAO,IAAI,CAAA;KACZ;IAED,OAAO,kBAAkB,CAAC,OAAO,CAC/B,kBAAkB,CAAC,OAAO,EAC1B,YAAY,EACZ,OAAO,CACR,CAAA;AACH,CAAC;AAjCD,8EAiCC"}
|
|
@@ -14,7 +14,7 @@ class HumaReceivableHandler {
|
|
|
14
14
|
tslib_1.__classPrivateFieldSet(this, _HumaReceivableHandler_humaContext, humaContext, "f");
|
|
15
15
|
}
|
|
16
16
|
async declarePayment(paymentAmount, referenceId = '', gasOpts = {}) {
|
|
17
|
-
const contract = await (0, helpers_1.getReceivableContractV2)(tslib_1.__classPrivateFieldGet(this, _HumaReceivableHandler_humaContext, "f").poolName, tslib_1.__classPrivateFieldGet(this, _HumaReceivableHandler_humaContext, "f").
|
|
17
|
+
const contract = await (0, helpers_1.getReceivableContractV2)(tslib_1.__classPrivateFieldGet(this, _HumaReceivableHandler_humaContext, "f").poolName, tslib_1.__classPrivateFieldGet(this, _HumaReceivableHandler_humaContext, "f").signer);
|
|
18
18
|
if (!contract) {
|
|
19
19
|
throw new Error('Could not find Receivable contract');
|
|
20
20
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HumaReceivableHandler.js","sourceRoot":"","sources":["../../../../src/services/v2/HumaReceivableHandler.ts"],"names":[],"mappings":";;;;;AAGA,uCAAkD;AAClD,2CAGsB;AAEtB,MAAa,qBAAqB;IAGhC,YAAY,EAAE,WAAW,EAAgC;QAFzD,qDAAyB;QAGvB,IAAI,CAAC,WAAW,EAAE;YAChB,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAA;SAC/C;QAED,+BAAA,IAAI,sCAAgB,WAAW,MAAA,CAAA;IACjC,CAAC;IAED,KAAK,CAAC,cAAc,CAClB,aAAwB,EACxB,cAAsB,EAAE,EACxB,UAAqB,EAAE;QAEvB,MAAM,QAAQ,GAAG,MAAM,IAAA,iCAAuB,EAC5C,+BAAA,IAAI,0CAAa,CAAC,QAAQ,EAC1B,+BAAA,IAAI,0CAAa,CAAC,
|
|
1
|
+
{"version":3,"file":"HumaReceivableHandler.js","sourceRoot":"","sources":["../../../../src/services/v2/HumaReceivableHandler.ts"],"names":[],"mappings":";;;;;AAGA,uCAAkD;AAClD,2CAGsB;AAEtB,MAAa,qBAAqB;IAGhC,YAAY,EAAE,WAAW,EAAgC;QAFzD,qDAAyB;QAGvB,IAAI,CAAC,WAAW,EAAE;YAChB,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAA;SAC/C;QAED,+BAAA,IAAI,sCAAgB,WAAW,MAAA,CAAA;IACjC,CAAC;IAED,KAAK,CAAC,cAAc,CAClB,aAAwB,EACxB,cAAsB,EAAE,EACxB,UAAqB,EAAE;QAEvB,MAAM,QAAQ,GAAG,MAAM,IAAA,iCAAuB,EAC5C,+BAAA,IAAI,0CAAa,CAAC,QAAQ,EAC1B,+BAAA,IAAI,0CAAa,CAAC,MAAM,CACzB,CAAA;QACD,IAAI,CAAC,QAAQ,EAAE;YACb,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAA;SACtD;QAED,OAAO,GAAG,MAAM,IAAA,4BAAoB,EAAC,OAAO,EAAE,+BAAA,IAAI,0CAAa,CAAC,OAAO,CAAC,CAAA;QAExE,MAAM,aAAa,GAAG,MAAM,+BAAA,IAAI,0CAAa,CAAC,MAAM,CAAC,UAAU,EAAE,CAAA;QACjE,MAAM,OAAO,GAAG,MAAM,IAAA,6CAAmC,EACvD,WAAW,EACX,aAAa,EACb,+BAAA,IAAI,0CAAa,CAAC,QAAQ,EAC1B,+BAAA,IAAI,0CAAa,CAAC,QAAQ,CAC3B,CAAA;QAED,IAAI,CAAC,OAAO,EAAE;YACZ,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAA;SAC1C;QAED,OAAO,QAAQ,CAAC,cAAc,CAAC,OAAO,EAAE,aAAa,EAAE,OAAO,CAAC,CAAA;IACjE,CAAC;CACF;AAxCD,sDAwCC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import { getChainIdFromSignerOrProvider, getPoolInfoV2, getPoolUnderlyingTokenContractV2, POOL_TYPE, RECEIVABLE_BACKED_CREDIT_LINE_V2_ABI, } from '@huma-finance/shared';
|
|
1
|
+
import { getChainIdFromSignerOrProvider, getPoolInfoV2, getPoolSafeContractV2, getPoolUnderlyingTokenContractV2, POOL_TYPE, RECEIVABLE_BACKED_CREDIT_LINE_V2_ABI, } from '@huma-finance/shared';
|
|
2
2
|
import { getContract } from '../../utils';
|
|
3
3
|
import { approveERC20AllowanceIfInsufficient } from '../ERC20ContractHelper';
|
|
4
|
+
import { approveReceivableTransferIfNeeded } from './ReceivableContractHelper';
|
|
4
5
|
/**
|
|
5
6
|
* Returns an ethers contract instance for the V2 Receivable contract
|
|
6
7
|
* associated with the given pool name on the current chain.
|
|
@@ -34,6 +35,8 @@ export async function drawdownWithReceivable(signer, poolName, receivableId, dra
|
|
|
34
35
|
if (!creditContract) {
|
|
35
36
|
throw new Error('Could not find credit contract');
|
|
36
37
|
}
|
|
38
|
+
const approveTx = await approveReceivableTransferIfNeeded(signer, poolName, receivableId);
|
|
39
|
+
await (approveTx === null || approveTx === void 0 ? void 0 : approveTx.wait(5));
|
|
37
40
|
return creditContract.drawdownWithReceivable(await signer.getAddress(), receivableId, drawdownAmount, gasOpts);
|
|
38
41
|
}
|
|
39
42
|
/**
|
|
@@ -54,10 +57,16 @@ export async function makePaymentWithReceivable(signer, poolName, receivableId,
|
|
|
54
57
|
if (!creditContract) {
|
|
55
58
|
throw new Error('Could not find credit contract');
|
|
56
59
|
}
|
|
60
|
+
const poolSafeContract = await getPoolSafeContractV2(poolName, signer.provider);
|
|
61
|
+
if (!poolSafeContract) {
|
|
62
|
+
throw new Error('Could not find pool safe contract');
|
|
63
|
+
}
|
|
57
64
|
const underlyingToken = await getPoolUnderlyingTokenContractV2(poolName, signer.provider);
|
|
58
|
-
if (underlyingToken) {
|
|
59
|
-
|
|
65
|
+
if (!underlyingToken) {
|
|
66
|
+
throw new Error('Could not find underlying token contract');
|
|
60
67
|
}
|
|
68
|
+
const approveERC20Tx = await approveERC20AllowanceIfInsufficient(signer, underlyingToken.address, poolSafeContract.address, paymentAmount, gasOpts);
|
|
69
|
+
await (approveERC20Tx === null || approveERC20Tx === void 0 ? void 0 : approveERC20Tx.wait(5));
|
|
61
70
|
let paymentTx;
|
|
62
71
|
if (principalOnly) {
|
|
63
72
|
paymentTx = await creditContract.makePrincipalPaymentWithReceivable(await signer.getAddress(), receivableId, paymentAmount, gasOpts);
|
|
@@ -87,9 +96,17 @@ export async function makePrincipalPaymentAndDrawdownWithReceivable(signer, pool
|
|
|
87
96
|
throw new Error('Could not find credit contract');
|
|
88
97
|
}
|
|
89
98
|
const underlyingToken = await getPoolUnderlyingTokenContractV2(poolName, signer.provider);
|
|
90
|
-
|
|
91
|
-
|
|
99
|
+
const poolSafeContract = await getPoolSafeContractV2(poolName, signer.provider);
|
|
100
|
+
if (!poolSafeContract) {
|
|
101
|
+
throw new Error('Could not find pool safe contract');
|
|
102
|
+
}
|
|
103
|
+
if (!underlyingToken) {
|
|
104
|
+
throw new Error('Could not find underlying token contract');
|
|
92
105
|
}
|
|
106
|
+
const approveERC20Tx = await approveERC20AllowanceIfInsufficient(signer, underlyingToken.address, poolSafeContract.address, paymentAmount, gasOpts);
|
|
107
|
+
await (approveERC20Tx === null || approveERC20Tx === void 0 ? void 0 : approveERC20Tx.wait(5));
|
|
108
|
+
const approveTx = await approveReceivableTransferIfNeeded(signer, poolName, drawdownReceivableId);
|
|
109
|
+
await (approveTx === null || approveTx === void 0 ? void 0 : approveTx.wait(5));
|
|
93
110
|
return creditContract.makePrincipalPaymentAndDrawdownWithReceivable(await signer.getAddress(), paymentReceivableId, paymentAmount, drawdownReceivableId, drawdownAmount, gasOpts);
|
|
94
111
|
}
|
|
95
112
|
//# sourceMappingURL=ReceivableBackedCreditLineContractHelper.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReceivableBackedCreditLineContractHelper.js","sourceRoot":"","sources":["../../../src/helpers/v2/ReceivableBackedCreditLineContractHelper.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,8BAA8B,EAC9B,aAAa,EACb,gCAAgC,EAEhC,SAAS,EACT,oCAAoC,GACrC,MAAM,sBAAsB,CAAA;AAG7B,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AACzC,OAAO,EAAE,mCAAmC,EAAE,MAAM,wBAAwB,CAAA;
|
|
1
|
+
{"version":3,"file":"ReceivableBackedCreditLineContractHelper.js","sourceRoot":"","sources":["../../../src/helpers/v2/ReceivableBackedCreditLineContractHelper.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { BigNumber, ethers } from 'ethers';
|
|
1
|
+
import { BigNumber, BigNumberish, Overrides, ethers } from 'ethers';
|
|
2
2
|
import { POOL_NAME, v2Contracts } from '@huma-finance/shared';
|
|
3
|
-
import { JsonRpcProvider, Web3Provider } from '@ethersproject/providers';
|
|
3
|
+
import { JsonRpcProvider, TransactionResponse, Web3Provider } from '@ethersproject/providers';
|
|
4
4
|
/**
|
|
5
5
|
* Returns an ethers contract instance for the V2 Receivable contract
|
|
6
6
|
* associated with the given pool name on the current chain.
|
|
@@ -12,3 +12,4 @@ import { JsonRpcProvider, Web3Provider } from '@ethersproject/providers';
|
|
|
12
12
|
export declare function getReceivableContractV2(poolName: POOL_NAME, signerOrProvider: JsonRpcProvider | Web3Provider | ethers.Signer): Promise<v2Contracts.Receivable | null>;
|
|
13
13
|
export declare function getReceivableTokenIdFromReferenceId(referenceId: string, creator: string, poolName: POOL_NAME, provider: JsonRpcProvider | Web3Provider): Promise<BigNumber>;
|
|
14
14
|
export declare function getReceivableReferenceAlreadyExists(referenceId: string, signerAddress: string, poolName: POOL_NAME, provider: JsonRpcProvider | Web3Provider): Promise<boolean>;
|
|
15
|
+
export declare function approveReceivableTransferIfNeeded(signer: ethers.Signer, poolName: POOL_NAME, receivableId: BigNumberish, gasOpts?: Overrides): Promise<TransactionResponse | null>;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ethers } from 'ethers';
|
|
2
|
-
import { RECEIVABLE_V2_ABI, getPoolConfigContractV2, } from '@huma-finance/shared';
|
|
2
|
+
import { RECEIVABLE_V2_ABI, getPoolConfigContractV2, getPoolCreditContractV2, } from '@huma-finance/shared';
|
|
3
3
|
import { getContract } from '../../utils';
|
|
4
4
|
/**
|
|
5
5
|
* Returns an ethers contract instance for the V2 Receivable contract
|
|
@@ -36,4 +36,22 @@ export async function getReceivableReferenceAlreadyExists(referenceId, signerAdd
|
|
|
36
36
|
const tokenId = await getReceivableTokenIdFromReferenceId(referenceId, signerAddress, poolName, provider);
|
|
37
37
|
return !tokenId.isZero();
|
|
38
38
|
}
|
|
39
|
+
export async function approveReceivableTransferIfNeeded(signer, poolName, receivableId, gasOpts = {}) {
|
|
40
|
+
const receivableContract = await getReceivableContractV2(poolName, signer);
|
|
41
|
+
if (!receivableContract) {
|
|
42
|
+
throw new Error('Could not find Receivable contract');
|
|
43
|
+
}
|
|
44
|
+
// Check if the pool is already approved to transfer the receivable
|
|
45
|
+
const provider = signer.provider;
|
|
46
|
+
const poolCreditContract = await getPoolCreditContractV2(poolName, provider);
|
|
47
|
+
if (!poolCreditContract) {
|
|
48
|
+
throw new Error('Could not find pool credit contract');
|
|
49
|
+
}
|
|
50
|
+
const approvedAddress = await receivableContract.getApproved(receivableId);
|
|
51
|
+
if (poolCreditContract.address &&
|
|
52
|
+
approvedAddress === poolCreditContract.address) {
|
|
53
|
+
return null;
|
|
54
|
+
}
|
|
55
|
+
return receivableContract.approve(poolCreditContract.address, receivableId, gasOpts);
|
|
56
|
+
}
|
|
39
57
|
//# sourceMappingURL=ReceivableContractHelper.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ReceivableContractHelper.js","sourceRoot":"","sources":["../../../src/helpers/v2/ReceivableContractHelper.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"ReceivableContractHelper.js","sourceRoot":"","sources":["../../../src/helpers/v2/ReceivableContractHelper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsC,MAAM,EAAE,MAAM,QAAQ,CAAA;AACnE,OAAO,EAGL,iBAAiB,EACjB,uBAAuB,EACvB,uBAAuB,GACxB,MAAM,sBAAsB,CAAA;AAO7B,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAEzC;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,QAAmB,EACnB,gBAAgE;IAEhE,IAAI,QAAQ,CAAA;IACZ,IAAI,gBAAgB,YAAY,MAAM,CAAC,MAAM,EAAE;QAC7C,QAAQ,GAAG,gBAAgB,CAAC,QAA0C,CAAA;KACvE;SAAM;QACL,QAAQ,GAAG,gBAAgB,CAAA;KAC5B;IAED,MAAM,kBAAkB,GAAG,MAAM,uBAAuB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;IAE5E,IAAI,CAAC,kBAAkB,EAAE;QACvB,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAA;KACtD;IACD,MAAM,eAAe,GAAG,MAAM,kBAAkB,CAAC,eAAe,EAAE,CAAA;IAElE,OAAO,WAAW,CAChB,eAAe,EACf,iBAAiB,EACjB,gBAAgB,CACjB,CAAA;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mCAAmC,CACvD,WAAmB,EACnB,OAAe,EACf,QAAmB,EACnB,QAAwC;IAExC,MAAM,QAAQ,GAAG,MAAM,uBAAuB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;IAClE,IAAI,CAAC,QAAQ,EAAE;QACb,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAA;KACtD;IAED,MAAM,eAAe,GAAG,MAAM,QAAQ,CAAC,kBAAkB,CACvD,WAAW,EACX,OAAO,CACR,CAAA;IAED,OAAO,QAAQ,CAAC,wBAAwB,CAAC,eAAe,CAAC,CAAA;AAC3D,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mCAAmC,CACvD,WAAmB,EACnB,aAAqB,EACrB,QAAmB,EACnB,QAAwC;IAExC,MAAM,OAAO,GAAG,MAAM,mCAAmC,CACvD,WAAW,EACX,aAAa,EACb,QAAQ,EACR,QAAQ,CACT,CAAA;IAED,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,CAAA;AAC1B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iCAAiC,CACrD,MAAqB,EACrB,QAAmB,EACnB,YAA0B,EAC1B,UAAqB,EAAE;IAEvB,MAAM,kBAAkB,GAAG,MAAM,uBAAuB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;IAE1E,IAAI,CAAC,kBAAkB,EAAE;QACvB,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAA;KACtD;IAED,mEAAmE;IACnE,MAAM,QAAQ,GAAG,MAAM,CAAC,QAA0C,CAAA;IAClE,MAAM,kBAAkB,GAAG,MAAM,uBAAuB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;IAE5E,IAAI,CAAC,kBAAkB,EAAE;QACvB,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;KACvD;IAED,MAAM,eAAe,GAAG,MAAM,kBAAkB,CAAC,WAAW,CAAC,YAAY,CAAC,CAAA;IAC1E,IACE,kBAAkB,CAAC,OAAO;QAC1B,eAAe,KAAK,kBAAkB,CAAC,OAAO,EAC9C;QACA,OAAO,IAAI,CAAA;KACZ;IAED,OAAO,kBAAkB,CAAC,OAAO,CAC/B,kBAAkB,CAAC,OAAO,EAC1B,YAAY,EACZ,OAAO,CACR,CAAA;AACH,CAAC"}
|
|
@@ -11,7 +11,7 @@ export class HumaReceivableHandler {
|
|
|
11
11
|
__classPrivateFieldSet(this, _HumaReceivableHandler_humaContext, humaContext, "f");
|
|
12
12
|
}
|
|
13
13
|
async declarePayment(paymentAmount, referenceId = '', gasOpts = {}) {
|
|
14
|
-
const contract = await getReceivableContractV2(__classPrivateFieldGet(this, _HumaReceivableHandler_humaContext, "f").poolName, __classPrivateFieldGet(this, _HumaReceivableHandler_humaContext, "f").
|
|
14
|
+
const contract = await getReceivableContractV2(__classPrivateFieldGet(this, _HumaReceivableHandler_humaContext, "f").poolName, __classPrivateFieldGet(this, _HumaReceivableHandler_humaContext, "f").signer);
|
|
15
15
|
if (!contract) {
|
|
16
16
|
throw new Error('Could not find Receivable contract');
|
|
17
17
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HumaReceivableHandler.js","sourceRoot":"","sources":["../../../src/services/v2/HumaReceivableHandler.ts"],"names":[],"mappings":";;AAGA,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAClD,OAAO,EACL,uBAAuB,EACvB,mCAAmC,GACpC,MAAM,eAAe,CAAA;AAEtB,MAAM,OAAO,qBAAqB;IAGhC,YAAY,EAAE,WAAW,EAAgC;QAFzD,qDAAyB;QAGvB,IAAI,CAAC,WAAW,EAAE;YAChB,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAA;SAC/C;QAED,uBAAA,IAAI,sCAAgB,WAAW,MAAA,CAAA;IACjC,CAAC;IAED,KAAK,CAAC,cAAc,CAClB,aAAwB,EACxB,cAAsB,EAAE,EACxB,UAAqB,EAAE;QAEvB,MAAM,QAAQ,GAAG,MAAM,uBAAuB,CAC5C,uBAAA,IAAI,0CAAa,CAAC,QAAQ,EAC1B,uBAAA,IAAI,0CAAa,CAAC,
|
|
1
|
+
{"version":3,"file":"HumaReceivableHandler.js","sourceRoot":"","sources":["../../../src/services/v2/HumaReceivableHandler.ts"],"names":[],"mappings":";;AAGA,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAClD,OAAO,EACL,uBAAuB,EACvB,mCAAmC,GACpC,MAAM,eAAe,CAAA;AAEtB,MAAM,OAAO,qBAAqB;IAGhC,YAAY,EAAE,WAAW,EAAgC;QAFzD,qDAAyB;QAGvB,IAAI,CAAC,WAAW,EAAE;YAChB,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAA;SAC/C;QAED,uBAAA,IAAI,sCAAgB,WAAW,MAAA,CAAA;IACjC,CAAC;IAED,KAAK,CAAC,cAAc,CAClB,aAAwB,EACxB,cAAsB,EAAE,EACxB,UAAqB,EAAE;QAEvB,MAAM,QAAQ,GAAG,MAAM,uBAAuB,CAC5C,uBAAA,IAAI,0CAAa,CAAC,QAAQ,EAC1B,uBAAA,IAAI,0CAAa,CAAC,MAAM,CACzB,CAAA;QACD,IAAI,CAAC,QAAQ,EAAE;YACb,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAA;SACtD;QAED,OAAO,GAAG,MAAM,oBAAoB,CAAC,OAAO,EAAE,uBAAA,IAAI,0CAAa,CAAC,OAAO,CAAC,CAAA;QAExE,MAAM,aAAa,GAAG,MAAM,uBAAA,IAAI,0CAAa,CAAC,MAAM,CAAC,UAAU,EAAE,CAAA;QACjE,MAAM,OAAO,GAAG,MAAM,mCAAmC,CACvD,WAAW,EACX,aAAa,EACb,uBAAA,IAAI,0CAAa,CAAC,QAAQ,EAC1B,uBAAA,IAAI,0CAAa,CAAC,QAAQ,CAC3B,CAAA;QAED,IAAI,CAAC,OAAO,EAAE;YACZ,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAA;SAC1C;QAED,OAAO,QAAQ,CAAC,cAAc,CAAC,OAAO,EAAE,aAAa,EAAE,OAAO,CAAC,CAAA;IACjE,CAAC;CACF"}
|