@hinkal/common 0.2.31 → 0.2.32

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 (776) hide show
  1. package/API/API.cjs +1 -1
  2. package/API/API.d.ts +26 -11
  3. package/API/API.mjs +103 -88
  4. package/API/callMonitor.cjs +1 -1
  5. package/API/callMonitor.d.ts +8 -0
  6. package/API/callMonitor.mjs +2 -2
  7. package/API/callRelayer.d.ts +4 -1
  8. package/API/dashboardAccountCalls.cjs +1 -0
  9. package/API/dashboardAccountCalls.d.ts +24 -0
  10. package/API/dashboardAccountCalls.mjs +10 -0
  11. package/API/dashboardAccountMemberCalls.cjs +1 -0
  12. package/API/dashboardAccountMemberCalls.d.ts +34 -0
  13. package/API/dashboardAccountMemberCalls.mjs +16 -0
  14. package/API/dashboardBalanceCalls.cjs +1 -0
  15. package/API/dashboardBalanceCalls.d.ts +12 -0
  16. package/API/dashboardBalanceCalls.mjs +13 -0
  17. package/API/dashboardContactCalls.cjs +1 -0
  18. package/API/dashboardContactCalls.d.ts +9 -0
  19. package/API/dashboardContactCalls.mjs +13 -0
  20. package/API/dashboardPayoutCalls.cjs +1 -0
  21. package/API/dashboardPayoutCalls.d.ts +14 -0
  22. package/API/dashboardPayoutCalls.mjs +13 -0
  23. package/API/dashboardTransactionCalls.cjs +1 -0
  24. package/API/dashboardTransactionCalls.d.ts +3 -0
  25. package/API/dashboardTransactionCalls.mjs +10 -0
  26. package/API/enclaveRecipientInfoCalls.cjs +1 -0
  27. package/API/enclaveRecipientInfoCalls.d.ts +14 -0
  28. package/API/enclaveRecipientInfoCalls.mjs +7 -0
  29. package/API/enclaveSignatureCalls.cjs +1 -1
  30. package/API/enclaveSignatureCalls.d.ts +3 -8
  31. package/API/enclaveSignatureCalls.mjs +6 -8
  32. package/API/enclaveUtxoCalls.cjs +1 -1
  33. package/API/enclaveUtxoCalls.d.ts +8 -2
  34. package/API/enclaveUtxoCalls.mjs +5 -3
  35. package/API/fetchCommitmentsCache.cjs +1 -1
  36. package/API/fetchCommitmentsCache.d.ts +1 -19
  37. package/API/fetchCommitmentsCache.mjs +9 -22
  38. package/API/getAnyRecipientInfo.d.ts +1 -0
  39. package/API/getServerURL.cjs +1 -1
  40. package/API/getServerURL.d.ts +3 -0
  41. package/API/getServerURL.mjs +15 -32
  42. package/API/getWebsiteURL.cjs +1 -1
  43. package/API/getWebsiteURL.d.ts +3 -2
  44. package/API/getWebsiteURL.mjs +12 -5
  45. package/API/index.cjs +1 -1
  46. package/API/index.d.ts +2 -0
  47. package/API/index.mjs +2 -0
  48. package/API/kycCalls.cjs +1 -1
  49. package/API/kycCalls.d.ts +0 -5
  50. package/API/kycCalls.mjs +3 -10
  51. package/API/privateSendRecipientInfoCalls.cjs +1 -1
  52. package/API/privateSendRecipientInfoCalls.d.ts +0 -10
  53. package/API/privateSendRecipientInfoCalls.mjs +2 -2
  54. package/API/scheduled-transactions-calls.cjs +1 -1
  55. package/API/scheduled-transactions-calls.d.ts +8 -2
  56. package/API/scheduled-transactions-calls.mjs +5 -4
  57. package/API/tenderly.api.cjs +1 -1
  58. package/API/tenderly.api.d.ts +1 -1
  59. package/API/tenderly.api.mjs +1 -1
  60. package/constants/addresses.constants.cjs +1 -1
  61. package/constants/addresses.constants.d.ts +10 -7
  62. package/constants/addresses.constants.mjs +11 -8
  63. package/constants/assets.constants.cjs +1 -1
  64. package/constants/assets.constants.mjs +1 -1
  65. package/constants/auth.constants.cjs +1 -0
  66. package/constants/auth.constants.d.ts +2 -0
  67. package/constants/auth.constants.mjs +4 -0
  68. package/constants/backend.constants.cjs +1 -1
  69. package/constants/backend.constants.d.ts +0 -1
  70. package/constants/backend.constants.mjs +0 -1
  71. package/constants/bridging.constants.cjs +1 -1
  72. package/constants/bridging.constants.d.ts +2 -0
  73. package/constants/bridging.constants.mjs +7 -3
  74. package/constants/chains.constants.cjs +1 -1
  75. package/constants/chains.constants.d.ts +25 -8
  76. package/constants/chains.constants.mjs +168 -127
  77. package/constants/coingecko.constants.cjs +1 -1
  78. package/constants/coingecko.constants.d.ts +5 -3
  79. package/constants/coingecko.constants.mjs +8 -5
  80. package/constants/contracts.constants.cjs +1 -1
  81. package/constants/contracts.constants.mjs +0 -4
  82. package/constants/deploy-data/deploy-data-arbMainnet.json.cjs +1 -1
  83. package/constants/deploy-data/deploy-data-arbMainnet.json.mjs +125 -850
  84. package/constants/deploy-data/deploy-data-arcTestnet.json.cjs +1 -1
  85. package/constants/deploy-data/deploy-data-arcTestnet.json.mjs +97 -1013
  86. package/constants/deploy-data/deploy-data-base.json.cjs +1 -1
  87. package/constants/deploy-data/deploy-data-base.json.mjs +132 -869
  88. package/constants/deploy-data/deploy-data-ethMainnet.json.cjs +1 -1
  89. package/constants/deploy-data/deploy-data-ethMainnet.json.mjs +132 -871
  90. package/constants/deploy-data/deploy-data-localhost.json.cjs +1 -1
  91. package/constants/deploy-data/deploy-data-localhost.json.mjs +6 -808
  92. package/constants/deploy-data/deploy-data-optimism.json.cjs +1 -1
  93. package/constants/deploy-data/deploy-data-optimism.json.mjs +132 -869
  94. package/constants/deploy-data/deploy-data-optimismTest.json.cjs +1 -0
  95. package/constants/deploy-data/deploy-data-optimismTest.json.mjs +3565 -0
  96. package/constants/deploy-data/deploy-data-polygon.json.cjs +1 -1
  97. package/constants/deploy-data/deploy-data-polygon.json.mjs +132 -869
  98. package/constants/deploy-data/deploy-data-sepoliaTestnet.json.cjs +1 -0
  99. package/constants/deploy-data/deploy-data-sepoliaTestnet.json.mjs +3561 -0
  100. package/constants/deploy-data/deploy-data-solana.json.cjs +1 -1
  101. package/constants/deploy-data/deploy-data-solana.json.mjs +1 -1
  102. package/constants/deploy-data/deploy-data-tempo.json.cjs +1 -0
  103. package/constants/deploy-data/deploy-data-tempo.json.mjs +3563 -0
  104. package/constants/deploy-data/deploy-data-tronMainnet.json.cjs +1 -1
  105. package/constants/deploy-data/deploy-data-tronMainnet.json.mjs +133 -870
  106. package/constants/deploy-data/deploy-data-tronNile.json.cjs +1 -1
  107. package/constants/deploy-data/deploy-data-tronNile.json.mjs +133 -870
  108. package/constants/deploy-data/index.d.ts +4 -1
  109. package/constants/events.constants.cjs +1 -1
  110. package/constants/events.constants.mjs +4 -1
  111. package/constants/fees.constants.cjs +1 -1
  112. package/constants/fees.constants.d.ts +5 -1
  113. package/constants/fees.constants.mjs +9 -5
  114. package/constants/index.cjs +1 -1
  115. package/constants/index.d.ts +2 -1
  116. package/constants/index.mjs +6 -2
  117. package/constants/kyc.constants.cjs +1 -1
  118. package/constants/kyc.constants.d.ts +1 -1
  119. package/constants/kyc.constants.mjs +38 -37
  120. package/constants/lifi.constants.cjs +1 -1
  121. package/constants/lifi.constants.d.ts +2 -0
  122. package/constants/lifi.constants.mjs +7 -2
  123. package/constants/mediaUrls.constants.cjs +1 -1
  124. package/constants/mediaUrls.constants.d.ts +7 -1
  125. package/constants/mediaUrls.constants.mjs +9 -3
  126. package/constants/price-impact.constants.cjs +1 -0
  127. package/constants/price-impact.constants.d.ts +2 -0
  128. package/constants/price-impact.constants.mjs +4 -0
  129. package/constants/protocol.constants.cjs +1 -1
  130. package/constants/protocol.constants.d.ts +4 -1
  131. package/constants/protocol.constants.mjs +2 -2
  132. package/constants/reorg-depths.constants.cjs +1 -1
  133. package/constants/reorg-depths.constants.d.ts +3 -1
  134. package/constants/reorg-depths.constants.mjs +3 -1
  135. package/constants/save-depths.cjs +1 -1
  136. package/constants/save-depths.d.ts +3 -1
  137. package/constants/save-depths.mjs +3 -1
  138. package/constants/server.constants.cjs +1 -1
  139. package/constants/server.constants.d.ts +33 -8
  140. package/constants/server.constants.mjs +44 -24
  141. package/constants/token-data/ERC20Registry.cjs +1 -1
  142. package/constants/token-data/ERC20Registry.mjs +20 -9
  143. package/constants/token-data/arbMainnetRegistry.json.cjs +1 -1
  144. package/constants/token-data/arbMainnetRegistry.json.mjs +24 -24
  145. package/constants/token-data/arbMainnetRegistryFixed.json.cjs +1 -1
  146. package/constants/token-data/arbMainnetRegistryFixed.json.mjs +24 -24
  147. package/constants/token-data/arcTestnetRegistry.json.cjs +1 -1
  148. package/constants/token-data/arcTestnetRegistry.json.mjs +3 -3
  149. package/constants/token-data/baseRegistry.json.cjs +1 -1
  150. package/constants/token-data/baseRegistry.json.mjs +20 -12
  151. package/constants/token-data/baseRegistryFixed.json.cjs +1 -1
  152. package/constants/token-data/baseRegistryFixed.json.mjs +18 -10
  153. package/constants/token-data/ethMainnetRegistry.json.cjs +1 -1
  154. package/constants/token-data/ethMainnetRegistry.json.mjs +38 -38
  155. package/constants/token-data/ethMainnetRegistryFixed.json.cjs +1 -1
  156. package/constants/token-data/ethMainnetRegistryFixed.json.mjs +38 -38
  157. package/constants/token-data/localhostRegistry.json.cjs +1 -1
  158. package/constants/token-data/localhostRegistry.json.mjs +211 -211
  159. package/constants/token-data/optimismRegistry.json.cjs +1 -1
  160. package/constants/token-data/optimismRegistry.json.mjs +36 -28
  161. package/constants/token-data/optimismRegistryFixed.json.cjs +1 -1
  162. package/constants/token-data/optimismRegistryFixed.json.mjs +36 -28
  163. package/constants/token-data/polygonRegistry.json.cjs +1 -1
  164. package/constants/token-data/polygonRegistry.json.mjs +34 -26
  165. package/constants/token-data/polygonRegistryFixed.json.cjs +1 -1
  166. package/constants/token-data/polygonRegistryFixed.json.mjs +34 -26
  167. package/constants/token-data/sepoliaTestnetRegistry.json.cjs +1 -0
  168. package/constants/token-data/sepoliaTestnetRegistry.json.mjs +21 -0
  169. package/constants/token-data/solanaMainnetRegistry.json.cjs +1 -1
  170. package/constants/token-data/solanaMainnetRegistry.json.mjs +1 -1
  171. package/constants/token-data/tempoRegistry.json.cjs +1 -0
  172. package/constants/token-data/tempoRegistry.json.mjs +37 -0
  173. package/constants/token-data/tronMainnetRegistry.json.cjs +1 -1
  174. package/constants/token-data/tronMainnetRegistry.json.mjs +26 -15
  175. package/constants/token-data/tronNileRegistry.json.cjs +1 -1
  176. package/constants/token-data/tronNileRegistry.json.mjs +2 -2
  177. package/constants/tokens.constants.cjs +1 -1
  178. package/constants/tokens.constants.d.ts +1 -0
  179. package/constants/tokens.constants.mjs +10 -3
  180. package/constants/vite.constants.cjs +1 -1
  181. package/constants/vite.constants.mjs +23 -5
  182. package/constants/wallet.constants.cjs +1 -1
  183. package/constants/wallet.constants.d.ts +1 -1
  184. package/constants/wallet.constants.mjs +2 -18
  185. package/crypto/babyJub.d.ts +1 -1
  186. package/crypto/ecdh-dual-path.cjs +1 -0
  187. package/crypto/ecdh-dual-path.d.ts +13 -0
  188. package/crypto/ecdh-dual-path.mjs +39 -0
  189. package/crypto/ecdh-sealed-keys.cjs +1 -0
  190. package/crypto/ecdh-sealed-keys.d.ts +22 -0
  191. package/crypto/ecdh-sealed-keys.mjs +33 -0
  192. package/crypto/ecdh.cjs +1 -0
  193. package/crypto/ecdh.d.ts +2 -0
  194. package/crypto/ecdh.mjs +9 -0
  195. package/crypto/eddsa.cjs +1 -0
  196. package/crypto/eddsa.d.ts +8 -0
  197. package/crypto/eddsa.mjs +12 -0
  198. package/crypto/index.cjs +1 -1
  199. package/crypto/index.d.ts +4 -0
  200. package/crypto/index.mjs +4 -0
  201. package/crypto/preProcessing.cjs +1 -1
  202. package/crypto/preProcessing.d.ts +1 -1
  203. package/crypto/preProcessing.mjs +10 -8
  204. package/data-structures/AccountActions/AccountActions.cjs +1 -1
  205. package/data-structures/AccountActions/AccountActions.mjs +3 -2
  206. package/data-structures/ApprovalDBs/EventsPublicApprovalsDB.cjs +1 -1
  207. package/data-structures/ApprovalDBs/EventsPublicApprovalsDB.mjs +2 -3
  208. package/data-structures/Hinkal/Hinkal.cjs +1 -1
  209. package/data-structures/Hinkal/Hinkal.d.ts +16 -21
  210. package/data-structures/Hinkal/Hinkal.mjs +144 -160
  211. package/data-structures/Hinkal/IHinkal.d.ts +13 -19
  212. package/data-structures/Hinkal/handleAutoDepositBack.cjs +1 -1
  213. package/data-structures/Hinkal/handleAutoDepositBack.mjs +15 -15
  214. package/data-structures/Hinkal/hinkalClaimUtxo.cjs +1 -1
  215. package/data-structures/Hinkal/hinkalClaimUtxo.d.ts +1 -2
  216. package/data-structures/Hinkal/hinkalClaimUtxo.mjs +49 -47
  217. package/data-structures/Hinkal/hinkalDeposit.cjs +1 -1
  218. package/data-structures/Hinkal/hinkalDeposit.d.ts +5 -3
  219. package/data-structures/Hinkal/hinkalDeposit.mjs +106 -50
  220. package/data-structures/Hinkal/hinkalDepositAndBridge.cjs +1 -1
  221. package/data-structures/Hinkal/hinkalDepositAndBridge.d.ts +1 -1
  222. package/data-structures/Hinkal/hinkalDepositAndBridge.mjs +94 -87
  223. package/data-structures/Hinkal/hinkalDepositAndWithdraw.cjs +1 -1
  224. package/data-structures/Hinkal/hinkalDepositAndWithdraw.d.ts +3 -2
  225. package/data-structures/Hinkal/hinkalDepositAndWithdraw.mjs +48 -48
  226. package/data-structures/Hinkal/hinkalDepositOnChainUtxos.cjs +1 -1
  227. package/data-structures/Hinkal/hinkalDepositOnChainUtxos.mjs +41 -63
  228. package/data-structures/Hinkal/hinkalPalEvmDeposit.cjs +1 -0
  229. package/data-structures/Hinkal/hinkalPalEvmDeposit.d.ts +9 -0
  230. package/data-structures/Hinkal/hinkalPalEvmDeposit.mjs +19 -0
  231. package/data-structures/Hinkal/hinkalPalSolanaDepositPrepare.cjs +1 -0
  232. package/data-structures/Hinkal/hinkalPalSolanaDepositPrepare.d.ts +9 -0
  233. package/data-structures/Hinkal/hinkalPalSolanaDepositPrepare.mjs +18 -0
  234. package/data-structures/Hinkal/hinkalPalTronDepositPrepare.cjs +1 -0
  235. package/data-structures/Hinkal/hinkalPalTronDepositPrepare.d.ts +9 -0
  236. package/data-structures/Hinkal/hinkalPalTronDepositPrepare.mjs +17 -0
  237. package/data-structures/Hinkal/hinkalPrivateWallet.cjs +1 -1
  238. package/data-structures/Hinkal/hinkalPrivateWallet.mjs +46 -50
  239. package/data-structures/Hinkal/hinkalProoflessDeposit.cjs +1 -1
  240. package/data-structures/Hinkal/hinkalProoflessDeposit.d.ts +4 -1
  241. package/data-structures/Hinkal/hinkalProoflessDeposit.mjs +84 -128
  242. package/data-structures/Hinkal/hinkalProoflessDeposit.utils.cjs +1 -0
  243. package/data-structures/Hinkal/hinkalProoflessDeposit.utils.d.ts +7 -0
  244. package/data-structures/Hinkal/hinkalProoflessDeposit.utils.mjs +51 -0
  245. package/data-structures/Hinkal/hinkalProoflessDepositViaWrapper.cjs +1 -0
  246. package/data-structures/Hinkal/hinkalProoflessDepositViaWrapper.d.ts +6 -0
  247. package/data-structures/Hinkal/hinkalProoflessDepositViaWrapper.mjs +128 -0
  248. package/data-structures/Hinkal/hinkalSolanaClaimUtxo.cjs +1 -1
  249. package/data-structures/Hinkal/hinkalSolanaClaimUtxo.d.ts +2 -2
  250. package/data-structures/Hinkal/hinkalSolanaClaimUtxo.mjs +68 -69
  251. package/data-structures/Hinkal/hinkalSolanaDeposit.cjs +1 -1
  252. package/data-structures/Hinkal/hinkalSolanaDeposit.d.ts +4 -3
  253. package/data-structures/Hinkal/hinkalSolanaDeposit.mjs +96 -57
  254. package/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.cjs +1 -1
  255. package/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.d.ts +20 -2
  256. package/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.mjs +114 -122
  257. package/data-structures/Hinkal/hinkalSolanaProoflessDeposit.cjs +1 -1
  258. package/data-structures/Hinkal/hinkalSolanaProoflessDeposit.d.ts +1 -1
  259. package/data-structures/Hinkal/hinkalSolanaProoflessDeposit.mjs +12 -17
  260. package/data-structures/Hinkal/hinkalSolanaProxyShield.cjs +1 -1
  261. package/data-structures/Hinkal/hinkalSolanaProxyShield.mjs +38 -40
  262. package/data-structures/Hinkal/hinkalSolanaProxySwap.cjs +1 -1
  263. package/data-structures/Hinkal/hinkalSolanaProxySwap.d.ts +4 -3
  264. package/data-structures/Hinkal/hinkalSolanaProxySwap.mjs +68 -52
  265. package/data-structures/Hinkal/hinkalSolanaSwap.cjs +1 -1
  266. package/data-structures/Hinkal/hinkalSolanaSwap.d.ts +2 -2
  267. package/data-structures/Hinkal/hinkalSolanaSwap.mjs +67 -72
  268. package/data-structures/Hinkal/hinkalSolanaTransfer.cjs +1 -1
  269. package/data-structures/Hinkal/hinkalSolanaTransfer.d.ts +2 -1
  270. package/data-structures/Hinkal/hinkalSolanaTransfer.mjs +56 -61
  271. package/data-structures/Hinkal/hinkalSolanaWithdraw.cjs +1 -1
  272. package/data-structures/Hinkal/hinkalSolanaWithdraw.mjs +38 -48
  273. package/data-structures/Hinkal/hinkalSwap.cjs +1 -1
  274. package/data-structures/Hinkal/hinkalSwap.mjs +32 -42
  275. package/data-structures/Hinkal/hinkalTransfer.cjs +1 -1
  276. package/data-structures/Hinkal/hinkalTransfer.mjs +41 -54
  277. package/data-structures/Hinkal/hinkalWithdraw.cjs +1 -1
  278. package/data-structures/Hinkal/hinkalWithdraw.mjs +43 -56
  279. package/data-structures/Hinkal/hinkalWithdrawStuckUtxos.cjs +1 -1
  280. package/data-structures/Hinkal/hinkalWithdrawStuckUtxos.mjs +87 -108
  281. package/data-structures/Hinkal/index.cjs +1 -1
  282. package/data-structures/Hinkal/index.d.ts +5 -0
  283. package/data-structures/Hinkal/index.mjs +5 -0
  284. package/data-structures/Hinkal/prepareDepositOnChainUtxosZkProof.cjs +1 -0
  285. package/data-structures/Hinkal/prepareDepositOnChainUtxosZkProof.d.ts +22 -0
  286. package/data-structures/Hinkal/prepareDepositOnChainUtxosZkProof.mjs +34 -0
  287. package/data-structures/Hinkal/resetMerkleTrees.cjs +1 -1
  288. package/data-structures/Hinkal/resetMerkleTrees.mjs +33 -40
  289. package/data-structures/IndexedDB/activity-db.cjs +1 -1
  290. package/data-structures/IndexedDB/activity-db.mjs +25 -24
  291. package/data-structures/IndexedDB/contact-db.cjs +1 -1
  292. package/data-structures/IndexedDB/contact-db.d.ts +1 -0
  293. package/data-structures/IndexedDB/contact-db.mjs +30 -16
  294. package/data-structures/MultiThreadedUtxoUtils/MultiThreadedUtxoUtils.cjs +1 -1
  295. package/data-structures/MultiThreadedUtxoUtils/MultiThreadedUtxoUtils.d.ts +1 -1
  296. package/data-structures/MultiThreadedUtxoUtils/MultiThreadedUtxoUtils.mjs +4 -4
  297. package/data-structures/TokenDBs/AlchemyPublicTokensDB.cjs +1 -1
  298. package/data-structures/TokenDBs/AlchemyPublicTokensDB.mjs +37 -34
  299. package/data-structures/TokenDBs/EventsPublicTokensDB.cjs +1 -1
  300. package/data-structures/TokenDBs/EventsPublicTokensDB.d.ts +2 -0
  301. package/data-structures/TokenDBs/EventsPublicTokensDB.mjs +65 -50
  302. package/data-structures/TokenDBs/PrivateTokensDB.cjs +1 -1
  303. package/data-structures/TokenDBs/PrivateTokensDB.mjs +2 -1
  304. package/data-structures/WalletManager/WalletManager.cjs +1 -0
  305. package/data-structures/WalletManager/WalletManager.d.ts +51 -0
  306. package/data-structures/WalletManager/WalletManager.mjs +99 -0
  307. package/data-structures/WalletManager/index.cjs +1 -0
  308. package/data-structures/WalletManager/index.d.ts +1 -0
  309. package/data-structures/WalletManager/index.mjs +1 -0
  310. package/data-structures/crypto-keys/decodeUTXO.cjs +1 -1
  311. package/data-structures/crypto-keys/decodeUTXO.d.ts +5 -3
  312. package/data-structures/crypto-keys/decodeUTXO.mjs +49 -46
  313. package/data-structures/crypto-keys/encryptDecryptUtxo.cjs +1 -1
  314. package/data-structures/crypto-keys/encryptDecryptUtxo.mjs +32 -40
  315. package/data-structures/crypto-keys/keys.cjs +1 -1
  316. package/data-structures/crypto-keys/keys.d.ts +51 -24
  317. package/data-structures/crypto-keys/keys.mjs +104 -43
  318. package/data-structures/custom-token-registry/CustomTokenRegistry.cjs +1 -1
  319. package/data-structures/custom-token-registry/CustomTokenRegistry.mjs +2 -2
  320. package/data-structures/event-service/evm/BlockchainEventEmitter.cjs +1 -1
  321. package/data-structures/event-service/evm/BlockchainEventEmitter.d.ts +2 -2
  322. package/data-structures/event-service/evm/BlockchainEventEmitter.mjs +4 -4
  323. package/data-structures/event-service/evm/PollingBlockchainEventEmitter.cjs +1 -1
  324. package/data-structures/event-service/evm/PollingBlockchainEventEmitter.mjs +1 -1
  325. package/data-structures/event-service/helpers/ClientEventHelper.cjs +1 -1
  326. package/data-structures/event-service/helpers/ClientEventHelper.mjs +3 -3
  327. package/data-structures/event-service/helpers/PollingEventHelper.cjs +1 -1
  328. package/data-structures/event-service/helpers/PollingEventHelper.d.ts +2 -0
  329. package/data-structures/event-service/helpers/PollingEventHelper.mjs +7 -3
  330. package/data-structures/event-service/index.cjs +1 -1
  331. package/data-structures/event-service/index.d.ts +0 -3
  332. package/data-structures/event-service/index.mjs +0 -3
  333. package/data-structures/event-service/solana/PollingSolanaBlockchainEventEmitter.cjs +1 -1
  334. package/data-structures/event-service/solana/PollingSolanaBlockchainEventEmitter.mjs +1 -1
  335. package/data-structures/event-service/solana/SolanaBlockchainEventEmitter.cjs +1 -1
  336. package/data-structures/event-service/solana/SolanaBlockchainEventEmitter.d.ts +2 -2
  337. package/data-structures/event-service/solana/SolanaBlockchainEventEmitter.mjs +5 -5
  338. package/data-structures/index.cjs +1 -1
  339. package/data-structures/index.d.ts +1 -0
  340. package/data-structures/index.mjs +10 -10
  341. package/data-structures/merkle-tree/index.cjs +1 -1
  342. package/data-structures/merkle-tree/index.d.ts +0 -1
  343. package/data-structures/merkle-tree/index.mjs +0 -1
  344. package/data-structures/provider-adapter/IProviderAdapter.d.ts +6 -0
  345. package/data-structures/snapshot/SnapshotFetcherService.cjs +1 -1
  346. package/data-structures/snapshot/SnapshotFetcherService.d.ts +0 -2
  347. package/data-structures/snapshot/SnapshotFetcherService.mjs +0 -6
  348. package/data-structures/snapshot/index.cjs +1 -1
  349. package/data-structures/snapshot/index.d.ts +0 -3
  350. package/data-structures/snapshot/index.mjs +0 -3
  351. package/data-structures/utxo/Utxo.cjs +1 -1
  352. package/data-structures/utxo/Utxo.d.ts +16 -10
  353. package/data-structures/utxo/Utxo.mjs +40 -38
  354. package/error-handling/customErrors/HttpError.cjs +1 -0
  355. package/error-handling/customErrors/HttpError.d.ts +4 -0
  356. package/error-handling/customErrors/HttpError.mjs +8 -0
  357. package/error-handling/customErrors/index.cjs +1 -1
  358. package/error-handling/customErrors/index.d.ts +1 -0
  359. package/error-handling/customErrors/index.mjs +1 -0
  360. package/error-handling/error-codes.constants.cjs +1 -1
  361. package/error-handling/error-codes.constants.d.ts +11 -0
  362. package/error-handling/error-codes.constants.mjs +13 -2
  363. package/error-handling/index.cjs +1 -1
  364. package/error-handling/index.mjs +1 -0
  365. package/error-handling/retrySolanaError.cjs +1 -0
  366. package/error-handling/retrySolanaError.d.ts +1 -0
  367. package/error-handling/retrySolanaError.mjs +4 -0
  368. package/externalABIs/index.cjs +1 -1
  369. package/externalABIs/index.d.ts +1 -16
  370. package/externalABIs/index.mjs +4 -5
  371. package/functions/auto-deposit-back-helpers/get-gas-token-records.d.ts +1 -1
  372. package/functions/auto-deposit-back-helpers/get-tokens-to-deposit-back.d.ts +1 -1
  373. package/functions/index.cjs +1 -1
  374. package/functions/index.mjs +28 -19
  375. package/functions/kyc/checkTokenLimitsUSD.cjs +1 -1
  376. package/functions/kyc/checkTokenLimitsUSD.mjs +15 -15
  377. package/functions/kyc/index.cjs +1 -1
  378. package/functions/kyc/index.d.ts +0 -1
  379. package/functions/kyc/index.mjs +0 -1
  380. package/functions/pre-transaction/addressTableLookup.cjs +1 -1
  381. package/functions/pre-transaction/addressTableLookup.mjs +21 -18
  382. package/functions/pre-transaction/buildCommitmentValidationData.cjs +1 -0
  383. package/functions/pre-transaction/buildCommitmentValidationData.d.ts +4 -0
  384. package/functions/pre-transaction/buildCommitmentValidationData.mjs +58 -0
  385. package/functions/pre-transaction/calculateSolanaNullifierCount.cjs +1 -0
  386. package/functions/pre-transaction/calculateSolanaNullifierCount.d.ts +2 -0
  387. package/functions/pre-transaction/calculateSolanaNullifierCount.mjs +23 -0
  388. package/functions/pre-transaction/constructAdminData.cjs +1 -1
  389. package/functions/pre-transaction/constructAdminData.mjs +4 -4
  390. package/functions/pre-transaction/index.cjs +1 -1
  391. package/functions/pre-transaction/index.d.ts +2 -3
  392. package/functions/pre-transaction/index.mjs +3 -4
  393. package/functions/pre-transaction/outputUtxoProcessing.cjs +1 -1
  394. package/functions/pre-transaction/outputUtxoProcessing.d.ts +1 -1
  395. package/functions/pre-transaction/outputUtxoProcessing.mjs +22 -19
  396. package/functions/pre-transaction/recipientUtxoProcessing.cjs +1 -1
  397. package/functions/pre-transaction/recipientUtxoProcessing.mjs +11 -9
  398. package/functions/pre-transaction/sendInitNullifiersTransaction.cjs +1 -1
  399. package/functions/pre-transaction/sendInitNullifiersTransaction.mjs +9 -9
  400. package/functions/pre-transaction/sendV0Transaction.cjs +1 -1
  401. package/functions/pre-transaction/sendV0Transaction.mjs +45 -43
  402. package/functions/pre-transaction/solana-public-signals.cjs +1 -1
  403. package/functions/pre-transaction/solana-public-signals.d.ts +7 -6
  404. package/functions/pre-transaction/solana-public-signals.mjs +22 -19
  405. package/functions/pre-transaction/solana.cjs +1 -1
  406. package/functions/pre-transaction/solana.d.ts +0 -4
  407. package/functions/pre-transaction/solana.mjs +7 -27
  408. package/functions/pre-transaction/store-proof.cjs +1 -1
  409. package/functions/pre-transaction/store-proof.mjs +3 -3
  410. package/functions/private-wallet/emporium.helpers.cjs +1 -1
  411. package/functions/private-wallet/emporium.helpers.d.ts +13 -3
  412. package/functions/private-wallet/emporium.helpers.mjs +84 -74
  413. package/functions/private-wallet/emporium.swap.helpers.cjs +1 -1
  414. package/functions/private-wallet/emporium.swap.helpers.mjs +6 -6
  415. package/functions/snarkjs/common.snarkjs.cjs +1 -1
  416. package/functions/snarkjs/common.snarkjs.d.ts +8 -13
  417. package/functions/snarkjs/common.snarkjs.mjs +65 -74
  418. package/functions/snarkjs/constant.cjs +1 -1
  419. package/functions/snarkjs/constant.d.ts +146 -426
  420. package/functions/snarkjs/constant.mjs +149 -430
  421. package/functions/snarkjs/constructGeneralZkProof.cjs +1 -1
  422. package/functions/snarkjs/constructGeneralZkProof.d.ts +2 -3
  423. package/functions/snarkjs/constructGeneralZkProof.mjs +74 -57
  424. package/functions/snarkjs/constructSolanaZkProof.cjs +1 -1
  425. package/functions/snarkjs/constructSolanaZkProof.d.ts +1 -2
  426. package/functions/snarkjs/constructSolanaZkProof.mjs +65 -37
  427. package/functions/snarkjs/fetchMerkleTreeSiblings.cjs +1 -1
  428. package/functions/snarkjs/fetchMerkleTreeSiblings.d.ts +1 -1
  429. package/functions/snarkjs/fetchMerkleTreeSiblings.mjs +6 -10
  430. package/functions/snarkjs/fetchOnChainRootHashes.cjs +1 -1
  431. package/functions/snarkjs/fetchOnChainRootHashes.d.ts +0 -1
  432. package/functions/snarkjs/fetchOnChainRootHashes.mjs +22 -7
  433. package/functions/snarkjs/generateCircomData.cjs +1 -1
  434. package/functions/snarkjs/generateCircomData.d.ts +2 -2
  435. package/functions/snarkjs/generateCircomData.mjs +29 -31
  436. package/functions/snarkjs/generateZkProof.cjs +1 -1
  437. package/functions/snarkjs/generateZkProof.mjs +20 -10
  438. package/functions/snarkjs/generateZkProofEnclave.cjs +1 -1
  439. package/functions/snarkjs/generateZkProofEnclave.mjs +15 -18
  440. package/functions/snarkjs/getMerkleTreeSiblingsAndRootHashes.cjs +1 -1
  441. package/functions/snarkjs/getMerkleTreeSiblingsAndRootHashes.d.ts +2 -9
  442. package/functions/snarkjs/getMerkleTreeSiblingsAndRootHashes.mjs +40 -94
  443. package/functions/snarkjs/getZKFiles.cjs +1 -1
  444. package/functions/snarkjs/getZKFiles.d.ts +1 -0
  445. package/functions/snarkjs/getZKFiles.mjs +2 -2
  446. package/functions/snarkjs/index.cjs +1 -1
  447. package/functions/snarkjs/index.d.ts +2 -1
  448. package/functions/snarkjs/index.mjs +2 -1
  449. package/functions/snarkjs/signedMessageHash.cjs +1 -0
  450. package/functions/snarkjs/signedMessageHash.d.ts +31 -0
  451. package/functions/snarkjs/signedMessageHash.mjs +49 -0
  452. package/functions/snarkjs/verifyCommitmentValidationData.cjs +1 -0
  453. package/functions/snarkjs/verifyCommitmentValidationData.d.ts +4 -0
  454. package/functions/snarkjs/verifyCommitmentValidationData.mjs +43 -0
  455. package/functions/utils/addresses.cjs +1 -1
  456. package/functions/utils/addresses.d.ts +2 -0
  457. package/functions/utils/addresses.mjs +12 -8
  458. package/functions/utils/aggregateTokenAmounts.cjs +1 -0
  459. package/functions/utils/aggregateTokenAmounts.d.ts +2 -0
  460. package/functions/utils/aggregateTokenAmounts.mjs +26 -0
  461. package/functions/utils/amounts.utils.cjs +1 -1
  462. package/functions/utils/amounts.utils.d.ts +0 -1
  463. package/functions/utils/amounts.utils.mjs +18 -18
  464. package/functions/utils/auth.utils.cjs +1 -0
  465. package/functions/utils/auth.utils.d.ts +5 -0
  466. package/functions/utils/auth.utils.mjs +7 -0
  467. package/functions/utils/bit.operations.cjs +1 -0
  468. package/functions/utils/bit.operations.d.ts +3 -0
  469. package/functions/utils/bit.operations.mjs +4 -0
  470. package/functions/utils/buildClaimableDepositPlan.cjs +1 -1
  471. package/functions/utils/buildClaimableDepositPlan.d.ts +3 -2
  472. package/functions/utils/buildClaimableDepositPlan.mjs +32 -24
  473. package/functions/utils/cacheFunctions.cjs +1 -1
  474. package/functions/utils/cacheFunctions.d.ts +0 -4
  475. package/functions/utils/cacheFunctions.mjs +33 -47
  476. package/functions/utils/create-provider.cjs +1 -1
  477. package/functions/utils/create-provider.d.ts +2 -3
  478. package/functions/utils/create-provider.mjs +8 -10
  479. package/functions/utils/customEnclaveFunctionsRegister.cjs +1 -0
  480. package/functions/utils/customEnclaveFunctionsRegister.d.ts +18 -0
  481. package/functions/utils/customEnclaveFunctionsRegister.mjs +8 -0
  482. package/functions/utils/deposit-claimable.utils.cjs +1 -0
  483. package/functions/utils/deposit-claimable.utils.d.ts +6 -0
  484. package/functions/utils/deposit-claimable.utils.mjs +106 -0
  485. package/functions/utils/dispatchBalanceRefreshes.cjs +1 -0
  486. package/functions/utils/dispatchBalanceRefreshes.d.ts +4 -0
  487. package/functions/utils/dispatchBalanceRefreshes.mjs +44 -0
  488. package/functions/utils/enclave-recipient-info-storage.cjs +1 -0
  489. package/functions/utils/enclave-recipient-info-storage.d.ts +2 -0
  490. package/functions/utils/enclave-recipient-info-storage.mjs +17 -0
  491. package/functions/utils/enclave-signature-storage.cjs +1 -1
  492. package/functions/utils/enclave-signature-storage.d.ts +1 -2
  493. package/functions/utils/enclave-signature-storage.mjs +6 -9
  494. package/functions/utils/enclave-utxo-storage.cjs +1 -1
  495. package/functions/utils/enclave-utxo-storage.d.ts +3 -2
  496. package/functions/utils/enclave-utxo-storage.mjs +18 -21
  497. package/functions/utils/encodeTokenWithId.cjs +1 -1
  498. package/functions/utils/encodeTokenWithId.mjs +1 -1
  499. package/functions/utils/encryptInputForEnclave.cjs +1 -1
  500. package/functions/utils/encryptInputForEnclave.mjs +17 -23
  501. package/functions/utils/enum.utils.cjs +1 -0
  502. package/functions/utils/enum.utils.mjs +12 -0
  503. package/functions/utils/erc20tokenFunctions.cjs +1 -1
  504. package/functions/utils/erc20tokenFunctions.d.ts +2 -0
  505. package/functions/utils/erc20tokenFunctions.mjs +26 -16
  506. package/functions/utils/evmNetworkFunctions.d.ts +1 -2
  507. package/functions/utils/fees.utils.cjs +1 -1
  508. package/functions/utils/fees.utils.d.ts +2 -1
  509. package/functions/utils/fees.utils.mjs +30 -16
  510. package/functions/utils/formatter.cjs +1 -0
  511. package/functions/utils/formatter.d.ts +1 -0
  512. package/functions/utils/formatter.mjs +15 -0
  513. package/functions/utils/getBlockExplorerUrl.cjs +1 -1
  514. package/functions/utils/getBlockExplorerUrl.mjs +1 -1
  515. package/functions/utils/getRecipientInfoFromUserKeys.cjs +1 -1
  516. package/functions/utils/getRecipientInfoFromUserKeys.d.ts +2 -0
  517. package/functions/utils/getRecipientInfoFromUserKeys.mjs +14 -9
  518. package/functions/utils/getUtxosFromReceipt.utils.cjs +1 -1
  519. package/functions/utils/getUtxosFromReceipt.utils.d.ts +1 -0
  520. package/functions/utils/getUtxosFromReceipt.utils.mjs +43 -27
  521. package/functions/utils/getUtxosFromReceiptSolana.cjs +1 -1
  522. package/functions/utils/getUtxosFromReceiptSolana.d.ts +1 -0
  523. package/functions/utils/getUtxosFromReceiptSolana.mjs +36 -21
  524. package/functions/utils/getWalletGroupKey.utils.cjs +1 -1
  525. package/functions/utils/getWalletGroupKey.utils.mjs +4 -1
  526. package/functions/utils/index.cjs +1 -1
  527. package/functions/utils/index.d.ts +14 -1
  528. package/functions/utils/index.mjs +21 -9
  529. package/functions/utils/lifi.utils.cjs +1 -0
  530. package/functions/utils/lifi.utils.d.ts +3 -0
  531. package/functions/utils/lifi.utils.mjs +30 -0
  532. package/functions/utils/mnemonics.cjs +1 -0
  533. package/functions/utils/mnemonics.d.ts +1 -0
  534. package/functions/utils/mnemonics.mjs +8 -0
  535. package/functions/utils/pay-routing.utils.cjs +1 -0
  536. package/functions/utils/pay-routing.utils.d.ts +4 -0
  537. package/functions/utils/pay-routing.utils.mjs +17 -0
  538. package/functions/utils/prepareHinkal.cjs +1 -1
  539. package/functions/utils/prepareHinkal.mjs +29 -29
  540. package/functions/utils/publicBalance.utils.cjs +1 -1
  541. package/functions/utils/publicBalance.utils.mjs +5 -5
  542. package/functions/utils/serialize-utxos.utils.cjs +1 -1
  543. package/functions/utils/serialize-utxos.utils.mjs +6 -2
  544. package/functions/utils/solana-memo.cjs +1 -0
  545. package/functions/utils/solana-memo.d.ts +3 -0
  546. package/functions/utils/solana-memo.mjs +15 -0
  547. package/functions/utils/solanaSendPreflight.utils.cjs +1 -0
  548. package/functions/utils/solanaSendPreflight.utils.d.ts +6 -0
  549. package/functions/utils/solanaSendPreflight.utils.mjs +21 -0
  550. package/functions/utils/string.utils.cjs +1 -1
  551. package/functions/utils/string.utils.mjs +1 -1
  552. package/functions/utils/time.utils.cjs +1 -1
  553. package/functions/utils/time.utils.d.ts +6 -0
  554. package/functions/utils/time.utils.mjs +23 -16
  555. package/functions/utils/token-check.utils.cjs +1 -1
  556. package/functions/utils/token-check.utils.d.ts +1 -0
  557. package/functions/utils/token-check.utils.mjs +9 -8
  558. package/functions/utils/transfer-claimable.utils.cjs +1 -0
  559. package/functions/utils/transfer-claimable.utils.d.ts +9 -0
  560. package/functions/utils/transfer-claimable.utils.mjs +93 -0
  561. package/functions/utils/tron.utils.cjs +1 -1
  562. package/functions/utils/tron.utils.d.ts +11 -1
  563. package/functions/utils/tron.utils.mjs +85 -40
  564. package/functions/utils/tx-confirmation.utils.cjs +1 -1
  565. package/functions/utils/tx-confirmation.utils.mjs +5 -5
  566. package/functions/utils/userAgent.cjs +1 -1
  567. package/functions/utils/userAgent.d.ts +1 -0
  568. package/functions/utils/userAgent.mjs +4 -1
  569. package/functions/web3/connectors.utils.cjs +1 -1
  570. package/functions/web3/connectors.utils.d.ts +1 -0
  571. package/functions/web3/connectors.utils.mjs +5 -2
  572. package/functions/web3/events/balanceChangedHandler.cjs +1 -1
  573. package/functions/web3/events/balanceChangedHandler.d.ts +2 -1
  574. package/functions/web3/events/balanceChangedHandler.mjs +3 -3
  575. package/functions/web3/events/getInputUtxoAndBalance.cjs +1 -1
  576. package/functions/web3/events/getInputUtxoAndBalance.d.ts +1 -1
  577. package/functions/web3/events/getInputUtxoAndBalance.mjs +21 -20
  578. package/functions/web3/events/getInputUtxosEnclave.cjs +1 -1
  579. package/functions/web3/events/getInputUtxosEnclave.d.ts +2 -1
  580. package/functions/web3/events/getInputUtxosEnclave.mjs +25 -18
  581. package/functions/web3/events/getShieldedBalance.cjs +1 -1
  582. package/functions/web3/events/getShieldedBalance.mjs +15 -17
  583. package/functions/web3/events/getTransactionLogEvents.cjs +1 -1
  584. package/functions/web3/events/getTransactionLogEvents.mjs +1 -1
  585. package/functions/web3/events/index.cjs +1 -1
  586. package/functions/web3/events/index.d.ts +0 -2
  587. package/functions/web3/events/index.mjs +0 -2
  588. package/functions/web3/functionCalls/constructBatchCall.cjs +1 -1
  589. package/functions/web3/functionCalls/constructBatchCall.d.ts +1 -0
  590. package/functions/web3/functionCalls/constructBatchCall.mjs +10 -2
  591. package/functions/web3/functionCalls/transactCallDirectTron.cjs +1 -1
  592. package/functions/web3/functionCalls/transactCallDirectTron.d.ts +4 -1
  593. package/functions/web3/functionCalls/transactCallDirectTron.mjs +89 -55
  594. package/functions/web3/functionCalls/transactCallRelayer.cjs +1 -1
  595. package/functions/web3/functionCalls/transactCallRelayer.d.ts +5 -4
  596. package/functions/web3/functionCalls/transactCallRelayer.mjs +17 -13
  597. package/functions/web3/getContractMetadata.cjs +1 -1
  598. package/functions/web3/getContractMetadata.mjs +1 -1
  599. package/functions/web3/getTokenHolder.cjs +1 -1
  600. package/functions/web3/getTokenHolder.mjs +1 -1
  601. package/functions/web3/index.cjs +1 -1
  602. package/functions/web3/index.d.ts +0 -1
  603. package/functions/web3/index.mjs +0 -3
  604. package/functions/web3/lifiAPI.cjs +1 -1
  605. package/functions/web3/lifiAPI.mjs +28 -19
  606. package/functions/web3/oneInchAPI.cjs +1 -1
  607. package/functions/web3/oneInchAPI.mjs +1 -1
  608. package/index.cjs +1 -1
  609. package/index.mjs +331 -309
  610. package/package.json +5 -2
  611. package/providers/EthersProviderAdapter.cjs +1 -1
  612. package/providers/EthersProviderAdapter.mjs +1 -1
  613. package/providers/SolanaProviderAdapter.cjs +1 -1
  614. package/providers/SolanaProviderAdapter.d.ts +10 -1
  615. package/providers/SolanaProviderAdapter.mjs +38 -2
  616. package/providers/TronProviderAdapter.cjs +1 -1
  617. package/providers/TronProviderAdapter.mjs +2 -2
  618. package/providers/WagmiProviderAdapter.cjs +1 -1
  619. package/providers/WagmiProviderAdapter.d.ts +3 -1
  620. package/providers/WagmiProviderAdapter.mjs +62 -52
  621. package/providers/prepareSolanaHinkal.cjs +1 -1
  622. package/providers/prepareSolanaHinkal.mjs +3 -3
  623. package/types/admin.types.cjs +1 -1
  624. package/types/admin.types.d.ts +1 -8
  625. package/types/admin.types.mjs +1 -1
  626. package/types/cache.types.cjs +1 -1
  627. package/types/cache.types.d.ts +2 -1
  628. package/types/cache.types.mjs +1 -1
  629. package/types/chains.types.cjs +1 -0
  630. package/types/chains.types.d.ts +11 -0
  631. package/types/chains.types.mjs +8 -0
  632. package/types/circom-data.types.d.ts +13 -0
  633. package/types/commitments.types.d.ts +0 -6
  634. package/types/contacts.types.d.ts +1 -0
  635. package/types/dashboard-account.cjs +1 -0
  636. package/types/dashboard-account.d.ts +101 -0
  637. package/types/dashboard-account.mjs +8 -0
  638. package/types/dashboard-payout.types.cjs +1 -0
  639. package/types/dashboard-payout.types.d.ts +29 -0
  640. package/types/dashboard-payout.types.mjs +8 -0
  641. package/types/dashboard-transaction.types.d.ts +22 -0
  642. package/types/ethereum-network.types.cjs +1 -1
  643. package/types/ethereum-network.types.d.ts +15 -18
  644. package/types/ethereum-network.types.mjs +1 -1
  645. package/types/events.types.cjs +1 -1
  646. package/types/events.types.d.ts +2 -3
  647. package/types/events.types.mjs +1 -1
  648. package/types/external-action.types.cjs +1 -1
  649. package/types/external-action.types.d.ts +2 -1
  650. package/types/external-action.types.mjs +1 -1
  651. package/types/hinkal.types.cjs +1 -1
  652. package/types/hinkal.types.d.ts +6 -17
  653. package/types/hinkal.types.mjs +16 -18
  654. package/types/index.cjs +1 -1
  655. package/types/index.d.ts +6 -0
  656. package/types/index.mjs +3 -0
  657. package/types/pay-activities.types.d.ts +3 -0
  658. package/types/pay-routing.types.d.ts +9 -0
  659. package/types/scheduled-transactions.types.d.ts +7 -0
  660. package/types/solana.types.d.ts +5 -6
  661. package/types/token-prices.types.d.ts +4 -0
  662. package/types/transaction.types.d.ts +1 -3
  663. package/webworker/WorkerWrapper.cjs +1 -0
  664. package/webworker/WorkerWrapper.d.ts +9 -0
  665. package/webworker/WorkerWrapper.mjs +22 -0
  666. package/webworker/logError-fCJ4HXQz.js +22 -0
  667. package/webworker/package.json +112 -0
  668. package/webworker/performTaskWithWorker.cjs +1 -1
  669. package/webworker/performTaskWithWorker.mjs +4 -4
  670. package/webworker/snarkjsWorker/snarkjsWorkerLauncher.ts?worker&url.cjs +1 -1
  671. package/webworker/snarkjsWorker/snarkjsWorkerLauncher.ts?worker&url.mjs +1 -1
  672. package/webworker/snarkjsWorker/snarkjsWorkerLogic.d.ts +0 -3
  673. package/webworker/snarkjsWorker/snarkjsWorkerNode.d.ts +0 -0
  674. package/webworker/snarkjsWorkerNode.cjs +3 -0
  675. package/webworker/utxoWorker/utxoWorkerLauncher.ts?worker&url.cjs +1 -1
  676. package/webworker/utxoWorker/utxoWorkerLauncher.ts?worker&url.mjs +1 -1
  677. package/webworker/utxoWorker/utxoWorkerLogic.d.ts +0 -3
  678. package/webworker/utxoWorker/utxoWorkerNode.d.ts +0 -0
  679. package/webworker/utxoWorkerNode.cjs +1 -0
  680. package/webworker/viteWorkerURL.constant.cjs +4 -4
  681. package/webworker/viteWorkerURL.constant.mjs +4 -4
  682. package/webworker/worker.registry.cjs +1 -1
  683. package/webworker/worker.registry.mjs +6 -3
  684. package/webworker/workerFactory.cjs +1 -1
  685. package/webworker/workerFactory.d.ts +4 -1
  686. package/webworker/workerFactory.mjs +31 -17
  687. package/webworker/workerProxy-BNBqYien.js +130 -0
  688. package/webworker/workerProxy.d.ts +1 -1
  689. package/webworker/workerThreadsPatch.d.ts +1 -0
  690. package/webworker/zkProofWorker/zkProofWorker.types.cjs +1 -1
  691. package/webworker/zkProofWorker/zkProofWorker.types.d.ts +3 -13
  692. package/webworker/zkProofWorker/zkProofWorker.types.mjs +1 -1
  693. package/webworker/zkProofWorker/zkProofWorkerLauncher.ts?worker&url.cjs +1 -1
  694. package/webworker/zkProofWorker/zkProofWorkerLauncher.ts?worker&url.mjs +1 -1
  695. package/webworker/zkProofWorker/zkProofWorkerLogic.d.ts +1 -5
  696. package/webworker/zkProofWorker/zkProofWorkerNode.d.ts +0 -0
  697. package/webworker/zkProofWorkerNode.cjs +1 -0
  698. package/API/solana-calls.cjs +0 -1
  699. package/API/solana-calls.d.ts +0 -38
  700. package/API/solana-calls.mjs +0 -8
  701. package/constants/non-circular-tokens.constants.cjs +0 -1
  702. package/constants/non-circular-tokens.constants.d.ts +0 -1
  703. package/constants/non-circular-tokens.constants.mjs +0 -4
  704. package/data-structures/Hinkal/hinkalCheckSolanaTokenRegistry.cjs +0 -1
  705. package/data-structures/Hinkal/hinkalCheckSolanaTokenRegistry.d.ts +0 -3
  706. package/data-structures/Hinkal/hinkalCheckSolanaTokenRegistry.mjs +0 -15
  707. package/data-structures/Hinkal/hinkalCheckTokenRegistry.cjs +0 -1
  708. package/data-structures/Hinkal/hinkalCheckTokenRegistry.d.ts +0 -4
  709. package/data-structures/Hinkal/hinkalCheckTokenRegistry.mjs +0 -18
  710. package/data-structures/event-service/evm/AbstractAccessTokenSnapshotService.cjs +0 -1
  711. package/data-structures/event-service/evm/AbstractAccessTokenSnapshotService.d.ts +0 -35
  712. package/data-structures/event-service/evm/AbstractAccessTokenSnapshotService.mjs +0 -75
  713. package/data-structures/event-service/evm/AbstractApprovalsSnapshotService.cjs +0 -1
  714. package/data-structures/event-service/evm/AbstractApprovalsSnapshotService.d.ts +0 -30
  715. package/data-structures/event-service/evm/AbstractApprovalsSnapshotService.mjs +0 -81
  716. package/data-structures/event-service/solana/AbstractSolanaAccessTokenSnapshotService.cjs +0 -1
  717. package/data-structures/event-service/solana/AbstractSolanaAccessTokenSnapshotService.d.ts +0 -35
  718. package/data-structures/event-service/solana/AbstractSolanaAccessTokenSnapshotService.mjs +0 -76
  719. package/data-structures/merkle-tree/getPatchedAccessTokenMerkleTree.cjs +0 -1
  720. package/data-structures/merkle-tree/getPatchedAccessTokenMerkleTree.d.ts +0 -2
  721. package/data-structures/merkle-tree/getPatchedAccessTokenMerkleTree.mjs +0 -13
  722. package/data-structures/snapshot/evm-snapshots/ClientAccessTokenSnapshotService.cjs +0 -1
  723. package/data-structures/snapshot/evm-snapshots/ClientAccessTokenSnapshotService.d.ts +0 -8
  724. package/data-structures/snapshot/evm-snapshots/ClientAccessTokenSnapshotService.mjs +0 -29
  725. package/data-structures/snapshot/evm-snapshots/ClientApprovalsSnapshotService.cjs +0 -1
  726. package/data-structures/snapshot/evm-snapshots/ClientApprovalsSnapshotService.d.ts +0 -8
  727. package/data-structures/snapshot/evm-snapshots/ClientApprovalsSnapshotService.mjs +0 -30
  728. package/data-structures/snapshot/solana-snapshots/ClientSolanaAccessTokenSnapshotService.cjs +0 -1
  729. package/data-structures/snapshot/solana-snapshots/ClientSolanaAccessTokenSnapshotService.d.ts +0 -8
  730. package/data-structures/snapshot/solana-snapshots/ClientSolanaAccessTokenSnapshotService.mjs +0 -26
  731. package/externalABIs/transactionsProver.json.cjs +0 -1
  732. package/externalABIs/transactionsProver.json.mjs +0 -43
  733. package/functions/pre-transaction/getKycAndSignatureData.cjs +0 -1
  734. package/functions/pre-transaction/getKycAndSignatureData.d.ts +0 -5
  735. package/functions/pre-transaction/getKycAndSignatureData.mjs +0 -12
  736. package/functions/pre-transaction/getSignatureDataForTransact.cjs +0 -1
  737. package/functions/pre-transaction/getSignatureDataForTransact.d.ts +0 -3
  738. package/functions/pre-transaction/getSignatureDataForTransact.mjs +0 -6
  739. package/functions/pre-transaction/initTokenLimitIfNeeded.cjs +0 -1
  740. package/functions/pre-transaction/initTokenLimitIfNeeded.d.ts +0 -3
  741. package/functions/pre-transaction/initTokenLimitIfNeeded.mjs +0 -17
  742. package/functions/pre-transaction/outputApprovalDataProcessing.cjs +0 -1
  743. package/functions/pre-transaction/outputApprovalDataProcessing.d.ts +0 -10
  744. package/functions/pre-transaction/outputApprovalDataProcessing.mjs +0 -22
  745. package/functions/pre-transaction/shouldPatchAccessTokenMerkleTree.cjs +0 -1
  746. package/functions/pre-transaction/shouldPatchAccessTokenMerkleTree.d.ts +0 -6
  747. package/functions/pre-transaction/shouldPatchAccessTokenMerkleTree.mjs +0 -11
  748. package/functions/snarkjs/constructEmporiumProof.cjs +0 -1
  749. package/functions/snarkjs/constructEmporiumProof.d.ts +0 -13
  750. package/functions/snarkjs/constructEmporiumProof.mjs +0 -74
  751. package/functions/utils/processUseApprovalUtxoData.cjs +0 -1
  752. package/functions/utils/processUseApprovalUtxoData.d.ts +0 -3
  753. package/functions/utils/processUseApprovalUtxoData.mjs +0 -13
  754. package/functions/web3/events/balanceChangedCustomHandler.cjs +0 -1
  755. package/functions/web3/events/balanceChangedCustomHandler.d.ts +0 -2
  756. package/functions/web3/events/balanceChangedCustomHandler.mjs +0 -9
  757. package/functions/web3/events/getApprovedBalance.cjs +0 -1
  758. package/functions/web3/events/getApprovedBalance.d.ts +0 -6
  759. package/functions/web3/events/getApprovedBalance.mjs +0 -37
  760. package/functions/web3/functionCalls/accessTokenCalls.cjs +0 -1
  761. package/functions/web3/functionCalls/accessTokenCalls.d.ts +0 -2
  762. package/functions/web3/functionCalls/accessTokenCalls.mjs +0 -19
  763. package/functions/web3/tron-wagmi-adapter.cjs +0 -1
  764. package/functions/web3/tron-wagmi-adapter.d.ts +0 -8
  765. package/functions/web3/tron-wagmi-adapter.mjs +0 -27
  766. package/providers/CustomEthersProvider.cjs +0 -1
  767. package/providers/CustomEthersProvider.d.ts +0 -10
  768. package/providers/CustomEthersProvider.mjs +0 -28
  769. package/webworker/snarkjsWorker/snarkjsWorkerLogic.cjs +0 -1
  770. package/webworker/snarkjsWorker/snarkjsWorkerLogic.mjs +0 -30
  771. package/webworker/utxoWorker/utxoWorkerLogic.cjs +0 -1
  772. package/webworker/utxoWorker/utxoWorkerLogic.mjs +0 -69
  773. package/webworker/workerProxy.cjs +0 -1
  774. package/webworker/workerProxy.mjs +0 -33
  775. package/webworker/zkProofWorker/zkProofWorkerLogic.cjs +0 -1
  776. package/webworker/zkProofWorker/zkProofWorkerLogic.mjs +0 -45
