@hinkal/common 0.2.18 → 0.2.19

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 (454) hide show
  1. package/API/API.cjs +1 -1
  2. package/API/API.d.ts +8 -13
  3. package/API/API.mjs +86 -94
  4. package/API/admin-calls.cjs +1 -1
  5. package/API/admin-calls.d.ts +1 -1
  6. package/API/admin-calls.mjs +4 -4
  7. package/API/callLifiAPI.cjs +1 -1
  8. package/API/callLifiAPI.d.ts +1 -1
  9. package/API/callLifiAPI.mjs +5 -5
  10. package/API/callMonitor.cjs +1 -1
  11. package/API/callMonitor.d.ts +1 -1
  12. package/API/callMonitor.mjs +7 -7
  13. package/API/callOdosAPI.cjs +1 -1
  14. package/API/callOdosAPI.mjs +11 -11
  15. package/API/callOkxAPI.cjs +1 -1
  16. package/API/callOkxAPI.d.ts +1 -1
  17. package/API/callOkxAPI.mjs +5 -5
  18. package/API/callOneInchAPI.cjs +1 -1
  19. package/API/callOneInchAPI.mjs +10 -11
  20. package/API/callRelayer.cjs +1 -1
  21. package/API/callRelayer.d.ts +6 -3
  22. package/API/callRelayer.mjs +11 -11
  23. package/API/checkRisk.cjs +1 -1
  24. package/API/checkRisk.d.ts +1 -1
  25. package/API/checkRisk.mjs +4 -4
  26. package/API/fetchCommitmentsCache.cjs +1 -1
  27. package/API/fetchCommitmentsCache.mjs +9 -9
  28. package/API/get-token-data.cjs +1 -1
  29. package/API/get-token-data.d.ts +1 -1
  30. package/API/get-token-data.mjs +5 -5
  31. package/API/get-token-price-chart-data.cjs +1 -0
  32. package/API/get-token-price-chart-data.d.ts +16 -0
  33. package/API/get-token-price-chart-data.mjs +13 -0
  34. package/API/getGasEstimates.cjs +1 -1
  35. package/API/getGasEstimates.mjs +9 -9
  36. package/API/getServerURL.cjs +1 -1
  37. package/API/getServerURL.d.ts +3 -3
  38. package/API/getServerURL.mjs +51 -67
  39. package/API/getTokenPrice.cjs +1 -1
  40. package/API/getTokenPrice.d.ts +5 -0
  41. package/API/getTokenPrice.mjs +14 -7
  42. package/API/index.d.ts +0 -3
  43. package/API/is-tx-stateless.cjs +1 -1
  44. package/API/is-tx-stateless.d.ts +1 -1
  45. package/API/is-tx-stateless.mjs +10 -12
  46. package/API/kycCalls.cjs +1 -1
  47. package/API/kycCalls.d.ts +4 -8
  48. package/API/kycCalls.mjs +23 -26
  49. package/API/onrampCalls.cjs +1 -0
  50. package/API/onrampCalls.d.ts +20 -0
  51. package/API/onrampCalls.mjs +15 -0
  52. package/API/proxyAccountsCalls.cjs +1 -1
  53. package/API/proxyAccountsCalls.d.ts +2 -2
  54. package/API/proxyAccountsCalls.mjs +19 -19
  55. package/API/relayCalls.cjs +1 -1
  56. package/API/relayCalls.mjs +4 -4
  57. package/API/scheduled-transactions-calls.cjs +1 -1
  58. package/API/scheduled-transactions-calls.d.ts +1 -1
  59. package/API/scheduled-transactions-calls.mjs +4 -4
  60. package/API/simulate-batch-tx.cjs +1 -1
  61. package/API/simulate-batch-tx.d.ts +2 -2
  62. package/API/simulate-batch-tx.mjs +7 -6
  63. package/API/solana-calls.cjs +1 -1
  64. package/API/solana-calls.d.ts +6 -3
  65. package/API/solana-calls.mjs +15 -15
  66. package/API/token-calls.cjs +1 -1
  67. package/API/token-calls.mjs +6 -5
  68. package/API/unspent-utxos-calls.cjs +1 -1
  69. package/API/unspent-utxos-calls.d.ts +1 -1
  70. package/API/unspent-utxos-calls.mjs +15 -18
  71. package/README.md +233 -64
  72. package/constants/addresses.constants.cjs +1 -1
  73. package/constants/addresses.constants.d.ts +0 -1
  74. package/constants/addresses.constants.mjs +7 -8
  75. package/constants/chains.constants.cjs +1 -1
  76. package/constants/chains.constants.d.ts +0 -5
  77. package/constants/chains.constants.mjs +19 -24
  78. package/constants/coingecko.constants.cjs +1 -1
  79. package/constants/coingecko.constants.d.ts +1 -0
  80. package/constants/coingecko.constants.mjs +11 -10
  81. package/constants/contracts.constants.cjs +1 -1
  82. package/constants/contracts.constants.mjs +34 -41
  83. package/constants/function-signatures.constants.cjs +1 -1
  84. package/constants/function-signatures.constants.d.ts +0 -1
  85. package/constants/function-signatures.constants.mjs +3 -4
  86. package/constants/mystery-boxes.constants.d.ts +0 -0
  87. package/constants/permit2.constants.cjs +1 -1
  88. package/constants/permit2.constants.d.ts +0 -1
  89. package/constants/permit2.constants.mjs +10 -11
  90. package/constants/server.constants.cjs +1 -1
  91. package/constants/server.constants.d.ts +14 -122
  92. package/constants/server.constants.mjs +44 -152
  93. package/constants/token-data/ethMainnetRegistry.json.cjs +1 -1
  94. package/constants/token-data/ethMainnetRegistry.json.mjs +0 -24
  95. package/constants/token-data/ethMainnetRegistryFixed.json.cjs +1 -1
  96. package/constants/token-data/ethMainnetRegistryFixed.json.mjs +0 -24
  97. package/constants/token-data/index.d.ts +32 -88
  98. package/constants/token-data/localhostRegistry.json.cjs +1 -1
  99. package/constants/token-data/localhostRegistry.json.mjs +0 -26
  100. package/constants/token-data/popularTokens.constants.cjs +1 -1
  101. package/constants/token-data/popularTokens.constants.mjs +0 -1
  102. package/data-structures/Hinkal/Hinkal.cjs +1 -1
  103. package/data-structures/Hinkal/Hinkal.d.ts +33 -48
  104. package/data-structures/Hinkal/Hinkal.mjs +237 -300
  105. package/data-structures/Hinkal/IHinkal.d.ts +32 -47
  106. package/data-structures/Hinkal/handleAutoDepositBack.cjs +1 -1
  107. package/data-structures/Hinkal/handleAutoDepositBack.d.ts +1 -1
  108. package/data-structures/Hinkal/handleAutoDepositBack.mjs +42 -42
  109. package/data-structures/Hinkal/hinkalActionReceive.cjs +1 -1
  110. package/data-structures/Hinkal/hinkalActionReceive.mjs +25 -23
  111. package/data-structures/Hinkal/hinkalCheckTokenRegistry.cjs +1 -1
  112. package/data-structures/Hinkal/hinkalCheckTokenRegistry.mjs +9 -9
  113. package/data-structures/Hinkal/hinkalDeposit.cjs +1 -1
  114. package/data-structures/Hinkal/hinkalDeposit.mjs +95 -93
  115. package/data-structures/Hinkal/hinkalDepositAndWithdraw.cjs +1 -1
  116. package/data-structures/Hinkal/hinkalDepositAndWithdraw.mjs +111 -115
  117. package/data-structures/Hinkal/hinkalGetZkMeProvider.cjs +1 -1
  118. package/data-structures/Hinkal/hinkalGetZkMeProvider.mjs +1 -2
  119. package/data-structures/Hinkal/hinkalPrivateWallet.cjs +1 -1
  120. package/data-structures/Hinkal/hinkalPrivateWallet.d.ts +1 -1
  121. package/data-structures/Hinkal/hinkalPrivateWallet.mjs +107 -115
  122. package/data-structures/Hinkal/hinkalProoflessDeposit.cjs +1 -1
  123. package/data-structures/Hinkal/hinkalProoflessDeposit.mjs +36 -34
  124. package/data-structures/Hinkal/hinkalProxySwap.cjs +1 -1
  125. package/data-structures/Hinkal/hinkalProxySwap.mjs +34 -33
  126. package/data-structures/Hinkal/hinkalProxyToPrivate.cjs +1 -1
  127. package/data-structures/Hinkal/hinkalProxyToPrivate.mjs +26 -24
  128. package/data-structures/Hinkal/hinkalSignSubAccount.cjs +1 -1
  129. package/data-structures/Hinkal/hinkalSignSubAccount.d.ts +1 -2
  130. package/data-structures/Hinkal/hinkalSignSubAccount.mjs +8 -9
  131. package/data-structures/Hinkal/hinkalSolanaDeposit.cjs +1 -1
  132. package/data-structures/Hinkal/hinkalSolanaDeposit.d.ts +4 -3
  133. package/data-structures/Hinkal/hinkalSolanaDeposit.mjs +86 -97
  134. package/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.cjs +1 -1
  135. package/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.d.ts +2 -1
  136. package/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.mjs +146 -146
  137. package/data-structures/Hinkal/hinkalSolanaProxySend.cjs +1 -1
  138. package/data-structures/Hinkal/hinkalSolanaProxySend.d.ts +2 -3
  139. package/data-structures/Hinkal/hinkalSolanaProxySend.mjs +38 -38
  140. package/data-structures/Hinkal/hinkalSolanaProxyShield.cjs +1 -1
  141. package/data-structures/Hinkal/hinkalSolanaProxyShield.mjs +57 -56
  142. package/data-structures/Hinkal/hinkalSolanaProxySwap.cjs +1 -1
  143. package/data-structures/Hinkal/hinkalSolanaProxySwap.d.ts +1 -1
  144. package/data-structures/Hinkal/hinkalSolanaProxySwap.mjs +59 -58
  145. package/data-structures/Hinkal/hinkalSolanaSwap.cjs +1 -1
  146. package/data-structures/Hinkal/hinkalSolanaSwap.d.ts +1 -1
  147. package/data-structures/Hinkal/hinkalSolanaSwap.mjs +83 -79
  148. package/data-structures/Hinkal/hinkalSolanaTransfer.cjs +1 -1
  149. package/data-structures/Hinkal/hinkalSolanaTransfer.mjs +49 -48
  150. package/data-structures/Hinkal/hinkalSolanaWithdraw.cjs +1 -1
  151. package/data-structures/Hinkal/hinkalSolanaWithdraw.d.ts +2 -1
  152. package/data-structures/Hinkal/hinkalSolanaWithdraw.mjs +67 -64
  153. package/data-structures/Hinkal/hinkalSwap.cjs +1 -1
  154. package/data-structures/Hinkal/hinkalSwap.mjs +75 -87
  155. package/data-structures/Hinkal/hinkalTransfer.cjs +1 -1
  156. package/data-structures/Hinkal/hinkalTransfer.mjs +55 -58
  157. package/data-structures/Hinkal/hinkalWithdraw.cjs +1 -1
  158. package/data-structures/Hinkal/hinkalWithdraw.mjs +80 -82
  159. package/data-structures/Hinkal/hinkalWithdrawStuckUtxos.cjs +1 -1
  160. package/data-structures/Hinkal/hinkalWithdrawStuckUtxos.mjs +98 -102
  161. package/data-structures/Hinkal/resetMerkleTrees.cjs +1 -1
  162. package/data-structures/Hinkal/resetMerkleTrees.d.ts +1 -1
  163. package/data-structures/Hinkal/resetMerkleTrees.mjs +105 -53
  164. package/data-structures/IndexedDB/activity-db.cjs +1 -1
  165. package/data-structures/IndexedDB/activity-db.mjs +7 -7
  166. package/data-structures/IndexedDB/balances-db.cjs +1 -1
  167. package/data-structures/IndexedDB/balances-db.mjs +8 -8
  168. package/data-structures/IndexedDB/contact-db.cjs +1 -1
  169. package/data-structures/IndexedDB/contact-db.mjs +10 -10
  170. package/data-structures/IndexedDB/signatures-db.cjs +1 -1
  171. package/data-structures/IndexedDB/signatures-db.mjs +25 -40
  172. package/data-structures/TokenDBs/EventsPublicTokensDB.cjs +1 -1
  173. package/data-structures/TokenDBs/EventsPublicTokensDB.mjs +10 -11
  174. package/data-structures/TokenDBs/token-visibility-db.cjs +1 -1
  175. package/data-structures/TokenDBs/token-visibility-db.mjs +22 -36
  176. package/data-structures/crypto-keys/encryptDecryptUtxo.cjs +1 -1
  177. package/data-structures/crypto-keys/encryptDecryptUtxo.d.ts +1 -1
  178. package/data-structures/crypto-keys/encryptDecryptUtxo.mjs +14 -14
  179. package/data-structures/event-service/evm/AbstractEventService.cjs +1 -1
  180. package/data-structures/event-service/evm/AbstractEventService.d.ts +1 -0
  181. package/data-structures/event-service/evm/AbstractEventService.mjs +7 -4
  182. package/data-structures/event-service/evm/AbstractSnapshotService.cjs +1 -1
  183. package/data-structures/event-service/evm/AbstractSnapshotService.d.ts +0 -1
  184. package/data-structures/event-service/evm/AbstractSnapshotService.mjs +3 -4
  185. package/data-structures/event-service/evm/BlockchainEventEmitter.cjs +1 -1
  186. package/data-structures/event-service/evm/BlockchainEventEmitter.d.ts +3 -1
  187. package/data-structures/event-service/evm/BlockchainEventEmitter.mjs +17 -14
  188. package/data-structures/event-service/solana/AbstractSolanaEventService.cjs +1 -1
  189. package/data-structures/event-service/solana/AbstractSolanaEventService.d.ts +1 -0
  190. package/data-structures/event-service/solana/AbstractSolanaEventService.mjs +9 -6
  191. package/data-structures/event-service/solana/AbstractSolanaSnapshotService.cjs +1 -1
  192. package/data-structures/event-service/solana/AbstractSolanaSnapshotService.d.ts +0 -1
  193. package/data-structures/event-service/solana/AbstractSolanaSnapshotService.mjs +1 -2
  194. package/data-structures/event-service/solana/SolanaBlockchainEventEmitter.cjs +1 -1
  195. package/data-structures/event-service/solana/SolanaBlockchainEventEmitter.d.ts +3 -2
  196. package/data-structures/event-service/solana/SolanaBlockchainEventEmitter.mjs +42 -45
  197. package/data-structures/provider-adapter/IProviderAdapter.d.ts +8 -13
  198. package/data-structures/snapshot/evm-snapshots/ClientAccessTokenSnapshotService.cjs +1 -1
  199. package/data-structures/snapshot/evm-snapshots/ClientAccessTokenSnapshotService.mjs +3 -4
  200. package/data-structures/snapshot/evm-snapshots/ClientApprovalsSnapshotService.cjs +1 -1
  201. package/data-structures/snapshot/evm-snapshots/ClientApprovalsSnapshotService.mjs +3 -4
  202. package/data-structures/snapshot/evm-snapshots/ClientCommitmentsSnapshotService.cjs +1 -1
  203. package/data-structures/snapshot/evm-snapshots/ClientCommitmentsSnapshotService.mjs +3 -4
  204. package/data-structures/snapshot/evm-snapshots/ClientNullifierSnapshotService.cjs +1 -1
  205. package/data-structures/snapshot/evm-snapshots/ClientNullifierSnapshotService.mjs +3 -4
  206. package/data-structures/snapshot/solana-snapshots/ClientSolanaAccessTokenSnapshotService.cjs +1 -1
  207. package/data-structures/snapshot/solana-snapshots/ClientSolanaAccessTokenSnapshotService.mjs +3 -4
  208. package/data-structures/snapshot/solana-snapshots/ClientSolanaCommitmentsSnapshotService.cjs +1 -1
  209. package/data-structures/snapshot/solana-snapshots/ClientSolanaCommitmentsSnapshotService.mjs +2 -4
  210. package/data-structures/snapshot/solana-snapshots/ClientSolanaNullifierSnapshotService.cjs +1 -1
  211. package/data-structures/snapshot/solana-snapshots/ClientSolanaNullifierSnapshotService.mjs +3 -4
  212. package/data-structures/utxo/Utxo.cjs +1 -1
  213. package/data-structures/utxo/Utxo.d.ts +1 -7
  214. package/data-structures/utxo/Utxo.mjs +26 -36
  215. package/error-handling/error-codes.constants.cjs +1 -1
  216. package/error-handling/error-codes.constants.d.ts +1 -0
  217. package/error-handling/error-codes.constants.mjs +2 -1
  218. package/error-handling/get-error.message.cjs +1 -1
  219. package/error-handling/get-error.message.mjs +21 -27
  220. package/error-handling/index.d.ts +0 -1
  221. package/functions/index.d.ts +0 -1
  222. package/functions/kyc/zkMeHelper.cjs +1 -1
  223. package/functions/kyc/zkMeHelper.mjs +18 -17
  224. package/functions/pre-transaction/constructAdminData.cjs +1 -1
  225. package/functions/pre-transaction/constructAdminData.d.ts +2 -2
  226. package/functions/pre-transaction/constructAdminData.mjs +12 -18
  227. package/functions/pre-transaction/getExternalSwapAddress.cjs +1 -1
  228. package/functions/pre-transaction/getExternalSwapAddress.d.ts +1 -2
  229. package/functions/pre-transaction/getExternalSwapAddress.mjs +8 -8
  230. package/functions/pre-transaction/getFlatFees.cjs +1 -1
  231. package/functions/pre-transaction/getFlatFees.mjs +22 -30
  232. package/functions/pre-transaction/getVolatileTransferAmount.cjs +1 -1
  233. package/functions/pre-transaction/getVolatileTransferAmount.mjs +21 -36
  234. package/functions/pre-transaction/merge-with-fee-structure-emporium.cjs +1 -1
  235. package/functions/pre-transaction/merge-with-fee-structure-emporium.d.ts +1 -1
  236. package/functions/pre-transaction/merge-with-fee-structure-emporium.mjs +17 -17
  237. package/functions/pre-transaction/outputApprovalDataProcessing.cjs +1 -1
  238. package/functions/pre-transaction/outputApprovalDataProcessing.d.ts +1 -9
  239. package/functions/pre-transaction/outputApprovalDataProcessing.mjs +19 -34
  240. package/functions/pre-transaction/shouldPatchAccessTokenMerkleTree.cjs +1 -1
  241. package/functions/pre-transaction/shouldPatchAccessTokenMerkleTree.d.ts +1 -1
  242. package/functions/pre-transaction/shouldPatchAccessTokenMerkleTree.mjs +4 -4
  243. package/functions/pre-transaction/solana-public-signals.cjs +1 -1
  244. package/functions/pre-transaction/solana-public-signals.d.ts +1 -0
  245. package/functions/pre-transaction/solana-public-signals.mjs +29 -26
  246. package/functions/pre-transaction/solana.cjs +1 -1
  247. package/functions/pre-transaction/solana.d.ts +2 -1
  248. package/functions/pre-transaction/solana.mjs +60 -51
  249. package/functions/private-wallet/emporium.helpers.cjs +1 -1
  250. package/functions/private-wallet/emporium.helpers.d.ts +3 -5
  251. package/functions/private-wallet/emporium.helpers.mjs +95 -135
  252. package/functions/private-wallet/emporium.swap.helpers.cjs +1 -1
  253. package/functions/private-wallet/emporium.swap.helpers.d.ts +1 -4
  254. package/functions/private-wallet/emporium.swap.helpers.mjs +100 -102
  255. package/functions/snarkjs/common.snarkjs.cjs +1 -1
  256. package/functions/snarkjs/common.snarkjs.d.ts +1 -1
  257. package/functions/snarkjs/common.snarkjs.mjs +64 -64
  258. package/functions/snarkjs/constructEmporiumProof.cjs +1 -1
  259. package/functions/snarkjs/constructEmporiumProof.mjs +1 -1
  260. package/functions/snarkjs/constructGeneralZkProof.cjs +1 -1
  261. package/functions/snarkjs/constructGeneralZkProof.d.ts +1 -2
  262. package/functions/snarkjs/constructGeneralZkProof.mjs +117 -121
  263. package/functions/snarkjs/constructSolanaZkProof.cjs +1 -1
  264. package/functions/snarkjs/constructSolanaZkProof.d.ts +1 -1
  265. package/functions/snarkjs/constructSolanaZkProof.mjs +54 -59
  266. package/functions/snarkjs/fetchMerkleTreeSiblings.cjs +1 -1
  267. package/functions/snarkjs/fetchMerkleTreeSiblings.mjs +11 -10
  268. package/functions/utils/addresses.cjs +1 -1
  269. package/functions/utils/addresses.d.ts +1 -0
  270. package/functions/utils/addresses.mjs +13 -12
  271. package/functions/utils/cacheFunctions.cjs +1 -1
  272. package/functions/utils/cacheFunctions.mjs +2 -2
  273. package/functions/utils/erc20tokenFunctions.cjs +1 -1
  274. package/functions/utils/erc20tokenFunctions.d.ts +0 -1
  275. package/functions/utils/erc20tokenFunctions.mjs +22 -29
  276. package/functions/utils/get-hinkal-approvals.cjs +1 -1
  277. package/functions/utils/get-hinkal-approvals.d.ts +1 -1
  278. package/functions/utils/get-hinkal-approvals.mjs +16 -16
  279. package/functions/utils/getUtxosFromReceipt.utils.cjs +1 -1
  280. package/functions/utils/getUtxosFromReceipt.utils.d.ts +1 -1
  281. package/functions/utils/getUtxosFromReceipt.utils.mjs +11 -11
  282. package/functions/utils/involves-permit2-op.cjs +1 -1
  283. package/functions/utils/involves-permit2-op.d.ts +0 -1
  284. package/functions/utils/involves-permit2-op.mjs +4 -6
  285. package/functions/utils/mutexes.utils.cjs +1 -1
  286. package/functions/utils/mutexes.utils.d.ts +1 -1
  287. package/functions/utils/mutexes.utils.mjs +3 -3
  288. package/functions/utils/nftTokenFunctions.cjs +1 -1
  289. package/functions/utils/nftTokenFunctions.mjs +8 -23
  290. package/functions/utils/prepareHinkal.cjs +1 -1
  291. package/functions/utils/prepareHinkal.d.ts +0 -6
  292. package/functions/utils/prepareHinkal.mjs +41 -60
  293. package/functions/utils/token-check.utils.cjs +1 -1
  294. package/functions/utils/token-check.utils.d.ts +3 -0
  295. package/functions/utils/token-check.utils.mjs +18 -7
  296. package/functions/utils/upToDateState.cjs +1 -1
  297. package/functions/utils/upToDateState.d.ts +1 -1
  298. package/functions/utils/upToDateState.mjs +4 -4
  299. package/functions/utils/walletBalances.utils.cjs +1 -1
  300. package/functions/utils/walletBalances.utils.d.ts +1 -16
  301. package/functions/utils/walletBalances.utils.mjs +4 -35
  302. package/functions/web3/events/getApprovedBalance.cjs +1 -1
  303. package/functions/web3/events/getApprovedBalance.d.ts +3 -4
  304. package/functions/web3/events/getApprovedBalance.mjs +39 -44
  305. package/functions/web3/events/getInputUtxoAndBalance.cjs +1 -1
  306. package/functions/web3/events/getInputUtxoAndBalance.d.ts +1 -1
  307. package/functions/web3/events/getInputUtxoAndBalance.mjs +114 -121
  308. package/functions/web3/events/getShieldedBalance.cjs +2 -2
  309. package/functions/web3/events/getShieldedBalance.d.ts +1 -1
  310. package/functions/web3/events/getShieldedBalance.mjs +71 -70
  311. package/functions/web3/events/getTransactionLogEvents.cjs +1 -1
  312. package/functions/web3/events/getTransactionLogEvents.mjs +7 -7
  313. package/functions/web3/fetchSolanaMerkleTreeRootHash.cjs +1 -1
  314. package/functions/web3/fetchSolanaMerkleTreeRootHash.mjs +7 -7
  315. package/functions/web3/functionCalls/accessTokenCalls.cjs +1 -1
  316. package/functions/web3/functionCalls/accessTokenCalls.d.ts +1 -6
  317. package/functions/web3/functionCalls/accessTokenCalls.mjs +12 -21
  318. package/functions/web3/functionCalls/approveToken.cjs +1 -1
  319. package/functions/web3/functionCalls/approveToken.d.ts +1 -1
  320. package/functions/web3/functionCalls/approveToken.mjs +50 -46
  321. package/functions/web3/functionCalls/approveTokensToHinkal.cjs +1 -1
  322. package/functions/web3/functionCalls/approveTokensToHinkal.d.ts +1 -1
  323. package/functions/web3/functionCalls/approveTokensToHinkal.mjs +6 -6
  324. package/functions/web3/functionCalls/estimateGasRelayer.cjs +1 -1
  325. package/functions/web3/functionCalls/estimateGasRelayer.d.ts +1 -2
  326. package/functions/web3/functionCalls/estimateGasRelayer.mjs +10 -10
  327. package/functions/web3/functionCalls/transactCallDirect.cjs +1 -1
  328. package/functions/web3/functionCalls/transactCallDirect.d.ts +1 -1
  329. package/functions/web3/functionCalls/transactCallDirect.mjs +38 -42
  330. package/functions/web3/functionCalls/transactCallRelayer.cjs +1 -1
  331. package/functions/web3/functionCalls/transactCallRelayer.d.ts +1 -1
  332. package/functions/web3/functionCalls/transactCallRelayer.mjs +34 -34
  333. package/functions/web3/getPublicAddressBalance.cjs +1 -1
  334. package/functions/web3/getPublicAddressBalance.d.ts +1 -1
  335. package/functions/web3/getPublicAddressBalance.mjs +6 -6
  336. package/functions/web3/getTokenHolder.cjs +1 -1
  337. package/functions/web3/getTokenHolder.mjs +8 -8
  338. package/functions/web3/lifiAPI.cjs +1 -1
  339. package/functions/web3/lifiAPI.d.ts +1 -1
  340. package/functions/web3/lifiAPI.mjs +12 -12
  341. package/functions/web3/odosAPI.cjs +1 -1
  342. package/functions/web3/odosAPI.mjs +6 -19
  343. package/functions/web3/okxAPI.cjs +1 -1
  344. package/functions/web3/okxAPI.mjs +22 -22
  345. package/functions/web3/oneInchAPI.cjs +1 -1
  346. package/functions/web3/oneInchAPI.mjs +7 -20
  347. package/functions/web3/runContractFunction.cjs +1 -1
  348. package/functions/web3/runContractFunction.mjs +38 -56
  349. package/functions/web3/uniswapAPI.cjs +1 -1
  350. package/functions/web3/uniswapAPI.mjs +22 -34
  351. package/index.cjs +1 -1
  352. package/index.mjs +939 -970
  353. package/package.json +1 -1
  354. package/providers/EthersProviderAdapter.cjs +1 -1
  355. package/providers/EthersProviderAdapter.d.ts +10 -17
  356. package/providers/EthersProviderAdapter.mjs +48 -76
  357. package/providers/SolanaProviderAdapter.cjs +1 -1
  358. package/providers/SolanaProviderAdapter.d.ts +7 -11
  359. package/providers/SolanaProviderAdapter.mjs +16 -31
  360. package/providers/WagmiProviderAdapter.cjs +1 -1
  361. package/providers/WagmiProviderAdapter.d.ts +11 -17
  362. package/providers/WagmiProviderAdapter.mjs +86 -117
  363. package/providers/prepareEthersHinkal.cjs +1 -1
  364. package/providers/prepareEthersHinkal.mjs +6 -7
  365. package/providers/prepareWagmiHinkal.cjs +1 -1
  366. package/providers/prepareWagmiHinkal.mjs +5 -5
  367. package/types/TransactionSimulator.types.d.ts +2 -9
  368. package/types/admin.types.cjs +1 -1
  369. package/types/admin.types.d.ts +0 -6
  370. package/types/admin.types.mjs +2 -2
  371. package/types/balances.types.d.ts +0 -1
  372. package/types/cache.types.cjs +1 -1
  373. package/types/cache.types.d.ts +2 -3
  374. package/types/cache.types.mjs +1 -1
  375. package/types/coingecko.types.d.ts +5 -0
  376. package/types/ethereum-network.types.cjs +1 -1
  377. package/types/ethereum-network.types.d.ts +1 -8
  378. package/types/ethereum-network.types.mjs +1 -1
  379. package/types/external-action.types.cjs +1 -1
  380. package/types/external-action.types.d.ts +0 -1
  381. package/types/external-action.types.mjs +1 -1
  382. package/types/hinkal.types.cjs +1 -1
  383. package/types/hinkal.types.d.ts +1 -7
  384. package/types/hinkal.types.mjs +22 -23
  385. package/types/index.d.ts +1 -3
  386. package/types/onramp.types.cjs +1 -0
  387. package/types/onramp.types.d.ts +58 -0
  388. package/types/onramp.types.mjs +4 -0
  389. package/types/proxy.types.d.ts +1 -0
  390. package/types/sandbox.types.cjs +1 -1
  391. package/types/sandbox.types.d.ts +8 -39
  392. package/types/sandbox.types.mjs +2 -2
  393. package/types/session.types.d.ts +2 -0
  394. package/types/solana.types.d.ts +1 -0
  395. package/types/token-prices.types.cjs +1 -1
  396. package/types/token-prices.types.d.ts +7 -0
  397. package/types/token-prices.types.mjs +4 -2
  398. package/types/transactions.types.cjs +1 -1
  399. package/types/transactions.types.d.ts +2 -4
  400. package/types/transactions.types.mjs +3 -3
  401. package/webworker/snarkjsWorker/snarkjsWorkerLauncher.cjs +1 -1
  402. package/webworker/snarkjsWorker/snarkjsWorkerLauncher.mjs +1 -1
  403. package/webworker/utxoWorker/utxoWorkerLauncher.cjs +1 -1
  404. package/webworker/utxoWorker/utxoWorkerLauncher.mjs +1 -1
  405. package/webworker/zkProofWorker/zkProofWorkerLauncher.cjs +1 -1
  406. package/webworker/zkProofWorker/zkProofWorkerLauncher.mjs +2 -2
  407. package/API/ai-calls.cjs +0 -1
  408. package/API/ai-calls.d.ts +0 -17
  409. package/API/ai-calls.mjs +0 -21
  410. package/API/duneAPI.cjs +0 -1
  411. package/API/duneAPI.d.ts +0 -11
  412. package/API/duneAPI.mjs +0 -25
  413. package/API/getBridgeProtocols.cjs +0 -1
  414. package/API/getBridgeProtocols.d.ts +0 -7
  415. package/API/getBridgeProtocols.mjs +0 -8
  416. package/API/getLifiStatus.cjs +0 -1
  417. package/API/getLifiStatus.d.ts +0 -24
  418. package/API/getLifiStatus.mjs +0 -15
  419. package/API/getRelayerURL.cjs +0 -1
  420. package/API/getRelayerURL.d.ts +0 -1
  421. package/API/getRelayerURL.mjs +0 -10
  422. package/API/passwordCalls.cjs +0 -1
  423. package/API/passwordCalls.d.ts +0 -9
  424. package/API/passwordCalls.mjs +0 -13
  425. package/API/restoreSnapshots.cjs +0 -1
  426. package/API/restoreSnapshots.d.ts +0 -1
  427. package/API/restoreSnapshots.mjs +0 -10
  428. package/data-structures/Hinkal/hinkalActionFundApproveAndTransact.cjs +0 -1
  429. package/data-structures/Hinkal/hinkalActionFundApproveAndTransact.d.ts +0 -7
  430. package/data-structures/Hinkal/hinkalActionFundApproveAndTransact.mjs +0 -42
  431. package/data-structures/Hinkal/hinkalActionStake.d.ts +0 -3
  432. package/data-structures/Hinkal/hinkalApprove.cjs +0 -1
  433. package/data-structures/Hinkal/hinkalApprove.d.ts +0 -3
  434. package/data-structures/Hinkal/hinkalApprove.mjs +0 -115
  435. package/data-structures/Hinkal/hinkalInsideTransact.cjs +0 -1
  436. package/data-structures/Hinkal/hinkalInsideTransact.d.ts +0 -4
  437. package/data-structures/Hinkal/hinkalInsideTransact.mjs +0 -121
  438. package/error-handling/handleErrorRestore.cjs +0 -1
  439. package/error-handling/handleErrorRestore.d.ts +0 -2
  440. package/error-handling/handleErrorRestore.mjs +0 -11
  441. package/functions/staking/index.cjs +0 -1
  442. package/functions/staking/index.d.ts +0 -11
  443. package/functions/staking/index.mjs +0 -42
  444. package/functions/utils/replaceAddressInCalldata.cjs +0 -1
  445. package/functions/utils/replaceAddressInCalldata.d.ts +0 -1
  446. package/functions/utils/replaceAddressInCalldata.mjs +0 -7
  447. package/functions/web3/functionCalls/inHinkalApprovalCalls.cjs +0 -1
  448. package/functions/web3/functionCalls/inHinkalApprovalCalls.d.ts +0 -5
  449. package/functions/web3/functionCalls/inHinkalApprovalCalls.mjs +0 -32
  450. package/types/bridging.types.d.ts +0 -29
  451. package/types/duneAPI.types.d.ts +0 -9
  452. package/types/hinkal.stake.types.cjs +0 -1
  453. package/types/hinkal.stake.types.d.ts +0 -11
  454. package/types/hinkal.stake.types.mjs +0 -4
