@hinkal/common 0.2.22 → 0.2.23

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 (242) hide show
  1. package/API/proxyAccountsCalls.cjs +1 -1
  2. package/API/proxyAccountsCalls.mjs +13 -13
  3. package/README.md +63 -267
  4. package/constants/activity.constants.cjs +1 -1
  5. package/constants/activity.constants.mjs +0 -1
  6. package/constants/addresses.constants.cjs +1 -1
  7. package/constants/addresses.constants.mjs +9 -10
  8. package/constants/contracts.constants.cjs +1 -1
  9. package/constants/contracts.constants.d.ts +3 -3
  10. package/constants/contracts.constants.mjs +29 -29
  11. package/constants/server.constants.cjs +1 -1
  12. package/constants/server.constants.mjs +28 -29
  13. package/constants/tasks.constants.cjs +1 -1
  14. package/constants/tasks.constants.mjs +4 -5
  15. package/crypto/poseidon.cjs +1 -1
  16. package/crypto/poseidon.mjs +10 -10
  17. package/data-structures/ApprovalDBs/EventsPublicApprovalsDB.cjs +1 -1
  18. package/data-structures/ApprovalDBs/EventsPublicApprovalsDB.mjs +24 -24
  19. package/data-structures/Hinkal/Hinkal.cjs +1 -1
  20. package/data-structures/Hinkal/Hinkal.mjs +4 -5
  21. package/data-structures/Hinkal/IHinkal.d.ts +2 -2
  22. package/data-structures/Hinkal/hinkalApprove.cjs +1 -1
  23. package/data-structures/Hinkal/hinkalApprove.mjs +40 -40
  24. package/data-structures/Hinkal/hinkalCheckTokenRegistry.cjs +1 -1
  25. package/data-structures/Hinkal/hinkalCheckTokenRegistry.mjs +7 -8
  26. package/data-structures/Hinkal/hinkalDeposit.cjs +1 -1
  27. package/data-structures/Hinkal/hinkalDeposit.mjs +4 -5
  28. package/data-structures/Hinkal/hinkalDepositAndWithdraw.cjs +1 -1
  29. package/data-structures/Hinkal/hinkalDepositAndWithdraw.mjs +2 -3
  30. package/data-structures/Hinkal/hinkalDepositOnChainUtxos.cjs +1 -1
  31. package/data-structures/Hinkal/hinkalDepositOnChainUtxos.mjs +18 -19
  32. package/data-structures/Hinkal/hinkalDepostAndBridge.cjs +1 -1
  33. package/data-structures/Hinkal/hinkalDepostAndBridge.mjs +3 -4
  34. package/data-structures/Hinkal/hinkalInsideTransact.cjs +1 -1
  35. package/data-structures/Hinkal/hinkalInsideTransact.mjs +14 -13
  36. package/data-structures/Hinkal/hinkalPrivateWallet.cjs +1 -1
  37. package/data-structures/Hinkal/hinkalPrivateWallet.mjs +2 -3
  38. package/data-structures/Hinkal/hinkalProoflessDeposit.cjs +1 -1
  39. package/data-structures/Hinkal/hinkalProoflessDeposit.mjs +27 -26
  40. package/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.cjs +1 -1
  41. package/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.mjs +38 -39
  42. package/data-structures/Hinkal/hinkalSolanaSwap.cjs +1 -1
  43. package/data-structures/Hinkal/hinkalSolanaSwap.mjs +16 -17
  44. package/data-structures/Hinkal/hinkalSolanaTransfer.cjs +1 -1
  45. package/data-structures/Hinkal/hinkalSolanaTransfer.mjs +24 -25
  46. package/data-structures/Hinkal/hinkalSolanaWithdraw.cjs +1 -1
  47. package/data-structures/Hinkal/hinkalSolanaWithdraw.mjs +15 -16
  48. package/data-structures/Hinkal/hinkalSwap.cjs +1 -1
  49. package/data-structures/Hinkal/hinkalSwap.mjs +2 -3
  50. package/data-structures/Hinkal/hinkalTransfer.cjs +1 -1
  51. package/data-structures/Hinkal/hinkalTransfer.mjs +2 -3
  52. package/data-structures/Hinkal/hinkalWithdraw.cjs +1 -1
  53. package/data-structures/Hinkal/hinkalWithdraw.mjs +9 -10
  54. package/data-structures/Hinkal/hinkalWithdrawStuckUtxos.cjs +1 -1
  55. package/data-structures/Hinkal/hinkalWithdrawStuckUtxos.mjs +8 -9
  56. package/data-structures/Hinkal/resetMerkleTrees.cjs +1 -1
  57. package/data-structures/Hinkal/resetMerkleTrees.mjs +10 -10
  58. package/data-structures/IndexedDB/activity-db.cjs +1 -1
  59. package/data-structures/IndexedDB/activity-db.mjs +39 -41
  60. package/data-structures/IndexedDB/balances-db.cjs +1 -1
  61. package/data-structures/IndexedDB/balances-db.mjs +8 -9
  62. package/data-structures/IndexedDB/contact-db.cjs +1 -1
  63. package/data-structures/IndexedDB/contact-db.mjs +21 -23
  64. package/data-structures/IndexedDB/signatures-db.cjs +1 -1
  65. package/data-structures/IndexedDB/signatures-db.mjs +2 -3
  66. package/data-structures/TokenDBs/EventsPublicTokensDB.cjs +1 -1
  67. package/data-structures/TokenDBs/EventsPublicTokensDB.mjs +34 -36
  68. package/data-structures/crypto-keys/decodeUTXO.cjs +1 -1
  69. package/data-structures/crypto-keys/decodeUTXO.mjs +45 -45
  70. package/data-structures/crypto-keys/encryptDecryptUtxo.cjs +1 -1
  71. package/data-structures/crypto-keys/encryptDecryptUtxo.mjs +28 -27
  72. package/data-structures/crypto-keys/keys.cjs +1 -1
  73. package/data-structures/crypto-keys/keys.d.ts +2 -3
  74. package/data-structures/crypto-keys/keys.mjs +56 -57
  75. package/data-structures/event-service/evm/AbstractEventService.cjs +1 -1
  76. package/data-structures/event-service/evm/AbstractEventService.mjs +14 -14
  77. package/data-structures/event-service/evm/AbstractNullifierSnapshotService.cjs +1 -1
  78. package/data-structures/event-service/evm/AbstractNullifierSnapshotService.d.ts +2 -3
  79. package/data-structures/event-service/evm/AbstractNullifierSnapshotService.mjs +5 -4
  80. package/data-structures/event-service/evm/AbstractSnapshotService.cjs +1 -1
  81. package/data-structures/event-service/evm/AbstractSnapshotService.mjs +6 -3
  82. package/data-structures/event-service/evm/BlockchainEventEmitter.cjs +1 -1
  83. package/data-structures/event-service/evm/BlockchainEventEmitter.d.ts +1 -1
  84. package/data-structures/event-service/evm/BlockchainEventEmitter.mjs +22 -18
  85. package/data-structures/event-service/solana/AbstractSolanaNullifierSnapshotService.cjs +1 -1
  86. package/data-structures/event-service/solana/AbstractSolanaNullifierSnapshotService.mjs +2 -2
  87. package/data-structures/presale/PresaleContractWrapper.cjs +1 -1
  88. package/data-structures/presale/PresaleContractWrapper.d.ts +3 -3
  89. package/data-structures/presale/PresaleContractWrapper.mjs +10 -10
  90. package/data-structures/provider-adapter/IProviderAdapter.d.ts +7 -7
  91. package/data-structures/snapshot/evm-snapshots/ClientAccessTokenSnapshotService.cjs +1 -1
  92. package/data-structures/snapshot/evm-snapshots/ClientAccessTokenSnapshotService.mjs +16 -14
  93. package/data-structures/snapshot/evm-snapshots/ClientApprovalsSnapshotService.cjs +1 -1
  94. package/data-structures/snapshot/evm-snapshots/ClientApprovalsSnapshotService.mjs +7 -5
  95. package/error-handling/get-error.message.cjs +1 -1
  96. package/error-handling/get-error.message.mjs +2 -3
  97. package/functions/kyc/zkMeHelper.cjs +1 -1
  98. package/functions/kyc/zkMeHelper.mjs +3 -3
  99. package/functions/pre-transaction/getFlatFees.cjs +1 -1
  100. package/functions/pre-transaction/getFlatFees.mjs +2 -3
  101. package/functions/pre-transaction/getSolanaCalldataHash.cjs +1 -1
  102. package/functions/pre-transaction/getSolanaCalldataHash.mjs +21 -21
  103. package/functions/pre-transaction/getVolatileTransferAmount.cjs +1 -1
  104. package/functions/pre-transaction/getVolatileTransferAmount.mjs +2 -3
  105. package/functions/pre-transaction/interaction-to-action.cjs +1 -1
  106. package/functions/pre-transaction/interaction-to-action.mjs +2 -3
  107. package/functions/private-wallet/emporium.helpers.cjs +1 -1
  108. package/functions/private-wallet/emporium.helpers.d.ts +6 -7
  109. package/functions/private-wallet/emporium.helpers.mjs +104 -105
  110. package/functions/private-wallet/emporium.swap.helpers.cjs +1 -1
  111. package/functions/private-wallet/emporium.swap.helpers.mjs +44 -43
  112. package/functions/private-wallet/opProducer.cjs +1 -1
  113. package/functions/private-wallet/opProducer.mjs +1 -1
  114. package/functions/snarkjs/common.snarkjs.cjs +1 -1
  115. package/functions/snarkjs/common.snarkjs.mjs +21 -18
  116. package/functions/snarkjs/constructSolanaZkProof.cjs +1 -1
  117. package/functions/snarkjs/constructSolanaZkProof.mjs +11 -12
  118. package/functions/utils/addresses.cjs +1 -1
  119. package/functions/utils/addresses.mjs +6 -6
  120. package/functions/utils/cacheFunctions.cjs +1 -1
  121. package/functions/utils/cacheFunctions.d.ts +1 -1
  122. package/functions/utils/cacheFunctions.mjs +55 -54
  123. package/functions/utils/convertEmporiumOpToCallInfo.cjs +1 -1
  124. package/functions/utils/convertEmporiumOpToCallInfo.mjs +5 -5
  125. package/functions/utils/create-provider.cjs +1 -1
  126. package/functions/utils/create-provider.d.ts +2 -2
  127. package/functions/utils/create-provider.mjs +5 -5
  128. package/functions/utils/encryptInputForEnclave.cjs +1 -1
  129. package/functions/utils/encryptInputForEnclave.mjs +9 -9
  130. package/functions/utils/ethers-formatter.utils.d.ts +1 -1
  131. package/functions/utils/external-action.utils.cjs +1 -1
  132. package/functions/utils/external-action.utils.mjs +2 -2
  133. package/functions/utils/getContractAddress.cjs +1 -0
  134. package/functions/utils/getContractAddress.d.ts +2 -0
  135. package/functions/utils/getContractAddress.mjs +9 -0
  136. package/functions/utils/getDataFromTransaction.cjs +1 -1
  137. package/functions/utils/getDataFromTransaction.d.ts +0 -11
  138. package/functions/utils/getDataFromTransaction.mjs +26 -50
  139. package/functions/utils/getRecipientInfoFromUserKeys.cjs +1 -1
  140. package/functions/utils/getRecipientInfoFromUserKeys.mjs +1 -1
  141. package/functions/utils/getSignerFromContract.cjs +1 -0
  142. package/functions/utils/getSignerFromContract.d.ts +3 -0
  143. package/functions/utils/getSignerFromContract.mjs +16 -0
  144. package/functions/utils/getUtxosFromReceipt.utils.cjs +1 -1
  145. package/functions/utils/getUtxosFromReceipt.utils.d.ts +1 -1
  146. package/functions/utils/getUtxosFromReceipt.utils.mjs +15 -16
  147. package/functions/utils/inLogicMetadata.cjs +1 -1
  148. package/functions/utils/inLogicMetadata.mjs +2 -2
  149. package/functions/utils/nftTokenFunctions.cjs +1 -1
  150. package/functions/utils/nftTokenFunctions.mjs +2 -3
  151. package/functions/utils/publicBalance.utils.cjs +1 -1
  152. package/functions/utils/publicBalance.utils.d.ts +1 -1
  153. package/functions/utils/publicBalance.utils.mjs +42 -42
  154. package/functions/utils/rpc-int-encode.cjs +1 -1
  155. package/functions/utils/rpc-int-encode.d.ts +1 -2
  156. package/functions/utils/rpc-int-encode.mjs +3 -6
  157. package/functions/utils/solanaMint.utils.cjs +1 -1
  158. package/functions/utils/solanaMint.utils.mjs +6 -6
  159. package/functions/web3/EIP-712.cjs +1 -1
  160. package/functions/web3/EIP-712.d.ts +4 -4
  161. package/functions/web3/EIP-712.mjs +1 -1
  162. package/functions/web3/etherFunctions.cjs +1 -1
  163. package/functions/web3/etherFunctions.mjs +32 -29
  164. package/functions/web3/events/balanceChangedCustomHandler.cjs +1 -1
  165. package/functions/web3/events/balanceChangedCustomHandler.mjs +4 -5
  166. package/functions/web3/events/balanceChangedHandler.cjs +1 -1
  167. package/functions/web3/events/balanceChangedHandler.mjs +2 -3
  168. package/functions/web3/events/getApprovedBalance.cjs +1 -1
  169. package/functions/web3/events/getApprovedBalance.mjs +1 -1
  170. package/functions/web3/events/getInputUtxosEnclave.cjs +1 -1
  171. package/functions/web3/events/getInputUtxosEnclave.mjs +20 -20
  172. package/functions/web3/events/getTransactionLogEvents.cjs +1 -1
  173. package/functions/web3/events/getTransactionLogEvents.d.ts +3 -3
  174. package/functions/web3/events/getTransactionLogEvents.mjs +6 -5
  175. package/functions/web3/events/index.d.ts +0 -1
  176. package/functions/web3/fetchSolanaMerkleTreeRootHash.cjs +1 -1
  177. package/functions/web3/fetchSolanaMerkleTreeRootHash.d.ts +1 -2
  178. package/functions/web3/fetchSolanaMerkleTreeRootHash.mjs +4 -5
  179. package/functions/web3/functionCalls/accessTokenCalls.cjs +1 -1
  180. package/functions/web3/functionCalls/accessTokenCalls.mjs +10 -11
  181. package/functions/web3/functionCalls/approveToken.cjs +1 -1
  182. package/functions/web3/functionCalls/approveToken.mjs +61 -58
  183. package/functions/web3/functionCalls/constructBatchCall.cjs +1 -1
  184. package/functions/web3/functionCalls/constructBatchCall.d.ts +2 -2
  185. package/functions/web3/functionCalls/constructBatchCall.mjs +10 -9
  186. package/functions/web3/functionCalls/estimateGasRelayer.cjs +1 -1
  187. package/functions/web3/functionCalls/estimateGasRelayer.mjs +1 -1
  188. package/functions/web3/functionCalls/inHinkalApprovalCalls.cjs +1 -1
  189. package/functions/web3/functionCalls/inHinkalApprovalCalls.mjs +18 -21
  190. package/functions/web3/functionCalls/recoverTransactionFromError.d.ts +1 -1
  191. package/functions/web3/functionCalls/transactCallDirect.cjs +1 -1
  192. package/functions/web3/functionCalls/transactCallDirect.mjs +38 -34
  193. package/functions/web3/functionCalls/transactCallRelayer.cjs +1 -1
  194. package/functions/web3/functionCalls/transactCallRelayer.mjs +8 -10
  195. package/functions/web3/getContractMetadata.cjs +1 -1
  196. package/functions/web3/getContractMetadata.d.ts +1 -1
  197. package/functions/web3/getContractMetadata.mjs +25 -25
  198. package/functions/web3/getPublicAddressBalance.cjs +1 -1
  199. package/functions/web3/getPublicAddressBalance.mjs +7 -6
  200. package/functions/web3/getTokenHolder.cjs +1 -1
  201. package/functions/web3/getTokenHolder.mjs +16 -15
  202. package/functions/web3/odosAPI.cjs +1 -1
  203. package/functions/web3/odosAPI.mjs +6 -7
  204. package/functions/web3/oneInchAPI.cjs +1 -1
  205. package/functions/web3/oneInchAPI.mjs +2 -3
  206. package/functions/web3/runContractFunction.cjs +1 -1
  207. package/functions/web3/runContractFunction.d.ts +6 -5
  208. package/functions/web3/runContractFunction.mjs +41 -45
  209. package/functions/web3/uniswapAPI.cjs +1 -1
  210. package/functions/web3/uniswapAPI.d.ts +2 -2
  211. package/functions/web3/uniswapAPI.mjs +23 -24
  212. package/index.cjs +1 -1
  213. package/index.mjs +336 -340
  214. package/package.json +3 -4
  215. package/providers/CustomEthersProvider.d.ts +1 -1
  216. package/providers/EthersProviderAdapter.cjs +1 -1
  217. package/providers/EthersProviderAdapter.d.ts +7 -7
  218. package/providers/EthersProviderAdapter.mjs +46 -44
  219. package/providers/SolanaProviderAdapter.d.ts +1 -1
  220. package/providers/WagmiProviderAdapter.cjs +1 -1
  221. package/providers/WagmiProviderAdapter.d.ts +5 -5
  222. package/providers/WagmiProviderAdapter.mjs +37 -33
  223. package/providers/prepareEthersHinkal.cjs +1 -1
  224. package/providers/prepareEthersHinkal.d.ts +2 -2
  225. package/providers/prepareEthersHinkal.mjs +3 -5
  226. package/providers/prepareWagmiHinkal.cjs +1 -1
  227. package/providers/prepareWagmiHinkal.mjs +3 -5
  228. package/types/activities.types.d.ts +2 -3
  229. package/types/big-intable.types.d.ts +3 -2
  230. package/types/ethereum-network.types.d.ts +10 -10
  231. package/types/transactions.types.cjs +1 -1
  232. package/types/transactions.types.d.ts +2 -3
  233. package/types/transactions.types.mjs +6 -7
  234. package/webworker/utxoWorker/utxoWorkerLauncher.cjs +1 -1
  235. package/webworker/utxoWorker/utxoWorkerLauncher.mjs +1 -1
  236. package/webworker/utxoWorker/utxoWorkerLogic.cjs +1 -1
  237. package/webworker/utxoWorker/utxoWorkerLogic.mjs +1 -1
  238. package/webworker/zkProofWorker/zkProofWorkerLauncher.cjs +1 -1
  239. package/webworker/zkProofWorker/zkProofWorkerLauncher.mjs +1 -1
  240. package/functions/web3/events/web3RetrieveEvents.cjs +0 -1
  241. package/functions/web3/events/web3RetrieveEvents.d.ts +0 -14
  242. package/functions/web3/events/web3RetrieveEvents.mjs +0 -9