@@ -0,0 +1,15 @@
1
+ import { PublicKey as e, TransactionInstruction as t } from "@solana/web3.js";
2
+ //#region libs/shared/common/src/functions/utils/solana-memo.ts
3
+ var n = new e("MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr"), r = "hinkal-pal:", i = (e) => new t({
4
+ keys: [],
5
+ programId: n,
6
+ data: Buffer.from(`${r}${e.replace(/-/g, "")}`, "utf8")
7
+ }), a = (e, t) => e.map((e) => {
8
+ if (!t.get(e.programIdIndex)?.equals(n)) return null;
9
+ let i = Buffer.from(e.data).toString("utf8");
10
+ if (!i.startsWith(r)) return null;
11
+ let a = i.slice(11);
12
+ return a.length === 32 ? `${a.slice(0, 8)}-${a.slice(8, 12)}-${a.slice(12, 16)}-${a.slice(16, 20)}-${a.slice(20, 32)}` : null;
13
+ }).find((e) => e !== null) ?? null;
14
+ //#endregion
15
+ export { i as buildOrderIdMemoInstruction, a as extractOrderIdFromMemos };
@@ -0,0 +1 @@
1
+ const e=require(`../web3/etherFunctions.cjs`);var t=(t,n,r)=>{try{return t&&t[n]&&r?e.getAmountInWei(r,t[n]):0n}catch{return 0n}},n=(n,r,i,a,o,s)=>n.map((n,c)=>{let l=t(r,c,i);if(!(l>0n&&n.recipientSolBalanceLamports+l<n.systemRentExemptLamports))return``;let u=n.systemRentExemptLamports-n.recipientSolBalanceLamports,d=`0`;try{o&&u>0n&&(d=Number(e.getAmountInToken(o,u)).toFixed(6).replace(/\.?0+$/,``))}catch{d=`0`}return a.length===1?`Minimum amount to send is ${d} SOL`:`Minimum amount to send to recipient ${s?.[c]?s[c]-1:c+1} is ${d} SOL`});exports.buildSolanaRecipientRentErrorMessages=n;
@@ -0,0 +1,6 @@
1
+ import { ERC20Token } from '../../types/token.types';
2
+ export interface SolanaRecipientRentPreflightData {
3
+ systemRentExemptLamports: bigint;
4
+ recipientSolBalanceLamports: bigint;
5
+ }
6
+ export declare const buildSolanaRecipientRentErrorMessages: (recipientsData: SolanaRecipientRentPreflightData[], tokenAmounts: string[] | undefined, selectedToken: ERC20Token | undefined, validToAddresses: string[], solanaNativeToken: ERC20Token | undefined, rowNumbers?: number[]) => string[];
@@ -0,0 +1,21 @@
1
+ import { getAmountInToken as e, getAmountInWei as t } from "../web3/etherFunctions.mjs";
2
+ //#region libs/shared/common/src/functions/utils/solanaSendPreflight.utils.ts
3
+ var n = (e, n, r) => {
4
+ try {
5
+ return e && e[n] && r ? t(r, e[n]) : 0n;
6
+ } catch {
7
+ return 0n;
8
+ }
9
+ }, r = (t, r, i, a, o, s) => t.map((t, c) => {
10
+ let l = n(r, c, i);
11
+ if (!(l > 0n && t.recipientSolBalanceLamports + l < t.systemRentExemptLamports)) return "";
12
+ let u = t.systemRentExemptLamports - t.recipientSolBalanceLamports, d = "0";
13
+ try {
14
+ o && u > 0n && (d = Number(e(o, u)).toFixed(6).replace(/\.?0+$/, ""));
15
+ } catch {
16
+ d = "0";
17
+ }
18
+ return a.length === 1 ? `Minimum amount to send is ${d} SOL` : `Minimum amount to send to recipient ${s?.[c] ? s[c] - 1 : c + 1} is ${d} SOL`;
19
+ });
20
+ //#endregion
21
+ export { r as buildSolanaRecipientRentErrorMessages };
@@ -1 +1 @@
1
- const e=require(`../../constants/chains.constants.cjs`);function t(e){return e?.toLowerCase().split(` `).map(e=>e.charAt(0).toUpperCase()+e.substring(1)).join(` `)}function n(e){return e.charAt(0).toUpperCase()+e.slice(1)}function r(e){return!e||e===null||Array.isArray(e)&&e.length===0?!0:Object.keys(e).length===0&&e.constructor===Object}var i=e=>{e.startsWith(`0x`)&&(e=e.slice(2));let t=[];for(let n=0;n<e.length;n+=2){let r=parseInt(e.slice(n,n+2),16);t.push(r)}return new TextDecoder(`utf-8`).decode(new Uint8Array(t))},a=(t,n)=>{let r=`${t}-${n}`;return e.isSolanaLike(n)||e.isTronLike(n)?r:r.toLowerCase()},o=(t,n,r=!1)=>{let i=`${t}-${n}`;if(r){let{hinkalAddress:t}=e.networkRegistry[n].contractData;return`${i}-${t}`.toLowerCase()}return i.toLowerCase()},s=e=>{let[,t]=e.split(`-`);return Number(t)},c=e=>{let[t]=e.split(`-`);return t},l=(e,t,n)=>{if(!t||!n)throw Error(`oldPart and newPart must be provided`);return e.toLowerCase().split(t.toLowerCase()).join(n.toLowerCase())},u=e=>!e||e.trim().length===0?null:e.toLowerCase().replace(/\b\w/g,e=>e.toUpperCase()),d=e=>e?/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(e):!1;exports.capitalizeFirstLetter=n,exports.capitalizeName=u,exports.getAddressFromStateKey=c,exports.getChainIdFromStateKey=s,exports.getStateKey=o,exports.getTokenStateKey=a,exports.hexToUtf8=i,exports.isNullOrEmpty=r,exports.replaceAllInstances=l,exports.toTitleCase=t,exports.validateEmail=d;
1
+ const e=require(`../../constants/chains.constants.cjs`);function t(e){return e?.toLowerCase().split(` `).map(e=>e.charAt(0).toUpperCase()+e.substring(1)).join(` `)}function n(e){return e.charAt(0).toUpperCase()+e.slice(1)}function r(e){return!e||e===null||Array.isArray(e)&&e.length===0?!0:Object.keys(e).length===0&&e.constructor===Object}var i=e=>{e.startsWith(`0x`)&&(e=e.slice(2));let t=[];for(let n=0;n<e.length;n+=2){let r=parseInt(e.slice(n,n+2),16);t.push(r)}return new TextDecoder(`utf-8`).decode(new Uint8Array(t))},a=(t,n)=>{let r=`${t}-${n}`;return e.isSolanaLike(n)||e.isTronLike(n)?r:r.toLowerCase()},o=(t,n,r=!1)=>{let i=`${t}-${n}`;if(r){let{hinkalAddress:t}=e.networkRegistry[n].contractData;return`${i}-${t}`.toLowerCase()}return i.toLowerCase()},s=e=>{let[,t]=e.split(`-`);return Number(t)},c=e=>{let[t]=e.split(`-`);return t},l=(e,t,n)=>{if(!t||!n)throw Error(`oldPart and newPart must be provided`);return e.toLowerCase().split(t.toLowerCase()).join(n.toLowerCase())},u=e=>!e||e.trim().length===0?null:e.toLowerCase().replace(/\b\w/g,e=>e.toUpperCase()),d=e=>e?/^[^\s@]+@[^\s@]+\.[a-zA-Z]{2,}$/.test(e):!1;exports.capitalizeFirstLetter=n,exports.capitalizeName=u,exports.getAddressFromStateKey=c,exports.getChainIdFromStateKey=s,exports.getStateKey=o,exports.getTokenStateKey=a,exports.hexToUtf8=i,exports.isNullOrEmpty=r,exports.replaceAllInstances=l,exports.toTitleCase=t,exports.validateEmail=d;
@@ -36,6 +36,6 @@ var o = (e) => {
36
36
  }, d = (e, t, n) => {
37
37
  if (!t || !n) throw Error("oldPart and newPart must be provided");
38
38
  return e.toLowerCase().split(t.toLowerCase()).join(n.toLowerCase());
39
- }, f = (e) => !e || e.trim().length === 0 ? null : e.toLowerCase().replace(/\b\w/g, (e) => e.toUpperCase()), p = (e) => e ? /^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(e) : !1;
39
+ }, f = (e) => !e || e.trim().length === 0 ? null : e.toLowerCase().replace(/\b\w/g, (e) => e.toUpperCase()), p = (e) => e ? /^[^\s@]+@[^\s@]+\.[a-zA-Z]{2,}$/.test(e) : !1;
40
40
  //#endregion
