@hinkal/common 0.2.21 → 0.2.22

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (516) hide show
  1. package/API/API.cjs +1 -1
  2. package/API/API.d.ts +14 -14
  3. package/API/API.mjs +88 -87
  4. package/API/admin-calls.cjs +1 -1
  5. package/API/admin-calls.d.ts +1 -1
  6. package/API/admin-calls.mjs +4 -4
  7. package/API/ai-calls.cjs +1 -0
  8. package/API/ai-calls.d.ts +17 -0
  9. package/API/ai-calls.mjs +21 -0
  10. package/API/callLifiAPI.cjs +1 -1
  11. package/API/callLifiAPI.d.ts +1 -1
  12. package/API/callLifiAPI.mjs +5 -5
  13. package/API/callMonitor.cjs +1 -1
  14. package/API/callMonitor.d.ts +1 -1
  15. package/API/callMonitor.mjs +7 -7
  16. package/API/callOdosAPI.cjs +1 -1
  17. package/API/callOdosAPI.mjs +11 -11
  18. package/API/callOkxAPI.cjs +1 -1
  19. package/API/callOkxAPI.d.ts +1 -1
  20. package/API/callOkxAPI.mjs +5 -5
  21. package/API/callOneInchAPI.cjs +1 -1
  22. package/API/callOneInchAPI.mjs +11 -10
  23. package/API/callRelayer.cjs +1 -1
  24. package/API/callRelayer.d.ts +5 -6
  25. package/API/callRelayer.mjs +11 -11
  26. package/API/checkRisk.cjs +1 -1
  27. package/API/checkRisk.d.ts +1 -1
  28. package/API/checkRisk.mjs +4 -4
  29. package/API/deposit-and-withdraw-status-calls.cjs +1 -0
  30. package/API/deposit-and-withdraw-status-calls.d.ts +20 -0
  31. package/API/deposit-and-withdraw-status-calls.mjs +18 -0
  32. package/API/duneAPI.cjs +1 -0
  33. package/API/duneAPI.d.ts +11 -0
  34. package/API/duneAPI.mjs +25 -0
  35. package/API/enclaveCalls.cjs +1 -1
  36. package/API/enclaveCalls.mjs +4 -5
  37. package/API/fetchCommitmentsCache.cjs +1 -1
  38. package/API/fetchCommitmentsCache.mjs +9 -9
  39. package/API/get-token-data.cjs +1 -1
  40. package/API/get-token-data.d.ts +1 -1
  41. package/API/get-token-data.mjs +5 -5
  42. package/API/getBridgeProtocols.cjs +1 -0
  43. package/API/getBridgeProtocols.d.ts +7 -0
  44. package/API/getBridgeProtocols.mjs +8 -0
  45. package/API/getGasEstimates.cjs +1 -1
  46. package/API/getGasEstimates.mjs +9 -9
  47. package/API/getLifiStatus.cjs +1 -0
  48. package/API/getLifiStatus.d.ts +24 -0
  49. package/API/getLifiStatus.mjs +15 -0
  50. package/API/getRelayerURL.cjs +1 -0
  51. package/API/getRelayerURL.d.ts +1 -0
  52. package/API/getRelayerURL.mjs +10 -0
  53. package/API/getServerURL.cjs +1 -1
  54. package/API/getServerURL.d.ts +3 -3
  55. package/API/getServerURL.mjs +67 -51
  56. package/API/getTokenPrice.cjs +1 -1
  57. package/API/getTokenPrice.d.ts +0 -5
  58. package/API/getTokenPrice.mjs +7 -14
  59. package/API/index.d.ts +3 -1
  60. package/API/is-tx-stateless.cjs +1 -1
  61. package/API/is-tx-stateless.d.ts +1 -1
  62. package/API/is-tx-stateless.mjs +12 -10
  63. package/API/kycCalls.cjs +1 -1
  64. package/API/kycCalls.d.ts +8 -4
  65. package/API/kycCalls.mjs +26 -23
  66. package/API/passwordCalls.cjs +1 -0
  67. package/API/passwordCalls.d.ts +9 -0
  68. package/API/passwordCalls.mjs +13 -0
  69. package/API/proxyAccountsCalls.cjs +1 -1
  70. package/API/proxyAccountsCalls.d.ts +2 -7
  71. package/API/proxyAccountsCalls.mjs +21 -27
  72. package/API/relayCalls.cjs +1 -1
  73. package/API/relayCalls.mjs +4 -4
  74. package/API/restoreSnapshots.cjs +1 -0
  75. package/API/restoreSnapshots.d.ts +1 -0
  76. package/API/restoreSnapshots.mjs +10 -0
  77. package/API/scheduled-transactions-calls.cjs +1 -1
  78. package/API/scheduled-transactions-calls.d.ts +9 -1
  79. package/API/scheduled-transactions-calls.mjs +9 -5
  80. package/API/simulate-batch-tx.cjs +1 -1
  81. package/API/simulate-batch-tx.d.ts +2 -2
  82. package/API/simulate-batch-tx.mjs +6 -7
  83. package/API/solana-calls.cjs +1 -1
  84. package/API/solana-calls.d.ts +3 -6
  85. package/API/solana-calls.mjs +15 -15
  86. package/API/temporaryWalletCalls.cjs +1 -1
  87. package/API/temporaryWalletCalls.mjs +19 -13
  88. package/API/token-calls.cjs +1 -1
  89. package/API/token-calls.mjs +5 -6
  90. package/README.md +54 -42
  91. package/constants/chains.constants.cjs +1 -1
  92. package/constants/chains.constants.d.ts +6 -0
  93. package/constants/chains.constants.mjs +52 -58
  94. package/constants/coingecko.constants.cjs +1 -1
  95. package/constants/coingecko.constants.d.ts +0 -1
  96. package/constants/coingecko.constants.mjs +10 -11
  97. package/constants/deploy-data/deploy-data-solana.json.cjs +1 -1
  98. package/constants/deploy-data/deploy-data-solana.json.mjs +2 -28
  99. package/constants/function-signatures.constants.cjs +1 -1
  100. package/constants/function-signatures.constants.d.ts +1 -0
  101. package/constants/function-signatures.constants.mjs +4 -3
  102. package/constants/kyc.constants.cjs +1 -1
  103. package/constants/kyc.constants.mjs +40 -39
  104. package/constants/mediaUrls.constants.cjs +1 -1
  105. package/constants/mediaUrls.constants.d.ts +0 -1
  106. package/constants/mediaUrls.constants.mjs +1 -2
  107. package/constants/permit2.constants.cjs +1 -1
  108. package/constants/permit2.constants.d.ts +1 -0
  109. package/constants/permit2.constants.mjs +11 -10
  110. package/constants/server.constants.cjs +1 -1
  111. package/constants/server.constants.d.ts +123 -19
  112. package/constants/server.constants.mjs +142 -38
  113. package/constants/vite.constants.cjs +1 -1
  114. package/constants/vite.constants.mjs +13 -36
  115. package/data-structures/ApprovalDBs/EventsPublicApprovalsDB.cjs +1 -1
  116. package/data-structures/ApprovalDBs/EventsPublicApprovalsDB.mjs +71 -68
  117. package/data-structures/Hinkal/Hinkal.cjs +1 -1
  118. package/data-structures/Hinkal/Hinkal.d.ts +56 -45
  119. package/data-structures/Hinkal/Hinkal.mjs +348 -314
  120. package/data-structures/Hinkal/IHinkal.d.ts +54 -40
  121. package/data-structures/Hinkal/handleAutoDepositBack.cjs +1 -1
  122. package/data-structures/Hinkal/handleAutoDepositBack.d.ts +1 -1
  123. package/data-structures/Hinkal/handleAutoDepositBack.mjs +49 -48
  124. package/data-structures/Hinkal/hinkalActionFundApproveAndTransact.cjs +1 -0
  125. package/data-structures/Hinkal/hinkalActionFundApproveAndTransact.d.ts +7 -0
  126. package/data-structures/Hinkal/hinkalActionFundApproveAndTransact.mjs +42 -0
  127. package/data-structures/Hinkal/hinkalActionReceive.cjs +1 -1
  128. package/data-structures/Hinkal/hinkalActionReceive.mjs +24 -29
  129. package/data-structures/Hinkal/hinkalApprove.cjs +1 -0
  130. package/data-structures/Hinkal/hinkalApprove.d.ts +3 -0
  131. package/data-structures/Hinkal/hinkalApprove.mjs +114 -0
  132. package/data-structures/Hinkal/hinkalCheckTokenRegistry.cjs +1 -1
  133. package/data-structures/Hinkal/hinkalCheckTokenRegistry.mjs +20 -20
  134. package/data-structures/Hinkal/hinkalDeposit.cjs +1 -1
  135. package/data-structures/Hinkal/hinkalDeposit.mjs +84 -88
  136. package/data-structures/Hinkal/hinkalDepositAndWithdraw.cjs +1 -1
  137. package/data-structures/Hinkal/hinkalDepositAndWithdraw.d.ts +1 -1
  138. package/data-structures/Hinkal/hinkalDepositAndWithdraw.mjs +96 -77
  139. package/data-structures/Hinkal/hinkalDepositOnChainUtxos.cjs +1 -1
  140. package/data-structures/Hinkal/hinkalDepositOnChainUtxos.d.ts +4 -1
  141. package/data-structures/Hinkal/hinkalDepositOnChainUtxos.mjs +80 -75
  142. package/data-structures/Hinkal/hinkalDepostAndBridge.cjs +1 -1
  143. package/data-structures/Hinkal/hinkalDepostAndBridge.d.ts +1 -1
  144. package/data-structures/Hinkal/hinkalDepostAndBridge.mjs +150 -138
  145. package/data-structures/Hinkal/hinkalGetZkMeProvider.cjs +1 -1
  146. package/data-structures/Hinkal/hinkalGetZkMeProvider.mjs +5 -4
  147. package/data-structures/Hinkal/hinkalInsideTransact.cjs +1 -0
  148. package/data-structures/Hinkal/hinkalInsideTransact.d.ts +4 -0
  149. package/data-structures/Hinkal/hinkalInsideTransact.mjs +119 -0
  150. package/data-structures/Hinkal/hinkalPrivateWallet.cjs +1 -1
  151. package/data-structures/Hinkal/hinkalPrivateWallet.d.ts +2 -2
  152. package/data-structures/Hinkal/hinkalPrivateWallet.mjs +118 -114
  153. package/data-structures/Hinkal/hinkalProoflessDeposit.cjs +1 -1
  154. package/data-structures/Hinkal/hinkalProoflessDeposit.mjs +34 -36
  155. package/data-structures/Hinkal/hinkalProxySwap.cjs +1 -1
  156. package/data-structures/Hinkal/hinkalProxySwap.mjs +36 -40
  157. package/data-structures/Hinkal/hinkalProxyToPrivate.cjs +1 -1
  158. package/data-structures/Hinkal/hinkalProxyToPrivate.mjs +32 -37
  159. package/data-structures/Hinkal/hinkalSignSubAccount.cjs +1 -1
  160. package/data-structures/Hinkal/hinkalSignSubAccount.d.ts +2 -1
  161. package/data-structures/Hinkal/hinkalSignSubAccount.mjs +15 -17
  162. package/data-structures/Hinkal/hinkalSolanaDeposit.cjs +1 -1
  163. package/data-structures/Hinkal/hinkalSolanaDeposit.d.ts +3 -4
  164. package/data-structures/Hinkal/hinkalSolanaDeposit.mjs +95 -84
  165. package/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.cjs +1 -1
  166. package/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.d.ts +1 -2
  167. package/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.mjs +182 -155
  168. package/data-structures/Hinkal/hinkalSolanaProxySend.cjs +1 -1
  169. package/data-structures/Hinkal/hinkalSolanaProxySend.d.ts +3 -2
  170. package/data-structures/Hinkal/hinkalSolanaProxySend.mjs +40 -43
  171. package/data-structures/Hinkal/hinkalSolanaProxyShield.cjs +1 -1
  172. package/data-structures/Hinkal/hinkalSolanaProxyShield.mjs +67 -71
  173. package/data-structures/Hinkal/hinkalSolanaProxySwap.cjs +1 -1
  174. package/data-structures/Hinkal/hinkalSolanaProxySwap.d.ts +1 -1
  175. package/data-structures/Hinkal/hinkalSolanaProxySwap.mjs +59 -63
  176. package/data-structures/Hinkal/hinkalSolanaSwap.cjs +1 -1
  177. package/data-structures/Hinkal/hinkalSolanaSwap.mjs +45 -48
  178. package/data-structures/Hinkal/hinkalSolanaTransfer.cjs +1 -1
  179. package/data-structures/Hinkal/hinkalSolanaTransfer.mjs +48 -49
  180. package/data-structures/Hinkal/hinkalSolanaWithdraw.cjs +1 -1
  181. package/data-structures/Hinkal/hinkalSolanaWithdraw.d.ts +1 -2
  182. package/data-structures/Hinkal/hinkalSolanaWithdraw.mjs +68 -71
  183. package/data-structures/Hinkal/hinkalSwap.cjs +1 -1
  184. package/data-structures/Hinkal/hinkalSwap.mjs +78 -71
  185. package/data-structures/Hinkal/hinkalTransfer.cjs +1 -1
  186. package/data-structures/Hinkal/hinkalTransfer.mjs +70 -71
  187. package/data-structures/Hinkal/hinkalWithdraw.cjs +1 -1
  188. package/data-structures/Hinkal/hinkalWithdraw.mjs +79 -81
  189. package/data-structures/Hinkal/hinkalWithdrawStuckUtxos.cjs +1 -1
  190. package/data-structures/Hinkal/hinkalWithdrawStuckUtxos.mjs +103 -105
  191. package/data-structures/Hinkal/resetMerkleTrees.cjs +1 -1
  192. package/data-structures/Hinkal/resetMerkleTrees.d.ts +1 -1
  193. package/data-structures/Hinkal/resetMerkleTrees.mjs +53 -107
  194. package/data-structures/IndexedDB/activity-db.cjs +1 -1
  195. package/data-structures/IndexedDB/activity-db.d.ts +0 -1
  196. package/data-structures/IndexedDB/activity-db.mjs +75 -91
  197. package/data-structures/IndexedDB/balances-db.cjs +1 -1
  198. package/data-structures/IndexedDB/balances-db.mjs +37 -40
  199. package/data-structures/IndexedDB/contact-db.cjs +1 -1
  200. package/data-structures/IndexedDB/contact-db.mjs +13 -16
  201. package/data-structures/IndexedDB/signatures-db.cjs +1 -1
  202. package/data-structures/IndexedDB/signatures-db.mjs +40 -25
  203. package/data-structures/TokenDBs/EventsPublicTokensDB.cjs +1 -1
  204. package/data-structures/TokenDBs/EventsPublicTokensDB.mjs +84 -82
  205. package/data-structures/TokenDBs/token-visibility-db.cjs +1 -1
  206. package/data-structures/TokenDBs/token-visibility-db.mjs +36 -22
  207. package/data-structures/crypto-keys/keys.cjs +1 -1
  208. package/data-structures/crypto-keys/keys.d.ts +11 -0
  209. package/data-structures/crypto-keys/keys.mjs +107 -47
  210. package/data-structures/event-service/evm/AbstractAccessTokenSnapshotService.cjs +1 -1
  211. package/data-structures/event-service/evm/AbstractAccessTokenSnapshotService.d.ts +2 -3
  212. package/data-structures/event-service/evm/AbstractAccessTokenSnapshotService.mjs +9 -9
  213. package/data-structures/event-service/evm/AbstractApprovalsSnapshotService.cjs +1 -1
  214. package/data-structures/event-service/evm/AbstractApprovalsSnapshotService.d.ts +2 -3
  215. package/data-structures/event-service/evm/AbstractApprovalsSnapshotService.mjs +5 -5
  216. package/data-structures/event-service/evm/AbstractCommitmentsSnapshotService.cjs +1 -1
  217. package/data-structures/event-service/evm/AbstractCommitmentsSnapshotService.d.ts +2 -3
  218. package/data-structures/event-service/evm/AbstractCommitmentsSnapshotService.mjs +6 -6
  219. package/data-structures/event-service/evm/AbstractEventService.cjs +1 -1
  220. package/data-structures/event-service/evm/AbstractEventService.d.ts +2 -4
  221. package/data-structures/event-service/evm/AbstractEventService.mjs +19 -19
  222. package/data-structures/event-service/evm/AbstractNullifierSnapshotService.cjs +1 -1
  223. package/data-structures/event-service/evm/AbstractNullifierSnapshotService.d.ts +3 -3
  224. package/data-structures/event-service/evm/AbstractNullifierSnapshotService.mjs +5 -6
  225. package/data-structures/event-service/evm/AbstractSnapshotService.cjs +1 -1
  226. package/data-structures/event-service/evm/AbstractSnapshotService.d.ts +2 -1
  227. package/data-structures/event-service/evm/AbstractSnapshotService.mjs +4 -3
  228. package/data-structures/event-service/evm/BlockchainEventEmitter.cjs +1 -1
  229. package/data-structures/event-service/evm/BlockchainEventEmitter.d.ts +5 -10
  230. package/data-structures/event-service/evm/BlockchainEventEmitter.mjs +35 -39
  231. package/data-structures/event-service/index.d.ts +0 -4
  232. package/data-structures/event-service/solana/AbstractSolanaAccessTokenSnapshotService.cjs +1 -1
  233. package/data-structures/event-service/solana/AbstractSolanaAccessTokenSnapshotService.d.ts +2 -3
  234. package/data-structures/event-service/solana/AbstractSolanaAccessTokenSnapshotService.mjs +6 -6
  235. package/data-structures/event-service/solana/AbstractSolanaCommitmentsSnapshotService.cjs +1 -1
  236. package/data-structures/event-service/solana/AbstractSolanaCommitmentsSnapshotService.d.ts +3 -4
  237. package/data-structures/event-service/solana/AbstractSolanaCommitmentsSnapshotService.mjs +8 -8
  238. package/data-structures/event-service/solana/AbstractSolanaEventService.cjs +1 -1
  239. package/data-structures/event-service/solana/AbstractSolanaEventService.d.ts +10 -4
  240. package/data-structures/event-service/solana/AbstractSolanaEventService.mjs +7 -10
  241. package/data-structures/event-service/solana/AbstractSolanaNullifierSnapshotService.cjs +1 -1
  242. package/data-structures/event-service/solana/AbstractSolanaNullifierSnapshotService.d.ts +2 -3
  243. package/data-structures/event-service/solana/AbstractSolanaNullifierSnapshotService.mjs +1 -1
  244. package/data-structures/event-service/solana/AbstractSolanaSnapshotService.cjs +1 -1
  245. package/data-structures/event-service/solana/AbstractSolanaSnapshotService.d.ts +2 -1
  246. package/data-structures/event-service/solana/AbstractSolanaSnapshotService.mjs +2 -1
  247. package/data-structures/event-service/solana/SolanaBlockchainEventEmitter.cjs +1 -1
  248. package/data-structures/event-service/solana/SolanaBlockchainEventEmitter.d.ts +16 -11
  249. package/data-structures/event-service/solana/SolanaBlockchainEventEmitter.mjs +66 -64
  250. package/data-structures/index.d.ts +0 -3
  251. package/data-structures/provider-adapter/IProviderAdapter.d.ts +13 -8
  252. package/data-structures/snapshot/evm-snapshots/ClientAccessTokenSnapshotService.cjs +1 -1
  253. package/data-structures/snapshot/evm-snapshots/ClientAccessTokenSnapshotService.mjs +4 -6
  254. package/data-structures/snapshot/evm-snapshots/ClientApprovalsSnapshotService.cjs +1 -1
  255. package/data-structures/snapshot/evm-snapshots/ClientApprovalsSnapshotService.mjs +4 -6
  256. package/data-structures/snapshot/evm-snapshots/ClientCommitmentsSnapshotService.cjs +1 -1
  257. package/data-structures/snapshot/evm-snapshots/ClientCommitmentsSnapshotService.mjs +4 -6
  258. package/data-structures/snapshot/evm-snapshots/ClientNullifierSnapshotService.cjs +1 -1
  259. package/data-structures/snapshot/evm-snapshots/ClientNullifierSnapshotService.mjs +4 -6
  260. package/data-structures/snapshot/solana-snapshots/ClientSolanaAccessTokenSnapshotService.cjs +1 -1
  261. package/data-structures/snapshot/solana-snapshots/ClientSolanaAccessTokenSnapshotService.mjs +4 -6
  262. package/data-structures/snapshot/solana-snapshots/ClientSolanaCommitmentsSnapshotService.cjs +1 -1
  263. package/data-structures/snapshot/solana-snapshots/ClientSolanaCommitmentsSnapshotService.mjs +4 -5
  264. package/data-structures/snapshot/solana-snapshots/ClientSolanaNullifierSnapshotService.cjs +1 -1
  265. package/data-structures/snapshot/solana-snapshots/ClientSolanaNullifierSnapshotService.mjs +4 -6
  266. package/error-handling/error-codes.constants.cjs +1 -1
  267. package/error-handling/error-codes.constants.d.ts +0 -1
  268. package/error-handling/error-codes.constants.mjs +3 -4
  269. package/error-handling/get-error.message.cjs +1 -1
  270. package/error-handling/get-error.message.mjs +27 -21
  271. package/error-handling/handleErrorRestore.cjs +1 -0
  272. package/error-handling/handleErrorRestore.d.ts +2 -0
  273. package/error-handling/handleErrorRestore.mjs +11 -0
  274. package/error-handling/index.d.ts +1 -0
  275. package/functions/kyc/authentoHelper.cjs +1 -0
  276. package/functions/kyc/authentoHelper.d.ts +12 -0
  277. package/functions/kyc/authentoHelper.mjs +30 -0
  278. package/functions/kyc/zkMeHelper.cjs +1 -1
  279. package/functions/kyc/zkMeHelper.mjs +17 -18
  280. package/functions/pre-transaction/constructAdminData.cjs +1 -1
  281. package/functions/pre-transaction/constructAdminData.d.ts +2 -2
  282. package/functions/pre-transaction/constructAdminData.mjs +18 -12
  283. package/functions/pre-transaction/getExternalSwapAddress.cjs +1 -1
  284. package/functions/pre-transaction/getExternalSwapAddress.d.ts +2 -1
  285. package/functions/pre-transaction/getExternalSwapAddress.mjs +8 -8
  286. package/functions/pre-transaction/getVolatileTransferAmount.cjs +1 -1
  287. package/functions/pre-transaction/getVolatileTransferAmount.mjs +36 -21
  288. package/functions/pre-transaction/merge-with-fee-structure-emporium.cjs +1 -1
  289. package/functions/pre-transaction/merge-with-fee-structure-emporium.d.ts +1 -1
  290. package/functions/pre-transaction/merge-with-fee-structure-emporium.mjs +17 -17
  291. package/functions/pre-transaction/outputApprovalDataProcessing.cjs +1 -1
  292. package/functions/pre-transaction/outputApprovalDataProcessing.d.ts +9 -1
  293. package/functions/pre-transaction/outputApprovalDataProcessing.mjs +34 -19
  294. package/functions/pre-transaction/sendV0Transaction.cjs +1 -1
  295. package/functions/pre-transaction/sendV0Transaction.mjs +50 -53
  296. package/functions/pre-transaction/shouldPatchAccessTokenMerkleTree.cjs +1 -1
  297. package/functions/pre-transaction/shouldPatchAccessTokenMerkleTree.d.ts +1 -1
  298. package/functions/pre-transaction/shouldPatchAccessTokenMerkleTree.mjs +4 -4
  299. package/functions/private-wallet/emporium.helpers.cjs +1 -1
  300. package/functions/private-wallet/emporium.helpers.d.ts +6 -3
  301. package/functions/private-wallet/emporium.helpers.mjs +127 -89
  302. package/functions/private-wallet/emporium.swap.helpers.cjs +1 -1
  303. package/functions/private-wallet/emporium.swap.helpers.d.ts +4 -1
  304. package/functions/private-wallet/emporium.swap.helpers.mjs +102 -100
  305. package/functions/snarkjs/constructEmporiumProof.cjs +1 -1
  306. package/functions/snarkjs/constructEmporiumProof.mjs +49 -49
  307. package/functions/snarkjs/constructSolanaZkProof.cjs +1 -1
  308. package/functions/snarkjs/constructSolanaZkProof.mjs +20 -18
  309. package/functions/snarkjs/fetchMerkleTreeSiblings.cjs +1 -1
  310. package/functions/snarkjs/fetchMerkleTreeSiblings.mjs +10 -11
  311. package/functions/utils/addresses.cjs +1 -1
  312. package/functions/utils/addresses.d.ts +0 -1
  313. package/functions/utils/addresses.mjs +12 -13
  314. package/functions/utils/cacheFunctions.cjs +1 -1
  315. package/functions/utils/cacheFunctions.mjs +2 -2
  316. package/functions/utils/create-provider.cjs +1 -1
  317. package/functions/utils/create-provider.d.ts +1 -1
  318. package/functions/utils/create-provider.mjs +9 -13
  319. package/functions/utils/get-hinkal-approvals.cjs +1 -0
  320. package/functions/utils/get-hinkal-approvals.d.ts +3 -0
  321. package/functions/utils/get-hinkal-approvals.mjs +38 -0
  322. package/functions/utils/getUtxosFromReceipt.utils.cjs +1 -1
  323. package/functions/utils/getUtxosFromReceipt.utils.d.ts +1 -1
  324. package/functions/utils/getUtxosFromReceipt.utils.mjs +11 -11
  325. package/functions/utils/index.d.ts +1 -0
  326. package/functions/utils/involves-permit2-op.cjs +1 -1
  327. package/functions/utils/involves-permit2-op.d.ts +1 -0
  328. package/functions/utils/involves-permit2-op.mjs +6 -4
  329. package/functions/utils/mutexes.utils.cjs +1 -1
  330. package/functions/utils/mutexes.utils.d.ts +1 -1
  331. package/functions/utils/mutexes.utils.mjs +3 -3
  332. package/functions/utils/nftTokenFunctions.cjs +1 -1
  333. package/functions/utils/nftTokenFunctions.mjs +23 -8
  334. package/functions/utils/prepareHinkal.cjs +1 -1
  335. package/functions/utils/prepareHinkal.d.ts +13 -6
  336. package/functions/utils/prepareHinkal.mjs +72 -45
  337. package/functions/utils/publicBalance.utils.cjs +1 -1
  338. package/functions/utils/publicBalance.utils.mjs +54 -49
  339. package/functions/utils/replaceAddressInCalldata.cjs +1 -0
  340. package/functions/utils/replaceAddressInCalldata.d.ts +1 -0
  341. package/functions/utils/replaceAddressInCalldata.mjs +7 -0
  342. package/functions/utils/string.utils.cjs +1 -1
  343. package/functions/utils/string.utils.d.ts +0 -1
  344. package/functions/utils/string.utils.mjs +14 -18
  345. package/functions/utils/token-check.utils.cjs +1 -1
  346. package/functions/utils/token-check.utils.d.ts +0 -3
  347. package/functions/utils/token-check.utils.mjs +7 -18
  348. package/functions/utils/upToDateState.cjs +1 -1
  349. package/functions/utils/upToDateState.d.ts +1 -1
  350. package/functions/utils/upToDateState.mjs +4 -4
  351. package/functions/utils/walletBalances.utils.cjs +1 -1
  352. package/functions/utils/walletBalances.utils.d.ts +17 -2
  353. package/functions/utils/walletBalances.utils.mjs +36 -5
  354. package/functions/web3/events/getApprovedBalance.cjs +1 -1
  355. package/functions/web3/events/getApprovedBalance.d.ts +4 -3
  356. package/functions/web3/events/getApprovedBalance.mjs +44 -39
  357. package/functions/web3/events/getInputUtxoAndBalance.cjs +1 -1
  358. package/functions/web3/events/getInputUtxoAndBalance.d.ts +3 -3
  359. package/functions/web3/events/getInputUtxoAndBalance.mjs +150 -129
  360. package/functions/web3/events/getShieldedBalance.cjs +2 -2
  361. package/functions/web3/events/getShieldedBalance.d.ts +1 -1
  362. package/functions/web3/events/getShieldedBalance.mjs +75 -73
  363. package/functions/web3/events/getTransactionLogEvents.cjs +1 -1
  364. package/functions/web3/events/getTransactionLogEvents.mjs +38 -38
  365. package/functions/web3/fetchSolanaMerkleTreeRootHash.cjs +1 -1
  366. package/functions/web3/fetchSolanaMerkleTreeRootHash.mjs +10 -13
  367. package/functions/web3/functionCalls/accessTokenCalls.cjs +1 -1
  368. package/functions/web3/functionCalls/accessTokenCalls.d.ts +6 -1
  369. package/functions/web3/functionCalls/accessTokenCalls.mjs +21 -12
  370. package/functions/web3/functionCalls/approveToken.cjs +1 -1
  371. package/functions/web3/functionCalls/approveToken.d.ts +1 -1
  372. package/functions/web3/functionCalls/approveToken.mjs +46 -50
  373. package/functions/web3/functionCalls/approveTokensToHinkal.cjs +1 -1
  374. package/functions/web3/functionCalls/approveTokensToHinkal.d.ts +1 -1
  375. package/functions/web3/functionCalls/approveTokensToHinkal.mjs +6 -6
  376. package/functions/web3/functionCalls/estimateGasRelayer.cjs +1 -1
  377. package/functions/web3/functionCalls/estimateGasRelayer.d.ts +2 -1
  378. package/functions/web3/functionCalls/estimateGasRelayer.mjs +10 -10
  379. package/functions/web3/functionCalls/inHinkalApprovalCalls.cjs +1 -0
  380. package/functions/web3/functionCalls/inHinkalApprovalCalls.d.ts +5 -0
  381. package/functions/web3/functionCalls/inHinkalApprovalCalls.mjs +32 -0
  382. package/functions/web3/functionCalls/transactCallDirect.cjs +1 -1
  383. package/functions/web3/functionCalls/transactCallDirect.d.ts +1 -1
  384. package/functions/web3/functionCalls/transactCallDirect.mjs +40 -36
  385. package/functions/web3/functionCalls/transactCallRelayer.cjs +1 -1
  386. package/functions/web3/functionCalls/transactCallRelayer.d.ts +3 -3
  387. package/functions/web3/functionCalls/transactCallRelayer.mjs +54 -54
  388. package/functions/web3/getContractMetadata.cjs +1 -1
  389. package/functions/web3/getContractMetadata.mjs +22 -17
  390. package/functions/web3/getPublicAddressBalance.cjs +1 -1
  391. package/functions/web3/getPublicAddressBalance.d.ts +1 -1
  392. package/functions/web3/getPublicAddressBalance.mjs +6 -6
  393. package/functions/web3/getTokenHolder.cjs +1 -1
  394. package/functions/web3/getTokenHolder.mjs +27 -27
  395. package/functions/web3/index.d.ts +0 -1
  396. package/functions/web3/lifiAPI.cjs +1 -1
  397. package/functions/web3/lifiAPI.d.ts +1 -1
  398. package/functions/web3/lifiAPI.mjs +12 -12
  399. package/functions/web3/odosAPI.cjs +1 -1
  400. package/functions/web3/odosAPI.mjs +19 -6
  401. package/functions/web3/okxAPI.cjs +1 -1
  402. package/functions/web3/okxAPI.mjs +13 -13
  403. package/functions/web3/oneInchAPI.cjs +1 -1
  404. package/functions/web3/oneInchAPI.mjs +20 -7
  405. package/functions/web3/runContractFunction.cjs +1 -1
  406. package/functions/web3/runContractFunction.mjs +56 -38
  407. package/functions/web3/uniswapAPI.cjs +1 -1
  408. package/functions/web3/uniswapAPI.mjs +34 -22
  409. package/index.cjs +1 -1
  410. package/index.mjs +922 -920
  411. package/package.json +2 -3
  412. package/providers/EthersProviderAdapter.cjs +1 -1
  413. package/providers/EthersProviderAdapter.d.ts +17 -10
  414. package/providers/EthersProviderAdapter.mjs +76 -45
  415. package/providers/SolanaProviderAdapter.cjs +1 -1
  416. package/providers/SolanaProviderAdapter.d.ts +11 -7
  417. package/providers/SolanaProviderAdapter.mjs +31 -16
  418. package/providers/WagmiProviderAdapter.cjs +1 -1
  419. package/providers/WagmiProviderAdapter.d.ts +17 -11
  420. package/providers/WagmiProviderAdapter.mjs +117 -86
  421. package/providers/prepareEthersHinkal.cjs +1 -1
  422. package/providers/prepareEthersHinkal.mjs +9 -14
  423. package/providers/prepareWagmiHinkal.cjs +1 -1
  424. package/providers/prepareWagmiHinkal.mjs +9 -15
  425. package/types/TransactionSimulator.types.d.ts +9 -2
  426. package/types/activities.types.d.ts +0 -2
  427. package/types/admin.types.cjs +1 -1
  428. package/types/admin.types.d.ts +6 -0
  429. package/types/admin.types.mjs +2 -2
  430. package/types/balances.types.d.ts +1 -0
  431. package/types/bridging.types.d.ts +29 -0
  432. package/types/cache.types.cjs +1 -1
  433. package/types/cache.types.d.ts +3 -6
  434. package/types/cache.types.mjs +1 -1
  435. package/types/coingecko.types.d.ts +0 -5
  436. package/types/duneAPI.types.d.ts +9 -0
  437. package/types/ethereum-network.types.d.ts +0 -1
  438. package/types/hinkal.types.cjs +1 -1
  439. package/types/hinkal.types.d.ts +1 -1
  440. package/types/hinkal.types.mjs +18 -18
  441. package/types/index.d.ts +2 -2
  442. package/types/proxy.types.d.ts +3 -6
  443. package/types/sandbox.types.cjs +1 -1
  444. package/types/sandbox.types.d.ts +39 -10
  445. package/types/sandbox.types.mjs +2 -2
  446. package/types/scheduled-transactions.types.cjs +1 -1
  447. package/types/scheduled-transactions.types.d.ts +6 -0
  448. package/types/scheduled-transactions.types.mjs +3 -2
  449. package/types/session.types.d.ts +0 -2
  450. package/types/solana.types.d.ts +0 -9
  451. package/types/token-prices.types.cjs +1 -1
  452. package/types/token-prices.types.d.ts +0 -7
  453. package/types/token-prices.types.mjs +2 -4
  454. package/webworker/snarkjsWorker/snarkjsWorkerLauncher.cjs +1 -1
  455. package/webworker/snarkjsWorker/snarkjsWorkerLauncher.mjs +1 -1
  456. package/webworker/utxoWorker/utxoWorkerLauncher.cjs +1 -1
  457. package/webworker/utxoWorker/utxoWorkerLauncher.mjs +1 -1
  458. package/webworker/viteWorkerURL.constant.cjs +3 -3
  459. package/webworker/viteWorkerURL.constant.mjs +3 -3
  460. package/webworker/zkProofWorker/zkProofWorkerLauncher.cjs +1 -1
  461. package/webworker/zkProofWorker/zkProofWorkerLauncher.mjs +1 -1
  462. package/API/get-token-price-chart-data.cjs +0 -1
  463. package/API/get-token-price-chart-data.d.ts +0 -16
  464. package/API/get-token-price-chart-data.mjs +0 -13
  465. package/API/onrampCalls.cjs +0 -1
  466. package/API/onrampCalls.d.ts +0 -20
  467. package/API/onrampCalls.mjs +0 -15
  468. package/API/unspent-utxos-calls.cjs +0 -1
  469. package/API/unspent-utxos-calls.d.ts +0 -26
  470. package/API/unspent-utxos-calls.mjs +0 -26
  471. package/data-structures/AccountActions/AccountActions.cjs +0 -1
  472. package/data-structures/AccountActions/AccountActions.d.ts +0 -18
  473. package/data-structures/AccountActions/AccountActions.mjs +0 -78
  474. package/data-structures/AccountActions/index.d.ts +0 -1
  475. package/data-structures/BlockchainEvent/BlockchainEvent.cjs +0 -1
  476. package/data-structures/BlockchainEvent/BlockchainEvent.d.ts +0 -14
  477. package/data-structures/BlockchainEvent/BlockchainEvent.mjs +0 -41
  478. package/data-structures/PublicBalance/PublicBalanceWatcher.cjs +0 -1
  479. package/data-structures/PublicBalance/PublicBalanceWatcher.d.ts +0 -20
  480. package/data-structures/PublicBalance/PublicBalanceWatcher.mjs +0 -124
  481. package/data-structures/PublicBalance/SolanaPublicBalancerWatcher.cjs +0 -1
  482. package/data-structures/PublicBalance/SolanaPublicBalancerWatcher.d.ts +0 -15
  483. package/data-structures/PublicBalance/SolanaPublicBalancerWatcher.mjs +0 -64
  484. package/data-structures/PublicBalance/index.d.ts +0 -2
  485. package/data-structures/event-service/evm/ClientBlockchainEventEmitter.cjs +0 -1
  486. package/data-structures/event-service/evm/ClientBlockchainEventEmitter.d.ts +0 -11
  487. package/data-structures/event-service/evm/ClientBlockchainEventEmitter.mjs +0 -21
  488. package/data-structures/event-service/evm/PollingBlockchainEventEmitter.cjs +0 -1
  489. package/data-structures/event-service/evm/PollingBlockchainEventEmitter.d.ts +0 -6
  490. package/data-structures/event-service/evm/PollingBlockchainEventEmitter.mjs +0 -16
  491. package/data-structures/event-service/helpers/ClientEventHelper.cjs +0 -1
  492. package/data-structures/event-service/helpers/ClientEventHelper.d.ts +0 -11
  493. package/data-structures/event-service/helpers/ClientEventHelper.mjs +0 -26
  494. package/data-structures/event-service/helpers/PollingEventHelper.cjs +0 -1
  495. package/data-structures/event-service/helpers/PollingEventHelper.d.ts +0 -5
  496. package/data-structures/event-service/helpers/PollingEventHelper.mjs +0 -14
  497. package/data-structures/event-service/solana/ClientSolanaBlockchainEventEmitter.cjs +0 -1
  498. package/data-structures/event-service/solana/ClientSolanaBlockchainEventEmitter.d.ts +0 -11
  499. package/data-structures/event-service/solana/ClientSolanaBlockchainEventEmitter.mjs +0 -22
  500. package/data-structures/event-service/solana/PollingSolanaBlockchainEventEmitter.cjs +0 -1
  501. package/data-structures/event-service/solana/PollingSolanaBlockchainEventEmitter.d.ts +0 -6
  502. package/data-structures/event-service/solana/PollingSolanaBlockchainEventEmitter.mjs +0 -16
  503. package/functions/utils/enum.utils.cjs +0 -1
  504. package/functions/utils/enum.utils.mjs +0 -14
  505. package/functions/utils/socket.utils.cjs +0 -1
  506. package/functions/utils/socket.utils.d.ts +0 -1
  507. package/functions/utils/socket.utils.mjs +0 -12
  508. package/functions/web3/crypto.cjs +0 -1
  509. package/functions/web3/crypto.d.ts +0 -1
  510. package/functions/web3/crypto.mjs +0 -7
  511. package/types/events.types.cjs +0 -1
  512. package/types/events.types.d.ts +0 -9
  513. package/types/events.types.mjs +0 -5
  514. package/types/onramp.types.cjs +0 -1
  515. package/types/onramp.types.d.ts +0 -58
  516. package/types/onramp.types.mjs +0 -4