@@ -1,148 +1,144 @@
1
- import { transactionErrorCodes as S } from "../../error-handling/error-codes.constants.mjs";
2
- import { outputUtxoProcessing as P } from "../../functions/pre-transaction/outputUtxoProcessing.mjs";
3
- import { constructZkProof as R } from "../../functions/snarkjs/constructGeneralZkProof.mjs";
4
- import { transactCallRelayer as k } from "../../functions/web3/functionCalls/transactCallRelayer.mjs";
5
- import { ExternalActionId as F } from "../../types/external-action.types.mjs";
6
- import { defaultHinkalLogicArgs as M } from "../../types/hinkal.types.mjs";
7
- import { outputApprovalDataProcessing as K } from "../../functions/pre-transaction/outputApprovalDataProcessing.mjs";
8
- import { getFeeStructure as L } from "../../functions/pre-transaction/getFeeStructure.mjs";
9
- import { mergeWithFeeStructure as W } from "../../functions/pre-transaction/merge-with-fee-structure.mjs";
1
+ import { transactionErrorCodes as P } from "../../error-handling/error-codes.constants.mjs";
2
+ import { outputUtxoProcessing as R } from "../../functions/pre-transaction/outputUtxoProcessing.mjs";
3
+ import { constructZkProof as F } from "../../functions/snarkjs/constructGeneralZkProof.mjs";
4
+ import { transactCallRelayer as B } from "../../functions/web3/functionCalls/transactCallRelayer.mjs";
5
+ import { ExternalActionId as M } from "../../types/external-action.types.mjs";
6
+ import { defaultHinkalLogicArgs as K } from "../../types/hinkal.types.mjs";
7
+ import { outputApprovalDataProcessing as L } from "../../functions/pre-transaction/outputApprovalDataProcessing.mjs";
8
+ import { getFeeStructure as W } from "../../functions/pre-transaction/getFeeStructure.mjs";
9
+ import { mergeWithFeeStructure as H } from "../../functions/pre-transaction/merge-with-fee-structure.mjs";
10
10
  import "../../types/circom-data.types.mjs";
