@hinkal/common 0.2.21 → 0.2.22

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 (516) hide show
  1. package/API/API.cjs +1 -1
  2. package/API/API.d.ts +14 -14
  3. package/API/API.mjs +88 -87
  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/ai-calls.cjs +1 -0
  8. package/API/ai-calls.d.ts +17 -0
  9. package/API/ai-calls.mjs +21 -0
  10. package/API/callLifiAPI.cjs +1 -1
  11. package/API/callLifiAPI.d.ts +1 -1
  12. package/API/callLifiAPI.mjs +5 -5
  13. package/API/callMonitor.cjs +1 -1
  14. package/API/callMonitor.d.ts +1 -1
  15. package/API/callMonitor.mjs +7 -7
  16. package/API/callOdosAPI.cjs +1 -1
  17. package/API/callOdosAPI.mjs +11 -11
  18. package/API/callOkxAPI.cjs +1 -1
  19. package/API/callOkxAPI.d.ts +1 -1
  20. package/API/callOkxAPI.mjs +5 -5
  21. package/API/callOneInchAPI.cjs +1 -1
  22. package/API/callOneInchAPI.mjs +11 -10
  23. package/API/callRelayer.cjs +1 -1
  24. package/API/callRelayer.d.ts +5 -6
  25. package/API/callRelayer.mjs +11 -11
  26. package/API/checkRisk.cjs +1 -1
  27. package/API/checkRisk.d.ts +1 -1
  28. package/API/checkRisk.mjs +4 -4
  29. package/API/deposit-and-withdraw-status-calls.cjs +1 -0
  30. package/API/deposit-and-withdraw-status-calls.d.ts +20 -0
  31. package/API/deposit-and-withdraw-status-calls.mjs +18 -0
  32. package/API/duneAPI.cjs +1 -0
  33. package/API/duneAPI.d.ts +11 -0
  34. package/API/duneAPI.mjs +25 -0
  35. package/API/enclaveCalls.cjs +1 -1
  36. package/API/enclaveCalls.mjs +4 -5
  37. package/API/fetchCommitmentsCache.cjs +1 -1
  38. package/API/fetchCommitmentsCache.mjs +9 -9
  39. package/API/get-token-data.cjs +1 -1
  40. package/API/get-token-data.d.ts +1 -1
  41. package/API/get-token-data.mjs +5 -5
  42. package/API/getBridgeProtocols.cjs +1 -0
  43. package/API/getBridgeProtocols.d.ts +7 -0
  44. package/API/getBridgeProtocols.mjs +8 -0
  45. package/API/getGasEstimates.cjs +1 -1
  46. package/API/getGasEstimates.mjs +9 -9
  47. package/API/getLifiStatus.cjs +1 -0
  48. package/API/getLifiStatus.d.ts +24 -0
  49. package/API/getLifiStatus.mjs +15 -0
  50. package/API/getRelayerURL.cjs +1 -0
  51. package/API/getRelayerURL.d.ts +1 -0
  52. package/API/getRelayerURL.mjs +10 -0
  53. package/API/getServerURL.cjs +1 -1
  54. package/API/getServerURL.d.ts +3 -3
  55. package/API/getServerURL.mjs +67 -51
  56. package/API/getTokenPrice.cjs +1 -1
  57. package/API/getTokenPrice.d.ts +0 -5
  58. package/API/getTokenPrice.mjs +7 -14
  59. package/API/index.d.ts +3 -1
  60. package/API/is-tx-stateless.cjs +1 -1
  61. package/API/is-tx-stateless.d.ts +1 -1
  62. package/API/is-tx-stateless.mjs +12 -10
  63. package/API/kycCalls.cjs +1 -1
  64. package/API/kycCalls.d.ts +8 -4
  65. package/API/kycCalls.mjs +26 -23
  66. package/API/passwordCalls.cjs +1 -0
  67. package/API/passwordCalls.d.ts +9 -0
  68. package/API/passwordCalls.mjs +13 -0
  69. package/API/proxyAccountsCalls.cjs +1 -1
  70. package/API/proxyAccountsCalls.d.ts +2 -7
  71. package/API/proxyAccountsCalls.mjs +21 -27
  72. package/API/relayCalls.cjs +1 -1
  73. package/API/relayCalls.mjs +4 -4
  74. package/API/restoreSnapshots.cjs +1 -0
  75. package/API/restoreSnapshots.d.ts +1 -0
  76. package/API/restoreSnapshots.mjs +10 -0
  77. package/API/scheduled-transactions-calls.cjs +1 -1
  78. package/API/scheduled-transactions-calls.d.ts +9 -1
  79. package/API/scheduled-transactions-calls.mjs +9 -5
  80. package/API/simulate-batch-tx.cjs +1 -1
  81. package/API/simulate-batch-tx.d.ts +2 -2
  82. package/API/simulate-batch-tx.mjs +6 -7
  83. package/API/solana-calls.cjs +1 -1
  84. package/API/solana-calls.d.ts +3 -6
  85. package/API/solana-calls.mjs +15 -15
  86. package/API/temporaryWalletCalls.cjs +1 -1
  87. package/API/temporaryWalletCalls.mjs +19 -13
  88. package/API/token-calls.cjs +1 -1
  89. package/API/token-calls.mjs +5 -6
  90. package/README.md +54 -42
  91. package/constants/chains.constants.cjs +1 -1
  92. package/constants/chains.constants.d.ts +6 -0
  93. package/constants/chains.constants.mjs +52 -58
  94. package/constants/coingecko.constants.cjs +1 -1
  95. package/constants/coingecko.constants.d.ts +0 -1
  96. package/constants/coingecko.constants.mjs +10 -11
  97. package/constants/deploy-data/deploy-data-solana.json.cjs +1 -1
  98. package/constants/deploy-data/deploy-data-solana.json.mjs +2 -28
  99. package/constants/function-signatures.constants.cjs +1 -1
  100. package/constants/function-signatures.constants.d.ts +1 -0
  101. package/constants/function-signatures.constants.mjs +4 -3
  102. package/constants/kyc.constants.cjs +1 -1
  103. package/constants/kyc.constants.mjs +40 -39
  104. package/constants/mediaUrls.constants.cjs +1 -1
  105. package/constants/mediaUrls.constants.d.ts +0 -1
  106. package/constants/mediaUrls.constants.mjs +1 -2
  107. package/constants/permit2.constants.cjs +1 -1
  108. package/constants/permit2.constants.d.ts +1 -0
  109. package/constants/permit2.constants.mjs +11 -10
  110. package/constants/server.constants.cjs +1 -1
  111. package/constants/server.constants.d.ts +123 -19
  112. package/constants/server.constants.mjs +142 -38
  113. package/constants/vite.constants.cjs +1 -1
  114. package/constants/vite.constants.mjs +13 -36
  115. package/data-structures/ApprovalDBs/EventsPublicApprovalsDB.cjs +1 -1
  116. package/data-structures/ApprovalDBs/EventsPublicApprovalsDB.mjs +71 -68
  117. package/data-structures/Hinkal/Hinkal.cjs +1 -1
  118. package/data-structures/Hinkal/Hinkal.d.ts +56 -45
  119. package/data-structures/Hinkal/Hinkal.mjs +348 -314
  120. package/data-structures/Hinkal/IHinkal.d.ts +54 -40
  121. package/data-structures/Hinkal/handleAutoDepositBack.cjs +1 -1
  122. package/data-structures/Hinkal/handleAutoDepositBack.d.ts +1 -1
  123. package/data-structures/Hinkal/handleAutoDepositBack.mjs +49 -48
  124. package/data-structures/Hinkal/hinkalActionFundApproveAndTransact.cjs +1 -0
  125. package/data-structures/Hinkal/hinkalActionFundApproveAndTransact.d.ts +7 -0
  126. package/data-structures/Hinkal/hinkalActionFundApproveAndTransact.mjs +42 -0
  127. package/data-structures/Hinkal/hinkalActionReceive.cjs +1 -1
  128. package/data-structures/Hinkal/hinkalActionReceive.mjs +24 -29
  129. package/data-structures/Hinkal/hinkalApprove.cjs +1 -0
  130. package/data-structures/Hinkal/hinkalApprove.d.ts +3 -0
  131. package/data-structures/Hinkal/hinkalApprove.mjs +114 -0
  132. package/data-structures/Hinkal/hinkalCheckTokenRegistry.cjs +1 -1
  133. package/data-structures/Hinkal/hinkalCheckTokenRegistry.mjs +20 -20
  134. package/data-structures/Hinkal/hinkalDeposit.cjs +1 -1
  135. package/data-structures/Hinkal/hinkalDeposit.mjs +84 -88
  136. package/data-structures/Hinkal/hinkalDepositAndWithdraw.cjs +1 -1
  137. package/data-structures/Hinkal/hinkalDepositAndWithdraw.d.ts +1 -1
  138. package/data-structures/Hinkal/hinkalDepositAndWithdraw.mjs +96 -77
  139. package/data-structures/Hinkal/hinkalDepositOnChainUtxos.cjs +1 -1
  140. package/data-structures/Hinkal/hinkalDepositOnChainUtxos.d.ts +4 -1
  141. package/data-structures/Hinkal/hinkalDepositOnChainUtxos.mjs +80 -75
  142. package/data-structures/Hinkal/hinkalDepostAndBridge.cjs +1 -1
  143. package/data-structures/Hinkal/hinkalDepostAndBridge.d.ts +1 -1
  144. package/data-structures/Hinkal/hinkalDepostAndBridge.mjs +150 -138
  145. package/data-structures/Hinkal/hinkalGetZkMeProvider.cjs +1 -1
  146. package/data-structures/Hinkal/hinkalGetZkMeProvider.mjs +5 -4
  147. package/data-structures/Hinkal/hinkalInsideTransact.cjs +1 -0
  148. package/data-structures/Hinkal/hinkalInsideTransact.d.ts +4 -0
  149. package/data-structures/Hinkal/hinkalInsideTransact.mjs +119 -0
  150. package/data-structures/Hinkal/hinkalPrivateWallet.cjs +1 -1
  151. package/data-structures/Hinkal/hinkalPrivateWallet.d.ts +2 -2
  152. package/data-structures/Hinkal/hinkalPrivateWallet.mjs +118 -114
  153. package/data-structures/Hinkal/hinkalProoflessDeposit.cjs +1 -1
  154. package/data-structures/Hinkal/hinkalProoflessDeposit.mjs +34 -36
  155. package/data-structures/Hinkal/hinkalProxySwap.cjs +1 -1
  156. package/data-structures/Hinkal/hinkalProxySwap.mjs +36 -40
  157. package/data-structures/Hinkal/hinkalProxyToPrivate.cjs +1 -1
  158. package/data-structures/Hinkal/hinkalProxyToPrivate.mjs +32 -37
  159. package/data-structures/Hinkal/hinkalSignSubAccount.cjs +1 -1
  160. package/data-structures/Hinkal/hinkalSignSubAccount.d.ts +2 -1
  161. package/data-structures/Hinkal/hinkalSignSubAccount.mjs +15 -17
  162. package/data-structures/Hinkal/hinkalSolanaDeposit.cjs +1 -1
  163. package/data-structures/Hinkal/hinkalSolanaDeposit.d.ts +3 -4
  164. package/data-structures/Hinkal/hinkalSolanaDeposit.mjs +95 -84
  165. package/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.cjs +1 -1
  166. package/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.d.ts +1 -2
  167. package/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.mjs +182 -155
  168. package/data-structures/Hinkal/hinkalSolanaProxySend.cjs +1 -1
  169. package/data-structures/Hinkal/hinkalSolanaProxySend.d.ts +3 -2
  170. package/data-structures/Hinkal/hinkalSolanaProxySend.mjs +40 -43
  171. package/data-structures/Hinkal/hinkalSolanaProxyShield.cjs +1 -1
  172. package/data-structures/Hinkal/hinkalSolanaProxyShield.mjs +67 -71
  173. package/data-structures/Hinkal/hinkalSolanaProxySwap.cjs +1 -1
  174. package/data-structures/Hinkal/hinkalSolanaProxySwap.d.ts +1 -1
  175. package/data-structures/Hinkal/hinkalSolanaProxySwap.mjs +59 -63
  176. package/data-structures/Hinkal/hinkalSolanaSwap.cjs +1 -1
  177. package/data-structures/Hinkal/hinkalSolanaSwap.mjs +45 -48
  178. package/data-structures/Hinkal/hinkalSolanaTransfer.cjs +1 -1
  179. package/data-structures/Hinkal/hinkalSolanaTransfer.mjs +48 -49
  180. package/data-structures/Hinkal/hinkalSolanaWithdraw.cjs +1 -1
  181. package/data-structures/Hinkal/hinkalSolanaWithdraw.d.ts +1 -2
  182. package/data-structures/Hinkal/hinkalSolanaWithdraw.mjs +68 -71
  183. package/data-structures/Hinkal/hinkalSwap.cjs +1 -1
  184. package/data-structures/Hinkal/hinkalSwap.mjs +78 -71
  185. package/data-structures/Hinkal/hinkalTransfer.cjs +1 -1
  186. package/data-structures/Hinkal/hinkalTransfer.mjs +70 -71
  187. package/data-structures/Hinkal/hinkalWithdraw.cjs +1 -1
  188. package/data-structures/Hinkal/hinkalWithdraw.mjs +79 -81
  189. package/data-structures/Hinkal/hinkalWithdrawStuckUtxos.cjs +1 -1
  190. package/data-structures/Hinkal/hinkalWithdrawStuckUtxos.mjs +103 -105
  191. package/data-structures/Hinkal/resetMerkleTrees.cjs +1 -1
  192. package/data-structures/Hinkal/resetMerkleTrees.d.ts +1 -1
  193. package/data-structures/Hinkal/resetMerkleTrees.mjs +53 -107
  194. package/data-structures/IndexedDB/activity-db.cjs +1 -1
  195. package/data-structures/IndexedDB/activity-db.d.ts +0 -1
  196. package/data-structures/IndexedDB/activity-db.mjs +75 -91
  197. package/data-structures/IndexedDB/balances-db.cjs +1 -1
  198. package/data-structures/IndexedDB/balances-db.mjs +37 -40
  199. package/data-structures/IndexedDB/contact-db.cjs +1 -1
  200. package/data-structures/IndexedDB/contact-db.mjs +13 -16
  201. package/data-structures/IndexedDB/signatures-db.cjs +1 -1
  202. package/data-structures/IndexedDB/signatures-db.mjs +40 -25
  203. package/data-structures/TokenDBs/EventsPublicTokensDB.cjs +1 -1
  204. package/data-structures/TokenDBs/EventsPublicTokensDB.mjs +84 -82
  205. package/data-structures/TokenDBs/token-visibility-db.cjs +1 -1
  206. package/data-structures/TokenDBs/token-visibility-db.mjs +36 -22
  207. package/data-structures/crypto-keys/keys.cjs +1 -1
  208. package/data-structures/crypto-keys/keys.d.ts +11 -0
  209. package/data-structures/crypto-keys/keys.mjs +107 -47
  210. package/data-structures/event-service/evm/AbstractAccessTokenSnapshotService.cjs +1 -1
  211. package/data-structures/event-service/evm/AbstractAccessTokenSnapshotService.d.ts +2 -3
  212. package/data-structures/event-service/evm/AbstractAccessTokenSnapshotService.mjs +9 -9
  213. package/data-structures/event-service/evm/AbstractApprovalsSnapshotService.cjs +1 -1
  214. package/data-structures/event-service/evm/AbstractApprovalsSnapshotService.d.ts +2 -3
  215. package/data-structures/event-service/evm/AbstractApprovalsSnapshotService.mjs +5 -5
  216. package/data-structures/event-service/evm/AbstractCommitmentsSnapshotService.cjs +1 -1
  217. package/data-structures/event-service/evm/AbstractCommitmentsSnapshotService.d.ts +2 -3
  218. package/data-structures/event-service/evm/AbstractCommitmentsSnapshotService.mjs +6 -6
  219. package/data-structures/event-service/evm/AbstractEventService.cjs +1 -1
  220. package/data-structures/event-service/evm/AbstractEventService.d.ts +2 -4
  221. package/data-structures/event-service/evm/AbstractEventService.mjs +19 -19
  222. package/data-structures/event-service/evm/AbstractNullifierSnapshotService.cjs +1 -1
  223. package/data-structures/event-service/evm/AbstractNullifierSnapshotService.d.ts +3 -3
  224. package/data-structures/event-service/evm/AbstractNullifierSnapshotService.mjs +5 -6
  225. package/data-structures/event-service/evm/AbstractSnapshotService.cjs +1 -1
  226. package/data-structures/event-service/evm/AbstractSnapshotService.d.ts +2 -1
  227. package/data-structures/event-service/evm/AbstractSnapshotService.mjs +4 -3
  228. package/data-structures/event-service/evm/BlockchainEventEmitter.cjs +1 -1
  229. package/data-structures/event-service/evm/BlockchainEventEmitter.d.ts +5 -10
  230. package/data-structures/event-service/evm/BlockchainEventEmitter.mjs +35 -39
  231. package/data-structures/event-service/index.d.ts +0 -4
  232. package/data-structures/event-service/solana/AbstractSolanaAccessTokenSnapshotService.cjs +1 -1
  233. package/data-structures/event-service/solana/AbstractSolanaAccessTokenSnapshotService.d.ts +2 -3
  234. package/data-structures/event-service/solana/AbstractSolanaAccessTokenSnapshotService.mjs +6 -6
  235. package/data-structures/event-service/solana/AbstractSolanaCommitmentsSnapshotService.cjs +1 -1
  236. package/data-structures/event-service/solana/AbstractSolanaCommitmentsSnapshotService.d.ts +3 -4
  237. package/data-structures/event-service/solana/AbstractSolanaCommitmentsSnapshotService.mjs +8 -8
  238. package/data-structures/event-service/solana/AbstractSolanaEventService.cjs +1 -1
  239. package/data-structures/event-service/solana/AbstractSolanaEventService.d.ts +10 -4
  240. package/data-structures/event-service/solana/AbstractSolanaEventService.mjs +7 -10
  241. package/data-structures/event-service/solana/AbstractSolanaNullifierSnapshotService.cjs +1 -1
  242. package/data-structures/event-service/solana/AbstractSolanaNullifierSnapshotService.d.ts +2 -3
  243. package/data-structures/event-service/solana/AbstractSolanaNullifierSnapshotService.mjs +1 -1
  244. package/data-structures/event-service/solana/AbstractSolanaSnapshotService.cjs +1 -1
  245. package/data-structures/event-service/solana/AbstractSolanaSnapshotService.d.ts +2 -1
  246. package/data-structures/event-service/solana/AbstractSolanaSnapshotService.mjs +2 -1
  247. package/data-structures/event-service/solana/SolanaBlockchainEventEmitter.cjs +1 -1
  248. package/data-structures/event-service/solana/SolanaBlockchainEventEmitter.d.ts +16 -11
  249. package/data-structures/event-service/solana/SolanaBlockchainEventEmitter.mjs +66 -64
  250. package/data-structures/index.d.ts +0 -3
  251. package/data-structures/provider-adapter/IProviderAdapter.d.ts +13 -8
  252. package/data-structures/snapshot/evm-snapshots/ClientAccessTokenSnapshotService.cjs +1 -1
  253. package/data-structures/snapshot/evm-snapshots/ClientAccessTokenSnapshotService.mjs +4 -6
  254. package/data-structures/snapshot/evm-snapshots/ClientApprovalsSnapshotService.cjs +1 -1
  255. package/data-structures/snapshot/evm-snapshots/ClientApprovalsSnapshotService.mjs +4 -6
  256. package/data-structures/snapshot/evm-snapshots/ClientCommitmentsSnapshotService.cjs +1 -1
  257. package/data-structures/snapshot/evm-snapshots/ClientCommitmentsSnapshotService.mjs +4 -6
  258. package/data-structures/snapshot/evm-snapshots/ClientNullifierSnapshotService.cjs +1 -1
  259. package/data-structures/snapshot/evm-snapshots/ClientNullifierSnapshotService.mjs +4 -6
  260. package/data-structures/snapshot/solana-snapshots/ClientSolanaAccessTokenSnapshotService.cjs +1 -1
  261. package/data-structures/snapshot/solana-snapshots/ClientSolanaAccessTokenSnapshotService.mjs +4 -6
  262. package/data-structures/snapshot/solana-snapshots/ClientSolanaCommitmentsSnapshotService.cjs +1 -1
  263. package/data-structures/snapshot/solana-snapshots/ClientSolanaCommitmentsSnapshotService.mjs +4 -5
  264. package/data-structures/snapshot/solana-snapshots/ClientSolanaNullifierSnapshotService.cjs +1 -1
  265. package/data-structures/snapshot/solana-snapshots/ClientSolanaNullifierSnapshotService.mjs +4 -6
  266. package/error-handling/error-codes.constants.cjs +1 -1
  267. package/error-handling/error-codes.constants.d.ts +0 -1
  268. package/error-handling/error-codes.constants.mjs +3 -4
  269. package/error-handling/get-error.message.cjs +1 -1
  270. package/error-handling/get-error.message.mjs +27 -21
  271. package/error-handling/handleErrorRestore.cjs +1 -0
  272. package/error-handling/handleErrorRestore.d.ts +2 -0
  273. package/error-handling/handleErrorRestore.mjs +11 -0
  274. package/error-handling/index.d.ts +1 -0
  275. package/functions/kyc/authentoHelper.cjs +1 -0
  276. package/functions/kyc/authentoHelper.d.ts +12 -0
  277. package/functions/kyc/authentoHelper.mjs +30 -0
  278. package/functions/kyc/zkMeHelper.cjs +1 -1
  279. package/functions/kyc/zkMeHelper.mjs +17 -18
  280. package/functions/pre-transaction/constructAdminData.cjs +1 -1
  281. package/functions/pre-transaction/constructAdminData.d.ts +2 -2
  282. package/functions/pre-transaction/constructAdminData.mjs +18 -12
  283. package/functions/pre-transaction/getExternalSwapAddress.cjs +1 -1
  284. package/functions/pre-transaction/getExternalSwapAddress.d.ts +2 -1
  285. package/functions/pre-transaction/getExternalSwapAddress.mjs +8 -8
  286. package/functions/pre-transaction/getVolatileTransferAmount.cjs +1 -1
  287. package/functions/pre-transaction/getVolatileTransferAmount.mjs +36 -21
  288. package/functions/pre-transaction/merge-with-fee-structure-emporium.cjs +1 -1
  289. package/functions/pre-transaction/merge-with-fee-structure-emporium.d.ts +1 -1
  290. package/functions/pre-transaction/merge-with-fee-structure-emporium.mjs +17 -17
  291. package/functions/pre-transaction/outputApprovalDataProcessing.cjs +1 -1
  292. package/functions/pre-transaction/outputApprovalDataProcessing.d.ts +9 -1
  293. package/functions/pre-transaction/outputApprovalDataProcessing.mjs +34 -19
  294. package/functions/pre-transaction/sendV0Transaction.cjs +1 -1
  295. package/functions/pre-transaction/sendV0Transaction.mjs +50 -53
  296. package/functions/pre-transaction/shouldPatchAccessTokenMerkleTree.cjs +1 -1
  297. package/functions/pre-transaction/shouldPatchAccessTokenMerkleTree.d.ts +1 -1
  298. package/functions/pre-transaction/shouldPatchAccessTokenMerkleTree.mjs +4 -4
  299. package/functions/private-wallet/emporium.helpers.cjs +1 -1
  300. package/functions/private-wallet/emporium.helpers.d.ts +6 -3
  301. package/functions/private-wallet/emporium.helpers.mjs +127 -89
  302. package/functions/private-wallet/emporium.swap.helpers.cjs +1 -1
  303. package/functions/private-wallet/emporium.swap.helpers.d.ts +4 -1
  304. package/functions/private-wallet/emporium.swap.helpers.mjs +102 -100
  305. package/functions/snarkjs/constructEmporiumProof.cjs +1 -1
  306. package/functions/snarkjs/constructEmporiumProof.mjs +49 -49
  307. package/functions/snarkjs/constructSolanaZkProof.cjs +1 -1
  308. package/functions/snarkjs/constructSolanaZkProof.mjs +20 -18
  309. package/functions/snarkjs/fetchMerkleTreeSiblings.cjs +1 -1
  310. package/functions/snarkjs/fetchMerkleTreeSiblings.mjs +10 -11
  311. package/functions/utils/addresses.cjs +1 -1
  312. package/functions/utils/addresses.d.ts +0 -1
  313. package/functions/utils/addresses.mjs +12 -13
  314. package/functions/utils/cacheFunctions.cjs +1 -1
  315. package/functions/utils/cacheFunctions.mjs +2 -2
  316. package/functions/utils/create-provider.cjs +1 -1
  317. package/functions/utils/create-provider.d.ts +1 -1
  318. package/functions/utils/create-provider.mjs +9 -13
  319. package/functions/utils/get-hinkal-approvals.cjs +1 -0
  320. package/functions/utils/get-hinkal-approvals.d.ts +3 -0
  321. package/functions/utils/get-hinkal-approvals.mjs +38 -0
  322. package/functions/utils/getUtxosFromReceipt.utils.cjs +1 -1
  323. package/functions/utils/getUtxosFromReceipt.utils.d.ts +1 -1
  324. package/functions/utils/getUtxosFromReceipt.utils.mjs +11 -11
  325. package/functions/utils/index.d.ts +1 -0
  326. package/functions/utils/involves-permit2-op.cjs +1 -1
  327. package/functions/utils/involves-permit2-op.d.ts +1 -0
  328. package/functions/utils/involves-permit2-op.mjs +6 -4
  329. package/functions/utils/mutexes.utils.cjs +1 -1
  330. package/functions/utils/mutexes.utils.d.ts +1 -1
  331. package/functions/utils/mutexes.utils.mjs +3 -3
  332. package/functions/utils/nftTokenFunctions.cjs +1 -1
  333. package/functions/utils/nftTokenFunctions.mjs +23 -8
  334. package/functions/utils/prepareHinkal.cjs +1 -1
  335. package/functions/utils/prepareHinkal.d.ts +13 -6
  336. package/functions/utils/prepareHinkal.mjs +72 -45
  337. package/functions/utils/publicBalance.utils.cjs +1 -1
  338. package/functions/utils/publicBalance.utils.mjs +54 -49
  339. package/functions/utils/replaceAddressInCalldata.cjs +1 -0
  340. package/functions/utils/replaceAddressInCalldata.d.ts +1 -0
  341. package/functions/utils/replaceAddressInCalldata.mjs +7 -0
  342. package/functions/utils/string.utils.cjs +1 -1
  343. package/functions/utils/string.utils.d.ts +0 -1
  344. package/functions/utils/string.utils.mjs +14 -18
  345. package/functions/utils/token-check.utils.cjs +1 -1
  346. package/functions/utils/token-check.utils.d.ts +0 -3
  347. package/functions/utils/token-check.utils.mjs +7 -18
  348. package/functions/utils/upToDateState.cjs +1 -1
  349. package/functions/utils/upToDateState.d.ts +1 -1
  350. package/functions/utils/upToDateState.mjs +4 -4
  351. package/functions/utils/walletBalances.utils.cjs +1 -1
  352. package/functions/utils/walletBalances.utils.d.ts +17 -2
  353. package/functions/utils/walletBalances.utils.mjs +36 -5
  354. package/functions/web3/events/getApprovedBalance.cjs +1 -1
  355. package/functions/web3/events/getApprovedBalance.d.ts +4 -3
  356. package/functions/web3/events/getApprovedBalance.mjs +44 -39
  357. package/functions/web3/events/getInputUtxoAndBalance.cjs +1 -1
  358. package/functions/web3/events/getInputUtxoAndBalance.d.ts +3 -3
  359. package/functions/web3/events/getInputUtxoAndBalance.mjs +150 -129
  360. package/functions/web3/events/getShieldedBalance.cjs +2 -2
  361. package/functions/web3/events/getShieldedBalance.d.ts +1 -1
  362. package/functions/web3/events/getShieldedBalance.mjs +75 -73
  363. package/functions/web3/events/getTransactionLogEvents.cjs +1 -1
  364. package/functions/web3/events/getTransactionLogEvents.mjs +38 -38
  365. package/functions/web3/fetchSolanaMerkleTreeRootHash.cjs +1 -1
  366. package/functions/web3/fetchSolanaMerkleTreeRootHash.mjs +10 -13
  367. package/functions/web3/functionCalls/accessTokenCalls.cjs +1 -1
  368. package/functions/web3/functionCalls/accessTokenCalls.d.ts +6 -1
  369. package/functions/web3/functionCalls/accessTokenCalls.mjs +21 -12
  370. package/functions/web3/functionCalls/approveToken.cjs +1 -1
  371. package/functions/web3/functionCalls/approveToken.d.ts +1 -1
  372. package/functions/web3/functionCalls/approveToken.mjs +46 -50
  373. package/functions/web3/functionCalls/approveTokensToHinkal.cjs +1 -1
  374. package/functions/web3/functionCalls/approveTokensToHinkal.d.ts +1 -1
  375. package/functions/web3/functionCalls/approveTokensToHinkal.mjs +6 -6
  376. package/functions/web3/functionCalls/estimateGasRelayer.cjs +1 -1
  377. package/functions/web3/functionCalls/estimateGasRelayer.d.ts +2 -1
  378. package/functions/web3/functionCalls/estimateGasRelayer.mjs +10 -10
  379. package/functions/web3/functionCalls/inHinkalApprovalCalls.cjs +1 -0
  380. package/functions/web3/functionCalls/inHinkalApprovalCalls.d.ts +5 -0
  381. package/functions/web3/functionCalls/inHinkalApprovalCalls.mjs +32 -0
  382. package/functions/web3/functionCalls/transactCallDirect.cjs +1 -1
  383. package/functions/web3/functionCalls/transactCallDirect.d.ts +1 -1
  384. package/functions/web3/functionCalls/transactCallDirect.mjs +40 -36
  385. package/functions/web3/functionCalls/transactCallRelayer.cjs +1 -1
  386. package/functions/web3/functionCalls/transactCallRelayer.d.ts +3 -3
  387. package/functions/web3/functionCalls/transactCallRelayer.mjs +54 -54
  388. package/functions/web3/getContractMetadata.cjs +1 -1
  389. package/functions/web3/getContractMetadata.mjs +22 -17
  390. package/functions/web3/getPublicAddressBalance.cjs +1 -1
  391. package/functions/web3/getPublicAddressBalance.d.ts +1 -1
  392. package/functions/web3/getPublicAddressBalance.mjs +6 -6
  393. package/functions/web3/getTokenHolder.cjs +1 -1
  394. package/functions/web3/getTokenHolder.mjs +27 -27
  395. package/functions/web3/index.d.ts +0 -1
  396. package/functions/web3/lifiAPI.cjs +1 -1
  397. package/functions/web3/lifiAPI.d.ts +1 -1
  398. package/functions/web3/lifiAPI.mjs +12 -12
  399. package/functions/web3/odosAPI.cjs +1 -1
  400. package/functions/web3/odosAPI.mjs +19 -6
  401. package/functions/web3/okxAPI.cjs +1 -1
  402. package/functions/web3/okxAPI.mjs +13 -13
  403. package/functions/web3/oneInchAPI.cjs +1 -1
  404. package/functions/web3/oneInchAPI.mjs +20 -7
  405. package/functions/web3/runContractFunction.cjs +1 -1
  406. package/functions/web3/runContractFunction.mjs +56 -38
  407. package/functions/web3/uniswapAPI.cjs +1 -1
  408. package/functions/web3/uniswapAPI.mjs +34 -22
  409. package/index.cjs +1 -1
  410. package/index.mjs +922 -920
  411. package/package.json +2 -3
  412. package/providers/EthersProviderAdapter.cjs +1 -1
  413. package/providers/EthersProviderAdapter.d.ts +17 -10
  414. package/providers/EthersProviderAdapter.mjs +76 -45
  415. package/providers/SolanaProviderAdapter.cjs +1 -1
  416. package/providers/SolanaProviderAdapter.d.ts +11 -7
  417. package/providers/SolanaProviderAdapter.mjs +31 -16
  418. package/providers/WagmiProviderAdapter.cjs +1 -1
  419. package/providers/WagmiProviderAdapter.d.ts +17 -11
  420. package/providers/WagmiProviderAdapter.mjs +117 -86
  421. package/providers/prepareEthersHinkal.cjs +1 -1
  422. package/providers/prepareEthersHinkal.mjs +9 -14
  423. package/providers/prepareWagmiHinkal.cjs +1 -1
  424. package/providers/prepareWagmiHinkal.mjs +9 -15
  425. package/types/TransactionSimulator.types.d.ts +9 -2
  426. package/types/activities.types.d.ts +0 -2
  427. package/types/admin.types.cjs +1 -1
  428. package/types/admin.types.d.ts +6 -0
  429. package/types/admin.types.mjs +2 -2
  430. package/types/balances.types.d.ts +1 -0
  431. package/types/bridging.types.d.ts +29 -0
  432. package/types/cache.types.cjs +1 -1
  433. package/types/cache.types.d.ts +3 -6
  434. package/types/cache.types.mjs +1 -1
  435. package/types/coingecko.types.d.ts +0 -5
  436. package/types/duneAPI.types.d.ts +9 -0
  437. package/types/ethereum-network.types.d.ts +0 -1
  438. package/types/hinkal.types.cjs +1 -1
  439. package/types/hinkal.types.d.ts +1 -1
  440. package/types/hinkal.types.mjs +18 -18
  441. package/types/index.d.ts +2 -2
  442. package/types/proxy.types.d.ts +3 -6
  443. package/types/sandbox.types.cjs +1 -1
  444. package/types/sandbox.types.d.ts +39 -10
  445. package/types/sandbox.types.mjs +2 -2
  446. package/types/scheduled-transactions.types.cjs +1 -1
  447. package/types/scheduled-transactions.types.d.ts +6 -0
  448. package/types/scheduled-transactions.types.mjs +3 -2
  449. package/types/session.types.d.ts +0 -2
  450. package/types/solana.types.d.ts +0 -9
  451. package/types/token-prices.types.cjs +1 -1
  452. package/types/token-prices.types.d.ts +0 -7
  453. package/types/token-prices.types.mjs +2 -4
  454. package/webworker/snarkjsWorker/snarkjsWorkerLauncher.cjs +1 -1
  455. package/webworker/snarkjsWorker/snarkjsWorkerLauncher.mjs +1 -1
  456. package/webworker/utxoWorker/utxoWorkerLauncher.cjs +1 -1
  457. package/webworker/utxoWorker/utxoWorkerLauncher.mjs +1 -1
  458. package/webworker/viteWorkerURL.constant.cjs +3 -3
  459. package/webworker/viteWorkerURL.constant.mjs +3 -3
  460. package/webworker/zkProofWorker/zkProofWorkerLauncher.cjs +1 -1
  461. package/webworker/zkProofWorker/zkProofWorkerLauncher.mjs +1 -1
  462. package/API/get-token-price-chart-data.cjs +0 -1
  463. package/API/get-token-price-chart-data.d.ts +0 -16
  464. package/API/get-token-price-chart-data.mjs +0 -13
  465. package/API/onrampCalls.cjs +0 -1
  466. package/API/onrampCalls.d.ts +0 -20
  467. package/API/onrampCalls.mjs +0 -15
  468. package/API/unspent-utxos-calls.cjs +0 -1
  469. package/API/unspent-utxos-calls.d.ts +0 -26
  470. package/API/unspent-utxos-calls.mjs +0 -26
  471. package/data-structures/AccountActions/AccountActions.cjs +0 -1
  472. package/data-structures/AccountActions/AccountActions.d.ts +0 -18
  473. package/data-structures/AccountActions/AccountActions.mjs +0 -78
  474. package/data-structures/AccountActions/index.d.ts +0 -1
  475. package/data-structures/BlockchainEvent/BlockchainEvent.cjs +0 -1
  476. package/data-structures/BlockchainEvent/BlockchainEvent.d.ts +0 -14
  477. package/data-structures/BlockchainEvent/BlockchainEvent.mjs +0 -41
  478. package/data-structures/PublicBalance/PublicBalanceWatcher.cjs +0 -1
  479. package/data-structures/PublicBalance/PublicBalanceWatcher.d.ts +0 -20
  480. package/data-structures/PublicBalance/PublicBalanceWatcher.mjs +0 -124
  481. package/data-structures/PublicBalance/SolanaPublicBalancerWatcher.cjs +0 -1
  482. package/data-structures/PublicBalance/SolanaPublicBalancerWatcher.d.ts +0 -15
  483. package/data-structures/PublicBalance/SolanaPublicBalancerWatcher.mjs +0 -64
  484. package/data-structures/PublicBalance/index.d.ts +0 -2
  485. package/data-structures/event-service/evm/ClientBlockchainEventEmitter.cjs +0 -1
  486. package/data-structures/event-service/evm/ClientBlockchainEventEmitter.d.ts +0 -11
  487. package/data-structures/event-service/evm/ClientBlockchainEventEmitter.mjs +0 -21
  488. package/data-structures/event-service/evm/PollingBlockchainEventEmitter.cjs +0 -1
  489. package/data-structures/event-service/evm/PollingBlockchainEventEmitter.d.ts +0 -6
  490. package/data-structures/event-service/evm/PollingBlockchainEventEmitter.mjs +0 -16
  491. package/data-structures/event-service/helpers/ClientEventHelper.cjs +0 -1
  492. package/data-structures/event-service/helpers/ClientEventHelper.d.ts +0 -11
  493. package/data-structures/event-service/helpers/ClientEventHelper.mjs +0 -26
  494. package/data-structures/event-service/helpers/PollingEventHelper.cjs +0 -1
  495. package/data-structures/event-service/helpers/PollingEventHelper.d.ts +0 -5
  496. package/data-structures/event-service/helpers/PollingEventHelper.mjs +0 -14
  497. package/data-structures/event-service/solana/ClientSolanaBlockchainEventEmitter.cjs +0 -1
  498. package/data-structures/event-service/solana/ClientSolanaBlockchainEventEmitter.d.ts +0 -11
  499. package/data-structures/event-service/solana/ClientSolanaBlockchainEventEmitter.mjs +0 -22
  500. package/data-structures/event-service/solana/PollingSolanaBlockchainEventEmitter.cjs +0 -1
  501. package/data-structures/event-service/solana/PollingSolanaBlockchainEventEmitter.d.ts +0 -6
  502. package/data-structures/event-service/solana/PollingSolanaBlockchainEventEmitter.mjs +0 -16
  503. package/functions/utils/enum.utils.cjs +0 -1
  504. package/functions/utils/enum.utils.mjs +0 -14
  505. package/functions/utils/socket.utils.cjs +0 -1
  506. package/functions/utils/socket.utils.d.ts +0 -1
  507. package/functions/utils/socket.utils.mjs +0 -12
  508. package/functions/web3/crypto.cjs +0 -1
  509. package/functions/web3/crypto.d.ts +0 -1
  510. package/functions/web3/crypto.mjs +0 -7
  511. package/types/events.types.cjs +0 -1
  512. package/types/events.types.d.ts +0 -9
  513. package/types/events.types.mjs +0 -5
  514. package/types/onramp.types.cjs +0 -1
  515. package/types/onramp.types.d.ts +0 -58
  516. package/types/onramp.types.mjs +0 -4