@@ -1,36 +1,29 @@
1
- import { randomBigInt as I } from "../../functions/web3/etherFunctions.mjs";
2
- import "../../functions/web3/events/getInputUtxoAndBalance.mjs";
3
- import "../../constants/token-data/index.mjs";
4
- import { solanaNativeAddress as R } from "../../constants/protocol.constants.mjs";
5
- import { networkRegistry as H } from "../../constants/chains.constants.mjs";
6
- import { Utxo as N } from "../utxo/Utxo.mjs";
7
- import { transactionErrorCodes as W } from "../../error-handling/error-codes.constants.mjs";
1
+ import { randomBigInt as M } from "../../functions/web3/etherFunctions.mjs";
2
+ import { Utxo as z } from "../utxo/Utxo.mjs";
3
+ import { transactionErrorCodes as Y } from "../../error-handling/error-codes.constants.mjs";
4
+ import { ethers as Z } from "ethers";
8
5
  import "idb-keyval";
9
- import { API as _ } from "../../API/API.mjs";
6
+ import { networkRegistry as $ } from "../../constants/chains.constants.mjs";
7
+ import "../crypto-keys/keys.mjs";
8
+ import "node-forge";
10
9
  import "../../constants/vite.constants.mjs";
11
- import { validateAndGetChainId as q } from "../../functions/utils/token-check.utils.mjs";
12
- import "async-mutex";
13
- import { formatMintAddress as M } from "../../functions/utils/solanaMint.utils.mjs";
10
+ import "libsodium-wrappers";
11
+ import "../http/HttpClient.mjs";
12
+ import "axios";
13
+ import { formatMintAddress as q } from "../../functions/utils/solanaMint.utils.mjs";
14
+ import { PublicKey as W } from "@solana/web3.js";
15
+ import { hashEthereumAddress as j } from "../../functions/utils/addresses.mjs";
16
+ import "../../constants/server.constants.mjs";
17
+ import "../../constants/token-data/index.mjs";
18
+ import { solanaNativeAddress as U } from "../../constants/protocol.constants.mjs";
19
+ import { API as G } from "../../API/API.mjs";
20
+ import "../../functions/utils/mutexes.utils.mjs";
14
21
  import "../../types/circom-data.types.mjs";