41
41
  export { i as capitalizeFirstLetter, f as capitalizeName, u as getAddressFromStateKey, l as getChainIdFromStateKey, c as getStateKey, s as getTokenStateKey, o as hexToUtf8, a as isNullOrEmpty, d as replaceAllInstances, r as toTitleCase, p as validateEmail };
@@ -1 +1 @@
1
- var e=(e=1e3)=>new Promise(t=>{setTimeout(()=>{t(void 0)},e)}),t=()=>Math.floor(Date.now()/1e3),n=e=>new Date(e).toISOString(),r=()=>{let e=new Date,t=new Date(Date.UTC(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate(),6,0,0,0));return e<t?new Date(t.setUTCDate(t.getUTCDate()-1)):t},i=()=>{let e=r(),t=new Date(e);return t.setUTCDate(t.getUTCDate()-6),t},a=()=>{let e=r(),t=(e.getUTCDay()+6)%7,n=new Date(e);return n.setUTCDate(e.getUTCDate()-t),n.setUTCHours(6,0,0,0),n},o=()=>{let e=a();return e.setUTCDate(e.getUTCDate()-7),e},s=()=>{let e=new Date,t=new Date(e);return t.setUTCHours(6,0,0,0),t<=e&&t.setUTCDate(t.getUTCDate()+1),t.getTime()-e.getTime()},c=()=>{let e=new Date,t=new Date(e);return t.setUTCHours(8,0,0,0),t<=e&&t.setUTCDate(t.getUTCDate()+1),t.getTime()-e.getTime()},l=()=>{let e=new Date,t=new Date(Date.UTC(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate(),6,0,0,0));return e<t&&t.setUTCDate(t.getUTCDate()-1),t},u=()=>{let e=new Date,t=new Date(e);return t.setUTCHours(6,0,0,0),t<=e&&t.setUTCDate(t.getUTCDate()+1),t.toISOString()},d=e=>{let t=new Date().getFullYear()===e.getFullYear()?{month:`long`,day:`numeric`}:{month:`long`,day:`numeric`,year:`numeric`};return e.toLocaleDateString(void 0,t)},f=e=>{try{let t=new Date(e);if(Number.isNaN(t.getTime()))return``;let n=t.getDate(),r=t.getFullYear();return`${t.toLocaleString(`en-US`,{month:`short`})} ${n}, ${r}, ${String(t.getHours()).padStart(2,`0`)}:${String(t.getMinutes()).padStart(2,`0`)}`}catch{return``}};exports.formatDate=d,exports.formatTxTimestamp=f,exports.getCurrentDayStart=l,exports.getCurrentTimeInSeconds=t,exports.getCurrentWeekStart=a,exports.getDelayUntilUtc8=c,exports.getEffectiveSevenDaysAgo=i,exports.getEffectiveToday=r,exports.getNextDayDelay=s,exports.getNextDayISO=u,exports.getPreviousWeekStart=o,exports.msToISOString=n,exports.waitLittle=e;
1
+ var e=1e3*60*60*24,t=(e=1e3)=>new Promise(t=>{setTimeout(()=>{t(void 0)},e)}),n=()=>Math.floor(Date.now()/1e3),r=e=>new Date(e).toISOString(),i=()=>{let e=new Date,t=new Date(Date.UTC(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate(),6,0,0,0));return e<t?new Date(t.setUTCDate(t.getUTCDate()-1)):t},a=()=>{let e=i(),t=new Date(e);return t.setUTCDate(t.getUTCDate()-6),t},o=()=>{let e=i(),t=(e.getUTCDay()+6)%7,n=new Date(e);return n.setUTCDate(e.getUTCDate()-t),n.setUTCHours(6,0,0,0),n},s=()=>{let e=o();return e.setUTCDate(e.getUTCDate()-7),e},c=()=>{let e=new Date,t=new Date(e);return t.setUTCHours(6,0,0,0),t<=e&&t.setUTCDate(t.getUTCDate()+1),t.getTime()-e.getTime()},l=()=>{let e=new Date,t=new Date(e);return t.setUTCHours(8,0,0,0),t<=e&&t.setUTCDate(t.getUTCDate()+1),t.getTime()-e.getTime()},u=()=>{let e=new Date,t=new Date(Date.UTC(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate(),6,0,0,0));return e<t&&t.setUTCDate(t.getUTCDate()-1),t},d=(e=new Date)=>new Date(Date.UTC(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate())),f=()=>{let e=new Date,t=new Date(e);return t.setUTCHours(6,0,0,0),t<=e&&t.setUTCDate(t.getUTCDate()+1),t.toISOString()},p=e=>{let t=new Date().getFullYear()===e.getFullYear()?{month:`long`,day:`numeric`}:{month:`long`,day:`numeric`,year:`numeric`};return e.toLocaleDateString(void 0,t)},m=e=>{try{let t=new Date(e);if(Number.isNaN(t.getTime()))return``;let n=t.getDate(),r=t.getFullYear();return`${t.toLocaleString(`en-US`,{month:`short`})} ${n}, ${r}, ${String(t.getHours()).padStart(2,`0`)}:${String(t.getMinutes()).padStart(2,`0`)}`}catch{return``}},h=e=>{let t=new Date,n=new Date(e),r=t.getTime()-n.getTime(),i=Math.floor(r/1e3),a=Math.floor(i/60),o=Math.floor(a/60),s=Math.floor(o/24),c=Math.floor(s/7),l=Math.floor(s/30),u=Math.floor(s/365);return i<60?`${Math.max(1,i)} sec${i===1?``:`s`} ago`:a<60?`${a} min${a===1?``:`s`} ago`:o<24?`${o} hour${o===1?``:`s`} ago`:s<7?`${s} day${s===1?``:`s`} ago`:c<4?`${c} week${c===1?``:`s`} ago`:l<12?`${l} month${l===1?``:`s`} ago`:`${u} year${u===1?``:`s`} ago`},g=(e,t)=>e.getFullYear()===t.getFullYear()&&e.getMonth()===t.getMonth()&&e.getDate()===t.getDate(),_=e=>e.toLocaleDateString(`en-US`,{month:`short`,day:`numeric`,year:`numeric`}),v=(t,n)=>(new Date().getTime()-t.getTime())/e<=n;exports.MS_PER_DAY=e,exports.calculateRelativeTime=h,exports.formatDate=p,exports.formatTimestampDate=_,exports.formatTxTimestamp=m,exports.getCurrentDayStart=u,exports.getCurrentTimeInSeconds=n,exports.getCurrentWeekStart=o,exports.getDelayUntilUtc8=l,exports.getEffectiveSevenDaysAgo=a,exports.getEffectiveToday=i,exports.getNextDayDelay=c,exports.getNextDayISO=f,exports.getPreviousWeekStart=s,exports.getUtcDayStart=d,exports.isSameDay=g,exports.isWithinDays=v,exports.msToISOString=r,exports.waitLittle=t;
@@ -1,3 +1,4 @@
1
+ export declare const MS_PER_DAY: number;
1
2
  export declare const waitLittle: (time?: number) => Promise<unknown>;
