@gurge/sdk 0.3.13 → 0.3.15

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 (321) hide show
  1. package/README.md +184 -32
  2. package/common/src/API/API.cjs +1 -1
  3. package/common/src/API/API.d.ts +0 -5
  4. package/common/src/API/API.mjs +114 -119
  5. package/common/src/API/TokenCallsCachedHelper.cjs +1 -0
  6. package/common/src/API/TokenCallsCachedHelper.d.ts +15 -0
  7. package/common/src/API/TokenCallsCachedHelper.mjs +62 -0
  8. package/common/src/API/callLifiAPI.cjs +1 -1
  9. package/common/src/API/callLifiAPI.mjs +2 -7
  10. package/common/src/API/enclaveUtxoCalls.cjs +1 -1
  11. package/common/src/API/enclaveUtxoCalls.mjs +6 -7
  12. package/common/src/API/getServerURL.cjs +1 -1
  13. package/common/src/API/getServerURL.mjs +2 -2
  14. package/common/src/API/scheduled-transactions-calls.cjs +1 -1
  15. package/common/src/API/scheduled-transactions-calls.mjs +3 -3
  16. package/common/src/API/token-calls.cjs +1 -1
  17. package/common/src/API/token-calls.d.ts +1 -1
  18. package/common/src/API/token-calls.mjs +3 -13
  19. package/common/src/constants/chains.constants.cjs +1 -1
  20. package/common/src/constants/chains.constants.d.ts +1 -0
  21. package/common/src/constants/chains.constants.mjs +3 -2
  22. package/common/src/constants/deploy-data/mergeDeployData.cjs +1 -1
  23. package/common/src/constants/deploy-data/mergeDeployData.mjs +11 -10
  24. package/common/src/constants/deploy-data/shared-deploy-data-tron.json.cjs +1 -1
  25. package/common/src/constants/deploy-data/shared-deploy-data-tron.json.mjs +60 -3517
  26. package/common/src/constants/events.constants.cjs +1 -1
  27. package/common/src/constants/events.constants.mjs +3 -1
  28. package/common/src/constants/index.cjs +1 -1
  29. package/common/src/constants/index.d.ts +0 -3
  30. package/common/src/constants/index.mjs +0 -3
  31. package/common/src/constants/lifi.constants.cjs +1 -1
  32. package/common/src/constants/lifi.constants.mjs +3 -6
  33. package/common/src/constants/mediaUrls.constants.d.ts +0 -1
  34. package/common/src/constants/rewards.constants.d.ts +0 -2
  35. package/common/src/constants/server.constants.cjs +1 -1
  36. package/common/src/constants/server.constants.d.ts +1 -5
  37. package/common/src/constants/server.constants.mjs +3 -8
  38. package/common/src/constants/vite.constants.cjs +1 -1
  39. package/common/src/constants/vite.constants.d.ts +1 -0
  40. package/common/src/constants/vite.constants.mjs +3 -3
  41. package/common/src/crypto/BabyJubRN.cjs +1 -0
  42. package/common/src/crypto/BabyJubRN.d.ts +18 -0
  43. package/common/src/crypto/BabyJubRN.mjs +33 -0
  44. package/common/src/crypto/babyJub.cjs +1 -1
  45. package/common/src/crypto/babyJub.mjs +7 -5
  46. package/common/src/crypto/poseidon.cjs +1 -1
  47. package/common/src/crypto/poseidon.mjs +22 -12
  48. package/common/src/data-structures/Hinkal/Hinkal.cjs +1 -1
  49. package/common/src/data-structures/Hinkal/Hinkal.d.ts +10 -6
  50. package/common/src/data-structures/Hinkal/Hinkal.mjs +104 -113
  51. package/common/src/data-structures/Hinkal/IHinkal.d.ts +9 -5
  52. package/common/src/data-structures/Hinkal/handleAutoDepositBack.cjs +1 -1
  53. package/common/src/data-structures/Hinkal/handleAutoDepositBack.mjs +37 -37
  54. package/common/src/data-structures/Hinkal/hinkalDepositAndBridge.cjs +1 -1
  55. package/common/src/data-structures/Hinkal/hinkalDepositAndBridge.d.ts +2 -2
  56. package/common/src/data-structures/Hinkal/hinkalDepositAndBridge.mjs +8 -5
  57. package/common/src/data-structures/Hinkal/hinkalDepositAndWithdraw.cjs +1 -1
  58. package/common/src/data-structures/Hinkal/hinkalDepositAndWithdraw.d.ts +2 -2
  59. package/common/src/data-structures/Hinkal/hinkalDepositAndWithdraw.mjs +4 -1
  60. package/common/src/data-structures/Hinkal/hinkalNearDepositAndBridge.cjs +1 -1
  61. package/common/src/data-structures/Hinkal/hinkalNearDepositAndBridge.mjs +1 -1
  62. package/common/src/data-structures/Hinkal/hinkalProoflessDeposit.cjs +1 -1
  63. package/common/src/data-structures/Hinkal/hinkalProoflessDeposit.mjs +4 -4
  64. package/common/src/data-structures/Hinkal/hinkalProoflessDeposit.utils.cjs +1 -1
  65. package/common/src/data-structures/Hinkal/hinkalProoflessDeposit.utils.mjs +3 -3
  66. package/common/src/data-structures/Hinkal/hinkalProoflessDepositViaWrapper.cjs +1 -1
  67. package/common/src/data-structures/Hinkal/hinkalProoflessDepositViaWrapper.mjs +15 -15
  68. package/common/src/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.cjs +1 -1
  69. package/common/src/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.d.ts +2 -2
  70. package/common/src/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.mjs +4 -1
  71. package/common/src/data-structures/Hinkal/index.d.ts +0 -1
  72. package/common/src/data-structures/Hinkal/prepareDepositOnChainUtxosZkProof.cjs +1 -1
  73. package/common/src/data-structures/Hinkal/prepareDepositOnChainUtxosZkProof.mjs +1 -1
  74. package/common/src/data-structures/Hinkal/resetMerkleTrees.cjs +1 -1
  75. package/common/src/data-structures/Hinkal/resetMerkleTrees.mjs +29 -31
  76. package/common/src/data-structures/TokenDBs/AlchemyPublicTokensDB.cjs +1 -1
  77. package/common/src/data-structures/TokenDBs/AlchemyPublicTokensDB.mjs +7 -6
  78. package/common/src/data-structures/TokenDBs/ArcPublicTokensDB.cjs +1 -1
  79. package/common/src/data-structures/TokenDBs/ArcPublicTokensDB.mjs +18 -18
  80. package/common/src/data-structures/TokenDBs/EventsPublicTokensDB.cjs +1 -1
  81. package/common/src/data-structures/TokenDBs/EventsPublicTokensDB.mjs +43 -43
  82. package/common/src/data-structures/TokenDBs/PublicTokensDB.cjs +1 -1
  83. package/common/src/data-structures/TokenDBs/PublicTokensDB.mjs +23 -20
  84. package/common/src/data-structures/TokenDBs/TempoPublicTokensDB.cjs +1 -0
  85. package/common/src/data-structures/TokenDBs/TempoPublicTokensDB.d.ts +9 -0
  86. package/common/src/data-structures/TokenDBs/TempoPublicTokensDB.mjs +41 -0
  87. package/common/src/data-structures/TokenDBs/TronPublicTokensDB.cjs +1 -0
  88. package/common/src/data-structures/TokenDBs/TronPublicTokensDB.d.ts +9 -0
  89. package/common/src/data-structures/TokenDBs/TronPublicTokensDB.mjs +47 -0
  90. package/common/src/data-structures/TokenDBs/index.cjs +1 -1
  91. package/common/src/data-structures/TokenDBs/index.d.ts +2 -0
  92. package/common/src/data-structures/TokenDBs/index.mjs +2 -0
  93. package/common/src/data-structures/event-service/evm/BlockchainEventEmitter.d.ts +3 -3
  94. package/common/src/data-structures/event-service/evm/ClientBlockchainEventEmitter.d.ts +2 -2
  95. package/common/src/data-structures/event-service/solana/ClientSolanaBlockchainEventEmitter.d.ts +2 -2
  96. package/common/src/data-structures/event-service/solana/SolanaBlockchainEventEmitter.d.ts +3 -3
  97. package/common/src/data-structures/index.d.ts +1 -0
  98. package/common/src/data-structures/private-balances/BalanceChangedHandler.cjs +1 -0
  99. package/common/src/data-structures/private-balances/BalanceChangedHandler.d.ts +9 -0
  100. package/common/src/data-structures/private-balances/BalanceChangedHandler.mjs +12 -0
  101. package/common/src/data-structures/private-balances/HinkalPrivateBalanceController.cjs +1 -0
  102. package/common/src/data-structures/{Hinkal → private-balances}/HinkalPrivateBalanceController.d.ts +4 -2
  103. package/common/src/data-structures/{Hinkal → private-balances}/HinkalPrivateBalanceController.mjs +34 -90
  104. package/common/src/data-structures/private-balances/index.cjs +1 -0
  105. package/common/src/data-structures/private-balances/index.d.ts +3 -0
  106. package/common/src/data-structures/private-balances/index.mjs +3 -0
  107. package/common/src/data-structures/private-balances/privateBalancesReducer.cjs +1 -0
  108. package/common/src/data-structures/private-balances/privateBalancesReducer.d.ts +2 -0
  109. package/common/src/data-structures/private-balances/privateBalancesReducer.mjs +73 -0
  110. package/common/src/data-structures/token-price-fetcher/TokenChecker.cjs +1 -1
  111. package/common/src/data-structures/token-price-fetcher/TokenChecker.mjs +5 -5
  112. package/common/src/error-handling/error-codes.constants.cjs +1 -1
  113. package/common/src/error-handling/error-codes.constants.d.ts +2 -5
  114. package/common/src/error-handling/error-codes.constants.mjs +3 -6
  115. package/common/src/externalABIs/index.cjs +1 -1
  116. package/common/src/externalABIs/index.d.ts +1 -36
  117. package/common/src/externalABIs/index.mjs +3 -5
  118. package/common/src/functions/index.cjs +1 -1
  119. package/common/src/functions/index.d.ts +0 -1
  120. package/common/src/functions/index.mjs +4 -5
  121. package/common/src/functions/pre-transaction/buildCommitmentValidationData.cjs +1 -1
  122. package/common/src/functions/pre-transaction/buildCommitmentValidationData.mjs +37 -36
  123. package/common/src/functions/pre-transaction/merge-with-fee-structure-emporium.cjs +1 -1
  124. package/common/src/functions/pre-transaction/merge-with-fee-structure-emporium.mjs +4 -4
  125. package/common/src/functions/pre-transaction/sendV0Transaction.cjs +2 -2
  126. package/common/src/functions/pre-transaction/sendV0Transaction.mjs +54 -42
  127. package/common/src/functions/private-wallet/emporium.helpers.cjs +1 -1
  128. package/common/src/functions/private-wallet/emporium.helpers.mjs +17 -17
  129. package/common/src/functions/private-wallet/emporium.swap.helpers.cjs +1 -1
  130. package/common/src/functions/private-wallet/emporium.swap.helpers.mjs +16 -16
  131. package/common/src/functions/snarkjs/common.snarkjs.cjs +1 -1
  132. package/common/src/functions/snarkjs/common.snarkjs.d.ts +9 -1
  133. package/common/src/functions/snarkjs/common.snarkjs.mjs +13 -9
  134. package/common/src/functions/snarkjs/getMerkleTreeSiblingsAndRootHashes.cjs +1 -1
  135. package/common/src/functions/snarkjs/getMerkleTreeSiblingsAndRootHashes.d.ts +2 -3
  136. package/common/src/functions/snarkjs/getMerkleTreeSiblingsAndRootHashes.mjs +49 -32
  137. package/common/src/functions/utils/abi.utils.cjs +1 -0
  138. package/common/src/functions/utils/abi.utils.d.ts +3 -0
  139. package/common/src/functions/utils/abi.utils.mjs +5 -0
  140. package/common/src/functions/utils/bigint-math.utils.cjs +1 -0
  141. package/common/src/functions/utils/bigint-math.utils.d.ts +2 -0
  142. package/common/src/functions/utils/bigint-math.utils.mjs +12 -0
  143. package/common/src/functions/utils/dispatchBalanceRefreshes.cjs +1 -1
  144. package/common/src/functions/utils/dispatchBalanceRefreshes.mjs +1 -1
  145. package/common/src/functions/utils/enclaveHandshakeService.cjs +1 -0
  146. package/common/src/functions/utils/enclaveHandshakeService.d.ts +10 -0
  147. package/common/src/functions/utils/enclaveHandshakeService.mjs +22 -0
  148. package/common/src/functions/utils/encryptInputForEnclave.cjs +1 -1
  149. package/common/src/functions/utils/encryptInputForEnclave.mjs +23 -25
  150. package/common/src/functions/utils/erc20tokenFunctions.cjs +1 -1
  151. package/common/src/functions/utils/erc20tokenFunctions.d.ts +4 -1
  152. package/common/src/functions/utils/erc20tokenFunctions.mjs +28 -12
  153. package/common/src/functions/utils/evmNetworkFunctions.cjs +1 -1
  154. package/common/src/functions/utils/evmNetworkFunctions.d.ts +1 -0
  155. package/common/src/functions/utils/evmNetworkFunctions.mjs +4 -0
  156. package/common/src/functions/utils/getUtxosFromReceipt.utils.cjs +1 -1
  157. package/common/src/functions/utils/getUtxosFromReceipt.utils.mjs +10 -10
  158. package/common/src/functions/utils/index.cjs +1 -1
  159. package/common/src/functions/utils/index.d.ts +4 -0
  160. package/common/src/functions/utils/index.mjs +4 -0
  161. package/common/src/functions/utils/map.utils.cjs +1 -0
  162. package/common/src/functions/utils/map.utils.d.ts +1 -0
  163. package/common/src/functions/utils/map.utils.mjs +9 -0
  164. package/common/src/functions/utils/mutexes.utils.cjs +1 -1
  165. package/common/src/functions/utils/mutexes.utils.d.ts +2 -2
  166. package/common/src/functions/utils/mutexes.utils.mjs +4 -3
  167. package/common/src/functions/utils/process.utils.cjs +1 -1
  168. package/common/src/functions/utils/process.utils.d.ts +1 -0
  169. package/common/src/functions/utils/process.utils.mjs +7 -2
  170. package/common/src/functions/utils/tron.utils.cjs +1 -1
  171. package/common/src/functions/utils/tron.utils.d.ts +1 -0
  172. package/common/src/functions/utils/tron.utils.mjs +1 -1
  173. package/common/src/functions/web3/events/getInputUtxoAndBalance.cjs +1 -1
  174. package/common/src/functions/web3/events/getInputUtxoAndBalance.mjs +26 -26
  175. package/common/src/functions/web3/events/getShieldedBalance.cjs +1 -1
  176. package/common/src/functions/web3/events/getShieldedBalance.mjs +29 -11
  177. package/common/src/functions/web3/events/index.cjs +1 -1
  178. package/common/src/functions/web3/events/index.d.ts +0 -1
  179. package/common/src/functions/web3/events/index.mjs +0 -1
  180. package/common/src/functions/web3/functionCalls/transactCallDirect.cjs +1 -1
  181. package/common/src/functions/web3/functionCalls/transactCallDirect.mjs +4 -4
  182. package/common/src/functions/web3/functionCalls/waitForErc20Approvals.cjs +1 -1
  183. package/common/src/functions/web3/functionCalls/waitForErc20Approvals.mjs +10 -10
  184. package/common/src/functions/web3/index.cjs +1 -1
  185. package/common/src/functions/web3/index.mjs +0 -1
  186. package/common/src/functions/web3/lifiAPI.cjs +1 -1
  187. package/common/src/functions/web3/lifiAPI.mjs +7 -38
  188. package/common/src/functions/web3/oneInchAPI.cjs +1 -1
  189. package/common/src/functions/web3/oneInchAPI.mjs +10 -10
  190. package/common/src/functions/web3/uniswapAPI.cjs +1 -1
  191. package/common/src/functions/web3/uniswapAPI.mjs +16 -16
  192. package/common/src/mutexes/chainBalanceRwLock.cjs +1 -0
  193. package/common/src/mutexes/chainBalanceRwLock.d.ts +18 -0
  194. package/common/src/mutexes/chainBalanceRwLock.mjs +31 -0
  195. package/common/src/mutexes/index.d.ts +1 -0
  196. package/common/src/types/cache.types.cjs +1 -1
  197. package/common/src/types/cache.types.d.ts +2 -0
  198. package/common/src/types/cache.types.mjs +1 -1
  199. package/common/src/types/commitments.types.d.ts +0 -10
  200. package/common/src/types/hinkal.types.cjs +1 -1
  201. package/common/src/types/hinkal.types.d.ts +4 -7
  202. package/common/src/types/hinkal.types.mjs +1 -1
  203. package/common/src/types/index.cjs +1 -1
  204. package/common/src/types/index.d.ts +0 -1
  205. package/common/src/types/index.mjs +1 -2
  206. package/common/src/types/new-rewards.type.cjs +1 -1
  207. package/common/src/types/new-rewards.type.d.ts +0 -1
  208. package/common/src/types/new-rewards.type.mjs +1 -1
  209. package/common/src/types/scheduled-transactions.types.d.ts +5 -0
  210. package/common/src/webworker/logError-BTCYh_YM.js +2 -0
  211. package/common/src/webworker/package.json +34 -4
  212. package/common/src/webworker/snarkjsWorker/snarkjsWorkerLauncher.ts?worker&url.cjs +1 -1
  213. package/common/src/webworker/snarkjsWorker/snarkjsWorkerLauncher.ts?worker&url.mjs +1 -1
  214. package/common/src/webworker/snarkjsWorkerNode.cjs +1 -1
  215. package/common/src/webworker/utxoWorker/utxoWorkerLauncher.ts?worker&url.cjs +1 -1
  216. package/common/src/webworker/utxoWorker/utxoWorkerLauncher.ts?worker&url.mjs +1 -1
  217. package/common/src/webworker/utxoWorkerNode.cjs +1 -1
  218. package/common/src/webworker/viteWorkerURL.constant.cjs +4 -4
  219. package/common/src/webworker/viteWorkerURL.constant.mjs +4 -4
  220. package/common/src/webworker/workerFactory.cjs +1 -1
  221. package/common/src/webworker/workerFactory.d.ts +1 -0
  222. package/common/src/webworker/workerFactory.mjs +3 -2
  223. package/common/src/webworker/workerProxy-DPeuP2Mg.js +1 -0
  224. package/common/src/webworker/zkProofWorker/zkProofWorkerLauncher.ts?worker&url.cjs +1 -1
  225. package/common/src/webworker/zkProofWorker/zkProofWorkerLauncher.ts?worker&url.mjs +1 -1
  226. package/common/src/webworker/zkProofWorkerNode.cjs +1 -1
  227. package/functions/index.cjs +1 -1
  228. package/functions/index.mjs +0 -4
  229. package/functions/integrations/index.cjs +1 -1
  230. package/functions/integrations/index.mjs +0 -4
  231. package/functions/integrations/swapApi.cjs +1 -1
  232. package/functions/integrations/swapApi.d.ts +21 -7
  233. package/functions/integrations/swapApi.mjs +29 -10
  234. package/functions/utils/refreshBalance.cjs +1 -1
  235. package/functions/utils/refreshBalance.mjs +2 -2
  236. package/index.cjs +1 -1
  237. package/index.mjs +4 -8
  238. package/internal/token.utils.cjs +1 -1
  239. package/internal/token.utils.d.ts +1 -3
  240. package/internal/token.utils.mjs +10 -21
  241. package/package.json +34 -4
  242. package/react-native/HinkalWebViewWorker.cjs +98 -0
  243. package/react-native/HinkalWebViewWorker.d.ts +2 -0
  244. package/react-native/HinkalWebViewWorker.mjs +174 -0
  245. package/react-native/bridge/HinkalRNWorker.cjs +1 -0
  246. package/react-native/bridge/HinkalRNWorker.d.ts +13 -0
  247. package/react-native/bridge/HinkalRNWorker.mjs +26 -0
  248. package/react-native/bridge/serialization.utils.cjs +1 -0
  249. package/react-native/bridge/serialization.utils.d.ts +3 -0
  250. package/react-native/bridge/serialization.utils.mjs +13 -0
  251. package/react-native/metro-config.js +90 -0
  252. package/react-native/shims/circomlibjs-hinkal-fork.js +14 -0
  253. package/react-native/shims/circomlibjs.js +15 -0
  254. package/react-native/shims/constants.js +7 -0
  255. package/react-native/shims/crypto.js +103 -0
  256. package/react-native/shims/ffjavascript.js +5 -0
  257. package/react-native/shims/fs.js +5 -0
  258. package/react-native/shims/globals.js +10 -0
  259. package/react-native/shims/idb-keyval.js +75 -0
  260. package/react-native/shims/multiformats.js +1 -0
  261. package/react-native/shims/os.js +7 -0
  262. package/react-native/shims/path.js +11 -0
  263. package/react-native/shims/readline.js +6 -0
  264. package/react-native/shims/snarkjs.js +21 -0
  265. package/react-native/shims/url.js +5 -0
  266. package/react-native/shims/web-worker.js +7 -0
  267. package/react-native/shims/worker_threads.js +6 -0
  268. package/react-native/shims.d.ts +16 -0
  269. package/react-native/workerCDNUrls.cjs +1 -0
  270. package/react-native/workerCDNUrls.d.ts +2 -0
  271. package/react-native/workerCDNUrls.mjs +14 -0
  272. package/sdk/package.json.cjs +1 -0
  273. package/sdk/package.json.mjs +130 -0
  274. package/services/Hinkal.cjs +1 -1
  275. package/services/Hinkal.d.ts +6 -5
  276. package/services/Hinkal.mjs +50 -48
  277. package/types/IHinkal.d.ts +6 -5
  278. package/common/src/API/kycCalls.cjs +0 -1
  279. package/common/src/API/kycCalls.d.ts +0 -14
  280. package/common/src/API/kycCalls.mjs +0 -26
  281. package/common/src/constants/assets.constants.cjs +0 -1
  282. package/common/src/constants/assets.constants.d.ts +0 -13
  283. package/common/src/constants/assets.constants.mjs +0 -4
  284. package/common/src/constants/kyc.constants.cjs +0 -1
  285. package/common/src/constants/kyc.constants.d.ts +0 -29
  286. package/common/src/constants/kyc.constants.mjs +0 -126
  287. package/common/src/constants/token.limits.constants.cjs +0 -1
  288. package/common/src/constants/token.limits.constants.d.ts +0 -5
  289. package/common/src/constants/token.limits.constants.mjs +0 -3
  290. package/common/src/data-structures/Hinkal/HinkalPrivateBalanceController.cjs +0 -1
  291. package/common/src/data-structures/Hinkal/hinkalGetZkMeProvider.cjs +0 -1
  292. package/common/src/data-structures/Hinkal/hinkalGetZkMeProvider.d.ts +0 -28
  293. package/common/src/data-structures/Hinkal/hinkalGetZkMeProvider.mjs +0 -22
  294. package/common/src/externalABIs/BabPassport.json.cjs +0 -1
  295. package/common/src/externalABIs/BabPassport.json.mjs +0 -20
  296. package/common/src/externalABIs/GalxePassport.json.cjs +0 -1
  297. package/common/src/externalABIs/GalxePassport.json.mjs +0 -37
  298. package/common/src/functions/kyc/aiPriseHelper.d.ts +0 -0
  299. package/common/src/functions/kyc/checkTokenLimitsUSD.cjs +0 -1
  300. package/common/src/functions/kyc/checkTokenLimitsUSD.d.ts +0 -1
  301. package/common/src/functions/kyc/checkTokenLimitsUSD.mjs +0 -29
  302. package/common/src/functions/kyc/index.cjs +0 -1
  303. package/common/src/functions/kyc/index.d.ts +0 -3
  304. package/common/src/functions/kyc/index.mjs +0 -3
  305. package/common/src/functions/kyc/openDefaultPassportWindow.cjs +0 -1
  306. package/common/src/functions/kyc/openDefaultPassportWindow.d.ts +0 -1
  307. package/common/src/functions/kyc/openDefaultPassportWindow.mjs +0 -7
  308. package/common/src/functions/kyc/passportHelper.cjs +0 -1
  309. package/common/src/functions/kyc/passportHelper.d.ts +0 -3
  310. package/common/src/functions/kyc/passportHelper.mjs +0 -1
  311. package/common/src/functions/kyc/zkMeHelper.cjs +0 -1
  312. package/common/src/functions/kyc/zkMeHelper.d.ts +0 -4
  313. package/common/src/functions/kyc/zkMeHelper.mjs +0 -42
  314. package/common/src/functions/web3/events/balanceChangedHandler.cjs +0 -1
  315. package/common/src/functions/web3/events/balanceChangedHandler.d.ts +0 -5
  316. package/common/src/functions/web3/events/balanceChangedHandler.mjs +0 -21
  317. package/common/src/types/kyc.types.cjs +0 -1
  318. package/common/src/types/kyc.types.d.ts +0 -41
  319. package/common/src/types/kyc.types.mjs +0 -10
  320. package/common/src/webworker/logError-CmD5XYI9.js +0 -2
  321. package/common/src/webworker/workerProxy-C49-EPZz.js +0 -1