15
- import { ExternalActionId as G } from "../../types/external-action.types.mjs";
22
+ import { ExternalActionId as J } from "../../types/external-action.types.mjs";
16
23
  import "../../types/transactions.types.mjs";
17
24
  import "../../types/activities.types.mjs";
25
+ import { DepositAndWithdrawPhase as k } from "../../types/scheduled-transactions.types.mjs";
18
26
  import "../../functions/web3/events/getApprovedBalance.mjs";
19
- import { ethers as X } from "ethers";
20
- import { PublicKey as L } from "@solana/web3.js";
21
- import "../http/HttpClient.mjs";
22
- import "../../functions/utils/convertIntegrationProviderToExternalActionId.mjs";
23
- import "../../constants/server.constants.mjs";
24
- import "../../API/getServerURL.mjs";
25
- import "axios";
26
- import { hashEthereumAddress as Y } from "../../functions/utils/addresses.mjs";
27
- import { getStorageAccountPublicKey as Z, getStorageVaultPublicKey as j, getMerkleAccountPublicKey as J, buildAnchorStealthAddressStructure as Q, getTokenLimitStorageAccountPublicKey as tt } from "../../functions/pre-transaction/solana.mjs";
28
- import "@solana/spl-token";
29
- import "ethers-v6h";
30
- import "tweetnacl";
31
- import "bs58";
32
- import { BN as ot } from "@coral-xyz/anchor";
33
- import "buffer";
34
27
  import "../../constants/contracts.constants.mjs";
