@hinkal/common 0.3.1 → 0.3.2

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 (410) hide show
  1. package/common/src/API/API.cjs +1 -1
  2. package/common/src/API/API.d.ts +9 -34
  3. package/common/src/API/API.mjs +75 -100
  4. package/common/src/API/callOneInchAPI.cjs +1 -1
  5. package/common/src/API/callOneInchAPI.d.ts +6 -0
  6. package/common/src/API/callOneInchAPI.mjs +5 -2
  7. package/common/src/API/dashboardAccountMemberCalls.cjs +1 -1
  8. package/common/src/API/dashboardAccountMemberCalls.d.ts +15 -0
  9. package/common/src/API/dashboardAccountMemberCalls.mjs +5 -2
  10. package/common/src/API/dashboardPayoutCalls.cjs +1 -1
  11. package/common/src/API/dashboardPayoutCalls.d.ts +2 -1
  12. package/common/src/API/dashboardPayoutCalls.mjs +4 -1
  13. package/common/src/API/enclaveUtxoCalls.d.ts +9 -1
  14. package/common/src/API/getWebsiteURL.d.ts +1 -2
  15. package/common/src/API/index.cjs +1 -1
  16. package/common/src/API/index.d.ts +1 -2
  17. package/common/src/API/index.mjs +2 -3
  18. package/common/src/API/payoutNotificationStateCalls.cjs +1 -0
  19. package/common/src/API/payoutNotificationStateCalls.d.ts +10 -0
  20. package/common/src/API/payoutNotificationStateCalls.mjs +10 -0
  21. package/common/src/API/proxyAccountsCalls.cjs +1 -1
  22. package/common/src/API/proxyAccountsCalls.d.ts +2 -3
  23. package/common/src/API/proxyAccountsCalls.mjs +11 -10
  24. package/common/src/API/rewardsUserCalls.cjs +1 -1
  25. package/common/src/API/rewardsUserCalls.d.ts +1 -38
  26. package/common/src/API/rewardsUserCalls.mjs +2 -9
  27. package/common/src/API/scheduled-transactions-calls.d.ts +1 -0
  28. package/common/src/API/temporaryWalletCalls.cjs +1 -1
  29. package/common/src/API/temporaryWalletCalls.mjs +8 -8
  30. package/common/src/API/weeklyAnalyticCalls.cjs +1 -1
  31. package/common/src/API/weeklyAnalyticCalls.d.ts +1 -11
  32. package/common/src/API/weeklyAnalyticCalls.mjs +2 -5
  33. package/common/src/constants/chains.constants.cjs +1 -1
  34. package/common/src/constants/chains.constants.mjs +3 -10
  35. package/common/src/constants/contracts.constants.cjs +1 -1
  36. package/common/src/constants/contracts.constants.mjs +19 -32
  37. package/common/src/constants/deploy-data/deploy-data-arbMainnet.json.cjs +1 -1
  38. package/common/src/constants/deploy-data/deploy-data-arbMainnet.json.mjs +8 -9
  39. package/common/src/constants/deploy-data/deploy-data-base.json.cjs +1 -1
  40. package/common/src/constants/deploy-data/deploy-data-base.json.mjs +8 -9
  41. package/common/src/constants/deploy-data/deploy-data-ethMainnet.json.cjs +1 -1
  42. package/common/src/constants/deploy-data/deploy-data-ethMainnet.json.mjs +8 -9
  43. package/common/src/constants/deploy-data/deploy-data-optimism.json.cjs +1 -1
  44. package/common/src/constants/deploy-data/deploy-data-optimism.json.mjs +8 -9
  45. package/common/src/constants/deploy-data/deploy-data-optimismTest.json.cjs +1 -1
  46. package/common/src/constants/deploy-data/deploy-data-optimismTest.json.mjs +8 -9
  47. package/common/src/constants/deploy-data/deploy-data-polygon.json.cjs +1 -1
  48. package/common/src/constants/deploy-data/deploy-data-polygon.json.mjs +8 -9
  49. package/common/src/constants/deploy-data/shared-deploy-data-evm.json.cjs +1 -1
  50. package/common/src/constants/deploy-data/shared-deploy-data-evm.json.mjs +19 -45
  51. package/common/src/constants/deploy-data/shared-deploy-data-solana.json.cjs +1 -1
  52. package/common/src/constants/deploy-data/shared-deploy-data-solana.json.mjs +1 -1
  53. package/common/src/constants/deploy-data/shared-deploy-data-tron.json.cjs +1 -1
  54. package/common/src/constants/deploy-data/shared-deploy-data-tron.json.mjs +7 -18
  55. package/common/src/constants/enclaveAuth.constants.d.ts +5 -0
  56. package/common/src/constants/index.cjs +1 -1
  57. package/common/src/constants/index.d.ts +1 -2
  58. package/common/src/constants/index.mjs +0 -1
  59. package/common/src/constants/mediaUrls.constants.d.ts +0 -1
  60. package/common/src/constants/pay.constants.d.ts +1 -0
  61. package/common/src/constants/protocol.constants.cjs +2 -1
  62. package/common/src/constants/protocol.constants.d.ts +7 -5
  63. package/common/src/constants/protocol.constants.mjs +4 -11
  64. package/common/src/constants/rewards.constants.d.ts +0 -13
  65. package/common/src/constants/server.constants.cjs +1 -1
  66. package/common/src/constants/server.constants.d.ts +5 -28
  67. package/common/src/constants/server.constants.mjs +10 -41
  68. package/common/src/crypto/ecdh.cjs +1 -1
  69. package/common/src/crypto/ecdh.mjs +2 -9
  70. package/common/src/crypto/index.cjs +1 -1
  71. package/common/src/crypto/index.mjs +1 -1
  72. package/common/src/data-structures/Hinkal/Hinkal.cjs +1 -1
  73. package/common/src/data-structures/Hinkal/Hinkal.d.ts +4 -8
  74. package/common/src/data-structures/Hinkal/Hinkal.mjs +83 -99
  75. package/common/src/data-structures/Hinkal/IHinkal.d.ts +5 -9
  76. package/common/src/data-structures/Hinkal/handleAutoDepositBack.cjs +1 -1
  77. package/common/src/data-structures/Hinkal/handleAutoDepositBack.mjs +22 -22
  78. package/common/src/data-structures/Hinkal/hinkalBridgePrivateToPrivate.cjs +1 -1
  79. package/common/src/data-structures/Hinkal/hinkalBridgePrivateToPrivate.mjs +21 -21
  80. package/common/src/data-structures/Hinkal/hinkalClaimUtxo.cjs +1 -1
  81. package/common/src/data-structures/Hinkal/hinkalClaimUtxo.mjs +6 -9
  82. package/common/src/data-structures/Hinkal/hinkalDeposit.cjs +1 -1
  83. package/common/src/data-structures/Hinkal/hinkalDeposit.mjs +4 -7
  84. package/common/src/data-structures/Hinkal/hinkalDepositAndBridge.cjs +1 -1
  85. package/common/src/data-structures/Hinkal/hinkalDepositAndBridge.mjs +64 -66
  86. package/common/src/data-structures/Hinkal/hinkalDepositAndWithdraw.cjs +1 -1
  87. package/common/src/data-structures/Hinkal/hinkalDepositAndWithdraw.d.ts +1 -1
  88. package/common/src/data-structures/Hinkal/hinkalDepositAndWithdraw.mjs +47 -51
  89. package/common/src/data-structures/Hinkal/hinkalDepositOnChainUtxos.cjs +1 -1
  90. package/common/src/data-structures/Hinkal/hinkalDepositOnChainUtxos.d.ts +1 -1
  91. package/common/src/data-structures/Hinkal/hinkalDepositOnChainUtxos.mjs +33 -43
  92. package/common/src/data-structures/Hinkal/hinkalPalEvmDeposit.d.ts +1 -1
  93. package/common/src/data-structures/Hinkal/hinkalPalTronDepositPrepare.d.ts +2 -2
  94. package/common/src/data-structures/Hinkal/hinkalPrivateWallet.cjs +1 -1
  95. package/common/src/data-structures/Hinkal/hinkalPrivateWallet.mjs +6 -6
  96. package/common/src/data-structures/Hinkal/hinkalProoflessDeposit.cjs +1 -1
  97. package/common/src/data-structures/Hinkal/hinkalProoflessDeposit.d.ts +2 -2
  98. package/common/src/data-structures/Hinkal/hinkalProoflessDeposit.mjs +107 -94
  99. package/common/src/data-structures/Hinkal/hinkalProoflessDeposit.utils.cjs +1 -1
  100. package/common/src/data-structures/Hinkal/hinkalProoflessDeposit.utils.d.ts +3 -0
  101. package/common/src/data-structures/Hinkal/hinkalProoflessDeposit.utils.mjs +26 -14
  102. package/common/src/data-structures/Hinkal/hinkalProxyToPrivate.cjs +1 -1
  103. package/common/src/data-structures/Hinkal/hinkalProxyToPrivate.mjs +4 -4
  104. package/common/src/data-structures/Hinkal/hinkalSolanaClaimUtxo.cjs +1 -1
  105. package/common/src/data-structures/Hinkal/hinkalSolanaClaimUtxo.mjs +4 -9
  106. package/common/src/data-structures/Hinkal/hinkalSolanaDeposit.cjs +1 -1
  107. package/common/src/data-structures/Hinkal/hinkalSolanaDeposit.mjs +26 -32
  108. package/common/src/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.cjs +1 -1
  109. package/common/src/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.mjs +43 -42
  110. package/common/src/data-structures/Hinkal/hinkalSolanaTransfer.cjs +1 -1
  111. package/common/src/data-structures/Hinkal/hinkalSolanaTransfer.mjs +4 -4
  112. package/common/src/data-structures/Hinkal/hinkalTransfer.cjs +1 -1
  113. package/common/src/data-structures/Hinkal/hinkalTransfer.mjs +6 -6
  114. package/common/src/data-structures/Hinkal/hinkalWithdraw.cjs +1 -1
  115. package/common/src/data-structures/Hinkal/hinkalWithdraw.mjs +22 -26
  116. package/common/src/data-structures/Hinkal/hinkalWithdrawStuckUtxos.cjs +1 -1
  117. package/common/src/data-structures/Hinkal/hinkalWithdrawStuckUtxos.mjs +21 -24
  118. package/common/src/data-structures/Hinkal/index.d.ts +0 -1
  119. package/common/src/data-structures/Hinkal/resetMerkleTrees.cjs +1 -1
  120. package/common/src/data-structures/Hinkal/resetMerkleTrees.mjs +4 -4
  121. package/common/src/data-structures/IndexedDB/activity-db.cjs +1 -1
  122. package/common/src/data-structures/IndexedDB/activity-db.mjs +34 -34
  123. package/common/src/data-structures/IndexedDB/contact-db.cjs +1 -1
  124. package/common/src/data-structures/IndexedDB/contact-db.d.ts +0 -1
  125. package/common/src/data-structures/IndexedDB/contact-db.mjs +14 -28
  126. package/common/src/data-structures/IndexedDB/key-val-store.cjs +1 -1
  127. package/common/src/data-structures/IndexedDB/key-val-store.d.ts +2 -0
  128. package/common/src/data-structures/IndexedDB/key-val-store.mjs +14 -0
  129. package/common/src/data-structures/IndexedDB/private-balances-db.cjs +1 -1
  130. package/common/src/data-structures/IndexedDB/private-balances-db.d.ts +1 -0
  131. package/common/src/data-structures/IndexedDB/private-balances-db.mjs +3 -0
  132. package/common/src/data-structures/IndexedDB/signatures-db.cjs +1 -1
  133. package/common/src/data-structures/IndexedDB/signatures-db.mjs +11 -11
  134. package/common/src/data-structures/MultiThreadedUtxoUtils/MultiThreadedUtxoUtils.cjs +1 -1
  135. package/common/src/data-structures/MultiThreadedUtxoUtils/MultiThreadedUtxoUtils.mjs +25 -25
  136. package/common/src/data-structures/TokenDBs/AlchemyPublicTokensDB.cjs +1 -1
  137. package/common/src/data-structures/TokenDBs/AlchemyPublicTokensDB.mjs +12 -12
  138. package/common/src/data-structures/TokenDBs/ArcPublicTokensDB.cjs +1 -1
  139. package/common/src/data-structures/TokenDBs/ArcPublicTokensDB.mjs +12 -12
  140. package/common/src/data-structures/TokenDBs/EventsPublicTokensDB.cjs +1 -1
  141. package/common/src/data-structures/TokenDBs/EventsPublicTokensDB.mjs +24 -24
  142. package/common/src/data-structures/TokenDBs/PrivateTokensDB.cjs +1 -1
  143. package/common/src/data-structures/TokenDBs/PrivateTokensDB.mjs +14 -14
  144. package/common/src/data-structures/TokenDBs/TronPublicTokensDB.cjs +1 -1
  145. package/common/src/data-structures/TokenDBs/TronPublicTokensDB.mjs +14 -14
  146. package/common/src/data-structures/WalletManager/WalletManager.d.ts +1 -0
  147. package/common/src/data-structures/cacheDevices/BaseCacheDevice.cjs +1 -1
  148. package/common/src/data-structures/cacheDevices/BaseCacheDevice.d.ts +1 -0
  149. package/common/src/data-structures/cacheDevices/BaseCacheDevice.mjs +3 -0
  150. package/common/src/data-structures/cacheDevices/FileCacheDevice.cjs +1 -1
  151. package/common/src/data-structures/cacheDevices/FileCacheDevice.d.ts +3 -0
  152. package/common/src/data-structures/cacheDevices/FileCacheDevice.mjs +12 -3
  153. package/common/src/data-structures/crypto-keys/decodeUTXO.cjs +1 -1
  154. package/common/src/data-structures/crypto-keys/decodeUTXO.d.ts +8 -9
  155. package/common/src/data-structures/crypto-keys/decodeUTXO.mjs +38 -48
  156. package/common/src/data-structures/crypto-keys/encryptDecryptUtxo.cjs +1 -1
  157. package/common/src/data-structures/crypto-keys/encryptDecryptUtxo.d.ts +2 -3
  158. package/common/src/data-structures/crypto-keys/encryptDecryptUtxo.mjs +26 -22
  159. package/common/src/data-structures/crypto-keys/keys.cjs +1 -1
  160. package/common/src/data-structures/crypto-keys/keys.d.ts +12 -27
  161. package/common/src/data-structures/crypto-keys/keys.mjs +61 -79
  162. package/common/src/data-structures/event-service/evm/BlockchainEventEmitter.cjs +1 -1
  163. package/common/src/data-structures/event-service/evm/BlockchainEventEmitter.d.ts +1 -2
  164. package/common/src/data-structures/event-service/evm/BlockchainEventEmitter.mjs +4 -10
  165. package/common/src/data-structures/event-service/evm/ClientBlockchainEventEmitter.cjs +1 -1
  166. package/common/src/data-structures/event-service/evm/ClientBlockchainEventEmitter.d.ts +1 -1
  167. package/common/src/data-structures/event-service/evm/ClientBlockchainEventEmitter.mjs +2 -2
  168. package/common/src/data-structures/private-balances/HinkalPrivateBalanceController.cjs +1 -1
  169. package/common/src/data-structures/private-balances/HinkalPrivateBalanceController.mjs +40 -40
  170. package/common/src/data-structures/provider-adapter/IProviderAdapter.d.ts +0 -1
  171. package/common/src/data-structures/utxo/Utxo.cjs +1 -1
  172. package/common/src/data-structures/utxo/Utxo.d.ts +1 -4
  173. package/common/src/data-structures/utxo/Utxo.mjs +7 -17
  174. package/common/src/error-handling/error-codes.constants.cjs +2 -2
  175. package/common/src/error-handling/error-codes.constants.d.ts +0 -3
  176. package/common/src/error-handling/error-codes.constants.mjs +13 -18
  177. package/common/src/error-handling/index.cjs +1 -1
  178. package/common/src/error-handling/index.d.ts +1 -0
  179. package/common/src/error-handling/index.mjs +1 -0
  180. package/common/src/functions/auto-deposit-back-helpers/select-gas-token.cjs +1 -1
  181. package/common/src/functions/auto-deposit-back-helpers/select-gas-token.mjs +8 -8
  182. package/common/src/functions/index.cjs +1 -1
  183. package/common/src/functions/index.mjs +1 -1
  184. package/common/src/functions/pre-transaction/buildCommitmentValidationData.cjs +1 -1
  185. package/common/src/functions/pre-transaction/buildCommitmentValidationData.mjs +36 -38
  186. package/common/src/functions/pre-transaction/outputUtxoProcessing.cjs +1 -1
  187. package/common/src/functions/pre-transaction/outputUtxoProcessing.mjs +3 -5
  188. package/common/src/functions/pre-transaction/recipientUtxoProcessing.cjs +1 -1
  189. package/common/src/functions/pre-transaction/recipientUtxoProcessing.mjs +3 -5
  190. package/common/src/functions/pre-transaction/solana-public-signals.d.ts +1 -0
  191. package/common/src/functions/pre-transaction/solana.cjs +1 -1
  192. package/common/src/functions/pre-transaction/solana.mjs +5 -4
  193. package/common/src/functions/private-wallet/emporium.helpers.cjs +1 -1
  194. package/common/src/functions/private-wallet/emporium.helpers.d.ts +1 -2
  195. package/common/src/functions/private-wallet/emporium.helpers.mjs +83 -57
  196. package/common/src/functions/private-wallet/emporium.swap.helpers.cjs +1 -1
  197. package/common/src/functions/private-wallet/emporium.swap.helpers.mjs +19 -19
  198. package/common/src/functions/snarkjs/common.snarkjs.cjs +1 -1
  199. package/common/src/functions/snarkjs/common.snarkjs.d.ts +2 -3
  200. package/common/src/functions/snarkjs/common.snarkjs.mjs +45 -47
  201. package/common/src/functions/snarkjs/constant.cjs +1 -1
  202. package/common/src/functions/snarkjs/constant.d.ts +151 -144
  203. package/common/src/functions/snarkjs/constant.mjs +151 -145
  204. package/common/src/functions/snarkjs/constructGeneralZkProof.cjs +1 -1
  205. package/common/src/functions/snarkjs/constructGeneralZkProof.d.ts +1 -1
  206. package/common/src/functions/snarkjs/constructGeneralZkProof.mjs +59 -60
  207. package/common/src/functions/snarkjs/constructSignatureFromMnemonicProofInput.cjs +1 -0
  208. package/common/src/functions/snarkjs/constructSignatureFromMnemonicProofInput.d.ts +7 -0
  209. package/common/src/functions/snarkjs/constructSignatureFromMnemonicProofInput.mjs +2 -0
  210. package/common/src/functions/snarkjs/constructSolanaZkProof.cjs +1 -1
  211. package/common/src/functions/snarkjs/constructSolanaZkProof.mjs +54 -58
  212. package/common/src/functions/snarkjs/fetchMerkleTreeSiblings.d.ts +1 -3
  213. package/common/src/functions/snarkjs/fetchOnChainRootHashes.cjs +1 -1
  214. package/common/src/functions/snarkjs/fetchOnChainRootHashes.d.ts +1 -0
  215. package/common/src/functions/snarkjs/fetchOnChainRootHashes.mjs +14 -5
  216. package/common/src/functions/snarkjs/generateCircomData.cjs +1 -1
  217. package/common/src/functions/snarkjs/generateCircomData.d.ts +1 -1
  218. package/common/src/functions/snarkjs/generateCircomData.mjs +35 -31
  219. package/common/src/functions/snarkjs/generateSignatureFromMnemonicProof.cjs +1 -0
  220. package/common/src/functions/snarkjs/generateSignatureFromMnemonicProof.d.ts +2 -0
  221. package/common/src/functions/snarkjs/generateSignatureFromMnemonicProof.mjs +3 -0
  222. package/common/src/functions/snarkjs/getMerkleTreeSiblingsAndRootHashes.cjs +1 -1
  223. package/common/src/functions/snarkjs/getMerkleTreeSiblingsAndRootHashes.d.ts +2 -0
  224. package/common/src/functions/snarkjs/getMerkleTreeSiblingsAndRootHashes.mjs +18 -12
  225. package/common/src/functions/snarkjs/getZKFiles.cjs +1 -1
  226. package/common/src/functions/snarkjs/getZKFiles.mjs +9 -3
  227. package/common/src/functions/snarkjs/index.cjs +1 -1
  228. package/common/src/functions/snarkjs/index.d.ts +2 -0
  229. package/common/src/functions/snarkjs/index.mjs +2 -0
  230. package/common/src/functions/snarkjs/signedMessageHash.cjs +1 -1
  231. package/common/src/functions/snarkjs/signedMessageHash.d.ts +1 -0
  232. package/common/src/functions/snarkjs/signedMessageHash.mjs +2 -0
  233. package/common/src/functions/utils/addresses.cjs +1 -1
  234. package/common/src/functions/utils/addresses.d.ts +0 -1
  235. package/common/src/functions/utils/addresses.mjs +10 -13
  236. package/common/src/functions/utils/bridge-flow.utils.d.ts +1 -1
  237. package/common/src/functions/utils/buildClaimableDepositPlan.d.ts +1 -0
  238. package/common/src/functions/utils/convertEmporiumOpToCallInfo.cjs +1 -1
  239. package/common/src/functions/utils/convertEmporiumOpToCallInfo.mjs +5 -10
  240. package/common/src/functions/utils/enclave-utxo-storage.d.ts +3 -0
  241. package/common/src/functions/utils/enclaveSessionSigning.cjs +1 -0
  242. package/common/src/functions/utils/enclaveSessionSigning.d.ts +16 -0
  243. package/common/src/functions/utils/enclaveSessionSigning.mjs +2 -0
  244. package/common/src/functions/utils/encodeTokenWithId.cjs +1 -1
  245. package/common/src/functions/utils/encodeTokenWithId.d.ts +1 -2
  246. package/common/src/functions/utils/encodeTokenWithId.mjs +2 -5
  247. package/common/src/functions/utils/fees.utils.cjs +1 -1
  248. package/common/src/functions/utils/fees.utils.d.ts +1 -0
  249. package/common/src/functions/utils/fees.utils.mjs +5 -1
  250. package/common/src/functions/utils/getDataFromTransaction.d.ts +4 -3
  251. package/common/src/functions/utils/getRecipientInfoFromUserKeys.cjs +1 -1
  252. package/common/src/functions/utils/getRecipientInfoFromUserKeys.mjs +2 -3
  253. package/common/src/functions/utils/getUtxosFromReceiptSolana.cjs +1 -1
  254. package/common/src/functions/utils/getUtxosFromReceiptSolana.mjs +16 -18
  255. package/common/src/functions/utils/index.cjs +1 -1
  256. package/common/src/functions/utils/index.d.ts +5 -1
  257. package/common/src/functions/utils/index.mjs +5 -1
  258. package/common/src/functions/utils/legacyKeys.cjs +1 -0
  259. package/common/src/functions/utils/legacyKeys.d.ts +10 -0
  260. package/common/src/functions/utils/legacyKeys.mjs +8 -0
  261. package/common/src/functions/utils/mnemonics.cjs +1 -1
  262. package/common/src/functions/utils/mnemonics.mjs +4 -6
  263. package/common/src/functions/utils/nearIntents.utils.cjs +1 -1
  264. package/common/src/functions/utils/nearIntents.utils.mjs +1 -1
  265. package/common/src/functions/utils/networks.utils.d.ts +1 -0
  266. package/common/src/functions/utils/prepareHinkal.cjs +1 -1
  267. package/common/src/functions/utils/prepareHinkal.d.ts +1 -3
  268. package/common/src/functions/utils/prepareHinkal.mjs +2 -1
  269. package/common/src/functions/utils/resolve-domain-address.cjs +1 -0
  270. package/common/src/functions/utils/resolve-domain-address.d.ts +4 -0
  271. package/common/src/functions/utils/resolve-domain-address.mjs +3 -0
  272. package/common/src/functions/utils/serialize-utxos.utils.cjs +1 -1
  273. package/common/src/functions/utils/serialize-utxos.utils.mjs +6 -4
  274. package/common/src/functions/utils/tron.utils.cjs +1 -1
  275. package/common/src/functions/utils/tron.utils.d.ts +1 -1
  276. package/common/src/functions/utils/tron.utils.mjs +14 -29
  277. package/common/src/functions/utils/validateWalletAddress.cjs +1 -0
  278. package/common/src/functions/utils/validateWalletAddress.d.ts +1 -0
  279. package/common/src/functions/utils/validateWalletAddress.mjs +2 -0
  280. package/common/src/functions/utils/voidWallets.utils.cjs +1 -0
  281. package/common/src/functions/utils/voidWallets.utils.d.ts +4 -0
  282. package/common/src/functions/utils/voidWallets.utils.mjs +1 -0
  283. package/common/src/functions/web3/etherFunctions.d.ts +1 -0
  284. package/common/src/functions/web3/events/getInputUtxoAndBalance.cjs +1 -1
  285. package/common/src/functions/web3/events/getInputUtxoAndBalance.d.ts +2 -4
  286. package/common/src/functions/web3/events/getInputUtxoAndBalance.mjs +9 -16
  287. package/common/src/functions/web3/events/getShieldedBalance.cjs +1 -1
  288. package/common/src/functions/web3/events/getShieldedBalance.d.ts +1 -1
  289. package/common/src/functions/web3/events/getShieldedBalance.mjs +21 -29
  290. package/common/src/functions/web3/functionCalls/approveToken.cjs +1 -1
  291. package/common/src/functions/web3/functionCalls/approveToken.d.ts +1 -1
  292. package/common/src/functions/web3/functionCalls/approveToken.mjs +21 -107
  293. package/common/src/functions/web3/functionCalls/constructBatchCall.cjs +1 -1
  294. package/common/src/functions/web3/functionCalls/constructBatchCall.d.ts +2 -2
  295. package/common/src/functions/web3/functionCalls/constructBatchCall.mjs +23 -18
  296. package/common/src/functions/web3/functionCalls/transactCallDirectTron.cjs +1 -1
  297. package/common/src/functions/web3/functionCalls/transactCallDirectTron.mjs +37 -3
  298. package/common/src/functions/web3/functionCalls/waitForErc20Approvals.cjs +1 -1
  299. package/common/src/functions/web3/functionCalls/waitForErc20Approvals.mjs +6 -6
  300. package/common/src/functions/web3/oneInchAPI.cjs +1 -1
  301. package/common/src/functions/web3/oneInchAPI.mjs +31 -21
  302. package/common/src/functions/web3/uniswapAPI.cjs +1 -1
  303. package/common/src/functions/web3/uniswapAPI.mjs +6 -6
  304. package/common/src/providers/EthersProviderAdapter.cjs +1 -1
  305. package/common/src/providers/EthersProviderAdapter.d.ts +0 -1
  306. package/common/src/providers/EthersProviderAdapter.mjs +0 -3
  307. package/common/src/providers/SolanaProviderAdapter.cjs +1 -1
  308. package/common/src/providers/SolanaProviderAdapter.d.ts +0 -1
  309. package/common/src/providers/SolanaProviderAdapter.mjs +0 -3
  310. package/common/src/providers/TronProviderAdapter.cjs +1 -1
  311. package/common/src/providers/TronProviderAdapter.d.ts +0 -1
  312. package/common/src/providers/TronProviderAdapter.mjs +0 -3
  313. package/common/src/providers/WagmiProviderAdapter.cjs +1 -1
  314. package/common/src/providers/WagmiProviderAdapter.d.ts +0 -1
  315. package/common/src/providers/WagmiProviderAdapter.mjs +5 -9
  316. package/common/src/types/API.types.d.ts +0 -4
  317. package/common/src/types/WeeklyAnalytics.types.d.ts +1 -26
  318. package/common/src/types/cache.types.cjs +1 -1
  319. package/common/src/types/cache.types.d.ts +2 -2
  320. package/common/src/types/cache.types.mjs +1 -1
  321. package/common/src/types/circom-data.types.cjs +1 -1
  322. package/common/src/types/circom-data.types.d.ts +26 -27
  323. package/common/src/types/circom-data.types.mjs +1 -1
  324. package/common/src/types/dashboard-account.d.ts +15 -0
  325. package/common/src/types/dashboard-payout.types.d.ts +1 -0
  326. package/common/src/types/enclaveApi.types.d.ts +78 -0
  327. package/common/src/types/ethereum-network.types.cjs +1 -1
  328. package/common/src/types/ethereum-network.types.d.ts +13 -23
  329. package/common/src/types/ethereum-network.types.mjs +1 -1
  330. package/common/src/types/external-action.types.cjs +1 -1
  331. package/common/src/types/external-action.types.d.ts +2 -3
  332. package/common/src/types/external-action.types.mjs +1 -1
  333. package/common/src/types/hinkal.types.cjs +1 -1
  334. package/common/src/types/hinkal.types.d.ts +8 -22
  335. package/common/src/types/hinkal.types.mjs +11 -19
  336. package/common/src/types/index.cjs +1 -1
  337. package/common/src/types/index.d.ts +3 -5
  338. package/common/src/types/index.mjs +0 -1
  339. package/common/src/types/new-rewards.type.d.ts +0 -70
  340. package/common/src/types/payout-notification.types.d.ts +11 -0
  341. package/common/src/types/proxy-progress.types.d.ts +5 -0
  342. package/common/src/types/snark.types.d.ts +1 -3
  343. package/common/src/types/token.types.cjs +1 -1
  344. package/common/src/types/token.types.mjs +1 -3
  345. package/common/src/types/transaction.types.d.ts +0 -1
  346. package/common/src/types/transactions.types.d.ts +0 -1
  347. package/common/src/webworker/logError-uy41lNp1.js +2 -0
  348. package/common/src/webworker/package.json +1 -1
  349. package/common/src/webworker/snarkjsWorker/snarkjsWorkerLauncher.ts?worker&url.cjs +1 -1
  350. package/common/src/webworker/snarkjsWorker/snarkjsWorkerLauncher.ts?worker&url.mjs +1 -1
  351. package/common/src/webworker/snarkjsWorkerNode.cjs +1 -1
  352. package/common/src/webworker/utxoWorker/utxoWorkerLauncher.ts?worker&url.cjs +1 -1
  353. package/common/src/webworker/utxoWorker/utxoWorkerLauncher.ts?worker&url.mjs +1 -1
  354. package/common/src/webworker/utxoWorkerNode.cjs +1 -1
  355. package/common/src/webworker/viteWorkerURL.constant.cjs +3 -3
  356. package/common/src/webworker/viteWorkerURL.constant.mjs +3 -3
  357. package/common/src/webworker/workerProxy-MheXtWa4.js +1 -0
  358. package/common/src/webworker/zkProofWorker/zkProofWorkerLauncher.ts?worker&url.cjs +1 -1
  359. package/common/src/webworker/zkProofWorker/zkProofWorkerLauncher.ts?worker&url.mjs +1 -1
  360. package/common/src/webworker/zkProofWorkerNode.cjs +1 -1
  361. package/package.json +1 -1
  362. package/services/Hinkal.cjs +1 -1
  363. package/services/Hinkal.d.ts +1 -2
  364. package/services/Hinkal.mjs +4 -7
  365. package/types/IHinkal.d.ts +1 -2
  366. package/common/src/API/accessCodeCalls.cjs +0 -1
  367. package/common/src/API/accessCodeCalls.d.ts +0 -23
  368. package/common/src/API/accessCodeCalls.mjs +0 -13
  369. package/common/src/API/brotherhoodCalls.cjs +0 -1
  370. package/common/src/API/brotherhoodCalls.d.ts +0 -82
  371. package/common/src/API/brotherhoodCalls.mjs +0 -17
  372. package/common/src/API/generate-trading-points.cjs +0 -1
  373. package/common/src/API/generate-trading-points.d.ts +0 -27
  374. package/common/src/API/generate-trading-points.mjs +0 -23
  375. package/common/src/API/leaderboardCalls.cjs +0 -1
  376. package/common/src/API/leaderboardCalls.d.ts +0 -14
  377. package/common/src/API/leaderboardCalls.mjs +0 -8
  378. package/common/src/API/referralsCalls.cjs +0 -1
  379. package/common/src/API/referralsCalls.d.ts +0 -22
  380. package/common/src/API/referralsCalls.mjs +0 -11
  381. package/common/src/API/send-telegram-callback.cjs +0 -1
  382. package/common/src/API/send-telegram-callback.d.ts +0 -7
  383. package/common/src/API/send-telegram-callback.mjs +0 -11
  384. package/common/src/constants/mystery-boxes.constants.d.ts +0 -0
  385. package/common/src/constants/price-impact.constants.d.ts +0 -2
  386. package/common/src/constants/tasks.constants.cjs +0 -1
  387. package/common/src/constants/tasks.constants.d.ts +0 -9
  388. package/common/src/constants/tasks.constants.mjs +0 -124
  389. package/common/src/data-structures/Hinkal/hinkalMultiSend.cjs +0 -1
  390. package/common/src/data-structures/Hinkal/hinkalMultiSend.d.ts +0 -3
  391. package/common/src/data-structures/Hinkal/hinkalMultiSend.mjs +0 -12
  392. package/common/src/data-structures/Hinkal/hinkalProoflessDepositViaWrapper.cjs +0 -1
  393. package/common/src/data-structures/Hinkal/hinkalProoflessDepositViaWrapper.d.ts +0 -6
  394. package/common/src/data-structures/Hinkal/hinkalProoflessDepositViaWrapper.mjs +0 -128
  395. package/common/src/data-structures/Hinkal/prepareDepositOnChainUtxosZkProof.cjs +0 -1
  396. package/common/src/data-structures/Hinkal/prepareDepositOnChainUtxosZkProof.d.ts +0 -22
  397. package/common/src/data-structures/Hinkal/prepareDepositOnChainUtxosZkProof.mjs +0 -34
  398. package/common/src/functions/utils/bit.operations.cjs +0 -1
  399. package/common/src/functions/utils/bit.operations.d.ts +0 -3
  400. package/common/src/functions/utils/bit.operations.mjs +0 -4
  401. package/common/src/types/brotherhood-user.types.d.ts +0 -11
  402. package/common/src/types/crypto.types.d.ts +0 -8
  403. package/common/src/types/generatePoints.d.ts +0 -14
  404. package/common/src/types/new-rewards.type.cjs +0 -1
  405. package/common/src/types/new-rewards.type.mjs +0 -10
  406. package/common/src/types/referral.types.d.ts +0 -12
  407. package/common/src/types/rewards.types.d.ts +0 -34
  408. package/common/src/types/token-with-id.types.d.ts +0 -4
  409. package/common/src/webworker/logError-BR5TJP6T.js +0 -2
  410. package/common/src/webworker/workerProxy-Ddzxn23N.js +0 -1