11
- import { ContractType as B } from "../../types/ethereum-network.types.mjs";
11
+ import { ContractType as $ } from "../../types/ethereum-network.types.mjs";
12
12
  import "../../types/transactions.types.mjs";
13
- import { AdminTransactionType as H } from "../../types/admin.types.mjs";
13
+ import { AdminTransactionType as b } from "../../types/admin.types.mjs";
14
14
  import "../../types/activities.types.mjs";
15
- import { getSignatureDataForTransact as $ } from "../../functions/pre-transaction/getSignatureDataForTransact.mjs";
16
- import { shouldPatchAccessTokenMerkleTree as b } from "../../functions/pre-transaction/shouldPatchAccessTokenMerkleTree.mjs";
15
+ import { getSignatureDataForTransact as N } from "../../functions/pre-transaction/getSignatureDataForTransact.mjs";
16
+ import { shouldPatchAccessTokenMerkleTree as O } from "../../functions/pre-transaction/shouldPatchAccessTokenMerkleTree.mjs";
17
17
  import "../../constants/server.constants.mjs";
18
- import "../../constants/chains.constants.mjs";
19
- import "../../constants/vite.constants.mjs";
18
+ import "../../API/getServerURL.mjs";
20
19
  import "../http/HttpClient.mjs";
21
20
  import "axios";
