@huma-finance/sdk 0.0.62-beta.616 → 0.0.62-beta.621

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 (89) hide show
  1. package/API.md +39 -21
  2. package/dist/cjs/graphql/generatedTypes.js +1 -2
  3. package/dist/cjs/graphql/generatedTypes.js.map +1 -1
  4. package/dist/cjs/helpers/ERC20ContractHelper.js +1 -2
  5. package/dist/cjs/helpers/ERC20ContractHelper.js.map +1 -1
  6. package/dist/cjs/helpers/ERC20TransferableReceivableContractHelper.js +1 -2
  7. package/dist/cjs/helpers/ERC20TransferableReceivableContractHelper.js.map +1 -1
  8. package/dist/cjs/helpers/PoolContractHelper.js +6 -7
  9. package/dist/cjs/helpers/PoolContractHelper.js.map +1 -1
  10. package/dist/cjs/helpers/RealWorldReceivableContractHelper.js +1 -2
  11. package/dist/cjs/helpers/RealWorldReceivableContractHelper.js.map +1 -1
  12. package/dist/cjs/helpers/index.d.ts +3 -0
  13. package/dist/cjs/helpers/index.js +3 -0
  14. package/dist/cjs/helpers/index.js.map +1 -1
  15. package/dist/cjs/helpers/solana/HumaSolanaContext.d.ts +19 -0
  16. package/dist/cjs/helpers/solana/HumaSolanaContext.js +47 -0
  17. package/dist/cjs/helpers/solana/HumaSolanaContext.js.map +1 -0
  18. package/dist/cjs/helpers/solana/HumaSolanaProgramHelper.d.ts +15 -0
  19. package/dist/cjs/helpers/solana/HumaSolanaProgramHelper.js +175 -0
  20. package/dist/cjs/helpers/solana/HumaSolanaProgramHelper.js.map +1 -0
  21. package/dist/cjs/helpers/solana/HumaSolanaReceivableHelper.d.ts +31 -0
  22. package/dist/cjs/helpers/solana/HumaSolanaReceivableHelper.js +126 -0
  23. package/dist/cjs/helpers/solana/HumaSolanaReceivableHelper.js.map +1 -0
  24. package/dist/cjs/helpers/v2/CreditContractHelper.js +3 -4
  25. package/dist/cjs/helpers/v2/CreditContractHelper.js.map +1 -1
  26. package/dist/cjs/helpers/v2/ReceivableBackedCreditLineContractHelper.js +5 -6
  27. package/dist/cjs/helpers/v2/ReceivableBackedCreditLineContractHelper.js.map +1 -1
  28. package/dist/cjs/helpers/v2/ReceivableContractHelper.js +4 -5
  29. package/dist/cjs/helpers/v2/ReceivableContractHelper.js.map +1 -1
  30. package/dist/cjs/services/ARWeaveService.d.ts +38 -21
  31. package/dist/cjs/services/ARWeaveService.js +67 -80
  32. package/dist/cjs/services/ARWeaveService.js.map +1 -1
  33. package/dist/cjs/services/ReceivableService.js +1 -1
  34. package/dist/cjs/services/ReceivableService.js.map +1 -1
  35. package/dist/cjs/services/SubgraphService.js.map +1 -1
  36. package/dist/cjs/services/v2/HumaContext.js.map +1 -1
  37. package/dist/cjs/services/v2/HumaReceivableFactory.js +1 -1
  38. package/dist/cjs/services/v2/HumaReceivableFactory.js.map +1 -1
  39. package/dist/cjs/services/v2/HumaReceivableHandler.js.map +1 -1
  40. package/dist/cjs/utils/chain.js +4 -5
  41. package/dist/cjs/utils/chain.js.map +1 -1
  42. package/dist/cjs/utils/index.d.ts +1 -0
  43. package/dist/cjs/utils/index.js +1 -0
  44. package/dist/cjs/utils/index.js.map +1 -1
  45. package/dist/cjs/utils/maticGasStation.js +3 -4
  46. package/dist/cjs/utils/maticGasStation.js.map +1 -1
  47. package/dist/cjs/utils/solana/getReceivableReferenceAccount.d.ts +8 -0
  48. package/dist/cjs/utils/solana/getReceivableReferenceAccount.js +38 -0
  49. package/dist/cjs/utils/solana/getReceivableReferenceAccount.js.map +1 -0
  50. package/dist/cjs/utils/web3.js +3 -4
  51. package/dist/cjs/utils/web3.js.map +1 -1
  52. package/dist/helpers/ERC20ContractHelper.js.map +1 -1
  53. package/dist/helpers/PoolContractHelper.js.map +1 -1
  54. package/dist/helpers/index.d.ts +3 -0
  55. package/dist/helpers/index.js +3 -0
  56. package/dist/helpers/index.js.map +1 -1
  57. package/dist/helpers/solana/HumaSolanaContext.d.ts +19 -0
  58. package/dist/helpers/solana/HumaSolanaContext.js +43 -0
  59. package/dist/helpers/solana/HumaSolanaContext.js.map +1 -0
  60. package/dist/helpers/solana/HumaSolanaProgramHelper.d.ts +15 -0
  61. package/dist/helpers/solana/HumaSolanaProgramHelper.js +171 -0
  62. package/dist/helpers/solana/HumaSolanaProgramHelper.js.map +1 -0
  63. package/dist/helpers/solana/HumaSolanaReceivableHelper.d.ts +31 -0
  64. package/dist/helpers/solana/HumaSolanaReceivableHelper.js +122 -0
  65. package/dist/helpers/solana/HumaSolanaReceivableHelper.js.map +1 -0
  66. package/dist/helpers/v2/CreditContractHelper.js.map +1 -1
  67. package/dist/helpers/v2/ReceivableBackedCreditLineContractHelper.js.map +1 -1
  68. package/dist/helpers/v2/ReceivableContractHelper.js.map +1 -1
  69. package/dist/services/ARWeaveService.d.ts +38 -21
  70. package/dist/services/ARWeaveService.js +65 -78
  71. package/dist/services/ARWeaveService.js.map +1 -1
  72. package/dist/services/ReceivableService.js +1 -1
  73. package/dist/services/ReceivableService.js.map +1 -1
  74. package/dist/services/SubgraphService.js.map +1 -1
  75. package/dist/services/v2/HumaContext.js.map +1 -1
  76. package/dist/services/v2/HumaReceivableFactory.js +1 -1
  77. package/dist/services/v2/HumaReceivableFactory.js.map +1 -1
  78. package/dist/services/v2/HumaReceivableHandler.js.map +1 -1
  79. package/dist/tsconfig.cjs.tsbuildinfo +1 -1
  80. package/dist/utils/chain.js.map +1 -1
  81. package/dist/utils/index.d.ts +1 -0
  82. package/dist/utils/index.js +1 -0
  83. package/dist/utils/index.js.map +1 -1
  84. package/dist/utils/maticGasStation.js.map +1 -1
  85. package/dist/utils/solana/getReceivableReferenceAccount.d.ts +8 -0
  86. package/dist/utils/solana/getReceivableReferenceAccount.js +33 -0
  87. package/dist/utils/solana/getReceivableReferenceAccount.js.map +1 -0
  88. package/dist/utils/web3.js.map +1 -1
  89. package/package.json +11 -5