@@ -1,44 +1,43 @@
1
1
  import { CustomJSONStringify as e } from "../../functions/utils/serialize.utils.mjs";
2
2
  import { isExtension as t } from "../../constants/vite.constants.mjs";
3
3
  import { HINKAL_SUPPORTED_CHAINS as n, WALLET_SUPPORTED_CHAINS as r, chainIds as i, currentSolanaChainId as a, currentTronChainId as o, isSameOnchainNetwork as s, isSolanaLike as c, isTronLike as l, networkRegistry as u, setHinkalTronChainId as d } from "../../constants/chains.constants.mjs";
4
- import { DETERMINISTIC_SOLANA_LEDGER_BLOCKHASH as f, DETERMINISTIC_SOLANA_LEDGER_LAST_VALID_BLOCK_HEIGHT as p } from "../../constants/protocol.constants.mjs";
5
- import { EventType as m, LoginMessageMode as h } from "../../types/hinkal.types.mjs";
4
+ import { DAPP_SIGNING_MESSAGE as f, DETERMINISTIC_SOLANA_LEDGER_BLOCKHASH as p, DETERMINISTIC_SOLANA_LEDGER_LAST_VALID_BLOCK_HEIGHT as m, SDK_SIGNING_MESSAGE as h } from "../../constants/protocol.constants.mjs";
5
+ import { EventType as g, LoginMessageMode as _, zeroProoflessFeeStructure as v } from "../../types/hinkal.types.mjs";
6
6
  import { poseidonFunction as ee } from "../../crypto/poseidon.mjs";