@@ -1,18 +1,18 @@
1
- import { ethers as d } from "ethers";
2
- import { get as B, update as S } from "idb-keyval";
1
+ import { ethers as u } from "ethers";
2
+ import { get as B, update as w } from "idb-keyval";
3
3
  import { API as C } from "../../API/API.mjs";
4
- import { Logger as T } from "../../error-handling/logger.mjs";
5
- import { lowerCaseIncludes as h } from "../../functions/utils/caseInsensitive.utils.mjs";
6
- import { StorageKeys as u } from "../../types/cache.types.mjs";
4
+ import { networkRegistry as v } from "../../constants/chains.constants.mjs";
5
+ import { Logger as h } from "../../error-handling/logger.mjs";
6
+ import { lowerCaseIncludes as g } from "../../functions/utils/caseInsensitive.utils.mjs";
7
+ import { StorageKeys as k } from "../../types/cache.types.mjs";
7
8
  import { getStateKey as m } from "../../functions/utils/string.utils.mjs";
8
- import { zeroAddress as v } from "../../constants/protocol.constants.mjs";
9
- import { Mutex as x } from "async-mutex";
10
- import { isNFTToken as w } from "../../functions/utils/erc20tokenFunctions.mjs";
11
- import { tokenVisibilityStorage as _ } from "./token-visibility-db.mjs";
9
+ import { zeroAddress as x } from "../../constants/protocol.constants.mjs";
10
+ import { Mutex as _ } from "async-mutex";
11
+ import { isNFTToken as P } from "../../functions/utils/erc20tokenFunctions.mjs";
12
+ import { tokenVisibilityStorage as N } from "./token-visibility-db.mjs";
12
13
  import "../../types/circom-data.types.mjs";