@@ -0,0 +1,126 @@
1
+ "use strict";
2
+ var _HumaSolanaReceivableHelper_solanaContext;
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.HumaSolanaReceivableHelper = void 0;
5
+ const tslib_1 = require("tslib");
6
+ const shared_1 = require("@huma-finance/shared");
7
+ const web3_js_1 = require("@solana/web3.js");
8
+ const lodash_1 = tslib_1.__importDefault(require("lodash"));
9
+ const getReceivableReferenceAccount_1 = require("../../utils/solana/getReceivableReferenceAccount");
10
+ const HumaSolanaProgramHelper_1 = require("./HumaSolanaProgramHelper");
11
+ class HumaSolanaReceivableHelper {
12
+ constructor({ solanaContext }) {
13
+ _HumaSolanaReceivableHelper_solanaContext.set(this, void 0);
14
+ if (!solanaContext) {
15
+ throw new Error('All parameters are required');
16
+ }
17
+ tslib_1.__classPrivateFieldSet(this, _HumaSolanaReceivableHelper_solanaContext, solanaContext, "f");
18
+ }
19
+ async buildCreateReceivableTransaction(newAsset, receivableArgs) {
20
+ const { publicKey, connection, chainId, poolName } = tslib_1.__classPrivateFieldGet(this, _HumaSolanaReceivableHelper_solanaContext, "f");
21
+ const program = (0, shared_1.getHumaProgram)(chainId, connection);
22
+ const poolInfo = (0, shared_1.getSolanaPoolInfo)(chainId, poolName);
23
+ if (!poolInfo) {
24
+ throw new Error('Could not find pool');
25
+ }
26
+ const tx = new web3_js_1.Transaction();
27
+ const receivableReferencePDA = (0, getReceivableReferenceAccount_1.getReceivableReferenceAccount)(chainId, publicKey, receivableArgs.referenceId);
28
+ const remainingAccounts = [
29
+ {
30
+ pubkey: receivableReferencePDA,
31
+ isWritable: true,
32
+ isSigner: false,
33
+ },
34
+ ];
35
+ const programTx = await program.methods
36
+ .createReceivable(receivableArgs)
37
+ .accountsPartial({
38
+ asset: newAsset.publicKey,
39
+ owner: publicKey,
40
+ humaConfig: poolInfo.humaConfig,
41
+ poolConfig: poolInfo.poolConfig,
42
+ poolState: poolInfo.poolState,
43
+ mplCore: HumaSolanaProgramHelper_1.MPL_CORE_PROGRAM_ID,
44
+ logWrapper: null,
45
+ })
46
+ .remainingAccounts(remainingAccounts)
47
+ .transaction();
48
+ tx.add(programTx);
49
+ tx.feePayer = publicKey;
50
+ return tx;
51
+ }
52
+ async buildDeclarePaymentTransaction(referenceId, paymentAmount) {
53
+ const { publicKey, connection, chainId, poolName } = tslib_1.__classPrivateFieldGet(this, _HumaSolanaReceivableHelper_solanaContext, "f");
54
+ const program = (0, shared_1.getHumaProgram)(chainId, connection);
55
+ const poolInfo = (0, shared_1.getSolanaPoolInfo)(chainId, poolName);
56
+ if (!poolInfo) {
57
+ throw new Error('Could not find pool');
58
+ }
59
+ const tx = new web3_js_1.Transaction();
60
+ const receivableReferenceData = await (0, getReceivableReferenceAccount_1.getReceivableReferenceData)(chainId, publicKey, connection, referenceId);
61
+ const programTx = await program.methods
62
+ .declarePayment(paymentAmount)
63
+ .accountsPartial({
64
+ authority: publicKey,
65
+ asset: receivableReferenceData.asset,
66
+ humaConfig: poolInfo.humaConfig,
67
+ poolConfig: poolInfo.poolConfig,
68
+ poolState: poolInfo.poolState,
69
+ mplCore: HumaSolanaProgramHelper_1.MPL_CORE_PROGRAM_ID,
70
+ logWrapper: null,
71
+ })
72
+ .transaction();
73
+ tx.add(programTx);
74
+ return tx;
75
+ }
76
+ async getReceivableInfo(referenceId) {
77
+ const { publicKey, connection, chainId, poolName } = tslib_1.__classPrivateFieldGet(this, _HumaSolanaReceivableHelper_solanaContext, "f");
78
+ const program = (0, shared_1.getHumaProgram)(chainId, connection);
79
+ const poolInfo = (0, shared_1.getSolanaPoolInfo)(chainId, poolName);
80
+ if (!poolInfo) {
81
+ throw new Error('Could not find pool');
82
+ }
83
+ const receivableReferenceData = await (0, getReceivableReferenceAccount_1.getReceivableReferenceData)(chainId, publicKey, connection, referenceId);
84
+ const [receivableInfoPDA] = web3_js_1.PublicKey.findProgramAddressSync([
85
+ Buffer.from('receivable_info'),
86
+ receivableReferenceData.asset.toBuffer(),
87
+ ], program.programId);
88
+ const data = await program.account.receivableInfo.fetchMultiple([
89
+ receivableInfoPDA,
90
+ ]);
91
+ const receivableInfo = data[0];
92
+ if (!receivableInfo) {
93
+ return null;
94
+ }
95
+ let state;
96
+ if (lodash_1.default.isEqual(receivableInfo.state, { deleted: {} })) {
97
+ state = 'deleted';
98
+ }
99
+ else if (lodash_1.default.isEqual(receivableInfo.state, { minted: {} })) {
100
+ state = 'minted';
101
+ }
102
+ else if (lodash_1.default.isEqual(receivableInfo.state, { approved: {} })) {
103
+ state = 'approved';
104
+ }
105
+ else if (lodash_1.default.isEqual(receivableInfo.state, { partiallyPaid: {} })) {
106
+ state = 'partiallyPaid';
107
+ }
108
+ else if (lodash_1.default.isEqual(receivableInfo.state, { paid: {} })) {
109
+ state = 'paid';
110
+ }
111
+ else if (lodash_1.default.isEqual(receivableInfo.state, { rejected: {} })) {
112
+ state = 'rejected';
113
+ }
114
+ else if (lodash_1.default.isEqual(receivableInfo.state, { delayed: {} })) {
115
+ state = 'delayed';
116
+ }
117
+ else {
118
+ state = 'defaulted';
119
+ }
120
+ receivableInfo.state = state;
121
+ return receivableInfo;
122
+ }
123
+ }
124
+ exports.HumaSolanaReceivableHelper = HumaSolanaReceivableHelper;
125
+ _HumaSolanaReceivableHelper_solanaContext = new WeakMap();
126
+ //# sourceMappingURL=HumaSolanaReceivableHelper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HumaSolanaReceivableHelper.js","sourceRoot":"","sources":["../../../../src/helpers/solana/HumaSolanaReceivableHelper.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getAvailableCreditForPool = exports.getCreditRecordForPool = exports.getAvailableBalanceForPool = void 0;
3
+ exports.getAvailableBalanceForPool = getAvailableBalanceForPool;
4
+ exports.getCreditRecordForPool = getCreditRecordForPool;
5
+ exports.getAvailableCreditForPool = getAvailableCreditForPool;
4
6
  const shared_1 = require("@huma-finance/shared");
