@huma-finance/sdk 0.0.62-beta.721 → 0.0.62-beta.725

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,6 +7,7 @@ const anchor_1 = require("@coral-xyz/anchor");
7
7
  const shared_1 = require("@huma-finance/shared");
8
8
  const spl_token_1 = require("@solana/spl-token");
9
9
  const web3_js_1 = require("@solana/web3.js");
10
+ const buildOptimalTransaction_1 = require("../../utils/solana/buildOptimalTransaction");
10
11
  const getReceivableReferenceAccount_1 = require("../../utils/solana/getReceivableReferenceAccount");
11
12
  exports.MPL_CORE_PROGRAM_ID = 'CoREENxT6tW1HoK8ypY1SxRMZTcVPm7R94rH4PZNhX7d';
12
13
  class HumaSolanaProgramHelper {
@@ -42,6 +43,16 @@ class HumaSolanaProgramHelper {
42
43
  })
43
44
  .transaction();
44
45
  tx.add(programTx);
46
+ await (0, buildOptimalTransaction_1.buildOptimalTransaction)(tx, [
47
+ publicKey,
48
+ receivableReferenceData.asset,
49
+ new web3_js_1.PublicKey(poolInfo.humaConfig),
50
+ new web3_js_1.PublicKey(poolInfo.poolConfig),
51
+ new web3_js_1.PublicKey(poolInfo.poolState),
52
+ creditConfigAccount,
53
+ creditStateAccount,
54
+ new web3_js_1.PublicKey(exports.MPL_CORE_PROGRAM_ID),
55
+ ], tslib_1.__classPrivateFieldGet(this, _HumaSolanaProgramHelper_solanaContext, "f"));
45
56
  return tx;
46
57
  }
47
58
  async buildDrawdownTransaction(amount) {
@@ -97,6 +108,19 @@ class HumaSolanaProgramHelper {
97
108
  })
98
109
  .transaction();
99
110
  tx.add(programTx);
111
+ await (0, buildOptimalTransaction_1.buildOptimalTransaction)(tx, [
112
+ publicKey,
113
+ new web3_js_1.PublicKey(poolInfo.humaConfig),
114
+ new web3_js_1.PublicKey(poolInfo.poolConfig),
115
+ new web3_js_1.PublicKey(poolInfo.poolState),
116
+ creditConfigAccount,
117
+ creditStateAccount,
118
+ new web3_js_1.PublicKey(poolInfo.poolAuthority),
119
+ new web3_js_1.PublicKey(poolInfo.underlyingMint.address),
120
+ new web3_js_1.PublicKey(poolInfo.poolUnderlyingTokenAccount),
121
+ borrowerUnderlyingTokenAccountAddress,
122
+ spl_token_1.TOKEN_PROGRAM_ID,
123
+ ], tslib_1.__classPrivateFieldGet(this, _HumaSolanaProgramHelper_solanaContext, "f"));
100
124
  return tx;
101
125
  }
