@hinkal/common 0.3.1 → 0.3.3

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 (636) hide show
  1. package/README.md +15 -18
  2. package/common/src/API/API.cjs +1 -1
  3. package/common/src/API/API.d.ts +12 -37
  4. package/common/src/API/API.mjs +80 -105
  5. package/common/src/API/callRelayer.d.ts +3 -0
  6. package/common/src/API/dashboardAccountMemberCalls.cjs +1 -1
  7. package/common/src/API/dashboardAccountMemberCalls.d.ts +15 -0
  8. package/common/src/API/dashboardAccountMemberCalls.mjs +5 -2
  9. package/common/src/API/dashboardPayoutCalls.cjs +1 -1
  10. package/common/src/API/dashboardPayoutCalls.d.ts +2 -1
  11. package/common/src/API/dashboardPayoutCalls.mjs +4 -1
  12. package/common/src/API/enclaveUtxoCalls.cjs +1 -1
  13. package/common/src/API/enclaveUtxoCalls.d.ts +17 -8
  14. package/common/src/API/enclaveUtxoCalls.mjs +5 -3
  15. package/common/src/API/getOdosPriceForToken.cjs +1 -0
  16. package/common/src/API/getOdosPriceForToken.d.ts +1 -0
  17. package/common/src/API/getOdosPriceForToken.mjs +14 -0
  18. package/common/src/API/getWebsiteURL.d.ts +1 -3
  19. package/common/src/API/index.cjs +1 -1
  20. package/common/src/API/index.d.ts +1 -3
  21. package/common/src/API/index.mjs +3 -5
  22. package/common/src/API/payoutNotificationStateCalls.cjs +1 -0
  23. package/common/src/API/payoutNotificationStateCalls.d.ts +10 -0
  24. package/common/src/API/payoutNotificationStateCalls.mjs +10 -0
  25. package/common/src/API/proxyAccountsCalls.cjs +1 -1
  26. package/common/src/API/proxyAccountsCalls.d.ts +2 -3
  27. package/common/src/API/proxyAccountsCalls.mjs +11 -10
  28. package/common/src/API/rewardsUserCalls.cjs +1 -1
  29. package/common/src/API/rewardsUserCalls.d.ts +1 -40
  30. package/common/src/API/rewardsUserCalls.mjs +2 -10
  31. package/common/src/API/scheduled-transactions-calls.d.ts +1 -0
  32. package/common/src/API/temporaryWalletCalls.cjs +1 -1
  33. package/common/src/API/temporaryWalletCalls.mjs +8 -8
  34. package/common/src/API/tenderly.api.cjs +1 -1
  35. package/common/src/API/tenderly.api.d.ts +5 -10
  36. package/common/src/API/tenderly.api.mjs +1 -1
  37. package/common/src/API/weeklyAnalyticCalls.cjs +1 -1
  38. package/common/src/API/weeklyAnalyticCalls.d.ts +1 -11
  39. package/common/src/API/weeklyAnalyticCalls.mjs +2 -5
  40. package/common/src/constants/addresses.constants.cjs +1 -1
  41. package/common/src/constants/addresses.constants.d.ts +4 -46
  42. package/common/src/constants/addresses.constants.mjs +19 -60
  43. package/common/src/constants/balance.constants.cjs +1 -0
  44. package/common/src/constants/balance.constants.d.ts +1 -0
  45. package/common/src/constants/balance.constants.mjs +4 -0
  46. package/common/src/constants/chains.constants.cjs +1 -1
  47. package/common/src/constants/chains.constants.d.ts +3 -1
  48. package/common/src/constants/chains.constants.mjs +117 -138
  49. package/common/src/constants/coingecko.constants.cjs +1 -1
  50. package/common/src/constants/coingecko.constants.d.ts +2 -0
  51. package/common/src/constants/coingecko.constants.mjs +1 -1
  52. package/common/src/constants/contracts.constants.cjs +1 -1
  53. package/common/src/constants/contracts.constants.d.ts +0 -109
  54. package/common/src/constants/contracts.constants.mjs +9 -31
  55. package/common/src/constants/deploy-data/deploy-data-arbMainnet.json.cjs +1 -1
  56. package/common/src/constants/deploy-data/deploy-data-arbMainnet.json.mjs +6 -9
  57. package/common/src/constants/deploy-data/deploy-data-arcTestnet.json.cjs +1 -1
  58. package/common/src/constants/deploy-data/deploy-data-arcTestnet.json.mjs +6 -6
  59. package/common/src/constants/deploy-data/deploy-data-base.json.cjs +1 -1
  60. package/common/src/constants/deploy-data/deploy-data-base.json.mjs +6 -9
  61. package/common/src/constants/deploy-data/deploy-data-bnbMainnet.json.cjs +1 -0
  62. package/common/src/constants/deploy-data/deploy-data-bnbMainnet.json.mjs +10 -0
  63. package/common/src/constants/deploy-data/deploy-data-ethMainnet.json.cjs +1 -1
  64. package/common/src/constants/deploy-data/deploy-data-ethMainnet.json.mjs +6 -9
  65. package/common/src/constants/deploy-data/deploy-data-localhost.json.cjs +1 -1
  66. package/common/src/constants/deploy-data/deploy-data-localhost.json.mjs +0 -3
  67. package/common/src/constants/deploy-data/deploy-data-optimism.json.cjs +1 -1
  68. package/common/src/constants/deploy-data/deploy-data-optimism.json.mjs +6 -9
  69. package/common/src/constants/deploy-data/deploy-data-optimismTest.json.cjs +1 -1
  70. package/common/src/constants/deploy-data/deploy-data-optimismTest.json.mjs +5 -9
  71. package/common/src/constants/deploy-data/deploy-data-polygon.json.cjs +1 -1
  72. package/common/src/constants/deploy-data/deploy-data-polygon.json.mjs +6 -9
  73. package/common/src/constants/deploy-data/deploy-data-sepoliaTestnet.json.cjs +1 -1
  74. package/common/src/constants/deploy-data/deploy-data-sepoliaTestnet.json.mjs +0 -1
  75. package/common/src/constants/deploy-data/deploy-data-solana.json.cjs +1 -1
  76. package/common/src/constants/deploy-data/deploy-data-solana.json.mjs +2 -2
  77. package/common/src/constants/deploy-data/deploy-data-tempo.json.cjs +1 -1
  78. package/common/src/constants/deploy-data/deploy-data-tempo.json.mjs +6 -7
  79. package/common/src/constants/deploy-data/deploy-data-tronMainnet.json.cjs +1 -1
  80. package/common/src/constants/deploy-data/deploy-data-tronMainnet.json.mjs +2 -4
  81. package/common/src/constants/deploy-data/deploy-data-tronNile.json.cjs +1 -1
  82. package/common/src/constants/deploy-data/deploy-data-tronNile.json.mjs +2 -4
  83. package/common/src/constants/deploy-data/index.cjs +1 -1
  84. package/common/src/constants/deploy-data/index.d.ts +2 -1
  85. package/common/src/constants/deploy-data/index.mjs +16 -15
  86. package/common/src/constants/deploy-data/shared-deploy-data-evm.json.cjs +1 -1
  87. package/common/src/constants/deploy-data/shared-deploy-data-evm.json.mjs +19 -45
  88. package/common/src/constants/deploy-data/shared-deploy-data-solana.json.cjs +1 -1
  89. package/common/src/constants/deploy-data/shared-deploy-data-solana.json.mjs +1 -1
  90. package/common/src/constants/deploy-data/shared-deploy-data-tron.json.cjs +1 -1
  91. package/common/src/constants/deploy-data/shared-deploy-data-tron.json.mjs +2 -46
  92. package/common/src/constants/enclaveAuth.constants.d.ts +5 -0
  93. package/common/src/constants/events.constants.cjs +1 -1
  94. package/common/src/constants/events.constants.mjs +3 -2
  95. package/common/src/constants/fees.constants.cjs +1 -1
  96. package/common/src/constants/fees.constants.mjs +2 -2
  97. package/common/src/constants/index.cjs +1 -1
  98. package/common/src/constants/index.d.ts +1 -3
  99. package/common/src/constants/index.mjs +1 -1
  100. package/common/src/constants/mediaUrls.constants.d.ts +0 -1
  101. package/common/src/constants/pay.constants.d.ts +1 -0
  102. package/common/src/constants/protocol.constants.cjs +2 -1
  103. package/common/src/constants/protocol.constants.d.ts +10 -6
  104. package/common/src/constants/protocol.constants.mjs +4 -11
  105. package/common/src/constants/server.constants.cjs +1 -1
  106. package/common/src/constants/server.constants.d.ts +6 -30
  107. package/common/src/constants/server.constants.mjs +11 -43
  108. package/common/src/constants/tokens.constants.cjs +1 -1
  109. package/common/src/constants/tokens.constants.mjs +1 -1
  110. package/common/src/crypto/ecdh.cjs +1 -1
  111. package/common/src/crypto/ecdh.mjs +2 -9
  112. package/common/src/crypto/index.cjs +1 -1
  113. package/common/src/crypto/index.mjs +1 -1
  114. package/common/src/data-structures/Hinkal/Hinkal.cjs +1 -1
  115. package/common/src/data-structures/Hinkal/Hinkal.d.ts +4 -8
  116. package/common/src/data-structures/Hinkal/Hinkal.mjs +88 -100
  117. package/common/src/data-structures/Hinkal/IHinkal.d.ts +5 -9
  118. package/common/src/data-structures/Hinkal/handleAutoDepositBack.cjs +1 -1
  119. package/common/src/data-structures/Hinkal/handleAutoDepositBack.d.ts +1 -1
  120. package/common/src/data-structures/Hinkal/handleAutoDepositBack.mjs +24 -23
  121. package/common/src/data-structures/Hinkal/hinkalActionReceive.cjs +1 -1
  122. package/common/src/data-structures/Hinkal/hinkalActionReceive.mjs +3 -3
  123. package/common/src/data-structures/Hinkal/hinkalBridgePrivateToPrivate.cjs +1 -1
  124. package/common/src/data-structures/Hinkal/hinkalBridgePrivateToPrivate.mjs +59 -57
  125. package/common/src/data-structures/Hinkal/hinkalClaimUtxo.cjs +1 -1
  126. package/common/src/data-structures/Hinkal/hinkalClaimUtxo.mjs +42 -50
  127. package/common/src/data-structures/Hinkal/hinkalDeposit.cjs +1 -1
  128. package/common/src/data-structures/Hinkal/hinkalDeposit.d.ts +1 -0
  129. package/common/src/data-structures/Hinkal/hinkalDeposit.mjs +50 -119
  130. package/common/src/data-structures/Hinkal/hinkalDepositAndBridge.cjs +1 -1
  131. package/common/src/data-structures/Hinkal/hinkalDepositAndBridge.mjs +108 -100
  132. package/common/src/data-structures/Hinkal/hinkalDepositAndWithdraw.cjs +1 -1
  133. package/common/src/data-structures/Hinkal/hinkalDepositAndWithdraw.d.ts +3 -2
  134. package/common/src/data-structures/Hinkal/hinkalDepositAndWithdraw.mjs +105 -64
  135. package/common/src/data-structures/Hinkal/hinkalDepositOnChainUtxos.cjs +1 -1
  136. package/common/src/data-structures/Hinkal/hinkalDepositOnChainUtxos.d.ts +1 -1
  137. package/common/src/data-structures/Hinkal/hinkalDepositOnChainUtxos.mjs +33 -43
  138. package/common/src/data-structures/Hinkal/hinkalNearDepositAndBridge.cjs +1 -1
  139. package/common/src/data-structures/Hinkal/hinkalNearDepositAndBridge.mjs +7 -3
  140. package/common/src/data-structures/Hinkal/hinkalPalEvmDeposit.d.ts +1 -1
  141. package/common/src/data-structures/Hinkal/hinkalPalTronDepositPrepare.d.ts +2 -2
  142. package/common/src/data-structures/Hinkal/hinkalPrivateWallet.cjs +1 -1
  143. package/common/src/data-structures/Hinkal/hinkalPrivateWallet.mjs +50 -38
  144. package/common/src/data-structures/Hinkal/hinkalProoflessDeposit.cjs +1 -1
  145. package/common/src/data-structures/Hinkal/hinkalProoflessDeposit.d.ts +2 -3
  146. package/common/src/data-structures/Hinkal/hinkalProoflessDeposit.mjs +52 -117
  147. package/common/src/data-structures/Hinkal/hinkalProoflessDeposit.utils.cjs +1 -1
  148. package/common/src/data-structures/Hinkal/hinkalProoflessDeposit.utils.d.ts +3 -0
  149. package/common/src/data-structures/Hinkal/hinkalProoflessDeposit.utils.mjs +26 -32
  150. package/common/src/data-structures/Hinkal/hinkalProxyToPrivate.cjs +1 -1
  151. package/common/src/data-structures/Hinkal/hinkalProxyToPrivate.mjs +6 -6
  152. package/common/src/data-structures/Hinkal/hinkalSolanaClaimUtxo.cjs +1 -1
  153. package/common/src/data-structures/Hinkal/hinkalSolanaClaimUtxo.mjs +71 -51
  154. package/common/src/data-structures/Hinkal/hinkalSolanaDeposit.cjs +1 -1
  155. package/common/src/data-structures/Hinkal/hinkalSolanaDeposit.d.ts +2 -2
  156. package/common/src/data-structures/Hinkal/hinkalSolanaDeposit.mjs +47 -51
  157. package/common/src/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.cjs +1 -1
  158. package/common/src/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.d.ts +8 -4
  159. package/common/src/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.mjs +155 -102
  160. package/common/src/data-structures/Hinkal/hinkalSolanaProoflessDeposit.cjs +1 -1
  161. package/common/src/data-structures/Hinkal/hinkalSolanaProoflessDeposit.d.ts +1 -1
  162. package/common/src/data-structures/Hinkal/hinkalSolanaProoflessDeposit.mjs +16 -12
  163. package/common/src/data-structures/Hinkal/hinkalSolanaProxyShield.cjs +1 -1
  164. package/common/src/data-structures/Hinkal/hinkalSolanaProxyShield.d.ts +2 -2
  165. package/common/src/data-structures/Hinkal/hinkalSolanaProxyShield.mjs +61 -54
  166. package/common/src/data-structures/Hinkal/hinkalSolanaProxySwap.cjs +1 -1
  167. package/common/src/data-structures/Hinkal/hinkalSolanaProxySwap.mjs +1 -1
  168. package/common/src/data-structures/Hinkal/hinkalSolanaSwap.cjs +1 -1
  169. package/common/src/data-structures/Hinkal/hinkalSolanaSwap.mjs +87 -51
  170. package/common/src/data-structures/Hinkal/hinkalSolanaTransfer.cjs +1 -1
  171. package/common/src/data-structures/Hinkal/hinkalSolanaTransfer.d.ts +1 -0
  172. package/common/src/data-structures/Hinkal/hinkalSolanaTransfer.mjs +97 -52
  173. package/common/src/data-structures/Hinkal/hinkalSolanaWithdraw.cjs +1 -1
  174. package/common/src/data-structures/Hinkal/hinkalSolanaWithdraw.mjs +60 -34
  175. package/common/src/data-structures/Hinkal/hinkalSwap.cjs +1 -1
  176. package/common/src/data-structures/Hinkal/hinkalSwap.mjs +29 -32
  177. package/common/src/data-structures/Hinkal/hinkalTransact.cjs +1 -0
  178. package/common/src/data-structures/Hinkal/hinkalTransact.d.ts +3 -0
  179. package/common/src/data-structures/Hinkal/hinkalTransact.mjs +90 -0
  180. package/common/src/data-structures/Hinkal/hinkalTransfer.cjs +1 -1
  181. package/common/src/data-structures/Hinkal/hinkalTransfer.mjs +39 -44
  182. package/common/src/data-structures/Hinkal/hinkalTronDepositToSelf.cjs +1 -0
  183. package/common/src/data-structures/Hinkal/hinkalTronDepositToSelf.d.ts +8 -0
  184. package/common/src/data-structures/Hinkal/hinkalTronDepositToSelf.mjs +30 -0
  185. package/common/src/data-structures/Hinkal/hinkalWithdraw.cjs +1 -1
  186. package/common/src/data-structures/Hinkal/hinkalWithdraw.mjs +35 -49
  187. package/common/src/data-structures/Hinkal/hinkalWithdrawStuckUtxos.cjs +1 -1
  188. package/common/src/data-structures/Hinkal/hinkalWithdrawStuckUtxos.mjs +170 -101
  189. package/common/src/data-structures/Hinkal/index.d.ts +0 -1
  190. package/common/src/data-structures/Hinkal/prepareTronDepositToSelf.cjs +1 -0
  191. package/common/src/data-structures/Hinkal/prepareTronDepositToSelf.d.ts +27 -0
  192. package/common/src/data-structures/Hinkal/prepareTronDepositToSelf.mjs +31 -0
  193. package/common/src/data-structures/Hinkal/resetMerkleTrees.cjs +1 -1
  194. package/common/src/data-structures/Hinkal/resetMerkleTrees.mjs +5 -4
  195. package/common/src/data-structures/IndexedDB/contact-db.cjs +1 -1
  196. package/common/src/data-structures/IndexedDB/contact-db.d.ts +0 -1
  197. package/common/src/data-structures/IndexedDB/contact-db.mjs +14 -28
  198. package/common/src/data-structures/IndexedDB/key-val-store.cjs +1 -1
  199. package/common/src/data-structures/IndexedDB/key-val-store.d.ts +2 -0
  200. package/common/src/data-structures/IndexedDB/key-val-store.mjs +14 -0
  201. package/common/src/data-structures/IndexedDB/private-balances-db.cjs +1 -1
  202. package/common/src/data-structures/IndexedDB/private-balances-db.d.ts +1 -0
  203. package/common/src/data-structures/IndexedDB/private-balances-db.mjs +3 -0
  204. package/common/src/data-structures/MultiThreadedUtxoUtils/MultiThreadedUtxoUtils.cjs +1 -1
  205. package/common/src/data-structures/MultiThreadedUtxoUtils/MultiThreadedUtxoUtils.mjs +25 -25
  206. package/common/src/data-structures/TokenDBs/AlchemyPublicTokensDB.cjs +1 -1
  207. package/common/src/data-structures/TokenDBs/AlchemyPublicTokensDB.mjs +15 -14
  208. package/common/src/data-structures/TokenDBs/ArcPublicTokensDB.cjs +1 -1
  209. package/common/src/data-structures/TokenDBs/ArcPublicTokensDB.mjs +7 -7
  210. package/common/src/data-structures/TokenDBs/EventsPublicTokensDB.cjs +1 -1
  211. package/common/src/data-structures/TokenDBs/EventsPublicTokensDB.mjs +30 -30
  212. package/common/src/data-structures/TokenDBs/PrivateTokensDB.cjs +1 -1
  213. package/common/src/data-structures/TokenDBs/PrivateTokensDB.mjs +6 -6
  214. package/common/src/data-structures/TokenDBs/TempoPublicTokensDB.cjs +1 -1
  215. package/common/src/data-structures/TokenDBs/TempoPublicTokensDB.mjs +12 -16
  216. package/common/src/data-structures/TokenDBs/TronPublicTokensDB.cjs +1 -1
  217. package/common/src/data-structures/TokenDBs/TronPublicTokensDB.d.ts +1 -0
  218. package/common/src/data-structures/TokenDBs/TronPublicTokensDB.mjs +22 -18
  219. package/common/src/data-structures/WalletManager/WalletManager.d.ts +1 -0
  220. package/common/src/data-structures/cacheDevices/BaseCacheDevice.cjs +1 -1
  221. package/common/src/data-structures/cacheDevices/BaseCacheDevice.d.ts +1 -0
  222. package/common/src/data-structures/cacheDevices/BaseCacheDevice.mjs +3 -0
  223. package/common/src/data-structures/cacheDevices/FileCacheDevice.cjs +1 -1
  224. package/common/src/data-structures/cacheDevices/FileCacheDevice.d.ts +3 -0
  225. package/common/src/data-structures/cacheDevices/FileCacheDevice.mjs +12 -3
  226. package/common/src/data-structures/crypto-keys/decodeUTXO.cjs +1 -1
  227. package/common/src/data-structures/crypto-keys/decodeUTXO.d.ts +9 -9
  228. package/common/src/data-structures/crypto-keys/decodeUTXO.mjs +37 -47
  229. package/common/src/data-structures/crypto-keys/encryptDecryptUtxo.cjs +1 -1
  230. package/common/src/data-structures/crypto-keys/encryptDecryptUtxo.d.ts +2 -3
  231. package/common/src/data-structures/crypto-keys/encryptDecryptUtxo.mjs +26 -22
  232. package/common/src/data-structures/crypto-keys/keys.cjs +1 -1
  233. package/common/src/data-structures/crypto-keys/keys.d.ts +12 -27
  234. package/common/src/data-structures/crypto-keys/keys.mjs +61 -79
  235. package/common/src/data-structures/event-service/evm/BlockchainEventEmitter.cjs +1 -1
  236. package/common/src/data-structures/event-service/evm/BlockchainEventEmitter.d.ts +1 -2
  237. package/common/src/data-structures/event-service/evm/BlockchainEventEmitter.mjs +14 -20
  238. package/common/src/data-structures/event-service/evm/ClientBlockchainEventEmitter.cjs +1 -1
  239. package/common/src/data-structures/event-service/evm/ClientBlockchainEventEmitter.d.ts +1 -1
  240. package/common/src/data-structures/event-service/evm/ClientBlockchainEventEmitter.mjs +2 -2
  241. package/common/src/data-structures/event-service/helpers/ClientEventHelper.cjs +1 -1
  242. package/common/src/data-structures/event-service/helpers/ClientEventHelper.mjs +6 -6
  243. package/common/src/data-structures/event-service/solana/AbstractSolanaCommitmentsSnapshotService.cjs +1 -1
  244. package/common/src/data-structures/event-service/solana/AbstractSolanaCommitmentsSnapshotService.mjs +27 -23
  245. package/common/src/data-structures/merkle-tree/MerkleTree.cjs +1 -1
  246. package/common/src/data-structures/merkle-tree/MerkleTree.d.ts +10 -0
  247. package/common/src/data-structures/merkle-tree/MerkleTree.mjs +9 -1
  248. package/common/src/data-structures/private-balances/HinkalPrivateBalanceController.cjs +1 -1
  249. package/common/src/data-structures/private-balances/HinkalPrivateBalanceController.d.ts +3 -0
  250. package/common/src/data-structures/private-balances/HinkalPrivateBalanceController.mjs +29 -19
  251. package/common/src/data-structures/provider-adapter/IProviderAdapter.d.ts +0 -1
  252. package/common/src/data-structures/utxo/Utxo.cjs +1 -1
  253. package/common/src/data-structures/utxo/Utxo.d.ts +1 -4
  254. package/common/src/data-structures/utxo/Utxo.mjs +7 -17
  255. package/common/src/error-handling/error-codes.constants.cjs +2 -2
  256. package/common/src/error-handling/error-codes.constants.d.ts +6 -14
  257. package/common/src/error-handling/error-codes.constants.mjs +21 -31
  258. package/common/src/error-handling/get-error.message.cjs +1 -1
  259. package/common/src/error-handling/get-error.message.mjs +27 -14
  260. package/common/src/error-handling/index.cjs +1 -1
  261. package/common/src/error-handling/index.d.ts +1 -0
  262. package/common/src/error-handling/index.mjs +1 -0
  263. package/common/src/externalABIs/index.cjs +1 -1
  264. package/common/src/externalABIs/index.d.ts +1 -113
  265. package/common/src/externalABIs/index.mjs +2 -6
  266. package/common/src/functions/index.cjs +1 -1
  267. package/common/src/functions/index.d.ts +0 -1
  268. package/common/src/functions/index.mjs +13 -16
  269. package/common/src/functions/pre-transaction/buildCommitmentValidationData.cjs +1 -1
  270. package/common/src/functions/pre-transaction/buildCommitmentValidationData.mjs +36 -38
  271. package/common/src/functions/pre-transaction/calculateSolanaNullifierCount.cjs +1 -1
  272. package/common/src/functions/pre-transaction/calculateSolanaNullifierCount.mjs +39 -5
  273. package/common/src/functions/pre-transaction/getExternalSwapAddress.cjs +1 -1
  274. package/common/src/functions/pre-transaction/getExternalSwapAddress.mjs +2 -18
  275. package/common/src/functions/pre-transaction/getSolanaCalldataHash.cjs +1 -1
  276. package/common/src/functions/pre-transaction/getSolanaCalldataHash.d.ts +1 -1
  277. package/common/src/functions/pre-transaction/getSolanaCalldataHash.mjs +11 -10
  278. package/common/src/functions/pre-transaction/getVolatileTransferAmount.cjs +1 -1
  279. package/common/src/functions/pre-transaction/getVolatileTransferAmount.mjs +12 -12
  280. package/common/src/functions/pre-transaction/index.cjs +1 -1
  281. package/common/src/functions/pre-transaction/index.d.ts +1 -2
  282. package/common/src/functions/pre-transaction/index.mjs +1 -2
  283. package/common/src/functions/pre-transaction/outputUtxoProcessing.cjs +1 -1
  284. package/common/src/functions/pre-transaction/outputUtxoProcessing.d.ts +1 -1
  285. package/common/src/functions/pre-transaction/outputUtxoProcessing.mjs +9 -12
  286. package/common/src/functions/pre-transaction/solana-public-signals.d.ts +1 -0
  287. package/common/src/functions/pre-transaction/solana.cjs +1 -1
  288. package/common/src/functions/pre-transaction/solana.d.ts +13 -0
  289. package/common/src/functions/pre-transaction/solana.mjs +46 -21
  290. package/common/src/functions/pre-transaction/store-proof.cjs +1 -1
  291. package/common/src/functions/pre-transaction/store-proof.d.ts +1 -1
  292. package/common/src/functions/pre-transaction/store-proof.mjs +1 -0
  293. package/common/src/functions/pre-transaction/waitForDepositedUtxosInMerkleTree.cjs +1 -1
  294. package/common/src/functions/pre-transaction/waitForDepositedUtxosInMerkleTree.mjs +1 -1
  295. package/common/src/functions/private-wallet/emporium.helpers.cjs +1 -1
  296. package/common/src/functions/private-wallet/emporium.helpers.d.ts +1 -2
  297. package/common/src/functions/private-wallet/emporium.helpers.mjs +75 -50
  298. package/common/src/functions/private-wallet/emporium.swap.helpers.cjs +1 -1
  299. package/common/src/functions/private-wallet/emporium.swap.helpers.d.ts +0 -1
  300. package/common/src/functions/private-wallet/emporium.swap.helpers.mjs +34 -76
  301. package/common/src/functions/private-wallet/index.cjs +1 -1
  302. package/common/src/functions/private-wallet/index.d.ts +0 -1
  303. package/common/src/functions/private-wallet/index.mjs +0 -1
  304. package/common/src/functions/snarkjs/common.snarkjs.cjs +1 -1
  305. package/common/src/functions/snarkjs/common.snarkjs.d.ts +3 -4
  306. package/common/src/functions/snarkjs/common.snarkjs.mjs +97 -62
  307. package/common/src/functions/snarkjs/constant.cjs +1 -1
  308. package/common/src/functions/snarkjs/constant.d.ts +183 -144
  309. package/common/src/functions/snarkjs/constant.mjs +183 -145
  310. package/common/src/functions/snarkjs/constructGeneralZkProof.cjs +1 -1
  311. package/common/src/functions/snarkjs/constructGeneralZkProof.d.ts +1 -1
  312. package/common/src/functions/snarkjs/constructGeneralZkProof.mjs +69 -57
  313. package/common/src/functions/snarkjs/constructSignatureFromMnemonicProofInput.cjs +1 -0
  314. package/common/src/functions/snarkjs/constructSignatureFromMnemonicProofInput.d.ts +7 -0
  315. package/common/src/functions/snarkjs/constructSignatureFromMnemonicProofInput.mjs +2 -0
  316. package/common/src/functions/snarkjs/constructSolanaZkProof.cjs +1 -1
  317. package/common/src/functions/snarkjs/constructSolanaZkProof.d.ts +4 -1
  318. package/common/src/functions/snarkjs/constructSolanaZkProof.mjs +63 -62
  319. package/common/src/functions/snarkjs/constructTxEnclave.cjs +1 -0
  320. package/common/src/functions/snarkjs/constructTxEnclave.d.ts +32 -0
  321. package/common/src/functions/snarkjs/constructTxEnclave.mjs +162 -0
  322. package/common/src/functions/snarkjs/fetchMerkleTreeSiblings.d.ts +1 -3
  323. package/common/src/functions/snarkjs/fetchOnChainRootHashes.cjs +1 -1
  324. package/common/src/functions/snarkjs/fetchOnChainRootHashes.d.ts +1 -0
  325. package/common/src/functions/snarkjs/fetchOnChainRootHashes.mjs +14 -5
  326. package/common/src/functions/snarkjs/fetchTronInsertionSiblings.cjs +1 -0
  327. package/common/src/functions/snarkjs/fetchTronInsertionSiblings.d.ts +7 -0
  328. package/common/src/functions/snarkjs/fetchTronInsertionSiblings.mjs +13 -0
  329. package/common/src/functions/snarkjs/generateCircomData.cjs +1 -1
  330. package/common/src/functions/snarkjs/generateCircomData.d.ts +1 -1
  331. package/common/src/functions/snarkjs/generateCircomData.mjs +41 -31
  332. package/common/src/functions/snarkjs/generateMainAndCommitmentZkProof.cjs +1 -1
  333. package/common/src/functions/snarkjs/generateMainAndCommitmentZkProof.d.ts +1 -1
  334. package/common/src/functions/snarkjs/generateMainAndCommitmentZkProof.mjs +7 -7
  335. package/common/src/functions/snarkjs/generateSignatureFromMnemonicProof.cjs +1 -0
  336. package/common/src/functions/snarkjs/generateSignatureFromMnemonicProof.d.ts +2 -0
  337. package/common/src/functions/snarkjs/generateSignatureFromMnemonicProof.mjs +3 -0
  338. package/common/src/functions/snarkjs/generateZkProof.cjs +1 -1
  339. package/common/src/functions/snarkjs/generateZkProof.d.ts +1 -1
  340. package/common/src/functions/snarkjs/generateZkProof.mjs +9 -16
  341. package/common/src/functions/snarkjs/getMerkleTreeSiblingsAndRootHashes.cjs +1 -1
  342. package/common/src/functions/snarkjs/getMerkleTreeSiblingsAndRootHashes.d.ts +2 -0
  343. package/common/src/functions/snarkjs/getMerkleTreeSiblingsAndRootHashes.mjs +18 -12
  344. package/common/src/functions/snarkjs/getZKFiles.cjs +1 -1
  345. package/common/src/functions/snarkjs/getZKFiles.mjs +9 -3
  346. package/common/src/functions/snarkjs/index.cjs +1 -1
  347. package/common/src/functions/snarkjs/index.d.ts +2 -0
  348. package/common/src/functions/snarkjs/index.mjs +2 -0
  349. package/common/src/functions/snarkjs/signedMessageHash.cjs +1 -1
  350. package/common/src/functions/snarkjs/signedMessageHash.d.ts +12 -0
  351. package/common/src/functions/snarkjs/signedMessageHash.mjs +23 -3
  352. package/common/src/functions/snarkjs/verifySignedEnclaveResponse.cjs +1 -0
  353. package/common/src/functions/snarkjs/verifySignedEnclaveResponse.d.ts +1 -0
  354. package/common/src/functions/snarkjs/verifySignedEnclaveResponse.mjs +11 -0
  355. package/common/src/functions/utils/addresses.cjs +1 -1
  356. package/common/src/functions/utils/addresses.d.ts +1 -1
  357. package/common/src/functions/utils/addresses.mjs +13 -12
  358. package/common/src/functions/utils/bridge-flow.utils.d.ts +1 -1
  359. package/common/src/functions/utils/buildClaimableDepositPlan.d.ts +3 -2
  360. package/common/src/functions/utils/convertEmporiumOpToCallInfo.cjs +1 -1
  361. package/common/src/functions/utils/convertEmporiumOpToCallInfo.mjs +5 -10
  362. package/common/src/functions/utils/convertIntegrationProviderToExternalActionId.cjs +1 -1
  363. package/common/src/functions/utils/convertIntegrationProviderToExternalActionId.mjs +1 -1
  364. package/common/src/functions/utils/deposit-claimable.utils.cjs +1 -1
  365. package/common/src/functions/utils/deposit-claimable.utils.d.ts +1 -1
  366. package/common/src/functions/utils/deposit-claimable.utils.mjs +3 -1
  367. package/common/src/functions/utils/enclave-utxo-storage.cjs +1 -1
  368. package/common/src/functions/utils/enclave-utxo-storage.d.ts +3 -0
  369. package/common/src/functions/utils/enclave-utxo-storage.mjs +1 -1
  370. package/common/src/functions/utils/enclaveSessionSigning.cjs +1 -0
  371. package/common/src/functions/utils/enclaveSessionSigning.d.ts +16 -0
  372. package/common/src/functions/utils/enclaveSessionSigning.mjs +2 -0
  373. package/common/src/functions/utils/encodeTokenWithId.cjs +1 -1
  374. package/common/src/functions/utils/encodeTokenWithId.d.ts +1 -2
  375. package/common/src/functions/utils/encodeTokenWithId.mjs +2 -5
  376. package/common/src/functions/utils/fees.utils.cjs +1 -1
  377. package/common/src/functions/utils/fees.utils.d.ts +1 -0
  378. package/common/src/functions/utils/fees.utils.mjs +32 -28
  379. package/common/src/functions/utils/formatter.d.ts +1 -0
  380. package/common/src/functions/utils/getDataFromTransaction.d.ts +4 -3
  381. package/common/src/functions/utils/getRecipientInfoFromUserKeys.cjs +1 -1
  382. package/common/src/functions/utils/getRecipientInfoFromUserKeys.mjs +2 -3
  383. package/common/src/functions/utils/getUtxosFromReceipt.utils.cjs +1 -1
  384. package/common/src/functions/utils/getUtxosFromReceipt.utils.mjs +6 -6
  385. package/common/src/functions/utils/getUtxosFromReceiptSolana.cjs +1 -1
  386. package/common/src/functions/utils/getUtxosFromReceiptSolana.mjs +17 -18
  387. package/common/src/functions/utils/index.cjs +1 -1
  388. package/common/src/functions/utils/index.d.ts +7 -3
  389. package/common/src/functions/utils/index.mjs +16 -11
  390. package/common/src/functions/utils/legacyKeys.cjs +1 -0
  391. package/common/src/functions/utils/legacyKeys.d.ts +10 -0
  392. package/common/src/functions/utils/legacyKeys.mjs +8 -0
  393. package/common/src/functions/utils/mnemonics.cjs +1 -1
  394. package/common/src/functions/utils/mnemonics.mjs +4 -6
  395. package/common/src/functions/utils/nearIntents.utils.cjs +1 -1
  396. package/common/src/functions/utils/nearIntents.utils.mjs +1 -1
  397. package/common/src/functions/utils/networks.utils.d.ts +1 -0
  398. package/common/src/functions/utils/prepareHinkal.cjs +1 -1
  399. package/common/src/functions/utils/prepareHinkal.d.ts +1 -3
  400. package/common/src/functions/utils/prepareHinkal.mjs +2 -1
  401. package/common/src/functions/utils/process.utils.cjs +1 -1
  402. package/common/src/functions/utils/process.utils.d.ts +0 -1
  403. package/common/src/functions/utils/process.utils.mjs +2 -11
  404. package/common/src/functions/utils/publicBalance.utils.cjs +1 -1
  405. package/common/src/functions/utils/publicBalance.utils.mjs +2 -1
  406. package/common/src/functions/utils/resolve-domain-address.cjs +1 -0
  407. package/common/src/functions/utils/resolve-domain-address.d.ts +4 -0
  408. package/common/src/functions/utils/resolve-domain-address.mjs +3 -0
  409. package/common/src/functions/utils/serialize-utxos.utils.cjs +1 -1
  410. package/common/src/functions/utils/serialize-utxos.utils.mjs +6 -4
  411. package/common/src/functions/utils/transfer-claimable.utils.cjs +1 -1
  412. package/common/src/functions/utils/transfer-claimable.utils.mjs +2 -2
  413. package/common/src/functions/utils/tron.utils.cjs +1 -1
  414. package/common/src/functions/utils/tron.utils.d.ts +5 -14
  415. package/common/src/functions/utils/tron.utils.mjs +91 -142
  416. package/common/src/functions/utils/validateWalletAddress.cjs +1 -0
  417. package/common/src/functions/utils/validateWalletAddress.d.ts +1 -0
  418. package/common/src/functions/utils/validateWalletAddress.mjs +2 -0
  419. package/common/src/functions/utils/voidWallets.utils.cjs +1 -0
  420. package/common/src/functions/utils/voidWallets.utils.d.ts +4 -0
  421. package/common/src/functions/utils/voidWallets.utils.mjs +1 -0
  422. package/common/src/functions/utils/waasStamp.cjs +1 -0
  423. package/common/src/functions/utils/waasStamp.d.ts +5 -0
  424. package/common/src/functions/utils/waasStamp.mjs +2 -0
  425. package/common/src/functions/web3/etherFunctions.d.ts +1 -0
  426. package/common/src/functions/web3/events/getInputUtxoAndBalance.cjs +1 -1
  427. package/common/src/functions/web3/events/getInputUtxoAndBalance.d.ts +5 -12
  428. package/common/src/functions/web3/events/getInputUtxoAndBalance.mjs +50 -61
  429. package/common/src/functions/web3/events/getInputUtxosEnclave.cjs +1 -1
  430. package/common/src/functions/web3/events/getInputUtxosEnclave.d.ts +4 -3
  431. package/common/src/functions/web3/events/getInputUtxosEnclave.mjs +34 -25
  432. package/common/src/functions/web3/events/getShieldedBalance.cjs +1 -1
  433. package/common/src/functions/web3/events/getShieldedBalance.d.ts +2 -2
  434. package/common/src/functions/web3/events/getShieldedBalance.mjs +89 -85
  435. package/common/src/functions/web3/fetchSolanaMerkleTreeRootHash.cjs +1 -1
  436. package/common/src/functions/web3/fetchSolanaMerkleTreeRootHash.mjs +9 -6
  437. package/common/src/functions/web3/functionCalls/approveToken.cjs +1 -1
  438. package/common/src/functions/web3/functionCalls/approveToken.d.ts +1 -1
  439. package/common/src/functions/web3/functionCalls/approveToken.mjs +21 -107
  440. package/common/src/functions/web3/functionCalls/constructBatchCall.cjs +1 -1
  441. package/common/src/functions/web3/functionCalls/constructBatchCall.d.ts +2 -2
  442. package/common/src/functions/web3/functionCalls/constructBatchCall.mjs +23 -18
  443. package/common/src/functions/web3/functionCalls/submitProof.cjs +1 -0
  444. package/common/src/functions/web3/functionCalls/submitProof.d.ts +5 -0
  445. package/common/src/functions/web3/functionCalls/submitProof.mjs +26 -0
  446. package/common/src/functions/web3/functionCalls/transactCallDirectTron.cjs +1 -1
  447. package/common/src/functions/web3/functionCalls/transactCallDirectTron.d.ts +7 -3
  448. package/common/src/functions/web3/functionCalls/transactCallDirectTron.mjs +81 -53
  449. package/common/src/functions/web3/functionCalls/transactCallRelayer.cjs +1 -1
  450. package/common/src/functions/web3/functionCalls/transactCallRelayer.d.ts +6 -11
  451. package/common/src/functions/web3/functionCalls/transactCallRelayer.mjs +4 -2
  452. package/common/src/functions/web3/getContractMetadata.cjs +1 -1
  453. package/common/src/functions/web3/getContractMetadata.mjs +1 -1
  454. package/common/src/functions/web3/getTokenHolder.cjs +1 -1
  455. package/common/src/functions/web3/getTokenHolder.mjs +3 -2
  456. package/common/src/functions/web3/index.cjs +1 -1
  457. package/common/src/functions/web3/index.d.ts +0 -3
  458. package/common/src/functions/web3/index.mjs +0 -3
  459. package/common/src/functions/web3/lifiAPI.cjs +1 -1
  460. package/common/src/functions/web3/lifiAPI.mjs +1 -1
  461. package/common/src/providers/EthersProviderAdapter.cjs +1 -1
  462. package/common/src/providers/EthersProviderAdapter.d.ts +0 -1
  463. package/common/src/providers/EthersProviderAdapter.mjs +0 -3
  464. package/common/src/providers/SolanaProviderAdapter.cjs +1 -1
  465. package/common/src/providers/SolanaProviderAdapter.d.ts +0 -1
  466. package/common/src/providers/SolanaProviderAdapter.mjs +0 -3
  467. package/common/src/providers/TronProviderAdapter.cjs +1 -1
  468. package/common/src/providers/TronProviderAdapter.d.ts +0 -1
  469. package/common/src/providers/TronProviderAdapter.mjs +7 -4
  470. package/common/src/providers/WagmiProviderAdapter.cjs +1 -1
  471. package/common/src/providers/WagmiProviderAdapter.d.ts +0 -1
  472. package/common/src/providers/WagmiProviderAdapter.mjs +0 -4
  473. package/common/src/types/API.types.d.ts +0 -4
  474. package/common/src/types/WeeklyAnalytics.types.d.ts +1 -26
  475. package/common/src/types/activities.types.cjs +1 -1
  476. package/common/src/types/activities.types.d.ts +0 -9
  477. package/common/src/types/activities.types.mjs +1 -1
  478. package/common/src/types/admin.types.cjs +1 -1
  479. package/common/src/types/admin.types.d.ts +3 -1
  480. package/common/src/types/admin.types.mjs +1 -1
  481. package/common/src/types/bridging-tx.types.d.ts +8 -0
  482. package/common/src/types/cache.types.cjs +1 -1
  483. package/common/src/types/cache.types.d.ts +3 -2
  484. package/common/src/types/cache.types.mjs +1 -1
  485. package/common/src/types/circom-data.types.cjs +1 -1
  486. package/common/src/types/circom-data.types.d.ts +32 -27
  487. package/common/src/types/circom-data.types.mjs +1 -1
  488. package/common/src/types/commitments.types.d.ts +2 -0
  489. package/common/src/types/dashboard-account.d.ts +15 -0
  490. package/common/src/types/dashboard-payout.types.d.ts +1 -0
  491. package/common/src/types/dashboard-transaction.types.d.ts +3 -0
  492. package/common/src/types/enclaveApi.types.d.ts +78 -0
  493. package/common/src/types/ethereum-network.types.cjs +1 -1
  494. package/common/src/types/ethereum-network.types.d.ts +8 -27
  495. package/common/src/types/ethereum-network.types.mjs +1 -1
  496. package/common/src/types/external-action.types.cjs +1 -1
  497. package/common/src/types/external-action.types.d.ts +4 -8
  498. package/common/src/types/external-action.types.mjs +1 -1
  499. package/common/src/types/hinkal.types.cjs +1 -1
  500. package/common/src/types/hinkal.types.d.ts +12 -29
  501. package/common/src/types/hinkal.types.mjs +12 -20
  502. package/common/src/types/index.cjs +1 -1
  503. package/common/src/types/index.d.ts +5 -5
  504. package/common/src/types/index.mjs +1 -1
  505. package/common/src/types/near-intents.types.d.ts +1 -0
  506. package/common/src/types/new-rewards.type.d.ts +0 -70
  507. package/common/src/types/offscreen.types.cjs +1 -1
  508. package/common/src/types/offscreen.types.d.ts +0 -1
  509. package/common/src/types/offscreen.types.mjs +1 -1
  510. package/common/src/types/pay-activities.types.d.ts +3 -0
  511. package/common/src/types/payout-notification.types.d.ts +11 -0
  512. package/common/src/types/proxy-progress.types.d.ts +5 -0
  513. package/common/src/types/remote-proof.types.d.ts +0 -6
  514. package/common/src/types/remote-tx-build.types.d.ts +242 -0
  515. package/common/src/types/scheduled-transactions.types.d.ts +3 -0
  516. package/common/src/types/snark.types.d.ts +1 -3
  517. package/common/src/types/solana.types.d.ts +7 -0
  518. package/common/src/types/tenderly.api.types.d.ts +70 -0
  519. package/common/src/types/token.types.cjs +1 -1
  520. package/common/src/types/token.types.mjs +1 -3
  521. package/common/src/types/transact.types.cjs +1 -0
  522. package/common/src/types/transact.types.d.ts +53 -0
  523. package/common/src/types/transact.types.mjs +6 -0
  524. package/common/src/types/transaction.types.d.ts +0 -1
  525. package/common/src/types/transactions.types.d.ts +0 -1
  526. package/common/src/webworker/logError-CxZzSALU.js +2 -0
  527. package/common/src/webworker/package.json +12 -12
  528. package/common/src/webworker/snarkjsWorker/snarkjsWorkerLauncher.ts?worker&url.cjs +1 -1
  529. package/common/src/webworker/snarkjsWorker/snarkjsWorkerLauncher.ts?worker&url.mjs +1 -1
  530. package/common/src/webworker/snarkjsWorkerNode.cjs +1 -1
  531. package/common/src/webworker/utxoWorker/utxoWorkerLauncher.ts?worker&url.cjs +1 -1
  532. package/common/src/webworker/utxoWorker/utxoWorkerLauncher.ts?worker&url.mjs +1 -1
  533. package/common/src/webworker/utxoWorkerNode.cjs +1 -1
  534. package/common/src/webworker/viteWorkerURL.constant.cjs +3 -3
  535. package/common/src/webworker/viteWorkerURL.constant.mjs +3 -3
  536. package/common/src/webworker/workerProxy-swwPYw6e.js +1 -0
  537. package/common/src/webworker/zkProofWorker/zkProofWorkerLauncher.ts?worker&url.cjs +1 -1
  538. package/common/src/webworker/zkProofWorker/zkProofWorkerLauncher.ts?worker&url.mjs +1 -1
  539. package/common/src/webworker/zkProofWorkerNode.cjs +1 -1
  540. package/index.cjs +1 -1
  541. package/index.mjs +1 -1
  542. package/internal/swapApi.cjs +1 -1
  543. package/internal/swapApi.d.ts +3 -3
  544. package/internal/swapApi.mjs +22 -25
  545. package/package.json +12 -12
  546. package/services/Hinkal.cjs +1 -1
  547. package/services/Hinkal.d.ts +4 -5
  548. package/services/Hinkal.mjs +11 -14
  549. package/types/IHinkal.d.ts +4 -5
  550. package/types/swap.types.d.ts +3 -20
  551. package/common/src/API/accessCodeCalls.cjs +0 -1
  552. package/common/src/API/accessCodeCalls.d.ts +0 -23
  553. package/common/src/API/accessCodeCalls.mjs +0 -13
  554. package/common/src/API/brotherhoodCalls.cjs +0 -1
  555. package/common/src/API/brotherhoodCalls.d.ts +0 -82
  556. package/common/src/API/brotherhoodCalls.mjs +0 -17
  557. package/common/src/API/callOdosAPI.cjs +0 -1
  558. package/common/src/API/callOdosAPI.d.ts +0 -63
  559. package/common/src/API/callOdosAPI.mjs +0 -18
  560. package/common/src/API/callOneInchAPI.cjs +0 -1
  561. package/common/src/API/callOneInchAPI.d.ts +0 -18
  562. package/common/src/API/callOneInchAPI.mjs +0 -13
  563. package/common/src/API/generate-trading-points.cjs +0 -1
  564. package/common/src/API/generate-trading-points.d.ts +0 -27
  565. package/common/src/API/generate-trading-points.mjs +0 -23
  566. package/common/src/API/leaderboardCalls.cjs +0 -1
  567. package/common/src/API/leaderboardCalls.d.ts +0 -14
  568. package/common/src/API/leaderboardCalls.mjs +0 -8
  569. package/common/src/API/referralsCalls.cjs +0 -1
  570. package/common/src/API/referralsCalls.d.ts +0 -22
  571. package/common/src/API/referralsCalls.mjs +0 -11
  572. package/common/src/API/send-telegram-callback.cjs +0 -1
  573. package/common/src/API/send-telegram-callback.d.ts +0 -7
  574. package/common/src/API/send-telegram-callback.mjs +0 -11
  575. package/common/src/constants/mystery-boxes.constants.d.ts +0 -0
  576. package/common/src/constants/price-impact.constants.d.ts +0 -2
  577. package/common/src/constants/rewards.constants.d.ts +0 -15
  578. package/common/src/constants/tasks.constants.cjs +0 -1
  579. package/common/src/constants/tasks.constants.d.ts +0 -9
  580. package/common/src/constants/tasks.constants.mjs +0 -124
  581. package/common/src/data-structures/Hinkal/hinkalMultiSend.cjs +0 -1
  582. package/common/src/data-structures/Hinkal/hinkalMultiSend.d.ts +0 -3
  583. package/common/src/data-structures/Hinkal/hinkalMultiSend.mjs +0 -12
  584. package/common/src/data-structures/Hinkal/hinkalProoflessDepositViaWrapper.cjs +0 -1
  585. package/common/src/data-structures/Hinkal/hinkalProoflessDepositViaWrapper.d.ts +0 -6
  586. package/common/src/data-structures/Hinkal/hinkalProoflessDepositViaWrapper.mjs +0 -128
  587. package/common/src/data-structures/Hinkal/prepareDepositOnChainUtxosZkProof.cjs +0 -1
  588. package/common/src/data-structures/Hinkal/prepareDepositOnChainUtxosZkProof.d.ts +0 -22
  589. package/common/src/data-structures/Hinkal/prepareDepositOnChainUtxosZkProof.mjs +0 -34
  590. package/common/src/externalABIs/IQuoterV2.json.cjs +0 -1
  591. package/common/src/externalABIs/IQuoterV2.json.mjs +0 -203
  592. package/common/src/externalABIs/ISwapRouter.json.cjs +0 -1
  593. package/common/src/externalABIs/ISwapRouter.json.mjs +0 -537
  594. package/common/src/externalABIs/IUniswapV3Factory.json.cjs +0 -1
  595. package/common/src/externalABIs/IUniswapV3Factory.json.mjs +0 -188
  596. package/common/src/externalABIs/IUniswapV3Pool.json.cjs +0 -1
  597. package/common/src/externalABIs/IUniswapV3Pool.json.mjs +0 -938
  598. package/common/src/externalABIs/UniswapV2PoolAbi.json.cjs +0 -1
  599. package/common/src/externalABIs/UniswapV2PoolAbi.json.mjs +0 -78
  600. package/common/src/functions/pre-transaction/interaction-to-action.cjs +0 -1
  601. package/common/src/functions/pre-transaction/interaction-to-action.d.ts +0 -2
  602. package/common/src/functions/pre-transaction/interaction-to-action.mjs +0 -1
  603. package/common/src/functions/pre-transaction/recipientUtxoProcessing.cjs +0 -1
  604. package/common/src/functions/pre-transaction/recipientUtxoProcessing.d.ts +0 -3
  605. package/common/src/functions/pre-transaction/recipientUtxoProcessing.mjs +0 -32
  606. package/common/src/functions/private-wallet/opProducer.cjs +0 -1
  607. package/common/src/functions/private-wallet/opProducer.d.ts +0 -5
  608. package/common/src/functions/private-wallet/opProducer.mjs +0 -3
  609. package/common/src/functions/snarkjs/generateZkProofEnclave.cjs +0 -1
  610. package/common/src/functions/snarkjs/generateZkProofEnclave.d.ts +0 -5
  611. package/common/src/functions/snarkjs/generateZkProofEnclave.mjs +0 -27
  612. package/common/src/functions/utils/bit.operations.cjs +0 -1
  613. package/common/src/functions/utils/bit.operations.d.ts +0 -3
  614. package/common/src/functions/utils/bit.operations.mjs +0 -4
  615. package/common/src/functions/utils/get-signature-header.cjs +0 -1
  616. package/common/src/functions/utils/get-signature-header.d.ts +0 -5
  617. package/common/src/functions/utils/get-signature-header.mjs +0 -4
  618. package/common/src/functions/web3/odosAPI.cjs +0 -1
  619. package/common/src/functions/web3/odosAPI.d.ts +0 -5
  620. package/common/src/functions/web3/odosAPI.mjs +0 -35
  621. package/common/src/functions/web3/oneInchAPI.cjs +0 -1
  622. package/common/src/functions/web3/oneInchAPI.d.ts +0 -5
  623. package/common/src/functions/web3/oneInchAPI.mjs +0 -34
  624. package/common/src/functions/web3/uniswapAPI.cjs +0 -1
  625. package/common/src/functions/web3/uniswapAPI.d.ts +0 -16
  626. package/common/src/functions/web3/uniswapAPI.mjs +0 -60
  627. package/common/src/types/brotherhood-user.types.d.ts +0 -11
  628. package/common/src/types/crypto.types.d.ts +0 -8
  629. package/common/src/types/generatePoints.d.ts +0 -14
  630. package/common/src/types/new-rewards.type.cjs +0 -1
  631. package/common/src/types/new-rewards.type.mjs +0 -10
  632. package/common/src/types/referral.types.d.ts +0 -12
  633. package/common/src/types/rewards.types.d.ts +0 -34
  634. package/common/src/types/token-with-id.types.d.ts +0 -4
  635. package/common/src/webworker/logError-BR5TJP6T.js +0 -2
  636. package/common/src/webworker/workerProxy-Ddzxn23N.js +0 -1