13
14
  import "../../types/transactions.types.mjs";
14
15
  import "../../types/activities.types.mjs";
15
- import "../../constants/chains.constants.mjs";
16
16
  import "@coral-xyz/anchor";
17
17
  import "@solana/web3.js";
18
18
  import "circomlibjs-hinkal-fork";
@@ -22,150 +22,152 @@ import "../../functions/utils/convertIntegrationProviderToExternalActionId.mjs";
22
22
  import "../../error-handling/error-codes.constants.mjs";
23
23
  import "../crypto-keys/keys.mjs";
24
24
  import "../../constants/server.constants.mjs";
25
- import "../../API/getServerURL.mjs";
25
+ import "../../constants/vite.constants.mjs";
26
26
  import "../http/HttpClient.mjs";
27
27
  import "axios";
28
- import "../../constants/vite.constants.mjs";
29
- import "@solana/spl-token";
30
- import "ethers-v6h";
31
- import "tweetnacl";
32
- import "bs58";
28
+ import "../../API/getServerURL.mjs";
29
+ import "libsodium-wrappers";
30
+ import "process";
33
31
  import "buffer";
32
+ import "../../constants/save-depths.mjs";
33
+ import "../../constants/reorg-depths.constants.mjs";
34
+ import "../../functions/utils/mutexes.utils.mjs";
35
+ import "@solana/spl-token";
34
36
  import "../../constants/token-data/index.mjs";