7
- import { transactionErrorCodes as g } from "../../error-handling/error-codes.constants.mjs";
8
- import { UserKeys as _ } from "../crypto-keys/keys.mjs";
9
- import { getScheduledTransactionById as te } from "../../API/scheduled-transactions-calls.mjs";
10
- import { API as v } from "../../API/API.mjs";
11
- import { validateAndGetChainId as y } from "../../functions/utils/token-check.utils.mjs";
12
- import { privateTokensDB as b } from "../TokenDBs/PrivateTokensDB.mjs";
13
- import { getErc20TokensForChainAPI as x } from "../../functions/utils/erc20tokenFunctions.mjs";
14
- import { getShieldedBalance as S } from "../../functions/web3/events/getShieldedBalance.mjs";
15
- import { getContractWithFetcherByChainId as C } from "../../functions/web3/getContractMetadata.mjs";
16
- import { reloadPage as w } from "../../functions/utils/reloadPage.mjs";
17
- import { createCacheDevice as T } from "../../functions/utils/cacheDevice.utils.mjs";
18
- import { SolanaProviderAdapter as E } from "../../providers/SolanaProviderAdapter.mjs";
19
- import { storeAndGetSignatureFromEnclave as D } from "../../functions/utils/enclave-signature-storage.mjs";
20
- import { generateHashFromSeedPhrases as O } from "../../functions/utils/mnemonics.mjs";
21
- import { fetchOnChainRootHashes as k } from "../../functions/snarkjs/fetchOnChainRootHashes.mjs";
22
- import { createTransaferEmporiumOpsBatch as A } from "../../functions/private-wallet/emporium.helpers.mjs";
23
- import { hinkalDeposit as j, hinkalDepositForOther as M } from "./hinkalDeposit.mjs";
7
+ import { transactionErrorCodes as te } from "../../error-handling/error-codes.constants.mjs";
8
+ import { UserKeys as y } from "../crypto-keys/keys.mjs";
9
+ import { getScheduledTransactionById as b } from "../../API/scheduled-transactions-calls.mjs";
10
+ import { API as x } from "../../API/API.mjs";
11
+ import { validateAndGetChainId as S } from "../../functions/utils/token-check.utils.mjs";
12
+ import { privateTokensDB as C } from "../TokenDBs/PrivateTokensDB.mjs";
13
+ import { getErc20TokensForChainAPI as w } from "../../functions/utils/erc20tokenFunctions.mjs";
14
+ import { getShieldedBalance as T } from "../../functions/web3/events/getShieldedBalance.mjs";
15
+ import { getContractWithFetcherByChainId as E } from "../../functions/web3/getContractMetadata.mjs";
16
+ import { reloadPage as D } from "../../functions/utils/reloadPage.mjs";
17
+ import { createCacheDevice as O } from "../../functions/utils/cacheDevice.utils.mjs";
18
+ import { SolanaProviderAdapter as k } from "../../providers/SolanaProviderAdapter.mjs";
19
+ import { storeAndGetSignatureFromEnclave as A } from "../../functions/utils/enclave-signature-storage.mjs";
20
+ import { generateHashFromSeedPhrases as j } from "../../functions/utils/mnemonics.mjs";
21
+ import { fetchOnChainRootHashes as M } from "../../functions/snarkjs/fetchOnChainRootHashes.mjs";
22
+ import { createTransaferEmporiumOpsBatch as N } from "../../functions/private-wallet/emporium.helpers.mjs";
23
+ import { hinkalDeposit as P, hinkalDepositForOther as F } from "./hinkalDeposit.mjs";
24
+ import { hinkalProoflessDeposit as I } from "./hinkalProoflessDeposit.mjs";
24
25
  import "../../functions/index.mjs";