2
3
  export declare const getCurrentTimeInSeconds: () => number;
3
4
  export declare const msToISOString: (ms: number) => string;
@@ -8,6 +9,11 @@ export declare const getPreviousWeekStart: () => Date;
8
9
  export declare const getNextDayDelay: () => number;
9
10
  export declare const getDelayUntilUtc8: () => number;
10
11
  export declare const getCurrentDayStart: () => Date;
12
+ export declare const getUtcDayStart: (date?: Date) => Date;
11
13
  export declare const getNextDayISO: () => string;
12
14
  export declare const formatDate: (date: Date) => string;
13
15
  export declare const formatTxTimestamp: (input: string) => string;
16
+ export declare const calculateRelativeTime: (targetDate: string) => string;
17
+ export declare const isSameDay: (a: Date, b: Date) => boolean;
18
+ export declare const formatTimestampDate: (date: Date) => string;
19
+ export declare const isWithinDays: (date: Date, days: number) => boolean;
@@ -1,33 +1,33 @@
1
1
  //#region libs/shared/common/src/functions/utils/time.utils.ts
2
- var e = (e = 1e3) => new Promise((t) => {
2
+ var e = 1e3 * 60 * 60 * 24, t = (e = 1e3) => new Promise((t) => {
3
3
  setTimeout(() => {
4
4
  t(void 0);
5
5
  }, e);
6
- }), t = () => Math.floor(Date.now() / 1e3), n = (e) => new Date(e).toISOString(), r = () => {
6
+ }), n = () => Math.floor(Date.now() / 1e3), r = (e) => new Date(e).toISOString(), i = () => {
7
7
  let e = /* @__PURE__ */ new Date(), t = new Date(Date.UTC(e.getUTCFullYear(), e.getUTCMonth(), e.getUTCDate(), 6, 0, 0, 0));
8
8
  return e < t ? new Date(t.setUTCDate(t.getUTCDate() - 1)) : t;
9
- }, i = () => {
10
- let e = r(), t = new Date(e);
11
- return t.setUTCDate(t.getUTCDate() - 6), t;
12
9
  }, a = () => {
13
- let e = r(), t = (e.getUTCDay() + 6) % 7, n = new Date(e);
14
- return n.setUTCDate(e.getUTCDate() - t), n.setUTCHours(6, 0, 0, 0), n;
10
+ let e = i(), t = new Date(e);
11
+ return t.setUTCDate(t.getUTCDate() - 6), t;
15
12
  }, o = () => {
16
- let e = a();
17
- return e.setUTCDate(e.getUTCDate() - 7), e;
13
+ let e = i(), t = (e.getUTCDay() + 6) % 7, n = new Date(e);
14
+ return n.setUTCDate(e.getUTCDate() - t), n.setUTCHours(6, 0, 0, 0), n;
18
15
  }, s = () => {
16
+ let e = o();
17
+ return e.setUTCDate(e.getUTCDate() - 7), e;
18
+ }, c = () => {
19
19
  let e = /* @__PURE__ */ new Date(), t = new Date(e);
20
20
  return t.setUTCHours(6, 0, 0, 0), t <= e && t.setUTCDate(t.getUTCDate() + 1), t.getTime() - e.getTime();
21
- }, c = () => {
21
+ }, l = () => {
22
22
  let e = /* @__PURE__ */ new Date(), t = new Date(e);
23
23
  return t.setUTCHours(8, 0, 0, 0), t <= e && t.setUTCDate(t.getUTCDate() + 1), t.getTime() - e.getTime();
24
- }, l = () => {
24
+ }, u = () => {
25
25
  let e = /* @__PURE__ */ new Date(), t = new Date(Date.UTC(e.getUTCFullYear(), e.getUTCMonth(), e.getUTCDate(), 6, 0, 0, 0));
26
26
  return e < t && t.setUTCDate(t.getUTCDate() - 1), t;
27
- }, u = () => {
27
+ }, d = (e = /* @__PURE__ */ new Date()) => new Date(Date.UTC(e.getUTCFullYear(), e.getUTCMonth(), e.getUTCDate())), f = () => {
28
28
  let e = /* @__PURE__ */ new Date(), t = new Date(e);
29
29
  return t.setUTCHours(6, 0, 0, 0), t <= e && t.setUTCDate(t.getUTCDate() + 1), t.toISOString();
30
- }, d = (e) => {
30
+ }, p = (e) => {
31
31
  let t = (/* @__PURE__ */ new Date()).getFullYear() === e.getFullYear() ? {
32
32
  month: "long",
33
33
  day: "numeric"
@@ -37,7 +37,7 @@ var e = (e = 1e3) => new Promise((t) => {
37
37
  year: "numeric"
38
38
  };
39
39
  return e.toLocaleDateString(void 0, t);
40
- }, f = (e) => {
40
+ }, m = (e) => {
41
41
  try {
42
42
  let t = new Date(e);
43
43
  if (Number.isNaN(t.getTime())) return "";
@@ -46,6 +46,13 @@ var e = (e = 1e3) => new Promise((t) => {
46
46
  } catch {
47
47
  return "";
48
48
  }
49
- };
49
+ }, h = (e) => {
50
+ let t = /* @__PURE__ */ new Date(), n = new Date(e), r = t.getTime() - n.getTime(), i = Math.floor(r / 1e3), a = Math.floor(i / 60), o = Math.floor(a / 60), s = Math.floor(o / 24), c = Math.floor(s / 7), l = Math.floor(s / 30), u = Math.floor(s / 365);
51
+ return i < 60 ? `${Math.max(1, i)} sec${i === 1 ? "" : "s"} ago` : a < 60 ? `${a} min${a === 1 ? "" : "s"} ago` : o < 24 ? `${o} hour${o === 1 ? "" : "s"} ago` : s < 7 ? `${s} day${s === 1 ? "" : "s"} ago` : c < 4 ? `${c} week${c === 1 ? "" : "s"} ago` : l < 12 ? `${l} month${l === 1 ? "" : "s"} ago` : `${u} year${u === 1 ? "" : "s"} ago`;
52
+ }, g = (e, t) => e.getFullYear() === t.getFullYear() && e.getMonth() === t.getMonth() && e.getDate() === t.getDate(), _ = (e) => e.toLocaleDateString("en-US", {
53
+ month: "short",
54
+ day: "numeric",
55
+ year: "numeric"
56
+ }), v = (t, n) => ((/* @__PURE__ */ new Date()).getTime() - t.getTime()) / e <= n;
50
57
  //#endregion
51
- export { d as formatDate, f as formatTxTimestamp, l as getCurrentDayStart, t as getCurrentTimeInSeconds, a as getCurrentWeekStart, c as getDelayUntilUtc8, i as getEffectiveSevenDaysAgo, r as getEffectiveToday, s as getNextDayDelay, u as getNextDayISO, o as getPreviousWeekStart, n as msToISOString, e as waitLittle };
58
+ export { e as MS_PER_DAY, h as calculateRelativeTime, p as formatDate, _ as formatTimestampDate, m as formatTxTimestamp, u as getCurrentDayStart, n as getCurrentTimeInSeconds, o as getCurrentWeekStart, l as getDelayUntilUtc8, a as getEffectiveSevenDaysAgo, i as getEffectiveToday, c as getNextDayDelay, f as getNextDayISO, s as getPreviousWeekStart, d as getUtcDayStart, g as isSameDay, v as isWithinDays, r as msToISOString, t as waitLittle };
@@ -1 +1 @@
1
- const e=require(`./caseInsensitive.utils.cjs`),t=require(`../../API/API.cjs`),n=require(`../../error-handling/error-codes.constants.cjs`);var r=async(e,n)=>{let r=await t.API.tokensInfoCall(e,n),i=[];return r.forEach((e,t)=>{(!e||!e.balanceStorageOffset||!e.allowanceStorageOffset)&&i.push(n[t])}),i},i=e=>{if(e.length===0)throw Error(`Token array cannot be empty`);let t=e.map(e=>e.chainId),r=t[0];if(!t.every(e=>e===r))throw Error(n.transactionErrorCodes.TOKENS_DO_NOT_BELONG_SAME_CHAIN);return r},a=(t,n)=>!t||!n?!1:e.caseInsensitiveEqual(t.erc20TokenAddress,n.erc20TokenAddress)&&t.chainId===n.chainId;exports.checkTokensForShielding=r,exports.isSameERC20Token=a,exports.validateAndGetChainId=i;
1
+ const e=require(`./caseInsensitive.utils.cjs`),t=require(`../../API/API.cjs`),n=require(`../../constants/token-data/ERC20Registry.cjs`),r=require(`../../error-handling/error-codes.constants.cjs`);var i=async(e,n)=>{let r=await t.API.tokensInfoCall(e,n),i=[];return r.forEach((e,t)=>{(!e||!e.balanceStorageOffset||!e.allowanceStorageOffset)&&i.push(n[t])}),i},a=e=>{if(e.length===0)throw Error(`Token array cannot be empty`);let t=e.map(e=>e.chainId),n=t[0];if(!t.every(e=>e===n))throw Error(r.transactionErrorCodes.TOKENS_DO_NOT_BELONG_SAME_CHAIN);return n},o=(t,n)=>!t||!n?!1:e.caseInsensitiveEqual(t.erc20TokenAddress,n.erc20TokenAddress)&&t.chainId===n.chainId,s=(t,r)=>r.every(r=>n.getERC20Registry(t).some(({erc20TokenAddress:t})=>e.caseInsensitiveEqual(t,r)));exports.areErc20TokensInRegistry=s,exports.checkTokensForShielding=i,exports.isSameERC20Token=o,exports.validateAndGetChainId=a;
@@ -2,3 +2,4 @@ import { ERC20Token } from '../../types/token.types';
2
2
  export declare const checkTokensForShielding: (chainId: number, erc20Addresses: string[]) => Promise<string[]>;
3
3
  export declare const validateAndGetChainId: (tokens: ERC20Token[]) => number;
4
4
  export declare const isSameERC20Token: (a?: ERC20Token, b?: ERC20Token) => boolean;
5
+ export declare const areErc20TokensInRegistry: (chainId: number, erc20TokenAddresses: string[]) => boolean;
@@ -1,17 +1,18 @@
1
1
  import { caseInsensitiveEqual as e } from "./caseInsensitive.utils.mjs";
2
2
  import { API as t } from "../../API/API.mjs";
3
- import { transactionErrorCodes as n } from "../../error-handling/error-codes.constants.mjs";
3
+ import { getERC20Registry as n } from "../../constants/token-data/ERC20Registry.mjs";
4
+ import { transactionErrorCodes as r } from "../../error-handling/error-codes.constants.mjs";
4
5
  //#region libs/shared/common/src/functions/utils/token-check.utils.ts
5
- var r = async (e, n) => {
6
+ var i = async (e, n) => {
6
7
  let r = await t.tokensInfoCall(e, n), i = [];
7
8
  return r.forEach((e, t) => {
8
9
  (!e || !e.balanceStorageOffset || !e.allowanceStorageOffset) && i.push(n[t]);
9
10
  }), i;
10
- }, i = (e) => {
11
+ }, a = (e) => {
11
12
  if (e.length === 0) throw Error("Token array cannot be empty");
12
- let t = e.map((e) => e.chainId), r = t[0];
13
- if (!t.every((e) => e === r)) throw Error(n.TOKENS_DO_NOT_BELONG_SAME_CHAIN);
14
- return r;
15
- }, a = (t, n) => !t || !n ? !1 : e(t.erc20TokenAddress, n.erc20TokenAddress) && t.chainId === n.chainId;
13
+ let t = e.map((e) => e.chainId), n = t[0];
14
+ if (!t.every((e) => e === n)) throw Error(r.TOKENS_DO_NOT_BELONG_SAME_CHAIN);
15
+ return n;
16
+ }, o = (t, n) => !t || !n ? !1 : e(t.erc20TokenAddress, n.erc20TokenAddress) && t.chainId === n.chainId, s = (t, r) => r.every((r) => n(t).some(({ erc20TokenAddress: t }) => e(t, r)));
16
17
  //#endregion
17
- export { r as checkTokensForShielding, a as isSameERC20Token, i as validateAndGetChainId };
18
+ export { s as areErc20TokensInRegistry, i as checkTokensForShielding, o as isSameERC20Token, a as validateAndGetChainId };
@@ -0,0 +1 @@
1
+ const e=require(`../../constants/chains.constants.cjs`),t=require(`../../constants/tx-confirmation.constants.cjs`);require(`../../constants/index.cjs`);const n=require(`../../data-structures/crypto-keys/keys.cjs`),r=require(`./time.utils.cjs`);require(`../../data-structures/crypto-keys/index.cjs`);const i=require(`../../error-handling/customErrors/ErrorWithIndex.cjs`),a=require(`./solanaMint.utils.cjs`),o=require(`../../error-handling/logger.cjs`),s=require(`./token-check.utils.cjs`),c=require(`../../error-handling/get-error.message.cjs`);require(`../../error-handling/index.cjs`);const l=require(`../pre-transaction/sendV0Transaction.cjs`);require(`../pre-transaction/index.cjs`);const u=require(`./getRecipientInfoFromUserKeys.cjs`),d=require(`./getUtxosFromReceipt.utils.cjs`),f=require(`./getUtxosFromReceiptSolana.cjs`),p=require(`./tx-confirmation.utils.cjs`);var m=async(t,n,r,i,o,s,c)=>{let{hinkalIdl:u}=e.networkRegistry[t].contractData;if(!u)throw Error(`No IDL configured for Solana program on this network`);let d=r.getSolanaProgram(u);await d.provider.connection.confirmTransaction(n,`finalized`);let p=await l.fetchSolanaTransaction(d.provider.connection,n,`finalized`);if(!p)throw Error(`Could not fetch Solana transaction for signature ${n}`);let{compressedAddress:m}=a.formatMintAddress(c),h=f.getUtxosFromReceiptSolana(p,d,i,m)[0];if(!h)throw Error(`Could not find recipient UTXO in Solana tx for claimable transfer`);return{chainId:t,senderAddress:s,recipientAddress:o.recipientAddress,utxo:h}},h=async(e,n,r,i,a,o,s)=>{let c=d.getUtxosFromReceipt(await p.waitForEthereumTransactionConfirmation(e,n,{evmTimeoutMs:t.RELAYER_TX_CONFIRMATION_TIMEOUT}),r,e,s,i)[0];if(!c)throw Error(`Could not find recipient UTXO in EVM txHash for claimable transfer`);return{chainId:e,senderAddress:o,recipientAddress:a.recipientAddress,utxo:c}},g=(e,t,r,i,a)=>{if(e.recipientInfo)return{recipientInfo:e.recipientInfo};let o=t-r,s=i+BigInt(o),c=a.userKeys.getClaimableSignatureFromNonce(s),l=new n.UserKeys(c),d=l.getShieldedPrivateKey();return{recipientInfo:u.getRecipientInfoFromUserKeys(l),recipientKeys:l,recipientShieldedPrivateKey:d,claimableSignature:c}},_=async(n,a,l,u,d,f,_,v)=>{if(l.length===0)return{pendingEnclaveUtxos:[],txHashes:[],failedRecipientErrorMessage:void 0};if(l.length!==u.length)throw Error(`recipients and allocations length mismatch`);let y=s.validateAndGetChainId([a]),b=await n.getEthereumAddressByChain(y),x=l.map((e,t)=>({recipient:e,recipientInfo:u[t]?.recipientInfo})),S=x.filter(e=>!!e.recipientInfo),C=x.filter(e=>!e.recipientInfo),w=[],T=[],E,D=[...S,...C];for(let s=0;s<D.length;s+=1)try{let i=D[s],o=!!i.recipientInfo,{recipientInfo:c,recipientKeys:l,recipientShieldedPrivateKey:u,claimableSignature:x}=g(i,s,S.length,d,n),C=await n.transfer([a],[-i.recipient.amount],c,f,_,v);if(T.push(C),o)await p.waitForTransactionConfirmation(a.chainId,C,{solanaCommitment:`finalized`,evmTimeoutMs:t.RELAYER_TX_CONFIRMATION_TIMEOUT});else{if(!l||!u)throw Error(`Missing recipient keys for fallback claimable transfer`);let t=e.isSolanaLike(y)?await m(y,C,n,l,i.recipient,b,a.erc20TokenAddress):await h(y,C,n,u,i.recipient,b,a.erc20TokenAddress);w.push({...t,claimableSignature:x})}s<D.length-1&&(await r.waitLittle(2e3),await n.resetMerkleTreesIfNecessary([a.chainId]))}catch(e){o.Logger.log(`Error in transferClaimableUtxos loop`,{error:e,index:s}),E=new i.ErrorWithIndex(s,c.getErrorMessage(e)),T.push(``);break}return{pendingEnclaveUtxos:w,txHashes:T,failedRecipientErrorMessage:E}};exports.transferClaimableUtxos=_;
@@ -0,0 +1,9 @@
1
+ import { ErrorWithIndex } from '../../error-handling';
2
+ import { PrivateSendAllocation } from '../../API';
3
+ import { AdminTransactionType, ERC20Token, FeeStructure, PendingEnclaveUtxo, RecipientRequest } from '../../types';
4
+ import { IHinkal } from '../../data-structures/Hinkal/IHinkal';
5
+ export declare const transferClaimableUtxos: (hinkal: IHinkal, token: ERC20Token, recipients: RecipientRequest[], allocations: PrivateSendAllocation[], baseNonce: bigint, feeToken?: string, feeStructure?: FeeStructure, action?: AdminTransactionType) => Promise<{
6
+ pendingEnclaveUtxos: PendingEnclaveUtxo[];
7
+ txHashes: string[];
8
+ failedRecipientErrorMessage: ErrorWithIndex | undefined;
9
+ }>;
@@ -0,0 +1,93 @@
1
+ import { isSolanaLike as e, networkRegistry as t } from "../../constants/chains.constants.mjs";
2
+ import { RELAYER_TX_CONFIRMATION_TIMEOUT as n } from "../../constants/tx-confirmation.constants.mjs";
3
+ import "../../constants/index.mjs";
4
+ import { UserKeys as r } from "../../data-structures/crypto-keys/keys.mjs";
5
+ import { waitLittle as i } from "./time.utils.mjs";
6
+ import "../../data-structures/crypto-keys/index.mjs";
7
+ import { ErrorWithIndex as a } from "../../error-handling/customErrors/ErrorWithIndex.mjs";
8
+ import { formatMintAddress as o } from "./solanaMint.utils.mjs";
9
+ import { Logger as s } from "../../error-handling/logger.mjs";
10
+ import { validateAndGetChainId as c } from "./token-check.utils.mjs";
11
+ import { getErrorMessage as l } from "../../error-handling/get-error.message.mjs";
12
+ import "../../error-handling/index.mjs";
13
+ import { fetchSolanaTransaction as u } from "../pre-transaction/sendV0Transaction.mjs";
14
+ import "../pre-transaction/index.mjs";
15
+ import { getRecipientInfoFromUserKeys as d } from "./getRecipientInfoFromUserKeys.mjs";
16
+ import { getUtxosFromReceipt as f } from "./getUtxosFromReceipt.utils.mjs";
17
+ import { getUtxosFromReceiptSolana as p } from "./getUtxosFromReceiptSolana.mjs";
18
+ import { waitForEthereumTransactionConfirmation as m, waitForTransactionConfirmation as h } from "./tx-confirmation.utils.mjs";
19
+ //#region libs/shared/common/src/functions/utils/transfer-claimable.utils.ts
20
+ var g = async (e, n, r, i, a, s, c) => {
21
+ let { hinkalIdl: l } = t[e].contractData;
22
+ if (!l) throw Error("No IDL configured for Solana program on this network");
23
+ let d = r.getSolanaProgram(l);
24
+ await d.provider.connection.confirmTransaction(n, "finalized");
25
+ let f = await u(d.provider.connection, n, "finalized");
26
+ if (!f) throw Error(`Could not fetch Solana transaction for signature ${n}`);
27
+ let { compressedAddress: m } = o(c), h = p(f, d, i, m)[0];
28
+ if (!h) throw Error("Could not find recipient UTXO in Solana tx for claimable transfer");
29
+ return {
30
+ chainId: e,
31
+ senderAddress: s,
32
+ recipientAddress: a.recipientAddress,
33
+ utxo: h
34
+ };
35
+ }, _ = async (e, t, r, i, a, o, s) => {
36
+ let c = f(await m(e, t, { evmTimeoutMs: n }), r, e, s, i)[0];
37
+ if (!c) throw Error("Could not find recipient UTXO in EVM txHash for claimable transfer");
38
+ return {
39
+ chainId: e,
40
+ senderAddress: o,
41
+ recipientAddress: a.recipientAddress,
42
+ utxo: c
43
+ };
44
+ }, v = (e, t, n, i, a) => {
45
+ if (e.recipientInfo) return { recipientInfo: e.recipientInfo };
46
+ let o = t - n, s = i + BigInt(o), c = a.userKeys.getClaimableSignatureFromNonce(s), l = new r(c), u = l.getShieldedPrivateKey();
47
+ return {
48
+ recipientInfo: d(l),
49
+ recipientKeys: l,
50
+ recipientShieldedPrivateKey: u,
51
+ claimableSignature: c
52
+ };
53
+ }, y = async (t, r, o, u, d, f, p, m) => {
54
+ if (o.length === 0) return {
55
+ pendingEnclaveUtxos: [],
56
+ txHashes: [],
57
+ failedRecipientErrorMessage: void 0
58
+ };
59
+ if (o.length !== u.length) throw Error("recipients and allocations length mismatch");
60
+ let y = c([r]), b = await t.getEthereumAddressByChain(y), x = o.map((e, t) => ({
61
+ recipient: e,
62
+ recipientInfo: u[t]?.recipientInfo
63
+ })), S = x.filter((e) => !!e.recipientInfo), C = x.filter((e) => !e.recipientInfo), w = [], T = [], E, D = [...S, ...C];
64
+ for (let o = 0; o < D.length; o += 1) try {
65
+ let a = D[o], s = !!a.recipientInfo, { recipientInfo: c, recipientKeys: l, recipientShieldedPrivateKey: u, claimableSignature: x } = v(a, o, S.length, d, t), C = await t.transfer([r], [-a.recipient.amount], c, f, p, m);
66
+ if (T.push(C), s) await h(r.chainId, C, {
67
+ solanaCommitment: "finalized",
68
+ evmTimeoutMs: n
69
+ });
70
+ else {
71
+ if (!l || !u) throw Error("Missing recipient keys for fallback claimable transfer");
72
+ let n = e(y) ? await g(y, C, t, l, a.recipient, b, r.erc20TokenAddress) : await _(y, C, t, u, a.recipient, b, r.erc20TokenAddress);
73
+ w.push({
74
+ ...n,
75
+ claimableSignature: x
76
+ });
77
+ }
78
+ o < D.length - 1 && (await i(2e3), await t.resetMerkleTreesIfNecessary([r.chainId]));
79
+ } catch (e) {
80
+ s.log("Error in transferClaimableUtxos loop", {
81
+ error: e,
82
+ index: o
83
+ }), E = new a(o, l(e)), T.push("");
84
+ break;
85
+ }
86
+ return {
87
+ pendingEnclaveUtxos: w,
88
+ txHashes: T,
89
+ failedRecipientErrorMessage: E
90
+ };
91
+ };
92
+ //#endregion
93
+ export { y as transferClaimableUtxos };
@@ -1 +1 @@
1
- require(`../../_virtual/_rolldown/runtime.cjs`);const e=require(`../../constants/chains.constants.cjs`),t=require(`../../constants/protocol.constants.cjs`),n=require(`../../data-structures/http/HttpClient.cjs`),r=require(`../snarkjs/constant.cjs`);let i=require(`ethers`),a=require(`tronweb`);var o=[`https://nile.trongrid.io`,`https://api.shasta.trongrid.io`],s=1000n,c=t=>{let n=t.toLowerCase();return o.some(e=>n.includes(e))?e.chainIds.tronNile:e.chainIds.tronMainnet},l=(t,n)=>{let r=e.networkRegistry[t].fetchRpcUrl,i=n?new a.TronWeb({fullHost:r,privateKey:n}):new a.TronWeb({fullHost:r});return n||i.setAddress(`T9yD14Nj9j7xAB4dbGeiX9h8unkKHxuWwb`),i},u=e=>e?.startsWith(`T`)?e:a.TronWeb.address.fromHex(e),d=e=>{if(e.startsWith(`0x`))return e;if(e.startsWith(`41`))return e.replace(`41`,`0x`);if(e.startsWith(`T`))return d(a.TronWeb.address.toHex(e));throw Error(`Failed to convert address to hex format`)},f=t=>{if(t===e.chainIds.tronNile)return`https://nile.trongrid.io`;if(t===e.chainIds.tronMainnet)return`https://api.trongrid.io`;throw Error(`Unsupported Tron chain for wallet RPC: ${t}`)},p=(e,t)=>e.map(e=>Array.isArray(e)?p(e,t):t(e)),m=(e,t,n)=>{let r=new i.ethers.Interface(e);if(!r.getFunction(t))throw Error(`${t} ABI is missing for Tron call data creation`);let a=p(n,e=>typeof e==`string`&&e.startsWith(`T`)?d(e):e);return r.encodeFunctionData(t,a)},h=(e,t,n)=>e?BigInt(Math.max((e[t]??0)-(e[n]??0),0)):0n,g=(e,t)=>{let n=e.find(e=>e.key===t);if(!n||typeof n.value!=`number`)throw Error(`Missing Tron chain parameter: ${t}`);return BigInt(n.value)},_=async e=>{let t=`${f(e)}/wallet/getchainparameters`,r=await n.httpClient.post(t,{});if(!r?.chainParameter?.length)throw Error(`Failed to fetch Tron chain parameters from wallet RPC`);return r.chainParameter},v=async(e,t)=>{let r=`${f(e)}/wallet/getaccountresource`,i=d(t),a=i.startsWith(`0x`)?`41${i.slice(2)}`:i;return await n.httpClient.post(r,{address:a,visible:!1})},y=async(e,n,r,i,a,o)=>{let c={input:a,callValue:Number(o),feeLimit:t.TRON_DEFAULT_FEE_LIMIT_SUN},[l,u]=await Promise.all([e.transactionBuilder.estimateEnergy(r,``,c,[],i),e.transactionBuilder.triggerConstantContract(r,``,c,[],i)]),d=await _(n),f=g(d,`getEnergyFee`),p=g(d,`getTransactionFee`),m=await v(n,i),y=BigInt(l?.energy_required??u?.energy_used??0),b=h(m,`EnergyLimit`,`EnergyUsed`),x=(y>b?y-b:0n)*f,S=BigInt(Math.ceil((u?.transaction?.raw_data_hex?.length??0)/2)),C=h(m,`freeNetLimit`,`freeNetUsed`)+h(m,`NetLimit`,`NetUsed`),w=x+(S>C?S-C:0n)*p,T=w+w*s/10000n;return T>BigInt(1e9)?BigInt(t.TRON_DEFAULT_FEE_LIMIT_SUN):T},b=e=>{let t=e[0].map(BigInt),n=e[1][0].map(BigInt),r=e[1][1].map(BigInt),i=e[2].map(BigInt),a=e[3].map(BigInt);return{a:t,b:[[n[1],n[0]],[r[1],r[0]]],c:i,publicSignals:a}},x=(e,t)=>{let n=i.ethers.AbiCoder.defaultAbiCoder().encode([`uint16`,`uint16`,`uint16`,`uint256`],[e.tokenNumber,e.nullifierAmount,e.outputAmount,t]);return BigInt(i.ethers.keccak256(n))},S=async(e,t,a,o,s,c)=>{let l=x(s,c),u=e.map(String),d=a.map(String),f=o.map(String),p={a:u,b:[t[0].map(String),t[1].map(String)],c:d,inputs:f,verifier_id:String(l)},m=await n.httpClient.post(`${r.ENCLAVE_EC2_URL}/sign-proof`,p),{v:h,r:g,s:_}=i.ethers.Signature.from(m.signature.trim());return{v:h,r:g,s:_}},C=e=>[e.rootHashHinkal,e.erc20TokenAddresses,e.tokenIds,e.amountChanges,e.onChainCreation,e.slippageValues,e.inputNullifiers,e.outCommitments,e.encryptedOutputs,[e.feeStructure.feeToken,e.feeStructure.flatFee,e.feeStructure.variableRate],e.timeStamp,[e.stealthAddressStructure.extraRandomization,e.stealthAddressStructure.stealthAddress,e.stealthAddressStructure.H0,e.stealthAddressStructure.H1],e.rootHashAccessToken,e.calldataHash,e.publicSignalCount,e.relay,e.externalAddress,e.externalActionId,e.externalActionMetadata,[e.hinkalLogicArgs.hinkalLogicAction,e.hinkalLogicArgs.inHinkalAddress,e.hinkalLogicArgs.executeApprovalChanges,e.hinkalLogicArgs.doPreTxApproval,e.hinkalLogicArgs.useApprovalUtxoData.map(e=>[e.approvalChanges,e.externalApprovalAddresses,e.conversionInHinkalAddress])],[e.hookData.preHookContract,e.hookData.hookContract,e.hookData.preHookMetadata,e.hookData.postHookMetadata],[e.signatureData.v,e.signatureData.r,e.signatureData.s,e.signatureData.accessKey,e.signatureData.nonce,e.signatureData.ethereumAddress],e.originalSender],w=async(e,t,n,r,i=!0)=>{if(e){let{a:e,b:a,c:o,publicSignals:s}=b(t),c=await S(e,a,o,s,n,BigInt(r.externalActionId)),l={v:c.v,r:c.r,s:c.s};return i&&(t[1]=[[t[1][0][1],t[1][0][0]],[t[1][1][1],t[1][1][0]]]),l}};exports.addressToHexFormat=d,exports.circomDataToArray=C,exports.createTronCallData=m,exports.createTronWeb=l,exports.detectTronChainIdFromHost=c,exports.estimateTronFeeSunWithPadding=y,exports.evmHexToTronBase58Address=u,exports.fetchTronAccountResources=v,exports.fetchTronChainParameters=_,exports.generateProofSignatureRemotely=S,exports.getAvailableResource=h,exports.getChainParameterValue=g,exports.getVerifierId=x,exports.parseZkCalldata=b,exports.reorderZkCallData=w;
1
+ require(`../../_virtual/_rolldown/runtime.cjs`);const e=require(`../../constants/chains.constants.cjs`),t=require(`../../constants/protocol.constants.cjs`),n=require(`../../data-structures/http/HttpClient.cjs`),r=require(`../snarkjs/constant.cjs`),i=require(`./caseInsensitive.utils.cjs`),a=require(`../../externalABIs/index.cjs`),o=require(`../../error-handling/error-codes.constants.cjs`),s=require(`../../error-handling/logger.cjs`);let c=require(`ethers`),l=require(`tronweb`);var u=[`https://nile.trongrid.io`,`https://api.shasta.trongrid.io`],d=2000n,f=t=>{let n=t.toLowerCase();return u.some(e=>n.includes(e))?e.chainIds.tronNile:e.chainIds.tronMainnet},p=e=>{let t=e.trim(),n=t.startsWith(`0x`)?t.slice(2):t;if(!/^[0-9a-fA-F]{64}$/.test(n))throw Error(`Tron private key must be 32 bytes (64 hex characters), with or without 0x prefix`);return n},m=(t,n)=>{let r=e.networkRegistry[t].fetchRpcUrl,i=n?p(n):void 0,a=i?new l.TronWeb({fullHost:r,privateKey:i}):new l.TronWeb({fullHost:r});return n||a.setAddress(`T9yD14Nj9j7xAB4dbGeiX9h8unkKHxuWwb`),a},h=e=>e?.startsWith(`T`)?e:l.TronWeb.address.fromHex(e),g=e=>e.startsWith(`0x`)?h(e):e,_=e=>{if(e.startsWith(`0x`))return e;if(e.startsWith(`41`))return e.replace(`41`,`0x`);if(e.startsWith(`T`))return _(l.TronWeb.address.toHex(e));throw Error(`Failed to convert address to hex format`)},v=e=>e?.startsWith(`T`)?_(e):e,y=t=>{if(t===e.chainIds.tronNile)return`https://nile.trongrid.io`;if(t===e.chainIds.tronMainnet)return`https://api.trongrid.io`;throw Error(`Unsupported Tron chain for wallet RPC: ${t}`)},b=(e,t)=>e.map(e=>Array.isArray(e)?b(e,t):t(e)),x=(e,t,n)=>{let r=new c.ethers.Interface(e);if(!r.getFunction(t))throw Error(`${t} ABI is missing for Tron call data creation`);let i=b(n,e=>typeof e==`string`&&e.startsWith(`T`)?_(e):e);return r.encodeFunctionData(t,i)},S=(e,t,n)=>e?BigInt(Math.max((e[t]??0)-(e[n]??0),0)):0n,C=(e,t)=>{let n=e.find(e=>e.key===t);if(!n||typeof n.value!=`number`)throw Error(`Missing Tron chain parameter: ${t}`);return BigInt(n.value)},w=async e=>{let t=`${y(e)}/wallet/getchainparameters`,r=await n.httpClient.post(t,{});if(!r?.chainParameter?.length)throw Error(`Failed to fetch Tron chain parameters from wallet RPC`);return r.chainParameter},T=async(e,t)=>{let r=`${y(e)}/wallet/getaccountresource`,i=_(t),a=i.startsWith(`0x`)?`41${i.slice(2)}`:i;return await n.httpClient.post(r,{address:a,visible:!1})},E=async(e,n,r,i,a,o)=>{let s={input:a,callValue:Number(o),feeLimit:t.TRON_DEFAULT_FEE_LIMIT_SUN},[c,l]=await Promise.all([e.transactionBuilder.estimateEnergy(r,``,s,[],i),e.transactionBuilder.triggerConstantContract(r,``,s,[],i)]),u=await w(n),f=C(u,`getEnergyFee`),p=C(u,`getTransactionFee`),m=await T(n,i),h=BigInt(c?.energy_required??l?.energy_used??0),g=S(m,`EnergyLimit`,`EnergyUsed`),_=(h>g?h-g:0n)*f,v=BigInt(Math.ceil((l?.transaction?.raw_data_hex?.length??0)/2)),y=S(m,`freeNetLimit`,`freeNetUsed`)+S(m,`NetLimit`,`NetUsed`),b=_+(v>y?v-y:0n)*p,x=b+b*d/10000n;return x>BigInt(1e9)?BigInt(t.TRON_DEFAULT_FEE_LIMIT_SUN):x},D=e=>{let t=e[0].map(BigInt),n=e[1][0].map(BigInt),r=e[1][1].map(BigInt),i=e[2].map(BigInt),a=e[3].map(BigInt);return{a:t,b:[[n[1],n[0]],[r[1],r[0]]],c:i,publicSignals:a}},O=(e,t)=>{let n=c.ethers.AbiCoder.defaultAbiCoder().encode([`uint16`,`uint16`,`uint16`,`uint256`],[e.tokenNumber,e.nullifierAmount,e.outputAmount,t]);return BigInt(c.ethers.keccak256(n))},k=async(e,t,i,a,o,s)=>{let l=O(o,s),u=e.map(String),d=i.map(String),f=a.map(String),p={a:u,b:[t[0].map(String),t[1].map(String)],c:d,inputs:f,verifier_id:String(l)},m=await n.httpClient.post(`${r.ENCLAVE_URL}/sign-proof`,p),{v:h,r:g,s:_}=c.ethers.Signature.from(m.signature.trim());return{v:h,r:g,s:_}},A=e=>[e.rootHashHinkal,e.erc20TokenAddresses,e.tokenIds,e.amountChanges,e.onChainCreation,e.slippageValues,e.inputNullifiers,e.outCommitments,e.encryptedOutputs,[e.feeStructure.feeToken,e.feeStructure.flatFee,e.feeStructure.variableRate],e.timeStamp,[e.stealthAddressStructure.extraRandomization,e.stealthAddressStructure.stealthAddress,e.stealthAddressStructure.H0,e.stealthAddressStructure.H1],e.rootHashAccessToken,e.calldataHash,e.publicSignalCount,e.relay,e.externalAddress,e.externalActionId,e.externalActionMetadata,[e.hinkalLogicArgs.hinkalLogicAction,e.hinkalLogicArgs.inHinkalAddress,e.hinkalLogicArgs.executeApprovalChanges,e.hinkalLogicArgs.doPreTxApproval,e.hinkalLogicArgs.useApprovalUtxoData.map(e=>[e.approvalChanges,e.externalApprovalAddresses,e.conversionInHinkalAddress])],[e.hookData.preHookContract,e.hookData.hookContract,e.hookData.preHookMetadata,e.hookData.postHookMetadata],[e.signatureData.v,e.signatureData.r,e.signatureData.s,e.signatureData.accessKey,e.signatureData.nonce,e.signatureData.ethereumAddress],e.originalSender],j=async(e,t,n,r,i=!0)=>{if(e){let{a:e,b:a,c:o,publicSignals:s}=D(t),c=await k(e,a,o,s,n,BigInt(r.externalActionId)),l={v:c.v,r:c.r,s:c.s};return i&&(t[1]=[[t[1][0][1],t[1][0][0]],[t[1][1][1],t[1][1][0]]]),l}},M=(e,n)=>{let r=0n,a=new Map;for(let o=0;o<e.length;o+=1)if(i.caseInsensitiveEqual(e[o].erc20TokenAddress,t.zeroAddress))r+=n[o];else{let t=h(e[o].erc20TokenAddress);a.set(t,(a.get(t)??0n)+n[o])}return{totalTrxValue:r,tokensNeedingApproval:a}},N=async(e,n,r,i,a,c)=>{let l=BigInt(await e.trx.getBalance(i)),u=BigInt(t.TRON_DEFAULT_FEE_LIMIT_SUN);try{u=await E(e,n,r,i,a,c)}catch(e){s.Logger.error(`Error estimating Tron deposit fee`,e)}if(l<c+u)throw Error(o.insufficientResourcesErrorCodes.INSUFFICIENT_TRON_BALANCE_FOR_FEE)},P=async(e,n,r,i)=>{let o=Array.from(i.entries());for(let i=0;i<o.length;i+=1){let[s,c]=o[i],l=await e.contract(a.ERC20ABI,s).allowance(n,r).call({from:n});if(BigInt(String(l))<c){let{transaction:i}=await e.transactionBuilder.triggerSmartContract(s,`approve(address,uint256)`,{feeLimit:t.TRON_DEFAULT_FEE_LIMIT_SUN},[{type:`address`,value:r},{type:`uint256`,value:c.toString()}],n),a=await e.trx.sign(i),o=await e.trx.sendRawTransaction(a);if(!o.result){let e=o.code??`UNKNOWN`,t=o.message?Buffer.from(o.message,`hex`).toString():`no message`;throw Error(`Tron token approval failed: ${e} - ${t}`)}}}};exports.addressToHexFormat=_,exports.approveTronTokens=P,exports.assertTronSufficientBalance=N,exports.circomDataToArray=A,exports.createTronCallData=x,exports.createTronWeb=m,exports.detectTronChainIdFromHost=f,exports.estimateTronFeeSunWithPadding=E,exports.evmHexToTronBase58Address=h,exports.fetchTronAccountResources=T,exports.fetchTronChainParameters=w,exports.generateProofSignatureRemotely=k,exports.getAvailableResource=S,exports.getChainParameterValue=C,exports.getVerifierId=O,exports.normalizeTronAddr=v,exports.normalizeTronPrivateKey=p,exports.parseZkCalldata=D,exports.reorderZkCallData=j,exports.splitTronTokensByNative=M,exports.toTronBase58IfHex=g;
@@ -3,10 +3,14 @@ import { CircomDataType, DimDataType } from '../../types/circom-data.types';
3
3
  import { NewZkCallDataType } from '../../types/snark.types';
4
4
  import { TronAccountResources, TronChainParameter } from '../../types/tron.types';
5
5
  import { TronWeb } from 'tronweb';
6
+ import { ERC20Token } from '../../types/token.types';
6
7
  export declare const detectTronChainIdFromHost: (fullNodeHost: string) => number;
8
+ export declare const normalizeTronPrivateKey: (privateKey: string) => string;
7
9
  export declare const createTronWeb: (chainId: number, privateKey?: string) => TronWeb;
8
10
  export declare const evmHexToTronBase58Address: (addr: string) => string;
11
+ export declare const toTronBase58IfHex: (addr: string) => string;
9
12
  export declare const addressToHexFormat: (addr: string) => string;
13
+ export declare const normalizeTronAddr: (addr: string) => string;
10
14
  export declare const createTronCallData: (abi: ethers.InterfaceAbi, functionName: string, args: unknown[]) => string;
11
15
  export declare const getAvailableResource: (resources: TronAccountResources | undefined, limitKey: string, usedKey: string) => bigint;
12
16
  export declare const getChainParameterValue: (params: TronChainParameter[], key: string) => bigint;
@@ -25,9 +29,15 @@ export declare const generateProofSignatureRemotely: (a: bigint[], b: bigint[][]
25
29
  r: string;
26
30
  s: string;
27
31
  }>;
28
- export declare const circomDataToArray: (circomData: CircomDataType) => (string | number | bigint | (string | number)[] | (string | bigint)[] | string[][] | (bigint | boolean | bigint[] | import('../..').HinkalLogicAction | (string[] | bigint[])[][])[] | undefined)[];
32
+ export declare const circomDataToArray: (circomData: CircomDataType) => (string | number | bigint | (string | number)[] | string[][] | (string | bigint)[] | (bigint | boolean | import('../..').HinkalLogicAction | bigint[] | (string[] | bigint[])[][])[] | undefined)[];
29
33
  export declare const reorderZkCallData: (isTron: boolean, zkCallData: NewZkCallDataType, dimData: DimDataType, circomData: CircomDataType, modifyZkCallData?: boolean) => Promise<{
30
34
  v: number;
31
35
  r: string;
32
36
  s: string;
33
37
  } | undefined>;
38
+ export declare const splitTronTokensByNative: (erc20Tokens: ERC20Token[], amountChanges: bigint[]) => {
39
+ totalTrxValue: bigint;
40
+ tokensNeedingApproval: Map<string, bigint>;
41
+ };
42
+ export declare const assertTronSufficientBalance: (tronWeb: TronWeb, chainId: number, contractBase58: string, ownerAddress: string, callData: string, totalTrxValue: bigint) => Promise<void>;
43
+ export declare const approveTronTokens: (tronWeb: TronWeb, ethereumAddress: string, spenderBase58: string, tokensNeedingApproval: Map<string, bigint>) => Promise<void>;
@@ -1,55 +1,63 @@
1
1
  import { chainIds as e, networkRegistry as t } from "../../constants/chains.constants.mjs";
2
- import { TRON_DEFAULT_FEE_LIMIT_SUN as n } from "../../constants/protocol.constants.mjs";
3
- import { httpClient as r } from "../../data-structures/http/HttpClient.mjs";
4
- import { ENCLAVE_EC2_URL as i } from "../snarkjs/constant.mjs";
5
- import { ethers as a } from "ethers";
6
- import { TronWeb as o } from "tronweb";
2
+ import { TRON_DEFAULT_FEE_LIMIT_SUN as n, zeroAddress as r } from "../../constants/protocol.constants.mjs";
3
+ import { httpClient as i } from "../../data-structures/http/HttpClient.mjs";
4
+ import { ENCLAVE_URL as a } from "../snarkjs/constant.mjs";
5
+ import { caseInsensitiveEqual as o } from "./caseInsensitive.utils.mjs";
6
+ import { ERC20ABI as s } from "../../externalABIs/index.mjs";
7
+ import { insufficientResourcesErrorCodes as c } from "../../error-handling/error-codes.constants.mjs";
8
+ import { Logger as l } from "../../error-handling/logger.mjs";
9
+ import { ethers as u } from "ethers";
10
+ import { TronWeb as d } from "tronweb";
7
11
  //#region libs/shared/common/src/functions/utils/tron.utils.ts
8
- var s = ["https://nile.trongrid.io", "https://api.shasta.trongrid.io"], c = 1000n, l = (t) => {
12
+ var f = ["https://nile.trongrid.io", "https://api.shasta.trongrid.io"], p = 2000n, m = (t) => {
9
13
  let n = t.toLowerCase();
10
- return s.some((e) => n.includes(e)) ? e.tronNile : e.tronMainnet;
11
- }, u = (e, n) => {
12
- let r = t[e].fetchRpcUrl, i = n ? new o({
14
+ return f.some((e) => n.includes(e)) ? e.tronNile : e.tronMainnet;
15
+ }, h = (e) => {
16
+ let t = e.trim(), n = t.startsWith("0x") ? t.slice(2) : t;
17
+ if (!/^[0-9a-fA-F]{64}$/.test(n)) throw Error("Tron private key must be 32 bytes (64 hex characters), with or without 0x prefix");
18
+ return n;
19
+ }, g = (e, n) => {
20
+ let r = t[e].fetchRpcUrl, i = n ? h(n) : void 0, a = i ? new d({
13
21
  fullHost: r,
14
- privateKey: n
15
- }) : new o({ fullHost: r });
16
- return n || i.setAddress("T9yD14Nj9j7xAB4dbGeiX9h8unkKHxuWwb"), i;
17
- }, d = (e) => e?.startsWith("T") ? e : o.address.fromHex(e), f = (e) => {
22
+ privateKey: i
23
+ }) : new d({ fullHost: r });
24
+ return n || a.setAddress("T9yD14Nj9j7xAB4dbGeiX9h8unkKHxuWwb"), a;
25
+ }, _ = (e) => e?.startsWith("T") ? e : d.address.fromHex(e), v = (e) => e.startsWith("0x") ? _(e) : e, y = (e) => {
18
26
  if (e.startsWith("0x")) return e;
19
27
  if (e.startsWith("41")) return e.replace("41", "0x");
20
- if (e.startsWith("T")) return f(o.address.toHex(e));
28
+ if (e.startsWith("T")) return y(d.address.toHex(e));
21
29
  throw Error("Failed to convert address to hex format");
22
- }, p = (t) => {
30
+ }, b = (e) => e?.startsWith("T") ? y(e) : e, x = (t) => {
23
31
  if (t === e.tronNile) return "https://nile.trongrid.io";
24
32
  if (t === e.tronMainnet) return "https://api.trongrid.io";
25
33
  throw Error(`Unsupported Tron chain for wallet RPC: ${t}`);
26
- }, m = (e, t) => e.map((e) => Array.isArray(e) ? m(e, t) : t(e)), h = (e, t, n) => {
27
- let r = new a.Interface(e);
34
+ }, S = (e, t) => e.map((e) => Array.isArray(e) ? S(e, t) : t(e)), C = (e, t, n) => {
35
+ let r = new u.Interface(e);
28
36
  if (!r.getFunction(t)) throw Error(`${t} ABI is missing for Tron call data creation`);
29
- let i = m(n, (e) => typeof e == "string" && e.startsWith("T") ? f(e) : e);
37
+ let i = S(n, (e) => typeof e == "string" && e.startsWith("T") ? y(e) : e);
30
38
  return r.encodeFunctionData(t, i);
31
- }, g = (e, t, n) => e ? BigInt(Math.max((e[t] ?? 0) - (e[n] ?? 0), 0)) : 0n, _ = (e, t) => {
39
+ }, w = (e, t, n) => e ? BigInt(Math.max((e[t] ?? 0) - (e[n] ?? 0), 0)) : 0n, T = (e, t) => {
32
40
  let n = e.find((e) => e.key === t);
33
41
  if (!n || typeof n.value != "number") throw Error(`Missing Tron chain parameter: ${t}`);
34
42
  return BigInt(n.value);
35
- }, v = async (e) => {
36
- let t = `${p(e)}/wallet/getchainparameters`, n = await r.post(t, {});
43
+ }, E = async (e) => {
44
+ let t = `${x(e)}/wallet/getchainparameters`, n = await i.post(t, {});
37
45
  if (!n?.chainParameter?.length) throw Error("Failed to fetch Tron chain parameters from wallet RPC");
38
46
  return n.chainParameter;
39
- }, y = async (e, t) => {
40
- let n = `${p(e)}/wallet/getaccountresource`, i = f(t), a = i.startsWith("0x") ? `41${i.slice(2)}` : i;
41
- return await r.post(n, {
47
+ }, D = async (e, t) => {
48
+ let n = `${x(e)}/wallet/getaccountresource`, r = y(t), a = r.startsWith("0x") ? `41${r.slice(2)}` : r;
49
+ return await i.post(n, {
42
50
  address: a,
43
51
  visible: !1
44
52
  });
45
- }, b = async (e, t, r, i, a, o) => {
53
+ }, O = async (e, t, r, i, a, o) => {
46
54
  let s = {
47
55
  input: a,
48
56
  callValue: Number(o),
49
57
  feeLimit: n
50
- }, [l, u] = await Promise.all([e.transactionBuilder.estimateEnergy(r, "", s, [], i), e.transactionBuilder.triggerConstantContract(r, "", s, [], i)]), d = await v(t), f = _(d, "getEnergyFee"), p = _(d, "getTransactionFee"), m = await y(t, i), h = BigInt(l?.energy_required ?? u?.energy_used ?? 0), b = g(m, "EnergyLimit", "EnergyUsed"), x = (h > b ? h - b : 0n) * f, S = BigInt(Math.ceil((u?.transaction?.raw_data_hex?.length ?? 0) / 2)), C = g(m, "freeNetLimit", "freeNetUsed") + g(m, "NetLimit", "NetUsed"), w = x + (S > C ? S - C : 0n) * p, T = w + w * c / 10000n;
51
- return T > BigInt(1e9) ? BigInt(n) : T;
52
- }, x = (e) => {
58
+ }, [c, l] = await Promise.all([e.transactionBuilder.estimateEnergy(r, "", s, [], i), e.transactionBuilder.triggerConstantContract(r, "", s, [], i)]), u = await E(t), d = T(u, "getEnergyFee"), f = T(u, "getTransactionFee"), m = await D(t, i), h = BigInt(c?.energy_required ?? l?.energy_used ?? 0), g = w(m, "EnergyLimit", "EnergyUsed"), _ = (h > g ? h - g : 0n) * d, v = BigInt(Math.ceil((l?.transaction?.raw_data_hex?.length ?? 0) / 2)), y = w(m, "freeNetLimit", "freeNetUsed") + w(m, "NetLimit", "NetUsed"), b = _ + (v > y ? v - y : 0n) * f, x = b + b * p / 10000n;
59
+ return x > BigInt(1e9) ? BigInt(n) : x;
60
+ }, k = (e) => {
53
61
  let t = e[0].map(BigInt), n = e[1][0].map(BigInt), r = e[1][1].map(BigInt), i = e[2].map(BigInt), a = e[3].map(BigInt);
54
62
  return {
55
63
  a: t,
@@ -57,8 +65,8 @@ var s = ["https://nile.trongrid.io", "https://api.shasta.trongrid.io"], c = 1000
57
65
  c: i,
58
66
  publicSignals: a
59
67
  };
60
- }, S = (e, t) => {
61
- let n = a.AbiCoder.defaultAbiCoder().encode([
68
+ }, A = (e, t) => {
69
+ let n = u.AbiCoder.defaultAbiCoder().encode([
62
70
  "uint16",
63
71
  "uint16",
64
72
  "uint16",
@@ -69,21 +77,21 @@ var s = ["https://nile.trongrid.io", "https://api.shasta.trongrid.io"], c = 1000
69
77
  e.outputAmount,
70
78
  t
71
79
  ]);
72
- return BigInt(a.keccak256(n));
73
- }, C = async (e, t, n, o, s, c) => {
74
- let l = S(s, c), u = e.map(String), d = n.map(String), f = o.map(String), p = {
75
- a: u,
80
+ return BigInt(u.keccak256(n));
81
+ }, j = async (e, t, n, r, o, s) => {
82
+ let c = A(o, s), l = e.map(String), d = n.map(String), f = r.map(String), p = {
83
+ a: l,
76
84
  b: [t[0].map(String), t[1].map(String)],
77
85
  c: d,
78
86
  inputs: f,
79
- verifier_id: String(l)
80
- }, m = await r.post(`${i}/sign-proof`, p), { v: h, r: g, s: _ } = a.Signature.from(m.signature.trim());
87
+ verifier_id: String(c)
88
+ }, m = await i.post(`${a}/sign-proof`, p), { v: h, r: g, s: _ } = u.Signature.from(m.signature.trim());
81
89
  return {
82
90
  v: h,
83
91
  r: g,
84
92
  s: _
85
93
  };
86
- }, w = (e) => [
94
+ }, M = (e) => [
87
95
  e.rootHashHinkal,
88
96
  e.erc20TokenAddresses,
89
97
  e.tokenIds,
@@ -138,15 +146,52 @@ var s = ["https://nile.trongrid.io", "https://api.shasta.trongrid.io"], c = 1000
138
146
  e.signatureData.ethereumAddress
139
147
  ],
140
148
  e.originalSender
141
- ], T = async (e, t, n, r, i = !0) => {
149
+ ], N = async (e, t, n, r, i = !0) => {
142
150
  if (e) {
143
- let { a: e, b: a, c: o, publicSignals: s } = x(t), c = await C(e, a, o, s, n, BigInt(r.externalActionId)), l = {
151
+ let { a: e, b: a, c: o, publicSignals: s } = k(t), c = await j(e, a, o, s, n, BigInt(r.externalActionId)), l = {
144
152
  v: c.v,
145
153
  r: c.r,
146
154
  s: c.s
147
155
  };
148
156
  return i && (t[1] = [[t[1][0][1], t[1][0][0]], [t[1][1][1], t[1][1][0]]]), l;
149
157
  }
158
+ }, P = (e, t) => {
159
+ let n = 0n, i = /* @__PURE__ */ new Map();
160
+ for (let a = 0; a < e.length; a += 1) if (o(e[a].erc20TokenAddress, r)) n += t[a];
161
+ else {
162
+ let n = _(e[a].erc20TokenAddress);
163
+ i.set(n, (i.get(n) ?? 0n) + t[a]);
164
+ }
165
+ return {
166
+ totalTrxValue: n,
167
+ tokensNeedingApproval: i
168
+ };
169
+ }, F = async (e, t, r, i, a, o) => {
170
+ let s = BigInt(await e.trx.getBalance(i)), u = BigInt(n);
171
+ try {
172
+ u = await O(e, t, r, i, a, o);
173
+ } catch (e) {
174
+ l.error("Error estimating Tron deposit fee", e);
175
+ }
176
+ if (s < o + u) throw Error(c.INSUFFICIENT_TRON_BALANCE_FOR_FEE);
177
+ }, I = async (e, t, r, i) => {
178
+ let a = Array.from(i.entries());
179
+ for (let i = 0; i < a.length; i += 1) {
180
+ let [o, c] = a[i], l = await e.contract(s, o).allowance(t, r).call({ from: t });
181
+ if (BigInt(String(l)) < c) {
182
+ let { transaction: i } = await e.transactionBuilder.triggerSmartContract(o, "approve(address,uint256)", { feeLimit: n }, [{
183
+ type: "address",
184
+ value: r
185
+ }, {
186
+ type: "uint256",
187
+ value: c.toString()
188
+ }], t), a = await e.trx.sign(i), s = await e.trx.sendRawTransaction(a);
189
+ if (!s.result) {
190
+ let e = s.code ?? "UNKNOWN", t = s.message ? Buffer.from(s.message, "hex").toString() : "no message";
191
+ throw Error(`Tron token approval failed: ${e} - ${t}`);
192
+ }
193
+ }
194
+ }
150
195
  };
151
196
  //#endregion
152
- export { f as addressToHexFormat, w as circomDataToArray, h as createTronCallData, u as createTronWeb, l as detectTronChainIdFromHost, b as estimateTronFeeSunWithPadding, d as evmHexToTronBase58Address, y as fetchTronAccountResources, v as fetchTronChainParameters, C as generateProofSignatureRemotely, g as getAvailableResource, _ as getChainParameterValue, S as getVerifierId, x as parseZkCalldata, T as reorderZkCallData };
197
+ export { y as addressToHexFormat, I as approveTronTokens, F as assertTronSufficientBalance, M as circomDataToArray, C as createTronCallData, g as createTronWeb, m as detectTronChainIdFromHost, O as estimateTronFeeSunWithPadding, _ as evmHexToTronBase58Address, D as fetchTronAccountResources, E as fetchTronChainParameters, j as generateProofSignatureRemotely, w as getAvailableResource, T as getChainParameterValue, A as getVerifierId, b as normalizeTronAddr, h as normalizeTronPrivateKey, k as parseZkCalldata, N as reorderZkCallData, P as splitTronTokensByNative, v as toTronBase58IfHex };
@@ -1 +1 @@
1
- const e=require(`../../constants/chains.constants.cjs`),t=require(`../../error-handling/error-codes.constants.cjs`),n=require(`../../constants/tx-confirmation.constants.cjs`);require(`../../constants/index.cjs`);const r=require(`../../error-handling/logger.cjs`),i=require(`./create-provider.cjs`);var a=`confirmed`,o=async(e,r,a={})=>{let{evmConfirmations:o=1,evmTimeoutMs:s=n.TX_CONFIRMATION_TIMEOUT_EXTENDED}=a,c=r.startsWith(`0x`)?r:`0x${r}`,l=await i.createCustomRpcProvider(e).waitForTransaction(c,o,s);if(!l||l.status!==1)throw Error(t.transactionErrorCodes.TRANSACTION_NOT_CONFIRMED);return l},s=async(t,n,r={})=>{let{solanaCommitment:o=a}=r,{fetchRpcUrl:s}=e.networkRegistry[t];if(!s)throw Error(`RPC URL not found for the specified chain ID`);let c=await i.createCustomSolanaConnection(s,o).confirmTransaction(n,o);if(c.value.err)throw Error(`Transaction failed`);return c},c=async(t,n,i={})=>{try{if(e.isSolanaLike(t)){await s(t,n,i);return}await o(t,n.startsWith(`0x`)?n:`0x${n}`,i)}catch(e){throw r.Logger.error(`waitForTransactionConfirmation failed`,{chainId:t,txHash:n,error:e}),e}};exports.waitForEthereumTransactionConfirmation=o,exports.waitForSolanaTransactionConfirmation=s,exports.waitForTransactionConfirmation=c;
1
+ const e=require(`../../constants/chains.constants.cjs`),t=require(`../../error-handling/error-codes.constants.cjs`),n=require(`../../constants/tx-confirmation.constants.cjs`);require(`../../constants/index.cjs`);const r=require(`../../error-handling/logger.cjs`),i=require(`./create-provider.cjs`);var a=`confirmed`,o=async(e,r,a={})=>{let{evmConfirmations:o=1,evmTimeoutMs:s=n.TX_CONFIRMATION_TIMEOUT_EXTENDED}=a,c=r.startsWith(`0x`)?r:`0x${r}`,l=await i.createJsonRpcProvider(e).waitForTransaction(c,o,s);if(!l||l.status!==1)throw Error(t.transactionErrorCodes.TRANSACTION_NOT_CONFIRMED);return l},s=async(t,n,r={})=>{let{solanaCommitment:o=a}=r,{fetchRpcUrl:s}=e.networkRegistry[t];if(!s)throw Error(`RPC URL not found for the specified chain ID`);let c=await i.createCustomSolanaConnection(s,o).confirmTransaction(n,o);if(c.value.err)throw Error(`Transaction failed`);return c},c=async(t,n,i={})=>{try{if(e.isSolanaLike(t)){await s(t,n,i);return}await o(t,n.startsWith(`0x`)?n:`0x${n}`,i)}catch(e){throw r.Logger.error(`waitForTransactionConfirmation failed`,{chainId:t,txHash:n,error:e}),e}};exports.waitForEthereumTransactionConfirmation=o,exports.waitForSolanaTransactionConfirmation=s,exports.waitForTransactionConfirmation=c;