102
126
  async buildPaymentTransaction(amount, principalOnly = false) {
@@ -107,7 +131,7 @@ class HumaSolanaProgramHelper {
107
131
  throw new Error('Could not find pool');
108
132
  }
109
133
  const { creditConfigAccount, creditStateAccount } = (0, shared_1.getCreditAccounts)(poolInfo, publicKey);
110
- const { underlyingTokenATA: borrowerUnderlyingTokenAcccount } = (0, shared_1.getTokenAccounts)(poolInfo, publicKey);
134
+ const { underlyingTokenATA: borrowerUnderlyingTokenAccount } = (0, shared_1.getTokenAccounts)(poolInfo, publicKey);
111
135
  const accounts = {
112
136
  humaConfig: poolInfo.humaConfig,
113
137
  poolConfig: poolInfo.poolConfig,
@@ -117,7 +141,7 @@ class HumaSolanaProgramHelper {
117
141
  poolAuthority: poolInfo.poolAuthority,
118
142
  underlyingMint: poolInfo.underlyingMint.address,
119
143
  poolUnderlyingToken: poolInfo.poolUnderlyingTokenAccount,
120
- borrowerUnderlyingToken: borrowerUnderlyingTokenAcccount,
144
+ borrowerUnderlyingToken: borrowerUnderlyingTokenAccount,
121
145
  tokenProgram: spl_token_1.TOKEN_PROGRAM_ID,
122
146
  };
123
147
  let tx;
@@ -133,6 +157,19 @@ class HumaSolanaProgramHelper {
133
157
  .accountsPartial(Object.assign(Object.assign({}, accounts), { signer: publicKey }))
134
158
  .transaction();
135
159
  }
160
+ await (0, buildOptimalTransaction_1.buildOptimalTransaction)(tx, [
161
+ publicKey,
162
+ new web3_js_1.PublicKey(poolInfo.humaConfig),
163
+ new web3_js_1.PublicKey(poolInfo.poolConfig),
164
+ new web3_js_1.PublicKey(poolInfo.poolState),
165
+ creditConfigAccount,
166
+ creditStateAccount,
167
+ new web3_js_1.PublicKey(poolInfo.poolAuthority),
168
+ new web3_js_1.PublicKey(poolInfo.underlyingMint.address),
169
+ new web3_js_1.PublicKey(poolInfo.poolUnderlyingTokenAccount),
170
+ borrowerUnderlyingTokenAccount,
171
+ spl_token_1.TOKEN_PROGRAM_ID,
172
+ ], tslib_1.__classPrivateFieldGet(this, _HumaSolanaProgramHelper_solanaContext, "f"));
136
173
  return tx;
137
174
  }
138
175
  async buildApproveAllowanceTransaction() {
@@ -142,7 +179,15 @@ class HumaSolanaProgramHelper {
142
179
  throw new Error('Could not find pool');
143
180
  }
144
181
  const { underlyingTokenATA: borrowerUnderlyingTokenAccount } = (0, shared_1.getTokenAccounts)(poolInfo, publicKey);
145
- return new web3_js_1.Transaction().add((0, spl_token_1.createApproveCheckedInstruction)(borrowerUnderlyingTokenAccount, new web3_js_1.PublicKey(poolInfo.underlyingMint.address), new web3_js_1.PublicKey((0, shared_1.getSentinelAddress)(chainId)), publicKey, BigInt(shared_1.SolanaTokenUtils.parseUnits('100000000000', poolInfo.underlyingMint.decimals).toString()), poolInfo.underlyingMint.decimals, undefined, spl_token_1.TOKEN_PROGRAM_ID));
182
+ const tx = new web3_js_1.Transaction().add((0, spl_token_1.createApproveCheckedInstruction)(borrowerUnderlyingTokenAccount, new web3_js_1.PublicKey(poolInfo.underlyingMint.address), new web3_js_1.PublicKey((0, shared_1.getSentinelAddress)(chainId)), publicKey, BigInt(shared_1.SolanaTokenUtils.parseUnits('100000000000', poolInfo.underlyingMint.decimals).toString()), poolInfo.underlyingMint.decimals, undefined, spl_token_1.TOKEN_PROGRAM_ID));
183
+ await (0, buildOptimalTransaction_1.buildOptimalTransaction)(tx, [
184
+ publicKey,
185
+ borrowerUnderlyingTokenAccount,
186
+ new web3_js_1.PublicKey(poolInfo.underlyingMint.address),
187
+ new web3_js_1.PublicKey((0, shared_1.getSentinelAddress)(chainId)),
188
+ spl_token_1.TOKEN_PROGRAM_ID,
189
+ ], tslib_1.__classPrivateFieldGet(this, _HumaSolanaProgramHelper_solanaContext, "f"));
190
+ return tx;
146
191
  }
147
192
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
148
193
  async getAccountInfo() {
@@ -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":";;;;;AAAA,8CAAsC;AACtC,iDAO6B;AAC7B,iDAM0B;AAC1B,6CAAwD;AACxD,wFAAoF;AACpF,oGAA6F;AAGhF,QAAA,mBAAmB,GAC9B,8CAA8C,CAAA;AAEhD,MAAa,uBAAuB;IAGlC,YAAY,EAAE,aAAa,EAAwC;QAFnE,yDAAiC;QAG/B,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAA;QAChD,CAAC;QAED,+BAAA,IAAI,0CAAkB,aAAa,MAAA,CAAA;IACrC,CAAC;IAED,KAAK,CAAC,gCAAgC,CACpC,WAAmB;QAEnB,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,+BAAA,IAAI,8CAAe,CAAA;QACxE,MAAM,OAAO,GAAG,IAAA,uBAAc,EAAC,OAAO,EAAE,UAAU,CAAC,CAAA;QACnD,MAAM,QAAQ,GAAG,IAAA,0BAAiB,EAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;QAErD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAA;QACxC,CAAC;QAED,MAAM,EAAE,GAAgB,IAAI,qBAAW,EAAE,CAAA;QAEzC,MAAM,uBAAuB,GAAG,MAAM,IAAA,0DAA0B,EAC9D,OAAO,EACP,SAAS,EACT,UAAU,EACV,WAAW,CACZ,CAAA;QACD,MAAM,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,GAAG,IAAA,0BAAiB,EACnE,QAAQ,EACR,SAAS,CACV,CAAA;QAED,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,OAAO;aACpC,gBAAgB,EAAE;aAClB,eAAe,CAAC;YACf,QAAQ,EAAE,SAAS;YACnB,KAAK,EAAE,uBAAuB,CAAC,KAAK;YACpC,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,SAAS,EAAE,QAAQ,CAAC,SAAS;YAC7B,YAAY,EAAE,mBAAmB;YACjC,WAAW,EAAE,kBAAkB;YAC/B,OAAO,EAAE,2BAAmB;YAC5B,UAAU,EAAE,IAAI;SACjB,CAAC;aACD,WAAW,EAAE,CAAA;QAChB,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;QAEjB,MAAM,IAAA,iDAAuB,EAC3B,EAAE,EACF;YACE,SAAS;YACT,uBAAuB,CAAC,KAAK;YAC7B,IAAI,mBAAS,CAAC,QAAQ,CAAC,UAAU,CAAC;YAClC,IAAI,mBAAS,CAAC,QAAQ,CAAC,UAAU,CAAC;YAClC,IAAI,mBAAS,CAAC,QAAQ,CAAC,SAAS,CAAC;YACjC,mBAAmB;YACnB,kBAAkB;YAClB,IAAI,mBAAS,CAAC,2BAAmB,CAAC;SACnC,EACD,+BAAA,IAAI,8CAAe,CACpB,CAAA;QAED,OAAO,EAAE,CAAA;IACX,CAAC;IAED,KAAK,CAAC,wBAAwB,CAAC,MAAU;;QACvC,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,+BAAA,IAAI,8CAAe,CAAA;QACxE,MAAM,OAAO,GAAG,IAAA,uBAAc,EAAC,OAAO,EAAE,UAAU,CAAC,CAAA;QACnD,MAAM,QAAQ,GAAG,IAAA,0BAAiB,EAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;QAErD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAA;QACxC,CAAC;QAED,MAAM,EAAE,GAAgB,IAAI,qBAAW,EAAE,CAAA;QACzC,MAAM,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,GAAG,IAAA,0BAAiB,EACnE,QAAQ,EACR,SAAS,CACV,CAAA;QACD,MAAM,EAAE,kBAAkB,EAAE,qCAAqC,EAAE,GACjE,IAAA,yBAAgB,EAAC,QAAQ,EAAE,SAAS,CAAC,CAAA;QACvC,MAAM,eAAe,GAAG,IAAA,2BAAkB,EAAC,OAAO,CAAC,CAAA;QAEnD,IAAI,qBAAqB,GAAY,KAAK,CAAA;QAC1C,IAAI,CAAC;YACH,MAAM,kCAAkC,GAAG,MAAM,IAAA,sBAAU,EACzD,UAAU,EACV,qCAAqC,EACrC,SAAS,EACT,4BAAgB,CACjB,CAAA;YAED,IACE,IAAI,WAAE,CACJ,kCAAkC,CAAC,eAAe,CAAC,QAAQ,EAAE,CAC9D,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBACpB,CAAA,MAAA,kCAAkC,CAAC,QAAQ,0CAAE,QAAQ,EAAE;oBACrD,eAAe,EACjB,CAAC;gBACD,qBAAqB,GAAG,IAAI,CAAA;YAC9B,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,qCAAyB,EAAE,CAAC;gBAC/C,MAAM,wBAAwB,GAC5B,IAAA,mDAAuC,EACrC,SAAS,EACT,qCAAqC,EACrC,SAAS,EACT,IAAI,mBAAS,CAAC,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,EAC9C,4BAAgB,CACjB,CAAA;gBACH,EAAE,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAA;gBAChC,qBAAqB,GAAG,IAAI,CAAA;YAC9B,CAAC;QACH,CAAC;QAED,IAAI,qBAAqB,EAAE,CAAC;YAC1B,MAAM,kBAAkB,GAAG,IAAA,2CAA+B,EACxD,qCAAqC,EACrC,IAAI,mBAAS,CAAC,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,EAC9C,IAAI,mBAAS,CAAC,eAAe,CAAC,EAAE,WAAW;YAC3C,SAAS,EAAE,sBAAsB;YACjC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,EAAE,SAAS;YAC5C,QAAQ,CAAC,cAAc,CAAC,QAAQ,EAChC,SAAS,EAAE,eAAe;YAC1B,4BAAgB,CACjB,CAAA;YACD,EAAE,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAA;QAC5B,CAAC;QAED,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,OAAO;aACpC,QAAQ,CAAC,MAAM,CAAC;aAChB,eAAe,CAAC;YACf,QAAQ,EAAE,SAAS;YACnB,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,SAAS,EAAE,QAAQ,CAAC,SAAS;YAC7B,YAAY,EAAE,mBAAmB;YACjC,WAAW,EAAE,kBAAkB;YAC/B,aAAa,EAAE,QAAQ,CAAC,aAAa;YACrC,cAAc,EAAE,QAAQ,CAAC,cAAc,CAAC,OAAO;YAC/C,mBAAmB,EAAE,QAAQ,CAAC,0BAA0B;YACxD,uBAAuB,EAAE,qCAAqC;YAC9D,YAAY,EAAE,4BAAgB;SAC/B,CAAC;aACD,WAAW,EAAE,CAAA;QAChB,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;QAEjB,MAAM,IAAA,iDAAuB,EAC3B,EAAE,EACF;YACE,SAAS;YACT,IAAI,mBAAS,CAAC,QAAQ,CAAC,UAAU,CAAC;YAClC,IAAI,mBAAS,CAAC,QAAQ,CAAC,UAAU,CAAC;YAClC,IAAI,mBAAS,CAAC,QAAQ,CAAC,SAAS,CAAC;YACjC,mBAAmB;YACnB,kBAAkB;YAClB,IAAI,mBAAS,CAAC,QAAQ,CAAC,aAAa,CAAC;YACrC,IAAI,mBAAS,CAAC,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC;YAC9C,IAAI,mBAAS,CAAC,QAAQ,CAAC,0BAA0B,CAAC;YAClD,qCAAqC;YACrC,4BAAgB;SACjB,EACD,+BAAA,IAAI,8CAAe,CACpB,CAAA;QAED,OAAO,EAAE,CAAA;IACX,CAAC;IAED,KAAK,CAAC,uBAAuB,CAC3B,MAAU,EACV,gBAAyB,KAAK;QAE9B,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,+BAAA,IAAI,8CAAe,CAAA;QAC5D,MAAM,OAAO,GAAG,IAAA,uBAAc,EAAC,OAAO,EAAE,+BAAA,IAAI,8CAAe,CAAC,UAAU,CAAC,CAAA;QACvE,MAAM,QAAQ,GAAG,IAAA,0BAAiB,EAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;QAErD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAA;QACxC,CAAC;QAED,MAAM,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,GAAG,IAAA,0BAAiB,EACnE,QAAQ,EACR,SAAS,CACV,CAAA;QACD,MAAM,EAAE,kBAAkB,EAAE,8BAA8B,EAAE,GAC1D,IAAA,yBAAgB,EAAC,QAAQ,EAAE,SAAS,CAAC,CAAA;QAEvC,MAAM,QAAQ,GAAG;YACf,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,SAAS,EAAE,QAAQ,CAAC,SAAS;YAC7B,YAAY,EAAE,mBAAmB;YACjC,WAAW,EAAE,kBAAkB;YAC/B,aAAa,EAAE,QAAQ,CAAC,aAAa;YACrC,cAAc,EAAE,QAAQ,CAAC,cAAc,CAAC,OAAO;YAC/C,mBAAmB,EAAE,QAAQ,CAAC,0BAA0B;YACxD,uBAAuB,EAAE,8BAA8B;YACvD,YAAY,EAAE,4BAAgB;SAC/B,CAAA;QAED,IAAI,EAAe,CAAA;QACnB,IAAI,aAAa,EAAE,CAAC;YAClB,EAAE,GAAG,MAAM,OAAO,CAAC,OAAO;iBACvB,oBAAoB,CAAC,MAAM,CAAC;iBAC5B,eAAe,iCAAM,QAAQ,KAAE,QAAQ,EAAE,SAAS,IAAG;iBACrD,WAAW,EAAE,CAAA;QAClB,CAAC;aAAM,CAAC;YACN,EAAE,GAAG,MAAM,OAAO,CAAC,OAAO;iBACvB,WAAW,CAAC,MAAM,CAAC;iBACnB,eAAe,iCAAM,QAAQ,KAAE,MAAM,EAAE,SAAS,IAAG;iBACnD,WAAW,EAAE,CAAA;QAClB,CAAC;QAED,MAAM,IAAA,iDAAuB,EAC3B,EAAE,EACF;YACE,SAAS;YACT,IAAI,mBAAS,CAAC,QAAQ,CAAC,UAAU,CAAC;YAClC,IAAI,mBAAS,CAAC,QAAQ,CAAC,UAAU,CAAC;YAClC,IAAI,mBAAS,CAAC,QAAQ,CAAC,SAAS,CAAC;YACjC,mBAAmB;YACnB,kBAAkB;YAClB,IAAI,mBAAS,CAAC,QAAQ,CAAC,aAAa,CAAC;YACrC,IAAI,mBAAS,CAAC,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC;YAC9C,IAAI,mBAAS,CAAC,QAAQ,CAAC,0BAA0B,CAAC;YAClD,8BAA8B;YAC9B,4BAAgB;SACjB,EACD,+BAAA,IAAI,8CAAe,CACpB,CAAA;QAED,OAAO,EAAE,CAAA;IACX,CAAC;IAED,KAAK,CAAC,gCAAgC;QACpC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,+BAAA,IAAI,8CAAe,CAAA;QAC5D,MAAM,QAAQ,GAAG,IAAA,0BAAiB,EAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;QAErD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAA;QACxC,CAAC;QAED,MAAM,EAAE,kBAAkB,EAAE,8BAA8B,EAAE,GAC1D,IAAA,yBAAgB,EAAC,QAAQ,EAAE,SAAS,CAAC,CAAA;QAEvC,MAAM,EAAE,GAAG,IAAI,qBAAW,EAAE,CAAC,GAAG,CAC9B,IAAA,2CAA+B,EAC7B,8BAA8B,EAC9B,IAAI,mBAAS,CAAC,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,EAC9C,IAAI,mBAAS,CAAC,IAAA,2BAAkB,EAAC,OAAO,CAAC,CAAC,EAC1C,SAAS,EACT,MAAM,CACJ,yBAAgB,CAAC,UAAU,CACzB,cAAc,EACd,QAAQ,CAAC,cAAc,CAAC,QAAQ,CACjC,CAAC,QAAQ,EAAE,CACb,EACD,QAAQ,CAAC,cAAc,CAAC,QAAQ,EAChC,SAAS,EACT,4BAAgB,CACjB,CACF,CAAA;QAED,MAAM,IAAA,iDAAuB,EAC3B,EAAE,EACF;YACE,SAAS;YACT,8BAA8B;YAC9B,IAAI,mBAAS,CAAC,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC;YAC9C,IAAI,mBAAS,CAAC,IAAA,2BAAkB,EAAC,OAAO,CAAC,CAAC;YAC1C,4BAAgB;SACjB,EACD,+BAAA,IAAI,8CAAe,CACpB,CAAA;QAED,OAAO,EAAE,CAAA;IACX,CAAC;IAED,8DAA8D;IAC9D,KAAK,CAAC,cAAc;QAClB,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,+BAAA,IAAI,8CAAe,CAAA;QAC5D,MAAM,OAAO,GAAG,IAAA,uBAAc,EAAC,OAAO,EAAE,+BAAA,IAAI,8CAAe,CAAC,UAAU,CAAC,CAAA;QACvE,MAAM,QAAQ,GAAG,IAAA,0BAAiB,EAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;QAErD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAA;QACxC,CAAC;QAED,MAAM,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,GAAG,IAAA,0BAAiB,EACnE,QAAQ,EACR,SAAS,CACV,CAAA;QAED,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,aAAa,CAAC;YAC9D,mBAAmB;SACpB,CAAC,CAAA;QACF,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;QAExB,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,aAAa,CAAC;YAC7D,kBAAkB;SACnB,CAAC,CAAA;QACF,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;QAExB,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;YACvB,OAAO,IAAI,CAAA;QACb,CAAC;QAED,OAAO;YACL,YAAY,EAAE,MAAM;YACpB,WAAW,EAAE,MAAM;SACpB,CAAA;IACH,CAAC;CACF;AA7TD,0DA6TC"}
@@ -8,6 +8,7 @@ const web3_js_1 = require("@solana/web3.js");
8
8
  const lodash_1 = tslib_1.__importDefault(require("lodash"));
9
9
  const getReceivableReferenceAccount_1 = require("../../utils/solana/getReceivableReferenceAccount");
10
10
  const HumaSolanaProgramHelper_1 = require("./HumaSolanaProgramHelper");
11
+ const buildOptimalTransaction_1 = require("../../utils/solana/buildOptimalTransaction");
11
12
  class HumaSolanaReceivableHelper {
12
13
  constructor({ solanaContext }) {
13
14
  _HumaSolanaReceivableHelper_solanaContext.set(this, void 0);
@@ -44,6 +45,12 @@ class HumaSolanaReceivableHelper {
44
45
  .transaction();
45
46
  tx.add(programTx);
46
47
  tx.feePayer = publicKey;
48
+ await (0, buildOptimalTransaction_1.buildOptimalTransaction)(tx, [
49
+ publicKey,
50
+ newAsset.publicKey,
51
+ new web3_js_1.PublicKey(HumaSolanaProgramHelper_1.MPL_CORE_PROGRAM_ID),
52
+ receivableReferencePDA,
53
+ ], tslib_1.__classPrivateFieldGet(this, _HumaSolanaReceivableHelper_solanaContext, "f"));
47
54
  return tx;
48
55
  }
49
56
  async buildDeclarePaymentTransaction(referenceId, paymentAmount) {
@@ -65,6 +72,11 @@ class HumaSolanaReceivableHelper {
65
72
  })
66
73
  .transaction();
67
74
  tx.add(programTx);
75
+ await (0, buildOptimalTransaction_1.buildOptimalTransaction)(tx, [
76
+ publicKey,
77
+ receivableReferenceData.asset,
78
+ new web3_js_1.PublicKey(HumaSolanaProgramHelper_1.MPL_CORE_PROGRAM_ID),
79
+ ], tslib_1.__classPrivateFieldGet(this, _HumaSolanaReceivableHelper_solanaContext, "f"));
68
80
  return tx;
69
81
  }
70
82
  async getReceivableInfo(referenceId, ownerOverride) {
@@ -1 +1 @@
1
- {"version":3,"file":"HumaSolanaReceivableHelper.js","sourceRoot":"","sources":["../../../../src/helpers/solana/HumaSolanaReceivableHelper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HumaSolanaReceivableHelper.js","sourceRoot":"","sources":["../../../../src/helpers/solana/HumaSolanaReceivableHelper.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { PublicKey, Transaction } from '@solana/web3.js';
2
+ import { HumaSolanaContext } from '../../helpers';
3
+ export declare function buildOptimalTransaction(tx: Transaction, txAccounts: PublicKey[], context: HumaSolanaContext): Promise<Transaction>;
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildOptimalTransaction = buildOptimalTransaction;
4
+ const web3_js_1 = require("@solana/web3.js");
5
+ async function buildOptimalTransaction(tx, txAccounts, context) {
6
+ const [recentPrioritizationFees, recentBlockhash] = await Promise.all([
7
+ context.connection.getRecentPrioritizationFees({
8
+ lockedWritableAccounts: txAccounts,
9
+ }),
10
+ context.connection.getLatestBlockhash(),
11
+ ]);
12
+ let averagePrioritizationFee = recentPrioritizationFees.reduce((acc, fee) => acc + fee.prioritizationFee, 0);
13
+ averagePrioritizationFee = Math.ceil(averagePrioritizationFee / recentPrioritizationFees.length);
14
+ tx.instructions.unshift(web3_js_1.ComputeBudgetProgram.setComputeUnitPrice({
15
+ microLamports: averagePrioritizationFee,
16
+ }));
17
+ tx.recentBlockhash = recentBlockhash.blockhash;
18
+ return tx;
19
+ }
20
+ //# sourceMappingURL=buildOptimalTransaction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildOptimalTransaction.js","sourceRoot":"","sources":["../../../../src/utils/solana/buildOptimalTransaction.ts"],"names":[],"mappings":";;AAQA,0DA4BC;AApCD,6CAKwB;AAGjB,KAAK,UAAU,uBAAuB,CAC3C,EAAe,EACf,UAAuB,EACvB,OAA0B;IAE1B,MAAM,CAAC,wBAAwB,EAAE,eAAe,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QACpE,OAAO,CAAC,UAAU,CAAC,2BAA2B,CAAC;YAC7C,sBAAsB,EAAE,UAAU;SACnC,CAAC;QACF,OAAO,CAAC,UAAU,CAAC,kBAAkB,EAAE;KACxC,CAAC,CAAA;IAEF,IAAI,wBAAwB,GAAG,wBAAwB,CAAC,MAAM,CAC5D,CAAC,GAAW,EAAE,GAA6B,EAAE,EAAE,CAAC,GAAG,GAAG,GAAG,CAAC,iBAAiB,EAC3E,CAAC,CACF,CAAA;IACD,wBAAwB,GAAG,IAAI,CAAC,IAAI,CAClC,wBAAwB,GAAG,wBAAwB,CAAC,MAAM,CAC3D,CAAA;IAED,EAAE,CAAC,YAAY,CAAC,OAAO,CACrB,8BAAoB,CAAC,mBAAmB,CAAC;QACvC,aAAa,EAAE,wBAAwB;KACxC,CAAC,CACH,CAAA;IAED,EAAE,CAAC,eAAe,GAAG,eAAe,CAAC,SAAS,CAAA;IAC9C,OAAO,EAAE,CAAA;AACX,CAAC"}
@@ -4,6 +4,7 @@ import { BN } from '@coral-xyz/anchor';
4
4
  import { getCreditAccounts, getHumaProgram, getSentinelAddress, getSolanaPoolInfo, getTokenAccounts, SolanaTokenUtils, } from '@huma-finance/shared';
5
5
  import { createApproveCheckedInstruction, createAssociatedTokenAccountInstruction, getAccount, TOKEN_PROGRAM_ID, TokenAccountNotFoundError, } from '@solana/spl-token';
6
6
  import { PublicKey, Transaction } from '@solana/web3.js';
7
+ import { buildOptimalTransaction } from '../../utils/solana/buildOptimalTransaction';
7
8
  import { getReceivableReferenceData } from '../../utils/solana/getReceivableReferenceAccount';
8
9
  export const MPL_CORE_PROGRAM_ID = 'CoREENxT6tW1HoK8ypY1SxRMZTcVPm7R94rH4PZNhX7d';
9
10
  export class HumaSolanaProgramHelper {
@@ -39,6 +40,16 @@ export class HumaSolanaProgramHelper {
39
40
  })
40
41
  .transaction();
41
42
  tx.add(programTx);
43
+ await buildOptimalTransaction(tx, [
44
+ publicKey,
45
+ receivableReferenceData.asset,
46
+ new PublicKey(poolInfo.humaConfig),
47
+ new PublicKey(poolInfo.poolConfig),
48
+ new PublicKey(poolInfo.poolState),
49
+ creditConfigAccount,
50
+ creditStateAccount,
51
+ new PublicKey(MPL_CORE_PROGRAM_ID),
52
+ ], __classPrivateFieldGet(this, _HumaSolanaProgramHelper_solanaContext, "f"));
42
53
  return tx;
43
54
  }
44
55
  async buildDrawdownTransaction(amount) {
@@ -94,6 +105,19 @@ export class HumaSolanaProgramHelper {
94
105
  })
95
106
  .transaction();
96
107
  tx.add(programTx);
108
+ await buildOptimalTransaction(tx, [
109
+ publicKey,
110
+ new PublicKey(poolInfo.humaConfig),
111
+ new PublicKey(poolInfo.poolConfig),
112
+ new PublicKey(poolInfo.poolState),
113
+ creditConfigAccount,
114
+ creditStateAccount,
115
+ new PublicKey(poolInfo.poolAuthority),
116
+ new PublicKey(poolInfo.underlyingMint.address),
117
+ new PublicKey(poolInfo.poolUnderlyingTokenAccount),
118
+ borrowerUnderlyingTokenAccountAddress,
119
+ TOKEN_PROGRAM_ID,
120
+ ], __classPrivateFieldGet(this, _HumaSolanaProgramHelper_solanaContext, "f"));
97
121
  return tx;
98
122
  }
99
123
  async buildPaymentTransaction(amount, principalOnly = false) {
@@ -104,7 +128,7 @@ export class HumaSolanaProgramHelper {
104
128
  throw new Error('Could not find pool');
105
129
  }
106
130
  const { creditConfigAccount, creditStateAccount } = getCreditAccounts(poolInfo, publicKey);
107
- const { underlyingTokenATA: borrowerUnderlyingTokenAcccount } = getTokenAccounts(poolInfo, publicKey);
131
+ const { underlyingTokenATA: borrowerUnderlyingTokenAccount } = getTokenAccounts(poolInfo, publicKey);
108
132
  const accounts = {
109
133
  humaConfig: poolInfo.humaConfig,
110
134
  poolConfig: poolInfo.poolConfig,
@@ -114,7 +138,7 @@ export class HumaSolanaProgramHelper {
114
138
  poolAuthority: poolInfo.poolAuthority,
115
139
  underlyingMint: poolInfo.underlyingMint.address,
116
140
  poolUnderlyingToken: poolInfo.poolUnderlyingTokenAccount,
117
- borrowerUnderlyingToken: borrowerUnderlyingTokenAcccount,
141
+ borrowerUnderlyingToken: borrowerUnderlyingTokenAccount,
118
142
  tokenProgram: TOKEN_PROGRAM_ID,
119
143
  };
120
144
  let tx;
@@ -130,6 +154,19 @@ export class HumaSolanaProgramHelper {
130
154
  .accountsPartial(Object.assign(Object.assign({}, accounts), { signer: publicKey }))
131
155
  .transaction();
132
156
  }
157
+ await buildOptimalTransaction(tx, [
158
+ publicKey,
159
+ new PublicKey(poolInfo.humaConfig),
160
+ new PublicKey(poolInfo.poolConfig),
161
+ new PublicKey(poolInfo.poolState),
162
+ creditConfigAccount,
163
+ creditStateAccount,
164
+ new PublicKey(poolInfo.poolAuthority),
165
+ new PublicKey(poolInfo.underlyingMint.address),
166
+ new PublicKey(poolInfo.poolUnderlyingTokenAccount),
167
+ borrowerUnderlyingTokenAccount,
168
+ TOKEN_PROGRAM_ID,
169
+ ], __classPrivateFieldGet(this, _HumaSolanaProgramHelper_solanaContext, "f"));
133
170
  return tx;
134
171
  }
135
172
  async buildApproveAllowanceTransaction() {
@@ -139,7 +176,15 @@ export class HumaSolanaProgramHelper {
139
176
  throw new Error('Could not find pool');
140
177
  }
141
178
  const { underlyingTokenATA: borrowerUnderlyingTokenAccount } = getTokenAccounts(poolInfo, publicKey);
142
- return new Transaction().add(createApproveCheckedInstruction(borrowerUnderlyingTokenAccount, new PublicKey(poolInfo.underlyingMint.address), new PublicKey(getSentinelAddress(chainId)), publicKey, BigInt(SolanaTokenUtils.parseUnits('100000000000', poolInfo.underlyingMint.decimals).toString()), poolInfo.underlyingMint.decimals, undefined, TOKEN_PROGRAM_ID));
179
+ const tx = new Transaction().add(createApproveCheckedInstruction(borrowerUnderlyingTokenAccount, new PublicKey(poolInfo.underlyingMint.address), new PublicKey(getSentinelAddress(chainId)), publicKey, BigInt(SolanaTokenUtils.parseUnits('100000000000', poolInfo.underlyingMint.decimals).toString()), poolInfo.underlyingMint.decimals, undefined, TOKEN_PROGRAM_ID));
180
+ await buildOptimalTransaction(tx, [
181
+ publicKey,
182
+ borrowerUnderlyingTokenAccount,
183
+ new PublicKey(poolInfo.underlyingMint.address),
184
+ new PublicKey(getSentinelAddress(chainId)),
185
+ TOKEN_PROGRAM_ID,
186
+ ], __classPrivateFieldGet(this, _HumaSolanaProgramHelper_solanaContext, "f"));
187
+ return tx;
143
188
  }
144
189
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
145
190
  async getAccountInfo() {
@@ -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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"}
@@ -5,6 +5,7 @@ import { PublicKey, Transaction } from '@solana/web3.js';
5
5
  import lodash from 'lodash';
6
6
  import { getReceivableReferenceAccount, getReceivableReferenceData, } from '../../utils/solana/getReceivableReferenceAccount';
7
7
  import { MPL_CORE_PROGRAM_ID } from './HumaSolanaProgramHelper';
8
+ import { buildOptimalTransaction } from '../../utils/solana/buildOptimalTransaction';
8
9
  export class HumaSolanaReceivableHelper {
9
10
  constructor({ solanaContext }) {
10
11
  _HumaSolanaReceivableHelper_solanaContext.set(this, void 0);
@@ -41,6 +42,12 @@ export class HumaSolanaReceivableHelper {
41
42
  .transaction();
42
43
  tx.add(programTx);
43
44
  tx.feePayer = publicKey;
45
+ await buildOptimalTransaction(tx, [
46
+ publicKey,
47
+ newAsset.publicKey,
48
+ new PublicKey(MPL_CORE_PROGRAM_ID),
49
+ receivableReferencePDA,
50
+ ], __classPrivateFieldGet(this, _HumaSolanaReceivableHelper_solanaContext, "f"));
44
51
  return tx;
45
52
  }
46
53
  async buildDeclarePaymentTransaction(referenceId, paymentAmount) {
@@ -62,6 +69,11 @@ export class HumaSolanaReceivableHelper {
62
69
  })
63
70
  .transaction();
64
71
  tx.add(programTx);
72
+ await buildOptimalTransaction(tx, [
73
+ publicKey,
74
+ receivableReferenceData.asset,
75
+ new PublicKey(MPL_CORE_PROGRAM_ID),
76
+ ], __classPrivateFieldGet(this, _HumaSolanaReceivableHelper_solanaContext, "f"));
65
77
  return tx;
66
78
  }
67
79
  async getReceivableInfo(referenceId, ownerOverride) {
@@ -1 +1 @@
1
- {"version":3,"file":"HumaSolanaReceivableHelper.js","sourceRoot":"","sources":["../../../src/helpers/solana/HumaSolanaReceivableHelper.ts"],"names":[],"mappings":";;AACA,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AACxE,OAAO,EAAW,SAAS,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AACjE,OAAO,MAAM,MAAM,QAAQ,CAAA;AAC3B,OAAO,EACL,6BAA6B,EAC7B,0BAA0B,GAC3B,MAAM,kDAAkD,CAAA;AAEzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAA;AAuB/D,MAAM,OAAO,0BAA0B;IAGrC,YAAY,EAAE,aAAa,EAAwC;QAFnE,4DAAiC;QAG/B,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAA;QAChD,CAAC;QAED,uBAAA,IAAI,6CAAkB,aAAa,MAAA,CAAA;IACrC,CAAC;IAED,KAAK,CAAC,gCAAgC,CACpC,QAAiB,EACjB,cAOC;QAED,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,uBAAA,IAAI,iDAAe,CAAA;QACxE,MAAM,OAAO,GAAG,cAAc,CAAC,OAAO,EAAE,UAAU,CAAC,CAAA;QACnD,MAAM,QAAQ,GAAG,iBAAiB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;QAErD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAA;QACxC,CAAC;QAED,MAAM,EAAE,GAAgB,IAAI,WAAW,EAAE,CAAA;QACzC,MAAM,sBAAsB,GAAG,6BAA6B,CAC1D,OAAO,EACP,SAAS,EACT,cAAc,CAAC,WAAW,CAC3B,CAAA;QAED,MAAM,iBAAiB,GAAG;YACxB;gBACE,MAAM,EAAE,sBAAsB;gBAC9B,UAAU,EAAE,IAAI;gBAChB,QAAQ,EAAE,KAAK;aAChB;SACF,CAAA;QAED,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,OAAO;aACpC,gBAAgB,CAAC,cAAc,CAAC;aAChC,eAAe,CAAC;YACf,KAAK,EAAE,QAAQ,CAAC,SAAS;YACzB,KAAK,EAAE,SAAS;YAChB,OAAO,EAAE,mBAAmB;YAC5B,UAAU,EAAE,IAAI;SACjB,CAAC;aACD,iBAAiB,CAAC,iBAAiB,CAAC;aACpC,WAAW,EAAE,CAAA;QAEhB,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;QACjB,EAAE,CAAC,QAAQ,GAAG,SAAS,CAAA;QAEvB,OAAO,EAAE,CAAA;IACX,CAAC;IAED,KAAK,CAAC,8BAA8B,CAClC,WAAmB,EACnB,aAAiB;QAEjB,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,uBAAA,IAAI,iDAAe,CAAA;QACxE,MAAM,OAAO,GAAG,cAAc,CAAC,OAAO,EAAE,UAAU,CAAC,CAAA;QACnD,MAAM,QAAQ,GAAG,iBAAiB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;QAErD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAA;QACxC,CAAC;QAED,MAAM,EAAE,GAAgB,IAAI,WAAW,EAAE,CAAA;QACzC,MAAM,uBAAuB,GAAG,MAAM,0BAA0B,CAC9D,OAAO,EACP,SAAS,EACT,UAAU,EACV,WAAW,CACZ,CAAA;QAED,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,OAAO;aACpC,cAAc,CAAC,aAAa,CAAC;aAC7B,eAAe,CAAC;YACf,SAAS,EAAE,SAAS;YACpB,KAAK,EAAE,uBAAuB,CAAC,KAAK;YACpC,OAAO,EAAE,mBAAmB;YAC5B,UAAU,EAAE,IAAI;SACjB,CAAC;aACD,WAAW,EAAE,CAAA;QAEhB,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;QAEjB,OAAO,EAAE,CAAA;IACX,CAAC;IAED,KAAK,CAAC,iBAAiB,CACrB,WAAmB,EACnB,aAAyB;QAEzB,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,uBAAA,IAAI,iDAAe,CAAA;QACxE,MAAM,OAAO,GAAG,cAAc,CAAC,OAAO,EAAE,UAAU,CAAC,CAAA;QACnD,MAAM,QAAQ,GAAG,iBAAiB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;QAErD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAA;QACxC,CAAC;QAED,MAAM,uBAAuB,GAAG,MAAM,0BAA0B,CAC9D,OAAO,EACP,aAAa,aAAb,aAAa,cAAb,aAAa,GAAI,SAAS,EAC1B,UAAU,EACV,WAAW,CACZ,CAAA;QACD,MAAM,CAAC,iBAAiB,CAAC,GAAG,SAAS,CAAC,sBAAsB,CAC1D;YACE,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC;YAC9B,uBAAuB,CAAC,KAAK,CAAC,QAAQ,EAAE;SACzC,EACD,OAAO,CAAC,SAAS,CAClB,CAAA;QAED,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,aAAa,CAAC;YAC9D,iBAAiB;SAClB,CAAC,CAAA;QACF,MAAM,cAAc,GAAG,IAAI,CAAC,CAAC,CAA8B,CAAA;QAE3D,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,OAAO,IAAI,CAAA;QACb,CAAC;QAED,IAAI,KAAsB,CAAA;QAC1B,IAAI,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;YAC1D,KAAK,GAAG,SAAS,CAAA;QACnB,CAAC;aAAM,IAAI,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;YAChE,KAAK,GAAG,QAAQ,CAAA;QAClB,CAAC;aAAM,IAAI,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;YAClE,KAAK,GAAG,UAAU,CAAA;QACpB,CAAC;aAAM,IAAI,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;YACvE,KAAK,GAAG,eAAe,CAAA;QACzB,CAAC;aAAM,IAAI,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;YAC9D,KAAK,GAAG,MAAM,CAAA;QAChB,CAAC;aAAM,IAAI,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;YAClE,KAAK,GAAG,UAAU,CAAA;QACpB,CAAC;aAAM,IAAI,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;YACjE,KAAK,GAAG,SAAS,CAAA;QACnB,CAAC;aAAM,CAAC;YACN,KAAK,GAAG,WAAW,CAAA;QACrB,CAAC;QAED,cAAc,CAAC,KAAK,GAAG,KAAK,CAAA;QAC5B,OAAO,cAAc,CAAA;IACvB,CAAC;CACF"}
1
+ {"version":3,"file":"HumaSolanaReceivableHelper.js","sourceRoot":"","sources":["../../../src/helpers/solana/HumaSolanaReceivableHelper.ts"],"names":[],"mappings":"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"}