@@ -8,70 +8,89 @@ import { Utxo as s } from "../utxo/Utxo.mjs";
8
8
  import { ExternalActionId as c } from "../../types/external-action.types.mjs";
9
9
  import "../../types/index.mjs";
10
10
  import { validateAndGetChainId as l } from "../../functions/utils/token-check.utils.mjs";
11
- import { calcEncryptedOutputs as u } from "../../functions/snarkjs/common.snarkjs.mjs";
12
- import { getFeeStructure as d } from "../../functions/pre-transaction/getFeeStructure.mjs";
13
- import { constructSolanaZkProof as f } from "../../functions/snarkjs/constructSolanaZkProof.mjs";
11
+ import { finalizeSolanaTxEnclaveCallRelay as u, prepareSolanaTxEnclaveCall as d } from "../../functions/snarkjs/constructTxEnclave.mjs";
12
+ import { getFeeStructure as f } from "../../functions/pre-transaction/getFeeStructure.mjs";
14
13
  import { solanaTransactCallRelayer as p } from "../../functions/web3/functionCalls/transactCallRelayer.mjs";
15
- import { ethers as m } from "ethers";
14
+ import { constructSolanaZkProof as m } from "../../functions/snarkjs/constructSolanaZkProof.mjs";
16
15
  //#region libs/shared/common/src/data-structures/Hinkal/hinkalSolanaClaimUtxo.ts