@@ -1,6 +1,6 @@
1
1
  import { zeroAddress as e } from "../../../constants/protocol.constants.mjs";
2
- import { ContractType as t } from "../../../types/ethereum-network.types.mjs";
3
- import { waitLittle as n } from "../../utils/time.utils.mjs";
2
+ import { waitLittle as t } from "../../utils/time.utils.mjs";
3
+ import { ContractType as n } from "../../../types/ethereum-network.types.mjs";
4
4
  import { getContractAddress as r } from "../../utils/getContractAddress.mjs";
5
5
  import { recoverTransactionFromError as i } from "./recoverTransactionFromError.mjs";
6
6
  import { approveTokensToHinkal as a } from "./approveTokensToHinkal.mjs";
@@ -11,7 +11,7 @@ import { ethers as c } from "ethers";
11
11
  var l = async (l, u, d, f, p, m, h, g, _, v = !0, y = !1) => {
12
12
  let b = Array.isArray(d) ? d : [d], x = Array.isArray(f) ? f : [f];
13
13
  if (b.length !== x.length) throw Error("token and amount length mismatch");
14
- let S = l.getContractWithSigner(u, t.HinkalContract), C = await l.getEthereumAddressByChain(u), w = g ?? S, T = _ ?? S, E = "transact", D = x.findIndex(({ erc20TokenAddress: t }) => t === e), O = x.some(({ erc20TokenAddress: t }) => t !== e), k = D === -1 ? 0n : b[D], A = l.getProviderAdapter(u), j = await A.supportsBatchCall?.(u);
14
+ let S = l.getContractWithSigner(u, n.HinkalContract), C = await l.getEthereumAddressByChain(u), w = g ?? S, T = _ ?? S, E = "transact", D = x.findIndex(({ erc20TokenAddress: t }) => t === e), O = x.some(({ erc20TokenAddress: t }) => t !== e), k = D === -1 ? 0n : b[D], A = l.getProviderAdapter(u), j = await A.supportsBatchCall?.(u);
15
15
  if (!y && O && j && A.sendBatchCallsTransaction) {
16
16
  let e = o(x.map((e) => e.erc20TokenAddress), b, r(w), T, p, h, m, k);
17
17
  return await A.sendBatchCallsTransaction(u, e);
@@ -44,7 +44,7 @@ var l = async (l, u, d, f, p, m, h, g, _, v = !0, y = !1) => {
44
44
  console.log("hinkalDeposit: gas estimation error", { err: e });
45
45
  }
46
46
  let I = N && N >= 0 ? Math.ceil(N * 12 / 10) : void 0;
47
- I && (P[5].gasLimit = I), await n();
47
+ I && (P[5].gasLimit = I), await t();
48
48
  let L;
49
49
  try {
50
50
  L = y ? await T[E].populateTransaction(...P) : await T[E](...P);
@@ -1 +1 @@
1
- const e=require(`../../../constants/protocol.constants.cjs`),t=require(`../../../types/ethereum-network.types.cjs`),n=require(`../../utils/caseInsensitive.utils.cjs`),r=require(`../../utils/time.utils.cjs`),i=require(`../../../externalABIs/index.cjs`);var a=async(i,a,o,s,c,l=30,u=1e3)=>{let d=c.filter(({tokenAddress:t,requiredAmount:r})=>r>0n&&!n.caseInsensitiveEqual(t,e.zeroAddress));if(d.length===0)return;let f=d.map(({tokenAddress:e})=>i.getContractWithSigner(a,t.ContractType.ERC20Contract,e));for(let e=0;e<l;e+=1){let e=!0;for(let t=0;t<d.length;t+=1){let{requiredAmount:n}=d[t],r=f[t];if(BigInt(await r.allowance(o,s))<n){e=!1;break}}if(e)break;await r.waitLittle(u)}},o=async(t,a,o,s,c=30,l=1e3)=>{let u=s.filter(({tokenAddress:t,requiredAmount:r})=>r>0n&&!n.caseInsensitiveEqual(t,e.zeroAddress)&&!!t);if(u.length===0)return;let d=await Promise.all(u.map(async({tokenAddress:e})=>t.contract(i.ERC20ABI,e)));for(let e=0;e<c;e+=1){let e=!0;for(let t=0;t<u.length;t+=1){let{requiredAmount:n}=u[t],r=await d[t].allowance(a,o).call({from:a});if(BigInt(String(r))<n){e=!1;break}}if(e)break;await r.waitLittle(l)}};exports.waitForErc20Approvals=a,exports.waitForTronErc20Approvals=o;
1
+ const e=require(`../../../constants/protocol.constants.cjs`),t=require(`../../utils/caseInsensitive.utils.cjs`),n=require(`../../utils/time.utils.cjs`),r=require(`../../../types/ethereum-network.types.cjs`),i=require(`../../../externalABIs/index.cjs`);var a=async(i,a,o,s,c,l=30,u=1e3)=>{let d=c.filter(({tokenAddress:n,requiredAmount:r})=>r>0n&&!t.caseInsensitiveEqual(n,e.zeroAddress));if(d.length===0)return;let f=d.map(({tokenAddress:e})=>i.getContractWithSigner(a,r.ContractType.ERC20Contract,e));for(let e=0;e<l;e+=1){let e=!0;for(let t=0;t<d.length;t+=1){let{requiredAmount:n}=d[t],r=f[t];if(BigInt(await r.allowance(o,s))<n){e=!1;break}}if(e)break;await n.waitLittle(u)}},o=async(r,a,o,s,c=30,l=1e3)=>{let u=s.filter(({tokenAddress:n,requiredAmount:r})=>r>0n&&!t.caseInsensitiveEqual(n,e.zeroAddress)&&!!n);if(u.length===0)return;let d=await Promise.all(u.map(async({tokenAddress:e})=>r.contract(i.ERC20ABI,e)));for(let e=0;e<c;e+=1){let e=!0;for(let t=0;t<u.length;t+=1){let{requiredAmount:n}=u[t],r=await d[t].allowance(a,o).call({from:a});if(BigInt(String(r))<n){e=!1;break}}if(e)break;await n.waitLittle(l)}};exports.waitForErc20Approvals=a,exports.waitForTronErc20Approvals=o;
@@ -1,13 +1,13 @@
1
1
  import { zeroAddress as e } from "../../../constants/protocol.constants.mjs";
2
- import { ContractType as t } from "../../../types/ethereum-network.types.mjs";
3
- import { caseInsensitiveEqual as n } from "../../utils/caseInsensitive.utils.mjs";
4
- import { waitLittle as r } from "../../utils/time.utils.mjs";
2
+ import { caseInsensitiveEqual as t } from "../../utils/caseInsensitive.utils.mjs";
3
+ import { waitLittle as n } from "../../utils/time.utils.mjs";
4
+ import { ContractType as r } from "../../../types/ethereum-network.types.mjs";
5
5
  import { ERC20ABI as i } from "../../../externalABIs/index.mjs";
6
6
  //#region libs/shared/common/src/functions/web3/functionCalls/waitForErc20Approvals.ts
7
7
  var a = async (i, a, o, s, c, l = 30, u = 1e3) => {
8
- let d = c.filter(({ tokenAddress: t, requiredAmount: r }) => r > 0n && !n(t, e));
8
+ let d = c.filter(({ tokenAddress: n, requiredAmount: r }) => r > 0n && !t(n, e));
9
9
  if (d.length === 0) return;
10
- let f = d.map(({ tokenAddress: e }) => i.getContractWithSigner(a, t.ERC20Contract, e));
10
+ let f = d.map(({ tokenAddress: e }) => i.getContractWithSigner(a, r.ERC20Contract, e));
11
11
  for (let e = 0; e < l; e += 1) {
12
12
  let e = !0;
13
13
  for (let t = 0; t < d.length; t += 1) {
@@ -18,12 +18,12 @@ var a = async (i, a, o, s, c, l = 30, u = 1e3) => {
18
18
  }
19
19
  }
20
20
  if (e) break;
21
- await r(u);
21
+ await n(u);
22
22
  }
23
- }, o = async (t, a, o, s, c = 30, l = 1e3) => {
24
- let u = s.filter(({ tokenAddress: t, requiredAmount: r }) => r > 0n && !n(t, e) && !!t);
23
+ }, o = async (r, a, o, s, c = 30, l = 1e3) => {
24
+ let u = s.filter(({ tokenAddress: n, requiredAmount: r }) => r > 0n && !t(n, e) && !!n);
25
25
  if (u.length === 0) return;
26
- let d = await Promise.all(u.map(async ({ tokenAddress: e }) => t.contract(i, e)));
26
+ let d = await Promise.all(u.map(async ({ tokenAddress: e }) => r.contract(i, e)));
27
27
  for (let e = 0; e < c; e += 1) {
28
28
  let e = !0;
29
29
  for (let t = 0; t < u.length; t += 1) {
@@ -34,7 +34,7 @@ var a = async (i, a, o, s, c, l = 30, u = 1e3) => {
34
34
  }
35
35
  }
36
36
  if (e) break;
37
- await r(l);
37
+ await n(l);
38
38
  }
39
39
  };
40
40
  //#endregion
@@ -1 +1 @@
1
- require(`./etherFunctions.cjs`),require(`./events/getInputUtxoAndBalance.cjs`),require(`./events/getShieldedBalance.cjs`),require(`./getSolanaPriorityFee.cjs`),require(`./events/balanceChangedHandler.cjs`),require(`./events/index.cjs`),require(`./uniswapAPI.cjs`),require(`./odosAPI.cjs`),require(`./oneInchAPI.cjs`),require(`./lifiAPI.cjs`),require(`./okxAPI.cjs`),require(`./runContractFunction.cjs`),require(`./getTokenHolder.cjs`),require(`./EIP-712.cjs`),require(`./signAndSendSerializedTransaction.cjs`),require(`./connectors.utils.cjs`);
1
+ require(`./etherFunctions.cjs`),require(`./events/getInputUtxoAndBalance.cjs`),require(`./events/getShieldedBalance.cjs`),require(`./getSolanaPriorityFee.cjs`),require(`./events/index.cjs`),require(`./uniswapAPI.cjs`),require(`./odosAPI.cjs`),require(`./oneInchAPI.cjs`),require(`./lifiAPI.cjs`),require(`./okxAPI.cjs`),require(`./runContractFunction.cjs`),require(`./getTokenHolder.cjs`),require(`./EIP-712.cjs`),require(`./signAndSendSerializedTransaction.cjs`),require(`./connectors.utils.cjs`);
@@ -2,7 +2,6 @@ import "./etherFunctions.mjs";
2
2
  import "./events/getInputUtxoAndBalance.mjs";
3
3
  import "./events/getShieldedBalance.mjs";
4
4
  import "./getSolanaPriorityFee.mjs";
5
- import "./events/balanceChangedHandler.mjs";
6
5
  import "./events/index.mjs";
7
6
  import "./uniswapAPI.mjs";
8
7
  import "./odosAPI.mjs";
@@ -1 +1 @@
1
- const e=require(`../../constants/chains.constants.cjs`),t=require(`../../constants/protocol.constants.cjs`),n=require(`../../error-handling/error-codes.constants.cjs`),r=require(`./etherFunctions.cjs`),i=require(`../utils/tron.utils.cjs`),a=require(`../../constants/lifi.constants.cjs`),o=require(`../../API/callLifiAPI.cjs`);var s=async(s,c,l,u,d,f)=>{try{let n=r.getAmountInWei(s,l),p=e.isTronLike(c.chainId),{lifiResponse:m}=await o.callLifiAPI({fromChain:a.getLifiChainId(s.chainId),toChain:a.getLifiChainId(c.chainId),fromToken:s.erc20TokenAddress,toToken:p?i.toTronBase58IfHex(c.erc20TokenAddress):c.erc20TokenAddress,fromAddress:d,fromAmount:n.toString(),order:`FASTEST`,slippage:u,...f&&{toAddress:p?i.toTronBase58IfHex(f):f}});if(e.isSolanaLike(s.chainId))return{lifiDataValue:m.transactionRequest.data,outSwapAmountValue:BigInt(m.estimate.toAmount),extraNativeTokenFee:0n};let h=BigInt(m.transactionRequest.value||`0`);return{lifiDataValue:m.transactionRequest.data,outSwapAmountValue:BigInt(m.estimate.toAmount),extraNativeTokenFee:s.erc20TokenAddress===t.zeroAddress?h-n:h}}catch{throw Error(n.transactionErrorCodes.NO_LIFI_PRICE)}};exports.getLifiPrice=s;
1
+ require(`../../constants/chains.constants.cjs`),require(`../../constants/protocol.constants.cjs`),require(`../../error-handling/error-codes.constants.cjs`),require(`./etherFunctions.cjs`),require(`../utils/tron.utils.cjs`),require(`../../constants/lifi.constants.cjs`),require(`../../API/callLifiAPI.cjs`);
@@ -1,38 +1,7 @@
1
- import { isSolanaLike as e, isTronLike as t } from "../../constants/chains.constants.mjs";
2
- import { zeroAddress as n } from "../../constants/protocol.constants.mjs";
3
- import { transactionErrorCodes as r } from "../../error-handling/error-codes.constants.mjs";
4
- import { getAmountInWei as i } from "./etherFunctions.mjs";
5
- import { toTronBase58IfHex as a } from "../utils/tron.utils.mjs";
6
- import { getLifiChainId as o } from "../../constants/lifi.constants.mjs";
7
- import { callLifiAPI as s } from "../../API/callLifiAPI.mjs";
8
- //#region libs/shared/common/src/functions/web3/lifiAPI.ts
9
- var c = async (c, l, u, d, f, p) => {
10
- try {
11
- let r = i(c, u), m = t(l.chainId), { lifiResponse: h } = await s({
12
- fromChain: o(c.chainId),
13
- toChain: o(l.chainId),
14
- fromToken: c.erc20TokenAddress,
15
- toToken: m ? a(l.erc20TokenAddress) : l.erc20TokenAddress,
16
- fromAddress: f,
17
- fromAmount: r.toString(),
18
- order: "FASTEST",
19
- slippage: d,
20
- ...p && { toAddress: m ? a(p) : p }
21
- });
22
- if (e(c.chainId)) return {
23
- lifiDataValue: h.transactionRequest.data,
24
- outSwapAmountValue: BigInt(h.estimate.toAmount),
25
- extraNativeTokenFee: 0n
26
- };
27
- let g = BigInt(h.transactionRequest.value || "0");
28
- return {
29
- lifiDataValue: h.transactionRequest.data,
30
- outSwapAmountValue: BigInt(h.estimate.toAmount),
31
- extraNativeTokenFee: c.erc20TokenAddress === n ? g - r : g
32
- };
33
- } catch {
34
- throw Error(r.NO_LIFI_PRICE);
35
- }
36
- };
37
- //#endregion
38
- export { c as getLifiPrice };
1
+ import "../../constants/chains.constants.mjs";
2
+ import "../../constants/protocol.constants.mjs";
3
+ import "../../error-handling/error-codes.constants.mjs";
4
+ import "./etherFunctions.mjs";
5
+ import "../utils/tron.utils.mjs";
6
+ import "../../constants/lifi.constants.mjs";
7
+ import "../../API/callLifiAPI.mjs";
@@ -1 +1 @@
1
- const e=require(`../../constants/protocol.constants.cjs`),t=require(`../../types/ethereum-network.types.cjs`),n=require(`../../error-handling/error-codes.constants.cjs`),r=require(`./etherFunctions.cjs`);require(`../../types/index.cjs`);const i=require(`../../error-handling/logger.cjs`);require(`../../error-handling/index.cjs`);const a=require(`./getContractMetadata.cjs`);require(`../../constants/index.cjs`);const o=require(`../../API/callOneInchAPI.cjs`);var s=async(s,c,l,u,d=.7)=>{try{let n=await o.callOneInchAPI(s,{fromTokenAddress:c.erc20TokenAddress===e.zeroAddress?e.oneInchZeroAddress:c.erc20TokenAddress,toTokenAddress:l.erc20TokenAddress===e.zeroAddress?e.oneInchZeroAddress:l.erc20TokenAddress,fromAddress:e.zeroAddress,destReceiver:a.getContractMetadata(t.ContractType.OneInchExternalActionContract,s).address,amount:r.getAmountInWei(c,u),slippage:d,disableEstimate:!0,allowPartialFill:!1});if(!n||!n.tx)throw Error(`OneInch API price fetch error`);return{outSwapAmountValue:BigInt(n.toAmount),oneInchDataValue:n.tx.data}}catch(e){throw i.Logger.log({error:e}),Error(n.transactionErrorCodes.NO_ONEINCH_PRICE)}};exports.getOneInchPrice=s;
1
+ const e=require(`../../constants/protocol.constants.cjs`),t=require(`../../error-handling/error-codes.constants.cjs`),n=require(`./etherFunctions.cjs`),r=require(`../../types/ethereum-network.types.cjs`);require(`../../types/index.cjs`);const i=require(`../../error-handling/logger.cjs`);require(`../../error-handling/index.cjs`);const a=require(`./getContractMetadata.cjs`);require(`../../constants/index.cjs`);const o=require(`../../API/callOneInchAPI.cjs`);var s=async(s,c,l,u,d=.7)=>{try{let t=await o.callOneInchAPI(s,{fromTokenAddress:c.erc20TokenAddress===e.zeroAddress?e.oneInchZeroAddress:c.erc20TokenAddress,toTokenAddress:l.erc20TokenAddress===e.zeroAddress?e.oneInchZeroAddress:l.erc20TokenAddress,fromAddress:e.zeroAddress,destReceiver:a.getContractMetadata(r.ContractType.OneInchExternalActionContract,s).address,amount:n.getAmountInWei(c,u),slippage:d,disableEstimate:!0,allowPartialFill:!1});if(!t||!t.tx)throw Error(`OneInch API price fetch error`);return{outSwapAmountValue:BigInt(t.toAmount),oneInchDataValue:t.tx.data}}catch(e){throw i.Logger.log({error:e}),Error(t.transactionErrorCodes.NO_ONEINCH_PRICE)}};exports.getOneInchPrice=s;
@@ -1,7 +1,7 @@
1
1
  import { oneInchZeroAddress as e, zeroAddress as t } from "../../constants/protocol.constants.mjs";
2
- import { ContractType as n } from "../../types/ethereum-network.types.mjs";
3
- import { transactionErrorCodes as r } from "../../error-handling/error-codes.constants.mjs";
4
- import { getAmountInWei as i } from "./etherFunctions.mjs";
2
+ import { transactionErrorCodes as n } from "../../error-handling/error-codes.constants.mjs";
3
+ import { getAmountInWei as r } from "./etherFunctions.mjs";
4
+ import { ContractType as i } from "../../types/ethereum-network.types.mjs";
5
5
  import "../../types/index.mjs";
6
6
  import { Logger as a } from "../../error-handling/logger.mjs";
7
7
  import "../../error-handling/index.mjs";
@@ -11,23 +11,23 @@ import { callOneInchAPI as s } from "../../API/callOneInchAPI.mjs";
11
11
  //#region libs/shared/common/src/functions/web3/oneInchAPI.ts
12
12
  var c = async (c, l, u, d, f = .7) => {
13
13
  try {
14
- let r = await s(c, {
14
+ let n = await s(c, {
15
15
  fromTokenAddress: l.erc20TokenAddress === t ? e : l.erc20TokenAddress,
16
16
  toTokenAddress: u.erc20TokenAddress === t ? e : u.erc20TokenAddress,
17
17
  fromAddress: t,
18
- destReceiver: o(n.OneInchExternalActionContract, c).address,
19
- amount: i(l, d),
18
+ destReceiver: o(i.OneInchExternalActionContract, c).address,
19
+ amount: r(l, d),
20
20
  slippage: f,
21
21
  disableEstimate: !0,
22
22
  allowPartialFill: !1
23
23
  });
24
- if (!r || !r.tx) throw Error("OneInch API price fetch error");
24
+ if (!n || !n.tx) throw Error("OneInch API price fetch error");
25
25
  return {
26
- outSwapAmountValue: BigInt(r.toAmount),
27
- oneInchDataValue: r.tx.data
26
+ outSwapAmountValue: BigInt(n.toAmount),
27
+ oneInchDataValue: n.tx.data
28
28
  };
29
29
  } catch (e) {
30
- throw a.log({ error: e }), Error(r.NO_ONEINCH_PRICE);
30
+ throw a.log({ error: e }), Error(n.NO_ONEINCH_PRICE);
31
31
  }
32
32
  };
33
33
  //#endregion
@@ -1 +1 @@
1
- require(`../../../../_virtual/_rolldown/runtime.cjs`);const e=require(`../../constants/chains.constants.cjs`),t=require(`../../constants/protocol.constants.cjs`),n=require(`../../types/ethereum-network.types.cjs`),r=require(`../../error-handling/error-codes.constants.cjs`),i=require(`./etherFunctions.cjs`);require(`../../types/index.cjs`);const a=require(`../../error-handling/logError.cjs`);require(`../../error-handling/index.cjs`),require(`../../constants/index.cjs`);let o=require(`ethers`);var s=async(e,n,i,a)=>{let o=(await Promise.all([100,500,3e3,1e4].map(async e=>({poolAddress:await n.getPool(i,a,e),fee:e})))).filter(({poolAddress:e})=>e!==t.zeroAddress),s=await Promise.all(o.map(async t=>({poolAddress:t.poolAddress,fee:t.fee,token1Balance:await e.balanceOf(t.poolAddress)}))),c=s.map(e=>e.token1Balance).reduce((e,t)=>t>=e?t:e,0n);if(c===0n)throw Error(r.transactionErrorCodes.UNISWAP_NOT_ENOUGH_LIQUIDITY);return s.find(e=>e.token1Balance===c)},c=async(t,r,i,o,s,c)=>{try{if(!e.networkRegistry[r].quoterV2Address)throw Error(`No Quoter Contract Provided`);return(await t.getContractWithFetcherByChainId(r,n.ContractType.UniswapV3QuoterContract,e.networkRegistry[r].quoterV2Address).quoteExactInputSingle.staticCall({tokenIn:i.wrappedErc20TokenAddress??i.erc20TokenAddress,tokenOut:o.wrappedErc20TokenAddress??o.erc20TokenAddress,fee:s,amountIn:c,sqrtPriceLimitX96:0})).amountOut}catch(e){throw a.logError(e),e}},l=async(t,r,i,a)=>{try{let o=t.getContractWithFetcherByChainId(r,n.ContractType.UniswapV3FactoryContract,e.networkRegistry[r].uniswapV3FactoryAddress),{fee:c}=await s(t.getContractWithFetcherByChainId(r,n.ContractType.ERC20Contract,a.wrappedErc20TokenAddress??a.erc20TokenAddress),o,i.wrappedErc20TokenAddress??i.erc20TokenAddress,a.wrappedErc20TokenAddress??a.erc20TokenAddress);return c}catch(e){throw console.log(`Error in getUniswapFee`,e),e}},u=async(e,t,n,a,s)=>{try{let r=await l(e,t,a,s),u=o.ethers.AbiCoder.defaultAbiCoder().encode([`uint24`],[r]);return{tokenPrice:await c(e,t,a,s,r,i.getAmountInWei(a,n)),poolFee:u}}catch{throw Error(r.transactionErrorCodes.NO_UNISWAP_PRICE)}};exports.getUniswapFee=l,exports.getUniswapPrice=u,exports.getUniswapPriceHelper=c,exports.searchPoolAndFee=s;
1
+ require(`../../../../_virtual/_rolldown/runtime.cjs`);const e=require(`../../constants/chains.constants.cjs`),t=require(`../../constants/protocol.constants.cjs`),n=require(`../../error-handling/error-codes.constants.cjs`),r=require(`./etherFunctions.cjs`),i=require(`../../types/ethereum-network.types.cjs`);require(`../../types/index.cjs`);const a=require(`../../error-handling/logError.cjs`);require(`../../error-handling/index.cjs`),require(`../../constants/index.cjs`);let o=require(`ethers`);var s=async(e,r,i,a)=>{let o=(await Promise.all([100,500,3e3,1e4].map(async e=>({poolAddress:await r.getPool(i,a,e),fee:e})))).filter(({poolAddress:e})=>e!==t.zeroAddress),s=await Promise.all(o.map(async t=>({poolAddress:t.poolAddress,fee:t.fee,token1Balance:await e.balanceOf(t.poolAddress)}))),c=s.map(e=>e.token1Balance).reduce((e,t)=>t>=e?t:e,0n);if(c===0n)throw Error(n.transactionErrorCodes.UNISWAP_NOT_ENOUGH_LIQUIDITY);return s.find(e=>e.token1Balance===c)},c=async(t,n,r,o,s,c)=>{try{if(!e.networkRegistry[n].quoterV2Address)throw Error(`No Quoter Contract Provided`);return(await t.getContractWithFetcherByChainId(n,i.ContractType.UniswapV3QuoterContract,e.networkRegistry[n].quoterV2Address).quoteExactInputSingle.staticCall({tokenIn:r.wrappedErc20TokenAddress??r.erc20TokenAddress,tokenOut:o.wrappedErc20TokenAddress??o.erc20TokenAddress,fee:s,amountIn:c,sqrtPriceLimitX96:0})).amountOut}catch(e){throw a.logError(e),e}},l=async(t,n,r,a)=>{try{let o=t.getContractWithFetcherByChainId(n,i.ContractType.UniswapV3FactoryContract,e.networkRegistry[n].uniswapV3FactoryAddress),{fee:c}=await s(t.getContractWithFetcherByChainId(n,i.ContractType.ERC20Contract,a.wrappedErc20TokenAddress??a.erc20TokenAddress),o,r.wrappedErc20TokenAddress??r.erc20TokenAddress,a.wrappedErc20TokenAddress??a.erc20TokenAddress);return c}catch(e){throw console.log(`Error in getUniswapFee`,e),e}},u=async(e,t,i,a,s)=>{try{let n=await l(e,t,a,s),u=o.ethers.AbiCoder.defaultAbiCoder().encode([`uint24`],[n]);return{tokenPrice:await c(e,t,a,s,n,r.getAmountInWei(a,i)),poolFee:u}}catch{throw Error(n.transactionErrorCodes.NO_UNISWAP_PRICE)}};exports.getUniswapFee=l,exports.getUniswapPrice=u,exports.getUniswapPriceHelper=c,exports.searchPoolAndFee=s;
@@ -1,35 +1,35 @@
1
1
  import { networkRegistry as e } from "../../constants/chains.constants.mjs";
2
2
  import { zeroAddress as t } from "../../constants/protocol.constants.mjs";
3
- import { ContractType as n } from "../../types/ethereum-network.types.mjs";
4
- import { transactionErrorCodes as r } from "../../error-handling/error-codes.constants.mjs";
5
- import { getAmountInWei as i } from "./etherFunctions.mjs";
3
+ import { transactionErrorCodes as n } from "../../error-handling/error-codes.constants.mjs";
4
+ import { getAmountInWei as r } from "./etherFunctions.mjs";
5
+ import { ContractType as i } from "../../types/ethereum-network.types.mjs";
6
6
  import "../../types/index.mjs";
7
7
  import { logError as a } from "../../error-handling/logError.mjs";
8
8
  import "../../error-handling/index.mjs";
9
9
  import "../../constants/index.mjs";
10
10
  import { ethers as o } from "ethers";
11
11
  //#region libs/shared/common/src/functions/web3/uniswapAPI.ts
12
- var s = async (e, n, i, a) => {
12
+ var s = async (e, r, i, a) => {
13
13
  let o = (await Promise.all([
14
14
  100,
15
15
  500,
16
16
  3e3,
17
17
  1e4
18
18
  ].map(async (e) => ({
19
- poolAddress: await n.getPool(i, a, e),
19
+ poolAddress: await r.getPool(i, a, e),
20
20
  fee: e
21
21
  })))).filter(({ poolAddress: e }) => e !== t), s = await Promise.all(o.map(async (t) => ({
22
22
  poolAddress: t.poolAddress,
23
23
  fee: t.fee,
24
24
  token1Balance: await e.balanceOf(t.poolAddress)
25
25
  }))), c = s.map((e) => e.token1Balance).reduce((e, t) => t >= e ? t : e, 0n);
26
- if (c === 0n) throw Error(r.UNISWAP_NOT_ENOUGH_LIQUIDITY);
26
+ if (c === 0n) throw Error(n.UNISWAP_NOT_ENOUGH_LIQUIDITY);
27
27
  return s.find((e) => e.token1Balance === c);
28
- }, c = async (t, r, i, o, s, c) => {
28
+ }, c = async (t, n, r, o, s, c) => {
29
29
  try {
30
- if (!e[r].quoterV2Address) throw Error("No Quoter Contract Provided");
31
- return (await t.getContractWithFetcherByChainId(r, n.UniswapV3QuoterContract, e[r].quoterV2Address).quoteExactInputSingle.staticCall({
32
- tokenIn: i.wrappedErc20TokenAddress ?? i.erc20TokenAddress,
30
+ if (!e[n].quoterV2Address) throw Error("No Quoter Contract Provided");
31
+ return (await t.getContractWithFetcherByChainId(n, i.UniswapV3QuoterContract, e[n].quoterV2Address).quoteExactInputSingle.staticCall({
32
+ tokenIn: r.wrappedErc20TokenAddress ?? r.erc20TokenAddress,
33
33
  tokenOut: o.wrappedErc20TokenAddress ?? o.erc20TokenAddress,
34
34
  fee: s,
35
35
  amountIn: c,
@@ -38,22 +38,22 @@ var s = async (e, n, i, a) => {
38
38
  } catch (e) {
39
39
  throw a(e), e;
40
40
  }
41
- }, l = async (t, r, i, a) => {
41
+ }, l = async (t, n, r, a) => {
42
42
  try {
43
- let o = t.getContractWithFetcherByChainId(r, n.UniswapV3FactoryContract, e[r].uniswapV3FactoryAddress), { fee: c } = await s(t.getContractWithFetcherByChainId(r, n.ERC20Contract, a.wrappedErc20TokenAddress ?? a.erc20TokenAddress), o, i.wrappedErc20TokenAddress ?? i.erc20TokenAddress, a.wrappedErc20TokenAddress ?? a.erc20TokenAddress);
43
+ let o = t.getContractWithFetcherByChainId(n, i.UniswapV3FactoryContract, e[n].uniswapV3FactoryAddress), { fee: c } = await s(t.getContractWithFetcherByChainId(n, i.ERC20Contract, a.wrappedErc20TokenAddress ?? a.erc20TokenAddress), o, r.wrappedErc20TokenAddress ?? r.erc20TokenAddress, a.wrappedErc20TokenAddress ?? a.erc20TokenAddress);
44
44
  return c;
45
45
  } catch (e) {
46
46
  throw console.log("Error in getUniswapFee", e), e;
47
47
  }
48
- }, u = async (e, t, n, a, s) => {
48
+ }, u = async (e, t, i, a, s) => {
49
49
  try {
50
- let r = await l(e, t, a, s), u = o.AbiCoder.defaultAbiCoder().encode(["uint24"], [r]);
50
+ let n = await l(e, t, a, s), u = o.AbiCoder.defaultAbiCoder().encode(["uint24"], [n]);
51
51
  return {
52
- tokenPrice: await c(e, t, a, s, r, i(a, n)),
52
+ tokenPrice: await c(e, t, a, s, n, r(a, i)),
53
53
  poolFee: u
54
54
  };
55
55
  } catch {
56
- throw Error(r.NO_UNISWAP_PRICE);
56
+ throw Error(n.NO_UNISWAP_PRICE);
57
57
  }
58
58
  };
59
59
  //#endregion
@@ -0,0 +1 @@
1
+ require(`../../../_virtual/_rolldown/runtime.cjs`);let e=require(`async-mutex`);var t=class{readRegistryMutex=new e.Mutex;writeMutex=new e.Mutex;readers=0;writeMutexReleaser=null;async runShared(e){await this.acquireRead();try{return await e()}finally{await this.releaseRead()}}async runExclusive(e){return this.writeMutex.runExclusive(async()=>e(!0))}async acquireRead(){await this.readRegistryMutex.runExclusive(async()=>{this.readers+=1,this.readers===1&&(this.writeMutexReleaser=await this.writeMutex.acquire())})}async releaseRead(){await this.readRegistryMutex.runExclusive(async()=>{--this.readers,this.readers===0&&this.writeMutexReleaser&&(this.writeMutexReleaser(),this.writeMutexReleaser=null)})}};exports.ChainBalanceRwLock=t;
@@ -0,0 +1,18 @@
1
+ export interface ChainBalanceFetchingLock {
2
+ /** Many callers at once */
3
+ runShared<T>(callback: () => PromiseLike<T> | T): Promise<T>;
4
+ /** One caller at a time */
5
+ runExclusive<T>(callback: (value: boolean) => PromiseLike<T> | T): Promise<T>;
6
+ }
7
+ export declare class ChainBalanceRwLock implements ChainBalanceFetchingLock {
8
+ /** Protects the readers counter and writeMutex handoff between readers. */
9
+ private readonly readRegistryMutex;
10
+ /** Exclusive access for writers; held across all active readers. */
11
+ private readonly writeMutex;
12
+ private readers;
13
+ private writeMutexReleaser;
14
+ runShared<T>(callback: () => PromiseLike<T> | T): Promise<T>;
15
+ runExclusive<T>(callback: (value: boolean) => PromiseLike<T> | T): Promise<T>;
16
+ private acquireRead;
17
+ private releaseRead;
18
+ }
@@ -0,0 +1,31 @@
1
+ import { Mutex as e } from "async-mutex";
2
+ //#region libs/shared/common/src/mutexes/chainBalanceRwLock.ts
3
+ var t = class {
4
+ readRegistryMutex = new e();
5
+ writeMutex = new e();
6
+ readers = 0;
7
+ writeMutexReleaser = null;
8
+ async runShared(e) {
9
+ await this.acquireRead();
10
+ try {
11
+ return await e();
12
+ } finally {
13
+ await this.releaseRead();
14
+ }
15
+ }
16
+ async runExclusive(e) {
17
+ return this.writeMutex.runExclusive(async () => e(!0));
18
+ }
19
+ async acquireRead() {
20
+ await this.readRegistryMutex.runExclusive(async () => {
21
+ this.readers += 1, this.readers === 1 && (this.writeMutexReleaser = await this.writeMutex.acquire());
22
+ });
23
+ }
24
+ async releaseRead() {
25
+ await this.readRegistryMutex.runExclusive(async () => {
26
+ --this.readers, this.readers === 0 && this.writeMutexReleaser && (this.writeMutexReleaser(), this.writeMutexReleaser = null);
27
+ });
28
+ }
29
+ };
30
+ //#endregion
31
+ export { t as ChainBalanceRwLock };
@@ -1 +1,2 @@
1
1
  export * from './mutex';
2
+ export * from './chainBalanceRwLock';
@@ -1 +1 @@
1
- var e=function(e){return e.LAST_IGNORED_DEPOSIT_BALANCE_1K=`lastIgnoredDepositBalance1K`,e.LAST_IGNORED_DEPOSIT_BALANCE_10K=`lastIgnoredDepositBalance10K`,e.LAST_IGNORED_DEPOSIT_SCAM_TOKENS=`lastIgnoredDepositScamTokens`,e.LAST_IGNORED_DEPOSIT_TRANSACTIONS=`lastIgnoredDepositTransactions`,e.LOCAL_STORAGE_KEY_USER_ANALYTICS_CONSENT=`userAnalyticsConsentPref`,e.PASSWORD_HASH=`passwordHash`,e.LAST_ADDRESS=`lastAddress`,e.AUTO_LOCK_TIME=`autoLockTime`,e.TOKEN_REGISTRY=`tokenRegistry`,e.IS_BALANCE_HIDDEN=`isBalanceHidden`,e.TRANSACTION_STATUS=`transactionStatus`,e.SELECTED_SUB_ACCOUNT_ADDRESS=`selectedSubAccountAddress`,e.GENERATE_PROOF_REMOTELY=`generateProofRemotely`,e.IS_RELAYER_OFF=`isRelayerOff`,e.ONBOARDING_SHOWN=`onboardingShown`,e.GAS_COST_TOKEN=`gasCostToken`,e.PRIVATE_TOKENS=`privateTokens`,e.ALCHEMY_PUBLIC_TOKENS=`alchemyPublicTokens`,e.EVENTS_PUBLIC_TOKENS=`eventsPublicTokens`,e.ARC_PUBLIC_TOKENS=`arcPublicTokens`,e.PUBLIC_TOKENS_LAST_PROCESSED_BLOCKS=`publicTokensLastProcessedBlocks`,e.ACCEPTED_TERMS_OF_SERVICES=`acceptedTermsOfServices`,e.SLIPPAGE_PERCENTAGE=`slippagePercentage`,e.IS_SLIPPAGE_PERCENTAGE_CUSTOM=`isSlippagePercentageCustom`,e.MNEMONIC_PHRASE=`mnemonicPhrase`,e.SOURCE_MNEMONIC_PHRASE=`sourceMnemonicPhrase`,e.SELECTED_WALLET_ENVIRONMENT=`selectedWalletEnvironment`,e.IS_TOOLTIPS_ON=`isTooltipsOn`,e.CONNECTED_ADDRESS=`connectedAddress`,e.CONNECTED_SOLANA_ADDRESS=`connectedSolanaAddress`,e.CONNECTED_SESSIONS=`connectedSessions`,e.TX_ACTIVITY=`tx-activity`,e.EVENTS_PUBLIC_APPROVALS=`eventsPublicApprovals`,e.PUBLIC_APPROVALS_LAST_PROCESSED_BLOCKS=`publicApprovalsLastProcessedBlocks`,e.ACTIVE_SUB_ACCOUNT=`activeSubAccount`,e.SIGNED_MESSAGES=`signedMessages`,e.AUTO_SHIELD_IS_ON=`autoShieldIsOn`,e.MAX_GAS_IN_DOLLAR=`maxGasInDollar`,e.PENDING_SOLANA_SIGNATURES=`pendingSolanaSignatures`,e.ONBOARDING_TEMPORARY_PASSWORD=`onboardingTemporaryPassword`,e.STORAGE_KEY_LAST_SEEN_VERSION=`hinkalLastSeenVersion`,e.HINKAL_GOOGLE_SESSION=`hinkalGoogleSession`,e.IS_CREATE_NEW_PUBLIC_WALLET_ON=`isCreateNewPublicWalletOn`,e.DISGUISED_AS_METAMASK_HOSTS=`disguisedAsMetamaskHosts`,e.CHAIN_ID_FILTER=`chainIdFilter`,e.SIGNATURE=`signature`,e.PUBLIC_ACCOUNT_DETAILS=`publicAccountDetails`,e.IS_NEW_ACCOUNT_MANAGEMENT_SYSTEM=`isNewAccountManagementSystem`,e.SUB_ACCOUNTS_REFRESH_TOKEN=`subAccountsRefreshToken`,e.PRIVATE_SEND_NONCE=`privateSendNonce`,e.PRIVATE_SEND_PENDING_ENCLAVE_UTXOS=`privateSendPendingEnclaveUtxos`,e.SHOULD_SHOW_ANNOUNCEMENT_BANNER=`shouldShowAnnouncementBanner`,e.LAST_SHIELD_TIME=`lastShieldTime`,e.IS_TOUR_COMPLETED=`isTourCompleted`,e.TOUR_CURRENT_STEP=`tourCurrentStep`,e.REVOKE_APPROVALS_IN_PROGRESS=`revokeApprovalsInProgress`,e}({});exports.StorageKeys=e;
1
+ var e=function(e){return e.LAST_IGNORED_DEPOSIT_BALANCE_1K=`lastIgnoredDepositBalance1K`,e.LAST_IGNORED_DEPOSIT_BALANCE_10K=`lastIgnoredDepositBalance10K`,e.LAST_IGNORED_DEPOSIT_SCAM_TOKENS=`lastIgnoredDepositScamTokens`,e.LAST_IGNORED_DEPOSIT_TRANSACTIONS=`lastIgnoredDepositTransactions`,e.LOCAL_STORAGE_KEY_USER_ANALYTICS_CONSENT=`userAnalyticsConsentPref`,e.PASSWORD_HASH=`passwordHash`,e.LAST_ADDRESS=`lastAddress`,e.AUTO_LOCK_TIME=`autoLockTime`,e.TOKEN_REGISTRY=`tokenRegistry`,e.IS_BALANCE_HIDDEN=`isBalanceHidden`,e.TRANSACTION_STATUS=`transactionStatus`,e.SELECTED_SUB_ACCOUNT_ADDRESS=`selectedSubAccountAddress`,e.GENERATE_PROOF_REMOTELY=`generateProofRemotely`,e.IS_RELAYER_OFF=`isRelayerOff`,e.ONBOARDING_SHOWN=`onboardingShown`,e.GAS_COST_TOKEN=`gasCostToken`,e.PRIVATE_TOKENS=`privateTokens`,e.ALCHEMY_PUBLIC_TOKENS=`alchemyPublicTokens`,e.EVENTS_PUBLIC_TOKENS=`eventsPublicTokens`,e.ARC_PUBLIC_TOKENS=`arcPublicTokens`,e.TRON_PUBLIC_TOKENS=`tronPublicTokens`,e.TEMPO_PUBLIC_TOKENS=`tempoPublicTokens`,e.PUBLIC_TOKENS_LAST_PROCESSED_BLOCKS=`publicTokensLastProcessedBlocks`,e.ACCEPTED_TERMS_OF_SERVICES=`acceptedTermsOfServices`,e.SLIPPAGE_PERCENTAGE=`slippagePercentage`,e.IS_SLIPPAGE_PERCENTAGE_CUSTOM=`isSlippagePercentageCustom`,e.MNEMONIC_PHRASE=`mnemonicPhrase`,e.SOURCE_MNEMONIC_PHRASE=`sourceMnemonicPhrase`,e.SELECTED_WALLET_ENVIRONMENT=`selectedWalletEnvironment`,e.IS_TOOLTIPS_ON=`isTooltipsOn`,e.CONNECTED_ADDRESS=`connectedAddress`,e.CONNECTED_SOLANA_ADDRESS=`connectedSolanaAddress`,e.CONNECTED_SESSIONS=`connectedSessions`,e.TX_ACTIVITY=`tx-activity`,e.EVENTS_PUBLIC_APPROVALS=`eventsPublicApprovals`,e.PUBLIC_APPROVALS_LAST_PROCESSED_BLOCKS=`publicApprovalsLastProcessedBlocks`,e.ACTIVE_SUB_ACCOUNT=`activeSubAccount`,e.SIGNED_MESSAGES=`signedMessages`,e.AUTO_SHIELD_IS_ON=`autoShieldIsOn`,e.MAX_GAS_IN_DOLLAR=`maxGasInDollar`,e.PENDING_SOLANA_SIGNATURES=`pendingSolanaSignatures`,e.ONBOARDING_TEMPORARY_PASSWORD=`onboardingTemporaryPassword`,e.STORAGE_KEY_LAST_SEEN_VERSION=`hinkalLastSeenVersion`,e.HINKAL_GOOGLE_SESSION=`hinkalGoogleSession`,e.IS_CREATE_NEW_PUBLIC_WALLET_ON=`isCreateNewPublicWalletOn`,e.DISGUISED_AS_METAMASK_HOSTS=`disguisedAsMetamaskHosts`,e.CHAIN_ID_FILTER=`chainIdFilter`,e.SIGNATURE=`signature`,e.PUBLIC_ACCOUNT_DETAILS=`publicAccountDetails`,e.IS_NEW_ACCOUNT_MANAGEMENT_SYSTEM=`isNewAccountManagementSystem`,e.SUB_ACCOUNTS_REFRESH_TOKEN=`subAccountsRefreshToken`,e.PRIVATE_SEND_NONCE=`privateSendNonce`,e.PRIVATE_SEND_PENDING_ENCLAVE_UTXOS=`privateSendPendingEnclaveUtxos`,e.SHOULD_SHOW_ANNOUNCEMENT_BANNER=`shouldShowAnnouncementBanner`,e.LAST_SHIELD_TIME=`lastShieldTime`,e.IS_TOUR_COMPLETED=`isTourCompleted`,e.TOUR_CURRENT_STEP=`tourCurrentStep`,e.REVOKE_APPROVALS_IN_PROGRESS=`revokeApprovalsInProgress`,e}({});exports.StorageKeys=e;
@@ -19,6 +19,8 @@ export declare enum StorageKeys {
19
19
  ALCHEMY_PUBLIC_TOKENS = "alchemyPublicTokens",
20
20
  EVENTS_PUBLIC_TOKENS = "eventsPublicTokens",
21
21
  ARC_PUBLIC_TOKENS = "arcPublicTokens",
22
+ TRON_PUBLIC_TOKENS = "tronPublicTokens",
23
+ TEMPO_PUBLIC_TOKENS = "tempoPublicTokens",
22
24
  PUBLIC_TOKENS_LAST_PROCESSED_BLOCKS = "publicTokensLastProcessedBlocks",
23
25
  ACCEPTED_TERMS_OF_SERVICES = "acceptedTermsOfServices",
24
26
  SLIPPAGE_PERCENTAGE = "slippagePercentage",
@@ -1,6 +1,6 @@
1
1
  //#region libs/shared/common/src/types/cache.types.ts
2
2
  var e = /* @__PURE__ */ function(e) {
3
- return e.LAST_IGNORED_DEPOSIT_BALANCE_1K = "lastIgnoredDepositBalance1K", e.LAST_IGNORED_DEPOSIT_BALANCE_10K = "lastIgnoredDepositBalance10K", e.LAST_IGNORED_DEPOSIT_SCAM_TOKENS = "lastIgnoredDepositScamTokens", e.LAST_IGNORED_DEPOSIT_TRANSACTIONS = "lastIgnoredDepositTransactions", e.LOCAL_STORAGE_KEY_USER_ANALYTICS_CONSENT = "userAnalyticsConsentPref", e.PASSWORD_HASH = "passwordHash", e.LAST_ADDRESS = "lastAddress", e.AUTO_LOCK_TIME = "autoLockTime", e.TOKEN_REGISTRY = "tokenRegistry", e.IS_BALANCE_HIDDEN = "isBalanceHidden", e.TRANSACTION_STATUS = "transactionStatus", e.SELECTED_SUB_ACCOUNT_ADDRESS = "selectedSubAccountAddress", e.GENERATE_PROOF_REMOTELY = "generateProofRemotely", e.IS_RELAYER_OFF = "isRelayerOff", e.ONBOARDING_SHOWN = "onboardingShown", e.GAS_COST_TOKEN = "gasCostToken", e.PRIVATE_TOKENS = "privateTokens", e.ALCHEMY_PUBLIC_TOKENS = "alchemyPublicTokens", e.EVENTS_PUBLIC_TOKENS = "eventsPublicTokens", e.ARC_PUBLIC_TOKENS = "arcPublicTokens", e.PUBLIC_TOKENS_LAST_PROCESSED_BLOCKS = "publicTokensLastProcessedBlocks", e.ACCEPTED_TERMS_OF_SERVICES = "acceptedTermsOfServices", e.SLIPPAGE_PERCENTAGE = "slippagePercentage", e.IS_SLIPPAGE_PERCENTAGE_CUSTOM = "isSlippagePercentageCustom", e.MNEMONIC_PHRASE = "mnemonicPhrase", e.SOURCE_MNEMONIC_PHRASE = "sourceMnemonicPhrase", e.SELECTED_WALLET_ENVIRONMENT = "selectedWalletEnvironment", e.IS_TOOLTIPS_ON = "isTooltipsOn", e.CONNECTED_ADDRESS = "connectedAddress", e.CONNECTED_SOLANA_ADDRESS = "connectedSolanaAddress", e.CONNECTED_SESSIONS = "connectedSessions", e.TX_ACTIVITY = "tx-activity", e.EVENTS_PUBLIC_APPROVALS = "eventsPublicApprovals", e.PUBLIC_APPROVALS_LAST_PROCESSED_BLOCKS = "publicApprovalsLastProcessedBlocks", e.ACTIVE_SUB_ACCOUNT = "activeSubAccount", e.SIGNED_MESSAGES = "signedMessages", e.AUTO_SHIELD_IS_ON = "autoShieldIsOn", e.MAX_GAS_IN_DOLLAR = "maxGasInDollar", e.PENDING_SOLANA_SIGNATURES = "pendingSolanaSignatures", e.ONBOARDING_TEMPORARY_PASSWORD = "onboardingTemporaryPassword", e.STORAGE_KEY_LAST_SEEN_VERSION = "hinkalLastSeenVersion", e.HINKAL_GOOGLE_SESSION = "hinkalGoogleSession", e.IS_CREATE_NEW_PUBLIC_WALLET_ON = "isCreateNewPublicWalletOn", e.DISGUISED_AS_METAMASK_HOSTS = "disguisedAsMetamaskHosts", e.CHAIN_ID_FILTER = "chainIdFilter", e.SIGNATURE = "signature", e.PUBLIC_ACCOUNT_DETAILS = "publicAccountDetails", e.IS_NEW_ACCOUNT_MANAGEMENT_SYSTEM = "isNewAccountManagementSystem", e.SUB_ACCOUNTS_REFRESH_TOKEN = "subAccountsRefreshToken", e.PRIVATE_SEND_NONCE = "privateSendNonce", e.PRIVATE_SEND_PENDING_ENCLAVE_UTXOS = "privateSendPendingEnclaveUtxos", e.SHOULD_SHOW_ANNOUNCEMENT_BANNER = "shouldShowAnnouncementBanner", e.LAST_SHIELD_TIME = "lastShieldTime", e.IS_TOUR_COMPLETED = "isTourCompleted", e.TOUR_CURRENT_STEP = "tourCurrentStep", e.REVOKE_APPROVALS_IN_PROGRESS = "revokeApprovalsInProgress", e;
3
+ return e.LAST_IGNORED_DEPOSIT_BALANCE_1K = "lastIgnoredDepositBalance1K", e.LAST_IGNORED_DEPOSIT_BALANCE_10K = "lastIgnoredDepositBalance10K", e.LAST_IGNORED_DEPOSIT_SCAM_TOKENS = "lastIgnoredDepositScamTokens", e.LAST_IGNORED_DEPOSIT_TRANSACTIONS = "lastIgnoredDepositTransactions", e.LOCAL_STORAGE_KEY_USER_ANALYTICS_CONSENT = "userAnalyticsConsentPref", e.PASSWORD_HASH = "passwordHash", e.LAST_ADDRESS = "lastAddress", e.AUTO_LOCK_TIME = "autoLockTime", e.TOKEN_REGISTRY = "tokenRegistry", e.IS_BALANCE_HIDDEN = "isBalanceHidden", e.TRANSACTION_STATUS = "transactionStatus", e.SELECTED_SUB_ACCOUNT_ADDRESS = "selectedSubAccountAddress", e.GENERATE_PROOF_REMOTELY = "generateProofRemotely", e.IS_RELAYER_OFF = "isRelayerOff", e.ONBOARDING_SHOWN = "onboardingShown", e.GAS_COST_TOKEN = "gasCostToken", e.PRIVATE_TOKENS = "privateTokens", e.ALCHEMY_PUBLIC_TOKENS = "alchemyPublicTokens", e.EVENTS_PUBLIC_TOKENS = "eventsPublicTokens", e.ARC_PUBLIC_TOKENS = "arcPublicTokens", e.TRON_PUBLIC_TOKENS = "tronPublicTokens", e.TEMPO_PUBLIC_TOKENS = "tempoPublicTokens", e.PUBLIC_TOKENS_LAST_PROCESSED_BLOCKS = "publicTokensLastProcessedBlocks", e.ACCEPTED_TERMS_OF_SERVICES = "acceptedTermsOfServices", e.SLIPPAGE_PERCENTAGE = "slippagePercentage", e.IS_SLIPPAGE_PERCENTAGE_CUSTOM = "isSlippagePercentageCustom", e.MNEMONIC_PHRASE = "mnemonicPhrase", e.SOURCE_MNEMONIC_PHRASE = "sourceMnemonicPhrase", e.SELECTED_WALLET_ENVIRONMENT = "selectedWalletEnvironment", e.IS_TOOLTIPS_ON = "isTooltipsOn", e.CONNECTED_ADDRESS = "connectedAddress", e.CONNECTED_SOLANA_ADDRESS = "connectedSolanaAddress", e.CONNECTED_SESSIONS = "connectedSessions", e.TX_ACTIVITY = "tx-activity", e.EVENTS_PUBLIC_APPROVALS = "eventsPublicApprovals", e.PUBLIC_APPROVALS_LAST_PROCESSED_BLOCKS = "publicApprovalsLastProcessedBlocks", e.ACTIVE_SUB_ACCOUNT = "activeSubAccount", e.SIGNED_MESSAGES = "signedMessages", e.AUTO_SHIELD_IS_ON = "autoShieldIsOn", e.MAX_GAS_IN_DOLLAR = "maxGasInDollar", e.PENDING_SOLANA_SIGNATURES = "pendingSolanaSignatures", e.ONBOARDING_TEMPORARY_PASSWORD = "onboardingTemporaryPassword", e.STORAGE_KEY_LAST_SEEN_VERSION = "hinkalLastSeenVersion", e.HINKAL_GOOGLE_SESSION = "hinkalGoogleSession", e.IS_CREATE_NEW_PUBLIC_WALLET_ON = "isCreateNewPublicWalletOn", e.DISGUISED_AS_METAMASK_HOSTS = "disguisedAsMetamaskHosts", e.CHAIN_ID_FILTER = "chainIdFilter", e.SIGNATURE = "signature", e.PUBLIC_ACCOUNT_DETAILS = "publicAccountDetails", e.IS_NEW_ACCOUNT_MANAGEMENT_SYSTEM = "isNewAccountManagementSystem", e.SUB_ACCOUNTS_REFRESH_TOKEN = "subAccountsRefreshToken", e.PRIVATE_SEND_NONCE = "privateSendNonce", e.PRIVATE_SEND_PENDING_ENCLAVE_UTXOS = "privateSendPendingEnclaveUtxos", e.SHOULD_SHOW_ANNOUNCEMENT_BANNER = "shouldShowAnnouncementBanner", e.LAST_SHIELD_TIME = "lastShieldTime", e.IS_TOUR_COMPLETED = "isTourCompleted", e.TOUR_CURRENT_STEP = "tourCurrentStep", e.REVOKE_APPROVALS_IN_PROGRESS = "revokeApprovalsInProgress", e;
4
4
  }({});
5
5
  //#endregion
6
6
  export { e as StorageKeys };
@@ -23,16 +23,6 @@ export interface SolanaCommitmentEvent {
23
23
  encrypted_output: number[];
24
24
  on_chain_data: number[][];
25
25
  }
26
- export interface AccessTokenEvent<BN = BigIntable> {
27
- accessKey: BN;
28
- index: BN;
29
- senderAddress: string;
30
- }
31
- export interface SolanaAccessTokenEvent<BN, PublicKeyType> {
32
- access_key: BN;
33
- index: BN;
34
- sender_address: PublicKeyType;
35
- }
36
26
  export interface NullifierEvent<T> {
37
27
  nullifier: T;
38
28
  }
@@ -1 +1 @@
1
- require(`../../../_virtual/_rolldown/runtime.cjs`);const e=require(`../constants/fees.constants.cjs`);let t=require(`viem`);var n=function(e){return e.BalanceChange=`BalanceChange`,e.KycNeeded=`KycNeeded`,e.AccountChanged=`AccountChanged`,e.ShowConnect=`ShowConnect`,e.ShowNetworkPopup=`ShowNetworkPopup`,e.MerkleTreeUpdated=`MerkleTreeUpdated`,e.MerkleTreeResetStarted=`MerkleTreeResetStarted`,e.MerkleTreeResetFinished=`MerkleTreeResetFinished`,e}({}),r=function(e){return e[e.UNISWAP=1]=`UNISWAP`,e[e.ODOS=1+e.UNISWAP]=`ODOS`,e[e.ONEINCH=1+e.ODOS]=`ONEINCH`,e[e.LIFI=1+e.ONEINCH]=`LIFI`,e[e.OKX=1+e.LIFI]=`OKX`,e[e.ALL=1+e.OKX]=`ALL`,e[e.NONE=1+e.ALL]=`NONE`,e}({}),i=function(e){return e[e.NONE=0]=`NONE`,e[e.APPROVE=1]=`APPROVE`,e[e.RELEASE_BUFFER=2]=`RELEASE_BUFFER`,e[e.EXECUTE=3]=`EXECUTE`,e}({}),a=e=>({hinkalLogicAction:i.NONE,executeApprovalChanges:Array(e).fill(0n),doPreTxApproval:!1,inHinkalAddress:0n,useApprovalUtxoData:Array(e).fill({approvalChanges:[0n],externalApprovalAddresses:[t.zeroAddress],conversionInHinkalAddress:[0n]})}),o={feeToken:e.defaultFeeToken,flatFee:0n,variableRate:0n},s=function(e){return e.PROTOCOL=`protocol`,e.PRIVATE_TRANSFER=`privateTransfer`,e}({});exports.EventType=n,exports.HinkalLogicAction=i,exports.IntegrationProvider=r,exports.LoginMessageMode=s,exports.defaultHinkalLogicArgs=a,exports.zeroFeeStructure=o;
1
+ require(`../../../_virtual/_rolldown/runtime.cjs`);const e=require(`../constants/fees.constants.cjs`);let t=require(`viem`);var n=function(e){return e.BalanceChange=`BalanceChange`,e.AccountChanged=`AccountChanged`,e.ShowConnect=`ShowConnect`,e.ShowNetworkPopup=`ShowNetworkPopup`,e.MerkleTreeUpdated=`MerkleTreeUpdated`,e.MerkleTreeResetStarted=`MerkleTreeResetStarted`,e.MerkleTreeResetFinished=`MerkleTreeResetFinished`,e}({}),r=function(e){return e[e.UNISWAP=1]=`UNISWAP`,e[e.ODOS=1+e.UNISWAP]=`ODOS`,e[e.ONEINCH=1+e.ODOS]=`ONEINCH`,e[e.LIFI=1+e.ONEINCH]=`LIFI`,e[e.OKX=1+e.LIFI]=`OKX`,e[e.ALL=1+e.OKX]=`ALL`,e[e.NONE=1+e.ALL]=`NONE`,e}({}),i=function(e){return e[e.NONE=0]=`NONE`,e[e.APPROVE=1]=`APPROVE`,e[e.RELEASE_BUFFER=2]=`RELEASE_BUFFER`,e[e.EXECUTE=3]=`EXECUTE`,e}({}),a=e=>({hinkalLogicAction:i.NONE,executeApprovalChanges:Array(e).fill(0n),doPreTxApproval:!1,inHinkalAddress:0n,useApprovalUtxoData:Array(e).fill({approvalChanges:[0n],externalApprovalAddresses:[t.zeroAddress],conversionInHinkalAddress:[0n]})}),o={feeToken:e.defaultFeeToken,flatFee:0n,variableRate:0n},s=function(e){return e.PROTOCOL=`protocol`,e.PRIVATE_TRANSFER=`privateTransfer`,e}({});exports.EventType=n,exports.HinkalLogicAction=i,exports.IntegrationProvider=r,exports.LoginMessageMode=s,exports.defaultHinkalLogicArgs=a,exports.zeroFeeStructure=o;
@@ -18,6 +18,10 @@ export type HinkalConfig = {
18
18
  */
19
19
  generateProofRemotely?: boolean;
20
20
  disableMerkleTreeUpdates?: boolean;
21
+ /**
22
+ * Skip local decryption mutex in getInputUtxoAndBalance (e.g. enclave-api).
23
+ */
24
+ allowParallelBalanceLocalDecryption?: boolean;
21
25
  serializedCache?: Record<string, string>;
22
26
  /**
23
27
  * Override which Tron chain this Hinkal instance targets.
@@ -26,7 +30,6 @@ export type HinkalConfig = {
26
30
  };
27
31
  export declare enum EventType {
28
32
  BalanceChange = "BalanceChange",
29
- KycNeeded = "KycNeeded",
30
33
  AccountChanged = "AccountChanged",
31
34
  ShowConnect = "ShowConnect",
32
35
  ShowNetworkPopup = "ShowNetworkPopup",
@@ -90,12 +93,6 @@ export type ParsedInLogicMetadata = {
90
93
  erc20TokenAddresses: string[];
91
94
  externalCallData: string;
92
95
  };
93
- export declare enum UserProgress {
94
- NOT_STARTED = 0,
95
- CONNECTED = 1,
96
- KYC = 2,
97
- COMPLETED = 3
98
- }
99
96
  export declare enum LoginMessageMode {
100
97
  PROTOCOL = "protocol",
101
98
  PRIVATE_TRANSFER = "privateTransfer"
@@ -2,7 +2,7 @@ import { defaultFeeToken as e } from "../constants/fees.constants.mjs";
2
2
  import { zeroAddress as t } from "viem";
3
3
  //#region libs/shared/common/src/types/hinkal.types.ts
4
4
  var n = /* @__PURE__ */ function(e) {
5
- return e.BalanceChange = "BalanceChange", e.KycNeeded = "KycNeeded", e.AccountChanged = "AccountChanged", e.ShowConnect = "ShowConnect", e.ShowNetworkPopup = "ShowNetworkPopup", e.MerkleTreeUpdated = "MerkleTreeUpdated", e.MerkleTreeResetStarted = "MerkleTreeResetStarted", e.MerkleTreeResetFinished = "MerkleTreeResetFinished", e;
5
+ return e.BalanceChange = "BalanceChange", e.AccountChanged = "AccountChanged", e.ShowConnect = "ShowConnect", e.ShowNetworkPopup = "ShowNetworkPopup", e.MerkleTreeUpdated = "MerkleTreeUpdated", e.MerkleTreeResetStarted = "MerkleTreeResetStarted", e.MerkleTreeResetFinished = "MerkleTreeResetFinished", e;
6
6
  }({}), r = /* @__PURE__ */ function(e) {
7
7
  return e[e.UNISWAP = 1] = "UNISWAP", e[e.ODOS = 1 + e.UNISWAP] = "ODOS", e[e.ONEINCH = 1 + e.ODOS] = "ONEINCH", e[e.LIFI = 1 + e.ONEINCH] = "LIFI", e[e.OKX = 1 + e.LIFI] = "OKX", e[e.ALL = 1 + e.OKX] = "ALL", e[e.NONE = 1 + e.ALL] = "NONE", e;
8
8
  }({}), i = /* @__PURE__ */ function(e) {
@@ -1 +1 @@
1
- require(`./chains.types.cjs`),require(`./hinkal.types.cjs`),require(`./ethereum-network.types.cjs`),require(`./circom-data.types.cjs`),require(`./external-action.types.cjs`),require(`./kyc.types.cjs`),require(`./token.types.cjs`),require(`./transactions.types.cjs`),require(`./admin.types.cjs`),require(`./activities.types.cjs`),require(`./transaction.types.cjs`),require(`./balances.types.cjs`),require(`./cache.types.cjs`),require(`./new-rewards.type.cjs`),require(`./eip5792.types.cjs`),require(`./offscreen.types.cjs`),require(`./scheduled-transactions.types.cjs`),require(`./events.types.cjs`),require(`./schedule.types.cjs`);
1
+ require(`./chains.types.cjs`),require(`./hinkal.types.cjs`),require(`./circom-data.types.cjs`),require(`./ethereum-network.types.cjs`),require(`./external-action.types.cjs`),require(`./token.types.cjs`),require(`./transactions.types.cjs`),require(`./admin.types.cjs`),require(`./activities.types.cjs`),require(`./transaction.types.cjs`),require(`./balances.types.cjs`),require(`./cache.types.cjs`),require(`./new-rewards.type.cjs`),require(`./eip5792.types.cjs`),require(`./offscreen.types.cjs`),require(`./scheduled-transactions.types.cjs`),require(`./events.types.cjs`),require(`./schedule.types.cjs`);
@@ -8,7 +8,6 @@ export * from './crypto.types';
8
8
  export * from './ethereum-network.types';
9
9
  export * from './external-action.types';
10
10
  export * from './hinkal.types';
11
- export * from './kyc.types';
12
11
  export * from './snark.types';
13
12
  export * from './token.types';
14
13
  export * from './slippage.types';
@@ -1,9 +1,8 @@
1
1
  import "./chains.types.mjs";
2
2
  import "./hinkal.types.mjs";
3
- import "./ethereum-network.types.mjs";
4
3
  import "./circom-data.types.mjs";
4
+ import "./ethereum-network.types.mjs";
5
5
  import "./external-action.types.mjs";
6
- import "./kyc.types.mjs";
7
6
  import "./token.types.mjs";
8
7
  import "./transactions.types.mjs";
9
8
  import "./admin.types.mjs";
@@ -1 +1 @@
1
- var e=function(e){return e.Welcome=`welcome`,e.Daily=`daily`,e.Brotherhood=`brotherhood`,e.PointsBoost=`pointsBoost`,e}({}),t=function(e){return e.None=`None`,e.Bronze=`Bronze`,e.Silver=`Silver`,e.Gold=`Gold`,e.Diamond=`Diamond`,e}({}),n=function(e){return e.discord=`discord`,e.telegram=`telegram`,e.reclaim=`reclaim`,e.firstSwap=`firstSwap`,e.members=`members`,e.quests=`quests`,e.swaps=`swaps`,e.referrals=`referrals`,e.dApps=`dApps`,e.chains=`chains`,e.dailySwap=`dailySwap`,e.dailyDappTx=`dailyDappTx`,e.achievementSwaps=`achievementSwaps`,e.achievementReferrals=`achievementReferrals`,e.achievementDapps=`achievementDapps`,e.achievementChains=`achievementChains`,e.achievementPrivateSends=`achievementPrivateSends`,e.createOrJoinBH=`createOrJoinBH`,e.shieldUnshield=`shieldUnshield`,e.moneyComes=`moneyComes`,e.referralPrivateSendBonus=`referralPrivateSendBonus`,e}({});exports.AchievementTiers=t,exports.TaskCategory=e,exports.TaskTypes=n;
1
+ var e=function(e){return e.Welcome=`welcome`,e.Daily=`daily`,e.Brotherhood=`brotherhood`,e.PointsBoost=`pointsBoost`,e}({}),t=function(e){return e.None=`None`,e.Bronze=`Bronze`,e.Silver=`Silver`,e.Gold=`Gold`,e.Diamond=`Diamond`,e}({}),n=function(e){return e.discord=`discord`,e.telegram=`telegram`,e.firstSwap=`firstSwap`,e.members=`members`,e.quests=`quests`,e.swaps=`swaps`,e.referrals=`referrals`,e.dApps=`dApps`,e.chains=`chains`,e.dailySwap=`dailySwap`,e.dailyDappTx=`dailyDappTx`,e.achievementSwaps=`achievementSwaps`,e.achievementReferrals=`achievementReferrals`,e.achievementDapps=`achievementDapps`,e.achievementChains=`achievementChains`,e.achievementPrivateSends=`achievementPrivateSends`,e.createOrJoinBH=`createOrJoinBH`,e.shieldUnshield=`shieldUnshield`,e.moneyComes=`moneyComes`,e.referralPrivateSendBonus=`referralPrivateSendBonus`,e}({});exports.AchievementTiers=t,exports.TaskCategory=e,exports.TaskTypes=n;
@@ -55,7 +55,6 @@ export interface TelegramUser {
55
55
  export declare enum TaskTypes {
56
56
  discord = "discord",
57
57
  telegram = "telegram",
58
- reclaim = "reclaim",
59
58
  firstSwap = "firstSwap",
60
59
  members = "members",
61
60
  quests = "quests",
@@ -4,7 +4,7 @@ var e = /* @__PURE__ */ function(e) {
4
4
  }({}), t = /* @__PURE__ */ function(e) {
5
5
  return e.None = "None", e.Bronze = "Bronze", e.Silver = "Silver", e.Gold = "Gold", e.Diamond = "Diamond", e;
6
6
  }({}), n = /* @__PURE__ */ function(e) {
7
- return e.discord = "discord", e.telegram = "telegram", e.reclaim = "reclaim", e.firstSwap = "firstSwap", e.members = "members", e.quests = "quests", e.swaps = "swaps", e.referrals = "referrals", e.dApps = "dApps", e.chains = "chains", e.dailySwap = "dailySwap", e.dailyDappTx = "dailyDappTx", e.achievementSwaps = "achievementSwaps", e.achievementReferrals = "achievementReferrals", e.achievementDapps = "achievementDapps", e.achievementChains = "achievementChains", e.achievementPrivateSends = "achievementPrivateSends", e.createOrJoinBH = "createOrJoinBH", e.shieldUnshield = "shieldUnshield", e.moneyComes = "moneyComes", e.referralPrivateSendBonus = "referralPrivateSendBonus", e;
7
+ return e.discord = "discord", e.telegram = "telegram", e.firstSwap = "firstSwap", e.members = "members", e.quests = "quests", e.swaps = "swaps", e.referrals = "referrals", e.dApps = "dApps", e.chains = "chains", e.dailySwap = "dailySwap", e.dailyDappTx = "dailyDappTx", e.achievementSwaps = "achievementSwaps", e.achievementReferrals = "achievementReferrals", e.achievementDapps = "achievementDapps", e.achievementChains = "achievementChains", e.achievementPrivateSends = "achievementPrivateSends", e.createOrJoinBH = "createOrJoinBH", e.shieldUnshield = "shieldUnshield", e.moneyComes = "moneyComes", e.referralPrivateSendBonus = "referralPrivateSendBonus", e;
8
8
  }({});
9
9
  //#endregion
10
10
  export { t as AchievementTiers, e as TaskCategory, n as TaskTypes };
@@ -3,6 +3,7 @@ export declare enum ScheduledTransactionStatus {
3
3
  PENDING = "pending",
4
4
  PROCESSING = "processing",
5
5
  WAITING_FOR_RELAYER = "waiting_for_relayer",
6
+ SENT_ON_CHAIN = "sent_on_chain",
6
7
  COMPLETED = "completed",
7
8
  FAILED = "failed"
8
9
  }
@@ -17,6 +18,10 @@ export interface ScheduledTransactionItemStatus {
17
18
  scheduledTime: string;
18
19
  txHash: string | null;
19
20
  }
21
+ export interface DepositAndSendExtendedResult {
22
+ depositTxHash: string;
23
+ scheduleId: string;
24
+ }
20
25
  export interface ScheduledTransactionResponseItem {
21
26
  chainId: number;
22
27
  status: ScheduledTransactionStatus;
@@ -0,0 +1,2 @@
1
+ const e=require(`./workerProxy-DPeuP2Mg.js`);let t=require(`buffer`),n=require(`process`);n=e.u(n);let r=require(`circomlibjs-hinkal-fork`),i=require(`ethers`),a=require(`poseidon-lite`);a=e.u(a);let o=require(`libsodium-wrappers`);o=e.u(o);let s=require(`@solana/web3.js`),c=require(`bs58`);c=e.u(c);let l=require(`tweetnacl`);l=e.u(l);let u=require(`tronweb`);`${`00`.repeat(20)}`;var d=21888242871839275222246405745257275088548364400416034343698204186575808495617n,f=d/2n,p=200n;`${`00`.repeat(32)}`;var m=(e,t=d)=>{let n=e%t;return n>=0n?n:n+t},h=(e,t,n)=>{let r=1n,i=m(e,n),a=t;for(;a>0n;)a%2n==1n&&(r=r*i%n),a/=2n,i=i*i%n;return r},g=d,_={p:g,zero:0n,one:1n,e:e=>m(BigInt(e)),add:(e,t)=>m(e+t),sub:(e,t)=>m(e-t),mul:(e,t)=>m(e*t),div:(e,t)=>{if(t===0n)throw Error(`Division by zero in BabyJub field`);return m(e*h(t,g-2n,g))},toString:e=>m(e).toString()},v=class{F=_;A=_.e(`168700`);D=_.e(`168696`);Base8=[_.e(`5299619240641551281634865583518297030282874472190772894086521144482721001553`),_.e(`16950150798460657717958625567821834550301663161624707787222815936182638968203`)];addPoint(e,t){let n=_.mul(e[0],t[1]),r=_.mul(e[1],t[0]),i=_.mul(_.sub(e[1],_.mul(this.A,e[0])),_.add(t[0],t[1])),a=_.mul(n,r),o=_.mul(this.D,a);return[_.div(_.add(n,r),_.add(_.one,o)),_.div(_.add(i,_.sub(_.mul(this.A,n),r)),_.sub(_.one,o))]}mulPointEscalar(e,t){let n=[_.zero,_.one],r=BigInt(t),i=e;for(;r!==0n;)r%2n==1n&&(n=this.addPoint(n,i)),i=this.addPoint(i,i),r/=2n;return n}},y=new class{babyjub=void 0;async init(){this.babyjub||=e.o?new v:await(0,r.buildBabyjub)()}getJub(){return this.babyjub}},b=()=>y.getJub(),x=new class{eddsa=void 0;async init(){this.eddsa||=await(0,r.buildEddsa)()}getEddsa(){return this.eddsa}},S=()=>x.getEddsa();function C(e){return typeof e==`object`&&`toBigInt`in e?e.toBigInt():BigInt(e)}var w=()=>{let e=e=>{let t=a[`poseidon${e.length}`];if(!t)throw Error(`Poseidon: arity ${e.length} not supported (1..16)`);return t(e.map(e=>BigInt(e)))};return e.F={toString:e=>BigInt(e).toString()},e},T=new class{poseidon=void 0;async init(){this.poseidon||=e.o?w():await(0,r.buildPoseidon)()}getPoseidon(){return this.poseidon}};function E(...e){let t=T.getPoseidon();return C(t.F.toString(t(e)))}var D=(...e)=>{let t=T.getPoseidon();return i.ethers.toBeHex(t.F.toString(t([...e])))},O=async(e=!1)=>{(typeof window<`u`||typeof self<`u`)&&(typeof window<`u`&&(window.global=window),globalThis.Buffer=t.Buffer,globalThis.process=n.default),await Promise.all([o.default.ready,T.init(),y.init(),...e?[]:[x.init()]])},k=class{inMemoryCache=new Map;constructor(e){e&&this.mergeWithSerialized(e)}getInMemory(e){return this.inMemoryCache.get(e)??void 0}setInMemory(e,t){this.inMemoryCache.set(e,t)}mergeWithSerialized(t){Object.entries(t).forEach(([t,n])=>{this.set(t,e.c(n))})}},A=class extends k{isAttached=!1;get(e){return this.getInMemory(e)}set(e,t){this.setInMemory(e,t)}serialize(){return Object.fromEntries([...this.inMemoryCache].map(([t,n])=>[t,e.l(n)]))}attach(t){if(this.isAttached)throw Error(`can't reattach cache device`);return this.isAttached=!0,(...n)=>{let r=e.l(n),i=this.get(r);if(i!==void 0)return i;let a=t(...n);return this.set(r,a),a}}},j=e=>{if(e<0n||e>=21888242871839275222246405745257275088548364400416034343698204186575808495617n)throw RangeError();return e>f},M=e=>j(e)?1n:0n,N=new A,P=new A,F=new A,I=class{signature;nullifyingKey;PREFIX_FOR_SPENDING_PAIR=`1`;PREFIX_FOR_NULLIFYING_PAIR=`2`;constructor(e,t){this.signature=e,this.nullifyingKey=t}getSignature(){return this.requireSignature(),this.signature}setSignature(e){this.signature=e}requireSignature(){if(!this.signature)throw Error(`No signature provided`)}requireKeyMaterial(){if(!this.signature&&!this.nullifyingKey)throw Error(`No signature or private key provided`)}verifyTronMessage(e,t){return this.requireSignature(),t===u.Trx.verifyMessageV2(e,this.signature)}getShieldedPrivateKey=()=>(this.requireKeyMaterial(),this.nullifyingKey||=i.ethers.keccak256(this.signature),this.nullifyingKey);getShieldedPublicKey=()=>(this.requireKeyMaterial(),D(this.getShieldedPrivateKey()));getSpendingKeyPair=()=>{this.requireSignature();let e=S(),t=b(),n=D(this.PREFIX_FOR_SPENDING_PAIR,this.getSignature()),r=Buffer.from(i.ethers.getBytes(n)),a=e.prv2pub(r);return{privSpendingKey:n,pubSpendingBJJPoint:[BigInt(t.F.toString(a[0])),BigInt(t.F.toString(a[1]))]}};signEddsa=e=>{this.requireSignature();let t=b(),n=S(),r=Buffer.from(i.ethers.getBytes(this.getSpendingKeyPair().privSpendingKey)),a=t.F.e(e),o=n.signPoseidon(r,a);return{R8:[BigInt(t.F.toString(o.R8[0])),BigInt(t.F.toString(o.R8[1]))],S:BigInt(o.S)}};getShieldedPrivateKeyFromNonce=e=>{this.requireKeyMaterial();let t=D(e,this.getShieldedPrivateKey(),this.getShieldedPublicKey());return i.ethers.keccak256(i.ethers.toUtf8Bytes(`hinkal-offchain-shielded-key:${t}`))};getClaimableSignatureFromNonce=e=>{this.requireKeyMaterial();let t=D(e,this.getShieldedPrivateKey(),this.getShieldedPublicKey());return i.ethers.keccak256(i.ethers.toUtf8Bytes(`hinkal-claimable-utxo-signature:${t}`))};getDerivedEthereumAddress=()=>(this.requireKeyMaterial(),new i.ethers.Wallet(this.getShieldedPrivateKey()).address);getDerivedSolanaPublicKey=()=>(this.requireKeyMaterial(),s.Keypair.fromSeed(i.ethers.getBytes(this.getShieldedPrivateKey())).publicKey.toBase58());getNearIntentsAccountId=()=>{this.requireKeyMaterial();let e=s.Keypair.fromSeed(i.ethers.getBytes(this.getShieldedPrivateKey()));return i.ethers.hexlify(e.publicKey.toBytes()).slice(2)};getNearIntentsKeyPairString=()=>{this.requireKeyMaterial();let e=s.Keypair.fromSeed(i.ethers.getBytes(this.getShieldedPrivateKey()));return`ed25519:${c.default.encode(e.secretKey)}`};getSignerPrivateKeyFromNonce=e=>{this.requireKeyMaterial();let t=D(e,this.getShieldedPrivateKey(),this.getShieldedPublicKey());return i.ethers.keccak256(i.ethers.toUtf8Bytes(t))};getSignerSolanaPrivateKeyFromNonce=e=>{let t=this.getSignerPrivateKeyFromNonce(e),n=i.ethers.getBytes(t),r=s.Keypair.fromSeed(n);return c.default.encode(r.secretKey)};verifyMessage(e){return this.requireSignature(),i.ethers.verifyMessage(e,this.signature)}verifySolanaMessage(e,t){this.requireSignature();let n=new TextEncoder().encode(e),r=i.ethers.getBytes(this.signature),a=new s.PublicKey(t).toBytes();return l.default.sign.detached.verify(n,r,a)}static getRandomizedStealthPairOld=P.attach((e,t)=>{let n=b(),r=e*(BigInt(t)%d)%d,i=n.mulPointEscalar(n.Base8,e),a=n.mulPointEscalar(n.Base8,r);return{H0:[BigInt(n.F.toString(i[0])),BigInt(n.F.toString(i[1]))],H1:[BigInt(n.F.toString(a[0])),BigInt(n.F.toString(a[1]))]}});static getRandomizedStealthPair=N.attach((e,t)=>{let n=b(),r=BigInt(t)%d,i=n.mulPointEscalar(n.Base8,e),a=n.mulPointEscalar(i,r);return{H0:[BigInt(n.F.toString(i[0])),BigInt(n.F.toString(i[1]))],H1:[BigInt(n.F.toString(a[0])),BigInt(n.F.toString(a[1]))]}});static getStealthAddressCompressedPoints=(e,t)=>{let{H0:n,H1:r}=this.getRandomizedStealthPairOld(e,t),[i,a]=[n,r].map(e=>BigInt(e[1])+2n**255n*M(e[0]));return{h0:i,h1:a}};static checkSignature=(e,t,n,r)=>{let{h0:i,h1:a}=this.getStealthAddressCompressedPoints(e,r);return t===i&&n===a};static getStealthAddress=F.attach((e,t)=>{let{H0:n,H1:r}=this.getRandomizedStealthPairOld(e,t);return D(2n*M(n[0])+M(r[0]),n[1],r[1])});static getH1FromH0=(e,t)=>{let n=b(),r=BigInt(t)%d,i=[n.F.e(e[0]),n.F.e(e[1])],a=n.mulPointEscalar(i,r);return[BigInt(n.F.toString(a[0])),BigInt(n.F.toString(a[1]))]};static verifyStealthPair=(e,t,n,r=!0)=>{let i=this.getH1FromH0(e,n);return r?i[1]===t[1]:i===t};static getStealthAddressNewStyle=(e,t,n)=>{if(n?.length!==2)throw Error(`Spending public key must be an array of 2 elements`);let r=this.getH1FromH0(e,t);return D(2n*M(e[0])+M(r[0]),e[1],r[1],n[0],n[1],t)};static findCorrectRandomization(e,t){if(!t)throw Error(`No Private Shielded Key Provided`);let n=BigInt(t)%d,r,i,a=0n;do r=e*10n**a%d,i=r*n%d,a+=1n;while(i>=2n**253n||r>=2n**253n);return r}static getH0FromRandomization=e=>{let t=b(),n=t.mulPointEscalar(t.Base8,e);return[BigInt(t.F.toString(n[0])),BigInt(t.F.toString(n[1]))]};static findH0(e,t){if(!t)return;let{H0:n}=this.getRandomizedStealthPair(e,t);return n}static getEncryptionKeyPair=e=>{let t=o.default.crypto_box_seed_keypair(i.ethers.getBytes(e));return{privateKey:i.ethers.hexlify(t.privateKey),publicKey:i.ethers.hexlify(t.publicKey)}};getAccessKey=()=>(this.requireKeyMaterial(),D(this.getShieldedPrivateKey(),this.getShieldedPublicKey()));getBackendToken=()=>(this.requireKeyMaterial(),D(this.getAccessKey(),this.getShieldedPublicKey()))},L={CANNOT_CERTIFY_FOR_PAST_WEEK:`Certification for the past week is not available`,CYCLICAL_REFERRALS_FORBIDDEN:`Cyclical referrals are forbidden`,USER_IS_UNRANKED:`Please certify transactions to see rank`},R={WC_NO_MATCHING_KEY:`creating the transaction failed
2
+ version`,CONNECTION_PROBLEM:`Failed to connect wallet. Please try again.`,REQUEST_PENDING:`request of type 'wallet_requestpermissions' already pending for origin`},z={INSUFFICIENT_FUNDS:`Insufficient funds`,INSUFFICIENT_FUNDS_WITHDRAW:`Not enough funds to withdraw`,INSUFFICIENT_FUNDS_TRANSFER:`Not enough funds to transfer`,INSUFFICIENT_FUNDS_TO_TRANSACT:`Not enough funds to transact`,INSUFFICIENT_FUNDS_GAS:`Insufficient funds for gas * price`,INSUFFICIENT_TRON_BALANCE_FOR_FEE:`Insufficient TRX balance to cover transfer amount and transaction fee reserve`,INSUFFICIENT_SOL_BALANCE:`Insufficient SOL balance`},B={GAS_PRICE_EXCEEDS_AUTOSHIELD_LIMIT:`Skipped shielding due to gas fee exceeding your limit.`,AUTO_SHIELD_INSUFFICIENT_GAS:`Auto-Shield skipped due to insufficient gas.`};({...L,...R,...z,...B});var V=e=>BigInt(i.ethers.hexlify(i.ethers.randomBytes(e))),H=()=>Math.floor(Date.now()/1e3),U=class t{amount;erc20TokenAddress;mintAddress;timeStamp;nullifyingKey;spendingPublicKey;randomization;H0;stealthAddress;encryptionKey;commitment;nullifier;isBlocked;isNewStyle;constructor({amount:e,erc20TokenAddress:t,mintAddress:n,timeStamp:r,nullifyingKey:i,spendingPublicKey:a,randomization:o,H0:s,stealthAddress:c,encryptionKey:l,commitment:u=void 0,nullifier:d=void 0,isBlocked:f=!1,isNewStyle:p=!1}){this.amount=e,this.erc20TokenAddress=t,this.mintAddress=n,this.timeStamp=r??H().toString(),this.nullifyingKey=i,this.spendingPublicKey=a,this.randomization=o??(i?I.findCorrectRandomization(V(31),i):void 0),this.H0=s??(p&&this.randomization?I.findH0(this.randomization,i):void 0),this.stealthAddress=c,this.encryptionKey=l,this.commitment=u,this.nullifier=d,this.isBlocked=f,this.isNewStyle=p}static createFrom(e,n){return new t({...e.getConstructableParams(),nullifier:void 0,commitment:void 0,...n})}getConstructableParams(){return{amount:this.amount,erc20TokenAddress:this.erc20TokenAddress,mintAddress:this.mintAddress,timeStamp:this.timeStamp,nullifyingKey:this.nullifyingKey,spendingPublicKey:this.spendingPublicKey,randomization:this.randomization,H0:this.H0,stealthAddress:this.stealthAddress,encryptionKey:this.encryptionKey,commitment:this.commitment,nullifier:this.nullifier,isBlocked:this.isBlocked,isNewStyle:this.isNewStyle}}getBasicUtxoParams(){return{amount:this.amount,erc20TokenAddress:this.erc20TokenAddress,mintAddress:this.mintAddress,timeStamp:this.timeStamp,randomization:this.randomization,H0:this.H0,stealthAddress:this.stealthAddress,commitment:this.commitment,nullifier:this.nullifier,isBlocked:this.isBlocked,isNewStyle:this.isNewStyle}}getCommitment(){if(!this.commitment){let e=[this.amount,this.erc20TokenAddress,BigInt(this.getStealthAddress()),this.timeStamp];this.commitment=D(...e)}return this.commitment}getNullifier(){if(!this.nullifier){if(!this.nullifyingKey)throw Error(`No Nullifiers if private key is not provided`);let e=this.getCommitment(),t=D(this.nullifyingKey,e);this.nullifier=D(e,t)}return this.nullifier}getStealthAddress(){if(!this.stealthAddress){if(!this.nullifyingKey)throw Error(`No stealth address in UTXO if private key is not provided`);if(this.isNewStyle){if(!this.H0)throw Error(`No H0 point provided`);this.stealthAddress=I.getStealthAddressNewStyle(this.H0,this.nullifyingKey,this.spendingPublicKey)}else{if(!this.randomization)throw Error(`No randomization provided`);this.stealthAddress=I.getStealthAddress(this.randomization,this.nullifyingKey)}}return this.stealthAddress}getTokenAddress(t){let n=e.r(t)?this.mintAddress:this.erc20TokenAddress;if(!n)throw Error(`No token address provided`);return n}getEncryptionKey(){if(!this.nullifyingKey){if(!this.encryptionKey)throw Error(`No encryption key provided in UTXO`);return this.encryptionKey}return I.getEncryptionKeyPair(this.nullifyingKey).publicKey}},W=()=>o.default.crypto_box_SEALBYTES+o.default.crypto_secretbox_KEYBYTES,G=e=>{let t=o.default.crypto_secretbox_NONCEBYTES,n=W(),r=0,i=e[r];r+=1;let a=e.slice(r,r+t);r+=t;let s=[];for(let t=0;t<i;t+=1)s.push(e.slice(r,r+n)),r+=n;return{nonce:a,sealedKeys:s,ciphertext:e.slice(r)}},K=(e,t,n,r)=>{let{nonce:a,sealedKeys:s,ciphertext:c}=G(e),l=o.default.crypto_box_seal_open(s[r],i.ethers.getBytes(n),i.ethers.getBytes(t)),u=o.default.crypto_secretbox_open_easy(c,a,l);return Buffer.from(u)},q=(e,t,n)=>{let r=o.default.crypto_box_seal_open(e,i.ethers.getBytes(n),i.ethers.getBytes(t));return Buffer.from(r)},J=54912,Y=2,X=e=>e[0]*256+e[1],Z=(e,t)=>{let{privateKey:n,publicKey:r}=I.getEncryptionKeyPair(t.getShieldedPrivateKey()),i=X(e)===J?K(e.slice(Y),n,r,0):q(e,n,r),a=Buffer.from(i).toString(`utf-8`).split(`0x`).filter(e=>e.length!==0),o=e=>BigInt(`0x${e}`),c=e=>`0x${e}`,l=a.length>=8,u=l&&o(a[5])===1n,d=l?8:6,f=a[d]?c(a[d]):void 0,p=f?new s.PublicKey(Buffer.from(f.slice(2),`hex`)).toString():void 0;return{amount:o(a[0]),erc20TokenAddress:c(a[1]),randomization:o(a[2]),stealthAddress:c(a[3]),nullifyingKey:t.getShieldedPrivateKey(),timeStamp:o(a[4]).toString(),isNewStyle:u,...u?{H0:[o(a[6]),o(a[7])]}:{},mintAddress:p}},Q=(e,t)=>new U(Z(e,t)),$=e=>e&2n**255n-1n,ee=e=>e>>255n&1n,te=(...t)=>{e.a&&console.log(...t)};Object.defineProperty(exports,`a`,{enumerable:!0,get:function(){return Z}}),Object.defineProperty(exports,`c`,{enumerable:!0,get:function(){return F}}),Object.defineProperty(exports,`d`,{enumerable:!0,get:function(){return E}}),Object.defineProperty(exports,`f`,{enumerable:!0,get:function(){return D}}),Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return Q}}),Object.defineProperty(exports,`l`,{enumerable:!0,get:function(){return N}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return ee}}),Object.defineProperty(exports,`o`,{enumerable:!0,get:function(){return U}}),Object.defineProperty(exports,`p`,{enumerable:!0,get:function(){return p}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return $}}),Object.defineProperty(exports,`s`,{enumerable:!0,get:function(){return I}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return te}}),Object.defineProperty(exports,`u`,{enumerable:!0,get:function(){return O}});