25
- import { hinkalDepositAndWithdraw as N } from "./hinkalDepositAndWithdraw.mjs";
26
- import { hinkalSolanaDeposit as P, hinkalSolanaDepositForOther as F, hinkalSolanaProoflessDepositWithPublicFee as I } from "./hinkalSolanaDeposit.mjs";
27
- import { hinkalSwap as L } from "./hinkalSwap.mjs";
28
- import { hinkalWithdraw as R } from "./hinkalWithdraw.mjs";
29
- import { MerkleTree as z } from "../merkle-tree/MerkleTree.mjs";
26
+ import { hinkalDepositAndWithdraw as L } from "./hinkalDepositAndWithdraw.mjs";
27
+ import { hinkalSolanaDeposit as R, hinkalSolanaDepositForOther as z } from "./hinkalSolanaDeposit.mjs";
28
+ import { hinkalSwap as B } from "./hinkalSwap.mjs";
29
+ import { hinkalWithdraw as V } from "./hinkalWithdraw.mjs";
30
+ import { MerkleTree as H } from "../merkle-tree/MerkleTree.mjs";
30
31
  import "../merkle-tree/index.mjs";
31
- import { resetMerkleTrees as B } from "./resetMerkleTrees.mjs";
32
+ import { resetMerkleTrees as ne } from "./resetMerkleTrees.mjs";
32
33
  import "../../API/index.mjs";
33
- import { MultiThreadedUtxoUtils as V } from "../MultiThreadedUtxoUtils/MultiThreadedUtxoUtils.mjs";
34
- import { hinkalPrivateWallet as H } from "./hinkalPrivateWallet.mjs";
35
- import { getRecipientInfo as ne } from "./hinkalGetRecipientInfo.mjs";
36
- import { hinkalSignSubAccount as U } from "./hinkalSignSubAccount.mjs";
37
- import { hinkalActionReceive as W } from "./hinkalActionReceive.mjs";
34
+ import { MultiThreadedUtxoUtils as U } from "../MultiThreadedUtxoUtils/MultiThreadedUtxoUtils.mjs";
35
+ import { hinkalPrivateWallet as W } from "./hinkalPrivateWallet.mjs";
36
+ import { getRecipientInfo as G } from "./hinkalGetRecipientInfo.mjs";
37
+ import { hinkalSignSubAccount as K } from "./hinkalSignSubAccount.mjs";
38
+ import { hinkalActionReceive as q } from "./hinkalActionReceive.mjs";
38
39
  import "../TokenDBs/index.mjs";
39
- import { hinkalProoflessDeposit as G, hinkalProoflessDepositWithPublicFee as K } from "./hinkalProoflessDeposit.mjs";
40
- import { hinkalProxySwap as q } from "./hinkalProxySwap.mjs";
41
- import { hinkalMultiSendPrivateRecipients as J } from "./hinkalMultiSend.mjs";
40
+ import { hinkalProxySwap as J } from "./hinkalProxySwap.mjs";
42
41
  import { hinkalTransfer as Y } from "./hinkalTransfer.mjs";
43
42
  import { hinkalProxyToPrivate as X } from "./hinkalProxyToPrivate.mjs";
44
43
  import { TronProviderAdapter as Z } from "../../providers/TronProviderAdapter.mjs";