17
- var h = async (h, g, _, v, y) => {
18
- let b = l([g]), x = g.erc20TokenAddress;
19
- if (_.getTokenAddress(b) !== x) throw Error("Off-chain UTXO token mismatch");
20
- let S = y ? new a(y) : new a(_.nullifyingKey, _.nullifyingKey);
21
- if (!_.nullifyingKey && !y) throw Error("Claimable UTXO nullifyingKey is missing");
22
- let C = S.getShieldedPrivateKey();
23
- if (_.nullifyingKey && _.nullifyingKey !== C) throw Error("Claimable UTXO key mismatch");
24
- let { originalDeployer: w } = e[b].contractData;
25
- if (!w) throw Error("missing data");
26
- let T = s.createFrom(_, { nullifyingKey: C }), E = v ?? await d(b, x, [x], c.Transact, void 0, void 0, {
27
- mintTo: x,
28
- nullifierCount: 1
16
+ var h = async (e, t, r, i, a, o, s, c, l, f, p) => {
17
+ let { jobId: m, signedMessageHash: h } = await d(e, {
18
+ chainId: t,
19
+ mintAddresses: [r],
20
+ amountChanges: i,
21
+ relayAddress: a,
22
+ recipient: n,
23
+ signer: a,
24
+ functionName: "transfer",
25
+ accounts: o,
26
+ relayerFee: l,
27
+ variableRate: 0n,
28
+ hinkalInstructions: [],
29
+ remainingAccounts: [],
30
+ recipientAddress: s,
31
+ recipientAmounts: [c],
32
+ inputCommitments: [p]
33
+ }, f), { R8: g, S: _ } = f.signEddsa(BigInt(h));
34
+ return u(m, {
35
+ R8: g,
36
+ S: _
37
+ }, t);
38
+ }, g = async (u, d, g, _, v) => {
39
+ let y = l([d]), b = d.erc20TokenAddress;
40
+ if (g.getTokenAddress(y) !== b) throw Error("Off-chain UTXO token mismatch");
41
+ let x = v ? new a(v) : new a(g.nullifyingKey, g.nullifyingKey);
42
+ if (!g.nullifyingKey && !v) throw Error("Claimable UTXO nullifyingKey is missing");
43
+ let S = x.getShieldedPrivateKey();
44
+ if (g.nullifyingKey && g.nullifyingKey !== S) throw Error("Claimable UTXO key mismatch");
45
+ let { originalDeployer: C } = e[y].contractData;
46
+ if (!C) throw Error("missing data");
47
+ let w = s.createFrom(g, { nullifyingKey: S }), T = _ ?? await f(y, b, [b], c.Transact, void 0, void 0, {
48
+ mintTo: b,
49
+ nullifierCount: 1,
50
+ rootInsertCount: 2
29
51
  });
30
- if (E.feeToken !== x) throw Error("Claim fee token mismatch: fee must be paid from claimed UTXO token");
31
- let D = E.variableRate > 0n ? E.variableRate : t;
32
- if (T.amount <= E.flatFee) throw Error(r.INSUFFICIENT_FUNDS_TO_TRANSACT);
33
- let O = T.amount - E.flatFee, k = O * D / 10000n, A = O - k;
34
- if (A <= 0n) throw Error(r.RECIPIENT_AMOUNT_INVALID);
35
- let j = E.flatFee + k, [M, N, P, , F] = h.getRecipientInfo().split(",");
52
+ if (T.feeToken !== b) throw Error("Claim fee token mismatch: fee must be paid from claimed UTXO token");
53
+ let E = T.variableRate > 0n ? T.variableRate : t;
54
+ if (w.amount <= T.flatFee) throw Error(r.INSUFFICIENT_FUNDS_TO_TRANSACT);
55
+ let D = w.amount - T.flatFee, O = D * E / 10000n, k = D - O;
56
+ if (k <= 0n) throw Error(r.RECIPIENT_AMOUNT_INVALID);
57
+ let A = T.flatFee + O, j = u.getRecipientInfo(), [M, N, P, , , F] = j.split(",");
36
58
  if (!N || !P || !M || !F) throw Error("Invalid recipient info");
37
59
  let I = o().toString(), L = new s({
38
60
  amount: 0n,
39
- erc20TokenAddress: T.erc20TokenAddress,
40
- mintAddress: T.mintAddress,
41
- nullifyingKey: S.getShieldedPrivateKey(),
42
- ...T.isNewStyle ? {
43
- spendingPublicKey: S.getSpendingKeyPair().pubSpendingBJJPoint,
44
- isNewStyle: !0
45
- } : { isNewStyle: !1 }
61
+ erc20TokenAddress: w.erc20TokenAddress,
62
+ mintAddress: w.mintAddress,
63
+ nullifyingKey: x.getShieldedPrivateKey(),
64
+ spendingPublicKey: x.getSpendingKeyPair().pubSpendingBJJPoint
46
65
  }), R = new s({
47
66
  amount: 0n,
48
- erc20TokenAddress: T.erc20TokenAddress,
49
- mintAddress: T.mintAddress,
50
- nullifyingKey: S.getShieldedPrivateKey(),
67
+ erc20TokenAddress: w.erc20TokenAddress,
68
+ mintAddress: w.mintAddress,
69
+ nullifyingKey: x.getShieldedPrivateKey(),
51
70
  timeStamp: I,
52
- spendingPublicKey: S.getSpendingKeyPair().pubSpendingBJJPoint,
53
- isNewStyle: !0
71
+ spendingPublicKey: x.getSpendingKeyPair().pubSpendingBJJPoint
54
72
  }), z = new s({
55
- amount: A,
56
- erc20TokenAddress: T.erc20TokenAddress,
57
- mintAddress: T.mintAddress,
73
+ amount: k,
74
+ erc20TokenAddress: w.erc20TokenAddress,
75
+ mintAddress: w.mintAddress,
58
76
  timeStamp: I,
59
77
  H0: [BigInt(N), BigInt(P)],
60
78
  stealthAddress: M,
61
- encryptionKey: F,
62
- isNewStyle: !0
63
- }), B = [T, L], V = [R, z], H = await h.getRandomRelay(b, !0);
79
+ encryptionKey: F
80
+ }), B = [w, L], V = [R, z], H = await u.getRandomRelay(y, !0);
64
81
  if (!H) throw Error(r.RELAYER_NOT_AVAILABLE);
65
- let U = a.findCorrectRandomization(i(31), S.getShieldedPrivateKey()), W = {
82
+ let U = {
83
+ recipient: H,
84
+ mint: b === "11111111111111111111111111111111" ? void 0 : b
85
+ };
86
+ if (u.generateProofRemotely) return h(u, y, b, [-(k + A)], H, U, j, k, A, x, w.getCommitment());
87
+ let W = a.findCorrectRandomization(i(31), x.getShieldedPrivateKey()), G = {
66
88
  tokenNumber: 1,
67
89
  nullifierAmount: B.length,
68
90
  outputAmount: V.length
69
- }, G = u([V])[0].map((e) => Array.from(m.getBytes(e))), { proofAArr: K, proofBArr: q, proofCArr: J, publicInputsArr: Y, commitmentValidationData: X } = await f(h.generateProofRemotely, h.merkleTreeHinkalByChain[b], S, [x], [B], [V], U, j, 0n, n, H, W, G, b), Z = {
70
- recipient: H,
71
- mint: x === "11111111111111111111111111111111" ? void 0 : x
72
- };
91
+ }, { proofAArr: K, proofBArr: q, proofCArr: J, publicInputsArr: Y, commitmentValidationData: X, rootHashHinkalIndex: Z, encryptedOutputs: Q } = await m(u.merkleTreeHinkalByChain[y], x, [b], [B], [V], W, A, 0n, n, H, G, void 0, y);
73
92
  return p({
74
- chainId: b,
93
+ chainId: y,
75
94
  relayAddress: H,
76
95
  functionName: "transfer",
77
96
  args: {
@@ -79,13 +98,14 @@ var h = async (h, g, _, v, y) => {
79
98
  proofBArr: q,
80
99
  proofCArr: J,
81
100
  publicInputsArr: Y,
82
- encryptedOutputs: G,
83
- relayerFee: j.toString(),
84
- dimensions: W
101
+ encryptedOutputs: Q,
102
+ relayerFee: A.toString(),
103
+ dimensions: G,
104
+ rootHashIndex: Z.toString()
85
105
  },
86
- accounts: Z,
106
+ accounts: U,
87
107
  commitmentValidationData: X
88
108
  });
89
109
  };
90
110
  //#endregion
91
- export { h as hinkalSolanaClaimUtxo };
111
+ export { g as hinkalSolanaClaimUtxo };
@@ -1 +1 @@
1
- require(`../../../../_virtual/_rolldown/runtime.cjs`);const e=require(`../../constants/chains.constants.cjs`),t=require(`../../constants/protocol.constants.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/solanaMint.utils.cjs`),o=require(`../../functions/utils/addresses.cjs`),s=require(`../../functions/utils/token-check.utils.cjs`),c=require(`../../functions/snarkjs/common.snarkjs.cjs`),l=require(`../../functions/pre-transaction/solana.cjs`),u=require(`../../functions/pre-transaction/constructAdminData.cjs`),d=require(`../../error-handling/retrySolanaError.cjs`),f=require(`../../API/admin-calls.cjs`),p=require(`../../functions/pre-transaction/solanaTransfer.utils.cjs`),m=require(`./hinkalProoflessDeposit.utils.cjs`);let h=require(`@solana/web3.js`),g=require(`@coral-xyz/anchor`);var _=(n,r)=>{let i=s.validateAndGetChainId([r]),o=r.erc20TokenAddress,{hinkalIdl:c,hinkalAddress:u,originalDeployer:d}=e.networkRegistry[i].contractData;if(!c)throw Error(`No IDL configured for Solana program on this network`);if(!d)throw Error(`missing original deployer`);let f=n.getSolanaProgram(c),p=n.getSolanaPublicKey(),{connection:m,wallet:g}=f.provider;if(!g)throw Error(`missing solana wallet`);let _=new h.PublicKey(d),v=new h.PublicKey(u),{mintPublicKey:y}=a.formatMintAddress(o),b=y.toString()===t.solanaNativeAddress;return{chainId:i,mintAddress:o,program:f,publicKey:p,connection:m,wallet:g,originalDeployer:_,mintPublicKey:y,mint:b?null:y,atasValue:b?null:void 0,storageAccount:l.getStorageAccountPublicKey(v,_),storageVault:l.getStorageVaultPublicKey(v,_),merkleAccount:l.getMerkleAccountPublicKey(v,_)}},v=(e,t,n)=>{let r=n.map(e=>l.buildAnchorStealthAddressStructure(e));return e.program.methods.multiPaymentDeposit(t.map(e=>new g.BN(e.toString())),r,!1).accounts({mint:e.mint,signer:e.publicKey,signerAta:e.atasValue,originalDeployer:e.originalDeployer,storageAccount:e.storageAccount,storageVault:e.storageVault,merkleAccount:e.merkleAccount,storageVaultAta:e.atasValue}).instruction()},y=async(e,t,n,r)=>{for(let i=0;i<10;i+=1){let a=i===9;try{let{blockhash:i,lastValidBlockHeight:a}=await e.getLatestBlockhash(),o=new h.VersionedTransaction(new h.TransactionMessage({payerKey:n,recentBlockhash:i,instructions:r}).compileToV0Message()),s=await t.signTransaction(o),c=await e.sendTransaction(s);return await e.confirmTransaction({signature:c,blockhash:i,lastValidBlockHeight:a},`confirmed`),c}catch(e){if(d.shouldRetryForSolanaError(e)&&!a)continue;throw e}}return``},b=(e,t)=>{if(e.length===0)throw Error(`amounts must not be empty`);if(e.length!==t.length)throw Error(`amounts and stealthAddressStructures length mismatch`);if(e.some(e=>e<=0n))throw Error(`all amounts must be positive`);m.assertNoDuplicateStealthAddressStructures(t)},x=async(e,t,n,r,i,a=!1)=>{b(n,r);let o=_(e,t),s=u.constructAdminData(i,o.chainId,Array(n.length).fill(o.mintAddress),n,await e.getEthereumAddress()),c=await v(o,n,r);if(a){let{blockhash:e}=await o.connection.getLatestBlockhash(),t=new h.Transaction().add(c);return t.recentBlockhash=e,t.feePayer=o.publicKey,Buffer.from(t.serialize({requireAllSignatures:!1})).toString(`base64`)}let l=await y(o.connection,o.wallet,o.publicKey,[c]);return await f.emitTxPublicData(s),l},S=async(e,t,n,r,i,a)=>{b(n,r);let o=_(e,t),s=await e.getRandomRelay(o.chainId,!1);if(!s)throw Error(`No relay available for chainId ${o.chainId}`);let{instructions:c}=await p.buildSolanaTransferInstructions(o.connection,o.publicKey,new h.PublicKey(s),t,i),l=await v(o,n,r),d=u.constructAdminData(a,o.chainId,Array(n.length).fill(o.mintAddress),n,await e.getEthereumAddress()),m=await y(o.connection,o.wallet,o.publicKey,[...c,l]);return await f.emitTxPublicData(d),m},C=async(e,t,n,a=!1)=>{let o=e.userKeys.getShieldedPrivateKey(),s=c.calcStealthAddressStructure(i.UserKeys.findCorrectRandomization(r.randomBigInt(31),o),o,e.userKeys.getSpendingKeyPair().pubSpendingBJJPoint);return x(e,n,[t],[s],void 0,a)},w=async(e,t,r,i,a=!1,s)=>{if(!o.isValidPrivateAddress(i))throw Error(n.transactionErrorCodes.RECIPIENT_FORMAT_INCORRECT);let c=o.constructStealthAddressStructure(i);return x(e,r,[t],[c],s,a)};exports.hinkalSolanaDeposit=C,exports.hinkalSolanaDepositForOther=w,exports.hinkalSolanaProoflessDepositWithPublicFee=S,exports.submitSolanaProoflessDeposit=x;
1
+ require(`../../../../_virtual/_rolldown/runtime.cjs`);const e=require(`../../constants/chains.constants.cjs`),t=require(`../../constants/protocol.constants.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/solanaMint.utils.cjs`),o=require(`../../functions/utils/addresses.cjs`),s=require(`../../functions/utils/token-check.utils.cjs`),c=require(`../../functions/snarkjs/common.snarkjs.cjs`),l=require(`../../functions/pre-transaction/solana.cjs`),u=require(`../../functions/pre-transaction/constructAdminData.cjs`),d=require(`../../error-handling/retrySolanaError.cjs`),f=require(`../../API/admin-calls.cjs`),p=require(`./hinkalProoflessDeposit.utils.cjs`);require(`../../functions/pre-transaction/solanaTransfer.utils.cjs`);let m=require(`@solana/web3.js`),h=require(`@coral-xyz/anchor`);var g=(n,r)=>{let i=s.validateAndGetChainId([r]),o=r.erc20TokenAddress,{hinkalIdl:c,hinkalAddress:u,originalDeployer:d}=e.networkRegistry[i].contractData;if(!c)throw Error(`No IDL configured for Solana program on this network`);if(!d)throw Error(`missing original deployer`);let f=n.getSolanaProgram(c),p=n.getSolanaPublicKey(),{connection:h,wallet:g}=f.provider;if(!g)throw Error(`missing solana wallet`);let _=new m.PublicKey(d),v=new m.PublicKey(u),{mintPublicKey:y}=a.formatMintAddress(o),b=y.toString()===t.solanaNativeAddress;return{chainId:i,mintAddress:o,program:f,publicKey:p,connection:h,wallet:g,originalDeployer:_,mintPublicKey:y,mint:b?null:y,atasValue:b?null:void 0,storageAccount:l.getStorageAccountPublicKey(v,_),storageVault:l.getStorageVaultPublicKey(v,_),merkleAccount:l.getMerkleAccountPublicKey(v,_)}},_=async(e,t,n,r,i)=>{let a=n.map(e=>l.buildAnchorStealthAddressStructure(e)),o=p.buildProoflessEncryptedOutputs(n,r).map(e=>Buffer.from(e.slice(2),`hex`)),{current:s,next:c}=await l.resolveSolanaRootBuckets(e.program,e.merkleAccount,t.length);return e.program.methods.multiPaymentDeposit(t.map(e=>new h.BN(e.toString())),a,o,i).accounts({mint:e.mint,signer:e.publicKey,signerAta:e.atasValue,originalDeployer:e.originalDeployer,storageAccount:e.storageAccount,storageVault:e.storageVault,merkleAccount:e.merkleAccount,rootBucketCurrent:s,rootBucketNext:c??e.program.programId,storageVaultAta:e.atasValue}).instruction()},v=async(e,t,n,r)=>{for(let i=0;i<10;i+=1){let a=i===9;try{let{blockhash:i,lastValidBlockHeight:a}=await e.getLatestBlockhash(),o=new m.VersionedTransaction(new m.TransactionMessage({payerKey:n,recentBlockhash:i,instructions:r}).compileToV0Message()),s=await t.signTransaction(o),c=await e.sendTransaction(s);return await e.confirmTransaction({signature:c,blockhash:i,lastValidBlockHeight:a},`confirmed`),c}catch(e){if(d.shouldRetryForSolanaError(e)&&!a)continue;throw e}}return``},y=(e,t)=>{if(e.length===0)throw Error(`amounts must not be empty`);if(e.length!==t.length)throw Error(`amounts and stealthAddressStructures length mismatch`);if(e.some(e=>e<=0n))throw Error(`all amounts must be positive`);p.assertNoDuplicateStealthAddressStructures(t)},b=async(e,t,n,r,i,a=!1,o,s=!1)=>{y(n,r);let c=g(e,t),l=u.constructAdminData(o,c.chainId,Array(n.length).fill(c.mintAddress),n,await e.getEthereumAddress()),d=await _(c,n,r,i,a);if(s){let{blockhash:e}=await c.connection.getLatestBlockhash(),t=new m.Transaction().add(d);return t.recentBlockhash=e,t.feePayer=c.publicKey,Buffer.from(t.serialize({requireAllSignatures:!1})).toString(`base64`)}let p=await v(c.connection,c.wallet,c.publicKey,[d]);return await f.emitTxPublicData(l),p},x=async(e,t,n,a=!1)=>{let o=e.userKeys.getShieldedPrivateKey(),s=c.calcStealthAddressStructure(i.UserKeys.findCorrectRandomization(r.randomBigInt(31),o),o,e.userKeys.getSpendingKeyPair().pubSpendingBJJPoint),l=i.UserKeys.getEncryptionKeyPair(o).publicKey;return b(e,n,[t],[s],[l],!1,void 0,a)},S=async(e,t,r,i,a=!1,s)=>{if(!o.isValidPrivateAddress(i))throw Error(n.transactionErrorCodes.RECIPIENT_FORMAT_INCORRECT);let c=o.constructStealthAddressStructure(i),l=o.getEncryptionKeyFromRecipientInfo(i);return b(e,r,[t],[c],[l],!1,s,a)};exports.hinkalSolanaDeposit=x,exports.hinkalSolanaDepositForOther=S,exports.submitSolanaProoflessDeposit=b;
@@ -2,7 +2,7 @@ import { StealthAddressStructure } from '../../types/circom-data.types';
2
2
  import { ERC20Token } from '../../types/token.types';
3
3
  import { IHinkal } from './IHinkal';
4
4
  import { AdminTransactionType } from '../../types/admin.types';
5
- export declare const submitSolanaProoflessDeposit: (hinkal: IHinkal, token: ERC20Token, amounts: bigint[], stealthAddressStructures: StealthAddressStructure[], action?: AdminTransactionType, returnTxData?: boolean) => Promise<string>;
6
- export declare const hinkalSolanaProoflessDepositWithPublicFee: (hinkal: IHinkal, token: ERC20Token, amounts: bigint[], stealthAddressStructures: StealthAddressStructure[], feeAmount: bigint, action?: AdminTransactionType) => Promise<string>;
5
+ export declare const submitSolanaProoflessDeposit: (hinkal: IHinkal, token: ERC20Token, amounts: bigint[], stealthAddressStructures: StealthAddressStructure[], recipientEncryptionKeys: string[], createBlockedUtxos?: boolean, action?: AdminTransactionType, returnTxData?: boolean) => Promise<string>;
6
+ export declare const hinkalSolanaProoflessDepositWithPublicFee: (hinkal: IHinkal, token: ERC20Token, amounts: bigint[], stealthAddressStructures: StealthAddressStructure[], recipientEncryptionKeys: string[], feeAmount: bigint, createBlockedUtxos?: boolean, action?: AdminTransactionType) => Promise<string>;
7
7
  export declare const hinkalSolanaDeposit: (hinkal: IHinkal, amount: bigint, token: ERC20Token, returnTxData?: boolean) => Promise<string>;
8
8
  export declare const hinkalSolanaDepositForOther: (hinkal: IHinkal, amount: bigint, token: ERC20Token, recipientInfo: string, returnTxData?: boolean, action?: AdminTransactionType) => Promise<string>;
@@ -4,43 +4,43 @@ import { transactionErrorCodes as n } from "../../error-handling/error-codes.con
4
4
  import { randomBigInt as r } from "../../functions/web3/etherFunctions.mjs";
5
5
  import { UserKeys as i } from "../crypto-keys/keys.mjs";
6
6
  import { formatMintAddress as a } from "../../functions/utils/solanaMint.utils.mjs";
7
- import { constructStealthAddressStructure as o, isValidPrivateAddress as s } from "../../functions/utils/addresses.mjs";
8
- import { validateAndGetChainId as c } from "../../functions/utils/token-check.utils.mjs";
9
- import { calcStealthAddressStructure as l } from "../../functions/snarkjs/common.snarkjs.mjs";
10
- import { buildAnchorStealthAddressStructure as u, getMerkleAccountPublicKey as d, getStorageAccountPublicKey as f, getStorageVaultPublicKey as p } from "../../functions/pre-transaction/solana.mjs";
11
- import { constructAdminData as m } from "../../functions/pre-transaction/constructAdminData.mjs";
12
- import { shouldRetryForSolanaError as h } from "../../error-handling/retrySolanaError.mjs";
13
- import { emitTxPublicData as g } from "../../API/admin-calls.mjs";
14
- import { buildSolanaTransferInstructions as _ } from "../../functions/pre-transaction/solanaTransfer.utils.mjs";
15
- import { assertNoDuplicateStealthAddressStructures as v } from "./hinkalProoflessDeposit.utils.mjs";
16
- import { PublicKey as y, Transaction as b, TransactionMessage as x, VersionedTransaction as S } from "@solana/web3.js";
17
- import { BN as C } from "@coral-xyz/anchor";
7
+ import { constructStealthAddressStructure as o, getEncryptionKeyFromRecipientInfo as s, isValidPrivateAddress as c } from "../../functions/utils/addresses.mjs";
8
+ import { validateAndGetChainId as l } from "../../functions/utils/token-check.utils.mjs";
9
+ import { calcStealthAddressStructure as u } from "../../functions/snarkjs/common.snarkjs.mjs";
10
+ import { buildAnchorStealthAddressStructure as d, getMerkleAccountPublicKey as f, getStorageAccountPublicKey as p, getStorageVaultPublicKey as m, resolveSolanaRootBuckets as h } from "../../functions/pre-transaction/solana.mjs";
11
+ import { constructAdminData as g } from "../../functions/pre-transaction/constructAdminData.mjs";
12
+ import { shouldRetryForSolanaError as _ } from "../../error-handling/retrySolanaError.mjs";
13
+ import { emitTxPublicData as v } from "../../API/admin-calls.mjs";
14
+ import { assertNoDuplicateStealthAddressStructures as y, buildProoflessEncryptedOutputs as b } from "./hinkalProoflessDeposit.utils.mjs";
15
+ import "../../functions/pre-transaction/solanaTransfer.utils.mjs";
16
+ import { PublicKey as x, Transaction as S, TransactionMessage as C, VersionedTransaction as w } from "@solana/web3.js";
17
+ import { BN as T } from "@coral-xyz/anchor";
18
18
  //#region libs/shared/common/src/data-structures/Hinkal/hinkalSolanaDeposit.ts
19
- var w = (n, r) => {
20
- let i = c([r]), o = r.erc20TokenAddress, { hinkalIdl: s, hinkalAddress: l, originalDeployer: u } = e[i].contractData;
19
+ var E = (n, r) => {
20
+ let i = l([r]), o = r.erc20TokenAddress, { hinkalIdl: s, hinkalAddress: c, originalDeployer: u } = e[i].contractData;
21
21
  if (!s) throw Error("No IDL configured for Solana program on this network");
22
22
  if (!u) throw Error("missing original deployer");
23
- let m = n.getSolanaProgram(s), h = n.getSolanaPublicKey(), { connection: g, wallet: _ } = m.provider;
23
+ let d = n.getSolanaProgram(s), h = n.getSolanaPublicKey(), { connection: g, wallet: _ } = d.provider;
24
24
  if (!_) throw Error("missing solana wallet");
25
- let v = new y(u), b = new y(l), { mintPublicKey: x } = a(o), S = x.toString() === t;
25
+ let v = new x(u), y = new x(c), { mintPublicKey: b } = a(o), S = b.toString() === t;
26
26
  return {
27
27
  chainId: i,
28
28
  mintAddress: o,
29
- program: m,
29
+ program: d,
30
30
  publicKey: h,
31
31
  connection: g,
32
32
  wallet: _,
33
33
  originalDeployer: v,
34
- mintPublicKey: x,
35
- mint: S ? null : x,
34
+ mintPublicKey: b,
35
+ mint: S ? null : b,
36
36
  atasValue: S ? null : void 0,
37
- storageAccount: f(b, v),
38
- storageVault: p(b, v),
39
- merkleAccount: d(b, v)
37
+ storageAccount: p(y, v),
38
+ storageVault: m(y, v),
39
+ merkleAccount: f(y, v)
40
40
  };
41
- }, T = (e, t, n) => {
42
- let r = n.map((e) => u(e));
43
- return e.program.methods.multiPaymentDeposit(t.map((e) => new C(e.toString())), r, !1).accounts({
41
+ }, D = async (e, t, n, r, i) => {
42
+ let a = n.map((e) => d(e)), o = b(n, r).map((e) => Buffer.from(e.slice(2), "hex")), { current: s, next: c } = await h(e.program, e.merkleAccount, t.length);
43
+ return e.program.methods.multiPaymentDeposit(t.map((e) => new T(e.toString())), a, o, i).accounts({
44
44
  mint: e.mint,
45
45
  signer: e.publicKey,
46
46
  signerAta: e.atasValue,
@@ -48,13 +48,15 @@ var w = (n, r) => {
48
48
  storageAccount: e.storageAccount,
49
49
  storageVault: e.storageVault,
50
50
  merkleAccount: e.merkleAccount,
51
+ rootBucketCurrent: s,
52
+ rootBucketNext: c ?? e.program.programId,
51
53
  storageVaultAta: e.atasValue
52
54
  }).instruction();
53
- }, E = async (e, t, n, r) => {
55
+ }, O = async (e, t, n, r) => {
54
56
  for (let i = 0; i < 10; i += 1) {
55
57
  let a = i === 9;
56
58
  try {
57
- let { blockhash: i, lastValidBlockHeight: a } = await e.getLatestBlockhash(), o = new S(new x({
59
+ let { blockhash: i, lastValidBlockHeight: a } = await e.getLatestBlockhash(), o = new w(new C({
58
60
  payerKey: n,
59
61
  recentBlockhash: i,
60
62
  instructions: r
@@ -65,38 +67,32 @@ var w = (n, r) => {
65
67
  lastValidBlockHeight: a
66
68
  }, "confirmed"), c;
67
69
  } catch (e) {
68
- if (h(e) && !a) continue;
70
+ if (_(e) && !a) continue;
69
71
  throw e;
70
72
  }
71
73
  }
72
74
  return "";
73
- }, D = (e, t) => {
75
+ }, k = (e, t) => {
74
76
  if (e.length === 0) throw Error("amounts must not be empty");
75
77
  if (e.length !== t.length) throw Error("amounts and stealthAddressStructures length mismatch");
76
78
  if (e.some((e) => e <= 0n)) throw Error("all amounts must be positive");
77
- v(t);
78
- }, O = async (e, t, n, r, i, a = !1) => {
79
- D(n, r);
80
- let o = w(e, t), s = m(i, o.chainId, Array(n.length).fill(o.mintAddress), n, await e.getEthereumAddress()), c = await T(o, n, r);
81
- if (a) {
82
- let { blockhash: e } = await o.connection.getLatestBlockhash(), t = new b().add(c);
83
- return t.recentBlockhash = e, t.feePayer = o.publicKey, Buffer.from(t.serialize({ requireAllSignatures: !1 })).toString("base64");
79
+ y(t);
80
+ }, A = async (e, t, n, r, i, a = !1, o, s = !1) => {
81
+ k(n, r);
82
+ let c = E(e, t), l = g(o, c.chainId, Array(n.length).fill(c.mintAddress), n, await e.getEthereumAddress()), u = await D(c, n, r, i, a);
83
+ if (s) {
84
+ let { blockhash: e } = await c.connection.getLatestBlockhash(), t = new S().add(u);
85
+ return t.recentBlockhash = e, t.feePayer = c.publicKey, Buffer.from(t.serialize({ requireAllSignatures: !1 })).toString("base64");
84
86
  }
85
- let l = await E(o.connection, o.wallet, o.publicKey, [c]);
86
- return await g(s), l;
87
- }, k = async (e, t, n, r, i, a) => {
88
- D(n, r);
89
- let o = w(e, t), s = await e.getRandomRelay(o.chainId, !1);
90
- if (!s) throw Error(`No relay available for chainId ${o.chainId}`);
91
- let { instructions: c } = await _(o.connection, o.publicKey, new y(s), t, i), l = await T(o, n, r), u = m(a, o.chainId, Array(n.length).fill(o.mintAddress), n, await e.getEthereumAddress()), d = await E(o.connection, o.wallet, o.publicKey, [...c, l]);
92
- return await g(u), d;
93
- }, A = async (e, t, n, a = !1) => {
94
- let o = e.userKeys.getShieldedPrivateKey(), s = l(i.findCorrectRandomization(r(31), o), o, e.userKeys.getSpendingKeyPair().pubSpendingBJJPoint);
95
- return O(e, n, [t], [s], void 0, a);
96
- }, j = async (e, t, r, i, a = !1, c) => {
97
- if (!s(i)) throw Error(n.RECIPIENT_FORMAT_INCORRECT);
98
- let l = o(i);
99
- return O(e, r, [t], [l], c, a);
87
+ let d = await O(c.connection, c.wallet, c.publicKey, [u]);
88
+ return await v(l), d;
89
+ }, j = async (e, t, n, a = !1) => {
90
+ let o = e.userKeys.getShieldedPrivateKey(), s = u(i.findCorrectRandomization(r(31), o), o, e.userKeys.getSpendingKeyPair().pubSpendingBJJPoint), c = i.getEncryptionKeyPair(o).publicKey;
91
+ return A(e, n, [t], [s], [c], !1, void 0, a);
92
+ }, M = async (e, t, r, i, a = !1, l) => {
93
+ if (!c(i)) throw Error(n.RECIPIENT_FORMAT_INCORRECT);
94
+ let u = o(i), d = s(i);
95
+ return A(e, r, [t], [u], [d], !1, l, a);
100
96
  };
101
97
  //#endregion
102
- export { A as hinkalSolanaDeposit, j as hinkalSolanaDepositForOther, k as hinkalSolanaProoflessDepositWithPublicFee, O as submitSolanaProoflessDeposit };
98
+ export { j as hinkalSolanaDeposit, M as hinkalSolanaDepositForOther, A as submitSolanaProoflessDeposit };
@@ -1 +1 @@
1
- require(`../../../../_virtual/_rolldown/runtime.cjs`);const e=require(`../../constants/chains.constants.cjs`),t=require(`../../constants/protocol.constants.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(`../utxo/Utxo.cjs`),s=require(`../../types/external-action.types.cjs`),c=require(`../../types/scheduled-transactions.types.cjs`);require(`../../types/index.cjs`);const l=require(`../../functions/utils/solanaMint.utils.cjs`),u=require(`../../functions/utils/addresses.cjs`),d=require(`../../functions/utils/token-check.utils.cjs`),f=require(`../../functions/snarkjs/common.snarkjs.cjs`),p=require(`../../functions/pre-transaction/solana.cjs`),m=require(`../../functions/pre-transaction/constructAdminData.cjs`),h=require(`../../functions/pre-transaction/sendV0Transaction.cjs`),g=require(`../../functions/pre-transaction/getFeeStructure.cjs`),_=require(`../../functions/pre-transaction/waitForDepositedUtxosInMerkleTree.cjs`);require(`../../functions/pre-transaction/index.cjs`);const v=require(`../../functions/utils/getUtxosFromReceiptSolana.cjs`),y=require(`../../functions/utils/fees.utils.cjs`);require(`../../functions/web3/index.cjs`);const b=require(`../../functions/snarkjs/constructSolanaZkProof.cjs`),x=require(`../../functions/web3/functionCalls/transactCallRelayer.cjs`),S=require(`../../API/deposit-and-withdraw-status-calls.cjs`);require(`../../functions/index.cjs`);let C=require(`ethers`),w=require(`@solana/web3.js`),T=require(`@coral-xyz/anchor`);var E=(n,a,o,s)=>{let{hinkalIdl:c,hinkalAddress:u,originalDeployer:d}=e.networkRegistry[a].contractData;if(!c)throw Error(`No IDL configured for Solana program on this network`);if(!d)throw Error(`missing original deployer`);let m=n.userKeys.getShieldedPrivateKey(),h=n.getSolanaProgram(c),g=n.getSolanaPublicKey(),_=new w.PublicKey(d),v=new w.PublicKey(u),{mintPublicKey:y}=l.formatMintAddress(o.erc20TokenAddress),b=y.toString(),x=p.getStorageAccountPublicKey(v,_),S=p.getStorageVaultPublicKey(v,_),C=p.getMerkleAccountPublicKey(v,_),T=s.map(()=>p.buildAnchorStealthAddressStructure(f.calcStealthAddressStructure(i.UserKeys.findCorrectRandomization(r.randomBigInt(31),m),m,n.userKeys.getSpendingKeyPair().pubSpendingBJJPoint))),E=b===t.solanaNativeAddress;return{program:h,publicKey:g,originalDeployer:_,mint:E?null:y,atasValue:E?null:void 0,storageAccount:x,storageVault:S,merkleAccount:C,amounts:s,anchorStealthStructures:T}},D=e=>e.program.methods.multiPaymentDeposit(e.amounts.map(e=>new T.BN(e.toString())),e.anchorStealthStructures,!0).accounts({mint:e.mint,signer:e.publicKey,signerAta:e.atasValue,originalDeployer:e.originalDeployer,storageAccount:e.storageAccount,storageVault:e.storageVault,merkleAccount:e.merkleAccount,storageVaultAta:e.atasValue}),O=async(e,t,n,r,i,a,o)=>{let s=r.map(e=>e+y.calculateTotalFee(e,a)),u=E(e,t,n,s),d=(await S.updateDepositAndWithdrawStatus({chainId:t,hashedEthereumAddress:o,phase:c.DepositAndWithdrawPhase.BEFORE_DEPOSIT})).id??void 0,f=await D(u).rpc(),p=await u.program.provider.connection.getLatestBlockhash();await u.program.provider.connection.confirmTransaction({blockhash:p.blockhash,lastValidBlockHeight:p.lastValidBlockHeight,signature:f},`finalized`);let m=await h.fetchSolanaTransaction(u.program.provider.connection,f,`finalized`);if(!m)throw Error(`Transaction missing`);await S.safeUpdateDepositAndWithdrawStatus({id:d,chainId:t,hashedEthereumAddress:o,phase:c.DepositAndWithdrawPhase.AFTER_DEPOSIT,depositTxHash:f});let{compressedAddress:g}=l.formatMintAddress(n.erc20TokenAddress),_=v.getOnChainUtxosFromReceiptSolana(m,u.program,e.userKeys,g),b=[],x=[..._];return i.forEach((e,t)=>{let n=s[t],r=x.find(e=>e.amount===n);if(!r)throw Error(`Could not find newly created UTXO with amount ${n} for recipient ${e}.`);b.push({recipientAddress:e,utxo:r}),x.splice(x.indexOf(r),1)}),{userDepositedUtxos:b,depositTxHash:f,statusId:d}},k=async(s,u,d,p,h,g,_,v,w,T,E,D,O)=>{let k=d.erc20TokenAddress;if(p.length===0)throw Error(`userDepositedUtxos must not be empty`);let{originalDeployer:A}=e.networkRegistry[u].contractData;if(!A)throw Error(`missing data`);let j=await s.getRandomRelay(u,!0);if(!j)throw Error(n.transactionErrorCodes.RELAYER_NOT_AVAILABLE);let M=a.getCurrentTimeInSeconds().toString(),N=s.generateProofRemotely?5:1,P=[];for(let e=0;e<p.length;e+=N){let n=p.slice(e,e+N),a=await Promise.all(n.map(async({recipientAddress:e,utxo:n},a)=>{let{compressedAddress:c}=l.formatMintAddress(t.solanaNativeAddress),p=new o.Utxo({amount:0n,mintAddress:k,erc20TokenAddress:c,nullifyingKey:s.userKeys.getShieldedPrivateKey(),timeStamp:M,...n.isNewStyle?{spendingPublicKey:s.userKeys.getSpendingKeyPair().pubSpendingBJJPoint,isNewStyle:!0}:{isNewStyle:!1}}),g=[n,p],v=[p],x=i.UserKeys.findCorrectRandomization(r.randomBigInt(31),s.userKeys.getShieldedPrivateKey()),S={tokenNumber:1,nullifierAmount:g.length,outputAmount:v.length},w=f.calcEncryptedOutputs([v])[0][0],T=Array.from(C.ethers.getBytes(w)),D=await y.calculateModifiedFeeStructure(u,d,_[a],h),A=m.constructAdminData(E,u,[k],[_[a]],await s.getEthereumAddress()),{proofAArr:N,proofBArr:P,proofCArr:F,publicInputsArr:I,commitmentValidationData:L}=await b.constructSolanaZkProof(s.generateProofRemotely,s.merkleTreeHinkalByChain[u],s.userKeys,[k],[g],[v],x,D.flatFee,D.variableRate,e,j,S,[T],u),R={recipient:e,mint:k===`11111111111111111111111111111111`?void 0:k};return{relayAddress:j,functionName:`transact`,chainId:u,recipientAmount:_[a].toString(),args:{proofAArr:N,proofBArr:P,proofCArr:F,publicInputsArr:I,encryptedOutputs:[T],relayerFee:D.flatFee.toString(),dimensions:S},accounts:R,adminData:A,commitmentValidationData:L,displayRecipient:O?.[a]}}));P.push(...a)}await S.safeUpdateDepositAndWithdrawStatus({id:v,chainId:u,hashedEthereumAddress:g,phase:c.DepositAndWithdrawPhase.BEFORE_SCHEDULE_WITHDRAW});let F=await x.solanaTransactCallRelayerBatch(u,P,g,w,T,D);return await S.safeUpdateDepositAndWithdrawStatus({id:v,chainId:u,hashedEthereumAddress:g,phase:c.DepositAndWithdrawPhase.AFTER_SCHEDULE_WITHDRAW,scheduleId:F}),F},A=async(e,t,n,r,i,a,o,c,l,f)=>{let p=d.validateAndGetChainId([t]),m=t.erc20TokenAddress,h=u.hashEthereumAddress(await e.getEthereumAddressByChain(p)),v=l?u.hashString(l):void 0,y=a??await g.getFeeStructure(p,m,[m],s.ExternalActionId.Transact,[],5n),{userDepositedUtxos:b,depositTxHash:x,statusId:S}=await O(e,p,t,n,r,y,h);return await _.waitForDepositedUtxosInMerkleTree(e,p,b),{depositTxHash:x,scheduleId:await k(e,p,t,b,y,h,n,S,i,o,c,v,f)}};exports.hinkalSolanaDepositAndWithdraw=A;
1
+ require(`../../../../_virtual/_rolldown/runtime.cjs`);const e=require(`../../constants/chains.constants.cjs`),t=require(`../../constants/protocol.constants.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(`../utxo/Utxo.cjs`),s=require(`../../functions/utils/solanaMint.utils.cjs`),c=require(`../../functions/utils/addresses.cjs`),l=require(`../../types/external-action.types.cjs`),u=require(`../../types/scheduled-transactions.types.cjs`);require(`../../types/index.cjs`);const d=require(`../../functions/utils/token-check.utils.cjs`),f=require(`../../functions/snarkjs/common.snarkjs.cjs`),p=require(`../../functions/pre-transaction/solana.cjs`),m=require(`../../functions/pre-transaction/constructAdminData.cjs`),h=require(`../../functions/snarkjs/constructTxEnclave.cjs`),g=require(`../../functions/pre-transaction/sendV0Transaction.cjs`),_=require(`../../functions/pre-transaction/getFeeStructure.cjs`),v=require(`../../functions/pre-transaction/waitForDepositedUtxosInMerkleTree.cjs`);require(`../../functions/pre-transaction/index.cjs`);const y=require(`../../functions/web3/functionCalls/transactCallRelayer.cjs`),b=require(`./hinkalProoflessDeposit.utils.cjs`),x=require(`../../API/deposit-and-withdraw-status-calls.cjs`),S=require(`../../functions/utils/getUtxosFromReceiptSolana.cjs`),C=require(`../../functions/utils/fees.utils.cjs`);require(`../../functions/web3/index.cjs`);const w=require(`../../functions/snarkjs/constructSolanaZkProof.cjs`);require(`../../functions/index.cjs`);let T=require(`@solana/web3.js`),E=require(`@coral-xyz/anchor`);var D=(n,a,o,c)=>{let{hinkalIdl:l,hinkalAddress:u,originalDeployer:d}=e.networkRegistry[a].contractData;if(!l)throw Error(`No IDL configured for Solana program on this network`);if(!d)throw Error(`missing original deployer`);let m=n.userKeys.getShieldedPrivateKey(),h=n.getSolanaProgram(l),g=n.getSolanaPublicKey(),_=new T.PublicKey(d),v=new T.PublicKey(u),{mintPublicKey:y}=s.formatMintAddress(o.erc20TokenAddress),b=y.toString(),x=p.getStorageAccountPublicKey(v,_),S=p.getStorageVaultPublicKey(v,_),C=p.getMerkleAccountPublicKey(v,_),w=c.map(()=>f.calcStealthAddressStructure(i.UserKeys.findCorrectRandomization(r.randomBigInt(31),m),m,n.userKeys.getSpendingKeyPair().pubSpendingBJJPoint)),E=w.map(e=>p.buildAnchorStealthAddressStructure(e)),D=i.UserKeys.getEncryptionKeyPair(m).publicKey,O=b===t.solanaNativeAddress;return{program:h,publicKey:g,originalDeployer:_,mint:O?null:y,atasValue:O?null:void 0,storageAccount:x,storageVault:S,merkleAccount:C,amounts:c,mintAddressString:b,stealthAddressStructures:w,anchorStealthStructures:E,ownEncryptionKey:D}},O=async e=>{let t=b.buildProoflessEncryptedOutputs(e.stealthAddressStructures,e.amounts.map(()=>e.ownEncryptionKey)).map(e=>Buffer.from(e.slice(2),`hex`)),{current:n,next:r}=await p.resolveSolanaRootBuckets(e.program,e.merkleAccount,e.amounts.length);return e.program.methods.multiPaymentDeposit(e.amounts.map(e=>new E.BN(e.toString())),e.anchorStealthStructures,t,!0).accounts({mint:e.mint,signer:e.publicKey,signerAta:e.atasValue,originalDeployer:e.originalDeployer,storageAccount:e.storageAccount,storageVault:e.storageVault,merkleAccount:e.merkleAccount,rootBucketCurrent:n,rootBucketNext:r??e.program.programId,storageVaultAta:e.atasValue})},k=async(e,t,n,r,i,a,o)=>{let c=r.map(e=>e+C.calculateTotalFee(e,a)),l=D(e,t,n,c),d=(await x.updateDepositAndWithdrawStatus({chainId:t,hashedEthereumAddress:o,phase:u.DepositAndWithdrawPhase.BEFORE_DEPOSIT})).id??void 0,f=await(await O(l)).rpc(),p=await l.program.provider.connection.getLatestBlockhash();await l.program.provider.connection.confirmTransaction({blockhash:p.blockhash,lastValidBlockHeight:p.lastValidBlockHeight,signature:f},`finalized`);let m=await g.fetchSolanaTransaction(l.program.provider.connection,f,`finalized`);if(!m)throw Error(`Transaction missing`);await x.safeUpdateDepositAndWithdrawStatus({id:d,chainId:t,hashedEthereumAddress:o,phase:u.DepositAndWithdrawPhase.AFTER_DEPOSIT,depositTxHash:f});let{compressedAddress:h}=s.formatMintAddress(n.erc20TokenAddress),_=S.getOnChainUtxosFromReceiptSolana(m,l.program,e.userKeys,h),v=[],y=[..._];return i.forEach((e,t)=>{let n=c[t],r=y.find(e=>e.amount===n);if(!r)throw Error(`Could not find newly created UTXO with amount ${n} for recipient ${e}.`);v.push({recipientAddress:e,utxo:r}),y.splice(y.indexOf(r),1)}),{userDepositedUtxos:v,depositTxHash:f,statusId:d}},A=async(e,t,n,r,i,a,o,s)=>{let{jobId:c,signedMessageHash:l}=await h.prepareSolanaTxEnclaveCall(e,{chainId:t,mintAddresses:[n],amountChanges:[-r.amount],relayAddress:a,recipient:i,signer:a,functionName:`transact`,accounts:o,relayerFee:s.flatFee,variableRate:s.variableRate,hinkalInstructions:[],remainingAccounts:[],inputCommitments:[r.getCommitment()],useBlockedUtxos:!0}),{R8:u,S:d}=e.userKeys.signEddsa(BigInt(l));return h.finalizeSolanaTxEnclaveCall(c,{R8:u,S:d})},j=async(c,l,d,f,p,h,g,_,v,b,S,T,E,D)=>{let O=d.erc20TokenAddress;if(f.length===0)throw Error(`userDepositedUtxos must not be empty`);let{originalDeployer:k}=e.networkRegistry[l].contractData;if(!k)throw Error(`missing data`);let j=await c.getRandomRelay(l,!0);if(!j)throw Error(n.transactionErrorCodes.RELAYER_NOT_AVAILABLE);let M=a.getCurrentTimeInSeconds().toString(),N=c.generateProofRemotely,P=N?5:1,F=[];for(let e=0;e<f.length;e+=P){let n=f.slice(e,e+P),a=await Promise.all(n.map(async({recipientAddress:n,utxo:a},u)=>{let f=e+u,h={recipient:n,mint:O===`11111111111111111111111111111111`?void 0:O},_=await C.calculateModifiedFeeStructure(l,d,g[f],p),v=m.constructAdminData(S,l,[O],[g[f]],await c.getEthereumAddress());if(N){let{solanaArgs:e,commitmentValidationData:t}=await A(c,l,O,a,n,j,h,_);return{relayAddress:j,functionName:`transact`,chainId:l,recipientAmount:g[f].toString(),args:e,accounts:h,adminData:v,commitmentValidationData:t,displayRecipient:E?.[f],destinationChainId:D?.chainId,destinationTokenAddress:D?.tokenAddress,destinationTokenAmount:D?.tokenAmounts?.[f]}}let{compressedAddress:y}=s.formatMintAddress(t.solanaNativeAddress),b=new o.Utxo({amount:0n,mintAddress:O,erc20TokenAddress:y,nullifyingKey:c.userKeys.getShieldedPrivateKey(),timeStamp:M,spendingPublicKey:c.userKeys.getSpendingKeyPair().pubSpendingBJJPoint}),x=[a,b],T=[b],k=i.UserKeys.findCorrectRandomization(r.randomBigInt(31),c.userKeys.getShieldedPrivateKey()),P={tokenNumber:1,nullifierAmount:x.length,outputAmount:T.length},{proofAArr:F,proofBArr:I,proofCArr:L,publicInputsArr:R,commitmentValidationData:z,rootHashHinkalIndex:B,encryptedOutputs:V}=await w.constructSolanaZkProof(c.merkleTreeHinkalByChain[l],c.userKeys,[O],[x],[T],k,_.flatFee,_.variableRate,n,j,P,void 0,l);return{relayAddress:j,functionName:`transact`,chainId:l,recipientAmount:g[f].toString(),args:{proofAArr:F,proofBArr:I,proofCArr:L,publicInputsArr:R,encryptedOutputs:V,relayerFee:_.flatFee.toString(),dimensions:P,rootHashIndex:B.toString()},accounts:h,adminData:v,commitmentValidationData:z,displayRecipient:E?.[f],destinationChainId:D?.chainId,destinationTokenAddress:D?.tokenAddress,destinationTokenAmount:D?.tokenAmounts?.[f]}}));F.push(...a)}await x.safeUpdateDepositAndWithdrawStatus({id:_,chainId:l,hashedEthereumAddress:h,phase:u.DepositAndWithdrawPhase.BEFORE_SCHEDULE_WITHDRAW});let I=await y.solanaTransactCallRelayerBatch(l,F,h,v,b,T);return await x.safeUpdateDepositAndWithdrawStatus({id:_,chainId:l,hashedEthereumAddress:h,phase:u.DepositAndWithdrawPhase.AFTER_SCHEDULE_WITHDRAW,scheduleId:I}),I},M=async(e,t,n,r,i,a,o,s,u,f,p)=>{let m=d.validateAndGetChainId([t]),h=t.erc20TokenAddress,g=c.hashEthereumAddress(await e.getEthereumAddressByChain(m)),y=u?c.hashString(u):void 0,b=a??await _.getFeeStructure(m,h,[h],l.ExternalActionId.Transact,[],5n,{mintTo:h,recipient:r[0],nullifierCount:1}),{userDepositedUtxos:x,depositTxHash:S,statusId:C}=await k(e,m,t,n,r,b,g);return await v.waitForDepositedUtxosInMerkleTree(e,m,x),{depositTxHash:S,scheduleId:await j(e,m,t,x,b,g,n,C,i,o,s,y,f,p)}};exports.hinkalSolanaDepositAndWithdraw=M;
@@ -1,3 +1,4 @@
1
+ import { DestinationMetadata } from '../../types/bridging-tx.types';
1
2
  import { FeeStructure } from '../../types/hinkal.types';
2
3
  import { IHinkal } from './IHinkal';
3
4
  import { PublicKey } from '@solana/web3.js';
@@ -13,12 +14,15 @@ export declare const buildMultiPaymentDepositSetup: (hinkal: IHinkal, chainId: n
13
14
  storageVault: PublicKey;
14
15
  merkleAccount: PublicKey;
15
16
  amounts: bigint[];
17
+ mintAddressString: string;
18
+ stealthAddressStructures: import('../..').StealthAddressStructure[];
16
19
  anchorStealthStructures: import('../..').AnchorStealthAddressStructure[];
20
+ ownEncryptionKey: string;
17
21
  };
18
22
  export type MultiPaymentDepositSetup = ReturnType<typeof buildMultiPaymentDepositSetup>;
19
- export declare const buildMultiPaymentDepositBuilder: (setup: MultiPaymentDepositSetup) => import('@coral-xyz/anchor/dist/cjs/program/namespace/methods').MethodsBuilder<import('@coral-xyz/anchor').Idl, import('@coral-xyz/anchor/dist/cjs/idl').IdlInstruction & {
23
+ export declare const buildMultiPaymentDepositBuilder: (setup: MultiPaymentDepositSetup) => Promise<import('@coral-xyz/anchor/dist/cjs/program/namespace/methods').MethodsBuilder<import('@coral-xyz/anchor').Idl, import('@coral-xyz/anchor/dist/cjs/idl').IdlInstruction & {
20
24
  name: string;
21
- }, import('@coral-xyz/anchor/dist/cjs/idl').IdlInstructionAccountItem>;
22
- export declare const hinkalSolanaWithdrawBatch: (hinkal: IHinkal, chainId: number, token: ERC20Token, userDepositedUtxos: RecipientUtxo[], feeStructure: FeeStructure, hashedEthereumAddress: string, recipientAmounts: bigint[], statusId: string | undefined, txCompletionTime?: number, ref?: string, action?: AdminTransactionType, hashedDashboardAccountId?: string, displayRecipients?: string[]) => Promise<string>;
25
+ }, import('@coral-xyz/anchor/dist/cjs/idl').IdlInstructionAccountItem>>;
26
+ export declare const hinkalSolanaWithdrawBatch: (hinkal: IHinkal, chainId: number, token: ERC20Token, userDepositedUtxos: RecipientUtxo[], feeStructure: FeeStructure, hashedEthereumAddress: string, recipientAmounts: bigint[], statusId: string | undefined, txCompletionTime?: number, ref?: string, action?: AdminTransactionType, hashedDashboardAccountId?: string, displayRecipients?: string[], destination?: DestinationMetadata) => Promise<string>;
23
27
  export declare const hinkalSolanaDepositAndWithdraw: (hinkal: IHinkal, token: ERC20Token, recipientAmounts: bigint[], recipientAddresses: string[], txCompletionTime?: number, feeStructureOverride?: FeeStructure, // Should be passed fee for only one withdraw transaction, multiplication happening in this function
24
- ref?: string, action?: AdminTransactionType, dashboardAccountId?: string, displayRecipients?: string[]) => Promise<DepositAndSendExtendedResult>;
28
+ ref?: string, action?: AdminTransactionType, dashboardAccountId?: string, displayRecipients?: string[], destination?: DestinationMetadata) => Promise<DepositAndSendExtendedResult>;