35
37
  import "../../constants/contracts.constants.mjs";
36
38
  import "../../constants/coingecko.constants.mjs";
37
- import "../../constants/reorg-depths.constants.mjs";
38
39
  import "../../constants/addresses.constants.mjs";
39
40
  import "../../constants/token.limits.constants.mjs";
40
41
  import "../../constants/presale.constants.mjs";
41
42
  import "../../constants/activity.constants.mjs";
42
43
  import "../../constants/tasks.constants.mjs";
43
- import { EVENTS_INITIAL_BLOCKS as N } from "../../constants/events.constants.mjs";
44
+ import { EVENTS_INITIAL_BLOCKS as O } from "../../constants/events.constants.mjs";
44
45
  import "../../functions/utils/userAgent.mjs";
45
- import "libsodium-wrappers";
46
46
  import "multiformats";
47
- import "process";
48
- import "../../providers/EthersProviderAdapter.mjs";
49
- import "../../functions/web3/events/getInputUtxoAndBalance.mjs";
47
+ import "../../API/tenderly.api.mjs";
48
+ import "node-forge";
50
49
  import "../../functions/web3/events/getApprovedBalance.mjs";
51
50
  import "../../functions/web3/getTokenHolder.mjs";
52
- import "node-forge";
53
- class O {
51
+ import "ethers-v6h";
52
+ class K {
54
53
  fetchedTokens = {};
55
54
  updateMutexes = {};
56
- transferEventTopic = d.utils.id("Transfer(address,address,uint256)");
55
+ transferEventTopic = u.utils.id("Transfer(address,address,uint256)");
57
56
  getMutex(e) {
58
- return this.updateMutexes[e] || (this.updateMutexes[e] = new x()), this.updateMutexes[e];
57
+ return this.updateMutexes[e] || (this.updateMutexes[e] = new _()), this.updateMutexes[e];
59
58
  }
60
- async getPublicTokens(e, r) {
61
- const o = m(r, e);
62
- return (await B(u.EVENTS_PUBLIC_TOKENS))?.[o] || [];
59
+ async getPublicTokens(e, s) {
60
+ const o = m(s, e);
61
+ return (await B(k.EVENTS_PUBLIC_TOKENS))?.[o] || [];
63
62
  }
64
- getFetchedTokens(e, r) {
65
- const o = m(r, e);
63
+ getFetchedTokens(e, s) {
64
+ const o = m(s, e);
66
65
  return this.fetchedTokens[o] || [];
67
66
  }
68
- async fetchAndUpdatePublicTokens(e, r) {
69
- const o = m(e, r);
67
+ async fetchAndUpdatePublicTokens(e, s) {
68
+ const o = m(e, s);
70
69
  await this.getMutex(o).runExclusive(async () => {
71
70
  try {
72
- const s = (await this.getPublicTokens(r, e)).map((a) => a.erc20TokenAddress), { toEvents: i, fromEvents: p, latestBlock: c } = await this.getEvents(e, r), k = [...i, ...p], { erc20Tokens: g } = await this.fetchPublicTokens(k, r, s), L = await _.hideSpamsAndFetchHiddenTokensAddresses(
73
- r,
74
- g
75
- ), P = g.filter(
76
- (a) => !h(L, a.erc20TokenAddress)
71
+ const r = (await this.getPublicTokens(s, e)).map((a) => a.erc20TokenAddress), { toEvents: i, fromEvents: p, latestBlock: c } = await this.getEvents(e, s), l = [...i, ...p], { erc20Tokens: d } = await this.fetchPublicTokens(l, s, r), S = await N.hideSpamsAndFetchHiddenTokensAddresses(
72
+ s,
73
+ d
74
+ ), L = d.filter(
75
+ (a) => !g(S, a.erc20TokenAddress)
77
76
  // filter out hidden tokens
78
77
  );
79
- await S(u.EVENTS_PUBLIC_TOKENS, (a = {}) => {
80
- const l = a[o] || [], b = l.map((f) => f.erc20TokenAddress), y = P.filter(
81
- (f) => !h(b, f.erc20TokenAddress)
78
+ await w(k.EVENTS_PUBLIC_TOKENS, (a = {}) => {
79
+ const f = a[o] || [], b = f.map((T) => T.erc20TokenAddress), y = L.filter(
80
+ (T) => !g(b, T.erc20TokenAddress)
82
81
  );
83
- l.push(...y);
84
- const A = this.updateTokenIds(p, i, l), E = {
82
+ f.push(...y);
83
+ const A = this.updateTokenIds(p, i, f), E = {
85
84
  ...a,
86
85
  [o]: A
87
86
  };
88
87
  return this.fetchedTokens = E, E;
89
- }), c && await this.updateLastProcessedBlock(r, e, c);
88
+ }), c && await this.updateLastProcessedBlock(s, e, c);
90
89
  } catch (t) {
91
- T.error("public tokens db error", t);
90
+ h.error("public tokens db error", t);
92
91
  }
93
92
  });
94
93
  }
95
- async getLastProcessedBlock(e, r) {
96
- const o = await B(u.PUBLIC_TOKENS_LAST_PROCESSED_BLOCKS) || {}, n = m(r, e);
97
- return o[n] || N[e];
94
+ async getLastProcessedBlock(e, s) {
95
+ const o = await B(k.PUBLIC_TOKENS_LAST_PROCESSED_BLOCKS) || {}, n = m(s, e);
96
+ return o[n] || O[e];
98
97
  }
99
- async updateLastProcessedBlock(e, r, o) {
100
- await S(u.PUBLIC_TOKENS_LAST_PROCESSED_BLOCKS, (n = {}) => {
101
- const t = m(r, e);
98
+ async updateLastProcessedBlock(e, s, o) {
99
+ await w(k.PUBLIC_TOKENS_LAST_PROCESSED_BLOCKS, (n = {}) => {
100
+ const t = m(s, e);
102
101
  return {
103
102
  ...n,
104
103
  [t]: o
105
104
  };
106
105
  });
107
106
  }
108
- async getEvents(e, r) {
107
+ async getEvents(e, s) {
109
108
  try {
110
- const o = I(r), n = await this.getLastProcessedBlock(r, e) + 1, t = await o.getBlockNumber(), s = d.utils.hexZeroPad(e.toLowerCase(), 32), i = {
111
- topics: [this.transferEventTopic, null, s],
112
- fromBlock: n,
113
- toBlock: t
114
- }, p = {
115
- topics: [this.transferEventTopic, s, null],
116
- fromBlock: n,
117
- toBlock: t
118
- }, [c, k] = await Promise.all([o.getLogs(i), o.getLogs(p)]);
119
- return { toEvents: c, fromEvents: k, latestBlock: t };
109
+ const { fetchRpcUrl: o } = v[s];
110
+ if (!o)
111
+ throw Error("No fetchRpcUrl in PublicTokensDB");
112
+ const n = I(o), t = await this.getLastProcessedBlock(s, e) + 1, r = await n.getBlockNumber(), i = u.utils.hexZeroPad(e.toLowerCase(), 32), p = {
113
+ topics: [this.transferEventTopic, null, i],
114
+ fromBlock: t,
115
+ toBlock: r
116
+ }, c = {
117
+ topics: [this.transferEventTopic, i, null],
118
+ fromBlock: t,
119
+ toBlock: r
120
+ }, [l, d] = await Promise.all([n.getLogs(p), n.getLogs(c)]);
121
+ return { toEvents: l, fromEvents: d, latestBlock: r };
120
122
  } catch (o) {
121
- return T.error("Error fetching events:", o), { toEvents: [], fromEvents: [], latestBlock: void 0 };
123
+ return h.error("Error fetching events:", o), { toEvents: [], fromEvents: [], latestBlock: void 0 };
122
124
  }
123
125
  }
124
126
  // First get existed tokenIds from tokens
125
127
  // Then add new tokenIds from toEvents (incoming transfers)
126
128
  // Then remove tokenIds from fromEvents (outgoing transfers)
127
- updateTokenIds(e, r, o) {
129
+ updateTokenIds(e, s, o) {
128
130
  const n = /* @__PURE__ */ new Map();
129
131
  return o.forEach((t) => {
130
- if (w(t) && t.tokenIds) {
131
- const s = t.erc20TokenAddress.toLowerCase();
132
- n.set(s, [...t.tokenIds]);
132
+ if (P(t) && t.tokenIds) {
133
+ const r = t.erc20TokenAddress.toLowerCase();
134
+ n.set(r, [...t.tokenIds]);
133
135
  }
134
- }), r.forEach((t) => {
136
+ }), s.forEach((t) => {
135
137
  if (t.topics.length <= 3)
136
138
  return;
137
- const s = t.address.toLowerCase(), i = d.BigNumber.from(t.topics[3]).toString();
138
- n.has(s) || n.set(s, []), n.get(s)?.push(i);
139
+ const r = t.address.toLowerCase(), i = u.BigNumber.from(t.topics[3]).toString();
140
+ n.has(r) || n.set(r, []), n.get(r)?.push(i);
139
141
  }), e.forEach((t) => {
140
142
  if (t.topics.length <= 3)
141
143
  return;
142
- const s = t.address.toLowerCase(), i = n.get(s);
144
+ const r = t.address.toLowerCase(), i = n.get(r);
143
145
  if (i?.length) {
144
- const p = d.BigNumber.from(t.topics[3]).toString(), c = i.indexOf(p);
146
+ const p = u.BigNumber.from(t.topics[3]).toString(), c = i.indexOf(p);
145
147
  c !== -1 && i.splice(c, 1);
146
148
  }
147
149
  }), o.forEach((t) => {
148
- if (w(t)) {
149
- const s = t.erc20TokenAddress.toLowerCase(), i = n.get(s);
150
+ if (P(t)) {
151
+ const r = t.erc20TokenAddress.toLowerCase(), i = n.get(r);
150
152
  t.tokenIds = i?.length && i.length > 0 ? i : void 0;
151
153
  }
152
154
  }), o;
153
155
  }
154
- async fetchPublicTokens(e, r, o) {
156
+ async fetchPublicTokens(e, s, o) {
155
157
  try {
156
- const n = [v, ...new Set(e.map((s) => s.address))].filter(
157
- (s) => s && !h(o, s)
158
+ const n = [x, ...new Set(e.map((r) => r.address))].filter(
159
+ (r) => r && !g(o, r)
158
160
  );
159
- return n.length ? { erc20Tokens: (await C.tokensInfoCall(r, n)).filter(
160
- (s) => !!s
161
+ return n.length ? { erc20Tokens: (await C.tokensInfoCall(s, n)).filter(
162
+ (r) => !!r
161
163
  ) } : { erc20Tokens: [] };
162
164
  } catch (n) {
163
- return T.error("Error fetching public tokens:", n), { erc20Tokens: [] };
165
+ return h.error("Error fetching public tokens:", n), { erc20Tokens: [] };
164
166
  }
165
167
  }
166
168
  }
167
- const Ot = new O();
169
+ const Ot = new K();
168
170
  export {
169
- O as EventsPublicTokensDB,
171
+ K as EventsPublicTokensDB,
170
172
  Ot as eventsPublicTokensDB
171
173
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("idb-keyval"),a=require("../../error-handling/logger.cjs"),d=require("../../functions/utils/token-check.utils.cjs");class c{STORAGE_KEY="hiddenTokenAddresses";UNHIDDEN_SPAM_KEY="unhiddenSpamTokens";async getHiddenTokens(e){try{return(await i.get(this.STORAGE_KEY))?.[e]||[]}catch(r){return a.Logger.error("Error retrieving hidden tokens",r),[]}}async getHiddenTokenAddresses(e){try{return(await this.getHiddenTokens(e)).map(({erc20TokenAddress:t})=>t.toLowerCase())}catch(r){return a.Logger.error("Error retrieving hidden tokens",r),[]}}async filterOutHiddenTokens(e,r){const t=await this.getHiddenTokens(e);return r.filter(n=>!t.some(s=>d.isSameERC20Token(s,n)))}async hideToken(e){try{await i.update(this.STORAGE_KEY,r=>{const t=r??{},{chainId:n}=e;return t[n]||(t[n]=[]),t[n].some(o=>d.isSameERC20Token(o,e))||t[n].push(e),t}),e.isSpam&&await this.deleteUnhiddenSpamToken(e)}catch(r){a.Logger.error("Error hiding token",r)}}async showToken(e){try{await i.update(this.STORAGE_KEY,r=>{const{chainId:t}=e,n=r??{};return n[t]||(n[t]=[]),n[t]=n[t].filter(s=>!d.isSameERC20Token(s,e)),n}),e.isSpam&&await this.storeUnhiddenSpamToken(e)}catch(r){a.Logger.error("Error showing token",r)}}async storeUnhiddenSpamToken(e){const{chainId:r}=e;try{await i.update(this.UNHIDDEN_SPAM_KEY,t=>{const n=t??{};return n[r]||(n[r]=[]),n[r].some(o=>d.isSameERC20Token(o,e))||n[r].push(e),n})}catch(t){a.Logger.error("Error storing unhidden spam token",t)}}async deleteUnhiddenSpamToken(e){await i.update(this.UNHIDDEN_SPAM_KEY,r=>{const{chainId:t}=e,n=r??{};return n[t]=n[t]?.filter(s=>!d.isSameERC20Token(s,e)),n})}async getUnhiddenSpamTokens(e){try{return(await i.get(this.UNHIDDEN_SPAM_KEY))?.[e]||[]}catch(r){return a.Logger.error("Error retrieving unhidden spam tokens",r),[]}}async hideUnnecessarySpamTokens(e,r){const t=await this.getUnhiddenSpamTokens(e),n=r.filter(s=>s.isSpam?!t.some(o=>d.isSameERC20Token(o,s)):!1);await Promise.all(n.map(s=>this.hideToken(s)))}async hideSpamsAndFetchHiddenTokensAddresses(e,r){return await this.hideUnnecessarySpamTokens(e,r),this.getHiddenTokenAddresses(e)}}const h=new c;exports.tokenVisibilityStorage=h;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("idb-keyval"),a=require("../../error-handling/logger.cjs"),d=require("../../functions/utils/caseInsensitive.utils.cjs");class h{STORAGE_KEY="hiddenTokenAddresses";UNHIDDEN_SPAM_KEY="unhiddenSpamTokens";async getHiddenTokens(e){try{return(await i.get(this.STORAGE_KEY))?.[e]||[]}catch(r){return a.Logger.error("Error retrieving hidden tokens",r),[]}}async getHiddenTokenAddresses(e){try{return(await this.getHiddenTokens(e)).map(({erc20TokenAddress:s})=>s.toLowerCase())}catch(r){return a.Logger.error("Error retrieving hidden tokens",r),[]}}async filterOutHiddenTokens(e,r){const s=await this.getHiddenTokens(e);return r.filter(n=>!s.some(t=>d.caseInsensitiveEqual(t.erc20TokenAddress,n.erc20TokenAddress)))}async hideToken(e){try{await i.update(this.STORAGE_KEY,r=>{const s=r??{},{chainId:n}=e;return s[n]||(s[n]=[]),s[n].some(({erc20TokenAddress:o})=>d.caseInsensitiveEqual(o,e.erc20TokenAddress))||s[n].push(e),s}),e.isSpam&&await this.deleteUnhiddenSpamToken(e)}catch(r){a.Logger.error("Error hiding token",r)}}async showToken(e){try{await i.update(this.STORAGE_KEY,r=>{const{chainId:s}=e,n=r??{};return n[s]||(n[s]=[]),n[s]=n[s].filter(({erc20TokenAddress:t})=>!d.caseInsensitiveEqual(t,e.erc20TokenAddress)),n}),e.isSpam&&await this.storeUnhiddenSpamToken(e)}catch(r){a.Logger.error("Error showing token",r)}}async storeUnhiddenSpamToken(e){const{chainId:r}=e;try{await i.update(this.UNHIDDEN_SPAM_KEY,s=>{const n=s??{};return n[r]||(n[r]=[]),n[r].some(({erc20TokenAddress:o})=>d.caseInsensitiveEqual(o,e.erc20TokenAddress))||n[r].push(e),n})}catch(s){a.Logger.error("Error storing unhidden spam token",s)}}async deleteUnhiddenSpamToken(e){await i.update(this.UNHIDDEN_SPAM_KEY,r=>{const{chainId:s}=e,n=r??{};return n[s]=n[s]?.filter(({erc20TokenAddress:t})=>!d.caseInsensitiveEqual(t,e.erc20TokenAddress)),n})}async getUnhiddenSpamTokens(e){try{return(await i.get(this.UNHIDDEN_SPAM_KEY))?.[e]||[]}catch(r){return a.Logger.error("Error retrieving unhidden spam tokens",r),[]}}async hideUnnecessarySpamTokens(e,r){const s=await this.getUnhiddenSpamTokens(e),n=r.filter(({erc20TokenAddress:t,isSpam:o})=>o?!s.some(({erc20TokenAddress:c})=>d.caseInsensitiveEqual(t,c)):!1);await Promise.all(n.map(t=>this.hideToken(t)))}async hideSpamsAndFetchHiddenTokensAddresses(e,r){return await this.hideUnnecessarySpamTokens(e,r),this.getHiddenTokenAddresses(e)}}const u=new h;exports.tokenVisibilityStorage=u;
@@ -1,32 +1,38 @@
1
- import { get as h, update as o } from "idb-keyval";
1
+ import { get as c, update as o } from "idb-keyval";
2
2
  import { Logger as a } from "../../error-handling/logger.mjs";
3
- import { isSameERC20Token as i } from "../../functions/utils/token-check.utils.mjs";
4
- class c {
3
+ import { caseInsensitiveEqual as d } from "../../functions/utils/caseInsensitive.utils.mjs";
4
+ class T {
5
5
  STORAGE_KEY = "hiddenTokenAddresses";
6
6
  UNHIDDEN_SPAM_KEY = "unhiddenSpamTokens";
7
7
  async getHiddenTokens(e) {
8
8
  try {
9
- return (await h(this.STORAGE_KEY))?.[e] || [];
9
+ return (await c(this.STORAGE_KEY))?.[e] || [];
10
10
  } catch (r) {
11
11
  return a.error("Error retrieving hidden tokens", r), [];
12
12
  }
13
13
  }
14
14
  async getHiddenTokenAddresses(e) {
15
15
  try {
16
- return (await this.getHiddenTokens(e)).map(({ erc20TokenAddress: t }) => t.toLowerCase());
16
+ return (await this.getHiddenTokens(e)).map(({ erc20TokenAddress: s }) => s.toLowerCase());
17
17
  } catch (r) {
18
18
  return a.error("Error retrieving hidden tokens", r), [];
19
19
  }
20
20
  }
21
21
  async filterOutHiddenTokens(e, r) {
22
- const t = await this.getHiddenTokens(e);
23
- return r.filter((n) => !t.some((s) => i(s, n)));
22
+ const s = await this.getHiddenTokens(e);
23
+ return r.filter(
24
+ (n) => !s.some(
25
+ (t) => d(t.erc20TokenAddress, n.erc20TokenAddress)
26
+ )
27
+ );
24
28
  }
25
29
  async hideToken(e) {
26
30
  try {
27
31
  await o(this.STORAGE_KEY, (r) => {
28
- const t = r ?? {}, { chainId: n } = e;
29
- return t[n] || (t[n] = []), t[n].some((d) => i(d, e)) || t[n].push(e), t;
32
+ const s = r ?? {}, { chainId: n } = e;
33
+ return s[n] || (s[n] = []), s[n].some(
34
+ ({ erc20TokenAddress: i }) => d(i, e.erc20TokenAddress)
35
+ ) || s[n].push(e), s;
30
36
  }), e.isSpam && await this.deleteUnhiddenSpamToken(e);
31
37
  } catch (r) {
32
38
  a.error("Error hiding token", r);
@@ -35,8 +41,10 @@ class c {
35
41
  async showToken(e) {
36
42
  try {
37
43
  await o(this.STORAGE_KEY, (r) => {
38
- const { chainId: t } = e, n = r ?? {};
39
- return n[t] || (n[t] = []), n[t] = n[t].filter((s) => !i(s, e)), n;
44
+ const { chainId: s } = e, n = r ?? {};
45
+ return n[s] || (n[s] = []), n[s] = n[s].filter(
46
+ ({ erc20TokenAddress: t }) => !d(t, e.erc20TokenAddress)
47
+ ), n;
40
48
  }), e.isSpam && await this.storeUnhiddenSpamToken(e);
41
49
  } catch (r) {
42
50
  a.error("Error showing token", r);
@@ -45,38 +53,44 @@ class c {
45
53
  async storeUnhiddenSpamToken(e) {
46
54
  const { chainId: r } = e;
47
55
  try {
48
- await o(this.UNHIDDEN_SPAM_KEY, (t) => {
49
- const n = t ?? {};
50
- return n[r] || (n[r] = []), n[r].some((d) => i(d, e)) || n[r].push(e), n;
56
+ await o(this.UNHIDDEN_SPAM_KEY, (s) => {
57
+ const n = s ?? {};
58
+ return n[r] || (n[r] = []), n[r].some(
59
+ ({ erc20TokenAddress: i }) => d(i, e.erc20TokenAddress)
60
+ ) || n[r].push(e), n;
51
61
  });
52
- } catch (t) {
53
- a.error("Error storing unhidden spam token", t);
62
+ } catch (s) {
63
+ a.error("Error storing unhidden spam token", s);
54
64
  }
55
65
  }
56
66
  async deleteUnhiddenSpamToken(e) {
57
67
  await o(this.UNHIDDEN_SPAM_KEY, (r) => {
58
- const { chainId: t } = e, n = r ?? {};
59
- return n[t] = n[t]?.filter((s) => !i(s, e)), n;
68
+ const { chainId: s } = e, n = r ?? {};
69
+ return n[s] = n[s]?.filter(
70
+ ({ erc20TokenAddress: t }) => !d(t, e.erc20TokenAddress)
71
+ ), n;
60
72
  });
61
73
  }
62
74
  async getUnhiddenSpamTokens(e) {
63
75
  try {
64
- return (await h(this.UNHIDDEN_SPAM_KEY))?.[e] || [];
76
+ return (await c(this.UNHIDDEN_SPAM_KEY))?.[e] || [];
65
77
  } catch (r) {
66
78
  return a.error("Error retrieving unhidden spam tokens", r), [];
67
79
  }
68
80
  }
69
81
  // From the list of tokens, hide the spam tokens that are not in the unhidden spam tokens list
70
82
  async hideUnnecessarySpamTokens(e, r) {
71
- const t = await this.getUnhiddenSpamTokens(e), n = r.filter((s) => s.isSpam ? !t.some((d) => i(d, s)) : !1);
72
- await Promise.all(n.map((s) => this.hideToken(s)));
83
+ const s = await this.getUnhiddenSpamTokens(e), n = r.filter(({ erc20TokenAddress: t, isSpam: i }) => i ? !s.some(
84
+ ({ erc20TokenAddress: h }) => d(t, h)
85
+ ) : !1);
86
+ await Promise.all(n.map((t) => this.hideToken(t)));
73
87
  }
74
88
  // First hide spam tokens from the list, then fetch the all hidden tokens addresses
75
89
  async hideSpamsAndFetchHiddenTokensAddresses(e, r) {
76
90
  return await this.hideUnnecessarySpamTokens(e, r), this.getHiddenTokenAddresses(e);
77
91
  }
78
92
  }
79
- const y = new c();
93
+ const y = new T();
80
94
  export {
81
95
  y as tokenVisibilityStorage
82
96
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("@solana/web3.js"),p=require("bs58"),s=require("ethers"),P=require("ethers-v6h"),b=require("libsodium-wrappers"),d=require("../../constants/protocol.constants.cjs"),v=require("../../crypto/babyJub.cjs"),n=require("../../crypto/poseidon.cjs"),g=require("../cacheDevices/AttachableMemoryCacheDevice.cjs"),h=require("./keyUtils.cjs"),l=new g.AttachableMemoryCacheDevice,y=new g.AttachableMemoryCacheDevice,m={privateKey:"",publicKey:""};class q{signature;constructor(e){this.signature=e}getSignature(){return this.requireSignature(),this.signature}setSignature(e){this.signature=e}requireSignature(){if(!this.signature)throw Error("No signature provided")}verifyMessage(e){return this.requireSignature(),s.utils.verifyMessage(e,this.signature)}getShieldedPrivateKey=()=>(this.requireSignature(),s.ethers.utils.keccak256(this.signature));getShieldedPublicKey=()=>(this.requireSignature(),n.poseidonHash(this.getShieldedPrivateKey()));getDerivedEthereumAddress=()=>(this.requireSignature(),new P.ethers.Wallet(this.getShieldedPrivateKey()).address);getDerivedSolanaPublicKey=()=>(this.requireSignature(),u.Keypair.fromSeed(s.utils.arrayify(this.getShieldedPrivateKey())).publicKey.toBase58());getAccessKey=()=>(this.requireSignature(),n.poseidonHash(this.getShieldedPrivateKey(),this.getShieldedPublicKey()));getSignerPrivateKeyFromNonce=e=>{this.requireSignature();const t=n.poseidonHash(e,this.getShieldedPrivateKey(),this.getShieldedPublicKey());return s.utils.keccak256(s.utils.toUtf8Bytes(t))};getSignerSolanaPrivateKeyFromNonce=e=>{const t=this.getSignerPrivateKeyFromNonce(e),i=s.utils.arrayify(t),r=u.Keypair.fromSeed(i);return p.encode(r.secretKey)};getWalletSalt=e=>(this.requireSignature(),n.poseidonHash(this.getShieldedPublicKey(),this.getShieldedPrivateKey(),e));getInHinkalAddress=e=>{this.requireSignature();const t=n.poseidonHash(this.getShieldedPrivateKey(),e);return BigInt(t)};getBackendToken=()=>(this.requireSignature(),n.poseidonHash(this.getAccessKey(),this.getShieldedPublicKey()));static getRandomizedStealthPair=l.attach((e,t)=>{const i=v.babyJubInstance(),r=BigInt(t)%d.CIRCOM_P,c=e*r%d.CIRCOM_P,a=i.mulPointEscalar(i.Base8,e),o=i.mulPointEscalar(i.Base8,c),S=[BigInt(i.F.toString(a[0])),BigInt(i.F.toString(a[1]))],K=[BigInt(i.F.toString(o[0])),BigInt(i.F.toString(o[1]))];return{H0:S,H1:K}});static getStealthAddressCompressedPoints=(e,t)=>{const{H0:i,H1:r}=this.getRandomizedStealthPair(e,t),[c,a]=[i,r].map(o=>BigInt(o[1])+2n**255n*h.getCircomSign(o[0]));return{h0:c,h1:a}};static getStealthAddress=y.attach((e,t)=>{const{H0:i,H1:r}=this.getRandomizedStealthPair(e,t),a=[2n*h.getCircomSign(i[0])+h.getCircomSign(r[0]),i[1],r[1]];return n.poseidonHash(...a)});static getStealthAddressWithEKey=(e,t)=>({stealthAddress:this.getStealthAddress(e,t),encryptionKey:this.getEncryptionKeyPair(t).publicKey});static checkSignature=(e,t,i,r)=>{const{h0:c,h1:a}=this.getStealthAddressCompressedPoints(e,r);return t===c&&i===a};static getEncryptionKeyPair=e=>{const t=b.crypto_box_seed_keypair(s.ethers.utils.arrayify(e));return{privateKey:s.ethers.utils.hexlify(t.privateKey),publicKey:s.ethers.utils.hexlify(t.publicKey)}}}exports.EncryptionKeyPairDefaultValue=m;exports.UserKeys=q;exports.stealthAddressCacheDevice=y;exports.stealthPairCacheDevice=l;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("ethers"),w=require("libsodium-wrappers"),p=require("../../constants/protocol.constants.cjs"),m=require("../../crypto/babyJub.cjs"),u=require("../../crypto/poseidon.cjs"),h=require("./keyUtils.cjs"),v=require("../cacheDevices/AttachableMemoryCacheDevice.cjs"),d=require("ethers-v6h"),g=require("../../constants/chains.constants.cjs"),c=require("@solana/web3.js"),b=require("tweetnacl"),K=require("bs58"),q=require("../../functions/utils/create-provider.cjs"),P=new v.AttachableMemoryCacheDevice,f=new v.AttachableMemoryCacheDevice,k={privateKey:"",publicKey:""};class l{signature;constructor(e){this.signature=e}getSignature(){return this.requireSignature(),this.signature}setSignature(e){this.signature=e}requireSignature(){if(!this.signature)throw Error("No signature provided")}verifyMessage(e){return this.requireSignature(),a.utils.verifyMessage(e,this.signature)}getShieldedPrivateKey=()=>(this.requireSignature(),a.ethers.utils.keccak256(this.signature));getShieldedPublicKey=()=>(this.requireSignature(),u.poseidonHash(this.getShieldedPrivateKey()));getDerivedEthereumAddress=()=>(this.requireSignature(),new d.ethers.Wallet(this.getShieldedPrivateKey()).address);getDerivedSolanaPublicKey=()=>(this.requireSignature(),c.Keypair.fromSeed(a.utils.arrayify(this.getShieldedPrivateKey())).publicKey.toBase58());getAccessKey=()=>(this.requireSignature(),u.poseidonHash(this.getShieldedPrivateKey(),this.getShieldedPublicKey()));getSignerPrivateKeyFromNonce=e=>{this.requireSignature();const r=u.poseidonHash(e,this.getShieldedPrivateKey(),this.getShieldedPublicKey());return a.utils.keccak256(a.utils.toUtf8Bytes(r))};getSignerSolanaPrivateKeyFromNonce=e=>{const r=this.getSignerPrivateKeyFromNonce(e),t=a.utils.arrayify(r),i=c.Keypair.fromSeed(t);return K.encode(i.secretKey)};getEvmPrivateKeyFromSolanaPrivateKey=e=>{const t=K.decode(e).slice(0,32);return d.hexlify(t)};static getSignerFromPrivateKey=(e,r)=>{if(g.isSolanaLike(e)){const i=a.utils.arrayify(r);return c.Keypair.fromSeed(i)}return new d.ethers.Wallet(r)};static getSignerAddressFromPrivateKey(e,r){const t=l.getSignerFromPrivateKey(e,r);return t instanceof c.Keypair?t.publicKey.toString():t.address}static signMessageFromPrivateKey=async(e,r,t)=>{const i=l.getSignerFromPrivateKey(e,r);if(i instanceof c.Keypair){const s=a.utils.isHexString(t)?a.utils.arrayify(t):new TextEncoder().encode(t),o=b.sign.detached(s,i.secretKey);return`0x${Buffer.from(o).toString("hex")}`}const n=a.utils.isHexString(t)?a.utils.arrayify(t):t;return i.signMessage(n)};static signSolanaTransactionFromPrivateKey=(e,r,t)=>{if(!g.isSolanaLike(e))throw new Error("Solana transaction signing is only available for Solana chains");const i=l.getSignerFromPrivateKey(e,r);if(!(i instanceof c.Keypair))throw new Error("Unable to derive Solana keypair for signing");t.sign([i])};static sendAndSignTransactionFromPrivateKey=async(e,r,t)=>{const i=l.getSignerFromPrivateKey(e,r),{fetchRpcUrl:n}=g.networkRegistry[e];if(!n)throw new Error("No RPC URL found for chainId");if(i instanceof c.Keypair){if(!(t instanceof c.VersionedTransaction))throw new Error("Invalid transaction type for Solana");return t.sign([i]),await q.createCustomSolanaConnection(n).sendRawTransaction(t.serialize())}if(t instanceof c.VersionedTransaction)throw new Error("Invalid transaction type for EVM");const s=new d.ethers.JsonRpcProvider(n);return(await i.connect(s).sendTransaction(t)).hash};static signTypedDataFromPrivateKey=async(e,r,t,i,n)=>{if(g.isSolanaLike(e))throw new Error("Solana does not support typed data");return await l.getSignerFromPrivateKey(e,r).signTypedData(t,i,n)};static authorizeDelegation=async(e,r,t,i)=>{if(g.isSolanaLike(e))throw new Error("Solana does not support delegation");const n=new d.ethers.JsonRpcProvider(g.networkRegistry[e].fetchRpcUrl);return await l.getSignerFromPrivateKey(e,r).connect(n).authorize({address:t,...i!==void 0&&{nonce:i}})};getWalletSalt=e=>(this.requireSignature(),u.poseidonHash(this.getShieldedPublicKey(),this.getShieldedPrivateKey(),e));getInHinkalAddress=e=>{this.requireSignature();const r=u.poseidonHash(this.getShieldedPrivateKey(),e);return BigInt(r)};getBackendToken=()=>(this.requireSignature(),u.poseidonHash(this.getAccessKey(),this.getShieldedPublicKey()));static getRandomizedStealthPair=P.attach((e,r)=>{const t=m.babyJubInstance(),i=BigInt(r)%p.CIRCOM_P,n=e*i%p.CIRCOM_P,s=t.mulPointEscalar(t.Base8,e),o=t.mulPointEscalar(t.Base8,n),y=[BigInt(t.F.toString(s[0])),BigInt(t.F.toString(s[1]))],S=[BigInt(t.F.toString(o[0])),BigInt(t.F.toString(o[1]))];return{H0:y,H1:S}});static getStealthAddressCompressedPoints=(e,r)=>{const{H0:t,H1:i}=this.getRandomizedStealthPair(e,r),[n,s]=[t,i].map(o=>BigInt(o[1])+2n**255n*h.getCircomSign(o[0]));return{h0:n,h1:s}};static getStealthAddress=f.attach((e,r)=>{const{H0:t,H1:i}=this.getRandomizedStealthPair(e,r),s=[2n*h.getCircomSign(t[0])+h.getCircomSign(i[0]),t[1],i[1]];return u.poseidonHash(...s)});static getStealthAddressWithEKey=(e,r)=>({stealthAddress:this.getStealthAddress(e,r),encryptionKey:this.getEncryptionKeyPair(r).publicKey});static checkSignature=(e,r,t,i)=>{const{h0:n,h1:s}=this.getStealthAddressCompressedPoints(e,i);return r===n&&t===s};static getEncryptionKeyPair=e=>{const r=w.crypto_box_seed_keypair(a.ethers.utils.arrayify(e));return{privateKey:a.ethers.utils.hexlify(r.privateKey),publicKey:a.ethers.utils.hexlify(r.publicKey)}}}exports.EncryptionKeyPairDefaultValue=k;exports.UserKeys=l;exports.stealthAddressCacheDevice=f;exports.stealthPairCacheDevice=P;
@@ -1,4 +1,7 @@
1
+ import { ethers } from 'ethers';
1
2
  import { AttachableMemoryCacheDevice } from '../cacheDevices/AttachableMemoryCacheDevice';
3
+ import { ethers as ethersV6 } from 'ethers-v6h';
4
+ import { VersionedTransaction } from '@solana/web3.js';
2
5
  export declare const stealthPairCacheDevice: AttachableMemoryCacheDevice<{
3
6
  H0: [bigint, bigint];
4
7
  H1: [bigint, bigint];
@@ -44,6 +47,14 @@ export declare class UserKeys {
44
47
  getAccessKey: () => string;
45
48
  getSignerPrivateKeyFromNonce: (walletNonce: bigint) => string;
46
49
  getSignerSolanaPrivateKeyFromNonce: (walletNonce: bigint) => string;
50
+ getEvmPrivateKeyFromSolanaPrivateKey: (solanaPrivateKey: string) => string;
51
+ private static getSignerFromPrivateKey;
52
+ static getSignerAddressFromPrivateKey(chainId: number, privateKey: string): string;
53
+ static signMessageFromPrivateKey: (chainId: number, privateKey: string, message: string) => Promise<string>;
54
+ static signSolanaTransactionFromPrivateKey: (chainId: number, privateKey: string, transaction: VersionedTransaction) => void;
55
+ static sendAndSignTransactionFromPrivateKey: (chainId: number, privateKey: string, transaction: ethersV6.TransactionRequest | VersionedTransaction) => Promise<string>;
56
+ static signTypedDataFromPrivateKey: (chainId: number, privateKey: string, domain: ethers.TypedDataDomain, types: Record<string, Array<ethers.TypedDataField>>, value: Record<string, any>) => Promise<string>;
57
+ static authorizeDelegation: (chainId: number, privateKey: string, implementation: string, nonce?: number) => Promise<ethersV6.Authorization>;
47
58
  getWalletSalt: (walletNonce: bigint) => string;
48
59
  /**
49
60
  * generate inHinkalAddress - a user unique address linking him with a specific app