@@ -65,13 +64,13 @@ var _e = class {
65
64
  solanaProviderAdapter;
66
65
  tronProviderAdapter;
67
66
  userKeys;
68
- signingMessage = "Login to Hinkal Protocol";
69
- privateTransferSigningMessage = "Login to Hinkal's Private Transfer App";
67
+ legacySignature;
70
68
  merkleTreeHinkalByChain = {};
71
69
  nullifiersByChain = {};
72
70
  encryptedOutputsByChain = {};
73
71
  commitmentsSnapshotServiceByChain = {};
74
72
  nullifierSnapshotServiceByChain = {};
73
+ privateBalances = new he(this);
75
74
  utxoUtils;
76
75
  lastCallState = /* @__PURE__ */ new Map();
77
76
  cacheDevice;
@@ -79,11 +78,10 @@ var _e = class {
79
78
  generateProofRemotely;
80
79
  disableMerkleTreeUpdates;
81
80
  allowParallelBalanceLocalDecryption;
82
- privateBalances = new he(this);
83
81
  constructor(e) {
84
- this.userKeys = new _(void 0), e?.tronChainOverride && d(e.tronChainOverride), n.forEach((e) => {
85
- this.merkleTreeHinkalByChain[e] = z.create(ee, 0n), this.nullifiersByChain[e] = /* @__PURE__ */ new Set(), this.encryptedOutputsByChain[e] = [];
86
- }), this.generateProofRemotely = e?.generateProofRemotely ?? !0, this.utxoUtils = new V(), this.cacheDevice = T(e), this.disableMerkleTreeUpdates = e?.disableMerkleTreeUpdates ?? !1, this.allowParallelBalanceLocalDecryption = e?.allowParallelBalanceLocalDecryption ?? !1;
82
+ this.userKeys = new y(void 0), e?.tronChainOverride && d(e.tronChainOverride), n.forEach((e) => {
83
+ this.merkleTreeHinkalByChain[e] = H.create(ee, 0n), this.nullifiersByChain[e] = /* @__PURE__ */ new Set(), this.encryptedOutputsByChain[e] = [];
84
+ }), this.generateProofRemotely = e?.generateProofRemotely ?? !0, this.utxoUtils = new U(), this.cacheDevice = O(e), this.disableMerkleTreeUpdates = e?.disableMerkleTreeUpdates ?? !1, this.allowParallelBalanceLocalDecryption = e?.allowParallelBalanceLocalDecryption ?? !1;
87
85
  }
88
86
  enforceRateLimit(t, n, r = 1e3) {
89
87
  let i = Date.now(), a = e(n), o = this.lastCallState.get(t);
@@ -102,25 +100,25 @@ var _e = class {
102
100
  }
103
101
  async initProviderAdapter(e, t) {
104
102
  let n = i.ethMainnet;
105
- t instanceof E ? n = a : t instanceof Z && (n = o), await this.updateProviderAdapter(n, t), t.initConnector(e);
103
+ t instanceof k ? n = a : t instanceof Z && (n = o), await this.updateProviderAdapter(n, t), t.initConnector(e);
106
104
  let r = await t.connectAndPatchProvider(e);
107
105
  await t.init(r), await this.setListeners();
108
106
  }
109
- getSigningMessage(e = h.PROTOCOL) {
107
+ getSigningMessage(e = _.SDK) {
110
108
  switch (e) {
111
- case h.PRIVATE_TRANSFER: return this.privateTransferSigningMessage;
112
- case h.PROTOCOL:
113
- default: return this.signingMessage;
109
+ case _.SDK: return h;
110
+ case _.HINKAL_DAPP:
111
+ default: return f;
114
112
  }
115
113
  }
116
- async signHinkalMessage(e = h.PROTOCOL) {
114
+ async signHinkalMessage(e = _.SDK) {
117
115
  let t = this.getSigningMessage(e);
118
116
  return this.getProviderAdapter().signMessage(t);
119
117
  }
120
118
  async signSolanaLedgerMessage() {
121
119
  let e = new ge({
122
- blockhash: f,
123
- lastValidBlockHeight: p,
120
+ blockhash: p,
121
+ lastValidBlockHeight: m,
124
122
  feePayer: this.getSolanaPublicKey()
125
123
  }), t = await this.getProviderAdapter().signTransactionWithoutBroadcast?.(e);
126
124
  if (!t) throw Error("Failed to sign transaction without broadcast");
@@ -129,17 +127,17 @@ var _e = class {
129
127
  txMessageForSolanaLedger: t.transactionMessageB64
130
128
  };
131
129
  }
132
- async initUserKeys(e = h.PROTOCOL) {
133
- this.userKeys = new _(await this.signHinkalMessage(e));
130
+ async initUserKeys(e = _.SDK) {
131
+ this.userKeys = new y(await this.signHinkalMessage(e));
134
132
  }
135
133
  initUserKeysWithSignature(e) {
136
- this.userKeys = new _(e);
134
+ this.userKeys = new y(e);
137
135
  }
138
136
  async initUserKeysFromSeedPhrases(e) {
139
- let t = O(e);
140
- this.userKeys = new _(t);
137
+ let t = j(e);
138
+ this.userKeys = new y(t);
141
139
  }
142
- async initUserKeysWithEnclaveSignature(e = h.PROTOCOL) {
140
+ async initUserKeysWithEnclaveSignature(e = _.SDK) {
143
141
  if (!await this.getEthereumAddress()) throw Error("Connected address not found");
144
142
  let t = this.getProviderAdapter().isSolanaLedger?.() ?? !1, n, r;
145
143
  if (t) {
@@ -152,10 +150,10 @@ var _e = class {
152
150
  async storeAndGetInitialSignature(e, t = !1, n) {
153
151
  let r = await this.getEthereumAddress();
154
152
  if (!r) throw Error("Connected address not found");
155
- return await D(r, e, t, n);
153
+ return await A(r, e, t, n);
156
154
  }
157
155
  async resetMerkle(e) {
158
- this.disableMerkleTreeUpdates || (e?.every((e) => this.isSelectedNetworkSupported(e)) ?? !0) && await B(this, e);
156
+ this.disableMerkleTreeUpdates || (e?.every((e) => this.isSelectedNetworkSupported(e)) ?? !0) && await ne(this, e);
159
157
  }
160
158
  getTronWeb() {
161
159
  let e = this.tronProviderAdapter;
@@ -175,7 +173,7 @@ var _e = class {
175
173
  return this.getProviderAdapter(e).getContract(e, t, n);
176
174
  }
177
175
  getContractWithFetcherByChainId(e, t, n = void 0) {
178
- return C(e, t, n);
176
+ return E(e, t, n);
179
177
  }
180
178
  async signMessage(e) {
181
179
  return await this.getProviderAdapter().signMessage(e);
@@ -184,7 +182,7 @@ var _e = class {
184
182
  return await this.getProviderAdapter().signTypedData(e, t, n);
185
183
  }
186
184
  async signWithSubAccount(e, t, n, r) {
187
- return U(e, t, n, r);
185
+ return K(e, t, n, r);
188
186
  }
189
187
  getContractWithSigner(e, t, n = "") {
190
188
  return this.getProviderAdapter(e).getContractWithSigner(e, t, n);
@@ -200,12 +198,9 @@ var _e = class {
200
198
  if (!(e.chainId === n || r)) try {
201
199
  await t.switchNetwork(e);
202
200
  } catch {
203
- throw Error(g.FAILED_TO_SWITCH_NETWORKS);
201
+ throw Error(te.FAILED_TO_SWITCH_NETWORKS);
204
202
  }
205
203
  }
206
- isPermitterAvailable(e) {
207
- return this.getProviderAdapter(e).isPermitterAvailable();
208
- }
209
204
  async disconnectFromConnector() {
210
205
  await this.ethereumProviderAdapter?.disconnectFromConnector(), await this.solanaProviderAdapter?.disconnectFromConnector(), await this.tronProviderAdapter?.disconnectFromConnector();
211
206
  }
@@ -245,20 +240,20 @@ var _e = class {
245
240
  }
246
241
  async onAccountChanged() {
247
242
  await this.ethereumProviderAdapter?.onAccountChanged(), await this.solanaProviderAdapter?.onAccountChanged(), await this.tronProviderAdapter?.onAccountChanged();
248
- let e = m.AccountChanged;
243
+ let e = g.AccountChanged;
249
244
  typeof document < "u" ? document?.dispatchEvent(new Event(e)) : process?.emit("message", e, void 0);
250
245
  }
251
246
  async onChainChanged(e) {
252
- e ? await this.getProviderAdapter(e).onChainChanged(e) : (await this.disconnectFromConnector(), w());
247
+ e ? await this.getProviderAdapter(e).onChainChanged(e) : (await this.disconnectFromConnector(), D());
253
248
  }
254
249
  async monitorConnectedAddress(e) {
255
- await v.monitor(await this.getEthereumAddressByChain(e));
250
+ await x.monitor(await this.getEthereumAddressByChain(e));
256
251
  }
257
252
  async getBalances(e, t, n, r, i = !1, a, o = !1) {
258
- return S(this, e, t, n, r, i, this.generateProofRemotely, a, o);
253
+ return T(this, e, t, n, r, i, this.generateProofRemotely, a, o);
259
254
  }
260
255
  async getTotalBalance(e, n, r, i = !1, a, o = !1) {
261
- let s = r ?? await this.getEthereumAddressByChain(e), c = n ?? this.userKeys, l = await this.getBalances(e, c.getShieldedPrivateKey(), c.getShieldedPublicKey(), s, i, a, o), u = t ? await b.getPrivateTokens(e, s) : await x(e), d = [];
256
+ let s = r ?? await this.getEthereumAddressByChain(e), c = n ?? this.userKeys, l = await this.getBalances(e, c.getShieldedPrivateKey(), c.getShieldedPublicKey(), s, i, a, o), u = t ? await C.getPrivateTokens(e, s) : await w(e), d = [];
262
257
  return u.forEach((e) => {
263
258
  let t = e.erc20TokenAddress.toLowerCase(), n = l.get(t), r = {
264
259
  token: e,
@@ -279,7 +274,7 @@ var _e = class {
279
274
  return this.privateBalances.onPrivateBalancesWithUSDChange(e);
280
275
  }
281
276
  async getHinkalTreeRootHash(e) {
282
- return (await k(e)).hinkalRootHash;
277
+ return (await M(e)).hinkalRootHash;
283
278
  }
284
279
  async resetMerkleTreesIfNecessary(e) {
285
280
  let t = (await Promise.all((e ?? this.getSupportedChains()).map(async (e) => {
@@ -300,7 +295,7 @@ var _e = class {
300
295
  return this.getProviderAdapter(e).getAddress();
301
296
  }
302
297
  async getRandomRelay(e, t = !1) {
303
- return (await v.getIdleRelay(e, t)).relay;
298
+ return (await x.getIdleRelay(e, t)).relay;
304
299
  }
305
300
  getGasPrice(e) {
306
301
  let t = this.getProviderAdapter(e);
@@ -308,7 +303,7 @@ var _e = class {
308
303
  return t.getGasPrice(e);
309
304
  }
310
305
  getAPI() {
311
- return v;
306
+ return x;
312
307
  }
313
308
  snapshotsClearInterval() {
314
309
  this.getSupportedChains().forEach((e) => {
@@ -319,33 +314,33 @@ var _e = class {
319
314
  this.snapshotsClearInterval(), this.privateBalances.dispose(), await this.resetProviderAdapters();
320
315
  }
321
316
  getRecipientInfo() {
322
- return ne(this);
317
+ return G(this);
323
318
  }
324
319
  async deposit(e, t, n = !0, r = !1) {
325
- return j(this, e, t, n, r);
320
+ return P(this, e, t, n, r);
326
321
  }
327
322
  async depositSolana(e, t, n = !1) {
328
- return P(this, e, t, n);
323
+ return R(this, e, t, n);
329
324
  }
330
325
  async depositForOther(e, t, n, r = !0, i = !1, a) {
331
326
  return this.enforceRateLimit(this.depositForOther.name, [
332
327
  e,
333
328
  t,
334
329
  n
335
- ]), M(this, e, t, n, r, i, a);
330
+ ]), F(this, e, t, n, r, i, a);
336
331
  }
337
332
  async depositSolanaForOther(e, t, n, r = !1, i) {
338
333
  return this.enforceRateLimit(this.depositSolanaForOther.name, [
339
334
  e,
340
335
  t,
341
336
  n
342
- ]), F(this, e, t, n, r, i);
337
+ ]), z(this, e, t, n, r, i);
343
338
  }
344
339
  async depositAndWithdraw(e, t, n, r, i, a, o, s, l = !0) {
345
- return c(y([e])) ? re(this, e, t, n, r, i, a, o, s) : N(this, e, t, n, r, i, a, o, s, l);
340
+ return c(S([e])) ? re(this, e, t, n, r, i, a, o, s) : L(this, e, t, n, r, i, a, o, s, l);
346
341
  }
347
342
  async claimUtxo(e, t, n, r) {
348
- return c(y([e])) ? $(this, e, t, n, r) : fe(this, e, t, n, r);
343
+ return c(S([e])) ? $(this, e, t, n, r) : fe(this, e, t, n, r);
349
344
  }
350
345
  async depositAndBridge(e, t, n, r, i, a, o, s = !0) {
351
346
  return le(this, e, t, n, r, i, a, o, s);
@@ -358,7 +353,7 @@ var _e = class {
358
353
  ]), ue(this, e, t, n, r, i, a, o);
359
354
  }
360
355
  async checkSendTransactionStatus(e) {
361
- return te(e);
356
+ return b(e);
362
357
  }
363
358
  async nearDepositAndBridge(e, t, n, r, i, a, o, s, c) {
364
359
  return this.enforceRateLimit(this.nearDepositAndBridge.name, [
@@ -368,12 +363,8 @@ var _e = class {
368
363
  r
369
364
  ]), de(this, e, t, n, r, i, a, o, s, c);
370
365
  }
371
- async prooflessDeposit(e, t, n, r, i = !1) {
372
- return c(y(e)) ? pe(this, e, t, n, r, i) : G(this, e, t, n, r, i);
373
- }
374
- async prooflessDepositWithPublicFee(e, t, n, r, i) {
375
- let a = y([e]);
376
- return c(a) ? I(this, e, t, n, r, i) : K(this, a, e, t, n, r, i);
366
+ async prooflessDeposit(e, t, n, r, i = !1, a = v, o = "", s, l = !1) {
367
+ return c(S(e)) ? pe(this, e, t, n, s, l) : I(this, e, t, n, r, i, a, o, s, l);
377
368
  }
378
369
  getSolanaProgram(e) {
379
370
  if (!this.solanaProviderAdapter) throw Error("No provider adapter initialized");
@@ -390,16 +381,16 @@ var _e = class {
390
381
  e,
391
382
  t,
392
383
  n
393
- ]), c(y(e)) ? ae(this, e, t, n, r, i, a) : Y(this, e, t, n, r, i, a);
384
+ ]), c(S(e)) ? ae(this, e, t, n, r, i, a) : Y(this, e, t, n, r, i, a);
394
385
  }
395
386
  async withdraw(e, t, n, r, i, a, o) {
396
- return c(y(e)) ? ie(this, e, t, n, i, a, o) : R(this, e, t, n, r, i, a, o);
387
+ return c(S(e)) ? ie(this, e, t, n, i, a, o) : V(this, e, t, n, r, i, a, o);
397
388
  }
398
389
  async withdrawStuckUtxos(e, t) {
399
390
  return me(this, e, t);
400
391
  }
401
392
  async swap(e, t, n, r, i, a, o) {
402
- return c(y(e)) ? this.swapSolana(e, t, r, i, a, o) : L(this, e, t, n, r, i, a, o);
393
+ return c(S(e)) ? this.swapSolana(e, t, r, i, a, o) : B(this, e, t, n, r, i, a, o);
403
394
  }
404
395
  async swapSolana(e, t, n, r, i, a) {
405
396
  let o = JSON.parse(n), s = BigInt(o.swapperAccountSalt), { instructionLists: c, addressLookupTableAccount: l } = o.data;
@@ -407,7 +398,7 @@ var _e = class {
407
398
  }
408
399
  async actionReceive(e, t, n, r, i, a) {
409
400
  if (!i) throw Error("subAccount is required");
410
- return c(y(e)) ? Q(this, e[0], t[0], i, void 0, a) : W(this, e, t, n, r, i, a);
401
+ return c(S(e)) ? Q(this, e[0], t[0], i, void 0, a) : q(this, e, t, n, r, i, a);
411
402
  }
412
403
  async actionPrivateWallet(e, t, n, r, i, a, o, s, c, l, u = !1, d, f, p) {
413
404
  return this.enforceRateLimit(this.actionPrivateWallet.name, [
@@ -421,13 +412,13 @@ var _e = class {
421
412
  s,
422
413
  c,
423
414
  p
424
- ]), H(this, e, t, n, r, i, a, o, s, c, l, u, d, f, p);
415
+ ]), W(this, e, t, n, r, i, a, o, s, c, l, u, d, f, p);
425
416
  }
426
417
  async proxySwap(e, t, n, r, i, a, o, s, l = !1, u, d) {
427
- return c(y(e)) ? ce(this, e, t, r, a, n, o, s, d) : q(this, e, t, n, r, i, a, o, s, l, u, d);
418
+ return c(S(e)) ? ce(this, e, t, r, a, n, o, s, d) : J(this, e, t, n, r, i, a, o, s, l, u, d);
428
419
  }
429
420
  async proxyToPrivate(e, t, n, r, i, a, o) {
430
- return c(y(e)) ? (this.enforceRateLimit(this.proxyToPrivate.name, [
421
+ return c(S(e)) ? (this.enforceRateLimit(this.proxyToPrivate.name, [
431
422
  e[0],
432
423
  t[0],
433
424
  n,
@@ -435,21 +426,14 @@ var _e = class {
435
426
  ]), Q(this, e[0], t[0], n, r, o)) : X(this, e, t, r, i, a, n, o);
436
427
  }
437
428
  async proxySend(e, t, n, r, i, a, o) {
438
- let s = y(e);
429
+ let s = S(e);
439
430
  if (c(s)) return se(this, e[0], t[0], n, r, o);
440
- let l = A(this, s, e.map((e) => e.erc20TokenAddress), t, r), u = e.map((e, n) => ({
431
+ let l = N(this, s, e.map((e) => e.erc20TokenAddress), t, r), u = e.map((e, n) => ({
441
432
  token: e,
442
433
  amount: -1n * t[n]
443
434
  }));
444
435
  return await this.actionPrivateWallet(s, [], [], [], l, u, n, i, a, void 0, void 0, void 0, o, void 0);
445
436
  }
446
- async multiSendPrivateRecipients(e, t, n) {
447
- return this.enforceRateLimit(this.multiSendPrivateRecipients.name, [
448
- e,
449
- t,
450
- n
451
- ]), J(this, e, t, n);
452
- }
453
437
  areMerkleTreeUpdatesDisabled() {
454
438
  return this.disableMerkleTreeUpdates;
455
439
  }
@@ -1,4 +1,4 @@
1
- import { FeeStructure, LoginMessageMode } from '../../types/hinkal.types';
1
+ import { FeeStructure, LoginMessageMode, ProoflessFeeStructure } from '../../types/hinkal.types';
2
2
  import { ContractType, EthereumNetwork } from '../../types/ethereum-network.types';
3
3
  import { EncryptedOutputWithSign } from '../../types/commitments.types';
4
4
  import { ExternalActionId } from '../../types/external-action.types';
@@ -26,18 +26,17 @@ import { DepositAndSendExtendedResult } from '../../types/scheduled-transactions
26
26
  import { Mutex } from 'async-mutex';
27
27
  export interface IHinkal<ConnectorType = unknown> {
28
28
  userKeys: UserKeys;
29
- readonly signingMessage: string;
30
- readonly privateTransferSigningMessage: string;
31
- readonly allowParallelBalanceLocalDecryption: boolean;
29
+ legacySignature?: string;
32
30
  merkleTreeHinkalByChain: Record<number, MerkleTree<bigint>>;
33
31
  nullifiersByChain: Record<number, Set<string>>;
34
32
  encryptedOutputsByChain: Record<number, EncryptedOutputWithSign[]>;
35
33
  commitmentsSnapshotServiceByChain: Record<number, ClientCommitmentsSnapshotService | ClientSolanaCommitmentsSnapshotService | undefined>;
36
34
  nullifierSnapshotServiceByChain: Record<number, ClientNullifierSnapshotService | ClientSolanaNullifierSnapshotService | undefined>;
37
- generateProofRemotely: boolean;
38
35
  utxoUtils: IMultiThreadedUtxoUtils;
39
36
  cacheDevice: ICacheDevice;
37
+ generateProofRemotely: boolean;
40
38
  balanceFetchingMutexByChain: Map<number, Mutex>;
39
+ readonly allowParallelBalanceLocalDecryption: boolean;
41
40
  getBalances(chainId: number, passedShieldedPrivateKey: string, passedShieldedPublicKey: string, ethAddress: string, resetCacheBefore?: boolean, updateTokensListBefore?: boolean): Promise<Map<string, TokenBalance>>;
42
41
  getTotalBalance(chainId: number, userKeys?: UserKeys, ethAddress?: string, resetCacheBefore?: boolean, updateTokensListBefore?: boolean, useBlockedUtxos?: boolean): Promise<TokenBalance[]>;
43
42
  getStuckShieldedBalances(chainId: number, userKeys?: UserKeys, ethAddress?: string, resetCacheBefore?: boolean, updateTokensListBefore?: boolean): Promise<TokenBalance[]>;
@@ -63,8 +62,7 @@ export interface IHinkal<ConnectorType = unknown> {
63
62
  bridgePrivateToPrivate(sourceToken: ERC20Token, destToken: ERC20Token, amount: string, recipient: PrivateBridgeRecipient, slippage?: number, feeToken?: string, action?: AdminTransactionType): Promise<PrivateBridgeResult>;
64
63
  checkSendTransactionStatus(scheduleId: string): Promise<ScheduledTransactionByIdResponse>;
65
64
  nearDepositAndBridge(erc20Token: ERC20Token, recipientAmounts: bigint[], recipientAddresses: string[], params: NearBridgeParams, txCompletionTime?: number, feeStructureOverride?: FeeStructure, ref?: string, action?: AdminTransactionType, dashboardAccountId?: string): Promise<NearBridgeResult>;
66
- prooflessDeposit(erc20Tokens: ERC20Token[], amountChanges: bigint[], stealthAddressStructures?: StealthAddressStructure[], action?: AdminTransactionType, returnTxData?: boolean): Promise<string | ethers.TransactionRequest | TronWebTypes.Transaction<TronWebTypes.TriggerSmartContract>>;
67
- prooflessDepositWithPublicFee(erc20Token: ERC20Token, amounts: bigint[], stealthAddressStructures: StealthAddressStructure[], feeAmount: bigint, action?: AdminTransactionType): Promise<string>;
65
+ prooflessDeposit(erc20Tokens: ERC20Token[], amountChanges: bigint[], stealthAddressStructures?: StealthAddressStructure[], recipientEncryptionKeys?: string[], createBlockedUtxos?: boolean, feeStructure?: ProoflessFeeStructure, orderId?: string, action?: AdminTransactionType, returnTxData?: boolean): Promise<string | ethers.TransactionRequest | TronWebTypes.Transaction<TronWebTypes.TriggerSmartContract>>;
68
66
  getSolanaProgram(idl: Idl): Program;
69
67
  getSolanaPublicKey(): PublicKey;
70
68
  depositSolana(amount: bigint, token: ERC20Token): Promise<string>;
@@ -98,7 +96,6 @@ export interface IHinkal<ConnectorType = unknown> {
98
96
  isSelectedNetworkSupported(chainId: number): boolean;
99
97
  switchNetwork(network: EthereumNetwork): Promise<unknown>;
100
98
  monitorConnectedAddress(chainId: number): Promise<void>;
101
- isPermitterAvailable(chainId: number): boolean;
102
99
  signMessage(message: string): Promise<string>;
103
100
  signTypedData(domain: ethers.TypedDataDomain, types: Record<string, ethers.TypedDataField[]>, value: Record<string, unknown>): Promise<string>;
104
101
  signWithSubAccount(chainId: number, messageToSign: string | undefined, typedData: TypedData | undefined, subAccount: SubAccount): Promise<string>;
@@ -107,7 +104,6 @@ export interface IHinkal<ConnectorType = unknown> {
107
104
  proxySwap(erc20Tokens: ERC20Token[], deltaAmounts: bigint[], externalActionId: ExternalActionId, swapData: string, isTheSameChainSwap: boolean, subAccount: SubAccount, feeToken?: string, feeStructureOverride?: FeeStructure, autoDepositBack?: boolean, maxGasInDollar?: string, action?: AdminTransactionType): Promise<string>;
108
105
  proxyToPrivate(erc20Tokens: ERC20Token[], deltaAmountsBase: bigint[], subAccount: SubAccount, recipientInfo: string, feeToken?: string, feeStructureOverride?: FeeStructure, action?: AdminTransactionType): Promise<string>;
109
106
  proxySend(erc20Tokens: ERC20Token[], amounts: bigint[], subAccount: SubAccount, recipientAddress: string, feeToken?: string, feeStructureOverride?: FeeStructure, action?: AdminTransactionType): Promise<string>;
110
- multiSendPrivateRecipients(erc20Tokens: ERC20Token[], amounts: bigint[], extendedRecipientInfos?: string[]): Promise<string>;
111
107
  areMerkleTreeUpdatesDisabled(): boolean;
112
108
  updateMerkleTreeUpdates(value: boolean): void;
113
109
  }
@@ -1 +1 @@
1
- const e=require(`../../constants/chains.constants.cjs`),t=require(`../../functions/utils/caseInsensitive.utils.cjs`),n=require(`../../error-handling/error-codes.constants.cjs`),r=require(`../../functions/web3/etherFunctions.cjs`),i=require(`../../functions/utils/time.utils.cjs`),a=require(`../../error-handling/customErrors/ErrorWithTx.cjs`),o=require(`../../types/external-action.types.cjs`),s=require(`../../types/transactions.types.cjs`),c=require(`../../types/admin.types.cjs`),l=require(`../../types/activities.types.cjs`),u=require(`../../types/transaction.types.cjs`),d=require(`../../types/offscreen.types.cjs`);require(`../../types/index.cjs`);const f=require(`../../error-handling/logger.cjs`),ee=require(`../../API/API.cjs`),p=require(`../../functions/utils/erc20tokenFunctions.cjs`),m=require(`../../error-handling/get-error.message.cjs`);require(`../../error-handling/index.cjs`);const h=require(`../../functions/pre-transaction/getVolatileTransferAmount.cjs`),g=require(`../../functions/utils/create-provider.cjs`),_=require(`../../functions/pre-transaction/getFeeStructure.cjs`),v=require(`../../functions/utils/convertEmporiumOpToCallInfo.cjs`),y=require(`../../functions/utils/postToOffscreen.cjs`),b=require(`../../functions/utils/fees.utils.cjs`),x=require(`../../functions/private-wallet/emporium.helpers.cjs`),S=require(`../../functions/auto-deposit-back-helpers/get-tokens-to-deposit-back.cjs`),C=require(`../../functions/auto-deposit-back-helpers/get-gas-token-records.cjs`),w=require(`../../functions/auto-deposit-back-helpers/select-gas-token.cjs`),T=require(`../../functions/auto-deposit-back-helpers/update-hinkal.cjs`);require(`../../functions/index.cjs`);const E=require(`../IndexedDB/activity-db.cjs`);require(`../IndexedDB/index.cjs`);var D=3*1e3,O=13*1e3,k=async(k,A,j,M,N,P,F,I)=>{if(!j||F.length===0)return;let L;try{let a=g.createJsonRpcProvider(A);await i.waitLittle(A===e.chainIds.ethMainnet?O:D);let u=await S.getTokensToDepositBack(F,N,j,a);if(!u.length){y.postToOffscreen(d.MessagesFromOffscreen.AutoShieldTxStatus,{message:n.transactionErrorCodes.AUTO_SHIELD_SKIPPED});return}let f=(await p.getErc20TokensBySymbolsFromAPI(await b.getGasTokenSymbols(A),A)).filter(e=>e!==void 0),{prices:m}=await ee.API.getTokenPrices(A,f.map(e=>e.erc20TokenAddress)),R=new Map(m.map((e,t)=>[f[t].erc20TokenAddress.toLowerCase(),e])),z=u.map(({token:e})=>e),B=u.map(({balance:e})=>e),V=z.map(({erc20TokenAddress:e})=>e),H=x.createTransaferEmporiumOpsBatch(k,A,V,await h.modifyVolatileTokenAmountChanges(A,z,B,j)),U=await _.getFeeStructure(A,N,V,o.ExternalActionId.Emporium,H.map(e=>v.convertEmporiumOpToCallInfo(e,j,A))),{flatFee:W}=U??{},G=await p.getErc20TokenFromAPI(A,U.feeToken);if(!G)return;let K=r.getAmountInToken(G,W),q=(R.get(G.erc20TokenAddress.toLowerCase())??0)*Number(K),J=await w.selectGasToken(N,q,A,z,H,await C.getGasTokenRecords(f,A,k,j,a,R),U,V,j);if(!J)return;let{feeToken:Y,feeStructure:X}=J??{};if(P&&Number(P)<q){y.postToOffscreen(d.MessagesFromOffscreen.AutoShieldTxStatus,{message:n.gasErrorCodes.GAS_PRICE_EXCEEDS_AUTOSHIELD_LIMIT});return}let Z=z.findIndex(e=>t.caseInsensitiveEqual(e.erc20TokenAddress,Y));Z!==-1&&(B[Z]-=X?.flatFee??0n);let{hinkalAddress:Q}=e.networkRegistry[A].contractData,$={activityType:l.ActivityTypes.AUTO_SHIELD,chainId:A,from:j,to:Q,gasInDollar:q.toString(),tokensReceive:z.map((e,t)=>({amount:r.getAmountInToken(e,B[t]),token:e}))};L=await E.activityStorage.saveTxRequest($),y.postToOffscreen(d.MessagesFromOffscreen.AutoShieldTxStatus,{status:s.TransactionStatus.Loading}),T.updateHinkal(A,k,I.inputNullifiers?.flat(),I.outCommitments?.flat(),I.encryptedOutputs?.flat());let te={id:0,success:!0,txHash:await k.actionReceive(z,B,Y,X,M,c.AdminTransactionType.AutoShield)};await E.activityStorage.updatePendingTransactions(te,L),y.postToOffscreen(d.MessagesFromOffscreen.AutoShieldTxStatus,{status:s.TransactionStatus.Confirmed,activityRequest:$})}catch(e){let t;e instanceof a.ErrorWithRelayerTransaction&&(t=e.txHash);let n={error:e,id:0,success:!1,...t?{erroredTx:t}:{}};L&&await E.activityStorage.updatePendingTransactions(n,L),y.postToOffscreen(d.MessagesFromOffscreen.AutoShieldTxStatus,{status:s.TransactionStatus.Failed,error:m.getErrorMessageFromTransactionRequest(e,u.TransactionRequestType.ReceiveFromShieldedAccount)}),f.Logger.error(`Error in auto deposit back:`,e)}};exports.handleAutoDepositBack=k;
1
+ const e=require(`../../constants/chains.constants.cjs`),t=require(`../../functions/utils/caseInsensitive.utils.cjs`),n=require(`../../error-handling/error-codes.constants.cjs`),r=require(`../../functions/web3/etherFunctions.cjs`),i=require(`../../functions/utils/time.utils.cjs`),a=require(`../../error-handling/customErrors/ErrorWithTx.cjs`),o=require(`../../error-handling/logger.cjs`),s=require(`../../types/external-action.types.cjs`),c=require(`../../types/transactions.types.cjs`),l=require(`../../types/admin.types.cjs`),u=require(`../../types/activities.types.cjs`),d=require(`../../types/transaction.types.cjs`),f=require(`../../types/offscreen.types.cjs`);require(`../../types/index.cjs`);const ee=require(`../../API/API.cjs`),p=require(`../../functions/utils/erc20tokenFunctions.cjs`),m=require(`../../error-handling/get-error.message.cjs`);require(`../../error-handling/index.cjs`);const h=require(`../../functions/pre-transaction/getVolatileTransferAmount.cjs`),g=require(`../../functions/utils/create-provider.cjs`),_=require(`../../functions/pre-transaction/getFeeStructure.cjs`),v=require(`../../functions/utils/convertEmporiumOpToCallInfo.cjs`),y=require(`../../functions/utils/postToOffscreen.cjs`),b=require(`../../functions/utils/fees.utils.cjs`),x=require(`../../functions/private-wallet/emporium.helpers.cjs`),S=require(`../../functions/auto-deposit-back-helpers/get-tokens-to-deposit-back.cjs`),C=require(`../../functions/auto-deposit-back-helpers/get-gas-token-records.cjs`),w=require(`../../functions/auto-deposit-back-helpers/select-gas-token.cjs`),T=require(`../../functions/auto-deposit-back-helpers/update-hinkal.cjs`);require(`../../functions/index.cjs`);const E=require(`../IndexedDB/activity-db.cjs`);require(`../IndexedDB/index.cjs`);var D=3*1e3,O=13*1e3,k=async(k,A,j,M,N,P,F,I)=>{if(!j||F.length===0)return;let L;try{let a=g.createJsonRpcProvider(A);await i.waitLittle(A===e.chainIds.ethMainnet?O:D);let o=await S.getTokensToDepositBack(F,N,j,a);if(!o.length){y.postToOffscreen(f.MessagesFromOffscreen.AutoShieldTxStatus,{message:n.transactionErrorCodes.AUTO_SHIELD_SKIPPED});return}let d=(await p.getErc20TokensBySymbolsFromAPI(await b.getGasTokenSymbols(A),A)).filter(e=>e!==void 0),{prices:m}=await ee.API.getTokenPrices(A,d.map(e=>e.erc20TokenAddress)),R=new Map(m.map((e,t)=>[d[t].erc20TokenAddress.toLowerCase(),e])),z=o.map(({token:e})=>e),B=o.map(({balance:e})=>e),V=z.map(({erc20TokenAddress:e})=>e),H=x.createTransaferEmporiumOpsBatch(k,A,V,await h.modifyVolatileTokenAmountChanges(A,z,B,j)),U=await _.getFeeStructure(A,N,V,s.ExternalActionId.Emporium,H.map(e=>v.convertEmporiumOpToCallInfo(e,j,A))),{flatFee:W}=U??{},G=await p.getErc20TokenFromAPI(A,U.feeToken);if(!G)return;let K=r.getAmountInToken(G,W),q=(R.get(G.erc20TokenAddress.toLowerCase())??0)*Number(K),J=await w.selectGasToken(N,q,A,z,H,await C.getGasTokenRecords(d,A,k,j,a,R),U,V,j);if(!J)return;let{feeToken:Y,feeStructure:X}=J??{};if(P&&Number(P)<q){y.postToOffscreen(f.MessagesFromOffscreen.AutoShieldTxStatus,{message:n.gasErrorCodes.GAS_PRICE_EXCEEDS_AUTOSHIELD_LIMIT});return}let Z=z.findIndex(e=>t.caseInsensitiveEqual(e.erc20TokenAddress,Y));Z!==-1&&(B[Z]-=X?.flatFee??0n);let{hinkalAddress:Q}=e.networkRegistry[A].contractData,$={activityType:u.ActivityTypes.AUTO_SHIELD,chainId:A,from:j,to:Q,gasInDollar:q.toString(),tokensReceive:z.map((e,t)=>({amount:r.getAmountInToken(e,B[t]),token:e}))};L=await E.activityStorage.saveTxRequest($),y.postToOffscreen(f.MessagesFromOffscreen.AutoShieldTxStatus,{status:c.TransactionStatus.Loading}),T.updateHinkal(A,k,I.inputNullifiers?.flat(),I.outCommitments?.flat(),I.encryptedOutputs?.flat());let te={id:0,success:!0,txHash:await k.actionReceive(z,B,Y,X,M,l.AdminTransactionType.AutoShield)};await E.activityStorage.updatePendingTransactions(te,L),y.postToOffscreen(f.MessagesFromOffscreen.AutoShieldTxStatus,{status:c.TransactionStatus.Confirmed,activityRequest:$})}catch(e){let t;e instanceof a.ErrorWithRelayerTransaction&&(t=e.txHash);let n={error:e,id:0,success:!1,...t?{erroredTx:t}:{}};L&&await E.activityStorage.updatePendingTransactions(n,L),y.postToOffscreen(f.MessagesFromOffscreen.AutoShieldTxStatus,{status:c.TransactionStatus.Failed,error:m.getErrorMessageFromTransactionRequest(e,d.TransactionRequestType.ReceiveFromShieldedAccount)}),o.Logger.error(`Error in auto deposit back:`,e)}};exports.handleAutoDepositBack=k;
@@ -4,14 +4,14 @@ import { gasErrorCodes as ee, transactionErrorCodes as r } from "../../error-han
4
4
  import { getAmountInToken as i } from "../../functions/web3/etherFunctions.mjs";
5
5
  import { waitLittle as a } from "../../functions/utils/time.utils.mjs";
6
6
  import { ErrorWithRelayerTransaction as o } from "../../error-handling/customErrors/ErrorWithTx.mjs";
7
- import { ExternalActionId as s } from "../../types/external-action.types.mjs";
8
- import { TransactionStatus as c } from "../../types/transactions.types.mjs";
9
- import { AdminTransactionType as l } from "../../types/admin.types.mjs";
10
- import { ActivityTypes as u } from "../../types/activities.types.mjs";
11
- import { TransactionRequestType as d } from "../../types/transaction.types.mjs";
12
- import { MessagesFromOffscreen as f } from "../../types/offscreen.types.mjs";
7
+ import { Logger as s } from "../../error-handling/logger.mjs";
8
+ import { ExternalActionId as c } from "../../types/external-action.types.mjs";
9
+ import { TransactionStatus as l } from "../../types/transactions.types.mjs";
10
+ import { AdminTransactionType as u } from "../../types/admin.types.mjs";
11
+ import { ActivityTypes as d } from "../../types/activities.types.mjs";
12
+ import { TransactionRequestType as f } from "../../types/transaction.types.mjs";
13
+ import { MessagesFromOffscreen as p } from "../../types/offscreen.types.mjs";
13
14
  import "../../types/index.mjs";
14
- import { Logger as p } from "../../error-handling/logger.mjs";
15
15
  import { API as te } from "../../API/API.mjs";
16
16
  import { getErc20TokenFromAPI as m, getErc20TokensBySymbolsFromAPI as h } from "../../functions/utils/erc20tokenFunctions.mjs";
17
17
  import { getErrorMessageFromTransactionRequest as g } from "../../error-handling/get-error.message.mjs";
@@ -37,24 +37,24 @@ var k = 3 * 1e3, ne = 13 * 1e3, A = async (A, j, M, N, P, F, I, L) => {
37
37
  try {
38
38
  let o = v(j);
39
39
  await a(j === e.ethMainnet ? ne : k);
40
- let d = await w(I, P, M, o);
41
- if (!d.length) {
42
- x(f.AutoShieldTxStatus, { message: r.AUTO_SHIELD_SKIPPED });
40
+ let s = await w(I, P, M, o);
41
+ if (!s.length) {
42
+ x(p.AutoShieldTxStatus, { message: r.AUTO_SHIELD_SKIPPED });
43
43
  return;
44
44
  }
45
- let p = (await h(await S(j), j)).filter((e) => e !== void 0), { prices: g } = await te.getTokenPrices(j, p.map((e) => e.erc20TokenAddress)), z = new Map(g.map((e, t) => [p[t].erc20TokenAddress.toLowerCase(), e])), B = d.map(({ token: e }) => e), V = d.map(({ balance: e }) => e), H = B.map(({ erc20TokenAddress: e }) => e), U = C(A, j, H, await _(j, B, V, M)), W = await y(j, P, H, s.Emporium, U.map((e) => b(e, M, j))), { flatFee: G } = W ?? {}, K = await m(j, W.feeToken);
45
+ let f = (await h(await S(j), j)).filter((e) => e !== void 0), { prices: g } = await te.getTokenPrices(j, f.map((e) => e.erc20TokenAddress)), z = new Map(g.map((e, t) => [f[t].erc20TokenAddress.toLowerCase(), e])), B = s.map(({ token: e }) => e), V = s.map(({ balance: e }) => e), H = B.map(({ erc20TokenAddress: e }) => e), U = C(A, j, H, await _(j, B, V, M)), W = await y(j, P, H, c.Emporium, U.map((e) => b(e, M, j))), { flatFee: G } = W ?? {}, K = await m(j, W.feeToken);
46
46
  if (!K) return;
47
- let q = i(K, G), J = (z.get(K.erc20TokenAddress.toLowerCase()) ?? 0) * Number(q), Y = await E(P, J, j, B, U, await T(p, j, A, M, o, z), W, H, M);
47
+ let q = i(K, G), J = (z.get(K.erc20TokenAddress.toLowerCase()) ?? 0) * Number(q), Y = await E(P, J, j, B, U, await T(f, j, A, M, o, z), W, H, M);
48
48
  if (!Y) return;
49
49
  let { feeToken: X, feeStructure: Z } = Y ?? {};
50
50
  if (F && Number(F) < J) {
51
- x(f.AutoShieldTxStatus, { message: ee.GAS_PRICE_EXCEEDS_AUTOSHIELD_LIMIT });
51
+ x(p.AutoShieldTxStatus, { message: ee.GAS_PRICE_EXCEEDS_AUTOSHIELD_LIMIT });
52
52
  return;
53
53
  }
54
54
  let Q = B.findIndex((e) => n(e.erc20TokenAddress, X));
55
55
  Q !== -1 && (V[Q] -= Z?.flatFee ?? 0n);
56
56
  let { hinkalAddress: re } = t[j].contractData, $ = {
57
- activityType: u.AUTO_SHIELD,
57
+ activityType: d.AUTO_SHIELD,
58
58
  chainId: j,
59
59
  from: M,
60
60
  to: re,
@@ -64,14 +64,14 @@ var k = 3 * 1e3, ne = 13 * 1e3, A = async (A, j, M, N, P, F, I, L) => {
64
64
  token: e
65
65
  }))
66
66
  };
67
- R = await O.saveTxRequest($), x(f.AutoShieldTxStatus, { status: c.Loading }), D(j, A, L.inputNullifiers?.flat(), L.outCommitments?.flat(), L.encryptedOutputs?.flat());
67
+ R = await O.saveTxRequest($), x(p.AutoShieldTxStatus, { status: l.Loading }), D(j, A, L.inputNullifiers?.flat(), L.outCommitments?.flat(), L.encryptedOutputs?.flat());
68
68
  let ie = {
69
69
  id: 0,
70
70
  success: !0,
71
- txHash: await A.actionReceive(B, V, X, Z, N, l.AutoShield)
71
+ txHash: await A.actionReceive(B, V, X, Z, N, u.AutoShield)
72
72
  };
73
- await O.updatePendingTransactions(ie, R), x(f.AutoShieldTxStatus, {
74
- status: c.Confirmed,
73
+ await O.updatePendingTransactions(ie, R), x(p.AutoShieldTxStatus, {
74
+ status: l.Confirmed,
75
75
  activityRequest: $
76
76
  });
77
77
  } catch (e) {
@@ -83,10 +83,10 @@ var k = 3 * 1e3, ne = 13 * 1e3, A = async (A, j, M, N, P, F, I, L) => {
83
83
  success: !1,
84
84
  ...t ? { erroredTx: t } : {}
85
85
  };
86
- R && await O.updatePendingTransactions(n, R), x(f.AutoShieldTxStatus, {
87
- status: c.Failed,
88
- error: g(e, d.ReceiveFromShieldedAccount)
89
- }), p.error("Error in auto deposit back:", e);
86
+ R && await O.updatePendingTransactions(n, R), x(p.AutoShieldTxStatus, {
87
+ status: l.Failed,
88
+ error: g(e, f.ReceiveFromShieldedAccount)
89
+ }), s.error("Error in auto deposit back:", e);
90
90
  }
91
91
  };
92
92
  //#endregion
@@ -1 +1 @@
1
- const e=require(`../../constants/protocol.constants.cjs`),t=require(`../../functions/utils/caseInsensitive.utils.cjs`),n=require(`../../error-handling/error-codes.constants.cjs`),r=require(`../../functions/web3/etherFunctions.cjs`),i=require(`../crypto-keys/keys.cjs`),a=require(`../../functions/utils/time.utils.cjs`),o=require(`../../types/external-action.types.cjs`),s=require(`../../types/token.types.cjs`),c=require(`../../functions/utils/addresses.cjs`),l=require(`../../error-handling/logger.cjs`),u=require(`../../API/API.cjs`),d=require(`../../functions/utils/erc20tokenFunctions.cjs`),f=require(`../../functions/pre-transaction/getFeeStructure.cjs`),p=require(`../../constants/addresses.constants.cjs`),m=require(`../../constants/bridging.constants.cjs`),h=require(`../../constants/tx-confirmation.constants.cjs`);require(`../../constants/index.cjs`);const g=require(`../../functions/utils/convertEmporiumOpToCallInfo.cjs`),_=require(`../../functions/utils/getRecipientInfoFromUserKeys.cjs`),v=require(`../../functions/utils/publicBalance.utils.cjs`),y=require(`../../functions/utils/getUtxosFromReceipt.utils.cjs`),b=require(`../../functions/utils/fees.utils.cjs`),x=require(`../../functions/utils/tx-confirmation.utils.cjs`),S=require(`../../functions/utils/temp-wallet.utils.cjs`),C=require(`../../functions/private-wallet/emporium.helpers.cjs`),w=require(`../../functions/web3/lifiAPI.cjs`);var T=async(n,i,a,l,f,m,h)=>{let{chainId:g}=i,_=a.chainId,v=i.erc20TokenAddress,y=p.SWAP_ROUTER_ADDRESSES[o.ExternalActionId.Lifi][g];if(!y)throw Error(`LIFI not configured for chain ${g}`);let b=r.randomBigInt(6),{privateKey:x,ethAddress:T}=S.deriveTempWallet(n,g,b),{lifiDataValue:E,outSwapAmountValue:D,extraNativeTokenFee:O}=await w.getLifiPrice(i,a,l,f,T,T),k={calldata:E,expectedAmount:D,nativeFee:O},A=r.getAmountInWei(i,l),j=S.buildTempSubAccount(b,x,T),M=c.hashEthereumAddress(await n.getEthereumAddressByChain(g));await Promise.all([u.API.addTemporaryWalletNonce(g,M,Number(b),s.TemporaryWalletRecoveryDestination.Confidential),u.API.addTemporaryWalletNonce(_,M,Number(b),s.TemporaryWalletRecoveryDestination.Confidential)]);let N=t.caseInsensitiveEqual(v,e.zeroAddress),P=k.nativeFee>0n&&!N,F=N?A+k.nativeFee:A,I=[i],L=[-F];if(P){let t=await d.getErc20TokenFromAPI(g,e.zeroAddress);if(!t)throw Error(`Native token not found for bridge fee`);I.push(t),L.push(-k.nativeFee)}let R=C.createLifiBridgeOps(n,g,T,y,v,F,A,k),z=I.map((e,t)=>({token:e,amount:L[t]}));return{nonce:b,tempSubAccount:j,sourceTxHash:await n.actionPrivateWallet(g,I,L,L.map(()=>!1),R,z,j,m??v,void 0,void 0,!1,void 0,h,void 0),quote:k}},E=async(e,t,n,r,i)=>{let o=BigInt(Math.round(i*m.SLIPPAGE_SCALING_FACTOR)),s=r.expectedAmount-r.expectedAmount*o/BigInt(m.SLIPPAGE_SCALING_FACTOR),c=s>0n?s:1n,l=Date.now()+m.BRIDGE_ARRIVAL_TIMEOUT_MS;for(;Date.now()<l;){let r=await v.getPublicBalanceByTokenAddress(e,t,n);if(r!==null&&r>=c)return r;await a.waitLittle(m.BRIDGE_ARRIVAL_POLL_INTERVAL_MS)}throw Error(`Bridge did not land on destination temp wallet ${t} on chain ${e} within timeout.`)},D=async(t,r,a,s,c,l)=>{let u=r.chainId,d=r.erc20TokenAddress,p=a.ethAddress;if(!p)throw Error(`Missing temp wallet address for bridge shield`);let m=C.createTransaferEmporiumOpsBatch(t,u,[d],[s]),v=await b.calculateModifiedFeeStructure(u,r,s,await f.getFeeStructure(u,d,[d],o.ExternalActionId.Emporium,m.map(e=>g.convertEmporiumOpToCallInfo(e,p,u)),e.PAY_SEND_VARIABLE_RATE)),S=s-b.calculateTotalFee(s,v);if(S<=0n)throw Error(n.transactionErrorCodes.INSUFFICIENT_FUNDS_TO_TRANSACT);let w,T;if(`recipientInfo`in c)w=c.recipientInfo;else{let e=t.userKeys.getClaimableSignatureFromNonce(c.claimableNonce),n=new i.UserKeys(e);T={signature:e,keys:n,ethAddress:c.recipientEthAddress},w=_.getRecipientInfoFromUserKeys(n)}let E=await t.proxyToPrivate([r],[S],a,w,v.feeToken,v,l),D;if(T){let e=await x.waitForEthereumTransactionConfirmation(u,E,{evmTimeoutMs:h.RELAYER_TX_CONFIRMATION_TIMEOUT});if(!e)throw Error(`Could not fetch receipt for bridge shield tx ${E}`);let[n]=y.getUtxosFromReceipt(e,t,u,d,T.keys.getShieldedPrivateKey());if(!n)throw Error(`Could not find recipient UTXO in bridge shield tx`);D={chainId:u,senderAddress:await t.getEthereumAddressByChain(u),recipientAddress:T.ethAddress,claimableSignature:T.signature,utxo:n}}return{destTxHash:E,pendingEnclaveUtxo:D}},O=async(e,t,n,r,i,a=m.DEFAULT_BRIDGING_SLIPPAGE_DECIMAL,o,s)=>{let{nonce:d,tempSubAccount:f,sourceTxHash:p,quote:h}=await T(e,t,n,r,a,o,s),g=f.ethAddress;if(!g)throw Error(`Missing temp wallet address for bridge`);let{destTxHash:_,pendingEnclaveUtxo:v}=await D(e,n,f,await E(n.chainId,g,n.erc20TokenAddress,h,a),i,s),y=c.hashEthereumAddress(await e.getEthereumAddressByChain(n.chainId)),b=[t.chainId,n.chainId];return(await Promise.allSettled(b.map(e=>u.API.removeTemporaryWalletNonce(e,y,Number(d))))).forEach((e,t)=>{e.status===`rejected`&&l.Logger.error(`Failed to remove temp-wallet nonce on chain ${b[t]}`,e.reason)}),{sourceTxHash:p,destTxHash:_,pendingEnclaveUtxo:v}};exports.hinkalBridgePrivateToPrivate=O;
1
+ const e=require(`../../constants/protocol.constants.cjs`),t=require(`../../functions/utils/caseInsensitive.utils.cjs`),n=require(`../../error-handling/error-codes.constants.cjs`),r=require(`../../functions/web3/etherFunctions.cjs`),i=require(`../crypto-keys/keys.cjs`),a=require(`../../functions/utils/time.utils.cjs`),o=require(`../../functions/utils/addresses.cjs`),s=require(`../../error-handling/logger.cjs`),c=require(`../../types/external-action.types.cjs`),l=require(`../../types/token.types.cjs`),u=require(`../../API/API.cjs`),d=require(`../../functions/utils/erc20tokenFunctions.cjs`),f=require(`../../functions/pre-transaction/getFeeStructure.cjs`),p=require(`../../constants/addresses.constants.cjs`),m=require(`../../constants/bridging.constants.cjs`),h=require(`../../constants/tx-confirmation.constants.cjs`);require(`../../constants/index.cjs`);const g=require(`../../functions/utils/convertEmporiumOpToCallInfo.cjs`),_=require(`../../functions/utils/getRecipientInfoFromUserKeys.cjs`),v=require(`../../functions/utils/publicBalance.utils.cjs`),y=require(`../../functions/utils/getUtxosFromReceipt.utils.cjs`),b=require(`../../functions/utils/fees.utils.cjs`),x=require(`../../functions/utils/tx-confirmation.utils.cjs`),S=require(`../../functions/utils/temp-wallet.utils.cjs`),C=require(`../../functions/private-wallet/emporium.helpers.cjs`),w=require(`../../functions/web3/lifiAPI.cjs`);var T=async(n,i,a,s,f,m,h)=>{let{chainId:g}=i,_=a.chainId,v=i.erc20TokenAddress,y=p.SWAP_ROUTER_ADDRESSES[c.ExternalActionId.Lifi][g];if(!y)throw Error(`LIFI not configured for chain ${g}`);let b=r.randomBigInt(6),{privateKey:x,ethAddress:T}=S.deriveTempWallet(n,g,b),{lifiDataValue:E,outSwapAmountValue:D,extraNativeTokenFee:O}=await w.getLifiPrice(i,a,s,f,T,T),k={calldata:E,expectedAmount:D,nativeFee:O},A=r.getAmountInWei(i,s),j=S.buildTempSubAccount(b,x,T),M=o.hashEthereumAddress(await n.getEthereumAddressByChain(g));await Promise.all([u.API.addTemporaryWalletNonce(g,M,Number(b),l.TemporaryWalletRecoveryDestination.Confidential),u.API.addTemporaryWalletNonce(_,M,Number(b),l.TemporaryWalletRecoveryDestination.Confidential)]);let N=t.caseInsensitiveEqual(v,e.zeroAddress),P=k.nativeFee>0n&&!N,F=N?A+k.nativeFee:A,I=[i],L=[-F];if(P){let t=await d.getErc20TokenFromAPI(g,e.zeroAddress);if(!t)throw Error(`Native token not found for bridge fee`);I.push(t),L.push(-k.nativeFee)}let R=C.createLifiBridgeOps(n,g,T,y,v,F,A,k),z=I.map((e,t)=>({token:e,amount:L[t]}));return{nonce:b,tempSubAccount:j,sourceTxHash:await n.actionPrivateWallet(g,I,L,L.map(()=>!1),R,z,j,m??v,void 0,void 0,!1,void 0,h,void 0),quote:k}},E=async(e,t,n,r,i)=>{let o=BigInt(Math.round(i*m.SLIPPAGE_SCALING_FACTOR)),s=r.expectedAmount-r.expectedAmount*o/BigInt(m.SLIPPAGE_SCALING_FACTOR),c=s>0n?s:1n,l=Date.now()+m.BRIDGE_ARRIVAL_TIMEOUT_MS;for(;Date.now()<l;){let r=await v.getPublicBalanceByTokenAddress(e,t,n);if(r!==null&&r>=c)return r;await a.waitLittle(m.BRIDGE_ARRIVAL_POLL_INTERVAL_MS)}throw Error(`Bridge did not land on destination temp wallet ${t} on chain ${e} within timeout.`)},D=async(t,r,a,o,s,l)=>{let u=r.chainId,d=r.erc20TokenAddress,p=a.ethAddress;if(!p)throw Error(`Missing temp wallet address for bridge shield`);let m=C.createTransaferEmporiumOpsBatch(t,u,[d],[o]),v=await b.calculateModifiedFeeStructure(u,r,o,await f.getFeeStructure(u,d,[d],c.ExternalActionId.Emporium,m.map(e=>g.convertEmporiumOpToCallInfo(e,p,u)),e.PAY_SEND_VARIABLE_RATE)),S=o-b.calculateTotalFee(o,v);if(S<=0n)throw Error(n.transactionErrorCodes.INSUFFICIENT_FUNDS_TO_TRANSACT);let w,T;if(`recipientInfo`in s)w=s.recipientInfo;else{let e=t.userKeys.getClaimableSignatureFromNonce(s.claimableNonce),n=new i.UserKeys(e);T={signature:e,keys:n,ethAddress:s.recipientEthAddress},w=_.getRecipientInfoFromUserKeys(n)}let E=await t.proxyToPrivate([r],[S],a,w,v.feeToken,v,l),D;if(T){let e=await x.waitForEthereumTransactionConfirmation(u,E,{evmTimeoutMs:h.RELAYER_TX_CONFIRMATION_TIMEOUT});if(!e)throw Error(`Could not fetch receipt for bridge shield tx ${E}`);let[n]=y.getUtxosFromReceipt(e,t,u,d,T.keys.getShieldedPrivateKey());if(!n)throw Error(`Could not find recipient UTXO in bridge shield tx`);D={chainId:u,senderAddress:await t.getEthereumAddressByChain(u),recipientAddress:T.ethAddress,claimableSignature:T.signature,utxo:n}}return{destTxHash:E,pendingEnclaveUtxo:D}},O=async(e,t,n,r,i,a=m.DEFAULT_BRIDGING_SLIPPAGE_DECIMAL,c,l)=>{let{nonce:d,tempSubAccount:f,sourceTxHash:p,quote:h}=await T(e,t,n,r,a,c,l),g=f.ethAddress;if(!g)throw Error(`Missing temp wallet address for bridge`);let{destTxHash:_,pendingEnclaveUtxo:v}=await D(e,n,f,await E(n.chainId,g,n.erc20TokenAddress,h,a),i,l),y=o.hashEthereumAddress(await e.getEthereumAddressByChain(n.chainId)),b=[t.chainId,n.chainId];return(await Promise.allSettled(b.map(e=>u.API.removeTemporaryWalletNonce(e,y,Number(d))))).forEach((e,t)=>{e.status===`rejected`&&s.Logger.error(`Failed to remove temp-wallet nonce on chain ${b[t]}`,e.reason)}),{sourceTxHash:p,destTxHash:_,pendingEnclaveUtxo:v}};exports.hinkalBridgePrivateToPrivate=O;