5
7
  /**
6
8
  * Returns the current pool balance available for borrowing
@@ -15,7 +17,6 @@ async function getAvailableBalanceForPool(poolName, provider) {
15
17
  }
16
18
  return safeContract.getAvailableBalanceForPool();
17
19
  }
18
- exports.getAvailableBalanceForPool = getAvailableBalanceForPool;
19
20
  /**
20
21
  * Returns the credit record of the borrower
21
22
  *
@@ -30,7 +31,6 @@ async function getCreditRecordForPool(poolName, borrower, provider) {
30
31
  }
31
32
  return creditRecord;
32
33
  }
33
- exports.getCreditRecordForPool = getCreditRecordForPool;
34
34
  /**
35
35
  * Returns the borrower's remaining credit they can use for borrowing. Note that this might not be
36
36
  * currently available for borrowing as the credit limit might exceed the available pool balance. Use
@@ -48,5 +48,4 @@ async function getAvailableCreditForPool(borrower, poolName, provider) {
48
48
  }
49
49
  return creditConfig.creditLimit.sub(creditRecord.unbilledPrincipal);
50
50
  }
51
- exports.getAvailableCreditForPool = getAvailableCreditForPool;
52
51
  //# sourceMappingURL=CreditContractHelper.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CreditContractHelper.js","sourceRoot":"","sources":["../../../../src/helpers/v2/CreditContractHelper.ts"],"names":[],"mappings":";;;AACA,iDAM6B;AAG7B;;;;;GAKG;AACI,KAAK,UAAU,0BAA0B,CAC9C,QAAmB,EACnB,QAAwC;IAExC,MAAM,YAAY,GAAG,MAAM,IAAA,8BAAqB,EAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;IAEpE,IAAI,CAAC,YAAY,EAAE;QACjB,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAA;KACzD;IAED,OAAO,YAAY,CAAC,0BAA0B,EAAE,CAAA;AAClD,CAAC;AAXD,gEAWC;AAED;;;;;;GAMG;AACI,KAAK,UAAU,sBAAsB,CAC1C,QAAmB,EACnB,QAAgB,EAChB,QAAwC;IAExC,MAAM,YAAY,GAAG,MAAM,IAAA,0BAAiB,EAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAA;IAE1E,IAAI,CAAC,YAAY,EAAE;QACjB,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAA;KACzD;IAED,OAAO,YAAY,CAAA;AACrB,CAAC;AAZD,wDAYC;AAED;;;;;;;;GAQG;AACI,KAAK,UAAU,yBAAyB,CAC7C,QAAgB,EAChB,QAAmB,EACnB,QAAwC;IAExC,MAAM,YAAY,GAAG,MAAM,IAAA,0BAAiB,EAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAA;IAC1E,MAAM,YAAY,GAAG,MAAM,IAAA,0BAAiB,EAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAA;IAE1E,IAAI,CAAC,YAAY,IAAI,CAAC,YAAY,EAAE;QAClC,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAA;KACjE;IAED,OAAO,YAAY,CAAC,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAA;AACrE,CAAC;AAbD,8DAaC"}
1
+ {"version":3,"file":"CreditContractHelper.js","sourceRoot":"","sources":["../../../../src/helpers/v2/CreditContractHelper.ts"],"names":[],"mappings":";;AAgBA,gEAWC;AASD,wDAYC;AAWD,8DAaC;AAvED,iDAM6B;AAG7B;;;;;GAKG;AACI,KAAK,UAAU,0BAA0B,CAC9C,QAAmB,EACnB,QAAwC;IAExC,MAAM,YAAY,GAAG,MAAM,IAAA,8BAAqB,EAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;IAEpE,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAA;IAC1D,CAAC;IAED,OAAO,YAAY,CAAC,0BAA0B,EAAE,CAAA;AAClD,CAAC;AAED;;;;;;GAMG;AACI,KAAK,UAAU,sBAAsB,CAC1C,QAAmB,EACnB,QAAgB,EAChB,QAAwC;IAExC,MAAM,YAAY,GAAG,MAAM,IAAA,0BAAiB,EAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAA;IAE1E,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAA;IAC1D,CAAC;IAED,OAAO,YAAY,CAAA;AACrB,CAAC;AAED;;;;;;;;GAQG;AACI,KAAK,UAAU,yBAAyB,CAC7C,QAAgB,EAChB,QAAmB,EACnB,QAAwC;IAExC,MAAM,YAAY,GAAG,MAAM,IAAA,0BAAiB,EAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAA;IAC1E,MAAM,YAAY,GAAG,MAAM,IAAA,0BAAiB,EAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAA;IAE1E,IAAI,CAAC,YAAY,IAAI,CAAC,YAAY,EAAE,CAAC;QACnC,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAA;IAClE,CAAC;IAED,OAAO,YAAY,CAAC,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAA;AACrE,CAAC"}
@@ -1,6 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.makePrincipalPaymentAndDrawdownWithReceivable = exports.makePaymentWithReceivable = exports.drawdownWithReceivable = exports.getTotalDueV2 = exports.getReceivableBackedCreditLineContractV2 = void 0;
3
+ exports.getReceivableBackedCreditLineContractV2 = getReceivableBackedCreditLineContractV2;
4
+ exports.getTotalDueV2 = getTotalDueV2;
5
+ exports.drawdownWithReceivable = drawdownWithReceivable;
6
+ exports.makePaymentWithReceivable = makePaymentWithReceivable;
7
+ exports.makePrincipalPaymentAndDrawdownWithReceivable = makePrincipalPaymentAndDrawdownWithReceivable;
4
8
  const shared_1 = require("@huma-finance/shared");
5
9
  const utils_1 = require("../../utils");
6
10
  const ERC20ContractHelper_1 = require("../ERC20ContractHelper");
@@ -21,7 +25,6 @@ async function getReceivableBackedCreditLineContractV2(poolName, signerOrProvide
21
25
  }
22
26
  return (0, utils_1.getContract)(poolInfo.poolCredit, shared_1.RECEIVABLE_BACKED_CREDIT_LINE_V2_ABI, signerOrProvider);
23
27
  }
24
- exports.getReceivableBackedCreditLineContractV2 = getReceivableBackedCreditLineContractV2;
25
28
  /**
26
29
  * Returns account's total due amount in BigNumber format
27
30
  * associated with the given pool name on the current chain.
@@ -37,7 +40,6 @@ async function getTotalDueV2(poolName, account, provider) {
37
40
  }
38
41
  return creditRecord.nextDue.add(creditRecord.totalPastDue);
39
42
  }
40
- exports.getTotalDueV2 = getTotalDueV2;
41
43
  /**
42
44
  * Draws down from a pool using a receivable.
43
45
  *
@@ -65,7 +67,6 @@ async function drawdownWithReceivable(signer, poolName, receivableId, drawdownAm
65
67
  await (approveTx === null || approveTx === void 0 ? void 0 : approveTx.wait((0, utils_1.getChainConfirmations)(chainId)));
66
68
  return creditContract.drawdownWithReceivable(receivableId, drawdownAmount, gasOpts);
67
69
  }
68
- exports.drawdownWithReceivable = drawdownWithReceivable;
69
70
  /**
70
71
  * Makes a payment with a receivable.
71
72
  *
@@ -109,7 +110,6 @@ async function makePaymentWithReceivable(signer, poolName, receivableId, payment
109
110
  }
110
111
  return paymentTx;
111
112
  }
112
- exports.makePaymentWithReceivable = makePaymentWithReceivable;
113
113
  /**
114
114
  * Makes a principal payment and drawdown with receivables.
115
115
  *
@@ -153,5 +153,4 @@ async function makePrincipalPaymentAndDrawdownWithReceivable(signer, poolName, p
153
153
  }
154
154
  return creditContract.makePrincipalPaymentAndDrawdownWithReceivable(paymentReceivableId, paymentAmount, drawdownReceivableId, drawdownAmount, gasOpts);
155
155
  }
156
- exports.makePrincipalPaymentAndDrawdownWithReceivable = makePrincipalPaymentAndDrawdownWithReceivable;
157
156
  //# sourceMappingURL=ReceivableBackedCreditLineContractHelper.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ReceivableBackedCreditLineContractHelper.js","sourceRoot":"","sources":["../../../../src/helpers/v2/ReceivableBackedCreditLineContractHelper.ts"],"names":[],"mappings":";;;AAKA,iDAS6B;AAG7B,uCAAgE;AAChE,gEAA4E;AAC5E,yEAA8E;AAE9E;;;;;;;GAOG;AACI,KAAK,UAAU,uCAAuC,CAC3D,QAAmB,EACnB,gBAAgE;IAEhE,MAAM,OAAO,GAAG,MAAM,IAAA,uCAA8B,EAAC,gBAAgB,CAAC,CAAA;IACtE,MAAM,QAAQ,GAAG,IAAA,sBAAa,EAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;IACjD,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,QAAQ,KAAK,kBAAS,CAAC,0BAA0B,EAAE;QAC3E,OAAO,IAAI,CAAA;KACZ;IAED,OAAO,IAAA,mBAAW,EAChB,QAAQ,CAAC,UAAU,EACnB,6CAAoC,EACpC,gBAAgB,CACjB,CAAA;AACH,CAAC;AAfD,0FAeC;AAED;;;;;;;GAOG;AACI,KAAK,UAAU,aAAa,CACjC,QAAmB,EACnB,OAAe,EACf,QAAwC;IAExC,MAAM,YAAY,GAAG,MAAM,IAAA,0BAAiB,EAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAA;IACzE,IAAI,CAAC,YAAY,EAAE;QACjB,OAAO,IAAI,CAAA;KACZ;IAED,OAAO,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,YAAY,CAAC,CAAA;AAC5D,CAAC;AAXD,sCAWC;AAED;;;;;;;;;;;GAWG;AACI,KAAK,UAAU,sBAAsB,CAC1C,MAAqB,EACrB,QAAmB,EACnB,YAA0B,EAC1B,cAA4B,EAC5B,UAAqB,EAAE;IAEvB,MAAM,CAAC,cAAc,EAAE,OAAO,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAClD,uCAAuC,CAAC,QAAQ,EAAE,MAAM,CAAC;QACzD,IAAA,uCAA8B,EAAC,MAAM,CAAC;KACvC,CAAC,CAAA;IAEF,IAAI,CAAC,cAAc,EAAE;QACnB,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;KAClD;IACD,IAAI,CAAC,OAAO,EAAE;QACZ,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;KAC3C;IAED,MAAM,SAAS,GAAG,MAAM,IAAA,4DAAiC,EACvD,MAAM,EACN,QAAQ,EACR,YAAY,CACb,CAAA;IACD,MAAM,CAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,IAAI,CAAC,IAAA,6BAAqB,EAAC,OAAO,CAAC,CAAC,CAAA,CAAA;IAErD,OAAO,cAAc,CAAC,sBAAsB,CAC1C,YAAY,EACZ,cAAc,EACd,OAAO,CACR,CAAA;AACH,CAAC;AA/BD,wDA+BC;AAED;;;;;;;;;;;;GAYG;AACI,KAAK,UAAU,yBAAyB,CAC7C,MAAqB,EACrB,QAAmB,EACnB,YAA0B,EAC1B,aAA2B,EAC3B,aAAsB,EACtB,UAAqB,EAAE;IAEvB,MAAM,CAAC,cAAc,EAAE,gBAAgB,EAAE,eAAe,EAAE,OAAO,CAAC,GAChE,MAAM,OAAO,CAAC,GAAG,CAAC;QAChB,uCAAuC,CAAC,QAAQ,EAAE,MAAM,CAAC;QACzD,IAAA,8BAAqB,EACnB,QAAQ,EACR,MAAM,CAAC,QAAsD,CAC9D;QACD,IAAA,yCAAgC,EAC9B,QAAQ,EACR,MAAM,CAAC,QAAsD,CAC9D;QACD,IAAA,uCAA8B,EAAC,MAAM,CAAC;KACvC,CAAC,CAAA;IAEJ,IAAI,CAAC,cAAc,EAAE;QACnB,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;KAClD;IACD,IAAI,CAAC,gBAAgB,EAAE;QACrB,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAA;KACrD;IACD,IAAI,CAAC,eAAe,EAAE;QACpB,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAA;KAC5D;IACD,IAAI,CAAC,OAAO,EAAE;QACZ,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;KAC3C;IAED,MAAM,cAAc,GAAG,MAAM,IAAA,yDAAmC,EAC9D,MAAM,EACN,eAAe,CAAC,OAAO,EACvB,gBAAgB,CAAC,OAAO,EACxB,aAAa,EACb,OAAO,CACR,CAAA;IACD,MAAM,CAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,IAAI,CAAC,IAAA,6BAAqB,EAAC,OAAO,CAAC,CAAC,CAAA,CAAA;IAE1D,IAAI,SAAS,CAAA;IACb,IAAI,aAAa,EAAE;QACjB,SAAS,GAAG,MAAM,cAAc,CAAC,kCAAkC,CACjE,YAAY,EACZ,aAAa,EACb,OAAO,CACR,CAAA;KACF;SAAM;QACL,SAAS,GAAG,MAAM,cAAc,CAAC,yBAAyB,CACxD,MAAM,MAAM,CAAC,UAAU,EAAE,EACzB,YAAY,EACZ,aAAa,EACb,OAAO,CACR,CAAA;KACF;IAED,OAAO,SAAS,CAAA;AAClB,CAAC;AA7DD,8DA6DC;AAED;;;;;;;;;;;;;GAaG;AACI,KAAK,UAAU,6CAA6C,CACjE,MAAqB,EACrB,QAAmB,EACnB,mBAAiC,EACjC,aAA2B,EAC3B,oBAAkC,EAClC,cAA4B,EAC5B,UAAqB,EAAE;IAEvB,MAAM,CAAC,cAAc,EAAE,eAAe,EAAE,gBAAgB,EAAE,OAAO,CAAC,GAChE,MAAM,OAAO,CAAC,GAAG,CAAC;QAChB,uCAAuC,CAAC,QAAQ,EAAE,MAAM,CAAC;QACzD,IAAA,yCAAgC,EAC9B,QAAQ,EACR,MAAM,CAAC,QAAsD,CAC9D;QACD,IAAA,8BAAqB,EACnB,QAAQ,EACR,MAAM,CAAC,QAAsD,CAC9D;QACD,IAAA,uCAA8B,EAAC,MAAM,CAAC;KACvC,CAAC,CAAA;IAEJ,IAAI,CAAC,cAAc,EAAE;QACnB,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;KAClD;IACD,IAAI,CAAC,eAAe,EAAE;QACpB,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAA;KAC5D;IACD,IAAI,CAAC,gBAAgB,EAAE;QACrB,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAA;KACrD;IACD,IAAI,CAAC,OAAO,EAAE;QACZ,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;KAC3C;IAED,MAAM,cAAc,GAAG,MAAM,IAAA,yDAAmC,EAC9D,MAAM,EACN,eAAe,CAAC,OAAO,EACvB,gBAAgB,CAAC,OAAO,EACxB,aAAa,EACb,OAAO,CACR,CAAA;IACD,IAAI,cAAc,EAAE;QAClB,MAAM,cAAc,CAAC,IAAI,CAAC,IAAA,6BAAqB,EAAC,OAAO,CAAC,CAAC,CAAA;KAC1D;IAED,MAAM,SAAS,GAAG,MAAM,IAAA,4DAAiC,EACvD,MAAM,EACN,QAAQ,EACR,oBAAoB,EACpB,OAAO,CACR,CAAA;IACD,IAAI,SAAS,EAAE;QACb,MAAM,CAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,IAAI,CAAC,IAAA,6BAAqB,EAAC,OAAO,CAAC,CAAC,CAAA,CAAA;KACtD;IAED,OAAO,cAAc,CAAC,6CAA6C,CACjE,mBAAmB,EACnB,aAAa,EACb,oBAAoB,EACpB,cAAc,EACd,OAAO,CACR,CAAA;AACH,CAAC;AAhED,sGAgEC"}
1
+ {"version":3,"file":"ReceivableBackedCreditLineContractHelper.js","sourceRoot":"","sources":["../../../../src/helpers/v2/ReceivableBackedCreditLineContractHelper.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.approveReceivableTransferIfNeeded = exports.getReceivableReferenceAlreadyExists = exports.getReceivableTokenIdFromReferenceId = exports.getReceivableContractV2 = void 0;
3
+ exports.getReceivableContractV2 = getReceivableContractV2;
4
+ exports.getReceivableTokenIdFromReferenceId = getReceivableTokenIdFromReferenceId;
5
+ exports.getReceivableReferenceAlreadyExists = getReceivableReferenceAlreadyExists;
6
+ exports.approveReceivableTransferIfNeeded = approveReceivableTransferIfNeeded;
4
7
  const shared_1 = require("@huma-finance/shared");
5
8
  const utils_1 = require("../../utils");
6
9
  /**
@@ -19,7 +22,6 @@ async function getReceivableContractV2(poolName, signer) {
19
22
  const receivableAsset = await poolConfigContract.receivableAsset();
20
23
  return (0, utils_1.getContract)(receivableAsset, shared_1.RECEIVABLE_V2_ABI, signer);
21
24
  }
22
- exports.getReceivableContractV2 = getReceivableContractV2;
23
25
  /**
24
26
  * Retrieves the receivable token ID associated with a given reference ID.
25
27
  *
@@ -37,12 +39,10 @@ async function getReceivableTokenIdFromReferenceId(referenceId, creator, poolNam
37
39
  const referenceIdHash = await contract.getReferenceIdHash(referenceId, creator);
38
40
  return contract.referenceIdHashToTokenId(referenceIdHash);
39
41
  }
40
- exports.getReceivableTokenIdFromReferenceId = getReceivableTokenIdFromReferenceId;
41
42
  async function getReceivableReferenceAlreadyExists(referenceId, signerAddress, poolName, signer) {
42
43
  const tokenId = await getReceivableTokenIdFromReferenceId(referenceId, signerAddress, poolName, signer);
43
44
  return !tokenId.isZero();
44
45
  }
45
- exports.getReceivableReferenceAlreadyExists = getReceivableReferenceAlreadyExists;
46
46
  async function approveReceivableTransferIfNeeded(signer, poolName, receivableId, gasOpts = {}) {
47
47
  const receivableContract = await getReceivableContractV2(poolName, signer);
48
48
  if (!receivableContract) {
@@ -61,5 +61,4 @@ async function approveReceivableTransferIfNeeded(signer, poolName, receivableId,
61
61
  }
62
62
  return receivableContract.approve(poolCreditContract.address, receivableId, gasOpts);
63
63
  }
64
- exports.approveReceivableTransferIfNeeded = approveReceivableTransferIfNeeded;
65
64
  //# sourceMappingURL=ReceivableContractHelper.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ReceivableContractHelper.js","sourceRoot":"","sources":["../../../../src/helpers/v2/ReceivableContractHelper.ts"],"names":[],"mappings":";;;AACA,iDAM6B;AAO7B,uCAAyC;AAEzC;;;;;;;GAOG;AACI,KAAK,UAAU,uBAAuB,CAC3C,QAAmB,EACnB,MAAqB;IAErB,MAAM,kBAAkB,GAAG,MAAM,IAAA,gCAAuB,EACtD,QAAQ,EACR,MAAM,CAAC,QAA0C,CAClD,CAAA;IAED,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,MAAM,CACP,CAAA;AACH,CAAC;AAnBD,0DAmBC;AAED;;;;;;;;GAQG;AACI,KAAK,UAAU,mCAAmC,CACvD,WAAmB,EACnB,OAAe,EACf,QAAmB,EACnB,MAAqB;IAErB,MAAM,QAAQ,GAAG,MAAM,uBAAuB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;IAChE,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,MAAqB;IAErB,MAAM,OAAO,GAAG,MAAM,mCAAmC,CACvD,WAAW,EACX,aAAa,EACb,QAAQ,EACR,MAAM,CACP,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"}
1
+ {"version":3,"file":"ReceivableContractHelper.js","sourceRoot":"","sources":["../../../../src/helpers/v2/ReceivableContractHelper.ts"],"names":[],"mappings":";;AAwBA,0DAmBC;AAWD,kFAiBC;AAED,kFAcC;AAED,8EAiCC;AAzHD,iDAM6B;AAO7B,uCAAyC;AAEzC;;;;;;;GAOG;AACI,KAAK,UAAU,uBAAuB,CAC3C,QAAmB,EACnB,MAAqB;IAErB,MAAM,kBAAkB,GAAG,MAAM,IAAA,gCAAuB,EACtD,QAAQ,EACR,MAAM,CAAC,QAA0C,CAClD,CAAA;IAED,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAA;IACvD,CAAC;IACD,MAAM,eAAe,GAAG,MAAM,kBAAkB,CAAC,eAAe,EAAE,CAAA;IAElE,OAAO,IAAA,mBAAW,EAChB,eAAe,EACf,0BAAiB,EACjB,MAAM,CACP,CAAA;AACH,CAAC;AAED;;;;;;;;GAQG;AACI,KAAK,UAAU,mCAAmC,CACvD,WAAmB,EACnB,OAAe,EACf,QAAmB,EACnB,MAAqB;IAErB,MAAM,QAAQ,GAAG,MAAM,uBAAuB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;IAChE,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAA;IACvD,CAAC;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;AAEM,KAAK,UAAU,mCAAmC,CACvD,WAAmB,EACnB,aAAqB,EACrB,QAAmB,EACnB,MAAqB;IAErB,MAAM,OAAO,GAAG,MAAM,mCAAmC,CACvD,WAAW,EACX,aAAa,EACb,QAAQ,EACR,MAAM,CACP,CAAA;IAED,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,CAAA;AAC1B,CAAC;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,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAA;IACvD,CAAC;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,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;IACxD,CAAC;IAED,MAAM,eAAe,GAAG,MAAM,kBAAkB,CAAC,WAAW,CAAC,YAAY,CAAC,CAAA;IAC1E,IACE,kBAAkB,CAAC,OAAO;QAC1B,eAAe,KAAK,kBAAkB,CAAC,OAAO,EAC9C,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IAED,OAAO,kBAAkB,CAAC,OAAO,CAC/B,kBAAkB,CAAC,OAAO,EAC1B,YAAY,EACZ,OAAO,CACR,CAAA;AACH,CAAC"}
@@ -1,5 +1,5 @@
1
- import type { FundResponse, UploadResponse } from '@bundlr-network/client/build/cjs/common/types';
2
- import { Web3Provider } from '@ethersproject/providers';
1
+ import Irys from '@irys/sdk';
2
+ import { FundResponse, IrysConfig, Network, UploadResponse } from '@irys/sdk/build/cjs/common/types';
3
3
  /**
4
4
  * The configuration for Bundlr network instances
5
5
  *
@@ -16,16 +16,33 @@ export type BundlrConfig = {
16
16
  providerUrl?: string;
17
17
  };
18
18
  /**
19
- * Get the configuration for Bundlr network given a chain ID
19
+ * Represents the constructor arguments for the Irys service.
20
+ *
21
+ * @typedef {Object} IrysConstructorArgs
22
+ * @property {string} [url] - The URL of the Irys service.
23
+ * @property {Network} [network] - The network configuration for the Irys service. Can be mainnet or devnet.
24
+ * @property {string} token - The token for authentication.
25
+ * @property {string} [key] - The key for encryption.
26
+ * @property {IrysConfig} [config] - Additional configuration options for the Irys service.
27
+ */
28
+ export type IrysConstructorArgs = {
29
+ url?: string;
30
+ network?: Network;
31
+ token: string;
32
+ key?: string;
33
+ config?: IrysConfig;
34
+ };
35
+ /**
36
+ * Get the configuration for the Irys network given a chain ID
20
37
  *
21
38
  * @function
22
39
  * @memberof ARWeaveService
23
40
  * @param {number} chainId - The chain ID.
24
- * @returns {BundlrConfig} - The configuration for the Bundlr network.
41
+ * @returns {IrysConstructorArgs} - The configuration for the Irys network.
25
42
  */