22
- import { countTotalAmountInUtxos as N } from "../../functions/utils/amounts.utils.mjs";
21
+ import "../../constants/vite.constants.mjs";
22
+ import { countTotalAmountInUtxos as _ } from "../../functions/utils/amounts.utils.mjs";
23
23
  import "ethers";
24
24
  import "../../constants/token-data/index.mjs";
25
- import "../../API/getServerURL.mjs";
26
- import "circomlibjs-hinkal-fork";
27
- import "libsodium-wrappers";
28
- import "process";
29
- import "buffer";
30
- import "../../constants/save-depths.mjs";
31
- import "../../constants/reorg-depths.constants.mjs";
32
- import "../../functions/utils/mutexes.utils.mjs";
25
+ import "../../constants/chains.constants.mjs";
26
+ import { constructAdminData as q } from "../../functions/pre-transaction/constructAdminData.mjs";
33
27
  import "@coral-xyz/anchor";
34
28
  import "@solana/web3.js";
35
- import "../crypto-keys/keys.mjs";
36
- import { getCurrentTimeInSeconds as O } from "../../functions/utils/time.utils.mjs";
37
- import { constructAdminData as _ } from "../../functions/pre-transaction/constructAdminData.mjs";
29
+ import "circomlibjs-hinkal-fork";
38
30
  import "@solana/spl-token";