@@ -1,13 +1,12 @@
1
1
  import "../../../types/circom-data.types.mjs";
2
2
  import { EventType as o } from "../../../types/hinkal.types.mjs";
3
- import "../../../types/transactions.types.mjs";
4
3
  import "../../../types/activities.types.mjs";
5
- const p = (t) => {
6
- const n = o.BalanceChange, e = new CustomEvent(n, {
7
- detail: t
4
+ const m = (n) => {
5
+ const t = o.BalanceChange, e = new CustomEvent(t, {
6
+ detail: n
8
7
  });
9
8
  typeof document < "u" ? document.dispatchEvent(e) : process?.emit("message", e, void 0);
10
9
  };
11
10
  export {
12
- p as balanceChangedCustomHandler
11
+ m as balanceChangedCustomHandler
13
12
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../../../types/circom-data.types.cjs");const n=require("../../../types/hinkal.types.cjs");require("../../../types/transactions.types.cjs");require("../../../types/activities.types.cjs");const t=()=>{const e=n.EventType.BalanceChange;typeof document<"u"?document.dispatchEvent(new Event(e)):process?.emit("message",e,void 0)};exports.balanceChangedHandler=t;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../../../types/circom-data.types.cjs");const n=require("../../../types/hinkal.types.cjs");require("../../../types/activities.types.cjs");const t=()=>{const e=n.EventType.BalanceChange;typeof document<"u"?document.dispatchEvent(new Event(e)):process?.emit("message",e,void 0)};exports.balanceChangedHandler=t;
@@ -1,11 +1,10 @@
1
1
  import "../../../types/circom-data.types.mjs";
2
2
  import { EventType as n } from "../../../types/hinkal.types.mjs";
3
- import "../../../types/transactions.types.mjs";
4
3
  import "../../../types/activities.types.mjs";
5
- const i = () => {
4
+ const p = () => {
6
5
  const e = n.BalanceChange;
7
6
  typeof document < "u" ? document.dispatchEvent(new Event(e)) : process?.emit("message", e, void 0);
8
7
  };
9
8
  export {
10
- i as balanceChangedHandler
9
+ p as balanceChangedHandler
11
10
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const A=require("../../utils/caseInsensitive.utils.cjs"),l=require("../../utils/cacheFunctions.cjs"),k=require("async-mutex"),y=require("ethers"),I=require("../../utils/erc20tokenFunctions.cjs"),g=require("../../../data-structures/TokenDBs/PrivateTokensDB.cjs"),m=require("../../../constants/vite.constants.cjs"),h=new k.Mutex,f=(e,c,n)=>(e.forEach(t=>{t.inHinkalAddress===n&&c.push(t)}),c),v=(e,c=!1)=>{const{userKeys:n}=e,t=e.getCurrentChainId();c&&l.resetInHinkalAddressesCache(e,t,n.getShieldedPublicKey());const{approvals:o}=e,r=l.getInHinkalAddressesCache(e,t,n.getShieldedPublicKey());let i=[];return o.forEach((d,u)=>{const s=r[u];let a;s?a=BigInt(s):(a=n.getInHinkalAddress(u),r[u]=a.toString()),i=f(d.map(p=>({...p,interactionAddress:u})),i,a)}),l.setInHinkalAddressesCache(r,e,t,n.getShieldedPublicKey()),i},x=(e,c,n)=>v(e,n).filter(o=>A.caseInsensitiveEqual(o.tokenAddress,c)).sort((o,r)=>o.amount===r.amount?0:o.amount>r.amount?-1:1),E=async(e,c,n)=>{const t=e.getCurrentChainId(),o=await e.getEthereumAddress();let r=[];const i=new Map;return await h.runExclusive(async()=>{const d=v(e,c);n&&m.isExtension&&await g.privateTokensDB.fetchAndUpdatePrivateTokens(d.map(s=>s.tokenAddress),t,o),r=(m.isExtension?await g.privateTokensDB.getPrivateTokens(t,o):I.getErc20TokensForChain(t)).map(s=>({token:s,balance:d.reduce((a,p)=>A.caseInsensitiveEqual(s.erc20TokenAddress,p.tokenAddress)?a+p.amount:a,0n),timestamp:"0",nfts:[]})),r.forEach(s=>{i.set(s.token.erc20TokenAddress.toLowerCase(),s)})}),i},T=(e,c,n)=>{const{userKeys:t,approvals:o}=e,r=y.ethers.utils.getAddress(c),i=o.get(r)??[],d=t.getInHinkalAddress(r);return i.reduce((s,a)=>A.caseInsensitiveEqual(a.tokenAddress,n)&&a.inHinkalAddress===d?s+a.amount:s,0n)};exports.getApprovedBalance=E;exports.getApprovedUtxos=v;exports.getApprovedUtxosForToken=x;exports.getMyApprovalAmountForInteraction=T;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const A=require("../../utils/caseInsensitive.utils.cjs"),l=require("../../utils/cacheFunctions.cjs"),k=require("async-mutex"),y=require("ethers"),I=require("../../utils/erc20tokenFunctions.cjs"),g=require("../../../data-structures/TokenDBs/PrivateTokensDB.cjs"),m=require("../../../constants/vite.constants.cjs"),h=new k.Mutex,f=(e,c,n)=>(e.forEach(t=>{t.inHinkalAddress===n&&c.push(t)}),c),v=(e,c=!1)=>{const{userKeys:n}=e,t=e.getCurrentChainId();c&&l.resetInHinkalAddressesCache(e,t,n.getShieldedPublicKey());const{approvals:o}=e,r=l.getInHinkalAddressesCache(e,t,n.getShieldedPublicKey());let i=[];return o.forEach((d,u)=>{const s=r[u];let a;s?a=BigInt(s):(a=n.getInHinkalAddress(u),r[u]=a.toString()),i=f(d.map(p=>({...p,interactionAddress:u})),i,a)}),l.setInHinkalAddressesCache(r,e,t,n.getShieldedPublicKey()),i},x=(e,c,n)=>v(e,n).filter(o=>A.caseInsensitiveEqual(o.tokenAddress,c)).sort((o,r)=>o.amount===r.amount?0:o.amount>r.amount?-1:1),E=async(e,c,n)=>{const t=e.getCurrentChainId(),o=await e.getEthereumAddress();let r=[];const i=new Map;return await h.runExclusive(async()=>{const d=v(e,c);n&&m.isExtension&&await g.privateTokensDB.fetchAndUpdatePrivateTokens(d.map(s=>s.tokenAddress),t,o),r=(m.isExtension?await g.privateTokensDB.getPrivateTokens(t,o):I.getErc20TokensForChain(t)).map(s=>({token:s,balance:d.reduce((a,p)=>A.caseInsensitiveEqual(s.erc20TokenAddress,p.tokenAddress)?a+p.amount:a,0n),timestamp:"0",nfts:[]})),r.forEach(s=>{i.set(s.token.erc20TokenAddress.toLowerCase(),s)})}),i},T=(e,c,n)=>{const{userKeys:t,approvals:o}=e,r=y.ethers.getAddress(c),i=o.get(r)??[],d=t.getInHinkalAddress(r);return i.reduce((s,a)=>A.caseInsensitiveEqual(a.tokenAddress,n)&&a.inHinkalAddress===d?s+a.amount:s,0n)};exports.getApprovedBalance=E;exports.getApprovedUtxos=v;exports.getApprovedUtxosForToken=x;exports.getMyApprovalAmountForInteraction=T;
@@ -43,7 +43,7 @@ const C = new h(), H = (e, d, r) => (e.forEach((t) => {
43
43
  });
44
44
  }), i;
45
45
  }, U = (e, d, r) => {
46
- const { userKeys: t, approvals: o } = e, n = y.utils.getAddress(d), i = o.get(n) ?? [], c = t.getInHinkalAddress(n);
46
+ const { userKeys: t, approvals: o } = e, n = y.getAddress(d), i = o.get(n) ?? [], c = t.getInHinkalAddress(n);
47
47
  return i.reduce((s, a) => u(a.tokenAddress, r) && a.inHinkalAddress === c ? s + a.amount : s, 0n);
48
48
  };
49
49
  export {
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("ethers"),g=require("../../../data-structures/utxo/Utxo.cjs"),x=require("../../../data-structures/crypto-keys/keys.cjs"),A=require("../../utils/encryptInputForEnclave.cjs"),k=require("../../../constants/chains.constants.cjs"),U=require("../../utils/solanaMint.utils.cjs"),f=require("@solana/web3.js"),E=s=>{if(!s)return;const t=a.ethers.utils.arrayify(s);if(t.length!==32)return;const r=new f.PublicKey(t),n=r.toBase58(),{compressedAddress:i}=U.formatMintAddress(r);return{mintBase58:n,compressedAddress:i}},P=async(s,t,r)=>{const n=r.getShieldedPrivateKey(),{privateKey:i,publicKey:d}=x.UserKeys.getEncryptionKeyPair(n),u=a.ethers.utils.solidityPack(["uint256","uint256","uint256"],[d,i,n]),l=a.ethers.utils.arrayify(u),{keyCiphertext:y,inputCiphertext:p}=await A.makeEnclaveHandshakeAndEncryptUint8Array(l),{utxos:m,lastOutput:v,encryptedOutputs:h}=await s.getAPI().decryptUtxoEnclaveCall(t,y,p);return{utxos:m.map(c=>{let e=c;if(k.isSolanaLike(t)){const o=E(c.mintAddress);if(!o)throw new Error("Invalid mint address");e={...e,erc20TokenAddress:o.compressedAddress,mintAddress:o.mintBase58}}return new g.Utxo({...e,amount:BigInt(e.amount),randomization:e.randomization?BigInt(e.randomization):void 0,shieldedPrivateKey:n})}),encryptedOutputs:h,lastOutput:v}};exports.getInputUtxosEnclave=P;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("ethers"),h=require("../../../data-structures/utxo/Utxo.cjs"),x=require("../../../data-structures/crypto-keys/keys.cjs"),A=require("../../utils/encryptInputForEnclave.cjs"),k=require("../../../constants/chains.constants.cjs"),U=require("../../utils/solanaMint.utils.cjs"),E=require("@solana/web3.js"),P=s=>{if(!s)return;const t=a.ethers.getBytes(s);if(t.length!==32)return;const r=new E.PublicKey(t),n=r.toBase58(),{compressedAddress:i}=U.formatMintAddress(r);return{mintBase58:n,compressedAddress:i}},q=async(s,t,r)=>{const n=r.getShieldedPrivateKey(),{privateKey:i,publicKey:d}=x.UserKeys.getEncryptionKeyPair(n),u=a.ethers.solidityPacked(["uint256","uint256","uint256"],[d,i,n]),l=a.ethers.getBytes(u),{keyCiphertext:y,inputCiphertext:p}=await A.makeEnclaveHandshakeAndEncryptUint8Array(l),{utxos:m,lastOutput:v,encryptedOutputs:g}=await s.getAPI().decryptUtxoEnclaveCall(t,y,p);return{utxos:m.map(c=>{let e=c;if(k.isSolanaLike(t)){const o=P(c.mintAddress);if(!o)throw new Error("Invalid mint address");e={...e,erc20TokenAddress:o.compressedAddress,mintAddress:o.mintBase58}}return new h.Utxo({...e,amount:BigInt(e.amount),randomization:e.randomization?BigInt(e.randomization):void 0,shieldedPrivateKey:n})}),encryptedOutputs:g,lastOutput:v}};exports.getInputUtxosEnclave=q;
@@ -1,41 +1,41 @@
1
1
  import { ethers as a } from "ethers";
2
2
  import { Utxo as A } from "../../../data-structures/utxo/Utxo.mjs";
3
- import { UserKeys as x } from "../../../data-structures/crypto-keys/keys.mjs";
4
- import { makeEnclaveHandshakeAndEncryptUint8Array as h } from "../../utils/encryptInputForEnclave.mjs";
5
- import { isSolanaLike as k } from "../../../constants/chains.constants.mjs";
6
- import { formatMintAddress as g } from "../../utils/solanaMint.utils.mjs";
7
- import { PublicKey as K } from "@solana/web3.js";
8
- const P = (n) => {
9
- if (!n)
3
+ import { UserKeys as g } from "../../../data-structures/crypto-keys/keys.mjs";
4
+ import { makeEnclaveHandshakeAndEncryptUint8Array as x } from "../../utils/encryptInputForEnclave.mjs";
5
+ import { isSolanaLike as h } from "../../../constants/chains.constants.mjs";
6
+ import { formatMintAddress as k } from "../../utils/solanaMint.utils.mjs";
7
+ import { PublicKey as B } from "@solana/web3.js";
8
+ const K = (r) => {
9
+ if (!r)
10
10
  return;
11
- const e = a.utils.arrayify(n);
11
+ const e = a.getBytes(r);
12
12
  if (e.length !== 32)
13
13
  return;
14
- const i = new K(e), r = i.toBase58(), { compressedAddress: o } = g(i);
15
- return { mintBase58: r, compressedAddress: o };
16
- }, S = async (n, e, i) => {
17
- const r = i.getShieldedPrivateKey(), { privateKey: o, publicKey: c } = x.getEncryptionKeyPair(r), m = a.utils.solidityPack(
14
+ const o = new B(e), n = o.toBase58(), { compressedAddress: s } = k(o);
15
+ return { mintBase58: n, compressedAddress: s };
16
+ }, S = async (r, e, o) => {
17
+ const n = o.getShieldedPrivateKey(), { privateKey: s, publicKey: c } = g.getEncryptionKeyPair(n), m = a.solidityPacked(
18
18
  ["uint256", "uint256", "uint256"],
19
- [c, o, r]
20
- ), u = a.utils.arrayify(m), { keyCiphertext: l, inputCiphertext: p } = await h(u), { utxos: y, lastOutput: f, encryptedOutputs: v } = await n.getAPI().decryptUtxoEnclaveCall(e, l, p);
19
+ [c, s, n]
20
+ ), p = a.getBytes(m), { keyCiphertext: u, inputCiphertext: l } = await x(p), { utxos: y, lastOutput: f, encryptedOutputs: v } = await r.getAPI().decryptUtxoEnclaveCall(e, u, l);
21
21
  return {
22
22
  utxos: y.map((d) => {
23
23
  let t = d;
24
- if (k(e)) {
25
- const s = P(d.mintAddress);
26
- if (!s)
24
+ if (h(e)) {
25
+ const i = K(d.mintAddress);
26
+ if (!i)
27
27
  throw new Error("Invalid mint address");
28
28
  t = {
29
29
  ...t,
30
- erc20TokenAddress: s.compressedAddress,
31
- mintAddress: s.mintBase58
30
+ erc20TokenAddress: i.compressedAddress,
31
+ mintAddress: i.mintBase58
32
32
  };
33
33
  }
34
34
  return new A({
35
35
  ...t,
36
36
  amount: BigInt(t.amount),
37
37
  randomization: t.randomization ? BigInt(t.randomization) : void 0,
38
- shieldedPrivateKey: r
38
+ shieldedPrivateKey: n
39
39
  });
40
40
  }),
41
41
  encryptedOutputs: v,
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../../../constants/token-data/index.cjs");const c=require("../../../constants/chains.constants.cjs");require("../../../constants/contracts.constants.cjs");require("../../../constants/kyc.constants.cjs");require("../../../constants/server.constants.cjs");require("../../../constants/vite.constants.cjs");require("../../../constants/coingecko.constants.cjs");require("../../../constants/reorg-depths.constants.cjs");require("../../../constants/addresses.constants.cjs");require("../../../constants/token.limits.constants.cjs");require("../../../constants/presale.constants.cjs");require("../../../constants/activity.constants.cjs");require("../../../constants/tasks.constants.cjs");require("../../../constants/events.constants.cjs");const a=require("ethers");require("idb-keyval");const q=require("../../utils/create-provider.cjs");require("../../../error-handling/error-codes.constants.cjs");require("../../utils/convertIntegrationProviderToExternalActionId.cjs");require("../../../types/circom-data.types.cjs");require("../../../types/transactions.types.cjs");require("../../../types/activities.types.cjs");require("circomlibjs-hinkal-fork");require("../../../data-structures/crypto-keys/keys.cjs");require("../../../data-structures/http/HttpClient.cjs");require("axios");require("../../../API/getServerURL.cjs");require("libsodium-wrappers");require("process");require("buffer");require("../../../constants/save-depths.cjs");require("../../utils/mutexes.utils.cjs");require("@coral-xyz/anchor");require("@solana/web3.js");require("@solana/spl-token");require("../../utils/userAgent.cjs");require("multiformats");require("../../../API/tenderly.api.cjs");const l=(o,n)=>{const u=new a.ethers.utils.Interface(n);try{const e=u.parseLog(o);return{name:e.name,args:e.args}}catch{return console.warn("Could not decode log"),null}};async function d(o,n,u,e){try{const t=c.networkRegistry[o].fetchRpcUrl;if(!t)throw new Error("RPC URL not found for the specified chain ID");const r=await q.createCustomRpcProvider(t).getTransactionReceipt(n);if(!r)throw new Error("Transaction receipt not found");if(r.status!==1)throw new Error("Transaction failed");const s=r.logs.filter(i=>i.address.toLowerCase()===u.toLowerCase()).map(i=>l(i,e)).filter(i=>i!==null);return{transactionHash:r.transactionHash,from:r.from,to:r.to,blockNumber:r.blockNumber,events:s}}catch(t){throw console.error("Error retrieving transaction events:",t),t}}exports.getTransactionLogEvents=d;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../../../constants/token-data/index.cjs");const c=require("../../../constants/chains.constants.cjs");require("../../../constants/contracts.constants.cjs");require("../../../constants/kyc.constants.cjs");require("../../../constants/server.constants.cjs");require("../../../constants/vite.constants.cjs");require("../../../constants/coingecko.constants.cjs");require("../../../constants/reorg-depths.constants.cjs");require("../../../constants/addresses.constants.cjs");require("../../../constants/token.limits.constants.cjs");require("../../../constants/presale.constants.cjs");require("../../../constants/activity.constants.cjs");require("../../../constants/tasks.constants.cjs");require("../../../constants/events.constants.cjs");const a=require("ethers");require("idb-keyval");const q=require("../../utils/create-provider.cjs");require("../../../error-handling/error-codes.constants.cjs");require("../../utils/convertIntegrationProviderToExternalActionId.cjs");require("../../../types/circom-data.types.cjs");require("../../../types/activities.types.cjs");require("circomlibjs-hinkal-fork");require("../../../data-structures/crypto-keys/keys.cjs");require("../../../data-structures/http/HttpClient.cjs");require("axios");require("../../../API/getServerURL.cjs");require("libsodium-wrappers");require("process");require("buffer");require("../../../constants/save-depths.cjs");require("../../utils/mutexes.utils.cjs");require("@coral-xyz/anchor");require("@solana/web3.js");require("@solana/spl-token");require("../../utils/userAgent.cjs");require("multiformats");require("../../../API/tenderly.api.cjs");const l=(i,n)=>{const u=new a.ethers.Interface(n);try{const e=u.parseLog(i);if(!e)throw new Error("Could not parse log");return{name:e.name,args:e.args}}catch{return console.warn("Could not decode log"),null}};async function d(i,n,u,e){try{const t=c.networkRegistry[i].fetchRpcUrl;if(!t)throw new Error("RPC URL not found for the specified chain ID");const r=await q.createCustomRpcProvider(t).getTransactionReceipt(n);if(!r)throw new Error("Transaction receipt not found");if(r.status!==1)throw new Error("Transaction failed");const s=r.logs.filter(o=>o.address.toLowerCase()===u.toLowerCase()).map(o=>l(o,e)).filter(o=>o!==null);return{transactionHash:r.hash,from:r.from,to:r.to,blockNumber:r.blockNumber,events:s}}catch(t){throw console.error("Error retrieving transaction events:",t),t}}exports.getTransactionLogEvents=d;
@@ -1,13 +1,13 @@
1
1
  import { ethers } from 'ethers';
2
- type ABIType = ConstructorParameters<typeof ethers.utils.Interface>[0];
2
+ type ABIType = ConstructorParameters<typeof ethers.Interface>[0];
3
3
  export declare function getTransactionLogEvents(chainId: number, txHash: string, contractAddress: string, contractABI: ABIType): Promise<{
4
4
  transactionHash: string;
5
5
  from: string;
6
- to: string;
6
+ to: string | null;
7
7
  blockNumber: number;
8
8
  events: {
9
9
  name: string;
10
- args: ethers.utils.Result;
10
+ args: ethers.Result;
11
11
  }[];
12
12
  }>;
13
13
  export {};
@@ -18,7 +18,6 @@ import { createCustomRpcProvider as c } from "../../utils/create-provider.mjs";
18
18
  import "../../../error-handling/error-codes.constants.mjs";
19
19
  import "../../utils/convertIntegrationProviderToExternalActionId.mjs";
20
20
  import "../../../types/circom-data.types.mjs";
21
- import "../../../types/transactions.types.mjs";
22
21
  import "../../../types/activities.types.mjs";
23
22
  import "circomlibjs-hinkal-fork";
24
23
  import "../../../data-structures/crypto-keys/keys.mjs";
@@ -37,9 +36,11 @@ import "../../utils/userAgent.mjs";
37
36
  import "multiformats";
38
37
  import "../../../API/tenderly.api.mjs";
39
38
  const f = (e, n) => {
40
- const p = new a.utils.Interface(n);
39
+ const p = new a.Interface(n);
41
40
  try {
42
41
  const o = p.parseLog(e);
42
+ if (!o)
43
+ throw new Error("Could not parse log");
43
44
  return {
44
45
  name: o.name,
45
46
  args: o.args
@@ -48,7 +49,7 @@ const f = (e, n) => {
48
49
  return console.warn("Could not decode log"), null;
49
50
  }
50
51
  };
51
- async function Z(e, n, p, o) {
52
+ async function Y(e, n, p, o) {
52
53
  try {
53
54
  const t = s[e].fetchRpcUrl;
54
55
  if (!t)
@@ -60,7 +61,7 @@ async function Z(e, n, p, o) {
60
61
  throw new Error("Transaction failed");
61
62
  const m = r.logs.filter((i) => i.address.toLowerCase() === p.toLowerCase()).map((i) => f(i, o)).filter((i) => i !== null);
62
63
  return {
63
- transactionHash: r.transactionHash,
64
+ transactionHash: r.hash,
64
65
  from: r.from,
65
66
  to: r.to,
66
67
  blockNumber: r.blockNumber,
@@ -71,5 +72,5 @@ async function Z(e, n, p, o) {
71
72
  }
72
73
  }
73
74
  export {
74
- Z as getTransactionLogEvents
75
+ Y as getTransactionLogEvents
75
76
  };
@@ -1,6 +1,5 @@
1
1
  export * from './getInputUtxoAndBalance';
2
2
  export * from './getShieldedBalance';
3
- export * from './web3RetrieveEvents';
4
3
  export * from './balanceChangedHandler';
5
4
  export * from './balanceChangedCustomHandler';
6
5
  export * from './getApprovedBalance';
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("ethers");require("idb-keyval");require("../../constants/chains.constants.cjs");require("@solana/web3.js");require("../../data-structures/http/HttpClient.cjs");require("../../constants/vite.constants.cjs");require("../../constants/token-data/index.cjs");require("../../error-handling/error-codes.constants.cjs");require("../utils/convertIntegrationProviderToExternalActionId.cjs");require("../../types/circom-data.types.cjs");require("../../types/transactions.types.cjs");require("../../types/activities.types.cjs");require("circomlibjs-hinkal-fork");require("../../data-structures/crypto-keys/keys.cjs");require("../../constants/server.constants.cjs");require("axios");require("../../API/getServerURL.cjs");require("libsodium-wrappers");require("process");require("buffer");require("../../constants/save-depths.cjs");require("../../constants/reorg-depths.constants.cjs");require("../utils/mutexes.utils.cjs");require("@coral-xyz/anchor");require("@solana/spl-token");const r=require("../utils/bytes32.utils.cjs");require("../../constants/contracts.constants.cjs");require("../../constants/kyc.constants.cjs");require("../../constants/coingecko.constants.cjs");require("../../constants/addresses.constants.cjs");require("../../constants/token.limits.constants.cjs");require("../../constants/presale.constants.cjs");require("../../constants/activity.constants.cjs");require("../../constants/tasks.constants.cjs");require("../../constants/events.constants.cjs");require("../utils/userAgent.cjs");require("multiformats");require("../../API/tenderly.api.cjs");const n=async(i,u)=>{const e=await i.account.merkle.fetch(u,"confirmed"),q=Number(r.convertBytes32ToBigInt(e.rootIndex)),t=e.roots.at(q-1);return o.ethers.BigNumber.from(r.convertBytes32ToBigInt(t).toString())};exports.fetchSolanaMerkleTreeRootHash=n;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("idb-keyval");require("../../constants/chains.constants.cjs");require("@solana/web3.js");require("../../data-structures/http/HttpClient.cjs");require("../../constants/vite.constants.cjs");require("ethers");require("../../constants/token-data/index.cjs");require("../../error-handling/error-codes.constants.cjs");require("../utils/convertIntegrationProviderToExternalActionId.cjs");require("../../types/circom-data.types.cjs");require("../../types/activities.types.cjs");require("circomlibjs-hinkal-fork");require("../../data-structures/crypto-keys/keys.cjs");require("../../constants/server.constants.cjs");require("axios");require("../../API/getServerURL.cjs");require("libsodium-wrappers");require("process");require("buffer");require("../../constants/save-depths.cjs");require("../../constants/reorg-depths.constants.cjs");require("../utils/mutexes.utils.cjs");require("@coral-xyz/anchor");require("@solana/spl-token");const r=require("../utils/bytes32.utils.cjs");require("../../constants/contracts.constants.cjs");require("../../constants/kyc.constants.cjs");require("../../constants/coingecko.constants.cjs");require("../../constants/addresses.constants.cjs");require("../../constants/token.limits.constants.cjs");require("../../constants/presale.constants.cjs");require("../../constants/activity.constants.cjs");require("../../constants/tasks.constants.cjs");require("../../constants/events.constants.cjs");require("../utils/userAgent.cjs");require("multiformats");require("../../API/tenderly.api.cjs");const o=async(i,u)=>{const e=await i.account.merkle.fetch(u,"confirmed"),q=Number(r.convertBytes32ToBigInt(e.rootIndex)),t=e.roots.at(q-1);return r.convertBytes32ToBigInt(t)};exports.fetchSolanaMerkleTreeRootHash=o;
@@ -1,4 +1,3 @@
1
1
  import { Program } from '@coral-xyz/anchor';
2
2
  import { PublicKey } from '@solana/web3.js';
3
- import { ethers } from 'ethers';
4
- export declare const fetchSolanaMerkleTreeRootHash: (hinkalProgram: Program, merkleTreePublicKey: PublicKey) => Promise<ethers.BigNumber>;
3
+ export declare const fetchSolanaMerkleTreeRootHash: (hinkalProgram: Program, merkleTreePublicKey: PublicKey) => Promise<bigint>;
@@ -1,14 +1,13 @@
1
- import { ethers as e } from "ethers";
2
1
  import "idb-keyval";
3
2
  import "../../constants/chains.constants.mjs";
4
3
  import "@solana/web3.js";
5
4
  import "../../data-structures/http/HttpClient.mjs";
6
5
  import "../../constants/vite.constants.mjs";
6
+ import "ethers";
7
7
  import "../../constants/token-data/index.mjs";
8
8
  import "../../error-handling/error-codes.constants.mjs";
9
9
  import "../utils/convertIntegrationProviderToExternalActionId.mjs";
10
10
  import "../../types/circom-data.types.mjs";
11
- import "../../types/transactions.types.mjs";
12
11
  import "../../types/activities.types.mjs";
13
12
  import "circomlibjs-hinkal-fork";
14
13
  import "../../data-structures/crypto-keys/keys.mjs";
@@ -36,10 +35,10 @@ import "../../constants/events.constants.mjs";
36
35
  import "../utils/userAgent.mjs";
37
36
  import "multiformats";
38
37
  import "../../API/tenderly.api.mjs";
39
- const Q = async (r, m) => {
38
+ const O = async (r, m) => {
40
39
  const o = await r.account.merkle.fetch(m, "confirmed"), i = Number(t(o.rootIndex)), p = o.roots.at(i - 1);
41
- return e.BigNumber.from(t(p).toString());
40
+ return t(p);
42
41
  };
43
42
  export {
44
- Q as fetchSolanaMerkleTreeRootHash
43
+ O as fetchSolanaMerkleTreeRootHash
45
44
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../../../types/circom-data.types.cjs");const r=require("../../../types/ethereum-network.types.cjs");require("../../../types/transactions.types.cjs");require("../../../types/activities.types.cjs");const a=require("../../../constants/chains.constants.cjs"),l=require("../../pre-transaction/solana.cjs"),g=require("@solana/web3.js"),i=async e=>(await e.getContractWithFetcher(r.ContractType.AccessTokenContract).functions.hasToken(e.userKeys.getAccessKey()))[0],k=async e=>{const{hinkalIdl:c,originalDeployer:n}=a.networkRegistry[e.getCurrentChainId()].contractData;if(!c||!n)throw new Error("missing hinkal data");const o=new g.PublicKey(n),t=e.getSolanaProgram(c),s=l.getAccessTokenAccountPublicKey(BigInt(e.userKeys.getAccessKey()),t.programId,o);if(!await t.provider.connection.getAccountInfo(s))return!1;const{isAdded:u}=await t.account.accesskeyAccount.fetch(s);return u},y=async e=>a.isSolanaLike(e.getCurrentChainId())?k(e):i(e),T=async(e,c,n)=>{const o=e.getContractWithSigner(r.ContractType.AccessTokenContract),t={value:0n,...n&&{type:0}};return await o.addToken(c,t)};exports.checkHinkalAccessToken=y;exports.checkHinkalAccessTokenEVM=i;exports.checkHinkalAccessTokenSolana=k;exports.mintAccessToken=T;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("../../../types/circom-data.types.cjs");const r=require("../../../types/ethereum-network.types.cjs");require("../../../types/activities.types.cjs");const a=require("../../../constants/chains.constants.cjs"),l=require("../../pre-transaction/solana.cjs"),g=require("@solana/web3.js"),i=async e=>(await e.getContractWithFetcher(r.ContractType.AccessTokenContract).hasToken(e.userKeys.getAccessKey()))[0],k=async e=>{const{hinkalIdl:c,originalDeployer:n}=a.networkRegistry[e.getCurrentChainId()].contractData;if(!c||!n)throw new Error("missing hinkal data");const o=new g.PublicKey(n),t=e.getSolanaProgram(c),s=l.getAccessTokenAccountPublicKey(BigInt(e.userKeys.getAccessKey()),t.programId,o);if(!await t.provider.connection.getAccountInfo(s))return!1;const{isAdded:u}=await t.account.accesskeyAccount.fetch(s);return u},y=async e=>a.isSolanaLike(e.getCurrentChainId())?k(e):i(e),T=async(e,c,n)=>{const o=e.getContractWithSigner(r.ContractType.AccessTokenContract),t={value:0n,...n&&{type:0}};return await o.addToken(c,t)};exports.checkHinkalAccessToken=y;exports.checkHinkalAccessTokenEVM=i;exports.checkHinkalAccessTokenSolana=k;exports.mintAccessToken=T;
@@ -1,15 +1,14 @@
1
1
  import "../../../types/circom-data.types.mjs";
2
2
  import { ContractType as r } from "../../../types/ethereum-network.types.mjs";
3
- import "../../../types/transactions.types.mjs";
4
3
  import "../../../types/activities.types.mjs";
5
4
  import { networkRegistry as i, isSolanaLike as g } from "../../../constants/chains.constants.mjs";
6
5
  import { getAccessTokenAccountPublicKey as k } from "../../pre-transaction/solana.mjs";
7
6
  import { PublicKey as u } from "@solana/web3.js";
8
- const y = async (c) => (await c.getContractWithFetcher(r.AccessTokenContract).functions.hasToken(c.userKeys.getAccessKey()))[0], m = async (c) => {
9
- const { hinkalIdl: t, originalDeployer: e } = i[c.getCurrentChainId()].contractData;
10
- if (!t || !e)
7
+ const y = async (c) => (await c.getContractWithFetcher(r.AccessTokenContract).hasToken(c.userKeys.getAccessKey()))[0], l = async (c) => {
8
+ const { hinkalIdl: e, originalDeployer: t } = i[c.getCurrentChainId()].contractData;
9
+ if (!e || !t)
11
10
  throw new Error("missing hinkal data");
12
- const o = new u(e), n = c.getSolanaProgram(t), s = k(
11
+ const o = new u(t), n = c.getSolanaProgram(e), s = k(
13
12
  BigInt(c.userKeys.getAccessKey()),
14
13
  n.programId,
15
14
  o
@@ -18,16 +17,16 @@ const y = async (c) => (await c.getContractWithFetcher(r.AccessTokenContract).fu
18
17
  return !1;
19
18
  const { isAdded: a } = await n.account.accesskeyAccount.fetch(s);
20
19
  return a;
21
- }, w = async (c) => g(c.getCurrentChainId()) ? m(c) : y(c), I = async (c, t, e) => {
20
+ }, C = async (c) => g(c.getCurrentChainId()) ? l(c) : y(c), w = async (c, e, t) => {
22
21
  const o = c.getContractWithSigner(r.AccessTokenContract), n = {
23
22
  value: 0n,
24
- ...e && { type: 0 }
23
+ ...t && { type: 0 }
25
24
  };
26
- return await o.addToken(t, n);
25
+ return await o.addToken(e, n);
27
26
  };
28
27
  export {
29
- w as checkHinkalAccessToken,
28
+ C as checkHinkalAccessToken,
30
29
  y as checkHinkalAccessTokenEVM,
31
- m as checkHinkalAccessTokenSolana,
32
- I as mintAccessToken
30
+ l as checkHinkalAccessTokenSolana,
31
+ w as mintAccessToken
33
32
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("ethers"),u=require("../../../constants/chains.constants.cjs"),A=require("../../../constants/protocol.constants.cjs"),d=require("../../../types/token.types.cjs"),l=require("../../../types/ethereum-network.types.cjs"),b=require("./recoverTransactionFromError.cjs"),x=async(e,n,s)=>BigInt(await s.allowance(await s.signer.getAddress(),n.address))>=e,F=async(e,n,s,r)=>{if(u.getNonLocalhostChainId(e.getCurrentChainId())!==u.chainIds.ethMainnet||s.symbol.toLowerCase()!=="usdt"||BigInt(await r.allowance(await r.signer.getAddress(),n.address))===0n)return;const o=await r.approve(n.address,0n);o&&"hash"in o&&await e.waitForTransaction(o.hash)},q=async(e,n,s,r)=>{const c=e.getContractWithSigner(l.ContractType.ERC20Contract,r.erc20TokenAddress),o=r.approvalType??d.ApprovalType.Classic;if(o===d.ApprovalType.Classic||!e.isPermitterAvailable()){if(await x(s,n,c))return;await F(e,n,r,c);const f=e.getCurrentChainId()===u.chainIds.base?2:1;try{const i=await c.approve(n.address,s);i&&"hash"in i&&await e.waitForTransaction(i.hash,f)}catch(i){if(!i?.transactionHash)throw i;const{provider:I}=c;if(!await b.recoverTransactionFromError(I,i.transactionHash,f))throw i}return}const p=await e.getEthereumAddress(),C=e.getContract(l.ContractType.PermitterContract),g=await e.getContractWithFetcher(l.ContractType.ContractWithNonces,r.erc20TokenAddress).nonces(p),y=BigInt(Date.now()+A.permitSignatureValidFor)/1000n,t={owner:p,holder:p,spender:C.address,value:s,nonce:g,deadline:y,expiry:y,allowed:!0},{v:w,r:h,s:m}=a.ethers.utils.splitSignature(await e.signTypedData({name:await c.name(),chainId:e.getCurrentChainId(),version:"1",verifyingContract:r.erc20TokenAddress},{Permit:o===d.ApprovalType.ERC20Permit?[{name:"owner",type:"address"},{name:"spender",type:"address"},{name:"value",type:"uint256"},{name:"nonce",type:"uint256"},{name:"deadline",type:"uint256"}]:[{name:"holder",type:"address"},{name:"spender",type:"address"},{name:"nonce",type:"uint256"},{name:"expiry",type:"uint256"},{name:"allowed",type:"bool"}]},t));if(o===d.ApprovalType.ERC20Permit){const v=new a.ethers.utils.Interface(["function permit(address owner,address spender,uint256 value,uint256 deadline,uint8 v,bytes32 r,bytes32 s) external"]);return a.ethers.utils.arrayify(v.encodeFunctionData("permit",[t.owner,t.spender,t.value,t.deadline,w,a.ethers.utils.arrayify(h),a.ethers.utils.arrayify(m)])).slice(4)}const T=new a.ethers.utils.Interface(["function permit(address holder,address spender,uint256 nonce,uint256 expiry,bool allowed,uint8 v,bytes32 r,bytes32 s) external"]);return a.ethers.utils.arrayify(T.encodeFunctionData("permit",[t.holder,t.spender,t.nonce,t.expiry,t.allowed,w,a.ethers.utils.arrayify(h),a.ethers.utils.arrayify(m)])).slice(4)};exports.approveTokenToHinkal=q;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("ethers"),y=require("../../../constants/chains.constants.cjs"),A=require("../../../constants/protocol.constants.cjs"),d=require("../../../types/token.types.cjs"),l=require("../../../types/ethereum-network.types.cjs"),F=require("./recoverTransactionFromError.cjs"),u=require("../../utils/getSignerFromContract.cjs"),b=async(e,a,o)=>{const t=u.getSignerFromContract(o);return await o.allowance(await t.getAddress(),a.target)>=e},x=async(e,a,o,t)=>{if(y.getNonLocalhostChainId(e.getCurrentChainId())!==y.chainIds.ethMainnet||o.symbol.toLowerCase()!=="usdt"||BigInt(await t.allowance(await u.getSignerFromContract(t).getAddress(),a.target))===0n)return;const c=await t.approve(a.target,0n);c&&"hash"in c&&await e.waitForTransaction(c.hash)},S=async(e,a,o,t)=>{const i=e.getContractWithSigner(l.ContractType.ERC20Contract,t.erc20TokenAddress),c=t.approvalType??d.ApprovalType.Classic;if(c===d.ApprovalType.Classic||!e.isPermitterAvailable()){if(await b(o,a,i))return;await x(e,a,t,i);const v=e.getCurrentChainId()===y.chainIds.base?2:1;try{const s=await i.approve(a.target,o);s&&"hash"in s&&await e.waitForTransaction(s.hash,v)}catch(s){if(!s?.transactionHash||!await F.recoverTransactionFromError(u.getProviderFromContract(i),s.transactionHash,v))throw s}return}const p=await e.getEthereumAddress(),f=e.getContract(l.ContractType.PermitterContract),T=await e.getContractWithFetcher(l.ContractType.ContractWithNonces,t.erc20TokenAddress).nonces(p),g=BigInt(Date.now()+A.permitSignatureValidFor)/1000n,r={owner:p,holder:p,spender:f.target,value:o,nonce:T,deadline:g,expiry:g,allowed:!0},{v:w,r:m,s:C}=n.ethers.Signature.from(await e.signTypedData({name:await i.name(),chainId:e.getCurrentChainId(),version:"1",verifyingContract:t.erc20TokenAddress},{Permit:c===d.ApprovalType.ERC20Permit?[{name:"owner",type:"address"},{name:"spender",type:"address"},{name:"value",type:"uint256"},{name:"nonce",type:"uint256"},{name:"deadline",type:"uint256"}]:[{name:"holder",type:"address"},{name:"spender",type:"address"},{name:"nonce",type:"uint256"},{name:"expiry",type:"uint256"},{name:"allowed",type:"bool"}]},r));if(c===d.ApprovalType.ERC20Permit){const h=new n.ethers.Interface(["function permit(address owner,address spender,uint256 value,uint256 deadline,uint8 v,bytes32 r,bytes32 s) external"]);return n.ethers.getBytesCopy(h.encodeFunctionData("permit",[r.owner,r.spender,r.value,r.deadline,w,n.ethers.getBytesCopy(m),n.ethers.getBytesCopy(C)])).slice(4)}const I=new n.ethers.Interface(["function permit(address holder,address spender,uint256 nonce,uint256 expiry,bool allowed,uint8 v,bytes32 r,bytes32 s) external"]);return n.ethers.getBytesCopy(I.encodeFunctionData("permit",[r.holder,r.spender,r.nonce,r.expiry,r.allowed,w,n.ethers.getBytesCopy(m),n.ethers.getBytesCopy(C)])).slice(4)};exports.approveTokenToHinkal=S;
@@ -1,60 +1,63 @@
1
- import { ethers as a } from "ethers";
2
- import { chainIds as C, getNonLocalhostChainId as x } from "../../../constants/chains.constants.mjs";
1
+ import { ethers as n } from "ethers";
2
+ import { chainIds as f, getNonLocalhostChainId as x } from "../../../constants/chains.constants.mjs";
3
3
  import { permitSignatureValidFor as A } from "../../../constants/protocol.constants.mjs";
4
- import { ApprovalType as c } from "../../../types/token.types.mjs";
4
+ import { ApprovalType as d } from "../../../types/token.types.mjs";
5
5
  import { ContractType as l } from "../../../types/ethereum-network.types.mjs";
6
6
  import { recoverTransactionFromError as b } from "./recoverTransactionFromError.mjs";
7
- const F = async (e, n, s) => BigInt(
8
- await s.allowance(await s.signer.getAddress(), n.address)
9
- ) >= e, E = async (e, n, s, r) => {
10
- if (x(e.getCurrentChainId()) !== C.ethMainnet || s.symbol.toLowerCase() !== "usdt" || BigInt(
11
- await r.allowance(await r.signer.getAddress(), n.address)
7
+ import { getProviderFromContract as F, getSignerFromContract as v } from "../../utils/getSignerFromContract.mjs";
8
+ const B = async (e, a, o) => {
9
+ const t = v(o);
10
+ return await o.allowance(await t.getAddress(), a.target) >= e;
11
+ }, P = async (e, a, o, t) => {
12
+ if (x(e.getCurrentChainId()) !== f.ethMainnet || o.symbol.toLowerCase() !== "usdt" || BigInt(
13
+ await t.allowance(await v(t).getAddress(), a.target)
12
14
  ) === 0n)
13
15
  return;
14
- const o = await r.approve(n.address, 0n);
15
- o && "hash" in o && await e.waitForTransaction(o.hash);
16
- }, L = async (e, n, s, r) => {
17
- const d = e.getContractWithSigner(l.ERC20Contract, r.erc20TokenAddress), o = r.approvalType ?? c.Classic;
18
- if (o === c.Classic || !e.isPermitterAvailable()) {
19
- if (await F(s, n, d))
16
+ const c = await t.approve(a.target, 0n);
17
+ c && "hash" in c && await e.waitForTransaction(c.hash);
18
+ }, V = async (e, a, o, t) => {
19
+ const i = e.getContractWithSigner(l.ERC20Contract, t.erc20TokenAddress), c = t.approvalType ?? d.Classic;
20
+ if (c === d.Classic || !e.isPermitterAvailable()) {
21
+ if (await B(o, a, i))
20
22
  return;
21
- await E(e, n, r, d);
22
- const v = e.getCurrentChainId() === C.base ? 2 : 1;
23
+ await P(e, a, t, i);
24
+ const C = e.getCurrentChainId() === f.base ? 2 : 1;
23
25
  try {
24
- const i = await d.approve(
25
- n.address,
26
- s
26
+ const s = await i.approve(
27
+ a.target,
28
+ o
27
29
  // { gasLimit: 10000000 }
28
30
  );
29
- i && "hash" in i && await e.waitForTransaction(i.hash, v);
30
- } catch (i) {
31
- if (!i?.transactionHash)
32
- throw i;
33
- const { provider: T } = d;
34
- if (!await b(T, i.transactionHash, v))
35
- throw i;
31
+ s && "hash" in s && await e.waitForTransaction(s.hash, C);
32
+ } catch (s) {
33
+ if (!s?.transactionHash || !await b(
34
+ F(i),
35
+ s.transactionHash,
36
+ C
37
+ ))
38
+ throw s;
36
39
  }
37
40
  return;
38
41
  }
39
- const p = await e.getEthereumAddress(), g = e.getContract(l.PermitterContract), h = await e.getContractWithFetcher(l.ContractWithNonces, r.erc20TokenAddress).nonces(p), u = BigInt(Date.now() + A) / 1000n, t = {
42
+ const p = await e.getEthereumAddress(), h = e.getContract(l.PermitterContract), I = await e.getContractWithFetcher(l.ContractWithNonces, t.erc20TokenAddress).nonces(p), m = BigInt(Date.now() + A) / 1000n, r = {
40
43
  owner: p,
41
44
  holder: p,
42
- spender: g.address,
43
- value: s,
44
- nonce: h,
45
- deadline: u,
46
- expiry: u,
45
+ spender: h.target,
46
+ value: o,
47
+ nonce: I,
48
+ deadline: m,
49
+ expiry: m,
47
50
  allowed: !0
48
- }, { v: y, r: m, s: w } = a.utils.splitSignature(
51
+ }, { v: y, r: w, s: u } = n.Signature.from(
49
52
  await e.signTypedData(
50
53
  {
51
- name: await d.name(),
54
+ name: await i.name(),
52
55
  chainId: e.getCurrentChainId(),
53
56
  version: "1",
54
- verifyingContract: r.erc20TokenAddress
57
+ verifyingContract: t.erc20TokenAddress
55
58
  },
56
59
  {
57
- Permit: o === c.ERC20Permit ? [
60
+ Permit: c === d.ERC20Permit ? [
58
61
  {
59
62
  name: "owner",
60
63
  type: "address"
@@ -98,41 +101,41 @@ const F = async (e, n, s) => BigInt(
98
101
  }
99
102
  ]
100
103
  },
101
- t
104
+ r
102
105
  )
103
106
  );
104
- if (o === c.ERC20Permit) {
105
- const f = new a.utils.Interface([
107
+ if (c === d.ERC20Permit) {
108
+ const g = new n.Interface([
106
109
  "function permit(address owner,address spender,uint256 value,uint256 deadline,uint8 v,bytes32 r,bytes32 s) external"
107
110
  ]);
108
- return a.utils.arrayify(
109
- f.encodeFunctionData("permit", [
110
- t.owner,
111
- t.spender,
112
- t.value,
113
- t.deadline,
111
+ return n.getBytesCopy(
112
+ g.encodeFunctionData("permit", [
113
+ r.owner,
114
+ r.spender,
115
+ r.value,
116
+ r.deadline,
114
117
  y,
115
- a.utils.arrayify(m),
116
- a.utils.arrayify(w)
118
+ n.getBytesCopy(w),
119
+ n.getBytesCopy(u)
117
120
  ])
118
121
  ).slice(4);
119
122
  }
120
- const I = new a.utils.Interface([
123
+ const T = new n.Interface([
121
124
  "function permit(address holder,address spender,uint256 nonce,uint256 expiry,bool allowed,uint8 v,bytes32 r,bytes32 s) external"
122
125
  ]);
123
- return a.utils.arrayify(
124
- I.encodeFunctionData("permit", [
125
- t.holder,
126
- t.spender,
127
- t.nonce,
128
- t.expiry,
129
- t.allowed,
126
+ return n.getBytesCopy(
127
+ T.encodeFunctionData("permit", [
128
+ r.holder,
129
+ r.spender,
130
+ r.nonce,
131
+ r.expiry,
132
+ r.allowed,
130
133
  y,
131
- a.utils.arrayify(m),
132
- a.utils.arrayify(w)
134
+ n.getBytesCopy(w),
135
+ n.getBytesCopy(u)
133
136
  ])
134
137
  ).slice(4);
135
138
  };
136
139
  export {
137
- L as approveTokenToHinkal
140
+ V as approveTokenToHinkal
138
141
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("ethers"),f=require("../../../externalABIs/index.cjs"),v=(e,t)=>new u.ethers.utils.Interface(f.ERC20ABI).encodeFunctionData("approve",[e,t]),A=(e,t,n,r)=>r.encodeFunctionData("transact",[e[0],e[1],e[2],t,n]),h=(e,t,n,r,i,l,p,o)=>{const a=[];for(let s=0;s<e.length;s+=1){const c=e[s],d=t[s];c!==u.ethers.constants.AddressZero&&d>0n&&a.push({to:c,value:"0x0",data:v(n,d)})}return a.push({to:r.address,value:o>0n?`0x${o.toString(16)}`:"0x0",data:A(i,l,p,r.interface)}),a};exports.buildApproveAndTransactCalls=h;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("ethers"),f=require("../../../externalABIs/index.cjs"),v=(e,t)=>new i.ethers.Interface(f.ERC20ABI).encodeFunctionData("approve",[e,t]),g=(e,t,n,r)=>r.encodeFunctionData("transact",[e[0],e[1],e[2],t,n]),h=async(e,t,n,r,u,l,p,o)=>{const s=[];for(let a=0;a<e.length;a+=1){const c=e[a],d=t[a];c!==i.ethers.ZeroAddress&&d>0n&&s.push({to:c,value:"0x0",data:v(n,d)})}const A=await r.getAddress();return s.push({to:A,value:o>0n?`0x${o.toString(16)}`:"0x0",data:g(u,l,p,r.interface)}),s};exports.buildApproveAndTransactCalls=h;
@@ -1,5 +1,5 @@
1
- import { Contract } from 'ethers';
1
+ import { ethers } from 'ethers';
2
2
  import { CircomDataBaseType, DimDataType } from '../../../types/circom-data.types';
3
3
  import { NewZkCallDataType } from '../../../types/snark.types';
4
4
  import { Call } from '../../../types/eip5792.types';
5
- export declare const buildApproveAndTransactCalls: (tokenAddresses: string[], amounts: bigint[], spenderAddress: string, contractForTransaction: Contract, zkCallData: NewZkCallDataType, dimData: DimDataType, circomData: CircomDataBaseType, ethValue: bigint) => Call[];
5
+ export declare const buildApproveAndTransactCalls: (tokenAddresses: string[], amounts: bigint[], spenderAddress: string, contractForTransaction: ethers.Contract, zkCallData: NewZkCallDataType, dimData: DimDataType, circomData: CircomDataBaseType, ethValue: bigint) => Promise<Call[]>;
@@ -1,19 +1,20 @@
1
1
  import { ethers as i } from "ethers";
2
- import { ERC20ABI as f } from "../../../externalABIs/index.mjs";
3
- const m = (t, n) => new i.utils.Interface(f).encodeFunctionData("approve", [t, n]), v = (t, n, e, o) => o.encodeFunctionData("transact", [t[0], t[1], t[2], n, e]), h = (t, n, e, o, p, u, l, s) => {
2
+ import { ERC20ABI as A } from "../../../externalABIs/index.mjs";
3
+ const m = (t, e) => new i.Interface(A).encodeFunctionData("approve", [t, e]), v = (t, e, n, o) => o.encodeFunctionData("transact", [t[0], t[1], t[2], e, n]), h = async (t, e, n, o, p, u, f, c) => {
4
4
  const r = [];
5
5
  for (let a = 0; a < t.length; a += 1) {
6
- const c = t[a], d = n[a];
7
- c !== i.constants.AddressZero && d > 0n && r.push({
8
- to: c,
6
+ const s = t[a], d = e[a];
7
+ s !== i.ZeroAddress && d > 0n && r.push({
8
+ to: s,
9
9
  value: "0x0",
10
- data: m(e, d)
10
+ data: m(n, d)
11
11
  });
12
12
  }
13
+ const l = await o.getAddress();
13
14
  return r.push({
14
- to: o.address,
15
- value: s > 0n ? `0x${s.toString(16)}` : "0x0",
16
- data: v(p, u, l, o.interface)
15
+ to: l,
16
+ value: c > 0n ? `0x${c.toString(16)}` : "0x0",
17
+ data: v(p, u, f, o.interface)
17
18
  }), r;
18
19
  };
19
20
  export {
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("ethers-v6h"),g=require("../../private-wallet/emporium.helpers.cjs"),i=require("../../../constants/chains.constants.cjs"),m=async(r,t,c,s,n)=>{const{hinkalAddress:h,hinkalABI:u}=i.networkRegistry[r.getCurrentChainId()].contractData,d=new a.ethers.JsonRpcProvider(i.networkRegistry[r.getCurrentChainId()].fetchRpcUrl),l=new a.ethers.Contract(h,u,d),y="transact";let e={from:s.relay};if(n){const o=g.recoverAuthorizationData(n);o&&(e={...e,authorizationList:[o],type:4})}return await l[y].estimateGas(t[0],t[1],t[2],c,s,e)};exports.estimateGasRelayer=m;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("ethers"),g=require("../../private-wallet/emporium.helpers.cjs"),i=require("../../../constants/chains.constants.cjs"),m=async(r,t,c,s,n)=>{const{hinkalAddress:u,hinkalABI:h}=i.networkRegistry[r.getCurrentChainId()].contractData,d=new a.ethers.JsonRpcProvider(i.networkRegistry[r.getCurrentChainId()].fetchRpcUrl),l=new a.ethers.Contract(u,h,d),y="transact";let e={from:s.relay};if(n){const o=g.recoverAuthorizationData(n);o&&(e={...e,authorizationList:[o],type:4})}return await l[y].estimateGas(t[0],t[1],t[2],c,s,e)};exports.estimateGasRelayer=m;
@@ -1,4 +1,4 @@
1
- import { ethers as a } from "ethers-v6h";
1
+ import { ethers as a } from "ethers";
2
2
  import { recoverAuthorizationData as u } from "../../private-wallet/emporium.helpers.mjs";
3
3
  import { networkRegistry as i } from "../../../constants/chains.constants.mjs";
4
4
  const C = async (e, t, c, o, s) => {
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("../../../types/ethereum-network.types.cjs"),s=async(n,o)=>{const r=await n.getContractWithFetcher(a.ContractType.HinkalContract).callStatic.getInteractionApprovals(o);if(!r)throw Error("getInteractionApprovals fail: no approved utxos fetched");return r.map(t=>{const c=t;return{amount:c.amount.toBigInt(),inHinkalAddress:c.inHinkalAddress.toBigInt(),tokenAddress:c.tokenAddress}})},l=async(n,o,e)=>{const r=n.getContractWithFetcher(a.ContractType.HinkalContract),t=await n.getContractWithFetcher(a.ContractType.ERC20Contract,o).callStatic.allowance(r.address,e);if(t===void 0)throw Error("checkExistingApprovalFromHinkal Error, no allowance fetched");return t.toBigInt()},p=async(n,o,e,r)=>{const t=await n.getContractWithFetcher(a.ContractType.HinkalContract).callStatic.getBufferEntry(o,e,r);if(t===void 0)throw Error("getBufferEntry Fail: No amount fatched");return t.toBigInt()};exports.checkExistingApprovalFromHinkal=l;exports.getBufferEntry=p;exports.getInteractionApprovals=s;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("../../../types/ethereum-network.types.cjs"),s=async(t,a)=>{const r=await t.getContractWithFetcher(c.ContractType.HinkalContract).getInteractionApprovals.staticCall(a);if(!r)throw Error("getInteractionApprovals fail: no approved utxos fetched");return r.map(n=>{const o=n;return{amount:o.amount,inHinkalAddress:o.inHinkalAddress,tokenAddress:o.tokenAddress}})},l=async(t,a,e)=>{const r=t.getContractWithFetcher(c.ContractType.HinkalContract),i=t.getContractWithFetcher(c.ContractType.ERC20Contract,a),n=await r.getAddress(),o=await i.allowance.staticCall(n,e);if(o===void 0)throw Error("checkExistingApprovalFromHinkal Error, no allowance fetched");return o},p=async(t,a,e,r)=>{const n=await t.getContractWithFetcher(c.ContractType.HinkalContract).getBufferEntry.staticCall(a,e,r);if(n===void 0)throw Error("getBufferEntry Fail: No amount fatched");return n};exports.checkExistingApprovalFromHinkal=l;exports.getBufferEntry=p;exports.getInteractionApprovals=s;