26
- export declare function getBundlrNetworkConfig(chainId: number): BundlrConfig;
43
+ export declare function getIrysNetworkConfig(chainId: number): IrysConstructorArgs;
27
44
  /**
28
- * Get a Bundlr instance for a specific network
45
+ * Get an Irys instance for a specific network
29
46
  *
30
47
  * @async
31
48
  * @function
@@ -34,36 +51,36 @@ export declare function getBundlrNetworkConfig(chainId: number): BundlrConfig;
34
51
  * @param {string} privateKey - The private key of the wallet to use Bundlr with.
35
52
  * @returns The Bundlr instance
36
53
  */
37
- declare function getBundlrInstance(config: BundlrConfig, privateKey: string): Promise<import("@bundlr-network/client/build/cjs/node/bundlr").NodeBundlr>;
54
+ declare function getIrysInstance(config: IrysConstructorArgs, privateKey: string): Promise<Irys>;
38
55
  /**
39
- * Prefund the Bundlr network with the specified amount. Required if not lazy funding.
56
+ * Prefund the Irys network with the specified amount. Required if not lazy funding.
40
57
  * Important note: The amount is denominated in the base unit of currency for that network.
41
- * If you want to upload 5 Matic to the Bundlr node, pass in an amount of 5.
58
+ * If you want to upload 5 Matic to the Irys node, pass in an amount of 5.
42
59
  *
43
60
  * @async
44
61
  * @function
45
62
  * @memberof ARWeaveService
46
- * @param {BundlrConfig} config - The configuration for the Bundlr network.
63
+ * @param {IrysConstructorArgs} config - The configuration for the Bundlr network.
47
64
  * @param {string} privateKey - The private key of the wallet to send funds from.
48
65
  * @param {number} amount - The amount to fund, denoted in whatever currency specified by the config (e.g. MATIC, ETH)
49
66
  * @returns {Promise<FundResponse>} - The fund response.
50
67
  */