39
- import { getInputUtxoAndBalancePerToken as q } from "../../functions/web3/events/getInputUtxoAndBalance.mjs";
40
- import { addPaddingToUtxos as z } from "../../functions/web3/events/getShieldedBalance.mjs";
41
- import { encodeTokenWithId as V } from "../../functions/utils/encodeTokenWithId.mjs";
42
- import { deleteUnspentUtxos as Y } from "../../API/unspent-utxos-calls.mjs";
43
- import { hashEthereumAddress as Z } from "../../functions/utils/addresses.mjs";
44
- const j = async (t, m, d, u) => {
45
- const o = [m.erc20TokenAddress], p = m.erc20TokenAddress, a = await L(
46
- t.getCurrentChainId(),
47
- p,
48
- o,
49
- F.Transact
50
- ), c = d - a.flatFee;
51
- if (c <= 0n)
52
- throw new Error(`Insufficient balance to cover fee. Balance: ${d}, Fee: ${a.flatFee}`);
53
- const e = [-c];
54
- W(t.getCurrentChainId(), o, e, a);
55
- const i = {
31
+ import "../crypto-keys/keys.mjs";
32
+ import { getCurrentTimeInSeconds as z } from "../../functions/utils/time.utils.mjs";
33
+ import { getInputUtxoAndBalancePerToken as G } from "../../functions/web3/events/getInputUtxoAndBalance.mjs";
34
+ import { addPaddingToUtxos as V } from "../../functions/web3/events/getShieldedBalance.mjs";
35
+ import { encodeTokenWithId as Y } from "../../functions/utils/encodeTokenWithId.mjs";
36
+ import { deleteUnspentUtxos as Z } from "../../API/unspent-utxos-calls.mjs";
37
+ import { hashEthereumAddress as j } from "../../functions/utils/addresses.mjs";
38
+ import { validateAndGetChainId as I } from "../../functions/utils/token-check.utils.mjs";
39
+ const J = async (t, e, d, p, n) => {
40
+ const s = [d.erc20TokenAddress], f = d.erc20TokenAddress, i = await W(
41
+ e,
42
+ f,
43
+ s,
44
+ M.Transact
45
+ ), l = p - i.flatFee;
46
+ if (l <= 0n)
47
+ throw new Error(`Insufficient balance to cover fee. Balance: ${p}, Fee: ${i.flatFee}`);
48
+ const o = [-l];
49
+ H(e, s, o, i);
50
+ const m = {
56
51
  externalActionId: 0n,
57
- externalAddress: u,
52
+ externalAddress: n,
58
53
  externalActionMetadata: "0x00"
59
- }, s = [
60
- ...await z(t, o, e, void 0, void 0, !1, !0)
61
- ], f = `swapperM${e.length.toString()}x${s[0].length}x1`, r = M(e.length, t.userKeys), l = O().toString(), A = [];
62
- for (let n = 0; n < o.length; n += 1) {
63
- const { outputUtxos: D } = P(
54
+ }, c = [
55
+ ...await V(t, e, s, o, void 0, void 0, !1, !0)
56
+ ], r = `swapperM${o.length.toString()}x${c[0].length}x1`, u = K(o.length, t.userKeys), w = z().toString(), x = [];
57
+ for (let a = 0; a < s.length; a += 1) {
58
+ const { outputUtxos: S } = R(
64
59
  t.userKeys,
65
- s[n],
66
- e[n],
67
- l,
60
+ c[a],
61
+ o[a],
62
+ w,
68
63
  void 0,
69
64
  !1
70
65
  );
71
- A.push(D);
72
- const { useApprovalUtxoData: x } = K(t, s[n], e[n]);
73
- x && (r.useApprovalUtxoData[n] = x, r.doPreTxApproval = !0);
66
+ x.push(S);
67
+ const { useApprovalUtxoData: T } = L(t, e, c[a], o[a]);
68
+ T && (u.useApprovalUtxoData[a] = T, u.doPreTxApproval = !0);
74
69
  }
75
- const g = await t.getRandomRelay(!0);
70
+ const g = await t.getRandomRelay(e, !0);
76
71
  if (!g)
77
- throw Error(S.RELAYER_NOT_AVAILABLE);
78
- const { patchAccessTokenMerkleTree: w, kycRequired: C, hasAccessToken: h } = await b(
72
+ throw Error(P.RELAYER_NOT_AVAILABLE);
73
+ const { patchAccessTokenMerkleTree: v, kycRequired: y, hasAccessToken: U } = await O(
79
74
  t,
80
- o,
81
- e
82
- ), v = await $(
83
- t.getCurrentChainId(),
75
+ e,
76
+ s,
77
+ o
78
+ ), k = await N(
79
+ e,
84
80
  await t.getEthereumAddress(),
85
81
  t.userKeys,
86
- C,
87
- h
88
- ), { zkCallData: I, circomData: y, dimData: U } = await R(
82
+ y,
83
+ U
84
+ ), { zkCallData: E, circomData: h, dimData: C } = await F(
89
85
  "v1x1",
90
- t.merkleTreeHinkal,
91
- t.merkleTreeAccessToken,
92
- s,
93
- A,
86
+ t.merkleTreeHinkalByChain[e],
87
+ t.merkleTreeAccessTokenByChain[e],
88
+ c,
89
+ x,
94
90
  t.userKeys,
95
- f,
96
- i.externalActionId,
97
- i.externalAddress,
98
- i.externalActionMetadata,
91
+ r,
92
+ m.externalActionId,
93
+ m.externalAddress,
94
+ m.externalActionMetadata,
99
95
  t.generateProofRemotely,
100
96
  g,
101
- t.getCurrentChainId(),
102
- void 0,
97
+ e,
103
98
  void 0,
104
99
  void 0,
105
100
  void 0,
106
- w,
107
- r,
108
- void 0,
109
- a,
110
- t.getContractWithFetcher(B.HinkalHelperContract),
111
101
  v,
102
+ u,
103
+ void 0,
104
+ i,
105
+ t.getContractWithFetcher(e, $.HinkalHelperContract),
106
+ k,
112
107
  void 0,
113
108
  !1
114
- ), E = _(
115
- H.WithdrawOnChainUtxos,
116
- t.getCurrentChainId(),
117
- o,
109
+ ), D = q(
110
+ b.WithdrawOnChainUtxos,
118
111
  e,
112
+ s,
113
+ o,
119
114
  await t.getEthereumAddress()
120
115
  );
121
- return { tx: await k(
122
- t.getCurrentChainId(),
123
- I,
124
- U,
125
- y,
116
+ return { tx: await B(
117
+ e,
118
+ E,
119
+ C,
120
+ h,
126
121
  void 0,
127
122
  void 0,
128
123
  void 0,
129
- E
130
- ), amountToRecipient: c };
131
- }, bt = async (t, m, d) => {
132
- const u = [], o = t.getCurrentChainId(), p = V(o, { erc20TokenAddress: m.erc20TokenAddress, tokenId: 0 }), a = await t.getEthereumAddress(), c = Z(a);
124
+ D
125
+ ), amountToRecipient: l };
126
+ }, Ht = async (t, e, d) => {
127
+ const p = [], n = I([e]), s = Y(n, { erc20TokenAddress: e.erc20TokenAddress, tokenId: 0 }), f = await t.getEthereumAddress(), i = j(f);
133
128
  for (; ; ) {
134
- const e = ((await q({
129
+ const A = ((await G({
135
130
  hinkal: t,
136
131
  sliceIfMore6: !1,
137
- useBlockedUtxos: !0
138
- }))?.get(p) ?? []).filter((r) => r.amount > 0n).slice(0, 6).sort((r, l) => Number(l.amount - r.amount)), i = N(e);
139
- if (!i)
132
+ useBlockedUtxos: !0,
133
+ chainId: n
134
+ }))?.get(s) ?? []).filter((r) => r.amount > 0n).slice(0, 6).sort((r, u) => Number(u.amount - r.amount)), o = _(A);
135
+ if (!o)
140
136
  break;
141
- const s = e.map((r) => r.nullifier).filter((r) => !!r), { tx: f } = await j(t, m, i, d);
142
- s.length > 0 && await Y(o, c, s), u.push(f);
137
+ const m = A.map((r) => r.nullifier).filter((r) => !!r), { tx: c } = await J(t, n, e, o, d);
138
+ m.length > 0 && await Z(n, i, m), p.push(c);
143
139
  }
144
- return u;
140
+ return p;
145
141
  };
146
142
  export {
147
- bt as hinkalWithdrawStuckUtxos
143
+ Ht as hinkalWithdrawStuckUtxos
148
144
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("../../constants/chains.constants.cjs");require("../../types/circom-data.types.cjs");const S=require("../../types/ethereum-network.types.cjs");require("../../types/transactions.types.cjs");require("../../types/activities.types.cjs");const h=require("../../types/balances.types.cjs");require("ethers");require("circomlibjs-hinkal-fork");require("libsodium-wrappers");require("process");require("buffer");require("../../constants/vite.constants.cjs");require("../../error-handling/error-codes.constants.cjs");require("../../constants/save-depths.cjs");const m=require("../event-service/evm/BlockchainEventEmitter.cjs"),q=require("../event-service/solana/SolanaBlockchainEventEmitter.cjs"),d=require("@solana/web3.js");require("../crypto-keys/keys.cjs");const T=require("../../functions/web3/events/balanceChangedCustomHandler.cjs"),C=require("../snapshot/SnapshotFetcherService.cjs"),f=require("../snapshot/solana-snapshots/ClientSolanaCommitmentsSnapshotService.cjs"),w=require("../snapshot/solana-snapshots/ClientSolanaNullifierSnapshotService.cjs"),E=require("../snapshot/solana-snapshots/ClientSolanaAccessTokenSnapshotService.cjs"),y=require("../snapshot/evm-snapshots/ClientAccessTokenSnapshotService.cjs"),g=require("../snapshot/evm-snapshots/ClientCommitmentsSnapshotService.cjs"),F=require("../snapshot/evm-snapshots/ClientNullifierSnapshotService.cjs"),P=require("../snapshot/evm-snapshots/ClientApprovalsSnapshotService.cjs"),A=require("../../functions/utils/create-provider.cjs"),I=async e=>{const o=e.getCurrentChainId(),{maxPageSize:s,fetchRpcUrl:p,contractData:l}=u.networkRegistry[e.getCurrentChainId()];e.commitmentsSnapshotService?.intervalClear(),e.nullifierSnapshotService?.intervalClear(),e.accessTokenSnapshotService?.intervalClear(),e.approvalsSnapshotService?.intervalClear();let t,i;if(u.isSolanaLike(o)){const r=l.hinkalAddress;if(!p||!r)throw new Error("Fetch RPC URL or Solana program ID is not set");const c=A.createCustomSolanaConnection(p),n=new d.PublicKey(r);t=new q.SolanaBlockchainEventEmitter(c,n,0,!1,s);const v=l.hinkalIdl;v&&t.setIdl(v);const a=new C.SnapshotFetcherService(o,r);e.commitmentsSnapshotService=new f.ClientSolanaCommitmentsSnapshotService(t,a),e.nullifierSnapshotService=new w.ClientSolanaNullifierSnapshotService(t,a),e.accessTokenSnapshotService=new E.ClientSolanaAccessTokenSnapshotService(t,a),e.approvalsSnapshotService=void 0}else{const r=e.getContractWithFetcher(S.ContractType.HinkalContract),c=e.getContractWithFetcher(S.ContractType.DepositOnChainUtxos);t=new m.BlockchainEventEmitter(r,0,!1,s,c),i=new m.BlockchainEventEmitter(e.getContractWithFetcher(S.ContractType.AccessTokenContract),0,!1,s);const n=new C.SnapshotFetcherService(o,r.address);e.commitmentsSnapshotService=new g.ClientCommitmentsSnapshotService(t,n),e.nullifierSnapshotService=new F.ClientNullifierSnapshotService(t,n),e.accessTokenSnapshotService=new y.ClientAccessTokenSnapshotService(i,n),e.approvalsSnapshotService=new P.ClientApprovalsSnapshotService(t,n)}await Promise.all([e.commitmentsSnapshotService.init(),e.nullifierSnapshotService.init(),e.accessTokenSnapshotService.init(),e.approvalsSnapshotService?.init()]),await Promise.all([t.init(),i?.init()]),e.merkleTreeHinkal=e.commitmentsSnapshotService.merkleTree,e.merkleTreeAccessToken=e.accessTokenSnapshotService.merkleTree,e.nullifiers=e.nullifierSnapshotService.nullifiers,e.encryptedOutputs=e.commitmentsSnapshotService.encryptedOutputs,e.approvalsSnapshotService&&(e.approvals=e.approvalsSnapshotService.approvals),t.onEventsProcessed=r=>{r>0&&T.balanceChangedCustomHandler({updateType:h.PrivateBalanceUpdateType.FreshWithoutLoader,updateTokensListBefore:!0})}};exports.resetMerkleTrees=I;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("../../constants/chains.constants.cjs");require("../../types/circom-data.types.cjs");const m=require("../../types/ethereum-network.types.cjs");require("../../types/transactions.types.cjs");require("../../types/activities.types.cjs");const F=require("../../types/balances.types.cjs");require("ethers");require("circomlibjs-hinkal-fork");require("libsodium-wrappers");require("process");require("buffer");require("../../constants/vite.constants.cjs");require("../../error-handling/error-codes.constants.cjs");require("../../constants/save-depths.cjs");const T=require("../event-service/evm/BlockchainEventEmitter.cjs"),P=require("../event-service/solana/SolanaBlockchainEventEmitter.cjs"),A=require("@solana/web3.js");require("../crypto-keys/keys.cjs");const k=require("../../functions/web3/events/balanceChangedCustomHandler.cjs"),f=require("../snapshot/SnapshotFetcherService.cjs"),x=require("../snapshot/solana-snapshots/ClientSolanaCommitmentsSnapshotService.cjs"),M=require("../snapshot/solana-snapshots/ClientSolanaNullifierSnapshotService.cjs"),b=require("../snapshot/solana-snapshots/ClientSolanaAccessTokenSnapshotService.cjs"),_=require("../snapshot/evm-snapshots/ClientAccessTokenSnapshotService.cjs"),L=require("../snapshot/evm-snapshots/ClientCommitmentsSnapshotService.cjs"),N=require("../snapshot/evm-snapshots/ClientNullifierSnapshotService.cjs"),O=require("../snapshot/evm-snapshots/ClientApprovalsSnapshotService.cjs"),R=require("../../functions/utils/create-provider.cjs"),w=require("../../functions/utils/mutexes.utils.cjs"),U=async(t,E)=>{const h=E??u.WALLET_SUPPORTED_CHAINS;h.forEach(e=>{t.commitmentsSnapshotServiceByChain[e]?.intervalClear(),t.nullifierSnapshotServiceByChain[e]?.intervalClear(),t.accessTokenSnapshotServiceByChain[e]?.intervalClear(),t.approvalsSnapshotServiceByChain[e]?.intervalClear()});const g=h.map(async e=>{const{maxPageSize:a,fetchRpcUrl:y,contractData:B}=u.networkRegistry[e];let r,c;if(u.isSolanaLike(e)){const n=B.hinkalAddress;if(!y||!n)throw new Error("Fetch RPC URL or Solana program ID is not set");const C=R.createCustomSolanaConnection(y),i=new A.PublicKey(n),s=w.getChainBalanceFetchingMutex(e);r=new P.SolanaBlockchainEventEmitter(e,C,i,0,!1,s,a);const q=B.hinkalIdl;q&&r.setIdl(q);const v=new f.SnapshotFetcherService(e,n);t.commitmentsSnapshotServiceByChain[e]=new x.ClientSolanaCommitmentsSnapshotService(r,v),t.nullifierSnapshotServiceByChain[e]=new M.ClientSolanaNullifierSnapshotService(r,v),t.accessTokenSnapshotServiceByChain[e]=new b.ClientSolanaAccessTokenSnapshotService(r,v),t.approvalsSnapshotServiceByChain[e]=void 0}else{const n=t.getContractWithFetcherByChainId(e,m.ContractType.HinkalContract),C=t.getContractWithFetcherByChainId(e,m.ContractType.DepositOnChainUtxos),i=w.getChainBalanceFetchingMutex(e);r=new T.BlockchainEventEmitter(e,n,0,!1,i,a,C),c=new T.BlockchainEventEmitter(e,t.getContractWithFetcherByChainId(e,m.ContractType.AccessTokenContract),0,!1,i,a);const s=new f.SnapshotFetcherService(e,n.address);t.commitmentsSnapshotServiceByChain[e]=new L.ClientCommitmentsSnapshotService(r,s),t.nullifierSnapshotServiceByChain[e]=new N.ClientNullifierSnapshotService(r,s),t.accessTokenSnapshotServiceByChain[e]=new _.ClientAccessTokenSnapshotService(c,s),t.approvalsSnapshotServiceByChain[e]=new O.ClientApprovalsSnapshotService(r,s)}const o=t.commitmentsSnapshotServiceByChain[e],l=t.nullifierSnapshotServiceByChain[e],S=t.accessTokenSnapshotServiceByChain[e],p=t.approvalsSnapshotServiceByChain[e];if(!o||!l||!S)throw new Error(`Missing snapshot service for chain ${e}`);await Promise.all([o.init(),l.init(),S.init(),p?.init()]),await Promise.all([r.init(),c?.init()]),t.merkleTreeHinkalByChain[e]=o.merkleTree,t.merkleTreeAccessTokenByChain[e]=S.merkleTree,t.nullifiersByChain[e]=l.nullifiers,t.encryptedOutputsByChain[e]=o.encryptedOutputs,p&&(t.approvalsByChain[e]=p.approvals),r.onEventsProcessed=n=>{n>0&&k.balanceChangedCustomHandler({updateType:F.PrivateBalanceUpdateType.FreshWithoutLoader,updateTokensListBefore:!0})}});await Promise.allSettled(g)};exports.resetMerkleTrees=U;
@@ -1,2 +1,2 @@
1
1
  import { IHinkal } from './IHinkal';
2
- export declare const resetMerkleTrees: (hinkal: IHinkal) => Promise<void>;
2
+ export declare const resetMerkleTrees: (hinkal: IHinkal, chainIds?: number[]) => Promise<void>;
@@ -1,9 +1,9 @@
1
- import { networkRegistry as C, isSolanaLike as h } from "../../constants/chains.constants.mjs";
1
+ import { networkRegistry as P, isSolanaLike as F, WALLET_SUPPORTED_CHAINS as A } from "../../constants/chains.constants.mjs";
2
2
  import "../../types/circom-data.types.mjs";
3
- import { ContractType as p } from "../../types/ethereum-network.types.mjs";
3
+ import { ContractType as v } from "../../types/ethereum-network.types.mjs";
4
4
  import "../../types/transactions.types.mjs";
5
5
  import "../../types/activities.types.mjs";
6
- import { PrivateBalanceUpdateType as u } from "../../types/balances.types.mjs";
6
+ import { PrivateBalanceUpdateType as x } from "../../types/balances.types.mjs";
7
7
  import "ethers";
8
8
  import "circomlibjs-hinkal-fork";
9
9
  import "libsodium-wrappers";
@@ -12,57 +12,109 @@ import "buffer";
12
12
  import "../../constants/vite.constants.mjs";
13
13
  import "../../error-handling/error-codes.constants.mjs";
14
14
  import "../../constants/save-depths.mjs";
15
- import { BlockchainEventEmitter as v } from "../event-service/evm/BlockchainEventEmitter.mjs";
16
- import { SolanaBlockchainEventEmitter as d } from "../event-service/solana/SolanaBlockchainEventEmitter.mjs";
17
- import { PublicKey as T } from "@solana/web3.js";
15
+ import { BlockchainEventEmitter as u } from "../event-service/evm/BlockchainEventEmitter.mjs";
16
+ import { SolanaBlockchainEventEmitter as L } from "../event-service/solana/SolanaBlockchainEventEmitter.mjs";
17
+ import { PublicKey as R } from "@solana/web3.js";
18
18
  import "../crypto-keys/keys.mjs";
19
- import { balanceChangedCustomHandler as w } from "../../functions/web3/events/balanceChangedCustomHandler.mjs";
20
- import { SnapshotFetcherService as f } from "../snapshot/SnapshotFetcherService.mjs";
21
- import { ClientSolanaCommitmentsSnapshotService as g } from "../snapshot/solana-snapshots/ClientSolanaCommitmentsSnapshotService.mjs";
22
- import { ClientSolanaNullifierSnapshotService as E } from "../snapshot/solana-snapshots/ClientSolanaNullifierSnapshotService.mjs";
23
- import { ClientSolanaAccessTokenSnapshotService as y } from "../snapshot/solana-snapshots/ClientSolanaAccessTokenSnapshotService.mjs";
24
- import { ClientAccessTokenSnapshotService as F } from "../snapshot/evm-snapshots/ClientAccessTokenSnapshotService.mjs";
25
- import { ClientCommitmentsSnapshotService as I } from "../snapshot/evm-snapshots/ClientCommitmentsSnapshotService.mjs";
26
- import { ClientNullifierSnapshotService as P } from "../snapshot/evm-snapshots/ClientNullifierSnapshotService.mjs";
27
- import { ClientApprovalsSnapshotService as A } from "../snapshot/evm-snapshots/ClientApprovalsSnapshotService.mjs";
28
- import { createCustomSolanaConnection as U } from "../../functions/utils/create-provider.mjs";
29
- const oe = async (e) => {
30
- const n = e.getCurrentChainId(), { maxPageSize: i, fetchRpcUrl: m, contractData: S } = C[e.getCurrentChainId()];
31
- e.commitmentsSnapshotService?.intervalClear(), e.nullifierSnapshotService?.intervalClear(), e.accessTokenSnapshotService?.intervalClear(), e.approvalsSnapshotService?.intervalClear();
32
- let t, s;
33
- if (h(n)) {
34
- const r = S.hinkalAddress;
35
- if (!m || !r)
36
- throw new Error("Fetch RPC URL or Solana program ID is not set");
37
- const a = U(m), o = new T(r);
38
- t = new d(a, o, 0, !1, i);
39
- const l = S.hinkalIdl;
40
- l && t.setIdl(l);
41
- const c = new f(n, r);
42
- e.commitmentsSnapshotService = new g(t, c), e.nullifierSnapshotService = new E(t, c), e.accessTokenSnapshotService = new y(t, c), e.approvalsSnapshotService = void 0;
43
- } else {
44
- const r = e.getContractWithFetcher(p.HinkalContract), a = e.getContractWithFetcher(p.DepositOnChainUtxos);
45
- t = new v(r, 0, !1, i, a), s = new v(
46
- e.getContractWithFetcher(p.AccessTokenContract),
47
- 0,
48
- !1,
49
- i
50
- );
51
- const o = new f(n, r.address);
52
- e.commitmentsSnapshotService = new I(t, o), e.nullifierSnapshotService = new P(t, o), e.accessTokenSnapshotService = new F(s, o), e.approvalsSnapshotService = new A(t, o);
53
- }
54
- await Promise.all([
55
- e.commitmentsSnapshotService.init(),
56
- e.nullifierSnapshotService.init(),
57
- e.accessTokenSnapshotService.init(),
58
- e.approvalsSnapshotService?.init()
59
- ]), await Promise.all([t.init(), s?.init()]), e.merkleTreeHinkal = e.commitmentsSnapshotService.merkleTree, e.merkleTreeAccessToken = e.accessTokenSnapshotService.merkleTree, e.nullifiers = e.nullifierSnapshotService.nullifiers, e.encryptedOutputs = e.commitmentsSnapshotService.encryptedOutputs, e.approvalsSnapshotService && (e.approvals = e.approvalsSnapshotService.approvals), t.onEventsProcessed = (r) => {
60
- r > 0 && w({
61
- updateType: u.FreshWithoutLoader,
62
- updateTokensListBefore: !0
63
- });
64
- };
19
+ import { balanceChangedCustomHandler as U } from "../../functions/web3/events/balanceChangedCustomHandler.mjs";
20
+ import { SnapshotFetcherService as T } from "../snapshot/SnapshotFetcherService.mjs";
21
+ import { ClientSolanaCommitmentsSnapshotService as M } from "../snapshot/solana-snapshots/ClientSolanaCommitmentsSnapshotService.mjs";
22
+ import { ClientSolanaNullifierSnapshotService as O } from "../snapshot/solana-snapshots/ClientSolanaNullifierSnapshotService.mjs";
23
+ import { ClientSolanaAccessTokenSnapshotService as W } from "../snapshot/solana-snapshots/ClientSolanaAccessTokenSnapshotService.mjs";
24
+ import { ClientAccessTokenSnapshotService as D } from "../snapshot/evm-snapshots/ClientAccessTokenSnapshotService.mjs";
25
+ import { ClientCommitmentsSnapshotService as H } from "../snapshot/evm-snapshots/ClientCommitmentsSnapshotService.mjs";
26
+ import { ClientNullifierSnapshotService as k } from "../snapshot/evm-snapshots/ClientNullifierSnapshotService.mjs";
27
+ import { ClientApprovalsSnapshotService as N } from "../snapshot/evm-snapshots/ClientApprovalsSnapshotService.mjs";
28
+ import { createCustomSolanaConnection as b } from "../../functions/utils/create-provider.mjs";
29
+ import { getChainBalanceFetchingMutex as w } from "../../functions/utils/mutexes.utils.mjs";
30
+ const ve = async (t, g) => {
31
+ const f = g ?? A;
32
+ f.forEach((e) => {
33
+ t.commitmentsSnapshotServiceByChain[e]?.intervalClear(), t.nullifierSnapshotServiceByChain[e]?.intervalClear(), t.accessTokenSnapshotServiceByChain[e]?.intervalClear(), t.approvalsSnapshotServiceByChain[e]?.intervalClear();
34
+ });
35
+ const E = f.map(async (e) => {
36
+ const { maxPageSize: a, fetchRpcUrl: y, contractData: B } = P[e];
37
+ let o, p;
38
+ if (F(e)) {
39
+ const r = B.hinkalAddress;
40
+ if (!y || !r)
41
+ throw new Error("Fetch RPC URL or Solana program ID is not set");
42
+ const l = b(y), i = new R(r), n = w(e);
43
+ o = new L(
44
+ e,
45
+ l,
46
+ i,
47
+ 0,
48
+ !1,
49
+ n,
50
+ a
51
+ );
52
+ const h = B.hinkalIdl;
53
+ h && o.setIdl(h);
54
+ const C = new T(e, r);
55
+ t.commitmentsSnapshotServiceByChain[e] = new M(
56
+ o,
57
+ C
58
+ ), t.nullifierSnapshotServiceByChain[e] = new O(
59
+ o,
60
+ C
61
+ ), t.accessTokenSnapshotServiceByChain[e] = new W(
62
+ o,
63
+ C
64
+ ), t.approvalsSnapshotServiceByChain[e] = void 0;
65
+ } else {
66
+ const r = t.getContractWithFetcherByChainId(e, v.HinkalContract), l = t.getContractWithFetcherByChainId(
67
+ e,
68
+ v.DepositOnChainUtxos
69
+ ), i = w(e);
70
+ o = new u(
71
+ e,
72
+ r,
73
+ 0,
74
+ !1,
75
+ i,
76
+ a,
77
+ l
78
+ ), p = new u(
79
+ e,
80
+ t.getContractWithFetcherByChainId(e, v.AccessTokenContract),
81
+ 0,
82
+ !1,
83
+ i,
84
+ a
85
+ );
86
+ const n = new T(e, r.address);
87
+ t.commitmentsSnapshotServiceByChain[e] = new H(
88
+ o,
89
+ n
90
+ ), t.nullifierSnapshotServiceByChain[e] = new k(
91
+ o,
92
+ n
93
+ ), t.accessTokenSnapshotServiceByChain[e] = new D(
94
+ p,
95
+ n
96
+ ), t.approvalsSnapshotServiceByChain[e] = new N(
97
+ o,
98
+ n
99
+ );
100
+ }
101
+ const s = t.commitmentsSnapshotServiceByChain[e], m = t.nullifierSnapshotServiceByChain[e], c = t.accessTokenSnapshotServiceByChain[e], S = t.approvalsSnapshotServiceByChain[e];
102
+ if (!s || !m || !c)
103
+ throw new Error(`Missing snapshot service for chain ${e}`);
104
+ await Promise.all([
105
+ s.init(),
106
+ m.init(),
107
+ c.init(),
108
+ S?.init()
109
+ ]), await Promise.all([o.init(), p?.init()]), t.merkleTreeHinkalByChain[e] = s.merkleTree, t.merkleTreeAccessTokenByChain[e] = c.merkleTree, t.nullifiersByChain[e] = m.nullifiers, t.encryptedOutputsByChain[e] = s.encryptedOutputs, S && (t.approvalsByChain[e] = S.approvals), o.onEventsProcessed = (r) => {
110
+ r > 0 && U({
111
+ updateType: x.FreshWithoutLoader,
112
+ updateTokensListBefore: !0
113
+ });
114
+ };
115
+ });
116
+ await Promise.allSettled(E);
65
117
  };
66
118
  export {
67
- oe as resetMerkleTrees
119
+ ve as resetMerkleTrees
68
120
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const g=require("idb-keyval"),m=require("ethers");require("../../types/circom-data.types.cjs");const I=require("../../constants/protocol.constants.cjs");require("../../types/transactions.types.cjs");const y=require("../../types/activities.types.cjs"),d=require("../../types/cache.types.cjs");require("../../constants/token-data/index.cjs");const k=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");require("@coral-xyz/anchor");require("@solana/web3.js");const P=require("../../functions/utils/amounts.utils.cjs");require("../http/HttpClient.cjs");const b=require("../../error-handling/logger.cjs"),_=require("../../functions/utils/erc20tokenFunctions.cjs");require("../../functions/utils/convertIntegrationProviderToExternalActionId.cjs");require("circomlibjs-hinkal-fork");const N=require("../../functions/web3/etherFunctions.cjs");require("../crypto-keys/keys.cjs");require("../../error-handling/error-codes.constants.cjs");require("axios");require("../../API/getServerURL.cjs");require("libsodium-wrappers");require("process");require("buffer");require("../../constants/save-depths.cjs");require("../../functions/utils/mutexes.utils.cjs");require("@solana/spl-token");require("../../functions/utils/userAgent.cjs");require("multiformats");const C=require("../../API/API.cjs");require("../../API/tenderly.api.cjs");require("node-forge");require("../../functions/web3/events/getApprovedBalance.cjs");require("../../functions/web3/getTokenHolder.cjs");require("ethers-v6h");class B{generateTxId(){const e=new Date().getTime(),t=Math.random().toString(36).substring(2,15);return`tx_${e}_${t}`}async getTransactionRecord(){return await g.get(d.StorageKeys.TX_ACTIVITY)||{}}async saveTxRequest(e){const{from:t,to:r,gas:a,gasPrice:n,gasInDollar:s,value:o,chainId:u,status:i,txHash:q,activityType:c,tokensReceive:l,tokensSpend:p,tokensApprove:h,ownerPublicAddress:A,activityIcon:S,dappUrl:w,dappName:x,integrationProvider:D}=e,T=this.generateTxId(),f={id:T,from:t,to:r,gas:a,gasPrice:n,gasInDollar:s?.toString(),value:o,chainId:u,txHash:q,activityType:c,status:i??y.ActivityStatus.PENDING,timestamp:new Date,tokensReceive:l,tokensSpend:p,tokensApprove:h,ownerPublicAddress:A,activityIcon:S,dappUrl:w,dappName:x,integrationProvider:D};return await g.update(d.StorageKeys.TX_ACTIVITY,(v={})=>(v[T]=f,v)),T}async getTxRequest(e){return(await this.getTransactionRecord())[e]||null}async getAllTxRequests(e){const t=await this.getTransactionRecord();return Object.values(t).filter(r=>r.chainId===e).sort((r,a)=>new Date(a.timestamp).getTime()-new Date(r.timestamp).getTime())}async updateTxStatusAndHash(e,t,r,a,n,s,o,u){const i=await this.getTxRequest(e);if(!i)throw new Error("Transaction not found");const q=await this.getGasInDollar(o,u,i.chainId),c={...i,status:t,txHash:r,value:i.value??a,from:i.from??n,to:i.to??s,gas:o,gasPrice:u,gasInDollar:i.gasInDollar??q?.toString(),timestamp:new Date};return await g.update(d.StorageKeys.TX_ACTIVITY,(l={})=>(l[e]=c,l)),c}async updateActivity(e,t,r,a,n,s,o,u){try{await this.updateTxStatusAndHash(e,t,r,a,n,s,o,u)}catch(i){console.log("error in updating tx request",i)}}async removePendingTransactions(e){try{await g.update(d.StorageKeys.TX_ACTIVITY,(t={})=>(delete t[e],t))}catch(t){console.log("error in deleting tx requests",t)}}async updatePendingTransactions(e,t){try{if(!e.success){await this.updateActivity(t,y.ActivityStatus.FAILED,"erroredTx"in e?e.erroredTx?.transactionHash:void 0);return}if("tx"in e){const{tx:r}=e;await this.updateActivity(t,y.ActivityStatus.SUCCESSFUL,r.hash,m.BigNumber.from(r.value??0n).toHexString(),r.from,r.to,m.BigNumber.from(r.gas??0n),m.BigNumber.from(r.gasPrice??0n))}}catch(r){console.log("error in updating pending transactions",r)}}getGasInDollar=async(e,t,r)=>{if(!(!e||!t))try{const a=k.isSolanaLike(r)?I.solanaNativeAddress:I.zeroAddress,n=_.getERC20Token(a,r);if(!n)return;const{prices:s}=await C.API.getTokenPrices(r,[n.erc20TokenAddress]),o=s[0];if(!o)return;const i=o*Number(N.getAmountInToken(n,t.toBigInt()))*Number(e.toBigInt());return P.fixDecimalsAmount(i)}catch(a){b.Logger.error("Failed to calculate gas cost in dollars:",{chainId:r,error:a});return}}}const E=new B;exports.activityStorage=E;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const g=require("idb-keyval"),m=require("ethers");require("../../types/circom-data.types.cjs");const I=require("../../constants/protocol.constants.cjs");require("../../types/transactions.types.cjs");const y=require("../../types/activities.types.cjs"),d=require("../../types/cache.types.cjs");require("../../constants/token-data/index.cjs");const k=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");require("@coral-xyz/anchor");require("@solana/web3.js");const P=require("../../functions/utils/amounts.utils.cjs");require("circomlibjs-hinkal-fork");require("../http/HttpClient.cjs");const b=require("../../error-handling/logger.cjs"),_=require("../../functions/utils/erc20tokenFunctions.cjs");require("../../functions/utils/convertIntegrationProviderToExternalActionId.cjs");const N=require("../../functions/web3/etherFunctions.cjs");require("../crypto-keys/keys.cjs");require("../../error-handling/error-codes.constants.cjs");require("../../API/getServerURL.cjs");require("axios");require("@solana/spl-token");require("../../functions/utils/userAgent.cjs");require("libsodium-wrappers");require("multiformats");const C=require("../../API/API.cjs");require("async-mutex");require("../../API/tenderly.api.cjs");require("process");require("buffer");require("../../providers/EthersProviderAdapter.cjs");require("node-forge");require("../../functions/web3/events/getApprovedBalance.cjs");require("../../functions/web3/getTokenHolder.cjs");require("ethers-v6h");class B{generateTxId(){const e=new Date().getTime(),t=Math.random().toString(36).substring(2,15);return`tx_${e}_${t}`}async getTransactionRecord(){return await g.get(d.StorageKeys.TX_ACTIVITY)||{}}async saveTxRequest(e){const{from:t,to:r,gas:a,gasPrice:n,gasInDollar:s,value:o,chainId:u,status:i,txHash:q,activityType:c,tokensReceive:l,tokensSpend:p,tokensApprove:h,ownerPublicAddress:A,activityIcon:S,dappUrl:w,dappName:x,integrationProvider:D}=e,T=this.generateTxId(),f={id:T,from:t,to:r,gas:a,gasPrice:n,gasInDollar:s?.toString(),value:o,chainId:u,txHash:q,activityType:c,status:i??y.ActivityStatus.PENDING,timestamp:new Date,tokensReceive:l,tokensSpend:p,tokensApprove:h,ownerPublicAddress:A,activityIcon:S,dappUrl:w,dappName:x,integrationProvider:D};return await g.update(d.StorageKeys.TX_ACTIVITY,(v={})=>(v[T]=f,v)),T}async getTxRequest(e){return(await this.getTransactionRecord())[e]||null}async getAllTxRequests(e){const t=await this.getTransactionRecord();return Object.values(t).filter(r=>r.chainId===e).sort((r,a)=>new Date(a.timestamp).getTime()-new Date(r.timestamp).getTime())}async updateTxStatusAndHash(e,t,r,a,n,s,o,u){const i=await this.getTxRequest(e);if(!i)throw new Error("Transaction not found");const q=await this.getGasInDollar(o,u,i.chainId),c={...i,status:t,txHash:r,value:i.value??a,from:i.from??n,to:i.to??s,gas:o,gasPrice:u,gasInDollar:i.gasInDollar??q?.toString(),timestamp:new Date};return await g.update(d.StorageKeys.TX_ACTIVITY,(l={})=>(l[e]=c,l)),c}async updateActivity(e,t,r,a,n,s,o,u){try{await this.updateTxStatusAndHash(e,t,r,a,n,s,o,u)}catch(i){console.log("error in updating tx request",i)}}async removePendingTransactions(e){try{await g.update(d.StorageKeys.TX_ACTIVITY,(t={})=>(delete t[e],t))}catch(t){console.log("error in deleting tx requests",t)}}async updatePendingTransactions(e,t){try{if(!e.success){await this.updateActivity(t,y.ActivityStatus.FAILED,"erroredTx"in e?e.erroredTx?.transactionHash:void 0);return}if("tx"in e){const{tx:r}=e;await this.updateActivity(t,y.ActivityStatus.SUCCESSFUL,r.hash,m.BigNumber.from(r.value??0n).toHexString(),r.from,r.to,m.BigNumber.from(r.gas??0n),m.BigNumber.from(r.gasPrice??0n))}}catch(r){console.log("error in updating pending transactions",r)}}getGasInDollar=async(e,t,r)=>{if(!(!e||!t))try{const a=k.isSolanaLike(r)?I.solanaNativeAddress:I.zeroAddress,n=_.getERC20Token(a,r);if(!n)return;const{prices:s}=await C.API.getTokenPrices(r,[n.erc20TokenAddress]),o=s[0];if(!o)return;const i=o*Number(N.getAmountInToken(n,t.toBigInt()))*Number(e.toBigInt());return P.fixDecimalsAmount(i)}catch(a){b.Logger.error("Failed to calculate gas cost in dollars:",{chainId:r,error:a});return}}}const E=new B;exports.activityStorage=E;
@@ -22,26 +22,26 @@ import "../../constants/events.constants.mjs";
22
22
  import "@coral-xyz/anchor";
23
23
  import "@solana/web3.js";
24
24
  import { fixDecimalsAmount as b } from "../../functions/utils/amounts.utils.mjs";
25
+ import "circomlibjs-hinkal-fork";
25
26
  import "../http/HttpClient.mjs";
26
27
  import { Logger as q } from "../../error-handling/logger.mjs";
27
28
  import { getERC20Token as _ } from "../../functions/utils/erc20tokenFunctions.mjs";
28
29
  import "../../functions/utils/convertIntegrationProviderToExternalActionId.mjs";
29
- import "circomlibjs-hinkal-fork";
30
30
  import { getAmountInToken as E } from "../../functions/web3/etherFunctions.mjs";
31
31
  import "../crypto-keys/keys.mjs";
32
32
  import "../../error-handling/error-codes.constants.mjs";
33
- import "axios";
34
33
  import "../../API/getServerURL.mjs";
35
- import "libsodium-wrappers";
36
- import "process";
37
- import "buffer";
38
- import "../../constants/save-depths.mjs";
39
- import "../../functions/utils/mutexes.utils.mjs";
34
+ import "axios";
40
35
  import "@solana/spl-token";
41
36
  import "../../functions/utils/userAgent.mjs";
37
+ import "libsodium-wrappers";
42
38
  import "multiformats";
43
39
  import { API as H } from "../../API/API.mjs";
40
+ import "async-mutex";
44
41
  import "../../API/tenderly.api.mjs";
42
+ import "process";
43
+ import "buffer";
44
+ import "../../providers/EthersProviderAdapter.mjs";
45
45
  import "node-forge";
46
46
  import "../../functions/web3/events/getApprovedBalance.mjs";
47
47
  import "../../functions/web3/getTokenHolder.mjs";
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("idb-keyval");require("ethers");require("../../constants/chains.constants.cjs");require("@solana/web3.js");require("../http/HttpClient.cjs");const B=require("../../error-handling/logger.cjs");require("../../constants/token-data/index.cjs");require("../../error-handling/error-codes.constants.cjs");require("../../functions/utils/convertIntegrationProviderToExternalActionId.cjs");require("../../types/circom-data.types.cjs");require("../../types/transactions.types.cjs");require("../../types/activities.types.cjs");require("circomlibjs-hinkal-fork");require("../crypto-keys/keys.cjs");require("../../constants/server.constants.cjs");require("../../constants/vite.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("../../functions/utils/mutexes.utils.cjs");require("@coral-xyz/anchor");require("@solana/spl-token");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("../../functions/utils/userAgent.cjs");const q=require("../../functions/utils/string.utils.cjs");require("multiformats");require("../../API/tenderly.api.cjs");class y{balancesRecordLabel="walletsBalances";async getBalances(){return await c.get(this.balancesRecordLabel)}async getBalancesByWallet(r,a){const e=await this.getBalances();if(!e)return;const i=q.getStateKey(r,a);return e[i]}async setBalances(r,a,e,i){let n=[];if(!i)return await c.update(this.balancesRecordLabel,(t={})=>{const u=q.getStateKey(a,r);return{...t,[u]:e}}),e;if(i.length===0)return await this.getBalancesByWallet(a,r)??[];try{await c.update(this.balancesRecordLabel,(t={})=>{const u=q.getStateKey(a,r),s=this.createBalanceLookup(t[u]),o=this.createBalanceLookup(e);return i.forEach(({erc20TokenAddress:g})=>{const l=g.toLowerCase();l in o?s[l]=o[l]:delete s[l]}),n=Object.values(s),{...t,[u]:n}})}catch(t){B.Logger.error("Failed to update wallet balances:",t)}return n}createBalanceLookup(r=[]){return r.reduce((a,e)=>({...a,[e.token.erc20TokenAddress.toLowerCase()]:e}),{})}}const w=new y;exports.publicBalancesStorage=w;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("idb-keyval");require("ethers");require("../../constants/chains.constants.cjs");require("@solana/web3.js");require("../http/HttpClient.cjs");const B=require("../../error-handling/logger.cjs");require("../../constants/token-data/index.cjs");require("../../error-handling/error-codes.constants.cjs");require("../../functions/utils/convertIntegrationProviderToExternalActionId.cjs");require("../../types/circom-data.types.cjs");require("../../types/transactions.types.cjs");require("../../types/activities.types.cjs");require("circomlibjs-hinkal-fork");require("../crypto-keys/keys.cjs");require("../../constants/server.constants.cjs");require("../../API/getServerURL.cjs");require("axios");require("../../constants/vite.constants.cjs");require("@coral-xyz/anchor");require("@solana/spl-token");require("../../constants/contracts.constants.cjs");require("../../constants/kyc.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");require("../../functions/utils/userAgent.cjs");const q=require("../../functions/utils/string.utils.cjs");require("libsodium-wrappers");require("multiformats");require("async-mutex");require("../../API/tenderly.api.cjs");require("process");require("buffer");require("../../providers/EthersProviderAdapter.cjs");class y{balancesRecordLabel="walletsBalances";async getBalances(){return await c.get(this.balancesRecordLabel)}async getBalancesByWallet(r,a){const e=await this.getBalances();if(!e)return;const i=q.getStateKey(r,a);return e[i]}async setBalances(r,a,e,i){let n=[];if(!i)return await c.update(this.balancesRecordLabel,(t={})=>{const u=q.getStateKey(a,r);return{...t,[u]:e}}),e;if(i.length===0)return await this.getBalancesByWallet(a,r)??[];try{await c.update(this.balancesRecordLabel,(t={})=>{const u=q.getStateKey(a,r),s=this.createBalanceLookup(t[u]),o=this.createBalanceLookup(e);return i.forEach(({erc20TokenAddress:g})=>{const l=g.toLowerCase();l in o?s[l]=o[l]:delete s[l]}),n=Object.values(s),{...t,[u]:n}})}catch(t){B.Logger.error("Failed to update wallet balances:",t)}return n}createBalanceLookup(r=[]){return r.reduce((a,e)=>({...a,[e.token.erc20TokenAddress.toLowerCase()]:e}),{})}}const w=new y;exports.publicBalancesStorage=w;
@@ -13,20 +13,15 @@ import "../../types/activities.types.mjs";
13
13
  import "circomlibjs-hinkal-fork";
14
14
  import "../crypto-keys/keys.mjs";
15
15
  import "../../constants/server.constants.mjs";
16
- import "../../constants/vite.constants.mjs";
17
- import "axios";
18
16
  import "../../API/getServerURL.mjs";
19
- import "libsodium-wrappers";
20
- import "process";
21
- import "buffer";
22
- import "../../constants/save-depths.mjs";
23
- import "../../constants/reorg-depths.constants.mjs";
24
- import "../../functions/utils/mutexes.utils.mjs";
17
+ import "axios";
18
+ import "../../constants/vite.constants.mjs";
25
19
  import "@coral-xyz/anchor";
26
20
  import "@solana/spl-token";
27
21
  import "../../constants/contracts.constants.mjs";
28
22
  import "../../constants/kyc.constants.mjs";
29
23
  import "../../constants/coingecko.constants.mjs";
24
+ import "../../constants/reorg-depths.constants.mjs";
30
25
  import "../../constants/addresses.constants.mjs";
31
26
  import "../../constants/token.limits.constants.mjs";
32
27
  import "../../constants/presale.constants.mjs";
@@ -35,8 +30,13 @@ import "../../constants/tasks.constants.mjs";
35
30
  import "../../constants/events.constants.mjs";
36
31
  import "../../functions/utils/userAgent.mjs";
37
32
  import { getStateKey as c } from "../../functions/utils/string.utils.mjs";
33
+ import "libsodium-wrappers";
38
34
  import "multiformats";
35
+ import "async-mutex";
39
36
  import "../../API/tenderly.api.mjs";
37
+ import "process";
38
+ import "buffer";
39
+ import "../../providers/EthersProviderAdapter.mjs";
40
40
  class g {
41
41
  balancesRecordLabel = "walletsBalances";
42
42
  async getBalances() {
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("idb-keyval"),q=require("../../error-handling/logger.cjs");require("../../types/circom-data.types.cjs");require("../../types/transactions.types.cjs");require("../../types/activities.types.cjs");require("../../constants/chains.constants.cjs");require("@coral-xyz/anchor");require("@solana/web3.js");require("../../constants/kyc.constants.cjs");require("ethers");require("../http/HttpClient.cjs");require("../../constants/token-data/index.cjs");require("../../error-handling/error-codes.constants.cjs");require("../../functions/utils/convertIntegrationProviderToExternalActionId.cjs");require("circomlibjs-hinkal-fork");require("../crypto-keys/keys.cjs");require("../../constants/server.constants.cjs");require("../../constants/vite.constants.cjs");require("axios");const d=require("../../functions/utils/caseInsensitive.utils.cjs");require("../../API/getServerURL.cjs");require("libsodium-wrappers");require("process");require("buffer");require("../../constants/save-depths.cjs");require("../../constants/reorg-depths.constants.cjs");require("../../functions/utils/mutexes.utils.cjs");require("@solana/spl-token");require("../../constants/contracts.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("../../functions/utils/userAgent.cjs");require("multiformats");require("../../API/tenderly.api.cjs");require("node-forge");require("../../functions/web3/events/getApprovedBalance.cjs");require("../../functions/web3/getTokenHolder.cjs");require("ethers-v6h");class l{STORAGE_KEY="contacts";checkForDuplicate(o,e,r){if(o.find(({ethereumAddress:t,nickname:i})=>(t===e.ethereumAddress||i===e.nickname)&&t!==r)!==void 0)throw new Error("Duplicate Contact attribute")}async createContact(o,e){const r=o.toLowerCase();await s.update(this.STORAGE_KEY,c=>{const t=c??{},i=t[r]??[];return this.checkForDuplicate(i,e),i.push(e),t[r]=i,t})}async getContacts(o){try{const e=o.toLowerCase(),r=await s.get(this.STORAGE_KEY);return!r||!r[e]?[]:r[e]}catch(e){return q.Logger.error("Error while getting contacts:",e),[]}}async editContact(o,e,r){const c=o.toLowerCase();await s.update(this.STORAGE_KEY,t=>{const i=t??{},a=i[c];if(!i||!a)throw new Error("Contacts could not be fetched");this.checkForDuplicate(a,r,e);const n=a.findIndex(({ethereumAddress:u})=>d.caseInsensitiveEqual(u,e));if(n===-1)throw new Error("Contact to be edited was not found");return a[n]=r,i[c]=a,i})}async deleteContact(o,e){const r=o.toLowerCase();await s.update(this.STORAGE_KEY,c=>{const t=c??{},i=t[r];if(!t||!i)throw new Error("Contacts could not be fetched");const a=i.filter(({ethereumAddress:n})=>n!==e);return t[r]=a,t})}}const w=new l;exports.contactStorage=w;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("idb-keyval"),q=require("../../error-handling/logger.cjs");require("../../types/circom-data.types.cjs");require("../../types/transactions.types.cjs");require("../../types/activities.types.cjs");require("../../constants/chains.constants.cjs");require("@coral-xyz/anchor");require("@solana/web3.js");require("ethers");require("circomlibjs-hinkal-fork");require("../../constants/kyc.constants.cjs");require("../http/HttpClient.cjs");require("../../constants/token-data/index.cjs");require("../../error-handling/error-codes.constants.cjs");require("../../functions/utils/convertIntegrationProviderToExternalActionId.cjs");require("../crypto-keys/keys.cjs");require("../../constants/server.constants.cjs");require("../../API/getServerURL.cjs");require("axios");require("../../constants/vite.constants.cjs");const d=require("../../functions/utils/caseInsensitive.utils.cjs");require("@solana/spl-token");require("../../constants/contracts.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");require("../../functions/utils/userAgent.cjs");require("libsodium-wrappers");require("multiformats");require("async-mutex");require("../../API/tenderly.api.cjs");require("process");require("buffer");require("../../providers/EthersProviderAdapter.cjs");require("node-forge");require("../../functions/web3/events/getApprovedBalance.cjs");require("../../functions/web3/getTokenHolder.cjs");require("ethers-v6h");class l{STORAGE_KEY="contacts";checkForDuplicate(o,e,r){if(o.find(({ethereumAddress:t,nickname:i})=>(t===e.ethereumAddress||i===e.nickname)&&t!==r)!==void 0)throw new Error("Duplicate Contact attribute")}async createContact(o,e){const r=o.toLowerCase();await s.update(this.STORAGE_KEY,c=>{const t=c??{},i=t[r]??[];return this.checkForDuplicate(i,e),i.push(e),t[r]=i,t})}async getContacts(o){try{const e=o.toLowerCase(),r=await s.get(this.STORAGE_KEY);return!r||!r[e]?[]:r[e]}catch(e){return q.Logger.error("Error while getting contacts:",e),[]}}async editContact(o,e,r){const c=o.toLowerCase();await s.update(this.STORAGE_KEY,t=>{const i=t??{},a=i[c];if(!i||!a)throw new Error("Contacts could not be fetched");this.checkForDuplicate(a,r,e);const n=a.findIndex(({ethereumAddress:u})=>d.caseInsensitiveEqual(u,e));if(n===-1)throw new Error("Contact to be edited was not found");return a[n]=r,i[c]=a,i})}async deleteContact(o,e){const r=o.toLowerCase();await s.update(this.STORAGE_KEY,c=>{const t=c??{},i=t[r];if(!t||!i)throw new Error("Contacts could not be fetched");const a=i.filter(({ethereumAddress:n})=>n!==e);return t[r]=a,t})}}const w=new l;exports.contactStorage=w;