35
28
  import "../../constants/kyc.constants.mjs";
36
29
  import "../../constants/coingecko.constants.mjs";
@@ -41,68 +34,84 @@ import "../../constants/presale.constants.mjs";
41
34
  import "../../constants/activity.constants.mjs";
42
35
  import "../../constants/tasks.constants.mjs";
43
36
  import "../../constants/events.constants.mjs";
44
- import "../../functions/utils/userAgent.mjs";
45
- import { getCurrentTimeInSeconds as rt } from "../../functions/utils/time.utils.mjs";
37
+ import "../../functions/utils/convertIntegrationProviderToExternalActionId.mjs";
38
+ import "../../API/getServerURL.mjs";
46
39
  import "circomlibjs-hinkal-fork";
47
- import "../crypto-keys/keys.mjs";
48
- import "libsodium-wrappers";
49
- import "multiformats";
50
40
  import "process";
51
- import "../../providers/EthersProviderAdapter.mjs";
52
- import { calculateTotalFee as et } from "../../functions/utils/fees.utils.mjs";
41
+ import "buffer";
42
+ import "../../constants/save-depths.mjs";
43
+ import { BN as Q } from "@coral-xyz/anchor";
44
+ import { getStorageAccountPublicKey as tt, getStorageVaultPublicKey as ot, getMerkleAccountPublicKey as rt, buildAnchorStealthAddressStructure as et, getTokenLimitStorageAccountPublicKey as it } from "../../functions/pre-transaction/solana.mjs";
45
+ import "@solana/spl-token";
46
+ import "../../functions/utils/userAgent.mjs";
47
+ import { getCurrentTimeInSeconds as at } from "../../functions/utils/time.utils.mjs";
48
+ import "multiformats";
49
+ import "../../API/tenderly.api.mjs";
50
+ import { calculateTotalFee as nt } from "../../functions/utils/fees.utils.mjs";
53
51
  import "../../functions/web3/getTokenHolder.mjs";