51
- declare function prefundBundlr(config: BundlrConfig, privateKey: string, amount: number): Promise<FundResponse>;
68
+ declare function prefundIrys(config: IrysConstructorArgs, privateKey: string, amount: number): Promise<FundResponse>;
52
69
  /**
53
- * Store data on ARWeave using the Bundlr Network.
70
+ * Store data on ARWeave using the Irys Network.
54
71
  *
55
72
  * @async
56
73
  * @function
57
74
  * @memberof ARWeaveService
58
- * @param {BundlrConfig} config - Configuration object for the Bundlr instance.
59
- * @param {string} privateKey - Private key used for interacting with the Bundlr instance.
60
- * @param {Record<string, unknown>} data - The data to store in the Bundlr instance.
75
+ * @param {IrysConstructorArgs} config - Configuration object for the Irys instance.
76
+ * @param {string} privateKey - Private key used for interacting with the Irys instance.
77
+ * @param {Record<string, unknown>} data - The data to store in the Irys instance.
61
78
  * @param {Array<{ name: string, value: string }>} tags - Array of tag objects with `name` and `value` properties.
62
- * @param {boolean} [lazyFund=true] - Optional flag to fund the Bundlr instance lazily. If set to `false`, the
63
- * Bundlr node should already be funded or else uploads will fail.
79
+ * @param {boolean} [lazyFund=true] - Optional flag to fund the Irys instance lazily. If set to `false`, the
80
+ * Irys node should already be funded or else uploads will fail.
64
81
  * @returns {Promise<UploadResponse>} Promise resolving with the upload response.
65
82
  */