54
- import { signAndSendSerializedTransaction as it } from "../../functions/web3/signAndSendSerializedTransaction.mjs";
55
- import { calcStealthAddressStructure as nt, calcEncryptedOutputs as st } from "../../functions/snarkjs/common.snarkjs.mjs";
56
- import { hinkalCheckSolanaTokenRegistry as at } from "./hinkalCheckSolanaTokenRegistry.mjs";
57
- import { getUtxosFromReceiptSolana as ct } from "../../functions/utils/getUtxosFromReceiptSolana.mjs";
58
- import { constructSolanaZkProof as mt } from "../../functions/snarkjs/constructSolanaZkProof.mjs";
59
- import { solanaTransactCallRelayerBatch as lt } from "../../functions/web3/functionCalls/transactCallRelayer.mjs";
60
- import { getFeeStructure as dt } from "../../functions/pre-transaction/getFeeStructure.mjs";
61
- const pt = async (t, o, h, l, d, w) => {
62
- const s = h.erc20TokenAddress, i = l.map((r) => r + et(r, w)), { hinkalIdl: p, hinkalAddress: u, originalDeployer: g } = H[o].contractData;
63
- if (!p)
52
+ import { signAndSendSerializedTransaction as st } from "../../functions/web3/signAndSendSerializedTransaction.mjs";
53
+ import { calcStealthAddressStructure as ct, calcEncryptedOutputs as mt } from "../../functions/snarkjs/common.snarkjs.mjs";
54
+ import { hinkalCheckSolanaTokenRegistry as pt } from "./hinkalCheckSolanaTokenRegistry.mjs";
55
+ import { getUtxosFromReceiptSolana as lt } from "../../functions/utils/getUtxosFromReceiptSolana.mjs";
56
+ import { constructSolanaZkProof as dt } from "../../functions/snarkjs/constructSolanaZkProof.mjs";
57
+ import { solanaTransactCallRelayerBatch as ut } from "../../functions/web3/functionCalls/transactCallRelayer.mjs";
58
+ import { getFeeStructure as gt } from "../../functions/pre-transaction/getFeeStructure.mjs";
59
+ import { updateDepositAndWithdrawStatus as ht, safeUpdateDepositAndWithdrawStatus as N } from "../../API/deposit-and-withdraw-status-calls.mjs";
60
+ const ft = async (t, r, p, l, d, u) => {
61
+ const g = p.map((o) => o + nt(o, d)), {
62
+ hinkalIdl: h,
63
+ hinkalAddress: y,
64
+ originalDeployer: s
65
+ } = $[t.getCurrentChainId()].contractData;
66
+ if (!h)
64
67
  throw new Error("No IDL configured for Solana program on this network");
65
- if (!g)
68
+ if (!s)
66
69
  throw new Error("missing original deployer");
67
- const f = t.userKeys.getShieldedPrivateKey(), C = N.findCorrectRandomization(I(31), f), E = nt(C, f), e = t.getSolanaProgram(p), F = t.getSolanaPublicKey(), n = new L(g), A = new L(u), { mintPublicKey: S } = M(s), P = S.toString(), D = Z(A, n), U = j(A, n), K = J(A, n), T = Q(E), v = i.reduce((r, c) => r + c, 0n), O = await at(
70
+ const f = t.userKeys.getShieldedPrivateKey(), E = z.findCorrectRandomization(M(31), f), S = ct(E, f), e = t.getSolanaProgram(h), v = t.getSolanaPublicKey(), i = new W(s), A = new W(y), { mintPublicKey: c } = q(r), R = c.toString(), F = tt(A, i), b = ot(A, i), H = rt(A, i), x = et(S), I = t.getCurrentChainId(), D = g.reduce((o, n) => o + n, 0n), T = await pt(
68
71
  e,
69
- new L(n),
70
- [s],
71
- [v]
72
- ), b = i.map((r) => `${r}`);
73
- let y = "";
74
- if (O) {
75
- const { serializedTransaction: r, blockhash: c, lastValidBlockHeight: a } = await _.generateMultiPaymentDepositLimitless({
76
- amounts: b,
77
- payer: t.getSolanaPublicKey().toBase58(),
78
- ethereumAddress: await t.getEthereumAddressByChain(o),
79
- mint: s,
80
- stealthAddressStructure: T,
81
- chainId: o
82
- }), { wallet: m } = e.provider;
72
+ new W(i),
73
+ [r],
74
+ [D]
75
+ ), K = g.map((o) => `${o}`);
76
+ let a = "";
77
+ const P = (await ht(I, {
78
+ hashedEthereumAddress: u,
79
+ phase: k.BEFORE_DEPOSIT
80
+ })).id ?? void 0;
81
+ if (T) {
82
+ const { serializedTransaction: o, blockhash: n, lastValidBlockHeight: w } = await G.generateMultiPaymentDepositLimitless(
83
+ I,
84
+ {
85
+ amounts: K,
86
+ payer: t.getSolanaPublicKey().toBase58(),
87
+ ethereumAddress: await t.getEthereumAddress(),
88
+ mint: r,
89
+ stealthAddressStructure: x
90
+ }
91
+ ), { wallet: m } = e.provider;
83
92
  if (!m)
84
93
  throw new Error("missing wallet");
85
- y = await it(
94
+ a = await st(
86
95
  e.provider,
87
- r,
88
- c,
89
- a
96
+ o,
97
+ n,
98
+ w
90
99
  );
91
100
  } else {
92
- const r = tt(e.programId, n, S), c = P === R ? null : S, a = P === R ? null : void 0;
93
- y = await e.methods.multiPaymentDeposit(
94
- b.map((z) => new ot(z)),
95
- T
101
+ const o = it(e.programId, i, c), n = R === U ? null : c, w = R === U ? null : void 0;
102
+ a = await e.methods.multiPaymentDeposit(
103
+ K.map((V) => new Q(V)),
104
+ x
96
105
  ).accounts({
97
- mint: c,
98
- signer: F,
99
- signerAta: a,
100
- originalDeployer: n,
101
- storageAccount: D,
102
- storageVault: U,
103
- merkleAccount: K,
104
- tokenLimitStorage: r,
105
- storageVaultAta: a,
106
+ mint: n,
107
+ signer: v,
108
+ signerAta: w,
109
+ originalDeployer: i,
110
+ storageAccount: F,
111
+ storageVault: b,
112
+ merkleAccount: H,
113
+ tokenLimitStorage: o,
114
+ storageVaultAta: w,
106
115
  accessTokenOwner: null
107
116
  }).rpc();
108
117
  const m = await e.provider.connection.getLatestBlockhash();
@@ -110,127 +119,145 @@ const pt = async (t, o, h, l, d, w) => {
110
119
  {
111
120
  blockhash: m.blockhash,
112
121
  lastValidBlockHeight: m.lastValidBlockHeight,
113
- signature: y
122
+ signature: a
114
123
  },
115
124
  "confirmed"
116
125
  );
117
126
  }
118
- const x = await e.provider.connection.getTransaction(y, {
127
+ const B = await e.provider.connection.getTransaction(a, {
119
128
  commitment: "confirmed",
120
129
  maxSupportedTransactionVersion: 0
121
130
  });
122
- if (!x)
131
+ if (!B)
123
132
  throw new Error("Transaction missing");
124
- const V = ct(x, e, t.userKeys), B = [], k = [...V];
125
- return d.forEach((r, c) => {
126
- const a = i[c], m = k.find(($) => $.amount === a);
133
+ await N(I, {
134
+ id: P,
135
+ hashedEthereumAddress: u,
136
+ phase: k.AFTER_DEPOSIT,
137
+ depositTxHash: a
138
+ });
139
+ const L = lt(B, e, t.userKeys), O = [], C = [...L];
140
+ return l.forEach((o, n) => {
141
+ const w = g[n], m = C.find((X) => X.amount === w);
127
142
  if (!m)
128
- throw new Error(`Could not find newly created UTXO with amount ${a} for recipient ${r}.`);
129
- B.push({
130
- recipientAddress: r,
143
+ throw new Error(`Could not find newly created UTXO with amount ${w} for recipient ${o}.`);
144
+ O.push({
145
+ recipientAddress: o,
131
146
  utxo: m
132
147
  });
133
- const z = k.indexOf(m);
134
- k.splice(z, 1);
135
- }), B;
136
- }, ut = async (t, o, h, l, d, w, s) => {
137
- const i = h.erc20TokenAddress;
138
- if (l.length === 0)
148
+ const V = C.indexOf(m);
149
+ C.splice(V, 1);
150
+ }), { userDepositedUtxos: O, signature: a, statusId: P };
151
+ }, wt = async (t, r, p, l, d, u, g, h) => {
152
+ const y = t.getCurrentChainId();
153
+ if (p.length === 0)
139
154
  throw new Error("userDepositedUtxos must not be empty");
140
- const { hinkalIdl: p, originalDeployer: u } = H[o].contractData;
141
- if (!u || !p)
155
+ const { hinkalIdl: s, originalDeployer: f } = $[t.getCurrentChainId()].contractData;
156
+ if (!f || !s)
142
157
  throw new Error("missing data");
143
- const g = t.getSolanaProgram(p), f = await t.getRandomRelay(o, !0);
144
- if (!f)
145
- throw new Error(W.RELAYER_NOT_AVAILABLE);
146
- const C = rt().toString(), E = t.generateProofRemotely ? 5 : 1, e = [];
147
- for (let n = 0; n < l.length; n += E) {
148
- const A = l.slice(n, n + E), S = await Promise.all(
149
- A.map(async ({ recipientAddress: P, utxo: D }) => {
150
- const { compressedAddress: U } = M(R), K = new N({
158
+ const E = t.getSolanaProgram(s), S = await t.getRandomRelay(!0);
159
+ if (!S)
160
+ throw new Error(Y.RELAYER_NOT_AVAILABLE);
161
+ const e = at().toString(), v = t.generateProofRemotely ? 5 : 1, i = [];
162
+ for (let c = 0; c < p.length; c += v) {
163
+ const R = p.slice(c, c + v), F = await Promise.all(
164
+ R.map(async ({ recipientAddress: b, utxo: H }) => {
165
+ const { compressedAddress: x } = q(U), I = new z({
151
166
  amount: 0n,
152
- mintAddress: i,
153
- erc20TokenAddress: U,
167
+ mintAddress: r,
168
+ erc20TokenAddress: x,
154
169
  shieldedPrivateKey: t.userKeys.getShieldedPrivateKey(),
155
- timeStamp: C,
170
+ timeStamp: e,
156
171
  tokenId: 0
157
- }), T = [D, K], v = [K], O = N.findCorrectRandomization(
158
- I(31),
172
+ }), D = [H, I], T = [I], K = z.findCorrectRandomization(
173
+ M(31),
159
174
  t.userKeys.getShieldedPrivateKey()
160
- ), b = {
175
+ ), a = {
161
176
  tokenNumber: 1,
162
- nullifierAmount: T.length,
163
- outputAmount: v.length
164
- }, y = st([v])[0][0], x = Array.from(X.utils.arrayify(y)), { proofAArr: V, proofBArr: B, proofCArr: k, publicInputsArr: r } = await mt(
177
+ nullifierAmount: D.length,
178
+ outputAmount: T.length
179
+ }, _ = mt([T])[0][0], P = Array.from(Z.utils.arrayify(_)), { proofAArr: B, proofBArr: L, proofCArr: O, publicInputsArr: C } = await dt(
165
180
  t.generateProofRemotely,
166
- u,
167
- t.merkleTreeHinkalByChain[o],
168
- t.merkleTreeAccessTokenByChain[o],
181
+ f,
182
+ t.merkleTreeHinkal,
183
+ t.merkleTreeAccessToken,
169
184
  t.userKeys,
170
- g,
171
- [i],
185
+ E,
186
+ [r],
187
+ [D],
172
188
  [T],
173
- [v],
174
- O,
175
- d.flatFee,
176
- d.variableRate,
177
- P,
178
- f,
189
+ K,
190
+ l.flatFee,
191
+ l.variableRate,
179
192
  b,
180
- [x],
181
- o,
193
+ S,
194
+ a,
195
+ [P],
196
+ t.getCurrentChainId(),
182
197
  void 0,
183
198
  void 0,
184
199
  void 0,
185
200
  void 0,
186
201
  void 0,
187
202
  !1
188
- ), a = {
189
- recipient: P,
190
- mint: i === R ? void 0 : i
203
+ ), n = {
204
+ recipient: b,
205
+ mint: r === U ? void 0 : r
191
206
  };
192
207
  return {
193
- relayAddress: f,
208
+ relayAddress: S,
194
209
  functionName: "transact",
195
- chainId: o,
196
210
  args: {
197
- proofAArr: V,
198
- proofBArr: B,
199
- proofCArr: k,
200
- publicInputsArr: r,
201
- encryptedOutputs: [x],
202
- relayerFee: d.flatFee.toString(),
203
- dimensions: b
211
+ proofAArr: B,
212
+ proofBArr: L,
213
+ proofCArr: O,
214
+ publicInputsArr: C,
215
+ encryptedOutputs: [P],
216
+ relayerFee: l.flatFee.toString(),
217
+ dimensions: a
204
218
  },
205
- accounts: a
219
+ accounts: n
206
220
  };
207
221
  })
208
222
  );
209
- e.push(...S);
223
+ i.push(...F);
210
224
  }
211
- return await lt(
212
- o,
213
- e,
214
- w,
215
- s
225
+ await N(y, {
226
+ id: u,
227
+ hashedEthereumAddress: d,
228
+ phase: k.BEFORE_SCHEDULE_WITHDRAW
229
+ });
230
+ const A = await ut(
231
+ t.getCurrentChainId(),
232
+ i,
233
+ d,
234
+ g,
235
+ h
216
236
  );
217
- }, Po = async (t, o, h, l, d, w) => {
218
- const s = q([o]), i = o.erc20TokenAddress, p = Y(await t.getEthereumAddressByChain(s)), u = w ?? await dt(s, i, [i], G.Transact, [], 0n), g = await pt(
237
+ return await N(y, {
238
+ id: u,
239
+ hashedEthereumAddress: d,
240
+ phase: k.AFTER_SCHEDULE_WITHDRAW,
241
+ scheduleId: A
242
+ }), A;
243
+ }, Po = async (t, r, p, l, d, u, g) => {
244
+ const h = j(await t.getEthereumAddress()), y = t.getCurrentChainId(), s = u ?? await gt(y, r, [r], J.Transact, [], 0n), { userDepositedUtxos: f, statusId: E } = await ft(
219
245
  t,
220
- s,
221
- o,
222
- h,
246
+ r,
247
+ p,
223
248
  l,
224
- u
249
+ s,
250
+ h
225
251
  );
226
- return ut(
252
+ return await wt(
227
253
  t,
254
+ r,
255
+ f,
228
256
  s,
229
- o,
230
- g,
231
- u,
232
- p,
233
- d
257
+ h,
258
+ E,
259
+ d,
260
+ g
234
261
  );
235
262
  };
236
263
  export {
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("@solana/web3.js"),P=require("../../constants/chains.constants.cjs"),y=require("../../functions/pre-transaction/sendV0Transaction.cjs"),b=require("../../functions/pre-transaction/solanaTransfer.utils.cjs"),f=require("../../functions/utils/create-provider.cjs"),h=require("../../functions/utils/token-check.utils.cjs"),w=require("../AccountActions/AccountActions.cjs"),S=async(r,a,o,t)=>{const n=h.validateAndGetChainId([r]),e=w.AccountActions.getAddressFromSubAccount(n,o);if(!e)throw Error("Public account address is not available");const{fetchRpcUrl:s}=P.networkRegistry[n];if(!s)throw new Error("RPC URL not found for the specified chain ID");const i=f.createCustomSolanaConnection(s),c=new u.PublicKey(e),{instructions:d,programId:l}=await b.buildSolanaTransferInstructions(i,c,new u.PublicKey(t),r,a);return{connection:i,chainId:n,senderAddress:e,senderPublickey:c,programId:l,instructions:d}},g=async(r,a,o,t,n=!1)=>{if(n)throw new Error("onlyGasEstimate is not supported for Solana proxy send");const{connection:e,chainId:s,senderAddress:i,senderPublickey:c,programId:d,instructions:l}=await S(r,a,o,t);return y.sendProxyV0Transaction({connection:e,chainId:s,subAccount:o,payerPublicKey:c,instructions:l,convertParams:{fromAddress:i,toAddress:t,programAddress:d.toString()}})},A=async(r,a,o,t)=>{const{connection:n,senderPublickey:e,instructions:s}=await S(r,a,o,t);return y.serializeProxyV0Transaction(n,e,s)};exports.getSolanaProxySendSerializedTransaction=A;exports.hinkalSolanaProxySend=g;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const y=require("@solana/web3.js"),f=require("../../constants/chains.constants.cjs"),S=require("../../functions/pre-transaction/sendV0Transaction.cjs"),g=require("../../functions/pre-transaction/solanaTransfer.utils.cjs"),h=require("../crypto-keys/keys.cjs"),w=require("../../functions/utils/create-provider.cjs"),P=async(s,a,i,e,r)=>{const n=s.getCurrentChainId(),o=h.UserKeys.getSignerAddressFromPrivateKey(n,e.privateKey),{fetchRpcUrl:t}=f.networkRegistry[n];if(!t)throw new Error("RPC URL not found for the specified chain ID");const c=w.createCustomSolanaConnection(t),d=new y.PublicKey(o),{instructions:l,programId:u}=await g.buildSolanaTransferInstructions(c,d,new y.PublicKey(r),a,i);return{connection:c,chainId:n,senderAddress:o,senderPublickey:d,programId:u,instructions:l}},b=async(s,a,i,e,r,n=!1)=>{if(n)throw new Error("onlyGasEstimate is not supported for Solana proxy send");const{connection:o,chainId:t,senderAddress:c,senderPublickey:d,programId:l,instructions:u}=await P(s,a,i,e,r);return S.sendProxyV0Transaction({connection:o,chainId:t,subAccount:e,payerPublicKey:d,instructions:u,convertParams:{fromAddress:c,toAddress:r,programAddress:l.toString()}})},p=async(s,a,i,e,r)=>{const{connection:n,senderPublickey:o,instructions:t}=await P(s,a,i,e,r);return S.serializeProxyV0Transaction(n,o,t)};exports.getSolanaProxySendSerializedTransaction=p;exports.hinkalSolanaProxySend=b;
@@ -1,5 +1,6 @@
1
1
  import { ERC20Token } from '../../types/token.types';
2
+ import { IHinkal } from './IHinkal';
2
3
  import { RelayerTransaction } from '../../types/relayer.types';
3
4
  import { SubAccount } from '../../types/proxy.types';
4
- export declare const hinkalSolanaProxySend: (token: ERC20Token, tokenAmount: bigint, subAccount: SubAccount, recipientAddress: string, onlyGasEstimate?: boolean) => Promise<RelayerTransaction>;
5
- export declare const getSolanaProxySendSerializedTransaction: (token: ERC20Token, tokenAmount: bigint, subAccount: SubAccount, recipientAddress: string) => Promise<string>;
5
+ export declare const hinkalSolanaProxySend: (hinkal: IHinkal, token: ERC20Token, tokenAmount: bigint, subAccount: SubAccount, recipientAddress: string, onlyGasEstimate?: boolean) => Promise<RelayerTransaction>;
6
+ export declare const getSolanaProxySendSerializedTransaction: (hinkal: IHinkal, token: ERC20Token, tokenAmount: bigint, subAccount: SubAccount, recipientAddress: string) => Promise<string>;
@@ -1,58 +1,55 @@
1
- import { PublicKey as m } from "@solana/web3.js";
2
- import { networkRegistry as f } from "../../constants/chains.constants.mjs";
3
- import { sendProxyV0Transaction as y, serializeProxyV0Transaction as p } from "../../functions/pre-transaction/sendV0Transaction.mjs";
4
- import { buildSolanaTransferInstructions as P } from "../../functions/pre-transaction/solanaTransfer.utils.mjs";
5
- import { createCustomSolanaConnection as S } from "../../functions/utils/create-provider.mjs";
6
- import { validateAndGetChainId as w } from "../../functions/utils/token-check.utils.mjs";
7
- import { AccountActions as h } from "../AccountActions/AccountActions.mjs";
8
- const u = async (r, a, t, e) => {
9
- const n = w([r]), o = h.getAddressFromSubAccount(n, t);
10
- if (!o)
11
- throw Error("Public account address is not available");
12
- const { fetchRpcUrl: s } = f[n];
13
- if (!s)
1
+ import { PublicKey as l } from "@solana/web3.js";
2
+ import { networkRegistry as p } from "../../constants/chains.constants.mjs";
3
+ import { sendProxyV0Transaction as u, serializeProxyV0Transaction as P } from "../../functions/pre-transaction/sendV0Transaction.mjs";
4
+ import { buildSolanaTransferInstructions as S } from "../../functions/pre-transaction/solanaTransfer.utils.mjs";
5
+ import { UserKeys as w } from "../crypto-keys/keys.mjs";
6
+ import { createCustomSolanaConnection as g } from "../../functions/utils/create-provider.mjs";
7
+ const f = async (s, i, a, n, o) => {
8
+ const r = s.getCurrentChainId(), e = w.getSignerAddressFromPrivateKey(r, n.privateKey), { fetchRpcUrl: t } = p[r];
9
+ if (!t)
14
10
  throw new Error("RPC URL not found for the specified chain ID");
15
- const i = S(s), c = new m(o), { instructions: d, programId: l } = await P(
16
- i,
11
+ const c = g(t), d = new l(e), { instructions: m, programId: y } = await S(
17
12
  c,
18
- new m(e),
19
- r,
13
+ d,
14
+ new l(o),
15
+ i,
20
16
  a
21
17
  );
22
18
  return {
23
- connection: i,
24
- chainId: n,
25
- senderAddress: o,
26
- senderPublickey: c,
27
- programId: l,
28
- instructions: d
19
+ connection: c,
20
+ chainId: r,
21
+ senderAddress: e,
22
+ senderPublickey: d,
23
+ programId: y,
24
+ instructions: m
29
25
  };
30
- }, E = async (r, a, t, e, n = !1) => {
31
- if (n)
26
+ }, K = async (s, i, a, n, o, r = !1) => {
27
+ if (r)
32
28
  throw new Error("onlyGasEstimate is not supported for Solana proxy send");
33
- const { connection: o, chainId: s, senderAddress: i, senderPublickey: c, programId: d, instructions: l } = await u(r, a, t, e);
34
- return y({
35
- connection: o,
36
- chainId: s,
37
- subAccount: t,
38
- payerPublicKey: c,
39
- instructions: l,
29
+ const { connection: e, chainId: t, senderAddress: c, senderPublickey: d, programId: m, instructions: y } = await f(s, i, a, n, o);
30
+ return u({
31
+ connection: e,
32
+ chainId: t,
33
+ subAccount: n,
34
+ payerPublicKey: d,
35
+ instructions: y,
40
36
  convertParams: {
41
- fromAddress: i,
42
- toAddress: e,
43
- programAddress: d.toString()
37
+ fromAddress: c,
38
+ toAddress: o,
39
+ programAddress: m.toString()
44
40
  }
45
41
  });
46
- }, R = async (r, a, t, e) => {
47
- const { connection: n, senderPublickey: o, instructions: s } = await u(
48
- r,
42
+ }, A = async (s, i, a, n, o) => {
43
+ const { connection: r, senderPublickey: e, instructions: t } = await f(
44
+ s,
45
+ i,
49
46
  a,
50
- t,
51
- e
47
+ n,
48
+ o
52
49
  );
53
- return p(n, o, s);
50
+ return P(r, e, t);
54
51
  };
55
52
  export {
56
- R as getSolanaProxySendSerializedTransaction,
57
- E as hinkalSolanaProxySend
53
+ A as getSolanaProxySendSerializedTransaction,
54
+ K as hinkalSolanaProxySend
58
55
  };
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const p=require("@solana/spl-token"),h=require("@solana/web3.js"),f=require("../../constants/chains.constants.cjs"),b=require("../../constants/protocol.constants.cjs"),N=require("../../functions/utils/solanaMint.utils.cjs"),T=require("../../functions/utils/addresses.cjs"),O=require("../../error-handling/error-codes.constants.cjs"),A=require("../../functions/pre-transaction/solana.cjs"),V=require("@coral-xyz/anchor"),k=require("../../functions/pre-transaction/sendV0Transaction.cjs"),M=require("../../functions/utils/create-provider.cjs"),q=require("../../functions/utils/token-check.utils.cjs"),G=require("../AccountActions/AccountActions.cjs"),L=async({program:o,mintPublicKey:r,mintAddressString:e,tokenAmount:n,anchorStealthStructure:i,senderPublickey:d,originalDeployer:t,storageAccount:s,storageVault:c})=>{const u=new V.BN(n.toString()),l=A.getTokenLimitStorageAccountPublicKey(o.programId,t,r),g=e===b.solanaNativeAddress?null:r,a=e===b.solanaNativeAddress?null:void 0;return o.methods.prooflessDeposit(u,i).accounts({mint:g,signer:d,signerAta:a,originalDeployer:t,storageAccount:s,storageVault:c,tokenLimitStorage:l,storageVaultAta:a,accessTokenOwner:null}).instruction()},E=async(o,r,e,n,i,d)=>{const t=d??o.getRecipientInfo();if(!T.isValidPrivateAddress(t))throw Error(O.transactionErrorCodes.RECIPIENT_FORMAT_INCORRECT);const s=G.AccountActions.getAddressFromSubAccount(r,i);if(!s)throw Error("Public account address is not available");const{hinkalIdl:c,hinkalAddress:u,originalDeployer:l}=f.networkRegistry[r].contractData;if(!c)throw new Error("No IDL configured for Solana program on this network");if(!l)throw new Error("missing original deployer");const g=o.getSolanaProgram(c),a=new h.PublicKey(l),S=new h.PublicKey(u),y=new h.PublicKey(s),{erc20TokenAddress:I}=e,{fetchRpcUrl:P}=f.networkRegistry[r];if(!P)throw new Error("RPC URL not found for the specified chain ID");const R=M.createCustomSolanaConnection(P),{mintPublicKey:w}=N.formatMintAddress(I),_=w.toString(),m=A.getStorageAccountPublicKey(S,a),C=A.getStorageVaultPublicKey(S,a),v=T.constructStealthAddressStructure(t),x=A.buildAnchorStealthAddressStructure(v),D=await L({program:g,mintPublicKey:w,mintAddressString:_,tokenAmount:n,anchorStealthStructure:x,senderPublickey:y,originalDeployer:a,storageAccount:m,storageVault:C}),K=e.is2022Program?p.TOKEN_2022_PROGRAM_ID:p.TOKEN_PROGRAM_ID;return{connection:R,senderAddress:s,senderPublickey:y,instructions:[D],storageAccount:m,programId:K}},z=async(o,r,e,n,i,d=!1)=>{if(d)throw new Error("onlyGasEstimate is not supported for Solana proxy shield");if(!n)throw new Error("subAccount is required");const t=q.validateAndGetChainId([r]),{connection:s,senderPublickey:c,instructions:u,senderAddress:l,storageAccount:g,programId:a}=await E(o,t,r,e,n,i),S=i||g.toString();return k.sendProxyV0Transaction({connection:s,chainId:t,subAccount:n,payerPublicKey:c,instructions:u,convertParams:{fromAddress:l,toAddress:S,programAddress:a.toString()}})},j=async(o,r,e,n,i)=>{const d=q.validateAndGetChainId([r]),{connection:t,senderPublickey:s,instructions:c}=await E(o,d,r,e,n,i);return k.serializeProxyV0Transaction(t,s,c)};exports.getSolanaProxyShieldSerializedTransaction=j;exports.hinkalSolanaProxyShield=z;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const m=require("@solana/spl-token"),h=require("@solana/web3.js"),f=require("../../constants/chains.constants.cjs"),b=require("../../constants/protocol.constants.cjs"),D=require("../../functions/utils/solanaMint.utils.cjs"),I=require("../../functions/utils/addresses.cjs"),N=require("../../error-handling/error-codes.constants.cjs"),S=require("../../functions/pre-transaction/solana.cjs"),O=require("@coral-xyz/anchor"),T=require("../../functions/pre-transaction/sendV0Transaction.cjs"),V=require("../crypto-keys/keys.cjs"),M=require("../../functions/utils/create-provider.cjs"),L=async({program:e,mintPublicKey:t,mintAddressString:n,tokenAmount:o,anchorStealthStructure:s,senderPublickey:i,originalDeployer:r,storageAccount:a,storageVault:d})=>{const u=new O.BN(o.toString()),l=S.getTokenLimitStorageAccountPublicKey(e.programId,r,t),g=n===b.solanaNativeAddress?null:t,c=n===b.solanaNativeAddress?null:void 0;return e.methods.prooflessDeposit(u,s).accounts({mint:g,signer:i,signerAta:c,originalDeployer:r,storageAccount:a,storageVault:d,tokenLimitStorage:l,storageVaultAta:c,accessTokenOwner:null}).instruction()},k=async(e,t,n,o,s)=>{const i=s??e.getRecipientInfo();if(!I.isValidPrivateAddress(i))throw Error(N.transactionErrorCodes.RECIPIENT_FORMAT_INCORRECT);const r=e.getCurrentChainId(),a=V.UserKeys.getSignerAddressFromPrivateKey(r,o.privateKey),{hinkalIdl:d,hinkalAddress:u,originalDeployer:l}=f.networkRegistry[r].contractData;if(!d)throw new Error("No IDL configured for Solana program on this network");if(!l)throw new Error("missing original deployer");const g=e.getSolanaProgram(d),c=new h.PublicKey(l),y=new h.PublicKey(u),P=new h.PublicKey(a),{erc20TokenAddress:R}=t,{fetchRpcUrl:A}=f.networkRegistry[r];if(!A)throw new Error("RPC URL not found for the specified chain ID");const q=M.createCustomSolanaConnection(A),{mintPublicKey:w}=D.formatMintAddress(R),E=w.toString(),p=S.getStorageAccountPublicKey(y,c),K=S.getStorageVaultPublicKey(y,c),_=I.constructStealthAddressStructure(i),C=S.buildAnchorStealthAddressStructure(_),v=await L({program:g,mintPublicKey:w,mintAddressString:E,tokenAmount:n,anchorStealthStructure:C,senderPublickey:P,originalDeployer:c,storageAccount:p,storageVault:K}),x=t.is2022Program?m.TOKEN_2022_PROGRAM_ID:m.TOKEN_PROGRAM_ID;return{connection:q,chainId:r,senderAddress:a,senderPublickey:P,instructions:[v],storageAccount:p,programId:x}},z=async(e,t,n,o,s,i=!1)=>{if(i)throw new Error("onlyGasEstimate is not supported for Solana proxy shield");if(!o)throw new Error("subAccount is required");const{connection:r,senderPublickey:a,instructions:d,chainId:u,senderAddress:l,storageAccount:g,programId:c}=await k(e,t,n,o,s),y=s||g.toString();return T.sendProxyV0Transaction({connection:r,chainId:u,subAccount:o,payerPublicKey:a,instructions:d,convertParams:{fromAddress:l,toAddress:y,programAddress:c.toString()}})},G=async(e,t,n,o,s)=>{const{connection:i,senderPublickey:r,instructions:a}=await k(e,t,n,o,s);return T.serializeProxyV0Transaction(i,r,a)};exports.getSolanaProxyShieldSerializedTransaction=G;exports.hinkalSolanaProxyShield=z;