66
- declare function storeData(config: BundlrConfig, privateKey: Web3Provider | string, data: Record<string, unknown>, tags: {
83
+ declare function storeData(config: IrysConstructorArgs, privateKey: string, data: Record<string, unknown>, tags: {
67
84
  name: string;
68
85
  value: string;
69
86
  }[], lazyFund?: boolean): Promise<UploadResponse>;
@@ -106,9 +123,9 @@ declare function getURIFromARWeaveId(arweaveId: string): string;
106
123
  export declare const ARWeaveService: {
107
124
  queryForMetadata: typeof queryForMetadata;
108
125
  storeData: typeof storeData;
109
- prefundBundlr: typeof prefundBundlr;
110
- getBundlrNetworkConfig: typeof getBundlrNetworkConfig;
111
- getBundlrInstance: typeof getBundlrInstance;
126
+ prefundIrys: typeof prefundIrys;
127
+ getIrysNetworkConfig: typeof getIrysNetworkConfig;
128
+ getIrysInstance: typeof getIrysInstance;
112
129
  fetchMetadataFromUrl: typeof fetchMetadataFromUrl;
113
130
  getURIFromARWeaveId: typeof getURIFromARWeaveId;
114
131
  };
@@ -1,76 +1,79 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ARWeaveService = exports.getBundlrNetworkConfig = void 0;
3
+ exports.ARWeaveService = void 0;
4
+ exports.getIrysNetworkConfig = getIrysNetworkConfig;
4
5
  const tslib_1 = require("tslib");
5
- const client_1 = tslib_1.__importDefault(require("@bundlr-network/client"));
6
+ const sdk_1 = tslib_1.__importDefault(require("@irys/sdk"));
6
7
  const axios_1 = tslib_1.__importDefault(require("axios"));
7
8
  const graphql_request_1 = tslib_1.__importStar(require("graphql-request"));
8
9
  /**
9
- * Get the configuration for Bundlr network given a chain ID
10
+ * Get the configuration for the Irys network given a chain ID
10
11
  *
11
12
  * @function
12
13
  * @memberof ARWeaveService
13
14
  * @param {number} chainId - The chain ID.
14
- * @returns {BundlrConfig} - The configuration for the Bundlr network.
15
+ * @returns {IrysConstructorArgs} - The configuration for the Irys network.
15
16
  */
16
- function getBundlrNetworkConfig(chainId) {
17
+ function getIrysNetworkConfig(chainId) {
17
18
  switch (chainId) {
18
- case 5: // Goerli
19
- return {
20
- nodeUrl: 'https://devnet.bundlr.network',
21
- currency: 'ethereum',
22
- providerUrl: 'https://goerli.infura.io/v3/9aa3d95b3bc440fa88ea12eaa4456161',
23
- };
24
- // @dev #TODO: remove mumbai
25
- case 80001: // Mumbai
26
- return {
27
- nodeUrl: 'https://devnet.bundlr.network',
28
- currency: 'matic',
29
- providerUrl: 'https://rpc.ankr.com/polygon_mumbai',
30
- };
31
19
  case 80002: // Amoy
32
20
  return {
33
- nodeUrl: 'https://devnet.bundlr.network',
34
- currency: 'matic',
35
- providerUrl: 'https://rpc.ankr.com/polygon_amoy',
21
+ network: 'devnet',
22
+ token: 'matic',
23
+ config: {
24
+ providerUrl: 'https://rpc.ankr.com/polygon_amoy',
25
+ },
36
26
  };
37
27
  case 137: // Matic
38
28
  return {
39
- nodeUrl: 'https://node1.bundlr.network',
40
- currency: 'matic',
29
+ network: 'mainnet',
30
+ token: 'matic',
41
31
  };
42
32
  case 44787: // Alfajores
43
33
  return {
44
- nodeUrl: 'https://devnet.bundlr.network',
45
- currency: '', // Uploads with Celo is not currently supported by Bundlr
46
- // TODO: Allow for any currency combination with network
34
+ network: 'devnet',
35
+ token: '',
47
36
  };
48
37
  case 42220: // Celo
49
38
  return {
50
- nodeUrl: 'https://node1.bundlr.network',
51
- currency: '', // Uploads with Celo is not currently supported by Bundlr
39
+ network: 'mainnet',
40
+ token: '', // Uploads with Celo is not currently supported by Bundlr
52
41
  };
53
42
  case 534352: // Scroll
54
43
  return {
55
- nodeUrl: 'https://node1.bundlr.network',
56
- currency: 'scroll-eth',
44
+ network: 'mainnet',
45
+ token: 'scroll-eth',
57
46
  };
58
47
  case 534351: // Scroll Sepolia
59
48
  return {
60
- nodeUrl: 'https://devnet.bundlr.network',
61
- currency: 'scroll-eth',
62
- providerUrl: 'https://rpc.ankr.com/scroll_sepolia_testnet',
49
+ network: 'devnet',
50
+ token: 'scroll-eth',
51
+ config: {
52
+ providerUrl: 'https://rpc.ankr.com/scroll_sepolia_testnet',
53
+ },
54
+ };
55
+ case 101: // Solana Mainnet
56
+ return {
57
+ network: 'mainnet',
58
+ token: 'solana',
59
+ };
60
+ case 103: // Solana Devnet
61
+ return {
62
+ network: 'devnet',
63
+ token: 'solana',
64
+ config: {
65
+ providerUrl: 'https://api.devnet.solana.com',
66
+ },
63
67
  };
64
68
  default:
65
69
  return {
66
- nodeUrl: '',
67
- currency: '',
70
+ network: '',
71
+ token: '',
68
72
  };
69
73
  }
70
74
  }
71
- exports.getBundlrNetworkConfig = getBundlrNetworkConfig;
72
75
  /**
73
- * Get a Bundlr instance for a specific network
76
+ * Get an Irys instance for a specific network
74
77
  *
75
78
  * @async
76
79
  * @function
@@ -79,72 +82,54 @@ exports.getBundlrNetworkConfig = getBundlrNetworkConfig;
79
82
  * @param {string} privateKey - The private key of the wallet to use Bundlr with.
80
83
  * @returns The Bundlr instance
81
84
  */
82
- async function getBundlrInstance(config, privateKey) {
83
- const bundlr = new client_1.default(config.nodeUrl, config.currency, privateKey, config.providerUrl
84
- ? {
85
- providerUrl: config.providerUrl,
86
- }
87
- : undefined);
88
- await bundlr.ready();
89
- return bundlr;
85
+ async function getIrysInstance(config, privateKey) {
86
+ return new sdk_1.default(Object.assign(Object.assign({}, config), { key: privateKey }));
90
87
  }
91
88
  /**
92
- * Prefund the Bundlr network with the specified amount. Required if not lazy funding.
89
+ * Prefund the Irys network with the specified amount. Required if not lazy funding.
93
90
  * Important note: The amount is denominated in the base unit of currency for that network.
94
- * If you want to upload 5 Matic to the Bundlr node, pass in an amount of 5.
91
+ * If you want to upload 5 Matic to the Irys node, pass in an amount of 5.
95
92
  *
96
93
  * @async
97
94
  * @function
98
95
  * @memberof ARWeaveService
99
- * @param {BundlrConfig} config - The configuration for the Bundlr network.
96
+ * @param {IrysConstructorArgs} config - The configuration for the Bundlr network.
100
97
  * @param {string} privateKey - The private key of the wallet to send funds from.
101
98
  * @param {number} amount - The amount to fund, denoted in whatever currency specified by the config (e.g. MATIC, ETH)
102
99
  * @returns {Promise<FundResponse>} - The fund response.
103
100
  */
104
- async function prefundBundlr(config,
105
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
106
- privateKey, amount) {
107
- const bundlr = new client_1.default(config.nodeUrl, config.currency, privateKey, config.providerUrl
108
- ? {
109
- providerUrl: config.providerUrl,
110
- }
111
- : undefined);
112
- await bundlr.ready();
101
+ async function prefundIrys(config, privateKey, amount) {
102
+ const irys = await getIrysInstance(config, privateKey);
113
103
  // Convert currency to its atomic units (e.g. MATIC -> wei)
114
- const atomicAmount = bundlr.utils.toAtomic(amount);
115
- return bundlr.fund(atomicAmount);
104
+ const atomicAmount = irys.utils.toAtomic(amount);
105
+ return irys.fund(atomicAmount);
116
106
  }
117
107
  /**
118
- * Store data on ARWeave using the Bundlr Network.
108
+ * Store data on ARWeave using the Irys Network.
119
109
  *
120
110
  * @async
121
111
  * @function
122
112
  * @memberof ARWeaveService
123
- * @param {BundlrConfig} config - Configuration object for the Bundlr instance.
124
- * @param {string} privateKey - Private key used for interacting with the Bundlr instance.
125
- * @param {Record<string, unknown>} data - The data to store in the Bundlr instance.
113
+ * @param {IrysConstructorArgs} config - Configuration object for the Irys instance.
114
+ * @param {string} privateKey - Private key used for interacting with the Irys instance.
115
+ * @param {Record<string, unknown>} data - The data to store in the Irys instance.
126
116
  * @param {Array<{ name: string, value: string }>} tags - Array of tag objects with `name` and `value` properties.
127
- * @param {boolean} [lazyFund=true] - Optional flag to fund the Bundlr instance lazily. If set to `false`, the
128
- * Bundlr node should already be funded or else uploads will fail.
117
+ * @param {boolean} [lazyFund=true] - Optional flag to fund the Irys instance lazily. If set to `false`, the
118
+ * Irys node should already be funded or else uploads will fail.
129
119
  * @returns {Promise<UploadResponse>} Promise resolving with the upload response.
130
120
  */
131
121
  async function storeData(config, privateKey, data, tags, lazyFund = true) {
132
- const bundlr = new client_1.default(config.nodeUrl, config.currency, privateKey, config.providerUrl
133
- ? {
134
- providerUrl: config.providerUrl,
135
- }
136
- : undefined);
137
- await bundlr.ready();
122
+ const irys = await getIrysInstance(config, privateKey);
138
123
  const dataStr = JSON.stringify(data);
139
124
  if (lazyFund) {
140
125
  const size = Buffer.byteLength(dataStr);
141
- const price = await bundlr.getPrice(size);
126
+ const price = await irys.getPrice(size);
142
127
  // Add a buffer of 20% to account for fluctuations in the price
143
128
  const priceWithBuffer = price.multipliedBy(1.2).integerValue();
144
- console.log(`Funding bundlr with ${priceWithBuffer} ${config.currency} to upload data`);
145
- await bundlr.fund(priceWithBuffer);
129
+ console.log(`Funding irys with ${priceWithBuffer} ${config.token} to upload data`);
130
+ await irys.fund(priceWithBuffer);
146
131
  }
147
- return bundlr.upload(dataStr, { tags });
132
+ return irys.upload(dataStr, { tags });
148
133
  }
149
134
  /**
150
135
  * Helper method to query the Arweave network for receivables metadata previously uploaded.
@@ -159,7 +144,7 @@ async function storeData(config, privateKey, data, tags, lazyFund = true) {
159
144
  */
160
145
  async function queryForMetadata(chainId, sender, referenceId) {
161
146
  var _a, _b, _c, _d;
162
- const config = getBundlrNetworkConfig(chainId);
147
+ const config = getIrysNetworkConfig(chainId);
163
148
  const query = (0, graphql_request_1.gql) `
164
149
  query ArweaveHumaMetadataQuery($sender: String!, $referenceId: String!) {
165
150
  transactions(
@@ -178,7 +163,9 @@ async function queryForMetadata(chainId, sender, referenceId) {
178
163
  }
179
164
  `;
180
165
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
181
- const data = await (0, graphql_request_1.default)(`${config.nodeUrl}/graphql`, query, {
166
+ const data = await (0, graphql_request_1.default)(config.network === 'mainnet'
167
+ ? 'https://arweave.mainnet.irys.xyz/graphql'
168
+ : 'https://arweave.devnet.irys.xyz/graphql', query, {
182
169
  sender,
183
170
  referenceId,
184
171
  });
@@ -222,9 +209,9 @@ function getURIFromARWeaveId(arweaveId) {
222
209
  exports.ARWeaveService = {
223
210
  queryForMetadata,
224
211
  storeData,
225
- prefundBundlr,
226
- getBundlrNetworkConfig,
227
- getBundlrInstance,
212
+ prefundIrys,
213
+ getIrysNetworkConfig,
214
+ getIrysInstance,
228
215
  fetchMetadataFromUrl,
229
216
  getURIFromARWeaveId,
230
217
  };